Підрозділ 19.2
XML-формат та XmlDocument. DOM-модель
19.2. XML формат та XmlDocument. DOM модель XML eXtensible Markup Language — мова розмітки, що описує структуровані дані у вигляді ієрархії тегів. На відміну від JSON, XML підтримує атрибути як першокласний син
19.2. XML-формат та XmlDocument. DOM-модель
XML (eXtensible Markup Language) — мова розмітки, що описує структуровані дані у вигляді ієрархії тегів. На відміну від JSON, XML підтримує атрибути як першокласний синтаксис, простори імен (xmlns) та валідацію через схеми (XSD). У медичній галузі XML — стандартний формат: HL7 v2/v3 і FHIR для обміну клінічними даними, DICOM заголовки, CDA (Clinical Document Architecture). Конфігурація .NET-застосунків (.config-файли), SOAP-сервіси, Office Open XML (.docx, .xlsx) — теж XML.
System.Xml — простір імен, що надає повний набір інструментів для роботи з XML. Клас XmlDocument реалізує DOM (Document Object Model) — модель, де весь XML-документ завантажується у пам'ять як дерево вузлів (XmlNode). Кожен елемент, атрибут, текстовий вузол, коментар — окремий об'єкт у цьому дереві.

Структура XML-документа
XmlDocument — завантаження та навігація
XmlNode — базовий клас для всіх вузлів DOM. XmlElement — конкретний тип для елементів (тегів). Властивість InnerText повертає весь текстовий вміст вузла (включно з вкладеними тегами), InnerXml — весь XML-вміст як рядок.
SelectSingleNode та SelectNodes — XPath у XmlDocument
XPath-вирази у SelectSingleNode/SelectNodes — потужний засіб вибірки: /root/child (точний шлях), //element (будь-яка глибина), [@attr='val'] (фільтр за атрибутом), [position()] (за позицією).
Створення XML-документа програмно
Зміна існуючого XML
Практичний сценарій: збереження результатів обстеження у XML
