Function DE Version 10.01

@XMLSerialize

XML

Syntax

@XMLSerialize(XMLD);
@XMLSerialize(XMLD;Options);

Beschreibung

Diese @Function serialisiert ein XML-Dokument und gibt es als Text oder Binärpuffer zurück.
Das XML-Dokument wird dabei in UTF-8 ausgegeben.
Über den optionalen Parameter Options kann festgelegt werden, ob das Ergebnis als TEXT oder VSPECBINBUFFER zurückgegeben und ob das XML formatiert oder kompakt ausgegeben wird.

VSPECHXMLDOC
XMLD:
Handle des XML-Dokuments, das serialisiert werden soll.
XMLD muss ein gültiges VSPECHXMLDOC (XMLD) Handle enthalten.

TEXT Options (Optional):
Legt Rückgabetyp und Formatierung fest.
Die Optionen können kombiniert werden.

Option : Bedeutung
"A" : Gibt den Attributwert als TEXT zurück.
"B" : Gibt den Attributwert als VSPECBINBUFFER zurück.
"P" : Gibt das XML formatiert ("pretty printed") mit Einrückungen aus.
"C" : Gibt das XML kompakt ohne zusätzliche Formatierung aus.

Wird Options nicht angegeben, entspricht dies den Optionen AP.
Bei widersprüchlichen Optionen innerhalb derselben Gruppe gilt jeweils die zuletzt angegebene Option.

Return-Wert:
Bei erfolgreicher Ausführung liefert die @Function das serialisierte XML-Dokument entsprechend Options als TEXT oder VSPECBINBUFFER zurück.
Bei Rückgabe als TEXT darf das Ergebnis die maximale Größe eines Text-Items nicht überschreiten.
Bei Rückgabe als VSPECBINBUFFER beträgt die maximale Ausgabegröße 2 GB.
Ist das XML-Dokument-Handle ungültig, enthält Options eine ungültige Option oder kann das XML-Dokument nicht serialisiert werden, liefert die @Function @ERROR.


Beispiel: @XMLSerialize(XMLD);

Flags := 7;
hXMLD := @XMLCreate(Flags);
hXMLRoot := @XMLCreateRoot(hXMLD;"customer");
XML := @XMLSerialize(hXMLD);
@XMLRelease(hXMLD);

Das Beispiel serialisiert das XML-Dokument als formatierten UTF-8-Text.

Beispiel: @XMLSerialize(XMLD;Options);

Flags := 7;
hXMLD := @XMLCreate(Flags);
hXMLRoot := @XMLCreateRoot(hXMLD;"customer");
XMLBuffer := @XMLSerialize(hXMLD;"BC");
@DestroyBuffer(XMLBuffer);
@XMLRelease(hXMLD);

Das Beispiel serialisiert das XML-Dokument kompakt als VSPECBINBUFFER.