Dies ist die alte 4D Dokumentations-Website. Die neue und aktualisierte Dokumentation finden Sie unter developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
DOM SET XML ELEMENT VALUE
|
DOM SET XML ELEMENT VALUE ( ElementRef {; xPath}; ElementWert {; *} ) | ||||||||
Parameter | Typ | Beschreibung | ||||||
ElementRef | String |
![]() |
Referenz auf XML Element | |||||
xPath | Text |
![]() |
Pfad xPath des XML Elements | |||||
ElementWert | String, Variable |
![]() |
Neuer Wert des Elements | |||||
* | Operator |
![]() |
Mit Stern: Setze Wert in CDATA | |||||
Der Befehl DOM SET XML ELEMENT VALUE ändert den Wert des Elements, definiert durch ElementRef.
Mit den optionalen Parameter xPath legen Sie fest, dass auf das zu ändernde Element über die XPath Notation (siehe Absatz XPath Notation verwalten (DOM)) zugegriffen wird. Folgende Ausdrücke für Pfade werden unterstützt:
Ausdruck | Aktion |
/ | Gibt den Root Knoten an(absoluter Pfad) |
para[1] | Gibt das erste para Unterelement des Kontextknoten an |
para[last()] | Gibt das letzte para Unterelement des Kontextknoten an |
In diesem Fall müssen Sie in ElementWert die Referenz auf ein Root XML Element übergeben und in xPath den Pfad XPath des zu ändernden Elements.
Hinweis zur Kompatibilität: Ab v18 R3 ist die XPath Implementation in 4D nicht mehr konform. Zur Wahrung der Kompatibilität wird in konvertierten Anwendungen standardmäßig die bisherige Implementation beibehalten. Um die erweiterten Features in Ihren konvertierten Anwendungen zu nutzen, müssen Sie auf der Seite Kompatibilität die Option Verwende Standard XPath aktivieren.
In ElementWert übergeben Sie einen String oder eine Variable bzw. ein Datenfeld mit dem neuen Wert des angegebenen Elements:
Ist der optionale Parameter Stern (*) übergeben, muss der Wert des Elements im Format CDATA gesetzt werden. In diesem Sonderformat lässt sich Ausgangstext unverändert schreiben (siehe Beispiel 2).
Hinweis: Ist in diesem Befehl das in ElementRef übergebene Element ein BLOB, wird es automatisch in base64 codiert. In diesem Fall führt der Befehl DOM GET XML ELEMENT VALUE automatisch die umgekehrte Operation aus.
In Anlehnung an die Regeln zum Bearbeiten von XML werden alle Zeichen für Zeilenende (CR und CRLF) in LF Zeichen konvertiert.
Wird in dieser XML Quelle:
<Book> <Title>The Best Seller</Title> </Book>
…der nachfolgende Code ausgeführt, wobei vElementRef die Referenz auf das Element ‘Title’ enthält:
DOM SET XML ELEMENT VALUE(vElemRef;"The Loser")
…erhalten Sie:
<Book> <Title>The Loser</Title> </Book>
Wir gehen von folgender XML Struktur aus:
<Maths> <Postulate>1+2=3</Postulate> </Maths>
Wir wollen in der XML Struktur den Text “12 < 18” im Element <Postulate> schreiben. Dieser String lässt sich in dieser Form nicht in XML schreiben, da das Zeichen “<” nicht akzeptiert wird. Es muss geändert werden in “<” oder das Format CDATA muss verwendet werden.Gibt vElemRef den XML-Knoten <Postulate> an, gilt folgendes:
` Normales Formular
DOM SET XML ELEMENT VALUE(vRefElem;"12 < 18")
Wir erhalten:
<Maths> <Postulate>12 < 18</Postulate> </Maths>
` Format CDATA
DOM SET XML ELEMENT VALUE(vRefElem;"12 < 18";*)
Wir erhalten:
<Maths> <Postulate><![CDATA[12 < 18]]></Postulate> </Maths>
Bei korrekt ausgeführtem Befehl wird die Systemvariable OK auf 1 gesetzt, sonst auf 0 (Null) und ein Fehler wird zurückgegeben; z.B. bei ungültiger Referenz auf das Element.
Produkt: 4D
Thema: XML DOM
Nummer:
868
Geändert: 4D 2004.4
Geändert: 4D v11 SQL
4D Programmiersprache ( 4D v20 R7)