Version 2004
DOM Create XML element (elementRef; xPath{; attrName; attrValue}{; attrName2; attrValue2; ...; attrNameN; attrValueN}) String
Parameter | Typ | Beschreibung | |
ElementRef | String | Referenz auf Root XML Element | |
xPath | Text | XPath Pfad des zu erstellenden XML Elements | |
AttrName | String | Zu setzendes Attribut | |
AttrWert | String | Wert des neuen Attributs | |
Funktionsergebnis | String | Referenz auf erstelltes XML Element |
Beschreibung
erstellt ein neues Element im XML Element, definiert in ElementRef im Pfad, definiert in xPath und fügt bei Bedarf Attribute hinzu.
In ElementRef übergeben Sie die Referenz auf das Root Element, z.B. erstellt mit DOM Create XML Ref.
In xPath übergeben Sie den Zugriffspfad im XML Format des zu erstellenden Elements. In diesem Fall ist das XPath Format verwendbar. Weitere Informationen dazu finden Sie im Abschnitt Einführung in XML Befehle. Gibt es keine Elemente des Pfads, werden sie angelegt.
Im Parameter xPath können Sie direkt den Namen eines Eintrags übergeben, um vom aktuellen Eintrag einen Untereintrag zu erstellen (siehe Beispiel 3).
Hinweis: Haben Sie einen oder mehrere Namensbereiche für den Baum gesetzt, definiert in ElementRef (siehe Befehl DOM Create XML Ref, muss dem Parameter xPath der Name des verwendeten Bereichs vorangestellt werden (zum Beispiel "MyNameSpace:MyElement").
In den optionalen Parametern AttrName und AttrWert können Sie Paare Attribute/Attributwerte in Form von Variablen, Feldern oder tatsächlichen Werten übergeben. Sie können beliebig viele Paare übergeben.
Die Funktion gibt als Ergebnis die XML Referenz des erstellten Elements zurück.
Beispiele
1. Sie wollen folgendes Element erstellen:
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <RootElement> <Elem1> <Elem2> <Elem3> </Elem3> <Elem3> </Elem3> </Elem2> </Elem1> </RootElement>
Dazu schreiben Sie:
C_STRING(16;vRootRef;vElemRef) vRootRef:=DOM Create XML Ref("RootElement") vxPath:="/RootElement/Elem1/Elem2/Elem3" vElemRef:=DOM Create XML element(vRootRef;vxPath) vxPath:="RootElement/Elem1/Elem2/Elem3[2]" vElemRef:=DOM Create XML element(vRootRef;vxPath)
2. Sie wollen folgendes Element mit Attributen erstellen:
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <RootElement> <Elem1> <Elem2> <Elem3 Font=Verdana Size=10> </Elem3> </Elem2> </Elem1> </RootElement>
Dazu schreiben Sie:
C_STRING(16;vRootRef;vElemRef) C_STRING(80;$aAttrName1;$aAttrName2;$aAttrVal1;$aAttrVal2) $aAttrName1:="Font" $aAttrName2:="Size" $aAttrVal1:="Verdana" $aAttrVal2:="10" vRootRef:=DOM Create XML Ref("RootElement") vxPath:="/RootElement/Elem1/Elem2/Elem3" vElemRef:=DOM Create XML element(vRootRef;vxPath;$aAttrName1;$aAttrVal1; $aAttrName2;$aAttrVal2)
3. Sie wollen folgende Struktur erstellen und exportieren:
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <Root> <Elem1>Hello</Elem1> </Root>
Dazu verwenden Sie die Syntax, die auf einem einfachen Eintragsnamen basiert. Dazu schreiben Sie:
C_STRING(16;$root) C_STRING(16;$ref1) $root:=DOM Create XML Ref ("Root") DOM SET XML ELEMENT VALUE($ref1;"Hello") $ref1:=DOM Create XML element($root;"Elem1") DOM EXPORT TO FILE($root;"mydoc.xml") DOM CLOSE XML($root)
Referenz
DOM Get XML element, DOM REMOVE XML ELEMENT.
Systemvariablen oder Mengen
Bei korrekt ausgeführtem Befehl wird die Systemvariable OK auf 1 gesetzt, sonst auf 0 (Null) und ein Fehler wird zurückgegeben.
Fehler verwalten
Ein Fehler wird erzeugt, wenn:
Die Referenz auf das Root Element ungültig ist.
Der Name des zu erstellenden Elements ungültig ist, z.B. wenn er mit einer Zahl beginnt.