(57)【要約】【課題】別々に表示したページやその中のテキストを関連付けるＸＬｉｎｋの登録を容易に行う。【解決手段】通信回線を相互に接続して構築されるネットワーク上に分散配置された複数のコンテンツデータの一部又は全部を結合して表示するシステムであって、複数のコンテンツデータＤ３，Ｄ４を格納するコンテンツデータベース６と、複数のコンテンツデータＤ３，Ｄ４の結合形態に関するリンク情報を格納するリンクデータベース５と、リンク情報をリンクデータベース５から取得し、リンク情報に基づいてコンテンツデータベースから複数のコンテンツＤ３，Ｄ４を取得し、取得した複数のコンテンツデータＤ３，Ｄ４をリンク情報に基づいて結合して表示する参照ブラウザ２と、結合の基礎となる基礎基礎コンテンツデータＤ３上における、他のコンテンツデータＤ４の位置や表示形態をリンク情報としてリンクデータベース５に登録する登録ブラウザ１とを備える。【選択図】      図１
2004220282.tif 000002
【特許請求の範囲】
【請求項１】
通信回線を相互に接続して構築されるネットワーク上に分散配置された複数のコンテンツデータの一部又は全部を結合して表示するコンテンツ表示システムであって、
前記複数のコンテンツデータを格納するコンテンツデータベースと、
前記複数のコンテンツデータの結合形態に関するリンク情報を格納するリンクデータベースと、
前記リンク情報を前記リンクデータベースから取得し、該リンク情報に基づいて前記コンテンツデータベースから複数のコンテンツを取得し、取得した複数のコンテンツデータを前記リンク情報に基づいて結合して表示する参照手段と、
前記結合の基礎となる基礎コンテンツデータ上における、他のコンテンツデータの位置や表示形態を前記リンク情報として前記リンクデータベースに登録する登録手段と
を備えることを特徴とするコンテンツ表示システム。
【請求項２】
前記コンテンツデータベース又は前記リンクデータベースへのアクセスを、アクセス者のアクセス権に応じて制限する認証部を有することを特徴とする請求項１に記載のコンテンツ表示システム。
【請求項３】
前記登録手段は、
前記基礎コンテンツデータを表示する基礎コンテンツ表示部と、
該基礎コンテンツデータに結合される他のコンテンツデータを表示するリンク先コンテンツ表示部と、
前記基礎コンテンツ表示部及び前記リンク先コンテンツ表示部上に表示されたコンテンツの文字列を選択する選択手段と、
前記基礎コンテンツ表示部上の選択箇所に、前記リンク先コンテンツ表示部上の選択箇所を結合する結合処理部と、
前記結合処理部による結合結果を、前記リンク情報として前記リンクデータベースに登録する登録処理部と
を備えることを特徴とする請求項２に記載のコンテンツ表示システム。
【請求項４】
前記結合処理部は、前記選択手段により選択された文字列と、この選択された文字列の前記各表示部上における表示サイズとに基づいて、該選択された文字列の座標を算出し、この算出結果に基づいて、前記各選択箇所を特定することを特徴とする請求項３に記載のコンテンツ表示システム。
【請求項５】
前記結合処理部は、ユーザーの操作に基づいて、基礎コンテンツデータにおける前記他のコンテンツデータの結合形態として、置換、埋込み、ポップアップ表示等を選択する結合形態選択部を有することを特徴とする請求項３又は４に記載のコンテンツ表示システム。
【請求項６】
通信回線を相互に接続して構築されるネットワーク上に分散配置された複数のコンテンツデータの一部又は全部を結合して表示するコンテンツ表示方法であって、
前記ネットワーク上に設置されたコンテンツデータベースに前記複数のコンテンツデータを格納するとともに、前記ネットワーク上に設置されたリンクデータベースに前記複数のコンテンツデータの結合形態に関するリンク情報を登録する第１の処理と、
前記リンク情報を前記リンクデータベースから取得し、該リンク情報に基づいて前記コンテンツデータベースから複数のコンテンツを取得し、取得した複数のコンテンツデータを前記リンク情報に基づいて結合して表示する第２の処理と
を有することを特徴とするコンテンツ表示方法。
【請求項７】
前記第１の処理では、前記コンテンツデータベース又は前記リンクデータベースへのアクセスを、アクセス者のアクセス権に応じて制限することを特徴とする請求項６に記載のコンテンツ表示方法。
【請求項８】
前記第１の処理では、
ユーザー側端末において、前記基礎コンテンツデータを表示するとともに、該基礎コンテンツデータに結合される他のコンテンツデータを表示し、
ユーザーの操作に応じて、表示されたコンテンツの文字列を選択し、
前記基礎コンテンツデータ上の選択箇所に、前記他のコンテンツデータ上の選択箇所を結合し、
前記結合結果を、前記リンク情報として前記リンクデータベースに登録することを特徴とする請求項７に記載のコンテンツ表示方法。
【請求項９】
前記選択された文字列と、この選択された文字列の表示サイズとに基づいて、該選択された文字列のコンテンツ内における座標を算出し、この算出結果に基づいて、前記各選択箇所を特定することを特徴とする請求項８に記載のコンテンツ表示方法。
【請求項１０】
前記第２の処理では、ユーザーの操作に基づいて、基礎コンテンツデータにおける前記他のコンテンツデータの結合形態として、置換、埋込み、ポップアップ表示等を選択することを特徴とする請求項８又は９に記載のコンテンツ表示方法。
【請求項１１】
通信回線を相互に接続して構築されるネットワーク上に分散配置された複数のコンテンツデータの一部又は全部を結合して表示するコンテンツ表示方法であって、コンピュータに、
前記ネットワーク上に設置されたコンテンツデータベースに前記複数のコンテンツデータを格納するとともに、前記ネットワーク上に設置されたリンクデータベースに前記複数のコンテンツデータの結合形態に関するリンク情報を登録する第１の処理と、
前記リンク情報を前記リンクデータベースから取得し、該リンク情報に基づいて前記コンテンツデータベースから複数のコンテンツを取得し、取得した複数のコンテンツデータを前記リンク情報に基づいて結合して表示する第２の処理と
を実行させることを特徴とするコンテンツ表示プログラム。
【請求項１２】
前記第１の処理では、前記コンテンツデータベース又は前記リンクデータベースへのアクセスを、アクセス者のアクセス権に応じて制限することを特徴とする請求項１１に記載のコンテンツ表示プログラム。
【請求項１３】
前記第１の処理では、
ユーザー側端末において、前記基礎コンテンツデータを表示するとともに、該基礎コンテンツデータに結合される他のコンテンツデータを表示し、
ユーザーの操作に応じて、表示されたコンテンツの文字列を選択し、
前記基礎コンテンツデータ上の選択箇所に、前記他のコンテンツデータ上の選択箇所を結合し、
前記結合結果を、前記リンク情報として前記リンクデータベースに登録することを特徴とする請求項１２に記載のコンテンツ表示プログラム。
【請求項１４】
前記選択された文字列と、この選択された文字列の表示サイズとに基づいて、該選択された文字列のコンテンツ内における座標を算出し、この算出結果に基づいて、前記各選択箇所を特定することを特徴とする請求項１３に記載のコンテンツ表示プログラム。
【請求項１５】
前記第２の処理では、ユーザーの操作に基づいて、基礎コンテンツデータにおける前記他のコンテンツデータの結合形態として、置換、埋込み、ポップアップ表示等を選択することを特徴とする請求項１３又は１４に記載のコンテンツ表示プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、リンクデータをリソースの外で管理する機構で、ＸＬｉｎｋの登録データを第三者リンクとして管理するコンテンツ表示システム、コンテンツ表示方法及びコンテンツ表示プログラムに関する。
【０００２】
【従来の技術】
通常のＨＴＭＬは、文書内にハイパーリンクが書き込まれ、リンク元の文書とリンク先の文書は、それぞれ単独で存在する。リンク元の文書作成時において、リンク先の文書が存在していても、サイトの運用により、リンク先の文書が別フォルダに移動されたり、リンク先の文書が削除されたりすることによって、ｂｒｏｋｅｎ  ｌｉｎｋが生じることがある。
【０００３】
このような問題を解決する技術として、リンク情報を別途管理することができる第三者リンク（ＸＬｉｎｋ）が挙げられる。このＸＬｉｎｋは、リソースとリソースを関連付けるリンク機構を有し、Ｗ３Ｃは、ＸＬｉｎｋの仕様について、２００１年６月に、Ｗ３Ｃ勧告としてＸＬｉｎｋ１．０（ＸＭＬ  Ｌｉｎｋｉｎｇ  Ｌａｎｇｕａｇｅ）を公開した。このＸＬｉｎｋは、属性中心のＭＬ（Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）であることから、他のＭＬとの親和性が高いことから、ＸＬｉｎｋ勧告後に策定されたＳＶＧ（Ｓｃａｌａｂｌｅ  ＶｅｃｔｏｒＧｒａｐｈｉｃｓ）などのＸＭＬ規格においても、ＸＬｉｎｋの機能を取り入れている（例えば、非特許文献１参照。）。
【０００４】
このＸＬｉｎｋでは、図７及び図８に示すように、ブラウザ上で、ａ．ＨＴＭＬ、及びＸＬｉｎｋ仕様に沿って記述されたＸＬｉｎｋ．ｘｍｌ（ＸＭＬファイル）を読み込み、リンク制御ＡＰＩにより、その記述に従い第三者リンクを実現し、他のコンテンツ（画像や他のＨＴＭＬファイル）を種々の形態で結合されたリンク機能を持つａ．ＨＴＭＬとして表示する。図８に示した例では、元のａ．ＨＴＭＬの”Ａ”の箇所に他のＨＴＭＬファイル”Ｃ”や”Ｆ”のページへのリンクを挿入し、”Ｂ”の箇所に”Ｄ”の画像の表示・削除機能を埋め込んでいる。
【０００５】
このようにＸＬｉｎｋによれば、リソース自身の管理並びにリソース間の関連も管理でき、参照元がないリソースや参照先がないリソースの発見を容易にサポートすることができる。
【０００６】
【非特許文献１】
“ＸＭＬ  Ｐｏｉｎｔｅｒ，  ＸＭＬ  Ｂａｓｅ  ａｎｄ  ＸＭＬ  Ｌｉｎｋｉｎｇ”、ｈｔｔｐ：／／ｗｗｗ．ｗ３．ｏｒｇ／ＸＭＬ／Ｌｉｎｋｉｎｇ、２００１
【０００７】
【発明が解決しようとする課題】
しかしながら、ＸＬｉｎｋファイルはエディタ等のアプリケーションを使って直接ファイルを作ることもできるが、リンクの記入ミスにより、正常に実行されない惧れがある。また、ＸＬｉｎｋでは、ＸＬｉｎｋ：ｈｒｅｆで記述されるリソースとＸＬｉｎｋ：ｌａｂｅｌで示されるラベル情報を一元的に管理することが要求され、対応するシステムも必要となる。
【０００８】
そこで、本発明は、スクリプトによるＸＬｉｎｋ実装を通して得られた技術に基づいて、ブラウザ上に表示されたページやその中のテキストをリソースとし、別に表示したページやその中のテキストを関連付けるＸＬｉｎｋの登録を容易に行うことのできるコンテンツ表示システム、コンテンツ表示方法及びコンテンツ表示プログラムを提供することを目的とする。
【０００９】
【課題を解決するための手段】
上記課題を解決するために、本発明は、通信回線を相互に接続して構築されるネットワーク上に分散配置された複数のコンテンツデータの一部又は全部を結合して表示するコンテンツ表示方法であって、ネットワーク上に設置されたコンテンツデータベースに複数のコンテンツデータを格納するとともに、ネットワーク上に設置されたリンクデータベースに複数のコンテンツデータの結合形態に関するリンク情報を登録する第１の処理と、リンク情報をリンクデータベースから取得し、リンク情報に基づいてコンテンツデータベースから複数のコンテンツを取得し、取得した複数のコンテンツデータをリンク情報に基づいて結合して表示する第２の処理とを有する。このような本発明によれば、第三者リンクをリンクデータベースに登録することにより、ネットワーク上に点在する複数のコンテンツを結合して表示することができる。
【００１０】
上記発明においては、第１の処理では、コンテンツデータベース又はリンクデータベースへのアクセスを、アクセス者のアクセス権に応じて制限することが好ましい。この場合には、アクセス者のアクセス権に応じて、参照可能なコンテンツを管理することができるため、コンテンツの提示対象者を、コンテンツの内容に応じて制限することが可能となり、不正にコンテンツが利用されることを回避することができる。
【００１１】
上記発明においては、第１の処理では、ユーザー側端末において、基礎コンテンツデータを表示するとともに、基礎コンテンツデータに結合される他のコンテンツデータを表示し、ユーザーの操作に応じて、表示されたコンテンツの文字列を選択し、基礎コンテンツデータ上の選択箇所に、他のコンテンツデータ上の選択箇所を結合し、結合結果を、リンク情報としてリンクデータベースに登録することが好ましい。この場合には、既存のコンテンツ内に他のコンテンツを結合させる際、ユーザーは、コンテンツの内容を視覚的に把握しながら操作することが可能となり、登録操作を容易なものとすることができる。
【００１２】
上記発明においては、選択された文字列と、この選択された文字列の表示サイズとに基づいて、選択された文字列のコンテンツ内における座標を算出し、この算出結果に基づいて、各選択箇所を特定することが好ましい。この場合には、結合箇所を基礎コンテンツデータ内の文字列により特定することができ、基礎コンテンツの内容と関連のある他のコンテンツを容易に登録することができるとともに、コンテンツの内容に則して他のコンテンツを結合することができる。
【００１３】
上記発明においては、第２の処理では、ユーザーの操作に基づいて、基礎コンテンツデータにおける他のコンテンツデータの結合形態として、置換、埋込み、ポップアップ表示等を選択することが好ましい。この場合には、複数のコンテンツの結合形態の多様化を図ることができ、結合されたコンテンツの表現力を向上させることができる。
【００１４】
【発明の実施の形態】
［コンテンツ表示システム］
（システムの構成）
本発明に係るコンテンツ表示システムの実施形態について、図面を参照しつつ説明する。図１は、本実施形態に係るコンテンツ表示システムの概略構成を示すブロック図である。
【００１５】
同図に示すように、コンテンツ表示システムは、インターネットなど通信回線を相互に接続して構築されるネットワーク上に分散配置された複数のコンテンツデータの一部又は全部を結合して表示するシステムであり、複数のコンテンツデータＤ３，Ｄ４を格納するコンテンツデータベース６と、複数のコンテンツデータＤ３，Ｄ４の結合形態に関するリンク情報を格納するリンクデータベース５と、これらのデータベースを管理するとともにインターネットからの参照要求を処理するＷｅｂサーバ３と、アクセス者の認証を行うユーザー認証部４とを備えている。本実施形態において、上記コンテンツデータＤ３，Ｄ４は、ＨＴＭＬファイルやＪＰＧ等の画像画像ファイル、動画ファイルであり、また、リンク情報は、ＸＭＬ等により記述された文字列データである。
【００１６】
Ｗｅｂサーバ３は、インターネットに接続され、インターネット上の登録ブラウザ１や参照ブラウザ２の要求に応じて、ＨＴＭＬデータやＸＭＬデータ、画像・動画データを配信する通信サーバである。また、登録ブラウザ１や参照ブラウザ２は、インターネットを通じてＷｅｂサーバ３とデータの送受信が可能なブラウザソフト等、汎用コンピュータ上で実行されるアプリケーションである。
【００１７】
コンテンツデータベース６は、ＨＴＭＬ等のマークアップテキストデータや、画像等のファイルデータを格納するデータベースであり、本実施形態では、Ｗｅｂサーバ３に接続され、このＷｅｂサーバ３の要求に応じて、コンテンツデータＤ３，Ｄ４の保存、読み出し、更新等を実行する。
【００１８】
リンクデータベース５は、ＸＭＬ等で記述されたＸＬｉｎｋデータを格納するデータベースであり、本実施形態では、ユーザー認証部４とＷｅｂサーバ３に接続されている。また、本実施形態に係るリンクデータベース５は、アクセス者のアクセスレベルに応じて、アクセスするデータベースを切り替える機能を備えており、個人用のデータベースであるパーソナルリンクデータ５ａと、グループリンクデータ５ｂとを有している。
【００１９】
ユーザー認証部４は、登録ブラウザ１や参照ブラウザ２のユーザーのアクセス権を認証するモジュールであり、ユーザーからＩＤやパスワードを取得し、登録ユーザーであるか否かを判断し、登録ユーザーであるときには、そのアクセス権を認証する。そして、アクセス権に応じて、アクセス可能なリンクデータベースを決定する。
【００２０】
登録ブラウザ１は、ＸＬｉｎｋデータをリンクデータベース５から取得し、ＸＬｉｎｋデータに基づいてコンテンツデータベース６から複数のコンテンツＤ３及びＤ４を取得し、取得した複数のコンテンツデータＤ３及びＤ４をＸＬｉｎｋデータに基づいて結合して表示する表示機能と、基礎コンテンツデータＤ３上における、他のコンテンツデータＤ４の位置や表示形態をＸＬｉｎｋデータとしてリンクデータベース５に登録する登録機能とを備えている。
【００２１】
また、登録ブラウザ１は、図２に示すように、基礎コンテンツデータＤ３を表示する基礎コンテンツ表示フレーム１ａと、基礎コンテンツデータＤ３に結合される他のコンテンツデータＤ４を表示するリンク先コンテンツ表示フレーム１ｂと、基礎コンテンツ表示フレーム１ａ及びリンク先コンテンツ表示フレーム１ｂ上に表示されたコンテンツの文字列を選択する選択手段であるマウスポインタ１１と、基礎コンテンツ表示フレーム１ａ上の選択箇所に、リンク先コンテンツ表示フレーム１ｂ上の選択箇所を結合する結合処理フレーム１ｃとを備えている。
【００２２】
なお、結合処理フレーム１ｃは、マウスポインタ１１により選択された文字列と、この選択された文字列の各表示部上における表示サイズとに基づいて、選択された文字列の座標を算出し、この算出結果に基づいて、前記各選択箇所を特定する機能を有している。
【００２３】
さらに、登録ブラウザ１は、ユーザーの操作に基づいて、基礎コンテンツデータＤ３における他のコンテンツデータＤ４の結合形態として、置換、埋込み、ポップアップ表示等を選択する結合形態選択部１ｄ及び基礎コンテンツデータＤ３や他のコンテンツデータＤ４に関する情報を入力するテキストボックス１ｅ及び１ｆを有している。
【００２４】
［コンテンツ表示方法］
上述したコンテンツ表示システムを動作させることにより本発明のコンテンツ表示方法を実施することができる。以下に、本実施形態に係るコンテンツ表示方法の手順について説明する。なお、本実施形態では、登録ブラウザ１からＸＬｉｎｋデータをリンクデータベース５に登録し、参照ブラウザ２によりコンテンツを表示させる。
【００２５】
（ＸＬｉｎｋデータの登録処理）
本実施形態におけるＸＬｉｎｋデータ登録処理の手順は次の通りである。図３は、本実施形態における登録処理の手順を示すフロー図である。なお、ここでは、基礎コンテンツ表示フレーム１ａ及びリンク先コンテンツ表示フレーム１ｂ上に開いたコンテンツＤ３及びＤ４に対して、それぞれのコンテンツ上からリソースとなるテキストをマウスポインタ１１によるドラッグ操作によって選択し、両リソース間のリンク関係、リンク時の表示方法を結合形態選択部１ｄにおいて選択して、ＸＬｉｎｋデータとして登録する。図３に示した操作及び処理について以下に詳述する。
【００２６】
（１）ＨＴＭＬ文中からドラッグしたテキストの抽出（Ｓ２０１）
テキストの抽出に際しては、ユーザーのマウスポインタ１１の操作によるドラッグイベントをイベントｎｏｄｅＥとして検知し、このイベントｎｏｄｅＥに基づいて、ドラッグした文字列ｔｅｘｔを取得する。この文字列ｔｅｘｔは、ドラッグ操作によってクリップボードに格納されたテキストとして取得される。
【００２７】
次いで、これらの処理によって得られた文字列ｔｅｘｔが、ＨＴＭＬ文書中のどこにあったか、その座標情報などを検知する。詳述すると、ドラッグされた文字列ｔｅｘｔは、必ずノードｎｏｄｅ中にあるが、ｎｏｄｅ内のどこにあるかが不明であり、文字列ｔｅｘｔがノードｎｏｄｅ中に１つしかない場合もあれば、複数ある場合も考えられる。
【００２８】
文字列ｔｅｘｔが１つしかない場合には、ノードｎｏｄｅ中にある文字列ｔｅｘｔを検索し、その文字列に対してリンク情報の修飾処理（リンクポイントの埋め込み）を行う。一方、文字列ｔｅｘｔが複数行にわたって複数個の文字列ｔｅｘｔがある場合は、どの文字列がドラッグされたものであるかの判定を行う。この判定の結果、その文字列に対して修飾処理を行う。
【００２９】
（２）テキストオブジェクトのフォントメトリックス（Ｓ２０２）
上述した修飾処理を行うために、後述するテキストオブジェクトのフォントメトリックス（Ｓ２０２）による表示位置の座標計算とドラッグしたマウス座標との比較を行う。すなわち、表示フレーム１ａ又は１ｂ上に表示されているオブジェクトの座標を取得し、この取得された座標を用いて、検索で求められた文字列がドラッグした文字列ｔｅｘｔであるか否かの判定を行う。この座標の取得は、ノードｎｏｄｅのプロパティやスタイル属性から求める。例えば、オブジェクトの開始座標及び、オブジェクトの大きさを求め、これに基づいて、画面上の座標を算出する。
【００３０】
また、テキストオブジェクト中の文字列の表示位置は、フォントファミリー、フォントサイズ、フォントスタイル、フォントウェイト、レタースペースなどのＣＳＳスタイル属性から得られる情報を用いて計算する。このようにＣＳＳスタイル属性に基づいたテキストオブジェクトのフォントメトリックスを把握し、テキストオブジェクト中にある任意の文字列に対して、その表示位置が計算可能となる。
【００３１】
なお、ブラウザに表示されるテキストは見易くするため、プロポーショナルスタイルでそれぞれの文字が表示される。一般に同じ全角文字でも、漢字に対してカタカナやひらがなは、やや小さ目に表示される。また同じカタカナでも文字によって大きさが異なる。本実施形態では、任意の文字列の表示長（ブラウザ上で表示されているテキストの長さ）を求めるため、非表示でその文字列をブラウザ上にレンダリングし、そのテキストオブジェクトから求めたｏｆｆｓｅｔＷｉｄｔｈ（偏り幅）を表示長とする。
【００３２】
先ず、ｄｏｃｓで指定されたＤＯＭにあるノードｖｎｏｄｅの配下に、ＤＩＶ要素を追加し、そのノードをｍＮｏｄｅとする。このとき、ＤＩＶ要素の中にテキストを記入して、そのテキストの長さを求めるため、その表示モードは非表示とする。また、テキストが入る十分な幅を確保するため、ＤＩＶ要素の幅をフォントサイズに文字列長を乗じた値に指定する。この指定がない場合、ブラウザの表示幅を越えて２行、３行で表示されるテキストの表示長は、すべてブラウザの表示幅の値となる。このＤＩＶ要素の中に、テキストをセットするＳＰＡＮ要素を設け、このノードをｔＮｏｄｅとする。この要素に対して、フォントメトリックスを求めるテキストのデフォルトＣＳＳスタイル属性をセットし、テキストを埋め込む。
【００３３】
このノードｔＮｏｄｅの幅は、設定されたフォント情報に従ったテキストの表示長がｔＮｏｄｅ．ｏｆｆｓｅｔＷｉｄｔｈから求められる。このコード中の関数ａｄｄＴｅｘｔＮｏｄｅはテキストや属性を持つノードの生成が簡単に行える関数である。この関数を通して、容易に文字列の表示長を求める。
【００３４】
長い文字列は１行に入らず、必ず改行を伴うため、改行を含めたフォントメトリックスを考慮し、ドラッグした文字列がそのテキストオブジェクトのどこにあるかを判定する。この改行に関する情報は調査してもその具体的な情報を得られなかったため、テキストオブジェクトのプロパティから算出する。
【００３５】
上述の処理の結果、フォントメトリックスに関するすべての情報が取得される。本実施形態では、この処理結果に対して、座標の単位系（ＰＴ及びＰＸ）を統一する。具体的には、絶対単位系のＰＴ（ポイント）によって表記されているＢＯＤＹ要素で指定される単位（１ｉｎ＝７２ｐｔ）を、その他の要素における画面解像度に依存する相対単位系（ＰＸ：ピクセル）に統一する。
【００３６】
（３）フォントサイズとフォント高の調整（Ｓ２０３）
フォントサイズ（単位はｐｘ、ｐｔ）とフォント高（ｐｘ）との関係を解析し、この解析結果に基づいて、座標位置の調整を行う。
【００３７】
（４）ドラッグしたテキストの判定とＸＰｏｉｎｔｅｒ情報取得（Ｓ２０４）
次いで、ドラッグした文字列ｔｅｘｔとテキスト中の文字列の判定の前準備として、ドラッグイベントが生じたブラウザ上の座標ｘ、ｙを求め、この座標と表示フレーム１ａや１ｂ上に表示されている文字列の座標を比較して、ドラッグした文字列の判定を行う。
【００３８】
このドラッグイベントを生じたノードｎｏｄｅ（表示座標ＸＸ、ＹＹで大きさｗｉｄｔｈ、ｈｅｉｇｈｔを有する要素）中に、ドラッグした文字列ｔｅｘｔが必ず含まれるが、ドラッグされていない文字列ｔｅｘｔも含まれることも考えられる。このような場合に、テキストオブジェクト中からドラッグした文字列を求める手順は次の通りである。
【００３９】
（４−１）ドラッグイベントが生じた座標ｘ、ｙとドラッグテキストｔｅｘｔ（このテキストの表示長をｍ０とする）を、並びにイベントが生じたノードｎｏｄｅを得て、そのｎｏｄｅのブラウザ上での開始座標ＸＸ、ＹＹ（初期値をＸ、Ｙとして保存）とその大きさを取得する。
【００４０】
（４−２）ｎｏｄｅが有するＣＳＳスタイル情報を求める（フォントサイズｆｓ、フォント高ｆｈの単位はｐｘに統一する）。
【００４１】
（４−３）ｎｏｄｅのＤＯＭ構造を読み取り、その子ノードに対して、以下の処理を行う。
【００４２】
（４−４）子ノードが改行要素であれば、ＸＸ＝Ｘ、ＹＹ＋＝ｆｈとして改行を行う。また改空行要素であれば、ＸＸ＝Ｘ、ＹＹ＋＝ｆｈ＋ＬＦとして空行を伴う改行を行う（ただし当該子ノードの１つ前の兄要素が改空行である場合、ＹＹ−＝ＬＦとして空行重複を避ける）。ＬＦは改空行幅を示し、インターネットエクスプローラではＬＦ＝１９となる。
【００４３】
（４−５）ノードｎｏｄｅの子ノードが要素であれば、その要素の表示長ｌｅｎを求め、ＸＸ＋＝ｌｅｎとする。もしＸＸがＸ＋ｗｉｄｔｈを越えるならば、この文字列の前に改行ポイントがある。この文字列までの文字列について二分木検索によって求められた改行ポイントまでの長さをｍ１とする。ＸＸ−＝ｍ１、ＹＹ＋＝ｆｈとして改行処理を行う。
【００４４】
（４−６）ノードｎｏｄｅの子ノードがテキストノードの場合、そのテキスト中にドラッグした文字列ｔｅｘｔが含まれているか、判定する。
【００４５】
（４−７）そのテキストノード中にｔｅｘｔが含まれない場合、（４）と同様の処理を行う。
【００４６】
（４−８）そのテキストノード中にｔｅｘｔが含まれる場合、まずｍ２＝ＸＸとする。
【００４７】
（４−９）その文字列を含む文字列の表示長をｍ２に加える。
【００４８】
（４−１０）もしｍ２−ｍ０がＸ＋ｗｉｄｔｈを越えるならば、この文字列の前に改行ポイントがある。改行ポイントまでの長さをｍ１とする。ｍ２−＝ｍ１、ＹＹ＋＝ｆｈとして改行処理を行う。
【００４９】
（４−１１）ドラッグした位置ｘ、ｙがそれぞれｍ２−ｍ０〜ｍ２、ＹＹ〜ＹＹ＋ｆｈの範囲内にあるか、判定を行う。
【００５０】
（４−１２）この判定に適合しない場合、次のテキスト候補に対して（９）の処理を行う。もしすべての候補が判定に適合しない場合、ＸＸ＝ｍ２とし（３）の次のノードへ進む。
【００５１】
（４−１３）この判定に適合すると、この文字列はドラッグした文字列そのものとなり、この文字列に修飾処理を行う。このドラッグ文字列が２行にわたって折り返し表示されている場合、その上の行、下の行に分割表示されている文字列に対して、それぞれ部分マッチングによる判定を行う。
【００５２】
（５）ＸＬｉｎｋデータの登録処理の手順（Ｓ２０５）
結合処理フレーム１ｃの左側のＵＲＬ欄に参照するページのＵＲＬを入力し、ボタン”表示１”をクリックすると、基礎コンテンツ表示フレーム１ａに指定したページ（基礎コンテンツＤ３）が表示される。表示されたページ中のテキストをドラッグすると、リソース欄にリンク先コンテンツＤ４のＵＲＩが表示される。
【００５３】
また、タイトル欄に記入することにより、１つのリソース（このリソースをリソース１と呼ぶ）の記述が完了する。もう１つのリンク先コンテンツ表示フレーム１ｂに対して同様の操作を行い、リンク先コンテンツであるリソースを定義する。ここで定義したリソース間の関係を結合処理フレーム１ｃ中央の矢印によって指定する。ここで指定できる関係は１方向並びに双方向が指定できる。さらに参照表示形式を同フレーム右側の結合形態選択部（チェックボックス）１ｄにより選択する。
【００５４】
これらの指定によりリソース１からリソース２へのリンク関係とリンク時の表示形式が定まり、これらのデータはボタン“保存”により、基礎コンテンツ表示フレーム１ａ内にあるＸＬｉｎｋデータ（ＤＯＭ）に保存される。さらに続けて別のリソースに対しても同様の処理を行う。最後にボタン“登録”によってＸＬｉｎｋデータはサーバに登録される。
【００５５】
この処理における大きなポイントは、（１）ＨＴＭＬ表示完了の検知、（２）表示完了後、表示されたＨＴＭＬ中へのマウスドラッグ処理を行うスクリプトを埋め込み、（３）ＸＬｉｎｋデータの生成（ＸＬｉｎｋ：ｌａｂｅｌ値の生成）である。（１）及び（２）は、基礎コンテンツ表示フレーム１ａ、リンク先コンテンツ表示フレーム１ｂに表示されるＨＴＭＬには、そのテキストをドラッグするなどの処理機能はない。
【００５６】
以上説明した手順により、サーバ上にあるＨＴＭＬなどのコンテンツ及びＸＬｉｎｋデータがサーバ上に登録される。本実施形態においてＸＬｉｎｋデータは、ユーザー認証に基づき、リンクデータベース５内のユーザー所定のフォルダに保存される。
【００５７】
（参照処理）
このようにして登録されたＸＬｉｎｋの参照は以下の手順により行われる。図４（ａ）及び（ｂ）は、本実施形態における参照処理の手順を示す説明図である。
【００５８】
同図に示すように、処理が開始されると、リンク制御ＡＰＩを有する初期コンテンツがＸＬｉｎｋ制御フレーム２ａに表示されると共に、ユーザーのアクセス権に応じたＸＬｉｎｋデータがリンクデータベース５から取出され、ＸＬｉｎｋ制御フレーム２ａのＤＯＭに格納される（Ｓ１０１）。リンク制御ＡＰＩはＸＬｉｎｋデータ先頭にあるコンテンツＤ３をコンテンツ表示フレーム２ｂに表示する（Ｓ１０２）。そして、コンテンツＤ３の表示完了後、リンク制御ＡＰＩを表示しているコンテンツＤ３中に埋め込み（Ｓ１０３）、ＸＬｉｎｋデータに基づいてコンテンツＤ３中のリンク箇所にリンクポイントの埋め込みが実行される（Ｓ１０４）。尚、ＸＬｉｎｋ制御フレーム２ａとコンテンツ表示フレーム２ｂの参照ブラウザ２内での表示比率は０％対１００％とする。即ちＸＬｉｎｋ制御フレーム２ａはユーザーから見えない状況となる。
【００５９】
次いで、表示しているコンテンツＤ３上でマウス操作によってリンクポイントの選択が行われ、これらに基づく複数のコンテンツのリンク情報がメニュー表示される（Ｓ１０５）。このメニューからコンテンツを選択するとＸＬｉｎｋに基づいたリンクが実施され（Ｓ１０６）、当該コンテンツＤ４が表示される（Ｓ１０２）。リンク先が別のＸＬｉｎｋデータを示す場合、別の括り定義されたＸＬｉｎｋデータを読み込まれ、上記ステップＳ１０１〜Ｓ１０６の操作を繰り返すことができる。
【００６０】
（アノテーション付加機能）
なお、本実施形態では、ユーザーの利便性、すなわち、現在見ているページに対して気に入った箇所、疑問を抱いた箇所などのアノテーションを付与する機能を設けている。
【００６１】
詳述すると、図５（ａ）に示すように、画面上において、アノテーションを付与するテキストをマウスドラッグする。この操作によって、アノテーション記入フォーム７が開き、ドラッグされたテキストがアノテーション対象文字列としてテキストボックス７２に表示され、テキストボックス７３において、コメントが入力可能となる。これにより、ドラッグした文字列にテキスト修飾（ここでは緑色の背景色を付与）が施され、アノテーションを記入する画面がＨＴＭＬ上にポップアップ表示される。
【００６２】
なお、アノテーション記入フォーム７のテキストボックス７１に表示されるＵＲＩは、表示しているページのＵＲＬと、ドラッグしたテキストのページ上の位置とを組み合わせて生成したものであり、これが上述したＸＬｉｎｋのリソース元となる。また、ユーザー操作により記入したデータが、ドラッグしたテキストへのアノテーション情報となり、この入力テキストがローカルリソースと定義され、リンク先のリソースとなる。
【００６３】
そして、上述したように、アノテーション記入フォーム７上のボタン“登録”をクリックすることによってアノテーションが登録される。登録されるデータはリンク元となるリソースとリンク先となるアノテーション情報である。なお、アノテーション情報はＸＬｉｎｋデータの一部として管理され、ＸＬｉｎｋ表示できる環境を有するブラウザで表示することができる。
【００６４】
［応用例］
なお、以上説明したコンテンツ表示システム及び表示方法は、例えば、図５（ｂ）に示すような業績報告書の表示に用いることができる。
【００６５】
図５（ｂ）に示したコンテンツデータベース６内に、データベース形式により各期の業績データを格納しておき、リンク情報にこの業績データを参照する旨の処理を記述する。これによれば、定型的なフォーマットをＨＴＭＬファイルで作成するとともに、業績データを照合し表や棒グラフ、円グラフを描画する処理をリンク情報により実行させることにより、報告書の定型部分をそのまま表示し、業績データのみをデータベースの更新に追従させてリアルタイムに表示することができる。
【００６６】
［コンテンツ表示プログラム］
なお、上述した実施形態及びその応用例に係るコンテンツ表示システム及び方法は、所定のコンピュータ言語で記述されたプログラムとすることができる。すなわち、このプログラムを、ユーザー端末やＷｅｂサーバ等のコンピュータやＩＣチップにインストールすることにより、上述した各機能を有する登録ブラウザ、参照ブラウザ、Ｗｅｂサーバを容易に構築することができる。このプログラムは、例えば、通信回線を通じて配布することが可能であり、またスタンドアローンの計算機上で動作するパッケージアプリケーションとして譲渡することができる。
【００６７】
そして、このようなプログラムは、図６に示すような、汎用コンピュータ１２０で読み取り可能な記録媒体１１６〜１１９に記録することができる。具体的には、同図に示すような、フレキシブルディスク１１６やカセットテープ１１９等の磁気記録媒体、若しくはＣＤ−ＲＯＭやＤＶＤ−ＲＯＭ１１７等の光ディスクの他、ＲＡＭカード１１８など、種々の記録媒体に記録することができる。本実施形態は書き込み不可のＣＤ−ＲＯＭやＤＶＤ−ＲＯＭ１１７中にあるコンテンツに対してリンクを設けることができる特徴を有する。
【００６８】
そして、このプログラムを記録したコンピュータ読み取り可能な記録媒体によれば、汎用のコンピュータや専用コンピュータを用いて、上述したコンテンツ表示システムや方法を実施することが可能となるとともに、プログラムの保存、運搬及びインストールを容易に行うことができる。
【００６９】
【発明の効果】
以上説明したように、本発明のコンテンツ表示システム、コンテンツ表示方法及びコンテンツ表示プログラムによれば、スクリプトによるＸＬｉｎｋ実装を通して得られた技術に基づいて、ブラウザ上に表示されたページやその中のテキストをリソースとし、別に表示したページやその中のテキストを関連付けるＸＬｉｎｋの登録を容易に行うことができる。
【図面の簡単な説明】
【図１】実施形態に係るコンテンツ表示システムの概略構成を示すブロック図である。
【図２】実施形態に係る登録ブラウザの画面構成を示す説明図である。
【図３】実施形態に係る登録処理の手順を示すフロー図である。
【図４】実施形態における参照処理の手順を示す説明図である。
【図５】実施形態に係る応用例を示す説明図である。
【図６】実施形態に係るコンテンツ表示プログラムを記録したコンピュータ読み取り可能な記録媒体を示す斜視図である。
【図７】従来のＸＬｉｎｋの概要を示す説明図である。
【図８】従来のＸＬｉｎｋの概要を示す説明図である。
【符号の説明】
Ｄ１…初期コンテンツデータ
Ｄ２…ＸＬｉｎｋデータ
Ｄ３…基礎コンテンツデータ
Ｄ４…リンク先コンテンツ
１…登録ブラウザ
１ａ…基礎コンテンツ表示フレーム
１ｂ…リンク先コンテンツ表示フレーム
１ｃ…結合処理フレーム
１ｄ…結合形態選択部
１ｅ，１ｆ…テキストボックス
２…参照ブラウザ
２ａ…ＸＬｉｎｋ制御フレーム
２ｂ…コンテンツ表示フレーム
３…Ｗｅｂサーバ
４…ユーザー認証部
５…リンクデータベース
５ａ…パーソナルリンクデータ
５ｂ…グループリンクデータ
６…コンテンツデータベース
７…アノテーション記入フォーム
７１〜７３…テキストボックス
１１…マウスポインタ
１１６…フレキシブルディスク
１１７…ＲＯＭ
１１８…ＲＡＭカード
１１９…カセットテープ
１２０…汎用コンピュータ
【図１】
2004220282.tif 000003
【図２】
2004220282.tif 000004
【図３】
2004220282.tif 000005
【図４】
2004220282.tif 000006
【図５】
2004220282.tif 000007
【図６】
2004220282.tif 000008
【図７】
2004220282.tif 000009
【図８】
2004220282.tif 000010