XQuery デバッガー

XQuery 式のテストとデバッグ

  • フルスクリーンモードでの、複雑なドキュメントのテスト
  • 式や関数をテストするためのデバッガーウィンドウ
  • スキーマを考慮したXQuery 1.0および3.1のサポート
  • 段階的なノードと命令の実行
  • 評価プロセスにおける、段階的な進捗、段階的な離脱、および段階的な移行について
  • ブレークポイントとトレースポイントのサポート
  • 変数とコールスタックに関する情報ウィンドウ
  • XQueryの構築・テストツール
  • XMLまたはJSONデータに対するXQueryの実行をデバッグします
  • XQuery の逆マッピング
  • XQuery プロファイラ

XQuery デバッガー

XQueryコードのデバッグ

XMLSpyには、XQueryコードのテストと改善のためのXQueryデバッガーが搭載されています。例えば、サーバー上のXMLデータベースに対して、大規模で複雑なXQueryドキュメントの結果を分析する際には、フルスクリーンのXQueryデバッガーを使用できますが、短いXQuery式や関数を開発する際には、XQueryデバッガーウィンドウの方が使いやすいかもしれません。

使いやすいデバッガーには、XQueryドキュメント、ソースとなるXMLまたはJSONドキュメント(オプション)、および現在のXQueryプロセッサのコンテキストを表示する、複数のパネルを備えたインターフェースが搭載されています。これらの3つのパネルの下には、変数やコールスタックに関する情報ウィンドウがあり、それぞれに複数のタブが用意されており、必要なデバッグ情報をすべて提供します。

インスタンスドキュメント内の任意のノードや、XQueryドキュメント内の任意の式に対してブレークポイントを設定できます。これにより、特定のノードや命令がアクセスされた際にデバッガーが一時停止し、デバッグ作業を効率化できます。各ステートメントを手動で確認する必要がなくなり、デバッグセッションが迅速に進みます。便利な「XQuery ブレークポイント」ダイアログを使用すると、現在定義されているブレークポイントの一覧を表示および管理することも可能です。

「デバッガー開始/実行」アイコンをクリックすると、XQuery プロセッサは最初に設定されたブレークポイントで停止し、その時点でドキュメント内の XQuery プロセッサの状態に関連する部分的な出力が表示されます。 デバッガーは、XML ファイル内の現在のノードと、XQuery ドキュメント内の現在の命令を強調表示し、その時点に関連するすべての変数、XPath 式の監視値、およびコールスタックのデータが、デバッガーの情報ウィンドウに表示されます。

特定のXMLまたはJSONデータノード、XQueryの命令、および部分的な出力結果を同時に表示できる機能により、XQueryドキュメントがどのようにデータを処理しているかを、視覚的に瞬時に理解することができます。XMLSpyのインテリジェントな編集機能を使用すると、デバッガーを開いている間でも、いつでもインスタンスデータやXQueryドキュメントを修正できます。

XQuery ウィンドウ

XMLSpyにおけるXQueryデバッガー

XPath/XQuery デバッガーウィンドウは、XMLSpy インターフェースの最下部に配置された強力な XPath/XQuery タブの一部です。短い XQuery コードのデバッグに最適で、即座にインタラクティブなフィードバックを得ることができます。このデバッガーは、強力な XQuery エディター と同じウィンドウに配置されているため、クリック操作による式作成、便利な入力支援機能、すぐに使えるコードスニペット、その他の時間節約ツールなどを活用しながら、コードを構築する際にデバッグ作業を行うことができます。

作業中に、ウィンドウの表示形式を縦型または横型に切り替えることができ、これにより、現在扱っているXQueryコードの長さに合わせて表示を調整できます。

XQuery の逆マッピング

デバッグの別の方法として、XQueryの逆マッピングがあります。XMLSpyにおける逆マッピング機能を使用すると、XQueryの出力結果にあるノードをクリックするだけで、対応するXML/JSONのソースノードとXQueryの式を瞬時に確認できます。

ツールバーにある「バックマッピングを有効にする」ボタンをクリックすると、XQueryの実行が開始され、その結果として得られたドキュメントが、元のXQuery+XMLまたはJSONドキュメントにマッピングされます。結果ドキュメント内のノードをクリックすると、そのノードを生成したXQueryの命令と、元のデータがハイライト表示され、すぐにデバッグを行うことができます。

XQueryのバックマッピング機能は、開発者がコードを理解し、改善するのにかかる時間を大幅に削減します。さらに、XMLSpyはXQueryのバックマッピングを実現するために、出力コードを一切変更しません。

XQueryのバックマッピングの仕組みについて説明します

XQuery プロファイラ

コードのパフォーマンスをさらに詳細に分析するために、XMLSpyにはXQueryプロファイラが搭載されており、これは実行される各処理命令の詳細な情報を監視・記録し、ボトルネックを迅速に特定し、解消するのに役立ちます。

XQueryプロファイラには、呼び出しグラフやヒット数に基づいて変換を監視するためのオプションが用意されています。XMLSpyでXQueryを実行すると、XQueryプロファイラに、ヒット数、実行時間、および子要素の実行時間などの指標が表示されます。プロファイラウィンドウに表示されている要素をクリックすると、関連するXQueryドキュメントが自動的に開き、その要素がハイライト表示されるため、ワンクリックでボトルネックを特定できます。

さらに多くのXQueryツール