Язык XML. Достоинства и недостатки

xmlXML – язык разметки, представляющий собой свод синтаксических правил, который был рекомендован Консорциумом Всемирной паутины. Это текстовый формат, который создан для хранения структурированных данных, для создания более специализированных языков разметки, для предачи данных между компонентами программного продукта.

1996 год – год рождения языка XML, в 1998 году он был утвержден. А своим появлением он обязан, прежде всего, языку SGML, появившемуся в 1986 году.

Ознакомимся с достоинствами и недостатками языка XML.

Достоинства:

• язык разметки, который позволяет стандартизировать вид файлов-данных в виде текста, который будет понятен человеку;
• поддержка Юникод;
• возможность описания записей, списков, деревьев, форматированного текста;
• описание структур и имен полей, как описание значения полей, иными словами – это самодокументируемый формат;
• строго определенные требования к анализу и синтаксис, позволяющие быть простым, непротиворечивым и эффективным;
• основан на стандартах международного уровня;
• иерархическая структура подходит для описания любых документов, кроме видео и аудио файлов, растровых изображений, двоичных данных и сетевых структур данных;
• простой текст, свободный от всяких ограничений и лицензирования;
• подмножество SGML;
• свободен от всяких требований на порядок расположения атрибутов в элементах;
• реализация парсеров для всех языков программирования;
• XSLT стандартный механизм преобразования;
• поддерживается на низком программном уровне.

Недостатки:

• избыточный синтаксис;
• размер документа больше бинарного представления данных;
• размер документа больше, чем документа в других форматах передачи текстовых данных;
• возрастание стоимости хранения, передачи и обработки данных;
• содержит метаданные, и одновременно является языком взаимодействия открытых систем;
• для большого количества задач можно использовать более простые решения;
• отсутствие общепринятой методологии;
• неоднозначность моделирования;
• не содержит язык поддержки для типов данных;
• ограниченность модели данных;
• сложное использование пространств имен.