XML_TO_STRING
Verwenden Sie die Script-Funktion XML_TO_STRING, um die XML-Struktur eines bestimmten Elements (Handle) abzurufen und in einen String zu konvertieren. Sie können den String, den XML_TO_STRING zurückgibt, zur weiteren Verarbeitung verwenden, indem Sie ihn in einer Script-Variablen speichern.
Syntax
XML_TO_STRING (Referenz)
Script-Funktion und Parameter
-
XML_TO_STRING
Ruft den XML-Code eines bestimmten Elements als Text ab. -
Referenz
Verweis auf das zugehörige XML-Element. Alle Unterelemente des angegebenen Elements werden berücksichtigt.
Format: Script-Literal oder Script-Variable
Tipps: Mit Referenzen oder Handles können Sie eine Position innerhalb des XML-Dokuments identifizieren und bearbeiten. Sie können die folgenden Script-Funktionen verwenden, um Handles abzurufen:- XML_OPEN Gibt das allererste Handle aus, das sich auf das Root-Element bezieht.
- XML_SELECT_NODE
Gibt den Verweis auf das gesuchte Element zurück oder einen leeren String, wenn das gesuchte Element nicht existiert. - XML_GET_FIRST_CHILD
Gibt den Verweis auf das erste Unterelement eines Elements in einem XML-Dokument zurück.
Rückgabewert
Diese Script-Funktion gibt den XML-Code der definierten Referenz als String zurück.
Beispiel
Das folgende Beispiel öffnet die strukturierte Dokumentationsseite "@Details" als XML-Dokument. Das vollständige XML-Dokument wird dann in einen String konvertiert und in einer Script-Variablen gespeichert. In dieser Script-Variablen ersetzen Sie den String "test" durch "prod". Sobald das alte XML-Dokument geschlossen wird, wird der neue XML-Code in der Script-Variablen als XML-Dokument erneut geöffnet und seine Elemente (Elemente erster Ebene) werden in einer Schleife in das Aktivierungslog geschrieben.
:SET &XMLDOCU#=XML_OPEN(DOCU,,"@Details")
: DEFINE &XMLSTRINGNEW#,string
:IF &XMLDOCU# <> ""
: SET &XMLSTRING# = XML_TO_STRING( &XMLDOCU# )
:SET &XMLSTRINGNEW# = STR_SUB(&XMLSTRING#,"test","prod")
: ENDIF
: XML_CLOSE &XMLDOCU#
:SET &XMLDOCU#=XML_OPEN(STRING,&XMLSTRINGNEW#)
:SET &ELEMENT# = XML_GET_FIRST_CHILD(&XMLDOCU#)
:WHILE &ELEMENT# <> ""
: SET &NAME# = XML_GET_NODE_NAME(&ELEMENT#)
: P 'Element: &NAME#'
: SET &ELEMENT# = XML_GET_NEXTSIBLING(&ELEMENT#)
:ENDWHILE
Siehe auch: