XML_TO_STRING

Script-Funktion: Gibt das XML eines bestimmten Elements als Text zurück.

Syntax

XML_TO_STRING (Referenz)

Syntaxteil

Beschreibung/Format

Referenz

Verweis auf das Element.
Format: Script-Literal oder Script-Variable


 

Rückgabewert

XML des eingegebenen Verweises als String.

Das Script-Element wandelt die XML-Struktur eines angegebenen Elements in einen String um. Geben Sie die Referenz (Handle) für das entsprechende XML-Element an. Alle Sub-Elemente des angegebenen Elements werden ebenfalls berücksichtigt.

Verwenden Sie die folgenden Script-Funktionen, um Handles anzugeben:

  • XML_OPEN 
    Gibt das erste Handle zurück, das auf das Root-Element verweist.
    Verwenden Sie das von XML_OPEN zurückgegebene Handle, um das vollständige XML-Dokument zurückzugeben. 
  • XML_SELECT_NODE
    Gibt das Handle eines bestimmten Elements zurück.
  • XML_GET_FIRST_CHILD

    Gibt das Handle des ersten Unterelements eines Elements zurück.

Sie können den von XML_TO_STRING zurückgegebenen String zur weiteren Verarbeitung verwenden, z. B. indem Sie ihn in einer Script-Variablen speichern.

Beispiel

Das folgende Beispiel öffnet die strukturierte Registerkarte Dokumentation als XML-Dokument. Das komplette XML-Dokument wird dann in einen String umgewandelt und in einer Script-Variablen gespeichert. Der String 'test' wird in der Script-Variablen in 'prod' geändert.
Das neue XML in der Script-Variablen wird dann als XML-Dokument wieder geöffnet, nachdem das XML-Dokument geschlossen wurde und seine Elemente (auf der ersten Ebene) in einer Schleife in das Aktivierungs-Log geschrieben wurden.

: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: