XPath Expression Builder は、ネーム・スペースの限定サポートを提供します。
表は、ノード属性データの一部として、ランタイム環境に渡すデプロイ可能なデータをカプセル化し、ノードはこれを使用して式を接頭部から URI 置換に変更します。 最終の式は、その関連メッセージ処理エンジン (つまり XPath 1.0 ランタイム・エンジンまたは ESQL ランタイム・エンジン) による採用時に、ターゲット・ツリーに対して処理されるため、ネーム・スペース・マッチングをサポートします。
読み取り専用パス・フィールドまたは読み取り/書き込みパス・フィールドに ESQL フィールド参照式を入力した場合、あるいは読み取り専用パス・フィールド、読み取り/書き込みパス・フィールド、または汎用式フィールド (汎用式には 0 以上のパス式が含まれます) に XPath 1.0 パス式を入力した場合、WebSphere® Message Broker は使用される構文から言語を理解します。
XPath は汎用式フィールドのデフォルトで、XPath 1.0 文法に準拠しているかを確認することで妥当性検査されます。 パス式フィールドの場合、式が有効で $ 符号で始まる場合、XPath とみなされます。
使用できる言語は、ノードのプロパティー・フィールドで現在使用中のプロパティー・エディターにより指示されます。
ネーム・スペース接頭部は XPath または ESQL 式で使用され、ステートメントを短く、また理解しやすくします。 さらに、その関連ネーム・スペース URI での突き合わせによっても、エレメント名突き合わせの修飾機能を引き続きサポートします。
<b:a xmlns:b='xyz'>
<!-- the namespace of elements 'a' and 'c' using prefix 'b' is xyz -->
<b:c>
<b:d xmlns:b='qrs'>
<!-- the namespace of elements 'd' and 'e' using prefix 'b' is now qrs -->
<b:e>100</b:e>
</b:d>
</b:c>
</b:a>
接頭部を宣言するネーム・スペース宣言の有効範囲は、それが現れる開始タグの先頭から、対応する終了タグの末尾まで渡り、同じネーム・スペース接頭部を持つすべての内側の宣言の有効範囲は除外されることに注意してください。 空のタグの場合、有効範囲はタグそのもの、つまり > です。
/b:a/b:c/b2:d/b2:e
式ダイアログで生成された URI マップへの自動生成接頭部が、同じ接頭部 (この場合 b) を多重定義しないように、内側の b 接頭部に数値が付加されて、外側の b 接頭部と見分けが付くようにしてあることに注意してください。 この方法は、接頭部名が競合するごとに繰り返されます。
Root.b:a.b:c.b2:d.b2:e
式内のネーム・スペース接頭部をサポートするために、XPath Expression Builder ダイアログは (式が生成されたインポート済みスキーマ定義の内容に基づいて) URI ネーム・スペース設定表への接頭部を自動生成します。
この表の URI マッピング・データへのネーム・スペース接頭部を使用しないと、ランタイム環境は効率の劣る方法をとることが余儀なくされ、ネーム・スペース突き合わせのサポートを提供するために、移植可能であるが冗長な XPath 式をランタイム環境は必要とすることになります。
/b:a/b:c/b2:d/b2:e
これは以下の形式を取ります。 /*[namespace-uri()='xyz' and local-name()='a']/*[namespace-uri()='xyz'
and local-name()='c']/*[namespace-uri()='qrs' and
local-name()='d']/*[namespace-uri()='qrs' and local-name()='e']