文法モードでは、式 (XPath または ESQL) の制限付きセットのみ使用することができ、入力した構文が有効かどうか検査されます。
XPath 構文を使用していて、使用しているプロパティーで式がサポートされていない場合、妥当性検査の処理時に構文は拒否されます。
ESQL と XPath では、これらのフィールド・タイプの最初の 2 つに対して許可されている構文上の類似の制約事項があります。 式フィールドにも制約事項がありますが、このフィールド・タイプはどちらの言語でも使用できる汎用式をサポートするので、使用可能な構文の範囲は最初の 2 つよりも広くなります。
WebSphere Message Broker は、XPath 1.0 の文法管理でコード・アシストを使用して、入力した式の構文を妥当性検査します。 このアシストは、使用している文法モードに関係なく常に使用可能です。
デフォルトでは、制限付き文法モードで操作します。
コード・アシストを使用すると、構文的に正確な式を構成できますが、これらの式の妥当性検査はしません。 妥当性検査は、それらの式を入力したプロパティー・エディターが実行します。
無効な式を使用しようとすると、それらの式はプロパティー・エディターにより、構文またはスキーマ妥当性検査の観点から無効なものとしてマークが付けられます。
「Windows」>「プリファレンス」>「ブローカー開発」>「XPath」>「妥当性検査」で設定したプリファレンスの選択に応じて、エラー・メッセージまたは警告メッセージを受け取ります。
上記の妥当性検査設定の下で、特定の検査がエラーとしてマークを付けられるようになった場合、問題ビューアーでエラー・マーカーが表示されます。 この動作によりメッセージ・フローは失敗としてマークを付けられ、ブローカー・アーカイブ・エディターを使用したデプロイ可能なブローカー・アーカイブ (BAR) ファイル内でのインポートやコンパイルを実行できません。
特定のフィールド・タイプでの入力に適した無制限の文法を使用したい場合、プロパティー・エディターが、制限付き形式の ESQL または XPath 1.0 式を、それらを予期するフィールドに入力するよう強制することはありません。 代わりに、関係するフィールド・カテゴリーのコンテキストでの全範囲の構文、つまりパスまたは汎用式を、適用される妥当性検査を受けることなく入力できます。 これは、必要ならば、ESQL または XPath 1.0 ランタイム環境でサポートされる全範囲の構文をデプロイできるという意味です。 ただし、それらの式が他の言語に変換できる形式でない場合もあることに注意してください。
無制限の文法を使用する場合は、以下の手順を実行してください。
フィールド・タイプのコンテキストに適した有効な構文であるかについて、式は引き続き妥当性検査されますが、ランタイム環境でサポートされる文法の全範囲でも妥当性検査できるようになりました。