必要なパラメータ
- map:*:1つ以上のインプットのセット。マッピングされるパラメータの名前がコロンの前に置かれ(例:
map:foo)、値はドキュメント内の対象のxml 要素へのxpath です。詳細は例を参照してください。
オプションのパラメータ
- uri:XML ファイルのURI。インプットファイルに対する
FilePathなどの動的なファイル参照、ディスク上の静的なファイルパス、またはXML ファイルのパブリックURL を指定できます。 - handle:XML データへの読み取り可能なハンドル参照。このハンドルはxmlOpen オペレーションによって作成され、対象のXML がインプットファイルではない場合にのみ必要です。詳細と例についてはxmlOpen を参照してください。
- repeatelement#:ドキュメント内で繰り返される要素へのxpath。
- repeatmode:
repeatelement#の値をアウトプットアイテムに格納する方法を定義します。使用できる値はITEMおよびARRAYです。ITEM(デフォルト)に設定すると、繰り返し要素から見つかった値は、オペレーションが生成する各アウトプットアイテムに個別の属性として格納されます。ARRAYに設定すると、繰り返し要素から見つかった値は単一のアウトプットアイテムに配列属性として格納され、1始まりのインデックスを介してアクセスする必要があります(例:[result.color#2]はresult アイテムのcolor属性内の2番目の値を参照します)。
アウトプット属性
- *:map パラメータを使用してマッピングされたXML 要素からのアウトプット値。これらは、アウトプットアイテムとマッピングされたインプットアイテムの名前を参照してアクセスします(例:
[results.foo])。アウトプットアイテムの名前(この場合はresults)はユーザーが決定します。追加のコンテキストについては例を参照してください。
例
XML ドキュメントから値を取得する
次のXML データについて考えてみます。これは のScript コネクタへのインプットデータとして渡されます:make およびmodel を取得し、それらをArc のメッセージのヘッダーとして追加できます。次のScript コードは、その方法の例を示しています。
特定の繰り返しXML 要素にインデックスを使用してアクセスする
特定の繰り返しXML 要素にアクセスする必要がよくあります。例えば、Script コネクタへのインプットファイルとして渡される次のXML 内で、2番目のorder のid にアクセスしたい場合があります。
<orders> 要素のいずれかに存在する要素への1始まりのxpath を使用して、特定のorder のid にアクセスできます。次のScript コードは、その方法の例を示しています。
repeatelement パラメータを使用する
次のXML データについて考えてみます。これはScript コネクタへのインプットファイルとして渡されます:repeatelement# パラメータは、繰り返しの値を持つ要素を定義するために使用されます。この例では、color およびexample の値は、/Items/colors XML 要素内で繰り返されています。repeatelement# を設定すると、xmlDOMGet オペレーションはその要素に存在する値をループします。
repeatmode パラメータは、repeatelement# の値をアウトプットとして格納する方法を定義します。ITEM(デフォルト)に設定すると、繰り返し要素によって見つかった値は、アウトプットアイテムに個別の属性として格納されます。ARRAY に設定すると、繰り返し要素によって見つかった値は、アウトプットアイテムに配列属性として格納され、1始まりのインデックスを介してアクセスする必要があります(例:[result.color#2] はred に解決され、result.example#2 はapple に解決されます)。