Эффективный обмен XML
Efficient XML Interchange ( EXI ) — это двоичный формат XML для обмена данными в компьютерной сети. W3C Он был разработан рабочей группой по эффективному расширяемому обмену и является одной из наиболее выдающихся попыток кодирования XML- документов в двоичный формат данных , а не в обычный текст. Использование формата EXI снижает многословность XML-документов, а также стоимость анализа. Улучшение производительности записи (генерации) контента зависит от скорости записываемого носителя, методов и качества реальных реализаций. EXI полезен для
- полный диапазон размеров XML-документов: от десятков байтов до терабайтов
- сокращение вычислительных затрат для ускорения анализа сжатых документов
- увеличение срока службы небольших устройств за счет использования эффективной декомпрессии
История
[ редактировать ]Консорциум Всемирной паутины (W3C) сформировал рабочую группу для стандартизации формата в марте 2006 года. EXI был выбран в качестве двоичного формата XML W3C после оценки различных предложений, которые включали Fast Infoset . [ 1 ] Формат EXI является производным от формата AgileDelta Efficient XML. [ 2 ] [ 3 ] EXI был принят W3C в качестве рекомендации W3C 10 марта 2011 года. Второе издание было опубликовано в феврале 2014 года. [ 4 ]
В ноябре 2016 года рабочая группа была переименована в «Эффективный расширяемый обмен (EXI)» с «Эффективный обмен XML (EXI)», чтобы отразить более широкую сферу применимости EXI, помимо XML, для других языков описания данных. [ 5 ]
Функции
[ редактировать ]Преимущество EXI перед Fast Infoset состоит в том, что EXI (опционально) использует больше ограничений из схемы XML . Это может сделать данные EXI более компактными; например, если схема XML указывает, что элементы с именем «bar» могут существовать только внутри элементов с именем «foo», EXI может назначить более короткий токен элементу «bar», зная, что он не обязательно должен использовать одно и то же пространство токенов. как элементы, встречающиеся в других местах документа. Основным недостатком использования такого сжатия с учетом схемы является то, что не только документу требуется схема, но и декодеру требуется копия той же схемы, которую использовал кодировщик.
Использование
[ редактировать ]Доступны различные приложения с поддержкой EXI. [ 6 ]
Доступны различные реализации EXI, которые позволяют интегрировать возможности EXI в другие инструменты. [ 7 ]
Связанный: EXI также адаптируется для форматов данных, отличных от XML.
- EXI4JSON — это спецификация, разработанная той же рабочей группой для использования одного и того же формата для документов JSON . [ 8 ]
Министерства обороны США EXI был рекомендован для использования в глобальной информационной сети . [ 9 ]
Будущая работа
[ редактировать ]Рабочая группа EXI продолжает реализовывать многочисленные экспериментальные инициативы.
- EXI4CSS изучает, как сопоставить каскадные таблицы стилей (CSS) с EXI. [ 5 ]
- EXI для JavaScript представляется возможным при использовании исходного структурированного дерева разбора исходного кода. [ 5 ]
- Рассмотрение потенциальной композиции XML EXI с шифрованием XML и цифровой подписью XML.
Ссылки
[ редактировать ]- ^ Робин Бержон; Яакко Кангашарью, ред. (20 июля 2006 г.). «Анализ измерений EXI» . W3C . Проверено 23 сентября 2016 г.
- ^ «Молниеносная доставка XML на большее количество устройств в большем количестве мест» . AgileDelta. 5 ноября 2015 года . Проверено 23 сентября 2016 г.
- ^ Мишра, Манви; Гупта, Прабхакар; и др. (2024). «Быстрое и компактное решение XML с эффективным расширяемым обменом (EXI)». В Трипати — Суман Лата; и др. (ред.). Новые тенденции в сфере Интернета вещей и вычислительных технологий . ЦРК Пресс. дои : 10.1201/9781003535423-74 . ISBN 9781003535423 .
- ^ «Рабочая группа по эффективному обмену XML» . Публичный веб-сайт . W3C . Проверено 23 сентября 2016 г. }
- ^ Jump up to: а б с Пейнтнер, Дэниел (22 ноября 2016 г.). «Эффективное представление веб-форматов» . Блог W3C . W3C. Архивировано из оригинала 23 августа 2024 года.
- ^ Рабочая группа EXI (28 марта 2017 г.). «Развертывание EXI» . Публичная страница Рабочей группы EXI . Консорциум Всемирной паутины . Проверено 28 марта 2017 г.
- ^ Рабочая группа EXI (28 марта 2017 г.). «EXI-реализации» . Публичная страница Рабочей группы EXI . Консорциум Всемирной паутины . Проверено 28 марта 2017 г.
- ^ Дэниел Пейнтнер; Дон Брутцман, ред. (23 августа 2016 г.). «EXI для JSON (EXI4JSON)» . Публичный рабочий проект . Консорциум Всемирной паутины . Проверено 23 сентября 2016 г.
- ^ Шелдон Л. Снайдер (1 марта 2010 г.). «Эффективное сжатие XML Interchange (EXI) и преимущества производительности: разработка, внедрение и оценка» (PDF) . Магистерская диссертация . Аспирантура ВМС США (NPS) . Проверено 23 сентября 2016 г.
Внешние ссылки
[ редактировать ]- Эффективный формат обмена XML 1.0 (рекомендация W3C)
- Оценка эффективного обмена XML (записка рабочей группы)
- EXIficient — EXIficient — это набор реализаций с открытым исходным кодом спецификации формата W3C Efficient XML Interchange (EXI).
- EXIP — реализация C с открытым исходным кодом
- Нагасена — реализации формата EXI 1.0 с открытым исходным кодом на Java/C#, предоставленные Fujitsu.
- Efficient XML™ — коммерческая реализация спецификации EXI на Java, .NET, C и C++.
- Exi-Connexion — Java-реализация рабочего проекта EXI с открытым исходным кодом, 26 марта 2008 г. ( [1] )
- OSS EXI Tools для C/C++ и OSS EXI Tools для .NET — коммерческая реализация EXI (выпуск прототипа) от OSS Nokalva.