XMLグリッドのデザインが刷新されました

XMLSpyをご利用になったことがある方であれば、XMLドキュメントの構造を視覚的に表現するために、XMLグリッドビューをご利用になったことがあるかもしれません。このドキュメントの階層構造を視覚的に表現することで、内容を理解し、編集することがより容易になります。

最新版のXMLエディタでは、XMLグリッドの表示が少し変わりました。実際には、XMLデータの編集、検索、計算、共有のための、さらにユニークな機能を提供するために、完全に一新されています。

新しいXML形式のグリッド表示

バージョン2021r2から、刷新されたXMLグリッドは、さらに使いやすくなり、強力な新機能とオプションを提供します。例えば、XMLグリッドには、エラーを検出するスマートフィックスXML検証機能が新たに搭載され、その上で、エラーの修正方法を提案します。

編集機能には、依然として使い慣れた表形式の表示が含まれており、これは繰り返し出現する要素をテーブル形式で整理し、属性や子要素を列として表示することで、データの確認や並べ替えを容易にします。XMLの繰り返し要素は、行として表示されます。

新機能として、表の行と列を入れ替えることが可能になり、文書の表示を再構成して、より読みやすくすることができます。例えば、以下に示す携帯電話を比較する表は、列数は多いものの、行数は少ないという特徴があります。

行と列を入れ替えることで、コンテンツがすぐに閲覧できるようになります。

Base64でエンコードされた画像をグラフィックとして表示する

XMLグリッドビューは、PNG、JPG、BMP、SVG、およびアニメーションGIFといった画像ファイルを自動的に表示できるようになりました(上記の携帯電話で撮影された画像のように)。これは、テキスト表示では実現不可能な機能です。

画像編集ソフトから画像を直接コピーし、XMLグリッドビューに貼り付けることも可能です。画像はBase64形式で保存されており、テキスト表示に切り替えることで確認できます。

外部アプリケーションから直接コンテンツを追加する

画像のコピー&ペーストに加えて、外部アプリケーションとの間でコンテンツを簡単にコピーしたり、貼り付けたりすることができます。また、XML Gridでは、その構造が自動的に認識されます。例えば、Excelやテキストエディタなどで選択したコンテンツを、直接XML Gridにドラッグ&ドロップすることができます。

フィルター

新しいXMLグリッドビューの最も魅力的な点の一つは、XPathXQueryを活用して、データを直接ビュー内でフィルタリングおよび処理できることです。

右クリックのコンテキストメニューを使うと、フィルタを素早く作成できます。例えば、「強調表示するノード」オプションを選択すると、選択したノードを表示するためのフィルタが自動的に作成されます。その後、必要な条件を正確に含めるようにフィルタを拡張できます。これは、最初から作成するよりも速く、フィルタの構成方法のヒントにもなります。

以下に、特定の価格帯の携帯電話のみを表示するように絞り込むためのフィルターを作成しました。このフィルターを適用すると、2つの携帯電話が表示されます。必要に応じて、このフィルターのオン/オフを切り替えることができます。

数式

フィルターは、XMLグリッドビューでコンテンツの表示を変更するだけで、XMLドキュメント自体は変更しません。一方、XQueryで記述された数式を使用することで、結果を計算したり、ドキュメントに保存できるノードセットを生成したりすることができます。

数式を定義するには、新しいノードを追加し、セル内の「タイプ」ボタンを使用してタイプを「数式」に変更し、XQuery式を入力します。以下に、このドキュメントに含まれる携帯電話の平均価格を計算する数式の例を示します。

ディスクアイコンをクリックすると、その数式が処理関数として保存され、その結果がXMLファイル自体に新しい要素として追加されます。

グラフと図表

XML Gridでは、Altovaext:chartというXQuery拡張機能を使用することで、編集画面内で数値データを直接可視化するためのグラフやチャートを定義することも可能です。以下に、XMLドキュメント内の電話価格をまとめたグラフの例を示します。

一度グラフが生成されると、そのグラフをファイルとして保存したり、グラフの画像をコピーしたり、グラフをXMLデータとしてコピーしたりすることができます。

以下のデモ動画をご覧ください。新しい機能が実際にどのように動作するかをご確認いただけます。