XML


Расширяемый язык разметки ( XML ) — это язык разметки и формат файла для хранения, передачи и восстановления произвольных данных. Он определяет набор правил для кодирования документов в формате, удобном как для человека, так и для машинного чтения . Спецификация XML 1.0 консорциума World Wide Web Consortium [2] от 1998 года [3] и несколько других связанных спецификаций [4] — все они являются бесплатными открытыми стандартами — определяют XML. [5]

Цели разработки XML подчеркивают простоту, универсальность и удобство использования в Интернете . [6] Это текстовый формат данных с сильной поддержкой через Unicode для различных человеческих языков . Хотя дизайн XML ориентирован на документы, язык широко используется для представления произвольных структур данных [7] , таких как те, которые используются в веб-сервисах .

Существует несколько систем схем, помогающих в определении языков на основе XML, а программисты разработали множество интерфейсов прикладного программирования (API) для облегчения обработки XML-данных.

Основной целью XML является сериализация , то есть хранение, передача и восстановление произвольных данных. Чтобы две разные системы могли обмениваться информацией, им необходимо согласовать формат файла. XML стандартизирует этот процесс. XML аналогичен lingua franca для представления информации. [8] : 1 

Как язык разметки , XML маркирует, классифицирует и структурно организует информацию. [8] : 11  тегов XML представляют структуру данных и содержат метаданные. Внутри тегов находятся данные, закодированные в соответствии со стандартом XML. [8] : 11  Дополнительная схема XML (XSD) определяет необходимые метаданные для интерпретации и проверки XML. (Его также называют канонической схемой.) [8] : 135  Документ XML, который придерживается основных правил XML, является «правильным»; тот, который придерживается своей схемы, является «действительным». [8] : 135 

IETF RFC 7303 (который заменяет более ранний RFC 3023 ) предоставляет правила построения типов мультимедиа для использования в сообщениях XML. Он определяет два базовых типа носителей: application/xmlи text/xml. Они используются для передачи необработанных файлов XML без раскрытия их внутренней семантики . RFC 7303 также рекомендует, чтобы для языков на основе XML были заданы типы мультимедиа, оканчивающиеся на +xml, например, image/svg+xmlдля SVG .