@XMLSerialize
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.
