ここは旧式の4DドキュメントWebサイトです。最新のアップデートされたドキュメントを読むには新サイトをご利用下さい→ developer.4d.com

ホーム

 
4D v20 R7
DOM SET XML ELEMENT VALUE

DOM SET XML ELEMENT VALUE 


 

DOM SET XML ELEMENT VALUE ( elementRef {; xPath}; elementValue {; *} ) 
引数   説明
elementRef  文字 in XML要素参照
xPath  テキスト in XML要素のXPathパス
elementValue  文字, 変数 in 要素の新しい値
演算子 in 指定時: 値をCDATAに設定

説明   

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

オプションのxPath 引数を渡すと、更新する要素の指定にXPath記法を指定したことになります (この記法に関する詳細は、XPath記法のサポート (DOM) を参照してください)。以下のパス式がサポートされます: 

アクション
/rootノードを指定します(絶対パス)
para[1]コンテキストノードの最初のパラ子を指定します
para[last()]コンテキストノードの最後のパラ子を指定します

この場合、elementRef 引数にはルートXML 要素の参照を渡し、変更する要素のXPath パスをxPath 引数に渡す必要があります。

互換性に関する注意: v18 R3 以降、4D のXPath 実装はよりXPathに準拠したに変更されました。互換性上の理由から、以前の標準でない実装は変換されたデータベースではデフォルトでは維持されます。変換されたデータベースにおいて拡張された機能を利用するためには、互換性ページの互換性オプションの標準XPath を使用するオプションを選択してください。

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

  • 文字列を渡した場合、値はXML構造の中でそのまま使用されます。
  • 変数またはフィールドを渡した場合、4DはelementValue の型に基づき値を処理します。配列やピクチャ、ポインタを除くすべてのデータタイプを使用できます。If elementValueundefined に評価されてしまった場合、4D は空の文字列を使用します。

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

注: elementRef で指定された要素がDOM SET XML ELEMENT VALUE コマンドで処理されたBLOB の場合、それは自動でBase64 にエンコードされます。この場合DOM GET XML ELEMENT VALUE は自動で逆の処理を行います。

XML処理のルールに準拠するため、行末文字シークエンス(CRとCRLF)は全てLF文字に変換されます。

以下のXMLソースで:

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

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

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

以下のようになります:

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

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

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

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

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

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

 <Maths>
   <Postulate>12 < 18</Postulate>
</Maths>


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

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

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

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



参照 

DOM GET XML ELEMENT VALUE
XML SET OPTIONS

 
プロパティ 

プロダクト: 4D
テーマ: XML DOM
番号: 868

このコマンドはOKシステム変数を更新しますErrorシステム変数が更新されることがあります。This command can be run in preemptive processes

 
ページの目次 
 
履歴 

変更: 4D 2004.4
変更: 4D v11 SQL

 
ARTICLE USAGE

ランゲージリファレンス ( 4D v20 R7)