XML_OpenDocument

XML_OpenDocument

Funkcia %XML_OpenDocument


Funkcia

Funkcia načíta XML dokument z disku.

Deklarácia

INT %XML_OpenDocument( TEXT in fileName, BOOL in validate[, TEXT in features := ""[, BOOL in preserveWhitespace := @TRUE]] )

Parametre

fileName

Meno XML súboru na disku.

validate

@TRUE - vykonanie validácie XML dokumentu (v prípade, že XML dokument obsahuje DTD).
@FALSE - bez validácie XML dokumentu (v prípade, že XML dokument obsahuje DTD).

features

Nepovinný parameter typu Text, ktorý umožňuje zmeniť preddefinované hodnoty niektorých parametrov štandardného SAX Parsera a tým ovplyvniť jeho chovanie a následne aj obsah načítaného dokumentu v pamäti.
Parametre sa zapisujú vo dvojiciach v poradí meno a číselná hodnota. Jednotlivé časti sú oddelené znakom medzera.
Ak je hodnota 0, parameter bude vypnutý, inak zapnutý.
Zadanie neplatného mena parametra sa nevyhodnotí ako chyba.
Úplný zoznam parametrov je napríklad na http://xerces.apache.org/xerces2-j/features.html.
Aktuálna verzia podporuje nasledujúce dva parametre:

 

http://xml.org/sax/features/namespaces

True

Perform namespace processing: prefixes will be stripped off element and attribute names and replaced with the corresponding namespace URIs. By default, the two will simply be concatenated, but the namespace-sep core property allows the application to specify a delimiter string for separating the URI part and the local part.  

False

Do not perform namespace processing.

Default

true

Note

If the validation feature is set to true, then the document must contain a grammar that supports the use of namespaces.

alebo

http://xml.org/sax/features/namespace-prefixes

True

Report the original prefixed names and attributes used for namespace declarations.  

False

Do not report attributes used for Namespace declarations, and optionally do not report original prefixed names.

Default

false

preserveWhitespace

@TRUE - textové uzly, ktoré obsahujú tzv. biele znaky (medzera, tabelátor, ..) ostanú zachované tak, ako sú v XML dokumente.
@FALSE - textové uzly, ktoré obsahujú tzv. biele znaky budú pri parsovaní dokumentu ignorované.

Návratová hodnota

Handle na otvorený XML dokument. Ak sa dokument nepodarí otvoriť, návratová hodnota bude neplatná.

Popis

Funkcia načíta zadaný XML dokument z disku a vráti jeho handle.

Podporované kódovania XML dokumentu sú:

  • UTF-8

  • UTF-16

  • US-ASCII

  • ISO-8859-1

  • Latin1

  • ISO-8859-2

  • Latin2

  • ISO-8859-3

  • ISO-8859-4

  • WINDOWS-1250

Príklad 1

INT _doc _doc := %XML_OpenDocument("c:\data.xml", @TRUE)

Príklad 2

Otvorenie XML dokumentu s nastavením parametra (http://xml.org/sax/features/namespace-prefixes) SAX Parsera:

 

TEXT _features _features := "http://xml.org/sax/features/namespace-prefixes 1" _hXML := %XML_OpenDocument (_fileName, @FALSE, _features)

Poznámka

Ak je nastavený parameter namespace-prefixes, pri čítaní XML dokumentu sa nebudú ignorovať xmlns* atribúty. Nasledovný XML súbor bol čítaný so zapnutým parametrom http://xml.org/sax/features/namespace-prefixes.

.