ПредишенСледващото

3. Изпълнение на модела на обекта документ (DOM)
3.1. Основните класове Xml DOM
3.2. Разширено класове Xml DOM
3.3. XmlNavigator и подкрепа XPath
3.4. подкрепа XSLTRANSFORM и XSLT
3.5. Абстрактен клас XmlResolver

3. Изпълнение на модела на обекта документ (DOM)

Забележка: Ако приложението не използва правилното DOM структура, XmlTextReader и класове XmlTextWriter осигуряват бързо (без да се кешира) Feed напред достъп само за XML (виж раздел 2. Четене и писане на XML ..).

3.1. Основните класове Xml DOM

Тя представлява един възел в дървото с документи - основният клас за достъп до данните в обекта на модела XML. XmlNodeType определя допустимите видове възел. Този тип възел включва поддръжка за типове данни, именни пространства, както и дефиницията за документи (Document Type Определения - DTDs).

Тя представлява сбор от последователни възли. Той поддържа итерация и индекс за достъп методи за реална съвкупност от XmlNode обекти. Този обект незабавно отразява промените в документа.

Е набор от възли, които могат да бъдат достъпни по име или индекс. За bespechivaet итерация и достъпен по име.

3.2. Разширено класове Xml DOM

Ние ще се фокусира върху разширяване на основните класове за високо ниво на обект за всеки тип възел в XML документ. Повечето обекти на високо равнище наследяват свойствата и методите на XmlNode основната тема, и да го допълват свойствата и методите, необходими за високо ниво обект.

Тя представлява текстов елемент или съдържание атрибут.

3.3. XmlNavigator и подкрепа XPath

XmlNavigator абстрактен клас осигурява ефективно средство за научни изследвания и редактиране на XML данни в XML документ. Тя поддържа XPath експресия, и може да се използва като клас XSLTRANSFORM входен параметър, който осигурява производителност и XSLT трансформация. DocumentNavigator изпълнява XmlNavigator да XmlDocument и DataDocumentNavigator го продава за XmlDataDocument.

XmlNavigator има следните методи и свойства:

Основният модел на данните за XmlNavigator същите като в DOM. XmlNavigator осигурява виртуален прозорец към дървото възел и позволява следните последици:

- Когато виртуален възел посочи XmlNavigator, отстранен от дървото, или преместени на друго дърво, XmlNavigator продължава да сочи към преместен възел и MoveToParent може да се движи по съвсем различен сайт.
- MoveToNext MoveToPrevious и не излиза извън рамките на края на списъка, като по този начин остави, XmlNavigator в неопределен състояние.
- Когато виртуален възел посочи XmlNavigator, се премества на друго място на дървото, XmlNavigator се движи заедно с него.
- XmlNavigator винаги разположен във възела. В случай на неуспех на метода, което се отрази на листа, XmlNavigator посочва къде се е случило.

Проверете и заобикаляйки състояние Null

Ако XmlNavigator е в нулево състояние, тя временно не се отнасят към всеки възел. Когато се преведе до позиция XmlNavigator нула (MoveTo (нула)), това е неизправност с операциите по изключение InvalidPosition редактиране. Можете да разберете дали XmlNavigator обект на нула, и да се провери дали NodeType връща 0. Можете да го изключите от XmlNavigator нула държавния, използвайки MoveTo (XmlNavigator) или MoveToDocument.

3.4. подкрепа XSLTRANSFORM и XSLT

Въпреки, че са структурирани XML документи, приложения, често се нуждаят от информация, за да бъде структурирана по различен начин. разширения Stylesheet Language (XSL) - е базиран на XML, и думи, за да се превърне един документ в друг Xml XML, HTML документ или по някакъв друг документ, структуриран. XSL се основава на XPath, който ви позволява да се определят конкретни части Xml документ и формулиране на запитвания.
XSLTRANSFORM клас се осъществява в съответствие с трансформации спецификация W3C XSL (XSLT). XSLTRANSFORM зарежда XSLT стилове използване XmlReader и преобразува входните данни, използвайки XmlNavigator.
За да извършите конвертирането, XML Рамковата използва XSLT процесор и XSL стил лист, който им казва как да направите конвертирането. стил лист се състои от шаблони, които определят как трябва да се появи всеки документ Xml източник възел в получения документ XML. XSLT процесор работи едновременно с трите дървета, един - е източник на XML, а вторият - за получената структура, а третият - за стила лист.
метод XSLTRANSFORM трансформация превръща данните в XmlNavigator и ги извежда един от следните цели:

- XmlReader
- XmlWriter
- TextWriter
- поток

Моля, имайте предвид, че избраният трансформацията работят с документа като цяло. С други думи, ако текущия възел е настроено на възел в дървото, различна от коренът на документа, това не изключва възможността трансформация на всички налични възли на заредения документ. След преобразуването е извършено, XmlNavigator остава в първоначалното състояние. Това означава, че възловата точка, която е текущата преди процеса на трансформация остава текущия възел след метода на трансформация е наречен.

3.5. Абстрактен клас XmlResolver

Резюме XmlResolver клас се използва за решаване на външни XML ресурси. XmlUrlResolver реализира този клас, за да се даде възможност на тези XML ресурси, като например URI. Той се използва XmlTextReader, за да заредите външен DTD, естеството и схемата. Тя се използва и XSLTRANSFORM, за да се справят елементите .

Свързани статии

Подкрепете проекта - споделете линка, благодаря!