Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
DOM SET XML ELEMENT VALUE
|
DOM SET XML ELEMENT VALUE ( refElément {; xPath}; valeurElément {; *} ) | ||||||||
Paramètre | Type | Description | ||||||
refElément | Chaîne |
![]() |
Référence d’élément XML | |||||
xPath | Texte |
![]() |
Chemin XPath de l’élément XML | |||||
valeurElément | Chaîne, Variable |
![]() |
Nouvelle valeur de l’élément | |||||
* | Opérateur |
![]() |
Si passé : définir la valeur en CDATA | |||||
La commande DOM SET XML ELEMENT VALUE permet de modifier la valeur de l’élément désigné par refElément.
Si vous passez le paramètre facultatif xPath, vous choisissez d'utiliser la notation XPath pour désigner l’élément à modifier (pour plus d'informations, reportez-vous à la sectionUtilisation de la notation XPath). Les expressions de chemin suivantes sont prises en charge :
Expression | Action |
/ | Désigne le noeud racine (chemin absolu) |
para[1] | Désigne le premier para enfant du noeud contextuel |
para[last()] | Désigne le dernier para enfant du noeud contextuel |
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 xPath.
Note de compatibilité : A compter de v18 R3, le niveau de conformité de l'implémentation de XPath dans 4D est nettement plus élevé. Pour des raisons de compatibilité, l'implémentation antérieure non standard est maintenue par défaut dans les bases converties. Si vous souhaitez bénéficier des fonctionnalités avancées dans vos bases converties, vous devez cocher l'option de compatibilité Utiliser XPath standard de la Page Compatibilité.
Passez dans valeurElément une chaîne ou une variable (ou un champ) contenant la nouvelle valeur de l’élément :
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).
Note : Lorsque l’élément désigné par refElément est de type BLOB, DOM SET XML ELEMENT VALUE l'encode automatiquement en base64. Dans ce cas, la commande DOM GET XML ELEMENT VALUE effectue automatiquement l'opération inverse.
Par conformité avec les règles de traitement XML, toutes les séquences de caractères de fin de ligne CR et CRLF sont converties en caractères LF.
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 SET XML ELEMENT VALUE(vRefElem;"The Loser")
Nous obtenons :
<Book> <Title>The Loser</Title> </Book>
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 SET XML ELEMENT VALUE(vRefElem;"12 < 18")
Nous obtenons :
<Maths> <Postulate>12 < 18</Postulate> </Maths>
` Forme CDATA
DOM SET XML ELEMENT VALUE(vRefElem;"12 < 18";*)
Nous obtenons :
<Maths> <Postulate><![CDATA[12 < 18]]></Postulate> </Maths>
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).
Produit : 4D
Thème : XML DOM
Numéro :
868
Modifié : 4D 2004.4
Modifié : 4D v11 SQL
4D - Langage ( 4D v20 R7)