Page 169 - 4785
P. 169
- текст всередині XML елементів - текстовий вузол;
- кожен атрибут - вузол атрибута;
- коментарі - вузли коментарів.
XML документ відповідно до моделі XML DOM
представляється як дерево з вузлів, при цьому:
- Всі вузли дерева знаходяться в певних відносинах один з
одним.
- Всі вузли доступні через дерево. Їх вміст може бути
змінено, видалено; нові елементи можуть бути додані в дерево.
- Дерево починається з кореневого вузла і розгалужується
вниз аж до текстових вузлів на самому нижчому рівні дерева.
- Всі вузли знаходяться в ієрархічних відносинах між собою.
- Ці відносини описуються за допомогою понять батько,
дочірній і нащадок (всі дочірні на одному рівні).
Альтернативним інтерфейсом для обробки XML документів
є SAX.
SAX (Simple API for XML) - прикладний програмний
інтерфейс для парсеру з послідовним доступом до XML. Цей
інтерфейс надає механізм читання даних з XML документа.
SAX парсер є потоковим і керованим подіями. Завданням
користувача SAX API полягає в описі методів, що викликаються
подіями, що виникають при аналізі документа.
Такими подіями можуть бути наступні:
- текстовий вузол;
- вузол елемента XML;
- інструкція обробки XML;
- коментар XML.
Події викликаються появою відкритого тега, так і закритого
тега будь-якого з цих елементів документа. Атрибут XML також
розглядається як подія. Аналіз документа є односпрямованим (тобто
без повернень по дереву).
На відміну від DOM формальної специфікації для SAX не
існує. В якості нормативної розглядається Java реалізація SAX.
Слід відзначити наступні переваги і недоліки SAX.
Переваги:
- витрати пам'яті істотно менше (залежить від максимальної
глибини дерева документа та кількості атрибутів у вузлі елемента),
167