XML
Extensible Markup Language - используется как програмно/платформо независимый инстурумент для передачи данных между приложениями/частями приложения.
Правилом хорошего тона считается начинать каждый XML документ с XML Prolog - части в которой описывается версия и кодировка.
Каждый XML документ обязательно должен содержать корневой элемент.
XML имеет поддержку валидации структуры документа. Для этого используются XML Schema и Document Type Definition (DTD).
DTD позволяет определить структуру, элементы и атрибуты этих жлементов путем описания сущностей:
<!DOCTYPE note [
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
]
>
!DOCTYPE note - Определяет корневой элемент
!ELEMENT note - Определяет, что элемент note должен содержать следующие элементы: to, from, heading, body
!ELEMENT to - Определяет, что элемент to должен быть типа #PCDATA (т.е. данные поддающиеся парсингу)
и так далее