Porovnávané verzie

Kľúč

  • Tento riadok sa pridal
  • Riadok je odstránený.
  • Formátovanie sa zmenilo.

Funkcia %XML_OpenDocument


Funkcia
Funkcia načíta XML dokument z disku.


Deklarácia


Blok kódu
languageesl
themeConfluence
INT %XML_OpenDocument(
   TEXT in fileName,
   BOOL in validate[,
   TEXT in features := ""[,
   BOOL in preserveWhitespace := @TRUE]]
 )


Parametre


fileNameMeno 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).
featuresNepovinný 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

Vykoná spracovanie menného (namespace) priestoru: predpony budú odstránené z názvov prvkov a atribútov a nahradené zodpovedajúcimi URI menného priestoru. V predvolenom nastavení budú tieto dve jednoducho zreťazené, ale vlastnosť jadra namespace-sep umožňuje aplikácii zadať oddeľovací reťazec na oddelenie časti URI a lokálnej časti.

FalseNevykonáva spracovanie menného priestoru.
Defaulttrue
NoteAk je funkcia overenia nastavená na hodnotu true, dokument musí obsahovať gramatiku, ktorá podporuje použitie menných priestorov.


alebo

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


TrueNahlási pôvodné názvy s predponou a atribúty použité pre deklarácie priestoru názvov.
FalseNeuvádza atribúty používané pre deklarácie priestoru názvov a voliteľne neoznamuje pôvodné názvy s predponouReport the original prefixed names and attributes used for namespace declarations.  FalseDo not report attributes used for Namespace declarations, and optionally do not report original prefixed names.
Defaultfalse


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


Blok kódu
languageesl
themeRDark
 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:


 



Blok kódu
languageesl
themeRDark
 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.

Demo pre XML.