グリッドビューテーブル

www.altova.com このトピックを印刷 前のページ 1つ上のレベル 次のページ

ホーム >  ユーザーマニュアル > 編集ビュー > グリッドビュー >

グリッドビューテーブル

テーブルビューは再帰的な要素をテーブルの形で表示するグリッドビューに統合されたビューです。テーブルビューは通常のグリッドビューとは違い、テーブルとして表示されている要素の子となる型をそれぞれ列として表現します。それから全ての列や選択に対してのプロパティなどを設定することができます。

 

例えば、以下のようなXMLドキュメントを考えてみましょう:

table_view1

ドキュメントの要素は article で、article は以下の子要素を含んでいます: title 要素 1 つ、sect1 要素 4 つ、appendix 要素を 1 つ。sect1appendix 要素はそれぞれ 1 つの title 要素を含んでおり、任意の数の parasimpara 要素がそれに続きます。

 

このドキュメントは通常のグリッドビューでは以下のように表示されます:

table_view2

そして以下がこのドキュメント(より正確には article 要素)のテーブルビューになります。このビューを表示するには、通常のグリッドビューで article 要素をクリックして選択した後、テーブルとして表示アイコン ic_disp_as_tbl をクリックするか、メニュから 「XML | テーブルテーブルとして表示 (F12)」 を選択します。

table_view3

(テーブルとして表示されている)article の子要素に注目してください。titlesect1、そして appendix が列として表示され、それぞれの出現が対応する列に表示されています。テーブルの構造は1つ下の子要素までにしか適用されないことにも注目してください(子要素の sect1 要素はテーブルとして表示されていません)。sect1 要素をテーブルとして表示するには、sect1 列にある任意の要素を選択し、ic_disp_as_tbl をクリックします。sect1 要素もテーブルとして表示されます(下のスクリーンショットを参照):その下の子要素はそれぞれ列として sect1 テーブルの中に表示されます。

table_view4

それぞれの列では、4つある出現のなかで子要素(titlesimpara、または para)が存在する場合、対応するセルの背景は白色で表示されます(例:sect1 最初の simpara)。その出現に要素が存在しないのであれば、対応するセルの背景はグレーで表示されます(例:sect1 最初の para)。従って、列には sect1 の子要素全ての出現の集合が割り当てられ、ユニークな子要素の種類により列が作成されていると言うことができるでしょう。

注意:属性も子ノードと見なされ、属性に対しても列が作成されます。 特定の要素を選択して、ic_disp_as_tbl をクリックするか、「F12」 を押すことで通常のグリッドビューとの行き来を行うことができます。テーブルビューからテキストビューに移動した後、再度グリッドビューに移動すると、ドキュメントは通常のグリッドビューで表示されます。

 

テーブルデータを操作する

以下のようにしてテーブルのデータを操作することができます:

 

 

列のヘッダをドラッグアンドドロップして列を移動する。
メニューコマンド「XMl | テーブル | 昇順に並び替え」を使用してテキストノードの列のデータをソートする(降順でも可能)。
メニューコマンド「XML | テーブル| 行を挿入」(または行を追加)で行の挿入(や追加)を行う。

 

テーブルビューと外部アプリケーションでデータをやり取りする

テーブルビューによるテーブル構造のデータを利用して、スプレッドシートアプリケーションとテーブルビューとの間でデータのやり取りを行うことができます。テーブルビューから他のアプリケーションにデータを移動したい場合は、テーブル内の必要なノードを選択したあと、構造化テキストとしてコピーオプションを使用して、データを直接(例えば)Excel のシートにコピーすることができます(ノードの選択はセル、列ヘッダ、(下のスクリーンショットの様な)行ヘッダ、またはテーブル全体をクリックすることで行うことができます)。テーブル全体または列ヘッダを選択した場合は、列ヘッダも含めてコピーされます。

view_table

上のスクリーンショットではテーブルに11の book 要素が表示されています。テーブル全てを Excel シートにコピーするには、book (11) 要素を選択し、構造化テキストとしてコピーし、Excel シートに貼りつけます。Excel にて A1 セルを選択し、貼り付けを行った結果を以下に示します。詳細に関しては、構造化されたテキストとしてコピーするを参照してください。

view_excel

データのやり取りは逆の方向にも行うことができます。スプレッドシートアプリケーションからデータをコピーして、直接テーブルビューにデータを貼り付けることができます。

 

1.外部アプリケーションでコピーする範囲を選択し、コピーします(Windows システムでは 「Ctrl」 +C によりクリップボードにコピーされます)。
2.XMLドキュメントのテーブルビューにてセルを1つ選択します。
3.「Ctrl」 + V によりデータを貼りつけます。

 

テーブルビューで選択されている箇所にオリジナルのデータ構造に対応したデータが XMLSpy のテーブルに張り付けられます。以下のポイントに注意してください:

 

 

テーブルビューのセルに既にデータが存在する場合、それらのデータは新しいデータにより上書きされます。
既にある行よりも貼り付けに多くの行が必要になる場合、新しい行が作成されます。
既にある列よりも貼り付けに多くの列が必要になる場合、新しい列は作成されません
セルのデータは対応するセルのコンテンツとなります。

 

更に複雑なデータのやり取りを行う方法として、XMLSpy にはテキストファイル、 Word ドキュメント、または、データベー―スを直接 XML データにインポート/エクスポート する機能が搭載されています。

 


(C) 2019 Altova GmbH