XML
XML
Расширяемый язык разметки, выражающий структуру с помощью тегов
Введение
XML (eXtensible Markup Language) — это язык разметки, выражающий иерархическую структуру за счёт обёртывания данных в открывающие и закрывающие теги. Элементам можно добавлять атрибуты и строго проверять структуру по схеме, поэтому он давно применяется в документах и корпоративных системах.
Он многословен, но обладает высокой выразительностью и богатой экосистемой: пространства имён, схемы (XSD), преобразования (XSLT) и другое.
Особенности синтаксиса
- Каждый элемент состоит из пары открывающего и закрывающего тегов.
- Элементу можно добавлять атрибуты (attribute).
- Такие символы, как &, <, >, экранируются в виде сущностей.
- Должен быть один корневой элемент, охватывающий всё остальное.
Преимущества
- Возможна строгая проверка по схеме
- Высокая выразительность: атрибуты, пространства имён и др.
- Зрелая экосистема документов
Недостатки
- Многословность из-за повторения тегов
- Относительно тяжёлый парсинг
- В современных веб-API уступает JSON
Основное применение
- Форматы документов (офисные, RSS)
- Корпоративная и унаследованная интеграция (SOAP)
- Конфигурация и обмен данными
Пример
<?xml version="1.0" encoding="UTF-8"?>
<rows>
<row>
<id>1</id>
<name>Ada</name>
<role>admin</role>
</row>
<row>
<id>2</id>
<name>Linus</name>
<role>editor</role>
</row>
</rows>