DOM SET XML ELEMENT VALUE

4D - Documentation   French   English   German   Spanish   日本語   4D v11 SQLコマンドテーマリスト   4D v11 SQLインデックス   4D v11 SQL定数テーマリスト   戻る   前   次

version 2004.4 (Modified)


DOM SET XML ELEMENT VALUE (elementRef{; xPath; elementValue{; *})

引数説明
elementRef文字列XML要素参照
xPathテキストXML要素のXPathパス
elementValue文字列 | 変数要素の新しい値
**指定時: 値をCDATAに設定

説明

DOM SET XML ELEMENT VALUE コマンドを使用して、elementRefで指定した要素の値を更新できます。

オプションのxPath 引数を渡すと、更新する要素の指定にXPath記法を指定したことになります (この記法に関する詳細は、XML DOM コマンドの概要の “XPath記法の利用” を参照してください)。この場合、elementRef にはルート要素参照を渡し、xPath には変更する要素のXPathを渡します。

elementValueには新しい値を格納した文字列、変数またはフィールドを渡します:

・文字列を渡した場合、値はXML構造の中でそのまま使用されます。

・変数またはフィールドを渡した場合、4DはelementValueの型に基づき値を処理します。配列やピクチャ、ポインタを除くすべてのデータタイプを使用できます。

オプションのアスタリスクを渡すと、要素の値はCDATAセクションに設定されます。テキストをそのまま挿入するために特別なCDATAの形式が使用されます (例題 2参照)。

Note: elementRefで指定された要素がDOM SET XML ELEMENT VALUE コマンドで処理されたBLOBの場合、それは自動でBase64でエンコードされています。DOM GET XML ELEMENT VALUEは逆の処理を自動では行わないので、この場合DECODE コマンドを使用する必要があります。

例題

1. 以下のXMLソースで:

<Book>
   <Title>The Best Seller</Title>
</Book>

vElemRef が“Title”要素への参照を持つときに以下のコードを実行すると:

   DOM SET XML ELEMENT VALUE(vElemRef;"The Loser")

以下のようになります:

<Book>
   <Title>The Loser</Title>
</Book>

2. 以下のXMLソースがあるとき:

<Maths>
   <Postulate>1+2=3</Postulate>
</Maths>

<Postulate> 要素にテキスト “12<18” を書き込みたいとします。 “<” 文字は受け入れられないため、この文字列をそのままXMLに書き込むことはできません。この文字を “&lt;” に変更するか、CDATAの形式を使用しなければなりません。vElemRefがXML <Postulate> ノードを指すとき:

      ` Normal form
   DOM SET XML ELEMENT VALUE(vElemRef;"12<18")

このコードを実行すると、次のようになります:

<Maths>
   <Postulate>12 &lt; 18</Postulate>
</Maths>

      ` CDATA form
   DOM SET XML ELEMENT VALUE(vElemRef;"12<18";*)

このコードを実行すると、次のようになります:

<Maths>
   <Postulate><![CDATA[12 < 18]]></Postulate>
</Maths>

参照

DOM GET XML ELEMENT VALUE.

システム変数またはセット

コマンドが正しく実行されると、システム変数OKには1が設定されます。そうでなければ0が設定されエラーが生成されます (例えば要素参照が無効のときなど)。


4D - Documentation   French   English   German   Spanish   日本語   4D v11 SQLコマンドテーマリスト   4D v11 SQLインデックス   4D v11 SQL定数テーマリスト   戻る   前   次