Dies ist die alte 4D Dokumentations-Website. Die neue und aktualisierte Dokumentation finden Sie unter developer.4d.com

Home

 
4D v20 R7
DOM SET XML ELEMENT VALUE

DOM SET XML ELEMENT VALUE 


 

DOM SET XML ELEMENT VALUE ( ElementRef {; xPath}; ElementWert {; *} ) 
Parameter Typ   Beschreibung
ElementRef  String in Referenz auf XML Element
xPath  Text in Pfad xPath des XML Elements
ElementWert  String, Variable in Neuer Wert des Elements
Operator in 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:

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

  • Übergeben Sie einen String, wird der Wert wie gehabt in der XML Struktur verwendet.
  • Übergeben Sie eine Variable oder ein Feld, bearbeitet 4D den Wert je nach Typ von ElementWert. Sie können bis auf Arrays, Bilder und Zeiger alle Datentypen verwenden. Wird ElementWert als undefiniert gewertet, verwendet 4D einen leeren String.

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.



Siehe auch 

DOM GET XML ELEMENT VALUE
XML SET OPTIONS

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: XML DOM
Nummer: 868

Dieser Befehl ändert die Systemvariable OKDieser Befehl ändert die Systemvariable ErrorDieser Befehl kann in preemptive Prozessen laufen

 
SEITENINHALT 
 
GESCHICHTE 

Geändert: 4D 2004.4
Geändert: 4D v11 SQL

 
ARTIKELVERWENDUNG

4D Programmiersprache ( 4D v20 R7)