(57)【特許請求の範囲】
【請求項１】
所定の構成単位を関係づけて構成したデータ構造を扱うデータ構造表示装置であって、データ構造を管理するデータ構造管理手段と、前記データ構造管理手段により管理されているデータ構造を基に参照関係の表示を生成する参照関係表示手段と、前記データ構造管理手段により管理されているデータ構造を基に集合的関係の表示を生成する集合的関係表示手段とを具備するデータ構造表示装置において、
前記データ構造は、構成単位間の参照関係と、構成単位からなる集合とそれらの集合的関係とを規定するものであり、
集合的関係を表すための図形要素および参照関係を表すための図形要素を管理する図形要素管理手段を有し、
前記集合的関係表示手段は、前記データ構造管理手段により管理されている前記データ構造における集合的関係の種類と、それに対応する前記図形要素管理手段により管理されている集合的関係の図形要素とに基づいて、表示を生成するものであり、
参照関係表示手段は、構成単位中の参照単位の位置に基づいて参照単位を表す図形要素を配置し、かつ参照先である構成単位を表す図形要素と結びつける表示を生成すること
を特徴とするデータ構造表示装置。
【請求項２】
構成単位が文書の論理的なまとまりである論理単位であって、文字や図形などの文書を表現する最小の単位である基本単位と論理単位間の参照関係を規定する参照単位とからなる集合と、それらの集合的関係を規定する論理単位によって構成される文書構造を扱うことを特徴とする請求項１記載のデータ構造表示装置。
【請求項３】
構成単位間の参照関係と、構成単位からなる集合とそれらの集合的関係とを規定するデータ構造を管理するデータ構造管理手段と、前記データ構造管理手段により管理されているデータ構造を基に参照関係の表示を生成する参照関係表示手段と、前記データ構造管理手段により管理されているデータ構造を基に集合的関係の表示を生成する集合的関係表示手段と、集合的関係を表すための図形要素および参照関係を表すための図形要素を管理する図形要素管理手段を具備するデータ構造表示装置によるデータ構造表示方法であって、
前記集合的関係表示手段が、前記データ構造管理手段により管理されている前記データ構造における集合的関係の種類と、それに対応する前記図形要素管理手段により管理されている集合的関係の図形要素とに基づいて、表示を生成し、
参照関係表示手段が、構成単位中の参照単位の位置に基づいて参照単位を表す図形要素を配置し、かつ参照先である構成単位を表す図形要素と結びつける表示を生成すること
を特徴とするデータ構造表示方法。
【発明の詳細な説明】
【０００１】
本発明は、所定の構成単位を関係づけて構成したデータの構造を表示するデータ構造表示装置および同装置によるデータ構造表示方法に関する。
【０００２】
【従来の技術】
文書構造として、文書の論理単位を参照関係によって関連づけたネットワーク構造を扱う文書編集装置に関わる従来技術には、ハイパーテキストと呼ばれる技術がある。ハイパーテキスト技術は、例えば、
文献「Ｊａｋｏｂ  Ｎｉｅｌｓｅｎ，  Ｈｙｐｅｒｔｅｘｔ  ＆  Ｈｙｐｅｒｍｅｄｉａ，  ＨＢＪ出版局，  １９９１」
に示されている。
【０００３】
ハイパーテキストでは、文書をノードとリンクによって構成されるネットワーク構造として扱う。ノードは段落などの文書の論理的なまとまりを表す論理単位である。リンクはノード間を関連を表す参照単位である。
ノードはテキストや図形など文書を構成する内容を持っており、それぞれのノードは画面上の一つのウィンドウとして、その内容が表示される。
【０００４】
リンクには、ノード間の関係を記述する役割と、あるノードから他のノードを参照するときのエントリーポイントとしての役割がある。本明細書ではそれぞれ、関係づけ機能と参照機能と呼ぶことにする。
【０００５】
関係づけ機能として、リンクは二つのノード間の関係を記述することができる。例えば図３ではノードＡとノードＢの関係、ノードＡとノードＣの関係がリンクによって定義されている。記述される関係は、片方向のものもあれば両方向のものもある。複数の種類のリンクを導入して、名前をつけて区別することもできる。
例えば、ＮｏｔｅＣａｒｄｓと呼ばれるシステム（文献「Ｈａｌａｓｚ，Ｆ．，Ｍｏｒａｎ，Ｔ．，＆  Ｔｒｉｇｇ，Ｒ．，“ＮｏｔｅＣａｒｄｓ  ｉｎ  ａｎｕｔｓｈｅｌｌ”，ＣＨＩ＋ＧＩ  Ｐｒｏｃｅｅｄｉｎｇｓ，Ａｐｒｉｌ  １９８７」参照）では、図１３に示すようにリンクに名前を与えることによって、「ノードＡに示される主張は、ノードＢに示される理由によるものである」「ノードＡの主張には、ノードＣに示される証拠がある」という関係をそれぞれ与えることができる。このようにして、関係を区別しておけばそれぞれの関係を用いた自動処理が可能になる。たとえば、「ノードＡの理由となっているノードをすべて探せ」等の検索が可能になる。
【０００６】
参照機能として、リンクはノードからノードを参照するためのエントリーポイントに用いられる。ノードの内容の中にアイコンとして表示されたリンクを、利用者が選択することによって、リンクによって関連づけられているノードを呼びだし、ウィンドウに表示する。
例えば、図３に示すようなリンクを持つノードＡの表示を図４（ａ）に示す。ノードＡのウィンドウ中で、ノードＢ、ノードＣへのリンクに対応するアイコンを、マウスなどのポインティングデバイスによって選択すると、図４（ｂ）（ｃ）に示すそれぞれのウィンドウが表示される。
【０００７】
このように、従来技術においては、リンクが関係づけ機能と参照機能の両者を有することによって、計算機による自動処理と、利用者による自由な探索が可能になっている。
【０００８】
一方、このようなネットワーク型構造を持つ文書を表示または編集するとき、そのノードとリンクの数が増大すればするほど、利用者が表示または編集を希望する部分を探索することが困難になる。
【０００９】
そこで従来技術であるハイパーテキストにおいては、文書構造全体を図化して利用者に提示する文書構造表示装置が実現されるに至った。この表示装置はブラウザと呼ばれるものである。
【００１０】
このような文書構造表示装置の表示方式に関して、文書構造を木構造に限定した表示方式が、特開昭６３−５４６５９号公報に記載されている。この方式では、文書の階層構造を根本から末端に辿ることによって、ノード名を表示装置の左上から右下方向に順番に配置し、リンクを表す線分を２つのノード名を結ぶように配置するものである。
【００１１】
この方式に限らず、一般にネットワーク構造を対象とした文書構造表示装置においては、ノードをノードの名前がラベル付けされた矩形領域として表現している。そして、矩形領域と矩形領域をリンクを表す線分で結ぶことによって、全体のネットワーク構造を表現している。
【００１２】
このような文書構造表示装置を用いることにより、利用者は、現在操作しているノードが文書構造中のどの位置にあるかを知ることが可能になった。また、矩形領域を結ぶ線分をたどることによって、表示または編集を希望するノードを簡単に特定することが可能になった。
【００１３】
【発明が解決しようとする課題】
従来技術は、リンクの関係づけ機能と参照機能の両方を提供することで、それぞれの長所を利用するものであった。しかし、参照機能を保証するために、関係づけ機能で表現できる関係が二つのノード同士での単純な関係に限られてしまうという短所がある。
【００１４】
リンクの関係づけ機能を強化するために、例えば、ＡｑｕａＮｅｔと呼ばれる従来システム（文献「Ｍａｒｓｈａｌｌ，Ｃ．，Ｈａｌａｓｚ，Ｆ．，Ｒｏｇｅｒｓ，Ｒ．，＆  Ｊａｎｓｓｅｎ，Ｗ．，Ａｑｕａｎｅｔ：Ａ  “Ｈｙｐｅｒｔｅｘｔ  Ｔｏｏｌ  ｔｏ  Ｈｏｌｄ  Ｙｏｕｒ  Ｋｎｏｗｌｅｄｇｅ  ｉｎ  Ｐｌａｃｅ”，  Ｈｙｐｅｒｔｅｘｔ  １９９１  Ｐｒｏｃｅｅｄｉｎｇｓ，Ｄｅｃｅｍｂｅｒ  １９９１」参照）では、図１４に示すように三つ以上のノードを関連づけるリンクを導入している。この例では「主張、証拠、理由」の組によって関係を記述している。このようなリンクは関係データベースシステムにおけるリレーションと考えることができるため、関係データベースに基づく高度な検索処理を可能にしている。しかしながら、このシステムにおいては、リンクは探索のためのエントリーポイントの役割を果たすことはできない。すなわち、このアプローチでは関係の記述能力を高めるために、参照機能を犠牲にしてしまう。
【００１５】
前期ＮｏｔｅＣａｒｄでは、インタフェイスと内容を組合わせることで、不十分なリンクによる関係記述を強化する工夫がほどこされている。
ノードとリンクの観点からは同じ構造であっても、上位ノードの持つ内容の種類とそれを扱うインタフェイスによって、異なる関係が表現される。例えば、図３に示されるノードとリンクの構造は図４（ａ）のようにテキスト中に表示されることも、図１１のように画像中に表示されることもある。ノードＢとノードＣ間に定義されている関係は、図４では、他の文字との間での順序関係であり、図１１では、図形との間での二次元的な位置関係である。しかも、どちらの表示からでも、図４（ａ）の場合と全く同様にして、ノードを探索してゆくことができるので、参照機能も保証されている。
【００１６】
ノードの集合に与えられている関係を本明細書では集合的関係と呼ぶことにする。集合的関係は、リンクで表現するのには適していないことが多い。たとえば、図１１において「ノードＢがノードＣよりも北にある」という関係を表現するために、「北にある」ことを示すリンクを張ることもできる。しかし、インタフェイスのための特殊な情報として、表示位置の座標値を保持しておき、計算によって求めることにしたほうが、他の関係を記述するのにも利用でき、有利である。
【００１７】
しかしながら、このアプローチでは、図１５に示すように、構造はノード、リンク、内容とによって表現され、関係の記述は、内容を表示するインタフェイスに依存する形で暗黙的におこなわれる。したがって、記述されている関係を利用するためには、ノード、内容、インタフェイスを切り放すことができない。すなわち、従来の実現手法では、記述されている関係を、インタフェイスとは無関係な処理から有効に活用することができなかった。また、記述されている関係を維持したまま、インタフェイスを取り替えることができなかった。
【００１８】
従来技術のデータ構造の表示装置では、ノードの集合的関係を表示することができない。したがって、例えば、順序関係にあるノード集合と、二次元的な関係にあるノード集合とを外見上から区別することができなかった。
【００１９】
また、この方式では文書構造が複雑になりノードとリンクの数が増えると、矩形領域と線分が複雑に絡みあった図を利用者に提示することになり、文書の全体構造を把握することを困難にするという問題がある。
【００２０】
このように従来の文書構造表示装置では、利用者が文書構造に含まれる様々な関係および文書構造全体を、容易に把握できるような図を提示することができなかった。
【００２１】
本発明はかかる問題点を解決するためになされたもので、ノードの集合に対してどのような種類の関係が与えられているかを明確にする文書の表現方式と、その表現方式による文書を扱う装置を得ることを目的とする。
【００２２】
また、本発明は、文書構造中の参照関係と集合的関係を各々固有の表示方式で提示すること、および、集合的関係を表示するときその種類ごとに表示方式を変えることによって前記の表示における問題を解決することを目的とする。
【００３３】
【課題を解決するための手段および作用】
本発明は、所定の構成単位を関係づけて構成したデータ構造を扱うデータ構造表示装置であって、データ構造を管理するデータ構造管理手段（１９２）と、前記データ構造管理手段により管理されているデータ構造を基に参照関係を表示する参照関係表示手段（１９６１）と、前記データ構造管理手段により管理されているデータ構造を基に集合的関係を表示する集合的関係表示手段（１９６２）とを具備する。そして、前記データ構造は構成単位間の参照関係と、構成単位からなる集合とそれらの集合的関係とを規定するものであり、また、集合的関係を表すための図形要素および参照関係を表すための図形要素を管理する図形要素管理手段（１９３）を備えており、集合的関係表示手段（１９６２）は、データ構造管理手段（１９２）により管理されている前記データ構造における集合的関係の種類と、それに対応する前記図形要素管理手段により管理されている集合的関係の図形要素とに基づいて、表示を生成するものであり、参照関係表示手段（１９６１）は、構成単位中の参照単位の位置に基づいて参照単位を表す図形要素を配置し、かつ参照先である構成単位を表す図形要素と結びつける表示を生成するものであることを特徴とする。
【００３４】
本発明によれば、データ構造が構成単位間の参照関係と、構成単位からなる集合とそれらの集合的関係とを規定するものであり、また、集合的関係および参照関係の表示のための図形要素を有するので、利用者に分かりやすいデータ構造の表示を容易に作成することができる。
【００３７】
また、本発明は、前記データ構造表示装置において、構成単位が文書の論理的なまとまりである論理単位であって、文字や図形などの文書を表現する最小の単位である基本単位と論理単位間の参照関係を規定する参照単位とからなる集合とそれらの集合的関係を規定する論理単位によって構成される文書構造を扱うものである。
【００３８】
【実施例】
（第１の実施例）
第１の実施例によるネットワーク構造を扱う文書編集装置の構成を図１に示す。
本実施例では、文書の論理単位をフィールド、参照単位をアンカーと呼ぶ。すなわち、フィールドとアンカーは従来技術の用語ではノードとリンクにほぼ相当する。
また、基本単位と参照単位を合わせてプリミティブと呼ぶ。したがって、フィールドはプリミティブの集合を規定するものと定義できる。
【００３９】
フィールドは集合的関係の種類を規定している。集合的関係の種類をフィールド・タイプと呼ぶ。
本実施例では、フィールド・タイプとして、順序関係を示すものをストリーム、二次元配置の関係を示すものをマップと呼ぶ。
【００４０】
本実施例は順序関係を示すストリームと二次元配置の関係を示すマップの二つの集合的関係を判別することによって処理の選択を行なうものである。
【００４１】
本実施例の文書編集装置は、文書構造を格納するハードディスクなどの文書格納部１１と、文書構造の管理を行う文書管理部１２と、装置外からの入力を扱う、キーボードとマウスなど入力部１３と、入力部１３からの指示で、アンカーあるいはアンカーが参照しているフィールドを選択するアンカー・フィールド選択部１４と、入力部１３から得られる利用者の指示と、フィールド・タイプから判定されるフィールドの種類によって、フィールド編集部群１６の中から適切なフィールド編集部を選択すると共に、フィールド表示生成部群１７の中から適切なフィールド生成部を選択する処理選択部１５と、フィールドに対する編集を行なう編集部１６１、１６２を複数保持するフィールド編集部群１６と、フィールドを表示するウィンドウを生成する表示生成部１７１、１７２を複数保持するフィールド表示生成部群１７と、表示を行うディスプレイ装置など表示部１８とを備えている。
【００４２】
さらに、文書管理部１２は、フィールドを管理するフィールド管理部１２２と、アンカーを管理するアンカー管理部１２１からなる。
フィールド管理部１２２は、フィールドの情報を文書格納部１１に格納したり、取り出したり、更新したりするなどの管理を行なう。フィールドは図２（ａ）に示すようなデータ構造を有しており、フィールドを識別するためのフィールド識別子２１、フィールドが規定する集合的関係の種類を表すフィールド・タイプ２２、およびフィールドに含まれるプリミティブのリスト２３からなっている。プリミティブは、アンカーへのポインタもしくは、文字や図形などの基本要素である。リストは、フィールド・タイプごとに、異なる表現がなされる。
＞
【００４３】
アンカー管理部１２１は、アンカーの情報を文書格納部１１に格納したり、取り出したり、更新したりするなどの管理を行なう。アンカーは図２（ｂ）に示すにようなデータ構造を有しており、アンカーを識別するためのアンカー識別子２４、アンカーを表示する時のラベル２５、アンカーが参照するフィールドへのポインタ２６からなっている。
なお、図２（ｃ）はフィールドとアンカーの参照関係の例を示す図である。
【００４４】
表示部１８によりストリーム関係を表示するためのインタフェイスは、本実施例では図４に示すカード型と図５に示すスタック型の２種類用意されている。
図５のスタック型のインタフェイスでは、ポインティングデバイスによって左右の矢印を選択することによって、順序を前後した要素を表示できる。なお、この場合ノードＡの直下に含まれる文字は表示されていない。これは、説明を簡単にするためであって、本発明の本質とは関係ない。
【００４５】
以上のように構成された本実施例の動作について説明する。
図６（ａ）に示すようにノードＡ上でマウスによって、ノードＢが選択されているとする。このときに、マウスをクリックすることにより、そのマウスの指示位置およびクリック操作の情報が入力部１３からアンカー・フィールド選択部１４へ入力される。
【００４６】
アンカー・フィールド選択部１４は、現在表示部１８に表示されている情報と、入力部１３から入力された情報を基に、指示されたアンカーあるいはフィールドを特定し、その識別子を処理選択部１５に渡す。
【００４７】
処理選択部１５は、それに応答して処理対象の要素に対する処理としてフィールド編集部群１６あるいはフィールド表示生成部群１７からひとつを選択する処理を実行する。図８は処理選択部１５における処理選択アルゴリズムを示すものである。
【００４８】
（ステップ０）
アンカー・フィールド選択部１４により特定された処理対象の要素であるフィールドまたはアンカーの情報を入手する。
【００４９】
（ステップ１）
処理選択部１５はその処理対象の要素がアンカーであるか否かを、文書管理部１２を介して得られる上記要素のデータ構造を調べて判定する。
【００５０】
（ステップ１０）
判定の結果、要素がアンカーである場合は、メニュー選択を実行する。即ち、図６（ｂ）のメニューが表示され、そのメニューから「開く」が選択されたとするとさらにメニュー（ｃ）が表示される。
【００５１】
（ステップ１００）
図６（ｂ）のメニューにおいて「開く」が選択されたときは、フィールド表示アルゴリズムを呼び出す。
【００５２】
（ステップ１０１）
図６（ｂ）のメニューにおいて「カット」または「ペースト」が選択されたときは、アンカーに対する各編集処理を実行する。
【００５３】
（ステップ１１）
ステップ１の判定により要素がアンカーでなかったときは、フィールド編集部１６を呼び出す。
【００５４】
図９は、前記ステップ１０のメニュー選択で「開く」が選択された場合に起動されるフィールド表示生成部の処理を示すフィールド表示アルゴリズムである。
【００５５】
（ステップ３０）
処理対象の要素であるアンカーにおける参照フィールドのポインタによって指示されるフィールドデータをフィールド管理部１２２より入手する。
【００５６】
（ステップ３１）
その入手したフィールドの種類をフィールドデータにおけるフィールド・タイプから判定する。フィールドの種類には、本実施例では前述のように「ストリーム」と「マップ」がある。
【００５７】
（ステップ３１０）
上記フィールド・タイプの判定により、フィールドの種類が「ストリーム」であったときには、図６（ｃ）の表示形式メニューのウィンドウが開かれる。このメニューにはフィールド内のアンカーを対応するフィールドの文字に展開して表示する「文字に展開」と、アンカーに対応するフィールドをカード型で表示する「カード型」と、アンカーに対応するフィールドをスタック型で表示する「スタック型」の３つの表示形式の選択肢がある。利用者はこの表示形式メニューにより表示形式の選択をする。
【００５８】
（ステップ３１００）
表示形式メニューにより「カード型」が選択された場合には、図４（ｂ）（ｃ）に示すようなカード型インタフェースのウィンドウにフィールドの内容を表示する。
【００５９】
（ステップ３１０１）
表示形式メニューにより「スタック型」が選択された場合には、図５の（ａ）（ｂ）に示すようなスタック型インタフェースのウィンドウにフィールドの内容を表示する。
【００６０】
（ステップ３１０２）
表示形式メニューにより「文字に展開」が選択された場合には、アンカーと参照フィールドの内容を置換し、再表示する。例えば、図６（ａ）におけるアンカー（同図の四角の枠でかこった「ノードＢ」）の部分を、図７（ａ）に示すように、フィールドの内容であるストリーム「ｂｂｂｂｂｂ…」で置き換えて表示する。
（ステップ３１０３、３１０４）
そして、置換による変更結果をフィールド管理部１２２に渡す。また、変更結果をウィンドウへ表示する。
【００６１】
本実施例ではストリームについて複数のインタフェイスがあることを示したが、他の集合的関係においても全く同様に、複数のインタフェイスを用意できる。例えば、マップ関係を表示するために、図１２のインタフェイスを用いることができる。このインタフェイスでは、図１１のように図中に直接アイコンが表示されるのではなく、アイコンと対応づけられる記号が表示されるものである。このインタフェイスにおいては右側の表示領域でのノードＢとノードＣの順序には意味がない。
【００６２】
図８のステップ１の判定により要素がアンカーでなかったときは、フィールド編集部１６が呼び出される。図１０は、フィールド編集部１６でのフィールド編集処理のフローを示すものである。
（ステップ４１）
【００６３】
図７（ａ）のノードＡのなかのアンカーでない「ｂｂｂｂｂｂ…ｂｂｂ」の部分が入力部１３（マウス）で選択され、図８のステップ１の判定でアンカーでないことが判明すると、図７（ｂ）に示す編集の種類を選択するためのメニューのウィンドウが表示され、利用者は入力部１３によりその一つを選択する。
【００６４】
（ステップ４１０）
メニューにより「カード化」が選択されると、フィールドの選択部分「ｂｂｂｂｂｂ…ｂｂｂ」をカード化するための編集処理を行なう。
そのために、まず、フィールドの種類を判定する。
【００６５】
（ステップ４１００）
フィールドの種類がストリームであるときには、選択部分「ｂｂｂｂｂｂ…ｂｂｂ」をストリーム型フィールドとして作成し、フィールド管理部１２２に登録する。
【００６６】
（ステップ４１０１）
選択部分から新たに作成されたフィールドを参照するアンカーを生成し、アンカー管理部１２１に登録する。
【００６７】
（ステップ４１０２）
選択されているフィールドの選択部分「ｂｂｂｂｂｂ…ｂｂｂ」を新たに作成されたアンカーと置き換える。
【００６８】
（ステップ４１３）
変更結果をフィールド管理部１２２に渡す。そして再表示することにより、例えば、図７（ａ）のフィールドから図６（ａ）のような編集結果のフィールドが得られるとともに、図７（ａ）の「ｂｂｂｂ…ｂｂｂ」の部分をカード化した図４（ｂ）に示すようなカード型インタフェースの表示が得られる。
なお、フィールドの種類がマップ型その他のフィールドである場合についても同様の処理を行うが、ここでは説明を省略する。
【００６９】
（ステップ４１１）
ステップ４１において選択されたメニュー項目が「カット」または「ペースト」であるときは、それらの各編集処理を選択されたフィールドに対して実行する。編集処理の結果はステップ４１３により表示される。
【００７０】
（ステップ４１２）
ステップ４１において選択されたメニュー項目が「閉じるであるときは、ウィンドウを閉じ、終了する。
【００７１】
以上に詳述したように、本実施例では論理単位と参照単位によって構造が表現される。従来のリンクが果たしていた、参照機能と関係づけ機能の二つを切り離し、参照機能を参照単位によって記述し、関係づけ機能を論理単位によって記述する（図１６、図１７、図１８）。また、ノード間の集合的関係を内容の性質を用いて暗黙的に表現する従来の手法とは全く逆に、論理単位は、集合的関係を明示的に表現し、内容の概念をなくしてしまう。たとえば、従来技術では、テキスト内容の持つ順序関係を暗黙的な集合的関係の記述に用いていた。
【００７２】
従って、本実施例によれば、参照機能と関係づけ機能の二つを切り離したことにより、関係づけ機能で記述できる関係が参照機能に制約されることがなくなる。すなわち、参照機能を保証したまま、幅広い関係の記述能力を持ったシステムとなっている。
なお、本実施例は、アルゴリズムからも明らかであるように、参照単位は他の基本単位と全く同等に、カットアンドペーストによって編集できる。したがって、この実施例においては、複数のウィンドウ間での参照単位のカットアンドペーストによって、簡単にネットワーク構造を定義することができる。
【００７３】
また、集合的関係が内容やインタフェイスとは独立に記述されるので、インタフェイスの変更が可能になる。したがって、用途に応じて最も適切なインタフェイスを選択することができる。本発明は、従来技術で暗黙的に記述されていた集合的関係を明確に表現することによって、集合的関係を利用した高度な処理を一般的に可能とするものである。
【００７４】
なお、本実施例では、集合的関係としては、順序関係と二次元関係を扱う例を主として説明したが、この他にも、表、属性の組合せ、三次元関係など、多くの種類がある。図１４に示された関係は、属性の組合せによって規定される、リレーションという関係を用いて、図１８のように表現される。
【００７５】
（第２の実施例）
この第２の実施例は集合的関係の表示を行なうデータ構造表示装置に関し、具体的には、フィールド図形、アンカー図形、ブリッジ図形を用いて、文書構造の全体もしくは一部における集合的関係と参照関係を図示する装置である。
本実施例においては、集合的関係の種類として、順序関係、二次元配置関係、表関係を扱う。集合的関係に対応するフィールドを、それぞれストリームフィールド、マップフィールド、デーブルフィールドと呼ぶことにする。また、集合的関係をフィールド図形、参照関係をアンカー図形とブリッジ図形で表現する。
【００７６】
フィールド図形は、集合的関係を表す図形要素であって、集合的関係の種類ごとに異なる。
アンカー図形は、配置される位置によって、フィールド中のアンカーの位置を示す図形要素である。
ブリッジ図形は、フィールド図形とアンカー図形を結び付けて、参照関係を示す図形要素である。
フィールドすなわち文書の論理単位の名前は、従来技術においては、ノードを表す図形上に表示されているが、本実施例においては、上記のいずれかの図形に関係づけて表示されるものであるとする。
【００７７】
まず、本実施例により表示されるデータ構造表示例について、説明する。図２３中で文字列を内包する矩形２３１がアンカー図形である。
アンカー図形は、フィールド図形上に配置され、対応するアンカーのフィールド内における位置を示す。
ただし表示する文書構造の根となるアンカー図形は例外である。
矩形中の文字列はアンカーが参照するフィールドの内容を示す名前である。すなわちこの表示例においては、フィールドの名前はアンカー図形上に表示されている。
【００７８】
図２３中でアンカーと線分で結ばれている図形要素２３３がフィールド図形である。本実施例ではフィールドの種類ごとに異なるフィールド図形を表示する。図２３中で、順序関係を表すストリーム・フィールドは図形要素２３３のように表示される。
二次元配置を表すマップ・フィールドは図形要素２３４のように表示される。
表関係を表すテーブル・フィールドは図形要素２３５のように表示される。
これにより従来技術のノードとリンクという枠組では表現できなかった、文書の論理単位の種類を文書構造の表示に反映させるということが可能になる。
図２３中でアンカーとフィールドを結ぶ線分２３２がブリッジ図形である。
【００７９】
図２４は、フィールド図形、アンカー図形、ブリッジ図形を、図２３と異なる表示形式で文書構造を表現した例である。
この図２４においては、図形要素２４１がフィールド図形、図形要素２４２がアンカー図形、図形要素２４３がブリッジ図形であり、フィールドの名前はブリッジ図形上に表示されている。
【００８０】
図２５は、アンカー図形とフィールド図形を接続することによって、ブリッジ図形を用いることなく文書構造を表現した例である。
図２５においては、図形要素２５１がフィールド図形、図形要素２５２がアンカー図形であり、フィールドの名前はアンカー図形上に表示されている。
【００８１】
このように、フィールド図形、アンカー図形、ブリッジ図形および、フィールドの名前の表示位置の組合せによって、様々な表示例が考えられる。
いずれの場合も、集合的関係と参照関係を、対応する図形要素の組合せによって表現していることは共通である。
図２３中では、ストリーム・フィールドのフィールド図形２３３上にアンカー図形２３１を配置することによって、アンカーが参照する論理単位の順序関係を表現している。これは順序関係のみならず、他の集合的関係においても利用可能な方法である。
【００８２】
図２６（ｂ）は、マップ・フィールドのフィールド図形２６１上にアンカー図形２６２、２６３を配置することによって、同図（ａ）のフィールド２６０におけるアンカー２６４とアンカー２６５の二次元的な位置関係を表現した例である。
【００８３】
図２７（ｂ）は、テーブル・フィールドのフィールド図形２７１上にアンカー図形２７２、２７３を配置することによって、同図（ａ）のフィールド２７０におけるアンカー２７４とアンカー２７５の関係を表現した例である。
【００８４】
図２８は、さらに別な構造表示例を示すもので、同図（ａ）は文書の例を示し、同図（ｂ）は矢印によって集合的関係における順序関係を積極的に表示した例である。また、同図（ｃ）は線分の描画方法を変えることによって、順序関係とそうでないものを識別可能にした例である。
【００８５】
本実施例中の文書構造においては、アンカーが参照するフィールドは必ず１つであるが、アンカーが複数のフィールドを合成したものを参照するような例も考えられる。
図２９（ｂ）は、ストリーム・フィールドとマップ・フィールドを合成した同図（ａ）のフィールド２９１のデータ構造を表示した例である。
【００８６】
図１９は、本実施例のデータ構造表示装置の構成を示すものであって、この装置は、文書構造を格納するハードディスクなどの文書格納部１９１と、文書構造の管理を行う文書管理部１９２と、図形要素即ちフィールド図形、アンカー図形、ブリッジ図形の管理を行なう図形要素管理部１９３と、装置外からの入力を扱う、キーボードとマウスなど入力部１９４と、入力部１９４からの指示で、アンカーあるいはアンカーが参照しているフィールドを選択するアンカー・フィールド選択部１９５と、文書構造を表示するための表示情報を生成する文書構造表示部１９６と、表示を行うディスプレイ装置など表示部１９７とを備えている。
【００８７】
さらに、文書管理部１９２は、フィールドを管理するフィールド管理部１９２２と、アンカーを管理するアンカー管理部１９２１からなり、これらの機能は第１の実施例において説明したものと同じであり、データ構造も同じものを用いている。
【００８８】
文書構造表示部１９６は、参照フィールドのデータを基にアンカー図形およびブリッジ図形等の参照関係表示を生成する参照関係表示生成部１９６１と、集合的関係に対応したフィールド図形表示を生成するフィールド図形表示を生成するフィールド図形表示生成部１９６２とを備えている。これらの機能は、本実施例では、文書構造表示アルゴリズム、参照関係表示アルゴリズム、フィールド図形表示アルゴリズム等を含む文書構造表示プログラムによって実現されている。
【００８９】
次に、以上のように構成された本実施例の装置の動作について説明する。文書格納部、文書管理部、フィールド管理部、アンカー管理部、入力部、アンカー・フィールド管理部、および表示部は、第１の実施例の対応する部分と同様の動作をするので、ここではこれらの動作の説明を省略する。
【００９０】
文書もしくは文書の部分構造を参照するアンカーを指定することによって、構造表示プログラムを起動する。
構造表示プログラムは、アンカーとフィールドの参照関係を辿ることによって、指定されたアンカーを根とする文書構造を表示する。
ここでは文書構造を木構造に限定することで、ループの検出などの処理を省略する。なおアンカーの具体的な指定方法は、本発明の本質ではないので説明は省略する。
【００９１】
図２０は、文書構造表示部１９６の文書構造表示アルゴリズムを示す動作フロー図である。
（ステップ２００）
文書構造の根となるアンカーのデータをアンカー管理部１９２１より入手する。
【００９２】
（ステップ２０１）
参照関係表示アルゴリズムを呼び出す。
【００９３】
図２１は、参照関係表示生成部１９６１の参照関係表示アルゴリズムを示す動作フロー図である。
（ステップ２１０）
参照フィールドのデータをフィールド管理部１９２２より入手する。
（ステップ２１１）
フィールド図形表示アルゴリズムを呼び出す。
（ステップ２１２）
表示されたフィールド図形の位置に基づきアンカー図形およびブリッジ図形の表示位置を計算する。
（ステップ２１３）
アンカー図形およびブリッジ図形のデータを図形要素管理部１９３より入手する。
（ステップ２１４）
アンカー図形およびブリッジ図形を表示部１９７により表示する。
（ステップ２１５）
フィールドの名前をアンカー図形上に表示する。
【００９４】
図２２は、参照関係表示生成部１９６１のフィールド図形表示アルゴリズムを示す動作フロー図である。
（ステップ２２０）
フィールド管理部１９２２より受け取った参照フィールドを調べ、フィールドがアンカーを含むか否かを判定する。
（ステップ２２００）
上記判定の結果、フィールドがアンカーを含んでいた場合には、アンカー図形を表示していないアンカーが有るか否かを判定する。
（ステップ２２０００）
その判定の結果がＹＥＳであるときは、アンカーのデータをアンカー管理部１９２１より入手する。
（ステップ２２００１）
そして、参照関係表示アルゴリズム（図２１）を呼び出す。
【００９５】
（ステップ２２００２）
ステップ２２０００の判定の結果がＮＯであるときは、フィールドの種類に対応するフィールド図形のデータを図形要素管理部１９３より入手する。
（ステップ２２００３）
各アンカーの表示位置からフィールド図形の表示位置と図形のサイズを計算する。
（ステップ２２０１）
ステップ２２０の判定の結果、フィールドがアンカーを含んでいなかったときは、フィールドの種類に対応するフィールド図形のデータを図形要素管理部１９３より入手する。
（ステップ２２０２）
フィールド図形の表示位置を計算する。
（ステップ２２１）
フィールド図形を表示する。
【００９６】
この第２の実施例によれば、従来のデータ構造表示装置で表示できなかった、要素間の集合的関係を表示することができる。なお、この実施例ではデータ表現方式としてフィールドとアンカーによる集合的関係が明示されたものを適用した場合を示したが、従来のノードとリンクで表された構造から暗黙の集合的関係を抽出して、本発明を実施することも可能である。
【０１００】
【発明の効果】
本発明によれば、参照関係表示手段と集合的関係表示手段とを有することによりデータ構造中の参照関係と集合的関係をそれぞれ固有の表示形態で提示することができるので、利用者はデータ構造を容易に把握することができるようになる。
【図面の簡単な説明】
【図１】本発明の第１の実施例によるネットワーク型文書編集装置の構成を示すブロック図、
【図２】本発明におけるデータ構造の例を示す図で、（ａ）はフィールドのデータ構造、（ｂ）はアンカーのデータ構造、（ｃ）はフィールドとアンカーの参照関係を示す図、
【図３】従来技術によるノードとリンクで表す表示の一例を示す図、
【図４】（ａ）〜（ｃ）はそれぞれカード型インタフェースによるノードの表示例を示す図、
【図５】（ａ）〜（ｂ）はそれぞれスタック型インタフェースによるノードの表示例を示す図、
【図６】（ａ）はノードの表示例、（ｂ）〜（ｃ）はそのノードの編集処理を選択するためのメニュー表示の例を示す図、
【図７】（ａ）は図６（ａ）のノードＡ中のノードＢのボタンを文字に展開処理して表示した例、（ｂ）は同時に開いた選択メニューの例を示す図、
【図８】処理選択部１５の処理選択の処理フローを示す図、
【図９】フィールド表示生成部のフィールド表示の処理フローを示す図、
【図１０】フィールド編集部のフィールド編集の処理フローを示す図、
【図１１】画像中に表示されるノードの例を示す図、
【図１２】マップ関係を表示するためのインタフェイスの例を示す図、
【図１３】リンクに名前を与えリンクの関係を識別可能にした従来技術の表示例、
【図１４】リンクに名前を与えリンクの関係を識別可能にした他の従来技術の表示例、
【図１５】従来のノードとリンクを説明するための図、
【図１６】本発明におけるネットワーク構造を説明するための図、
【図１７】本発明におけるネットワーク構造を説明するための図、
【図１８】図１４の従来技術とそれに対応する本発明との違いを示すための図、
【図１９】本発明の第２の実施例によるネットワーク型文書表示装置の構成を示すブロック図、
【図２０】文書構造表示部１９６の文書構造表示処理のフローを示す図、
【図２１】参照関係表示生成部１９６１の参照関係表示処理のフローを示す図、
【図２２】参照関係表示生成部１９６１のフィールド図形表示処理のフローを示す図、
【図２３】データ構造表示例１、
【図２４】データ構造表示例２、
【図２５】データ構造表示例３、
【図２６】データ構造表示例４、
【図２７】データ構造表示例５、
【図２８】（ａ）は文書の構成例、（ｂ）（ｃ）は（ａ）の文書のデータ構造表示例、
【図２９】（ａ）はストリーム・フィールドとマップ・フィールドを合成した図、（ｂ）は（ａ）の構造表示例を示す図、
【図３０】（ａ）は図２８（ａ）に示す文書を従来技術により表現した例、（ｂ）は同じ文書を本発明の方式によって表現した例を示す図。
【符号の説明】
１１…文書格納部、１２…文書管理部、１２１…アンカー管理部、１２２…フィールド管理部、１３…入力部、１４…アンカー・フィールド選択部、１５…処理選択部、１６…フィールド編集部群、１６１，１６２…フィールド編集部、１７…フィールド表示生成部群、１７１，１７２…フィールド表示生成部、１８…表示部、１９１…文書格納部、１９２…文書管理部、１９２１…アンカー管理部、１９２２…フィールド管理部、１９３…図形要素管理部、１９４…入力部、１９５…アンカー・フィールド選択部、１９６…文書構造表示部、１９６１…参照関係表示生成部、１９６２…フィールド図形表示生成部、１９７…表示部。
【図１】
0003557622.tif 000002
【図２】
0003557622.tif 000003
【図３】
0003557622.tif 000004
【図４】
0003557622.tif 000005
【図５】
0003557622.tif 000006
【図６】
0003557622.tif 000007
【図７】
0003557622.tif 000008
【図８】
0003557622.tif 000009
【図９】
0003557622.tif 000010
【図１０】
0003557622.tif 000011
【図１１】
0003557622.tif 000012
【図１２】
0003557622.tif 000013
【図１３】
0003557622.tif 000014
【図１４】
0003557622.tif 000015
【図１５】
0003557622.tif 000016
【図１６】
0003557622.tif 000017
【図１７】
0003557622.tif 000018
【図１８】
0003557622.tif 000019
【図１９】
0003557622.tif 000020
【図２０】
0003557622.tif 000021
【図２１】
0003557622.tif 000022
【図２２】
0003557622.tif 000023
【図２３】
0003557622.tif 000024
【図２４】
0003557622.tif 000025
【図２５】
0003557622.tif 000026
【図２６】
0003557622.tif 000027
【図２７】
0003557622.tif 000028
【図２８】
0003557622.tif 000029
【図２９】
0003557622.tif 000030
【図３０】
0003557622.tif 000031