WBXML

Материал из Википедии — свободной энциклопедии
Перейти к навигацииПерейти к поиску

WAP Binary XML (WBXML) — компактноебинарное представлениеXML. РазработаноOpen Mobile Alliance для передачи через беспроводные соединения с низкой скоростью. В данный момент WBXML рассматриваетсяКонсорциумом Всемирной паутины для включения в семейство стандартовWAP. Текущая версия 1.3.

WBXML сейчас используется вSyncML,WML,Wireless Village,OMA DRM, программировании телефонов через беспроводную связь.

Структура

[править |править код]

Для кодирования чисел используется многобайтовое представление. Последний байт начинается с бита 0, остальные — с 1. Остальные 7 бит уже кодируют положительное целое число.

Файл начинается с байта с номером версии WBXML (версия 1.3 кодируется как0x03). Далее идёт тип документа в виде ссылки на строку с именем (в таблице строк) или кода для хорошо известных типов, например,WML. Следующее число указывает на кодировку, коды которой указаны в «IANA Charset MIB» (RFC 3808). В конце заголовка идёт таблица строк (сначала длина, а потом содержимое). Строки в ней разделены символомNULL. Для большей компактности строки в названии тега, атрибутах и содержимом можно указать просто как смещения в этой таблице.

Если формат XML-документа заранее известен, то название тегов и атрибутов можно обозначить заранее обговорённым байтом. Чтобы использовать более 256 имён, они разделены на страницы, которые можно менять с помощью специальной команды: байтSWITCH_PAGE и байт с номером страницы.

Перед каждым тегом идёт байт, указывающий, имеет ли он атрибуты и содержимое (LITERAL,LITERAL_A,LITERAL_C илиLITERAL_CA) и смещение в таблице строк. Или он может быть указан в виде байта, где первый бит указывает на наличие атрибутов, второй — содержимого, а остальные кодируют заранее договорённый код тега. Атрибуты указаны далее как обговорённый байт илиLITERAL и ссылки на таблицу строк. Далее - строка с его значением и байтEND. Строки, как в значении атрибута, так и в содержимом тега, могут быть либо байтомSTR_T и смещением в таблице строк, либоSTR_I и строкой сNULL на конце. Содержимое тега закрывается байтомEND.

Тег может содержать и бинарные данные (например, изображение или сжатую информацию), которые кодируются в виде специального байтаOPAQUE, длины данных и самого содержимого.

См. также

[править |править код]

Ссылки

[править |править код]
Перейти к шаблону «Стандарты Open Mobile Alliance»
СтандартыOpen Mobile Alliance
Стандарты
Черновики стандартов
Источник —https://ru.wikipedia.org/w/index.php?title=WBXML&oldid=108530537
Категории:
Скрытые категории: