version 2004.4 (Modifiée)
DOM ECRIRE VALEUR ELEMENT XML (refElément{; xChemin}; valeurElément{; *})
Paramètre | Type | Description | |
refElément | Chaîne | Référence d'élément XML | |
xChemin | Texte | Chemin XPath de l'élément XML | |
valeurElément | Chaîne | Variable | Nouvelle valeur de l'élément | |
* | * | Si passé : définir la valeur en CDATA |
Description
La commande DOM ECRIRE VALEUR ELEMENT XML permet de modifier la valeur de l'élément désigné par refElément.
Si vous passez le paramètre facultatif xChemin, vous choisissez d'utiliser la notation XPath pour désigner l'élément à modifier (pour plus d'informations sur cette notation, reportez-vous au paragraphe "Utilisation de la notation XPath" dans la section Présentation des commandes XML DOM). Dans ce cas, vous devez passer la référence d'un élément XML racine dans refElément et le chemin XPath de l'élément à modifier dans xChemin.
Passez dans valeurElément une chaîne ou une variable (ou un champ) contenant la nouvelle valeur de l'élément :
si vous passez une chaîne, la valeur sera affectée telle quelle dans la structure XML.
si vous passez une variable ou un champ, 4D appliquera un traitement approprié à la valeur en fonction du type de valeurElément. Tous les types de données peuvent être utilisés, à l'exception des tableaux, images et pointeurs.
Lorsque le paramètre facultatif astérisque (*) est passé, vous indiquez que la valeur de l'élément doit être définie sous la forme CDATA. La forme spéciale CDATA permet d'écrire du texte sous forme brute (cf. exemple 2).
Exemples
(1) Soit la source XML suivante :
<Book> <Title>The Best Seller</Title> </Book>
Si le code suivant est exécuté, en admettant que vRefElem contienne la référence de l'élément 'Title' :
DOM ECRIRE VALEUR ELEMENT XML(vRefElem;"The Loser")
Nous obtenons :
<Book> <Title>The Loser</Title> </Book>
(2) Soit la source XML suivante :
<Maths> <Postulate>1+2=3</Postulate> </Maths>
Nous souhaitons écrire le texte "12 < 18" dans l'élément <postulate>. Cette chaîne ne peut pas être écrite telle quelle en XML car le caractère "<" n'est pas accepté. Ce caractère doit donc être transformé en "<", ou la forme CDATA doit être utilisée. Si vElemRef désigne le noeud XML <Postulate> :
` Forme normale DOM ECRIRE VALEUR ELEMENT XML(vRefElem;"12 < 18")
Nous obtenons :
<Maths> <Postulate>12 < 18</Postulate> </Maths>
` Forme CDATA DOM ECRIRE VALEUR ELEMENT XML(vRefElem;"12 < 18";*)
Nous obtenons :
<Maths> <Postulate><![CDATA[12 < 18]]></Postulate> </Maths>
Référence
Variables et ensembles système
Si la commande a été exécutée correctement, la variable système OK prend la valeur 1, sinon elle prend la valeur 0 et une erreur est générée (par exemple, si la référence de l'élément n'est pas valide).