(57)【要約】  ＴｏＤｏ等の個人的な情報を効率的に管理できるような表示環境や編集環境の実現が模索されていた。  情報管理装置３００は、ＨＴＭＬ文書を表示／編集するＨＴＭＬユニット１５０、ＳＶＧ文書を表示／編集するＳＶＧユニット１６０など、ボキャブラリごとに、表示／編集系をプラグインにより実現する。備忘録として管理される複数の管理項目が記述されたＸＭＬ文書が、インストールされているプラグインでは対応不可能なボキャブラリにより記述されていたときに、ＶＣユニット１８０が、その文書を表示可能なボキャブラリ、ここでは、ＨＴＭＬやＳＶＧにマッピングして、ＨＴＭＬユニット１５０又はＳＶＧユニット１６０により表示／編集する。【特許請求の範囲】
【請求項１】
ユーザが遂行すべき事項の備忘録として管理される複数の管理項目に関する編集指示をユーザから受け取る指示入力部と、
文書構造化のためのマークアップ言語のボキャブラリを用いて前記複数の管理項目が構造化された備忘録ファイルを記憶するファイル格納部と、
前記備忘録ファイルに対し前記指示された編集の結果を反映させる記録処理部と、
前記備忘録ファイルに含まれる複数の管理項目を、それぞれの情報種別に対応したマークアップ言語に基づく個別の表示形式にて表示領域に表示させる表示処理部と、
前記指示入力部がユーザから受け取った文章から所定の認識条件に合致する語をキーワードとして検出するキーワード検出部と、
前記指示入力部がユーザから受け取った文章を表示領域へ表示させる文書構造化のためのマークアップ言語のボキャブラリとして、前記検出されたキーワードに応じたボキャブラリを選択するボキャブラリ決定部と、
を備えることを特徴とする文書処理装置。
【請求項２】
前記キーワード検出部は、前記キーワードの種類と前記ボキャブラリの対応関係を前記認識条件として保持し、
前記ボキャブラリ決定部は、前記検出されたキーワードの種類に応じてボキャブラリを選択することを特徴とする請求項１に記載の文書処理装置。
【請求項３】
前記キーワード検出部は、前記キーワードの種類とタグの種類の対応関係と、前記タグの種類とボキャブラリの対応関係とを認識条件として保持し、
前記ボキャブラリ決定部は、前記検出されたキーワードの種類に応じてそのキーワードを含む文字列に付加するためのタグを決定するとともに、そのタグに応じたボキャブラリを選択することを特徴とする請求項１に記載の文書処理装置。
【請求項４】
ユーザが遂行すべき事項の備忘録として管理される複数の管理項目に関する編集指示をユーザから受け取る指示入力部と、
文書構造化のためのマークアップ言語のボキャブラリを用いて前記複数の管理項目が構造化された備忘録ファイルを記憶するファイル格納部と、
前記備忘録ファイルに対し前記指示された編集の結果を反映させる記録処理部と、
前記備忘録ファイルに含まれる複数の管理項目を、それぞれの情報種別に対応したマークアップ言語に基づく個別の表示形式にて表示領域に表示させる表示処理部と、
前記指示入力部がユーザから受け取った文章から所定の認識条件に合致する語をキーワードとして検出するキーワード検出部と、を備え、
前記表示処理部は、前記検出されたキーワードを含んだ文章を他の文書ファイルから抽出し、その抽出した文章の少なくとも一部で構成される抽出結果をその情報種別に応じた個別の表示形式にて前記複数の管理項目に埋め込まれた形で表示領域に表示させることを特徴とする文書処理装置。
【請求項５】
前記表示処理部は、前記抽出結果の埋め込みとその解除をユーザの切替指示に基づいて動的に切り替えることを特徴とする請求項４に記載の文書処理装置。
【請求項６】
前記抽出結果を所定の対応可能なボキャブラリにマッピングする変換部をさらに備えることを特徴とする請求項４または５に記載の文書処理装置。
【請求項７】
ユーザが遂行すべき事項の備忘録として管理される複数の管理項目に関する編集指示をユーザから受け取るステップと、
文書構造化のためのマークアップ言語のボキャブラリを用いて前記複数の管理項目が構造化された備忘録ファイルを読み出すステップと、
前記備忘録ファイルに対し前記指示された編集の結果を反映させるステップと、
前記備忘録ファイルに含まれる複数の管理項目を、それぞれの情報種別に対応したマークアップ言語に基づく個別の表示形式にて表示領域に表示させるステップと、
ユーザから受け取った文章から所定の認識条件に合致する語をキーワードとして検出するステップと、
ユーザから受け取った文章を表示領域へ表示させる文書構造化のためのマークアップ言語のボキャブラリとして、前記検出されたキーワードに応じたボキャブラリを選択するステップと、
を含むことを特徴とする文書処理方法。
【請求項８】
ユーザが遂行すべき事項の備忘録として管理される複数の管理項目に関する編集指示をユーザから受け取るステップと、
文書構造化のためのマークアップ言語のボキャブラリを用いて前記複数の管理項目が構造化された備忘録ファイルを読み出すステップと、
前記備忘録ファイルに対し前記指示された編集の結果を反映させるステップと、
前記備忘録ファイルに含まれる複数の管理項目を、それぞれの情報種別に対応したマークアップ言語に基づく個別の表示形式にて表示領域に表示させるステップと、
ユーザから受け取った文章から所定の認識条件に合致する語をキーワードとして検出するステップと、
前記検出されたキーワードを含んだ文章を他の文書ファイルから抽出し、その抽出した文章の少なくとも一部で構成される抽出結果をその情報種別に応じた個別の表示形式にて前記複数の管理項目に埋め込まれた形で表示領域に表示させるステップと、
を含むことを特徴とする文書処理方法。
【請求項９】
ユーザが遂行すべき事項の備忘録として管理される複数の管理項目に関する編集指示をユーザから受け取る機能と、
文書構造化のためのマークアップ言語のボキャブラリを用いて前記複数の管理項目が構造化された備忘録ファイルを記憶する機能と、
前記備忘録ファイルに対し前記指示された編集の結果を反映させる機能と、
前記備忘録ファイルに含まれる複数の管理項目を、それぞれの情報種別に対応したマークアップ言語に基づく個別の表示形式にて表示領域に表示させる機能と、
ユーザから受け取った文章から所定の認識条件に合致する語をキーワードとして検出する機能と、
ユーザから受け取った文章を表示領域へ表示させる文書構造化のためのマークアップ言語のボキャブラリとして、前記検出されたキーワードに応じたボキャブラリを選択する機能と、
をコンピュータに発揮させることを特徴とするコンピュータプログラム。
【請求項１０】
ユーザが遂行すべき事項の備忘録として管理される複数の管理項目に関する編集指示をユーザから受け取る機能と、
文書構造化のためのマークアップ言語のボキャブラリを用いて前記複数の管理項目が構造化された備忘録ファイルを記憶する機能と、
前記備忘録ファイルに対し前記指示された編集の結果を反映させる機能と、
前記備忘録ファイルに含まれる複数の管理項目を、それぞれの情報種別に対応したマークアップ言語に基づく個別の表示形式にて表示領域に表示させる機能と、
ユーザから受け取った文章から所定の認識条件に合致する語をキーワードとして検出する機能と、
前記検出されたキーワードを含んだ文章を他の文書ファイルから抽出し、その抽出した文章の少なくとも一部で構成される抽出結果をその情報種別に応じた個別の表示形式にて前記複数の管理項目に埋め込まれた形で表示領域に表示させる機能と、
をコンピュータに発揮させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、文書処理装置に関する。この発明は特に、文書構造化のための記述言語を用いて情報を管理する技術に関する。
【背景技術】
【０００２】
個人的な情報を管理するソフトウエアとして、いわゆるＰＩＭ（Personal Information Manager）ソフトウエアが知られている（例えば、特許文献１参照）。このＰＩＭソフトウエアは、個人的な使用を前提に設計されており、住所録、スケジュール、ＴｏＤｏ（トゥドゥ）、メモ等の個人的情報を管理する。これらの情報は、一つ一つが何らかの属性で関連づけられたレコードで構成され、全体としてリレーショナルデータベースと同様の構造をもつ。各レコードは、その内容が住所録であれば住所録を入出力するためのインターフェイスにて画面上に表示され、その内容がスケジュールであればスケジュールを入出力するためのインターフェイスにて画面上に表示される等、個々の特性に応じた形態にて表示される。
【特許文献１】特開平９−１４７０１３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上記背景技術によれば、住所録、スケジュール、ＴｏＤｏといった各情報を、それぞれインターフェイスを切り替えて別々に表示させる必要がある。したがって、本来密接に関連した情報同士であっても別々に表示しなければならず、ユーザにとって不便である。また、同じ画面上に複数種の情報を同時に表示させる場合にも画面構成上は別々の欄に表示させなければならず、情報の分散は解消されず、情報閲覧における視認性や情報入力における操作性は必ずしも向上しない。【０００４】
本発明者は以上の認識に基づき本発明をなしたもので、その目的は、個人情報管理におけるユーザの利便性を高める点にある。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明のある態様の文書処理装置は、ユーザが遂行すべき事項の備忘録として管理される複数の管理項目に関する編集指示をユーザから受け取る指示入力部と、文書構造化のためのマークアップ言語のボキャブラリを用いて複数の管理項目が構造化された備忘録ファイルを記憶するファイル格納部と、備忘録ファイルに対し指示された編集の結果を反映させる記録処理部と、備忘録ファイルに含まれる複数の管理項目を、それぞれの情報種別に対応したマークアップ言語に基づく個別の表示形式にて表示領域に表示させる表示処理部と、指示入力部がユーザから受け取った文章から所定の認識条件に合致する語をキーワードとして検出するキーワード検出部と、指示入力部がユーザから受け取った文章を表示領域へ表示させる文書構造化のためのマークアップ言語のボキャブラリとして、検出されたキーワードに応じたボキャブラリを選択するボキャブラリ決定部と、を備える。【０００６】
ここでいう「ユーザが遂行すべき事項の備忘録」は、ユーザが職務上または生活上遂行すべき事項をメモのように書き留めておく、いわゆるＴｏＤｏと呼ばれる記録を主に示す。ただし、この備忘録に期限や日時の要素を加わえてスケジューラとして活用してもよいし、ユーザが遂行すべき事項以外の情報を付加情報としてあわせて記録してもよい。こうしてこの備忘録によって管理される管理項目は、ユーザ本人が個人的な目的で記録または参照する個人的な情報であってもよい。「文書構造化のためのマークアップ言語」は、様々なタグを用いて文書の内容を概念的または配置的に構造化する言語であり、例えばＸＭＬ（eXtensible Markup Language）が該当する。「ボキャブラリ」は、文書構造化のための特定のマークアップ言語に準拠したタグの集合（タグセット）に相当し、あらかじめ定義されたタグの集合を用いてもよいし、ユーザが任意に設定したタグセットを用いてもよい。【０００７】
この態様によると、入力された文章に含まれるキーワードに応じて、その文章を表示させるための形式が決定される。したがって、ユーザは入力する文章の内容を特に意識せずに適切な形式で入力することができるので、ユーザは入力形式に縛られずワードプロセッサのような感覚で様々な情報を入力できる。またフリーフォームで入力された情報であっても、その情報を内容に応じて適切な形式で表示させることができ、ユーザの利便性が高い。【０００８】
本発明の別の態様もまた、文書処理装置である。この装置は、ユーザが遂行すべき事項の備忘録として管理される複数の管理項目に関する編集指示をユーザから受け取る指示入力部と、文書構造化のためのマークアップ言語のボキャブラリを用いて複数の管理項目が構造化された備忘録ファイルを記憶するファイル格納部と、備忘録ファイルに対し指示された編集の結果を反映させる記録処理部と、備忘録ファイルに含まれる複数の管理項目を、それぞれの情報種別に対応したマークアップ言語に基づく個別の表示形式にて表示領域に表示させる表示処理部と、指示入力部がユーザから受け取った文章から所定の認識条件に合致する語をキーワードとして検出するキーワード検出部と、を備える。表示処理部は、検出されたキーワードを含んだ文章を他の文書ファイルから抽出し、その抽出した文章の少なくとも一部で構成される抽出結果をその情報種別に応じた個別の表示形式にて複数の管理項目に埋め込まれた形で表示領域に表示させる。【０００９】
この態様によると、特定のキーワードが入力されると、そのキーワードに対応する文章が他の文書から抽出され、その文書に埋め込まれる。ユーザは、特定のキーワードとなる語をワードプロセッサのような感覚で入力するだけで、他の文書に含まれる所望の情報を抽出して文書に埋め込むことができ、ユーザの利便性が高い。【００１０】
なお、以上の構成要素の任意の組合せや、本発明の構成要素や表現を方法、装置、システム、コンピュータプログラム、コンピュータプログラムを格納した記録媒体、データ構造などの間で相互に置換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１１】
本発明によれば、個人情報管理におけるユーザの利便性を高めることができる。
【図面の簡単な説明】
【００１２】
【図１】前提技術に係る文書処理装置の構成を示す図である。
【図２】処理対象となるＸＭＬ文書の例を示す図である。
【図３】図２に示したＸＭＬ文書をＨＴＭＬで記述された表にマッピングする例を示す図である。
【図４】図２に示したＸＭＬ文書を図３に示した表にマッピングするための定義ファイルの例を示す図である。
【図５】図２に示した成績管理ボキャブラリで記述されたＸＭＬ文書を、図３に示した対応によりＨＴＭＬにマッピングして表示した画面の例を示す図である。
【図６】ユーザが定義ファイルを生成するために、定義ファイル生成部がユーザに提示するグラフィカルユーザインターフェースの例を示す図である。
【図７】定義ファイル生成部により生成された画面レイアウトの他の例を示す図である。
【図８】文書処理装置によるＸＭＬ文書の編集画面の一例を示す図である。
【図９】文書処理装置により編集されるＸＭＬ文書の他の例を示す図である。
【図１０】図９に示した文書を表示した画面の例を示す図である。
【図１１】実施例に係る情報管理装置の構成を示す図である。
【図１２】自由編集画面の表示形式で各管理項目を表示した画面を例示する。
【図１３】図１２の表示内容に対応するＸＭＬ文書のソースを示す図である。
【図１４】ソースツリーとデスティネーションツリーの対応関係を模式的に示す図である。
【図１５】自由編集画面とテーブル表示画面を一つの画面内に同時に表示させた例を示す図である。
【図１６】管理項目をスケジューラ画面として表示させる例を示す図である。
【図１７】図１６のスケジューラ画面に他の文書ファイルの内容を埋め込んだ状態を示す図である。
【符号の説明】
【００１３】
１０  ファイル格納部、  １２  指示入力部、  １４  記録処理部、  １６  キーワード検出部、  １８  ボキャブラリ決定部、  ４０  備忘録ファイル、  １１０  主制御ユニット、  １２０  編集ユニット、  １３０  ＤＯＭユニット、  １３２  ＤＯＭ提供部、  １３４  ＤＯＭ生成部、  １３６  出力部、  １４０  ＣＳＳユニット、  １５０  ＨＴＭＬユニット、  １６０  ＳＶＧユニット、  １８０  ＶＣユニット、  １８２  マッピング部、  １８４  定義ファイル取得部、  １８６  定義ファイル生成部、  ３００  情報管理装置。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の前提となる技術の説明を行った上で、本実施例の詳細を説明する。【００１５】
（前提技術）
図１は、前提技術に係る文書処理装置１００の構成を示す。文書処理装置１００は、文書内のデータが階層構造を有する複数の構成要素に分類された構造化文書を処理するが、前提技術では構造化文書の一例としてＸＭＬ文書を処理する例について説明する。文書処理装置１００は、主制御ユニット１１０、編集ユニット１２０、ＤＯＭユニット１３０、ＣＳＳユニット１４０、ＨＴＭＬユニット１５０、ＳＶＧユニット１６０、及び変換部の一例であるＶＣユニット１８０を備える。これらの構成は、ハードウエアコンポーネントでいえば、任意のコンピュータのＣＰＵ、メモリ、メモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。【００１６】
主制御ユニット１１０は、プラグインのロードや、コマンド実行のフレームワークを提供する。編集ユニット１２０は、ＸＭＬ文書を編集するためのフレームワークを提供する。文書処理装置１００における文書の表示及び編集機能は、プラグインにより実現されており、文書の種別に応じて必要なプラグインが主制御ユニット１１０又は編集ユニット１２０によりロードされる。主制御ユニット１１０又は編集ユニット１２０は、処理対象となるＸＭＬ文書の名前空間を参照して、ＸＭＬ文書がいずれのボキャブラリにより記述されているかを判別し、そのボキャブラリに対応した表示又は編集用のプラグインをロードして表示や編集を実行させる。例えば、文書処理装置１００には、ＨＴＭＬ文書の表示及び編集を行うＨＴＭＬユニット１５０、ＳＶＧ文書の表示及び編集を行うＳＶＧユニット１６０など、ボキャブラリ（タグセット）ごとに表示系及び編集系がプラグインとして実装されており、ＨＴＭＬ文書を編集するときはＨＴＭＬユニット１５０が、ＳＶＧ文書を編集するときはＳＶＧユニット１６０が、それぞれロードされる。後述するように、ＨＴＭＬとＳＶＧの双方の構成要素を含む複合文書が処理対象となっている場合は、ＨＴＭＬユニット１５０とＳＶＧユニット１６０の双方がロードされる。【００１７】
このような構成によれば、ユーザは、必要な機能のみを選択してインストールし、後から適宜機能を追加又は削除することができるので、プログラムを格納するハードディスクなどの記録媒体の記憶領域を有効に活用することができ、また、プログラム実行時にも、メモリの浪費を防ぐことができる。また、機能拡張性に優れており、開発主体としても、プラグインの形で新たなボキャブラリに対応することが可能なので開発が容易となり、ユーザとしても、プラグインの追加により容易かつ低コストにて機能を追加することができる。【００１８】
編集ユニット１２０は、ユーザインターフェースを介してユーザから編集指示のイベントを受け付け、そのイベントを適切なプラグインなどに通知するともに、イベントの再実行（リドゥ）又は実行の取消（アンドゥ）などの処理を制御する。【００１９】
ＤＯＭユニット１３０は、ＤＯＭ提供部１３２、ＤＯＭ生成部１３４、及び出力部１３６を含み、ＸＭＬ文書をデータとして扱うときのアクセス方法を提供するために定められた文書オブジェクトモデル（Document Object Model：ＤＯＭ）に準拠した機能を実現する。ＤＯＭ提供部１３２は、編集ユニット１２０に定義されているインタフェースを満たすＤＯＭの実装である。ＤＯＭ生成部１３４は、ＸＭＬ文書からＤＯＭツリーを生成する。後述するように、処理対象となるＸＭＬ文書が、ＶＣユニット１８０により他のボキャブラリにマッピングされる場合は、マッピング元のＸＭＬ文書に対応するソースツリーと、マッピング先のＸＭＬ文書に対応するデスティネーションツリーが生成される。出力部１３６は、例えば編集終了時に、ＤＯＭツリーをＸＭＬ文書として出力する。【００２０】
ＣＳＳユニット１４０は、ＣＳＳ解析部１４２、ＣＳＳ提供部１４４、及びレンダリング部１４６を含み、ＣＳＳに準拠した表示機能を提供する。ＣＳＳ解析部１４２は、ＣＳＳの構文を解析するパーサの機能を有する。ＣＳＳ提供部１４４は、ＣＳＳオブジェクトの実装であり、ＤＯＭツリーに対してＣＳＳのカスケード処理を行う。レンダリング部１４６は、ＣＳＳのレンダリングエンジンであり、ＣＳＳを用いてレイアウトされるＨＴＭＬなどのボキャブラリで記述された文書の表示に用いられる。【００２１】
ＨＴＭＬユニット１５０は、ＨＴＭＬにより記述された文書を表示又は編集する。ＳＶＧユニット１６０は、ＳＶＧにより記述された文書を表示又は編集する。これらの表示／編集系は、プラグインの形で実現されており、それぞれ、文書を表示する表示部（Canvas）、編集指示を含むイベントを送受信する制御部（Editlet）、編集コマンドを受けてＤＯＭに対して編集を行う編集部（Zone）を備える。制御部が外部からＤＯＭツリーの編集コマンドを受け付けると、編集部がＤＯＭツリーを変更し、表示部が表示を更新する。これらは、ＭＶＣ（Model-View-Controller）と呼ばれるフレームワークに類似する構成をとっており、概ね、表示部が「View」に、制御部が「Controller」に、編集部とＤＯＭの実体が「Model」に、それぞれ対応する。前提技術における文書処理装置１００では、ＸＭＬ文書をツリー表示形式で編集するだけでなく、それぞれのボキャブラリに応じた編集を可能とする。例えば、ＨＴＭＬユニット１５０は、ＨＴＭＬ文書をワードプロセッサに類似した方式で編集するためのユーザインターフェースを提供し、ＳＶＧユニット１６０は、ＳＶＧ文書を画像描画ツールに類似した方式で編集するためのユーザインターフェースを提供する。【００２２】
ＶＣユニット１８０は、マッピング部１８２、定義ファイル取得部１８４、及び定義ファイル生成部１８６を含み、あるボキャブラリにより記述された文書を、他のボキャブラリにマッピングすることにより、マッピング先のボキャブラリに対応した表示編集用プラグインで文書を表示又は編集するためのフレームワークを提供する。前提技術では、この機能を、ボキャブラリコネクション（Vocabulary Connection：ＶＣ）と呼ぶ。定義ファイル取得部１８４は、マッピングの定義を記述したスクリプトファイルを取得する。この定義ファイルは、ノードごとに、ノード間の対応（コネクション）を記述する。このとき、各ノードの要素値や属性値の編集の可否を指定してもよい。また、ノードの要素値や属性値を用いた演算式を記述してもよい。これらの機能については、後で詳述する。マッピング部１８２は、定義ファイル取得部１８４が取得したスクリプトファイルを参照して、ＤＯＭ生成部１３４にデスティネーションツリーを生成させ、ソースツリーとデスティネーションツリーの対応関係を管理する。定義ファイル生成部１８６は、ユーザが定義ファイルを生成するためのグラフィカルユーザインターフェースを提供する。【００２３】
ＶＣユニット１８０は、ソースツリーとデスティネーションツリーの間のコネクションを監視し、表示を担当するプラグインにより提供されるユーザインタフェースを介してユーザから編集指示を受け付けると、まずソースツリーの該当するノードを変更する。ＤＯＭユニット１３０が、ソースツリーが変更された旨のミューテーションイベントを発行すると、ＶＣユニット１８０は、そのミューテーションイベントを受けて、ソースツリーの変更にデスティネーションツリーを同期させるべく、変更されたノードに対応するデスティネーションツリーのノードを変更する。デスティネーションツリーを表示／編集するプラグイン、例えばＨＴＭＬユニット１５０は、デスティネーションツリーが変更された旨のミューテーションイベントを受けて、変更されたデスティネーションツリーを参照して表示を更新する。このような構成により、少数のユーザにより利用されるローカルなボキャブラリにより記述された文書であっても、他のメジャーなボキャブラリに変換することで、文書を表示することができるとともに、編集環境が提供される。【００２４】
文書処理装置１００により文書を表示又は編集する動作について説明する。文書処理装置１００が処理対象となる文書を読み込むと、ＤＯＭ生成部１３４が、そのＸＭＬ文書からＤＯＭツリーを生成する。また、主制御ユニット１１０又は編集ユニット１２０は、名前空間を参照して文書を記述しているボキャブラリを判別する。そのボキャブラリに対応したプラグインが文書処理装置１００にインストールされている場合は、そのプラグインをロードして、文書を表示／編集させる。プラグインがインストールされていない場合は、マッピングの定義ファイルが存在するか否かを確認する。定義ファイルが存在する場合、定義ファイル取得部１８４が定義ファイルを取得し、その定義に従って、デスティネーションツリーが生成され、マッピング先のボキャブラリに対応するプラグインにより文書が表示／編集される。複数のボキャブラリを含む複合文書である場合は、後述するように、それぞれのボキャブラリに対応したプラグインにより、文書の該当箇所がそれぞれ表示／編集される。定義ファイルが存在しない場合は、文書のソース又はツリー構造を表示し、その表示画面において編集が行われる。【００２５】
図２は、処理対象となるＸＭＬ文書の例を示す。このＸＭＬ文書は、生徒の成績データを管理するために用いられる。ＸＭＬ文書のトップノードである構成要素「成績」は、配下に、生徒ごとに設けられた構成要素「生徒」を複数有する。構成要素「生徒」は、属性値「名前」と、子要素「国語」、「数学」、「理科」、「社会」を有する。属性値「名前」は、生徒の名前を格納する。構成要素「国語」、「数学」、「理科」、「社会」は、それぞれ、国語、数学、理科、社会の成績を格納する。例えば、名前が「Ａ」である生徒の国語の成績は「９０」、数学の成績は「５０」、理科の成績は「７５」、社会の成績は「６０」である。以下、この文書で使用されているボキャブラリ（タグセット）を、「成績管理ボキャブラリ」と呼ぶ。【００２６】
前提技術の文書処理装置１００は、成績管理ボキャブラリの表示／編集に対応したプラグインを有しないので、この文書をソース表示、ツリー表示以外の方法で表示するためには、前述したＶＣ機能が用いられる。すなわち、成績管理ボキャブラリを、プラグインが用意された別のボキャブラリ、例えば、ＨＴＭＬやＳＶＧなどにマッピングするための定義ファイルを用意する必要がある。ユーザ自身が定義ファイルを作成するためのユーザインターフェースについては後述することにして、ここでは、既に定義ファイルが用意されているとして説明を進める。【００２７】
図３は、図２に示したＸＭＬ文書をＨＴＭＬで記述された表にマッピングする例を示す。図３の例では、成績管理ボキャブラリの「生徒」ノードを、ＨＴＭＬにおける表（「TABLE」ノード）の行（「TR」ノード）に対応づけ、各行の第１列には属性値「名前」を、第２列には「国語」ノードの要素値を、第３列には「数学」ノードの要素値を、第４列には「理科」ノードの要素値を、第５列には「社会」ノードの要素値を、それぞれ対応付ける。これにより、図２に示したＸＭＬ文書を、ＨＴＭＬの表形式で表示することができる。また、これらの属性値及び要素値は、編集可能であることが指定されており、ユーザがＨＴＭＬによる表示画面上で、ＨＴＭＬユニット１５０の編集機能により、これらの値を編集することができる。第６列には、国語、数学、理科、社会の成績の加重平均を算出する演算式が指定されており、生徒の成績の平均点が表示される。このように、定義ファイルに演算式を指定可能とすることにより、より柔軟な表示が可能となり、編集時のユーザの利便性を向上させることができる。なお、第６列は、編集不可であることが指定されており、平均点のみを個別に編集することができないようにしている。このように、マッピング定義において、編集の可否を指定可能とすることにより、ユーザの誤操作を防ぐことができる。【００２８】
図４は、図２に示したＸＭＬ文書を図３に示した表にマッピングするための定義ファイルの例を示す。この定義ファイルは、定義ファイル用に定義されたスクリプト言語により記述される。定義ファイルには、コマンドの定義と、表示のテンプレートが記述されている。図４の例では、コマンドとして、「生徒の追加」と「生徒の削除」が定義されており、それぞれ、ソースツリーにノード「生徒」を挿入する操作と、ソースツリーからノード「生徒」を削除する操作が対応付けられている。また、テンプレートとして、表の第１行に「名前」、「国語」などの見出しが表示され、第２行以降に、ノード「生徒」の内容が表示されることが記述されている。ノード「生徒」の内容を表示するテンプレート中、「text-of」と記述された項は「編集可能」であることを意味し、「value-of」と記述された項は「編集不可能」であることを意味する。また、ノード「生徒」の内容を表示する行のうち、第６列には、「(src:国語 + src:数学 + src:理科 + src:社会) div 4」という計算式が記述されており、生徒の成績の平均が表示されることを意味する。【００２９】
図５は、図２に示した成績管理ボキャブラリで記述されたＸＭＬ文書を、図３に示した対応によりＨＴＭＬにマッピングして表示した画面の例を示す。表２００の各行には、左から、各生徒の名前、国語の成績、数学の成績、理科の成績、社会の成績、及び平均点が表示されている。ユーザは、この画面上で、ＸＭＬ文書を編集することができる。たとえば、第２行第３列の値を「７０」に変更すると、このノードに対応するソースツリーの要素値、すなわち、生徒「Ｂ」の数学の成績が「７０」に変更される。このとき、ＶＣユニット１８０は、デスティネーションツリーをソースツリーに追従させるべく、デスティネーションツリーの該当箇所を変更し、ＨＴＭＬユニット１５０が、変更されたデスティネーションツリーに基づいて表示を更新する。したがって、画面上の表においても、生徒「Ｂ」の数学の成績が「７０」に変更され、更に、平均点が「５５」に変更される。【００３０】
図５に示した画面には、図４に示した定義ファイルに定義されたように、「生徒の追加」及び「生徒の削除」のコマンドがメニューに表示される。ユーザがこれらのコマンドを選択すると、ソースツリーにおいて、ノード「生徒」が追加又は削除される。このように、前提技術の文書処理装置１００では、階層構造の末端の構成要素の要素値を編集するのみではなく、階層構造を編集することも可能である。このようなツリー構造の編集機能は、コマンドの形でユーザに提供されてもよい。また、例えば、表の行を追加又は削除するコマンドが、ノード「生徒」を追加又は削除する操作に対応づけられてもよい。また、他のボキャブラリを埋め込むコマンドがユーザに提供されてもよい。この表を入力用テンプレートとして、穴埋め形式で新たな生徒の成績データを追加することもできる。以上のように、ＶＣ機能により、ＨＴＭＬユニット１５０の表示／編集機能を利用しつつ、成績管理ボキャブラリで記述された文書を編集することが可能となる。【００３１】
図６は、ユーザが定義ファイルを生成するために、定義ファイル生成部１８６がユーザに提示するグラフィカルユーザインターフェースの例を示す。画面左側の領域２０２には、マッピング元のＸＭＬ文書がツリー表示されている。画面右側の領域２０４には、マッピング先のＸＭＬ文書の画面レイアウトが示されている。この画面レイアウトは、ＨＴＭＬユニット１５０により編集可能となっており、ユーザは、画面右側の領域２０４において、文書を表示するための画面レイアウトを作成する。そして、例えば、マウスなどのポインティングデバイスにより、画面左側の領域２０２に表示されたマッピング元のＸＭＬ文書のノードを、画面右側の領域２０４に表示されたＨＴＭＬによる画面レイアウト中へドラッグ＆ドロップ操作を行うことにより、マッピング元のノードと、マッピング先のノードとのコネクションが指定される。例えば、要素「生徒」の子要素である「数学」を、ＨＴＭＬ画面の表２００の第１行第３列にドロップすると、「数学」ノードと、３列目の「ＴＤ」ノードの間にコネクションが張られる。各ノードには、編集の可否が指定できるようになっている。また、表示画面中には、演算式を埋め込むこともできる。画面の編集が終わると、定義ファイル生成部１８６は、画面レイアウトとノード間のコネクションを記述した定義ファイルを生成する。【００３２】
ＸＨＴＭＬ、ＭａｔｈＭＬ、ＳＶＧなどの主要なボキャブラリに対応したビューワやエディタは既に開発されているが、図２に示した文書のようなオリジナルなボキャブラリで記述された文書に対応したビューワやエディタを開発するのは現実的でない。しかし、上記のように、他のボキャブラリにマッピングするための定義ファイルを作成すれば、ビューワやエディタを開発しなくても、ＶＣ機能を利用して、オリジナルなボキャブラリで記述された文書を表示・編集することができる。【００３３】
図７は、定義ファイル生成部１８６により生成された画面レイアウトの他の例を示す。図７の例では、成績管理ボキャブラリで記述されたＸＭＬ文書を表示するための画面に、表２００と、円グラフ２０６が作成されている。この円グラフ２０６は、ＳＶＧにより記述される。後述するように、前提技術の文書処理装置１００は、一つのＸＭＬ文書内に複数のボキャブラリを含む複合文書を処理することができるので、この例のように、ＨＴＭＬで記述された表２００と、ＳＶＧで記述された円グラフ２０６とを、一つの画面上に表示することができる。【００３４】
図８は、文書処理装置１００によるＸＭＬ文書の編集画面の一例を示す。図８の例では、一つの画面が複数に分割されており、それぞれの領域において、処理対象となるＸＭＬ文書を異なる複数の表示形式により表示している。領域２１０には、文書のソースが表示されており、領域２１２には、文書のツリー構造が表示されており、領域２１４には、図５に示したＨＴＭＬにより記述された表が表示されている。これらのいずれの画面上においても、文書の編集が可能であり、いずれかの画面上でユーザが編集を行うと、ソースツリーが変更され、それぞれの画面の表示を担当するプラグインが、ソースツリーの変更を反映すべく画面を更新する。具体的には、ソースツリーの変更を通知するミューテーションイベントのリスナーとして、それぞれの編集画面の表示を担当するプラグインの表示部を登録しておき、いずれかのプラグイン又はＶＣユニット１８０によりソースツリーが変更されたときに、編集画面を表示中の全ての表示部が、発行されたミューテーションイベントを受け取って画面を更新する。このとき、プラグインがＶＣ機能により表示を行っている場合は、ＶＣユニット１８０がソースツリーの変更に追従してデスティネーションツリーを変更した後、変更されたデスティネーションツリーを参照してプラグインの表示部が画面を更新する。【００３５】
例えば、ソース表示及びツリー表示を、専用のプラグインにより実現している場合は、ソース表示用プラグインとツリー表示用プラグインは、デスティネーションツリーを用いず、直接ソースツリーを参照して表示を行う。この場合、いずれかの画面において編集が行われると、ソース表示用プラグインとツリー表示用プラグインは、変更されたソースツリーを参照して画面を更新し、領域２１４の画面を担当しているＨＴＭＬユニット１５０は、ソースツリーの変更に追従して変更されたデスティネーションツリーを参照して画面を更新する。【００３６】
ソース表示及びツリー表示は、ＶＣ機能を利用して実現することもできる。すなわち、ソース、ツリー構造をＨＴＭＬによりレイアウトし、そのＨＴＭＬにＸＭＬ文書をマッピングして、ＨＴＭＬユニット１５０により表示してもよい。この場合、ソース形式、ツリー形式、表形式の３つのデスティネーションツリーが生成されることになる。いずれかの画面において編集が行われると、ＶＣユニット１８０は、ソースツリーを変更した後、ソース形式、ツリー形式、表形式の３つのデスティネーションツリーをそれぞれ変更し、ＨＴＭＬユニット１５０は、それらのデスティネーションツリーを参照して、３つの画面を更新する。【００３７】
このように、一つの画面上に複数の表示形式で文書を表示することにより、ユーザの利便性を向上させることができる。例えば、ユーザは、ソース表示又はツリー表示により文書の階層構造を把握しつつ、表２００などを用いて視覚的に分かりやすい形式で文書を表示し、編集することができる。上記の例では、一つの画面を分割して複数の表示形式による画面を同時に表示したが、一つの画面に一つの表示形式による画面を表示し、表示形式をユーザの指示により切り替え可能としてもよい。この場合、主制御ユニット１１０が、ユーザから表示形式の切り替え要求を受け付け、各プラグインに指示して表示を切り替える。【００３８】
図９は、文書処理装置１００により編集されるＸＭＬ文書の他の例を示す。図９に示したＸＭＬ文書では、ＳＶＧ文書の「foreignObject」タグの中にＸＨＴＭＬ文書が埋め込まれており、さらに、ＸＨＴＭＬ文書の中にＭａｔｈＭＬで記述された数式が入っている。このような場合、編集ユニット１２０が、名前空間を参照して、適切な表示系に描画作業を振り分ける。図９の例では、編集ユニット１２０は、まず、ＳＶＧユニット１６０に四角形を描画させ、つづいて、ＨＴＭＬユニット１５０にＸＨＴＭＬ文書を描画させる。さらに、図示しないＭａｔｈＭＬユニットに、数式を描画させる。こうして、複数のボキャブラリを包含する複合文書が適切に表示される。表示結果を図１０に示す。【００３９】
文書編集中、カーソル（キャリッジ）の位置に応じて、表示されるメニューを切り替えてもよい。すなわち、カーソルが、ＳＶＧ文書が表示された領域内に存在するときは、ＳＶＧユニット１６０が提供するメニュー、又はＳＶＧ文書をマッピングするための定義ファイルに定義されたコマンドを表示し、カーソルが、ＸＨＴＭＬ文書が表示された領域内に存在するときは、ＨＴＭＬユニット１５０が提供するメニュー、又はＸＨＴＭＬ文書をマッピングするための定義ファイルに定義されたコマンドを表示する。これにより、編集位置に応じて適切なユーザインターフェースを提供することができる。【００４０】
複合文書において、あるボキャブラリに対応する適切なプラグイン又はマッピング定義ファイルがなかった場合は、そのボキャブラリにより記述された部分は、ソース表示又はツリー表示されてもよい。従来、ある文書に他の文書を埋め込んだ複合文書を開くとき、埋め込まれた文書を表示するアプリケーションがインストールされていないと、その内容を表示することができなかったが、前提技術では、表示用のアプリケーションが存在しなくても、テキストデータにより構成されたＸＭＬ文書をソース表示又はツリー表示することにより内容を把握することができる。これは、テキストベースであるＸＭＬなどの文書ならではの特徴といえる。【００４１】
データがテキストベースで記述されることの他の利点として、例えば、複合文書中の、あるボキャブラリにより記述される部分において、同一文書内の他のボキャブラリで記述された部分のデータを参照してもよい。また、文書内で検索を実行する時に、ＳＶＧなどの図に埋め込まれた文字列も検索対象とすることができる。【００４２】
あるボキャブラリにより記述された文書内に、他のボキャブラリのタグを用いてもよい。このＸＭＬ文書は、妥当（valid）ではないが、整形式（well-formed）であれば、有効なＸＭＬ文書として処理可能である。この場合、挿入された他のボキャブラリのタグは、定義ファイルによりマッピングされてもよい。例えば、ＸＨＴＭＬ文書中に、「重要」、「最重要」などのタグを使用し、これらのタグで囲まれた部分を強調表示してもよいし、重要度の順にソートして表示してもよい。【００４３】
図１０に示した編集画面において、ユーザにより文書が編集されると、編集された部分を担当するプラグイン又はＶＣユニット１８０がソースツリーを変更する。ソースツリーには、ノードごとにミューテーションイベントのリスナーを登録できるようになっており、通常は、各ノードが属するボキャブラリに対応したプラグインの表示部又はＶＣユニット１８０がリスナーとして登録される。ＤＯＭ提供部１３２は、ソースツリーが変更されると、変更されたノードから上位の階層へたどって、登録されたリスナーがあれば、そのリスナーへミューテーションイベントを発行する。例えば、図９に示した文書において、＜ｈｔｍｌ＞ノードの下位のノードが変更された場合、＜ｈｔｍｌ＞ノードにリスナーとして登録されたＨＴＭＬユニット１５０にミューテーションイベントが通知されるとともに、その上位の＜ｓｖｇ＞ノードにリスナーとして登録されたＳＶＧユニット１６０にもミューテーションイベントが通知される。このとき、ＨＴＭＬユニット１５０は、変更されたソースツリーを参照して表示を更新する。ＳＶＧユニット１６０は、自身のボキャブラリに属するノードが変更されていないので、ミューテーションイベントを無視してもよい。【００４４】
編集の内容によっては、ＨＴＭＬユニット１５０による表示の更新に伴って、全体のレイアウトが変わる可能性がある。この場合は、画面のレイアウトを管理する構成、例えば最上位のノードの表示を担当するプラグインにより、プラグインごとの表示領域のレイアウトが更新される。例えば、ＨＴＭＬユニット１５０による表示領域が以前より大きくなった場合、ＨＴＭＬユニット１５０は、まず自身の担当する部分を描画して、表示領域の大きさを決定する。そして、画面のレイアウトを管理する構成に、変更後の表示領域の大きさを通知し、レイアウトの更新を依頼する。画面のレイアウトを管理する構成は、通知を受けて、プラグインごとの表示領域を再レイアウトする。こうして、編集された部分の表示が適切に更新されるとともに、画面全体のレイアウトが更新される。
以上の前提技術をもとに、以下実施例の詳細について説明する。【００４５】
（実施例）
本発明の実施例における情報管理装置は、上述の前提技術を基礎として構成されており、前提技術における文書処理装置は基本的に本実施例の情報管理装置の一部に含まれるものとする。その上で本実施例の情報管理装置は、ＰＣ（パーソナルコンピュータ）と、そのＰＣにインストールされたＰＩＭソフトウエア等の個人情報管理プログラムとの組み合わせとして実現される。この個人情報管理プログラムは、ユーザのＴｏＤｏ、スケジュール、住所録等の個人的な情報を構造化文書にて形成し、ＨＴＭＬ等のマークアップ言語を用いて画面に表示する。ここでいう構造化文書は、例えばＸＭＬ文書であり、一つのＸＭＬ文書の中に、特定のボキャブラリを用いて内容が記述される。【００４６】
ユーザは複数種の個人的な情報についてその情報種別に応じた表示形式の違いを特に意識せずにワードプロセッサのように入力することができる。ワードプロセッサは多くのＰＣユーザにとって最も使い慣れたソフトウエアの一つであり、ワードプロセッサのような感覚のＰＩＭソフトを構築することによって、より直感的なインターフェイスを提供することができる。またユーザの好みに応じてワードプロセッサのようなインタフェイスやスケジューラのようなインタフェイスで切り替えて利用することもでき、ユーザは一群の情報を多面的に閲覧または把握することができ、効率よく個人的情報を管理できる。各情報を記述するボキャブラリをユーザが定めることもできるので、自由な形式で情報を追加し、管理することができる。【００４７】
図１１は、実施例に係る情報管理装置３００の構成を示す。情報管理装置３００は、マークアップ言語で構造化された備忘録ファイルにＴｏＤｏ等の個人的情報を格納する。本実施例では構造化文書の一例としてＸＭＬで構造化された文書ファイルを処理する例について説明する。情報管理装置３００は図１における文書処理装置１００に相当し、本図において図１と同一の符号を付した構成は、図１で説明した構成と同一または同様の機能を有する。図１に記載のない構成として、情報管理装置３００は、ファイル格納部１０、指示入力部１２、記録処理部１４、キーワード検出部１６およびボキャブラリ決定部１８を備える。指示入力部１２、記録処理部１４、キーワード検出部１６およびボキャブラリ決定部１８は、編集ユニット１２０に含まれる。【００４８】
ファイル格納部１０は、備忘録の項目として入力された複数の管理項目を備忘録ファイルの形で保持する。備忘録ファイルは、例えばユーザ単位で一つのファイルで構成され、ユーザの個人的情報に関する複数の管理項目がこの備忘録のために用意されたボキャブラリによって構造化された形で記述されている。この管理項目は、備忘録を構成する要素であって、ユーザの行動に関して特定の目的をもって入力される情報である。管理項目には、例えば、これから遂行すべき事項（ＴｏＤｏ）、すでに行動済の事項（日報、営業記録、メール送受信履歴）、これから検討すべき課題（アジェンダ）、行動に際して参照する情報（アドレス帳、メモ）等が含まれる。【００４９】
編集ユニット１２０は、指示入力部１２、記録処理部１４、キーワード検出部１６およびボキャブラリ決定部１８を含む。指示入力部１２は、備忘録ファイルに含まれる複数の管理項目に対する編集指示のイベントを、ユーザインターフェースを介してユーザから受け取る。ここでいう編集指示は、新規な管理項目の入力の指示、入力済の管理項目に関する修正や更新の指示を含む。また指示入力部１２は、ユーザから受け取った編集指示のイベントをＨＴＭＬユニット１５０やＳＶＧユニット１６０等の適切なプラグイン、またはＶＣを管理するＶＣユニット１８０に通知する。また指示入力部１２は、イベントの再実行（リドゥ）又は実行の取消（アンドゥ）の処理を制御する。【００５０】
ＤＯＭ生成部１３４は、管理項目をデータとして扱うときのアクセス方法を提供するために定められた文書オブジェクトモデル（ＤＯＭ）に準拠した形式のデータを生成する。すなわち、ファイル格納部１０に記憶される備忘録ファイルとしてのＸＭＬ文書からＤＯＭツリーを生成する。備忘録ファイルが、ＶＣユニット１８０により他のボキャブラリにマッピングされる場合は、マッピング元のＸＭＬ文書に対応した管理項目の論理的構造を示す第１の文書オブジェクトモデルデータであるソースツリーと、マッピング先のＸＭＬ文書に対応した管理項目の表示上の構造を示す第２の文書オブジェクトモデルデータであるデスティネーションツリーが生成される。【００５１】
マッピング部１８２は、備忘録ファイルに含まれる管理項目のうち、プラグインによる表示または編集の環境が提供されていない項目を、その情報種別に応じて所定の対応可能なボキャブラリにマッピングする。マッピングの結果は、ＤＯＭ生成部１３４においてデスティネーションツリーの生成または編集に用いられる。【００５２】
編集部１５４、編集部１６４を含む編集処理系は、管理項目の情報種別に応じた複数の処理系に分けられ、情報種別ごとに個別の編集環境をユーザに提供する。例えばＨＴＭＬにより表示される内容に関する編集環境をＨＴＭＬユニット１５０の編集部１５４が提供し、ＳＶＧにより表示される内容に関する編集環境をＳＶＧユニット１６０の編集部１６４が提供する。その他、プラグインで提供されない編集環境をＶＣユニット１８０が提供する。【００５３】
キーワード検出部１６は、指示入力部１２を介して編集指示の内容として入力された文章から、所定の認識条件に合致する語をキーワードとして検出する。このキーワードは、管理項目の内容や属性に基づく情報種別を認識するために検出される語である。キーワード検出部１６は、文章がユーザから入力されている途中でその入力文字を一つ一つ動的に検出しながら特定のキーワードが入力されたことを検出してもよいし、ユーザから入力された文字が文章としてひとまとまりになった時点でその文章からキーワードを検出してもよい。またキーワード検出部１６は、受信した電子メールなどのファイルからキーワードを検出してもよい。キーワード検出部１６は、形態素解析により分解された形態素の単位でキーワードを検出してもよい。なお、形態素解析の手法やキーワードと一致する語の検出手法は既知であるためその説明を省略する。認識条件には、キーワードの種類とタグの種類の対応関係、タグの種類とボキャブラリの種類の対応関係、キーワードの種類とボキャブラリの種類の対応関係が複数定められており、その認識条件をキーワード検出部１６、ボキャブラリ決定部１８、ファイル格納部１０のうち少なくともいずれかがあらかじめ保持する。キーワードの種類には、例えば「名詞」「動詞」等の品詞、「人名」「部署名」「地名」「日時」等の分類、「○○専務」「○○株式会社」といった人名や会社名のような具体的な単語等が含まれる。ボキャブラリは、備忘録ファイルを構成するために用いられるローカルなタグセットであり、例えば管理項目のカテゴリを示す文字列を囲むためのタグ、その管理項目の内容を遂行したか否かを示す文字列を囲むためのタグ、日時を示す文字列を囲むためのタグ、優先度を示す文字列を囲むためのタグ、等が含まれる。ボキャブラリの種類としては、例えば、複数の管理項目をフリーフォームで箇条書きに入力または表示するためのボキャブラリや、複数の管理項目をスケジューラのように時系列的に表示するボキャブラリ、複数の管理項目に含まれる一部の内容に関連して他の文書ファイルから引用する内容を表示するためのボキャブラリ等が含まれる。【００５４】
キーワードの種類とタグの種類の対応関係としては、例えば、日時に関するキーワードとそのキーワードを囲むためのタグの対応関係や、カテゴリに関するキーワードとそのキーワードを囲むためのタグの対応関係等がある。各キーワードには、表示する際の表示色が対応づけられていてもよい。その場合、表示色との対応関係に基づき、検出されたキーワードは画面上で所定の色で表示される。キーワードの種類とボキャブラリの種類の対応関係としては、例えば人名や部署名のキーワードとスケジュールを入力または表示するためのボキャブラリの対応関係、人名や地名のキーワードと住所録を入力または表示するためのボキャブラリの対応関係等がある。【００５５】
ボキャブラリ決定部１８は、文書の入力または表示に用いるボキャブラリを、キーワード検出部１６により検出されたキーワードまたはユーザの指示に応じて選択する。キーワードに応じてボキャブラリを選択する場合、ボキャブラリ決定部１８は認識条件に定められたキーワードの種類とボキャブラリの対応関係に基づいてボキャブラリを選択する。これにより、キーワードの種類によって定まる各管理項目の情報種別に応じたボキャブラリが選択される。変形例として、ボキャブラリ決定部１８は、検出されたキーワードを対応するタグで囲み、そのタグに応じてボキャブラリを選択してもよい。【００５６】
記録処理部１４は、指示入力部１２を介してユーザから受け取った編集指示を編集部１５４、編集部１６４およびＶＣユニット１８０を含む編集処理系に送り、プラグインまたはＶＣユニット１８０が処理するソースツリーを変更させる。記録処理部１４は、編集処理系へ送った編集指示の内容をファイル格納部１０に記憶された備忘録ファイルに反映させる。例えば、項目の追加や削除が指示されたときは、新たな管理項目を追加し、または指示された管理項目を削除する。項目内容の修正が指示されたときは、修正後の新たな内容で該当箇所を書き換える。【００５７】
ＨＴＭＬで表示される内容を修正する場合、ＨＴＭＬユニット１５０の編集部１５４によって提供される編集処理系を通じてソースツリーが変更される。ＳＶＧで表示される内容を修正する場合、ＳＶＧユニット１６０の編集部１６４によって提供される編集処理系を通じてソースツリーが変更される。ＨＴＭＬやＳＶＧ等のプラグインが提供されていないボキャブラリに基づいて構成される内容を修正する場合、ＶＣユニット１８０によりソースツリーが変更される。【００５８】
表示部１５６や表示部１６６を含む表示処理系は、管理項目の情報種別に応じた複数の処理系に分けられ、備忘録ファイルに含まれる複数の管理項目を、それぞれの情報種別に対応した個別の表示形式にて表示することができる。例えば、一つの表示領域に複数の管理項目をそれぞれ個別の表示形式にて同時に表示させる方法や、同じ管理項目について表示形式を切り替えながら様々な表示形式にて表示させる方法等がある。複数の管理項目をどのような表示形式で表示させるかについては、指示入力部１２を介して受け取るユーザの指示または検出されたキーワードに基づいて決定される。【００５９】
表示部１５６や表示部１６６を含む表示処理系は、プラグインが管理項目のソースツリーを直接参照して備忘録ファイルの内容を表示領域へ表示させる場合と、管理項目のソースツリーと対応するデスティネーションツリーを参照して備忘録ファイルの内容を表示領域へ表示させる場合がある。また、一つのソースツリーに対して複数のプラグインまたは複数のデスティネーションツリーを用いて同時に複数の表示形式にて表示領域に各関連項目を表示させてもよいし、複数のプラグインまたは複数のデスティネーションツリーのうちいずれかを選択的に用いることによって表示形式を切り替えることもできる。【００６０】
表示部１５６や表示部１６６を含む表示処理系は、キーワード検出部１６によって検出されたキーワードが他の文書から抽出すべき語であることが認識条件に定められている場合、そのキーワードが含まれる文章を、ファイル格納部１０または図示しないネットワークサーバに格納された他の文書ファイルから抽出する。これら「他の文書ファイル」は、ユーザが送受信した電子メールのデータであってもよいし、他のユーザのスケジュール等が格納された備忘録ファイルであってもよい。これらの文書ファイルに関し、キーワード検索用のインデックスをあらかじめ生成しておいてもよい。表示処理系は、他の文書ファイルから抽出した文章の少なくとも一部で構成される抽出結果が管理項目内に埋め込まれた形で表示する。すなわち、デスティネーションツリーの一部に、キーワードに対応するボキャブラリを用いて抽出結果を記述してもよいし、抽出結果の部分をキーワードに対応するプラグインを用いて管理項目内に表示させてもよい。マッピング部１８２は抽出結果を所定の対応可能なボキャブラリまたはプラグインにマッピングする。変形例としては、抽出結果をＶＣユニット１８０に送り、キーワードに対応するボキャブラリを用いてソースツリーを変更させることにより、デスティネーションツリーまたはプラグインを介した表示内容を変更してもよい。この場合、その抽出結果をユーザの備忘録ファイルにも埋め込んでもよい。【００６１】
例えば、備忘録ファイルにおける一つの管理項目内に「受信メール」のキーワードが入力された場合、その管理項目の日時に受信した電子メールの一覧が抽出される。これら抽出の結果はキーワード「受信メール」に対応づけられたボキャブラリを用いてデスティネーションツリーに記述されるか、キーワード「受信メール」に対応づけられたプラグインによって管理項目内に表示される。「抽出結果」をどのように構成すべきかは、あらかじめ認識条件の中に定められていてもよい。例えば、電子メールのタイトル、送受信日時、発信者、送信者等の電子メールに関する情報の抜粋をリスト化したデータを「抽出結果」として形成させてもよい。また、他のユーザのスケジュールに関して、予定内容、予定日時等を抜粋したデータを「抽出結果」として形成させてもよい。「抽出結果」は、抽出元のデータへのリンクの形でリスト化されてもよく、抽出したデータ本体を含まない構成であってもよい。【００６２】
表示部１５６や表示部１６６を含む表示処理系は、指示入力部１２を介してユーザから受け取る切替指示に応じて、抽出結果の埋め込み表示とその解除を切り替える。ユーザからの切替指示は、例えば表示領域内に表示させた特定箇所、例えばキーワードとなる文字列が表示された箇所のクリック操作であってもよい。【００６３】
図１２は、自由編集画面の表示形式で各管理項目を表示した画面を例示する。この自由編集画面３０において、ユーザが遂行すべき事項として複数の管理項目を箇条書きにて入力する。第１項目３２は、「発表資料の提出」という内容の管理項目であることを示す。その下に入力された「営業」の文字列は、この項目が「営業」なるカテゴリに属することを示す。「未」の文字は、この項目がまだ遂行されていないことを示す。「2003-12-10」の文字列は、発表資料の提出期限である日時を示す。一桁の数字「5」の文字は、この項目の優先度を示す。【００６４】
第２項目３４は、「戦略会議」という内容の管理項目であることを示す。その下に入力された「予定」の文字列は、この項目が「予定」なるカテゴリに属することを示す。「済」の文字は、この項目が既に遂行済であることを示す。「2003-10-10 10:00」の文字列は、「戦略会議」の開催日時を示す。一桁の数字「1」の文字は、この項目の優先度が最も高いことを示す。「鈴木専務、佐藤部長」の文字列は、これら二人の人物が「戦略会議」の参加者に含まれることを示す。「可」の文字は、この項目を他のユーザへ公開するか否かを示す。「年次報告」の文字列は、上記の各文字列と異なり特に分類されない内容である。【００６５】
第３項目３６は、「住民票の取り寄せ」という内容の管理項目であることを示す。その下に入力された「プライベート」の文字列は、この項目が「プライベート」なるカテゴリに属することを示す。「未」の文字は、この項目がまだ遂行されていないことを示す。「１０／１３まで」の文字列は、「住民票の取り寄せ」の期限である日時を示す。一桁の数字「3」の文字は、この項目の優先度を示す。「不可」の文字は、この項目を他のユーザへ公開するか否かを示す。以上の第１項目３２、第２項目３４および第３項目３６の内容は、データとしては「項目」「カテゴリ」「遂行済かどうか」「日時」「優先度」「参加者」「公開するかどうか」といった意味の要素を含んだボキャブラリによるＸＭＬ文書の形で生成される。【００６６】
図１３は、図１２の表示内容に対応するＸＭＬ文書のソースを示す。第１項目３２においては、項目名「発表資料の提出」の文字列は＜項目＞というタグで囲まれる。カテゴリを示す「営業」の文字列は＜カテゴリ＞というタグで囲まれる。この項目が遂行されていないことを示す「未」の文字は＜確認＞というタグで囲まれる。発表資料の提出期限である日時を示す「2003-12-10」の文字列は、＜日時＞というタグで囲まれる。この項目の優先度を示す一桁の数字「5」の文字は、＜優先度＞というタグで囲まれる。また、この項目内には実際に入力されていない内容として、＜参加者＞、＜公開＞、＜その他＞のタグが空欄のまま記述される。【００６７】
第２項目３４においては、項目名「戦略会議」の文字列は＜項目＞のタグで囲まれる。カテゴリを示す「予定」の文字列は＜カテゴリ＞のタグで囲まれる。この項目が既に遂行済であることを示す「済」の文字は＜確認＞のタグで囲まれる。「戦略会議」の開催日時を示す「2003-10-10 10:00」の文字列は＜日時＞のタグで囲まれる。この項目の優先度を示す一桁の数字「1」の文字は、＜優先度＞のタグで囲まれる。「戦略会議」の参加者を示す「鈴木専務、佐藤部長」の文字列は＜参加者＞のタグで囲まれる。この項目を他のユーザへ公開するか否かを示す「可」の文字は＜公開＞のタグで囲まれる。「年次報告」の文字列は＜その他＞のタグで囲まれる。【００６８】
第３項目３６においては、項目名「住民票の取り寄せ」の文字列は＜項目＞のタグで囲まれる。カテゴリを示す「プライベート」の文字列は＜カテゴリ＞のタグで囲まれる。この項目がまだ遂行されていないことを示す「未」の文字は＜確認＞のタグで囲まれる。「住民票の取り寄せ」の期限である日時を示す「１０／１３まで」の文字列は＜日時＞のタグで囲まれる。この項目の優先度を示す一桁の数字「3」の文字は、＜優先度＞のタグで囲まれる。また、この項目内には実際に入力されていない内容として、＜参加者＞、＜公開＞、＜その他＞のタグが空欄のまま記述される。【００６９】
このように、キーワードとなるカテゴリ名「営業」「予定」「プライベート」の各文字列が検出されると、それら各文字列は＜カテゴリ＞のタグで記述される。漢字一文字で「未」「済」が検出されると、その文字は＜確認＞のタグで記述される。その他、各文字列が検出されると、それぞれが対応するタグで記述され、ＸＭＬ文書が形成される。【００７０】
図１４は、ソースツリーとデスティネーションツリーの対応関係を模式的に示す。ソースツリー２０には、図１２および図１３に示される各項目がツリー構造をなす形で記述される。デスティネーションツリー２４は、ソースツリー２０に示される各管理項目をＨＴＭＬで記述されるテーブルにマッピングしたときの例を示す。すなわち、ソースツリー２０において管理項目を構成する要素である「カテゴリ」「確認」「日時」「優先度」「参加者」「公開」「その他」が、デスティネーションツリー２４におけるテーブルの各行を示す個別の＜ＴＲ＞のタグにマッピングされている。これにより、備忘録ファイルを構成する各要素がＨＴＭＬによって表示されるテーブルにおいて個別の行に表示される。このようにＨＴＭＬ等の既存のプラグインへのマッピングを定義することを前提として自由にボキャブラリを定義することができる。そのようなマッピングやボキャブラリをあらかじめ定義したテンプレートを作成することもできる。そうしたテンプレートの作成は、ドラッグ＆ドロップを中心とした簡単な操作で実行することができる。【００７１】
図１５は、自由編集画面とテーブル表示画面を一つの画面内に同時に表示させた例を示す。本図の画面では、表示領域の左側に自由編集画面４２を表示させ、表示領域の右側にテーブル表示画面４４を表示させている。自由編集画面４２の内容は、図１２の自由編集画面３０と同じボキャブラリを用いて表示させている。テーブル表示画面４４の内容は、自由編集画面４２に表示させる内容と同じソースツリーに基づいて生成された別個のデスティネーションツリーをもとに表示させる内容であり、各項目が独立のテーブルを構成する。テーブル表示画面４４を表示させるためのデスティネーションツリーは、図１４に示すデスティネーションツリー２４に相当する。このように、一つのソースツリーで表される備忘録ファイルの各管理項目の内容を、複数の表示形式にて同時に表示領域へ表示させることができる。【００７２】
図１６は、管理項目をスケジューラ画面として表示させる例を示す。備忘録ファイルの内容をスケジューラの形で表示させる画面へ切り替える指示を指示入力部１２がユーザから受け取ったときに、本図のスケジューラ画面４６が表示領域に表示される。スケジューラ画面４６においては、専用のプラグインまたはボキャブラリに基づいて、日付ごとに分割された枠を表示し、各管理項目をそれぞれに含まれる日時の情報をもとにいずれかの枠内に表示することにより、各項目が時系列的に表示される。【００７３】
例えば、「１０月１０日（金）」の枠内に予定時間を示す「10:00」の文字列と＜項目＞のタグで記述された「戦略会議」の文字列が表示されている。この項目は図１２および図１３における第２項目３４に相当する。＜確認＞のタグで記述された内容として、ここでは「済」の文字とともにチェックボックスを表示し、チェックの有無によってこの項目が遂行済であるかどうかを表す。＜優先度＞のタグで記述された内容として、ここでは「優先度」の文字とともに１〜５の数字のいずれかをプルダウンリストを介して表示する。＜参加者＞のタグで記述された内容として、ここでは「参加者」の文字とともに表示する参加者欄４８の中に、展開ボタン４９と「鈴木専務」「佐藤部長」の文字列を表示する。ユーザは展開ボタン４９をクリックすることにより、各参加者のスケジュールをこの項目内に展開して埋め込む表示に切り替える指示を送ることができる。＜公開＞のタグで記述された内容として、ここでは「公開」の文字とともにチェックボックスを表示し、チェックの有無によってこの項目を公開するか否かを表す。＜その他＞のタグで記述された内容として、ここでは「※」の文字とともにその内容を表示する。【００７４】
「１０月１３日（月）」の枠内には、図１２および図１３における第３項目３６の内容を表示する。例えば、＜項目＞のタグで記述された「住民票の取り寄せ」の文字列や、第２項目３４と同様に、「済」の文字とチェックボックス、「優先度」の文字列とプルダウンリスト、「公開」の文字列とチェックボックスがそれぞれ表示される。ここでは、図１２または図１５の画面で入力された各管理項目をスケジューラ形式で表示する例を説明したが、ユーザは最初から図１６の画面を表示した状態で各管理項目を入力してもよい。その場合、例えば「済」「公開」の文字を入力するとその文字がキーワードとして検出されてチェックボックスが自動的に表示され、「優先度」の文字を入力するとその文字がキーワードとして検出されてプルダウンリストが自動的に表示される。なお、この項目がまだ遂行されていない時点で、その遂行期限である「１０月１３日」の数日前の欄に、この項目の期限が近いことを警告の形で表示させてもよい。また、各管理項目において、「今日」を基準とした期限までの日数を「あと４日」といった残り日数の表現で表示させてもよい。【００７５】
図１７は、図１６のスケジューラ画面に他の文書ファイルの内容を埋め込んだ状態を示す。参加者欄５０は、ユーザによる展開ボタン４９のクリックをトリガーにして図１６の参加者欄４８を展開した状態であり、他のユーザの備忘録ファイルからネットワーク経由でキーワード「鈴木専務」「佐藤部長」に対応するスケジュールを抽出した内容を参加者欄５０に表示する。参加者欄５０には、「鈴木専務」のスケジュールが格納された備忘録ファイルから抽出したメールアドレス「suz@abc.jp」とスケジュール内容と、「佐藤部長」のスケジュールが格納された備忘録ファイルから抽出したメールアドレス「sat@abc.jp」とスケジュール内容を表示する。「鈴木専務」または「佐藤部長」をユーザが別の名前に書き換えると、参加者欄５０の内容はその書換後の人物のスケジュールに書き換えられる。【００７６】
参加者欄５０は、図１６の参加者欄４８よりも表示に要する領域面積が広いため、他の日付の枠を縮小させることにより参加者欄５０を表示可能とする。このように、特定のボキャブラリによる表示内容の中に他のボキャブラリによる表示を行うことにより、複数のボキャブラリによる複合文書の表示を可能としている。【００７７】
なお、変形例として、展開ボタン４９の操作によって展開可能とする内容を他のユーザとの間で共有してもよい。その場合、共有する内容の保管場所をネットワーク内のいずれかのノードに設定しておき、その情報を他のユーザと共有する。例えば、あるユーザが文書の一部を共有指定したとき、あらかじめそのユーザのグループに割り当てられた共有エリアにその内容が格納され、同一グループに属する他のユーザもその内容を参照することができる。また他のユーザが同一の指定を行ったときに、共有エリアに格納された内容が自動的に文書内に埋め込まれる。【００７８】
以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、その各構成要素や各処理プロセスの組合せにいろいろな変形が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。以下、変形例を挙げる。【００７９】
実施例では、ＸＭＬ文書を処理する例について説明したが、本実施例の情報管理装置３００は、他のマークアップ言語、例えば、ＳＧＭＬ、ＨＴＭＬなどで記述された文書も同様に処理可能である。
【産業上の利用可能性】
【００８０】
本発明は、個人の情報管理を処理する情報端末に適用できる。
【図１】
2005098698.tif 000002
【図２】
2005098698.tif 000003
【図３】
2005098698.tif 000004
【図４】
2005098698.tif 000005
2005098698.tif 000006
【図５】
2005098698.tif 000007
【図６】
2005098698.tif 000008
【図７】
2005098698.tif 000009
【図８】
2005098698.tif 000010
【図９】
2005098698.tif 000011
【図１０】
2005098698.tif 000012
【図１１】
2005098698.tif 000013
【図１２】
2005098698.tif 000014
【図１３】
2005098698.tif 000015
【図１４】
2005098698.tif 000016
【図１５】
2005098698.tif 000017
【図１６】
2005098698.tif 000018
【図１７】
2005098698.tif 000019
【国際調査報告】
2005098698.tif 000020
2005098698.tif 000021
2005098698.tif 000022
2005098698.tif 000023
2005098698.tif 000024
2005098698.tif 000025
2005098698.tif 000026