XSLT デバッガー

XSLTコードを完璧にするためのデバッグと逆アサーション。

  • XSLT 1.0、XSLT 2.0、XSLT 3.0に対応しています。
  • XSLTによる逆変換。
  • 出力結果をクリックすると、ソースとなるノードや命令が表示されます。
  • 段階的なノード変換。
  • ノードへの進入、ノードからの退出、およびノードを越える操作。
  • ブレークポイントとトレースポイントの設定
  • コンテキスト情報表示領域。
  • コールスタックウィンドウ
  • XML、XSLT、および出力ウィンドウが並行して表示されます。
  • XSLT プロファイラ そして。 XSL高速化ツール
  • Java、JavaScript、C#、およびVBScriptを含むXSLTコードのデバッグ。

XSLTによるデバッグにおける逆変換の利用

XSLTによる逆変換を利用したデバッグ。

ツールバーのボタンからバックマッピングを有効にすると、XSLT変換が実行され、結果ドキュメントが元のXSLTとXMLドキュメントにマッピングされます。つまり、結果ドキュメント内のノードをクリックすると、そのノードを生成したXSLTの指示とXMLのソースデータが強調表示されます。

この「戻る」ボタンには、変換後にソースファイル、XSLT/XQueryファイル、および結果ファイルを自動的に並べ替えて表示する機能もあります。これにより、確認作業が容易になります(右側の図を参照)。

テキスト表示またはブラウザ表示のいずれかで行った変換結果をクリックすると、元の状態に戻すことができます。さらに、ブラウザ表示でHTML出力を見ている場合、目的のセクションにマウスカーソルを合わせると、XMLSpyが自動的に対応するXMLノードとXSLT式をハイライト表示します。

XSLTのデバッグにおける、逆マッピングを用いた手法の解説動画。

XMLSpyを選ぶ理由は何ですか?

XMLSpyにおける逆マッピング機能は、以下の2つの点で画期的なものです。

まず、このツールを使用することで、コードのデバッグ、改善、そして完成度を高める作業にかかる時間を大幅に削減できます。また、他のチームメンバーが作成した既存のコードを理解する際にも役立ちます。

第二に、XMLSpyは、逆マッピングを実現するために、出力ドキュメントに対していかなる変更も加えたり、追加のコードを挿入したりすることはありません。

XSLT デバッガー

より詳細なテストを行うには、XMLSpyのXSLTデバッガーをご利用ください。

XSLT デバッガー。

XSLTデバッガーには、XMLドキュメント、関連するXSLTスタイルシート、そしてリアルタイムで構築される出力ドキュメントを表示する、3つのパネルで構成されたインターフェースが備わっています。これらのパネルの下には、コンテキストやコールスタックに関する情報ウィンドウがあり、必要なデバッグ情報をすべて提供する複数のタブが含まれています。

段階的なデバッグ方法

XSLTデバッガーを使用すると、変換処理をステップごとに確認できます。また、ノード内を深く掘り下げたり、関数から抜け出したり、ノードをスキップしたりすることも可能です。このデバッガーは、XSLTコード内の現在の命令と、XMLファイル内の現在のノードを強調表示し、各ステップの結果を、出力ウィンドウ内で強調表示して表示します。これらの要素を同時に確認することで、コードがXMLデータをどのように処理しているのかを、視覚的に理解することができます。

コンテキストウィンドウ

スタイルシートのデバッグ中に、XSLTデバッガーは、いくつかの役立つ情報を提供します。出力ウィンドウやトレースウィンドウに表示される情報に加えて、デバッグ情報ウィンドウでは、コンテキストウィンドウにさらに重要な詳細が表示されます。

  • コンテキスト:コンテキストノードとその関連する属性や値を表示します。
  • 変数:グローバル変数、ローカル変数、およびパラメータに基づいた変数を表示します。また、変数名と値も表示されます。
  • XPath監視:XPath式の結果を表示します。これらの式は、入力方法に応じて、ルートノードまたはコンテキストノードに対して評価されます。監視したいXPath式をここで定義できます。

コールスタックウィンドウ

コールスタック情報ウィンドウには、以下のタブがあります。

  • コールスタック:以前に処理されたXSLの命令とテンプレートの一覧を表示します。現在実行中の命令が一覧の最上部に表示されます。
  • テンプレート:現在編集中のXSLTファイルで使用されているすべてのテンプレートを表示します。これには、組み込みテンプレートに含まれるデフォルトのテンプレートだけでなく、インクルードまたはインポートされたテンプレートも含まれます。
  • 情報:デバッグの種類(XSLT 1.0、2.0、または3.0)、使用されたファイル、およびデバッガーの状態に関する情報が表示されます。
  • メッセージ:デバッグ中に発生する可能性のある、xsl:message 命令やエラーメッセージを表示します。
  • トレース: 各トレースポイントに関する出力情報を表示します。