4D v16.3

DOM Insert XML element

ホーム

 
4D v16.3
DOM Insert XML element

DOM Insert XML element 


 

DOM Insert XML element ( targetElementRef ; sourceElementRef ; childIndex ) -> 戻り値 
引数   説明
targetElementRef  テキスト in 親XML要素参照
sourceElementRef  テキスト in 挿入するXML要素参照
childIndex  倍長整数 in 新しい要素を挿入するターゲットとなる子要素のインデックス
戻り値  テキスト in 新しいXML要素の参照

説明   

DOM Insert XML element コマンドを使用してtargetElementRef引数に渡された参照を持つXML要素の子要素の間に、新しいXML要素を挿入できます。

sourceElementRefに挿入する要素を渡します。この要素は、DOMツリーの中の既存のXML要素の参照として渡さなければなりません。

childIndex引数は、新しい要素を挿入する、親要素の子要素を指定するために使用します。この引数にはインデックス番号を渡します。番号が有効でない場合 (例えばこのインデックス番号を持つ子要素が存在しない)、新しい要素は親要素の最初の子要素の前に挿入されます。 

コマンドは取得したXML要素の参照を返します。

例題  

以下のXML構造で、1番目と2番目の本を入れ替えます:

<?xml version="1.0" encoding="UTF-8"  standalone="no" ?>
<BookCatalog>
  <Book>
           <Title>Open Source Web Services</Title>
           <Author>Collective</Author>
           <Date>2003</Date>
           <ISBN>2-7440-1507-5</ISBN>
           <Publisher>Wrox</Publisher>
    </Book>
<Book>
           <Title>Building XML Web services</Title>
           <Author>Scott Short</Author>
           <Date>2002</Date>
           <ISBN>2-10-006476-2</ISBN>
           <Publisher>Microsoft Press</Publisher>
    </Book>
</BookCatalog>  

これを行うには、以下のコードを実行します:

 C_TEXT($rootRef)
 $rootRef:=DOM Parse XML source("") // XMLドキュメントを選択
 If(OK=1)
    C_TEXT($newStruct)
    $newStruct:=DOM Create XML Ref("BookCatalog")
 
    $bookRef:=DOM Find XML element($rootRef;"/BookCatalog/Book[1]")
    $newElementRef:=DOM Append XML element($newStruct;$bookRef)
 
    $bookRef:=DOM Find XML element($rootRef;"/BookCatalog/Book[2]")
    C_TEXT($newElementRef)
    $newElementRef:=DOM Insert XML element($newStruct;$bookRef;1)
 
    DOM CLOSE XML($newStruct)
    DOM CLOSE XML($rootRef)
 End if



参照 

DOM Append XML element

 
プロパティ 

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

This command can be run in preemptive processes

 
履歴 

初出: 4D v12

 
ARTICLE USAGE

ランゲージリファレンス ( 4D v16)
ランゲージリファレンス ( 4D v16.1)
ランゲージリファレンス ( 4D v16.2)
ランゲージリファレンス ( 4D v16.3)