JP2005339027A - データ処理装置、データ処理方法、及びコンピュータプログラム - Google Patents

データ処理装置、データ処理方法、及びコンピュータプログラム Download PDF

Info

Publication number
JP2005339027A
JP2005339027A JP2004154860A JP2004154860A JP2005339027A JP 2005339027 A JP2005339027 A JP 2005339027A JP 2004154860 A JP2004154860 A JP 2004154860A JP 2004154860 A JP2004154860 A JP 2004154860A JP 2005339027 A JP2005339027 A JP 2005339027A
Authority
JP
Japan
Prior art keywords
tag
data
tagged
information
document
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2004154860A
Other languages
English (en)
Inventor
Kunimasa Fujisawa
邦匡 藤澤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2004154860A priority Critical patent/JP2005339027A/ja
Publication of JP2005339027A publication Critical patent/JP2005339027A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Document Processing Apparatus (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

【課題】 複数のタグ付きドキュメントを統合した場合に、各ドキュメントにおいて共通な情報が有効でなくなってしまうことを可及的に防止する
【解決手段】 複数のタグ付きドキュメント101をマージするに際し、共通ヘッダ部102や共通フッタ部106を検索し、ボディ部104の個々のデータに共通なデータを生成する。そして、マージした複数のタグ付きドキュメント101を出力する場合に、共通ヘッダ部102の出力では、前記共通なデータに識別子を付加してこれらを並列に出力する。また、ボディ部104の出力では、ボディ部104の個々のデータを出力するのと同時に、そのボディ部104のデータに対応する前記共通なデータまたはその共通なデータへリンクするためのリンク情報を出力する。さらに、共通フッタ部106の出力では、前記共通なデータに識別子を付加してこれらを並列に出力する。
【選択図】 図1

Description

本発明は、データ処理装置、データ処理方法、及びコンピュータプログラムに関し、特に、複数のタグ付きドキュメントをマージするために用いて好適なものである。
図19に示すように、XML(extensible markup language)などのタグ付きドキュメント1901、1902は、タグをパースする(parse;解析する)ことによって、ドキュメント内で共通の情報であるヘッダ部1901a、1902aやフッタ部1901c、1902c、データ本体であるデータボディ部1901b、1902bに容易に分けることが可能である(特許文献1を参照)。そのため、複数のタグ付きドキュメントを単純にマージする(merge;統合する)場合には、図19のような形で容易に行える。
しかしながら、マージするタグ付きドキュメントのヘッダ部で記述されているそのタグ付きドキュメント全体に共通の情報が異なっている場合、単純にマージすると、もともとのタグ付きドキュメントのヘッダ部で記述されていた、各ドキュメントのドキュメント内で共通の情報が失われたり、あいまいなものになったりしてしまう。
例えば、タグ付きドキュメントとして、XMLで記述されたアルバムファイルを例として説明すると、写真の撮影を行った著作権者の情報はヘッダ部に記述され、データボディ部には撮影した画像のデータが記述される。そのようなアルバムファイルで著作権者の異なるアルバムファイルをマージする場合、単純にヘッダ部内に記述された著作権者の情報およびデータボディ部に記述された画像のデータをマージしたのでは、個々の写真をだれが撮影したのか分からなくなってしまうことになるという問題点があった。
特開平5−101054号公報
本発明は、前述の問題点に鑑みてなされたものであり、複数のタグ付きドキュメントを統合した場合に、各ドキュメントにおいて共通な情報が有効でなくなってしまうことを可及的に防止することができるようにする。
本発明のデータ処理装置は、タグ付きドキュメントのヘッダ部及びボディ部に、これらヘッダ部及びボディ部が属しているタグ付きドキュメントを識別可能にするための識別タグを付加する識別情報付加手段と、前記識別情報付加手段により識別タグが付加された複数のタグ付きドキュメントを統合する統合手段とを有することを特徴とする。
また、本発明の他の特徴とするところは、複数のタグ付きドキュメントを1つのタグ付きドキュメントにマージするデータ処理装置であって、前記複数のタグ付きドキュメントを入力する入力手段と、前記タグ付きドキュメント入力手段により入力されたタグ付きドキュメントをパースするパース手段と、特定の情報をもつタグの種類を記憶するタグ記憶手段と、前記パース手段によりパースされたデータから、前記タグ記憶手段に記憶された種類のタグによって表現されるタグデータを取得するタグデータ取得手段と、前記タグデータの情報と関連のある前記タグ付きドキュメント内の対象データの種類を記憶する対象データ記憶手段と、前記パース手段によりパースされたデータから、前記対象データ記憶手段に記憶された種類の対象データを取得するタグ対象データ取得手段と、前記タグデータ取得手段により取得されたタグデータと、前記タグ対象データ取得手段により取得された対象データとを関連付ける情報を、前記複数のタグ付きドキュメントのそれぞれに付加して、前記複数のタグ付きドキュメントを1つのタグ付きドキュメントにマージするドキュメント生成手段とを有することを特徴とする。
本発明のデータ処理方法は、タグ付きドキュメントのヘッダ部及びボディ部に、これらヘッダ部及びボディ部が属しているタグ付きドキュメントを識別可能にするための識別タグを付加する識別情報付加ステップと、前記識別情報付加ステップにより識別タグが付加された複数のタグ付きドキュメントを統合する統合ステップとを有することを特徴とする。
また、本発明の他の特徴とするところは、複数のタグ付きドキュメントを1つのタグ付きドキュメントにマージするデータ処理方法であって、前記複数のタグ付きドキュメントを入力する入力ステップと、前記タグ付きドキュメント入力ステップにより入力されたタグ付きドキュメントをパースするパースステップと、特定の情報をもつタグの種類を記憶媒体に記憶するタグ記憶ステップと、前記パースステップによりパースされたデータから、前記タグ記憶ステップにより記憶媒体に記憶された種類のタグによって表現されるタグデータを取得するタグデータ取得ステップと、前記タグデータの情報と関連のある前記タグ付きドキュメント内の対象データの種類を記憶する対象データ記憶ステップと、前記パースステップによりパースされたデータから、前記対象データ記憶ステップにより記憶媒体に記憶された種類の対象データを取得するタグ対象データ取得ステップと、前記タグデータ取得ステップにより取得されたタグデータと、前記タグ対象データ取得ステップにより取得された対象データとを関連付ける情報を、前記複数のタグ付きドキュメントのそれぞれに付加して、前記複数のタグ付きドキュメントを1つのタグ付きドキュメントにマージするドキュメント生成ステップとを有することを特徴とする。
本発明のコンピュータプログラムは、タグ付きドキュメントのヘッダ部及びボディ部に、これらヘッダ部及びボディ部が属しているタグ付きドキュメントを識別可能にするための識別タグを付加する識別情報付加ステップと、前記識別情報付加ステップにより識別タグが付加された複数のタグ付きドキュメントを統合する統合ステップとをコンピュータに実行させることを特徴とする。
また、本発明の他の特徴とするところは、複数のタグ付きドキュメントを1つのタグ付きドキュメントにマージすることをコンピュータに実行させるためのコンピュータプログラムであって、前記複数のタグ付きドキュメントを入力する入力ステップと、前記タグ付きドキュメント入力ステップにより入力されたタグ付きドキュメントをパースするパースステップと、特定の情報をもつタグの種類を記憶媒体に記憶するタグ記憶ステップと、前記パースステップによりパースされたデータから、前記タグ記憶ステップにより記憶媒体に記憶された種類のタグによって表現されるタグデータを取得するタグデータ取得ステップと、前記タグデータの情報と関連のある前記タグ付きドキュメント内の対象データの種類を記憶する対象データ記憶ステップと、前記パースステップによりパースされたデータから、前記対象データ記憶ステップにより記憶媒体に記憶された種類の対象データを取得するタグ対象データ取得ステップと、前記タグデータ取得ステップにより取得されたタグデータと、前記タグ対象データ取得ステップにより取得された対象データとを関連付ける情報を、前記複数のタグ付きドキュメントのそれぞれに付加して、前記複数のタグ付きドキュメントを1つのタグ付きドキュメントにマージするドキュメント生成ステップとをコンピュータに実行させることを特徴とする。
本発明のコンピュータ読み取り可能な記録媒体は、前記記載のコンピュータプログラムを記録したことを特徴とする。
本発明によれば、タグ付きドキュメントのヘッダ部及びボディ部に、それらが属しているタグ付きドキュメントを識別可能にするための識別タグを付加し、識別タグを付加した複数のタグ付きドキュメントを統合するようにしたので、複数のタグ付きドキュメントを統合する場合に、統合する各タグ付きドキュメントに共通のデータを失うことなく、各タグ付きドキュメントを統合することができる。
(第1の実施形態)
次に、図面を参照しながら、本発明の第1の実施形態について説明する。
図18は、本実施形態の情報処理装置の構成の一例を示すブロック図である。
図18において、情報処理装置1800は、操作部1801と、表示部1802と、処理部1803と、記憶部1804とを有している。
操作部1801は、キーボードやマウスなどにより構成される装置であり、ユーザにより実行される操作内容を処理部1803に伝えるようにするための装置である。
表示部1802は、ディスプレイなどにより構成される装置であり、処理部1803により実行された処理結果などを表示するための装置である。ユーザは、この表示部1802の表示内容を見ながら、操作部1802を操作する。
処理部1803は、制御プログラムなどが格納されているROMと、前記制御プログラムを実行するCPUと、前記CPUが制御プログラムを実行する際のワークエリアなどとなるRAMとを含み、以下に説明する情報処理装置1800における処理動作を制御するための装置である。
記憶部1804は、ハードディスクドライブなどの記憶装置であり、処理部1803で処理された情報等を記憶する。なお、この記憶部1804を、前記ROMと併用するようにしてもよい。
以上のような構成の情報処理装置1800で処理されるタグ付きドキュメントは、タグにより図1のような構造をもつ。
図1において、タグ付きドキュメント101は、そのタグ付きドキュメント101内のデータに共通な情報の集合体である共通ヘッダ部102と、実際のデータの集合体であるボディ部104と、ドキュメント101内のデータに共通な情報の集合体である共通フッタ部106とを含んで構成されている。
そして、共通ヘッダ部102は、0個以上のヘッダ項目103(図1では3個のヘッダ項目103a〜103c)から構成されている。ボディ部104は、0個以上のデータ項目105(図1ではn個のデータ項目105a〜105n)から構成されている。共通フッタ部106は、0個以上のフッタ項目107(図1では2個のフッタ項目107a、107b)から構成されている。
さらに、以下に述べるように、「<xxx>」タグと、「</xxx>」タグとは、対になってタグ付きドキュメント101の構造を表現している。
タグ付きドキュメント101の一例として、図2のようなアルバムファイルが挙げられる。
図2において、アルバムファイル300は、全体が「<photAlbum>」タグ301aと「</photAlbum>」タグ301bとで囲まれ、その中に、「<header>」タグ302aと「</header>」タグ302bとで囲まれたヘッダ部305と、「<body>」タグ303aと「</body>」タグ303bで囲まれたボディ部306と、「<footer>」タグ304aと「</footer>」タグ304bとで囲まれたフッタ部307とがある。
ヘッダ部305の中には、例えば撮影したカメラの名称や、撮影者の名前など、アルバムファイル300に保持されている写真データに共通のデータがタグ付きテキストとして含まれている。
ボディ部306の中には、個々の写真データが「<photo>」タグと「</photo>」タグとで囲まれた範囲に含まれており、さらに個々の写真データ、例えば画像ID、画像データ、サムネイル画像データ、撮影日時などの画像に固有な情報がタグ付きテキストとして含まれている。
フッタ部307の中には、ヘッダ部305と同様にアルバムファイル300に保持されている写真データに共通のデータがタグ付きテキストとして含まれている。
図3に、ドキュメント内のタグをパース(parse)処理する際の情報処理装置1800の動作の一例を説明するフローチャートを示す。
まず、パーサ部1803aは、ユーザの操作部1801の操作によってマージ(merge)されるデータファイル(アルバムファイル300などのタグ付きドキュメント101)が入力されると、そのデータファイルをひとつ読み込む(ステップS401)。
次に、パーサ部1803aは、「<」及び「>」で囲まれたタグを構文解釈することによりタグをパースして、図4のようなドキュメントオブジェクトツリー400を生成する(ステップS402)。
次に、パーサ部1803aは、そのドキュメントオブジェクトツリー400をパースデータデータベース500(図5を参照)に保存する(ステップS403)。構文解釈の方法としては、再帰降下法などいくつかのアルゴリズムがあるが、適当なアルゴリズムであればどのアルゴニズムを使用してもよい。
他にユーザの操作部1801の操作によって入力されたデータファイルがあると、ステップS401に戻り、パーサ部1803aは、ステップS401〜S403の処理を繰り返し続ける(ステップS404)。一方、ユーザからデータファイルが入力されなければ、次のマージ処理に移る(ステップS405)。
なお、ドキュメントオブジェクトツリー400は、図5のようにパースデータデータベース500にドキュメント名501a〜501cとともに、ドキュメントごとに保存される。
図11のように、タグデータ記憶部1101にはマージ対象タグとして「<author>」タグが保存されている。また、対象データ記憶部1102には、対象データタグとして「<photo>」タグが保存されている。タグデータ記憶部1101と対象データ記憶部1102とは対になっている。また、タグデータ記憶部1101と対象データ記憶部1102との対は複数あってもよい。
以上のようにしてタグ付きドキュメントをパースして、入力されたすべてのタグ付きドキュメントがドキュメントオブジェクトツリー500になったら、つぎに、ヘッダのマージ処理(マージ結果のタグ付きドキュメントの生成処理)に移る。図6に、ヘッダのマージ処理を行う際の情報処理装置1800の動作の一例を説明するフローチャートを示す。
まず、マージ部1803bは、マージ対象タグとして記憶されているタグのひとつに対してひとつのマージ対象タグ一時記憶部(ヘッダ一時記憶部)を生成する(ステップS700)。図8のように、マージ対象タグ一時記憶部は、マージ対象タグ名900と、マージしたファイルの中でのヘッダの識別番号901と、マージするタグ付きドキュメントのドキュメントオブジェクトツリーの識別子902と、ヘッダの内容903とを、それぞれマージするヘッダごとに記憶している。識別番号901は、ステップS707の処理で、ヘッダをマージ対象タグ一時記憶部に記憶するときに生成するユニークなIDである。
次に、マージ部1803bは、新規に空のドキュメントオブジェクトツリーを生成する(ステップS701)。さらに、マージ部1803bは、パースデータデータベース500からドキュメントオブジェクトツリー400をひとつ取得する(ステップS702)。
次に、マージ部1803bは、前記取得したドキュメントオブジェクトツリー400を検索してヘッダ部の枝を取得する(ステップS703)。
次に、マージ部1803bは、前記取得したヘッダ部の枝に含まれているヘッダをひとつ取得し(ステップS704)、ヘッダのタグがタグデータ記憶部1101に記憶されているマージ対象タグ「<author>」と等しいかどうかを調べる(ステップS705)。そして、ステップS704で取得したヘッダのタグと、タグデータ記憶部1101に記憶されているマージ対象タグとが等しければ、マージ部1803bは、ステップS704で取得したヘッダを、マージを行うヘッダとしてマージ対象タグ一時記憶部に記憶して(ステップS707)、ステップS708に遷移する。
一方、ステップS704で取得したヘッダのタグと、タグデータ記憶部1101に記憶されているマージ対象タグとが等しくなければ、マージ部1803bは、ヘッダをステップS701で生成したドキュメントオブジェクトツリーに追加して(ステップS706)、ステップS708に遷移する。
そして、ステップS708において、マージ部1803bは、ステップS703で取得したヘッダ部の枝に含まれるすべてのヘッダについて、ステップS705のチェックを行ったかどうかを調べる。そして、すべてのヘッダについてステップS705のチェックを行っていなければ、マージ部1803bは、チェックを行うまでステップS703〜S708の処理を繰り返す。こうして、すべてのヘッダについてステップS705のチェックを行ったら、ステップS709に遷移する。
ステップS709において、マージ部1803bは、すべてのドキュメントオブジェクトツリー400内のヘッダをチェックしたかどうかを調べる。そして、すべてのドキュメントオブジェクトツリー400内のヘッダをチェックしていなければ、マージ部1803bは、チェックするまでステップS702〜S709の処理を繰り返す。こうして、すべてのドキュメントオブジェクトツリー400内のヘッダをチェックしたら、ステップS710に遷移する。
そして、ステップS710において、マージ部1803bは、マージするヘッダを出力し、ステップS711において、マージ部1803bは、ボディ部を出力する。
図10に、以上の図6に示したヘッダのマージ処理(の一部)をより詳細に説明するフローチャートを示す。
まず、マージ部1803bは、マージ対象タグ一時記憶部をひとつ取得し、そこからマージ対象タグ名「<author>」を取得する(ステップS1101)。
次に、図7に示すように、マージ部1803bは、図6のステップS701で生成したドキュメントオブジェクトツリーに対してマージ対象タグである「<author>」タグを追加する(ステップS1102)。
次に、マージ部1803bは、図6のステップS701で生成したドキュメントオブジェクトツリーに対して「<id>」タグを追加する(ステップS1103)。さらに、マージ部1803bは、図8のマージ対象タグ一時記憶部に記憶されている識別番号901を、マージ対象タグ一時記憶部から取得し、ドキュメントオブジェクトツリーに追加する(ステップS1104)。それから、マージ部1803bは、ヘッダの内容903をマージ対象タグ一時記憶部から取得し、ドキュメントオブジェクトツリーに追加し(ステップS1105)、次に「</id>」タグをドキュメントオブジェクトに追加する(ステップS1106)。
以上のステップS1103〜S1106の処理を、マージを行う前記取得したマージ対象タグ一時記憶部に記憶されているすべてのヘッダに対して行う(ステップS1107)。
そして、マージ部1803bは、「<author>」タグに対応する閉じタグである「</author>」をドキュメントオブジェクトツリーに追加する(ステップS1108)。
すべてのマージ対象タグ一時記憶部に関して以上のステップS1101〜1108の処理を行うと(ステップS1109)、ステップS1110において、ボディ部の出力処理を行う。
なお、マージ対象タグ記憶部に複数のタグが記憶されている場合は、記憶されているタグのすべてに対して前記処理を行う。
以上のようにしてヘッダに対して行ったのと同様の処理をフッタに対しても行う。
図9に、ボディ部の出力処理を行う際の情報処理装置1800の動作の一例を説明するフローチャートを示す。
ボディ部の出力処理において、まず、マージ部1803bは、パースデータデータベース500からドキュメントオブジェクトツリー400をひとつ取得する(ステップS1001)。次に、マージ部1803bは、前記取得したドキュメントオブジェクトツリー400を検索し、ボディ部の枝を取得する(ステップS1002)。
次に、マージ部1803bは、前記ボディ部の枝に含まれているボディデータをひとつ取得する(ステップS1003)。
次に、マージ部1803bは、前記取得したボディデータが対象データ記憶部1102に記憶されている対象データタグである「<photo>」タグと等しいかどうかを調べる(ステップS1004)。前記取得したボディデータが対象データ記憶部1102に記憶されている「<photo>」タグと等しくなければ、マージ部1803bは、ボディデータをそのままドキュメントオブジェクトツリー400に追加する(ステップS1014)。
一方、前記取得したボディデータが対象データ記憶部1102に記憶されている「<photo>」タグと等しければ、マージ部1803bは、まず対象データタグに対応するマージ対象タグを取得する(ステップS1005)。次に、マージ部1803bは、マージ対象タグに対応するマージ対象タグ一時記憶部を取得する(ステップS1006)。さらに、マージ部1803bは、前記取得したマージ対象タグ一時記憶部からステップS1001で取得したドキュメントオブジェクトツリー400の名前に対応する識別子を取得する(ステップS1007)。
次に、マージ部1803bは、対象データタグである「<photo>」タグをドキュメントオブジェクトツリー400に追加し(ステップS1008)、続いて「<id>」タグをドキュメントオブジェクトツリー400に追加する(ステップS1009)。そして、ステップS1007で取得した識別子をドキュメントオブジェクトツリー400に追加し(ステップS1010)、「</id>」タグをドキュメントオブジェクトツリー400に追加する(ステップS1011)。次に、マージ部1803bは、「<photo>」タグと「</photo>」タグとを削除したボディデータをドキュメントオブジェクトツリー400に追加し、「<photo>」タグの閉じタグである「</photo>」タグをドキュメントオブジェクトツリー400に追加する(ステップS1013)。
そして、マージ部1803bは、前記取得したボディ部の枝に含まれるすべてのボディデータに対して前記ステップS1003〜S1014の処理を行う(ステップS1015)。
さらに、すべてのドキュメントオブジェクトツリー400に対して前記ステップS1001〜S1015の処理を行う(ステップS1016)。
すべてのドキュメントツリー400に対して前記ステップS1001〜S1016の処理が完了したら、図6のステップS701で生成したドキュメントオブジェクトツリーに対して深さ優先探索を行い、ノードのデータをファイルに出力することによりにドキュメントオブジェクトツリーをファイルに変換して(ステップS1017)処理を終了する。
以上のように本実施形態では、複数のタグ付きドキュメント101をマージするに際し、まずタグ付きドキュメント101をパースして、共通ヘッダ部102、ボディ部104、共通フッタ部106にわけ、さらに各部102、104、106を個々のデータ分離する。次に、共通ヘッダ部102や共通フッタ部106を検索し、ボディ部104の個々のデータに共通なデータを生成する。そして、マージした複数のタグ付きドキュメント101を出力する場合に、共通ヘッダ部102の出力では、前記共通なデータに識別子を付加してこれらを並列に出力する。また、ボディ部104の出力では、ボディ部104の個々のデータを出力するのと同時に、そのボディ部104のデータに対応する前記共通なデータまたはその共通なデータへリンクするためのリンク情報を出力する。さらに、共通フッタ部106の出力では、前記共通なデータに識別子を付加してこれらを並列に出力する。
特に、本実施形態では、ドキュメントオブジェクトツリーのヘッダ部とフッタ部とのそれぞれに、「<id>」タグと「/<id>」タグとを追加するとともに、追加した「<id>」タグと「/<id>」タグとの間に識別番号(0010101)を挿入する。また、ドキュメントオブジェクトツリーのボディ部に、「<id>」タグと「/<id>」タグとを追加するとともに、追加した「<id>」タグと「/<id>」タグとの間に、ドキュメントオブジェクトツリーの名前に対応する識別子(識別番号(0010101))を挿入する。
以上のようにすることにより、もともとのタグ付きドキュメントではそのヘッダ部やフッタ部に記述されていたボディ部の個々のデータに共通なデータを失うことなくマージしたタグ付きドキュメントを得ることができる。
(第2の実施形態)
次に、本発明の第2の実施形態について説明する。なお、本実施形態の説明において、前述した第1の実施形態と同一の部分については、図1〜図11、図18に付した符号と同一の符号を付すなどして詳細な説明を省略する。
本実施形態では、図12に示すようなのタグ付きドキュメント1301、1302のマージを行う。
マージ対象タグと対象データタグとを図12(c)のようなタグ付きドキュメント1303として入力する。「<mergePol>」タグ1304aと「</mergePol>」タグ1304bとで囲まれた部分がひとつのマージ対象タグと対象データタグとを表し、その中の「<headerTag>」タグ1305a、1305cと「</headerTag>」タグ1305b、1305dに囲まれた文字列がマージ対象タグのデータを表し、「<bodyTag>」タグ1306a、1306cと「</bodyTag>」タグ1306b、1306dとに囲まれた文字列が対象データタグのデータを表している。
図12(c)に示すようなタグ付きドキュメント1303が入力されると、パーサ部1803aは、タグ付きドキュメント1303をパースし、図13のようなマージ対象タグ記憶部(マージ対象タグのテーブル)1401、対象データタグ記憶部(対象データタグのテーブル)1402を生成する。
前述した第1の実施形態と同様に、タグ付きドキュメント1301が入力されると、パーサ部1803aは、「<」「>」で囲まれたタグを構文解釈することによりタグをパースし、図4に示したようなドキュメントオブジェクトツリー400を生成する。そして、前記生成したドキュメントオブジェクトツリー400を、図5に示したようなパースデータデータベース500に保存する。構文解釈の方法としては、再帰降下法などいくつかのアルゴリズムがあるが、適当なアルゴリズムであればどのアルゴニズムを使用してもよい。
また、パーサ部1803aは、タグ付きドキュメント1302についても同様にパースを行い、ドキュメントオブジェクトツリー400を生成し、前記生成したドキュメントオブジェクトツリー400をパースデータデータベース500に保存する。
タグ付きドキュメント1301、1302のパースを行い、タグ付きドキュメント1301、1302からドキュメントオブジェクトツリー400を生成したら、第1の実施形態と同様に、マージ結果のタグ付きドキュメントの生成処理に移る。
まず、マージ部1803bは、マージ対象タグとして記憶されているタグのひとつに対してひとつのマージ対象タグ一時記憶部を生成する。次に、マージ部1803bは、新規に空白なドキュメントオブジェクトツリーを生成する。
それから、第1の実施形態のように、マージ部1803bは、パースデータデータベース500から取得したドキュメントオブジェクトツリー内のマージ対象タグが、図13に示したマージ対象タグ記憶部1401と、対象データタグ記憶部1402とに含まれていない場合は、そのまま前記生成したドキュメントオブジェクトツリーにそのマージ対象タグを追加する。一方、パースデータデータベース500から取得したドキュメントオブジェクトツリー内のマージ対象タグが、マージ対象タグ記憶部1401と、対象データタグ記憶部1402とに含まれている場合は、マージ部1803bは、そのマージ対象タグに対応したマージ対象タグ一時記憶部に、マージしたファイル内での識別子、ドキュメントオブジェクトツリーの識別子、及びヘッダの内容を追加する。
ヘッダ部に対して行ったのと同様の処理をフッタ部に対しても行う。
次にボディデータの追加を行う。
ボディ部の出力処理において、まず、マージ部1803bは、パースデータデータベース500からドキュメントオブジェクトツリーをひとつ取得する。次に、前記取得したドキュメントオブジェクトツリーを検索し、ボディ部の枝を取得する。そして、マージ部1803bは、前記ボディ部の枝に含まれているボディデータをひとつ取得する。
次に、マージ部1803bは、取得したボディデータが対象データ記憶部1402に記憶されている対象データタグと等しいかを調べる。取得したボディデータが対象データ記憶部1402に記憶されている対象データタグと等しくなければ、マージ部1803bは、ボディデータをそのままドキュメントオブジェクトツリーに追加する。
一方、取得したボディデータが対象データ記憶部1402に記憶されている対象データタグと等しければ、マージ部1803bは、まず対象データタグに対応するマージ対象タグを取得する。
次に、マージ部1803bは、マージ対象タグに対応するマージ対象タグ一時記憶部を取得する。さらに、マージ部1803bは、前記取得したマージ対象タグ一時記憶部から、前記取得したドキュメントオブジェクトツリーの名前に対応するマージしたファイル内での識別子を取得する。そして、マージ部1803bは、マージ対象タグに対応する対象データタグをドキュメントオブジェクトツリーに追加し、「<id>」タグをドキュメントオブジェクトツリーに追加する。そして、マージ部1803bは、前記取得したマージしたファイル内での識別子をドキュメントオブジェクトツリーに追加し、「</id>」タグをドキュメントオブジェクトツリーに追加する。
次に、マージ部1803bは、対象データタグのブロックから前記対象データタグを削除したボディデータをドキュメントオブジェクトツリーに追加し、対象データタグの閉じタグをドキュメントオブジェクトツリーに追加する。
この処理をボディ部の枝にボディデータがなくなるまで続ける。
さらに、マージ部1803bは、すべてのドキュメントオブジェクトツリーに対して以上の処理を行う。
すべてのドキュメントツリー400に対して以上の処理が完了したら、マージ部1803bは、ドキュメントオブジェクトツリー400に対して深さ優先探索を行い、ノードのデータをファイル出力することによりにドキュメントオブジェクトツリー400をファイルに変換して処理を終了する。
そして、処理が終了するとマージ結果として図14のようなマージされたタグ付きドキュメント1501が生成される。
(第3の実施形態)
次に、本発明の第3の実施形態について説明する。なお、本実施形態の説明において、前述した第1の実施形態と同一の部分については、図1〜図12に付した符号と同一の符号を付すなどして詳細な説明を省略する。
本実施形態では、前述した第1の実施形態において、ヘッダとしてタグデータ記憶部1101にマージ対象タグとして記憶されている著作権情報を示す「<author>」タグの内容を出力するときに、図15のように、タグ付きドキュメントをマージすることを指示したユーザの著作権者情報もヘッダ1601に追加する。このようにすることで、複数人によって撮影されたアルバムデータをマージした場合でも、だれがどの画像を撮影したのかが分かるようになる。
(第4の実施形態)
次に、本発明の第4の実施形態について説明する。なお、本実施形態の説明において、前述した第1の実施形態と同一の部分については、図1〜図12に付した符号と同一の符号を付すなどして詳細な説明を省略する。
前述した第1の実施形態で作成されたタグ付きドキュメントは、ヘッダ部に撮影者の著作権情報が、ボディ部に撮影画像が記憶されており、また撮影画像データにはヘッダ部のどの著作権情報がその画像の撮影者のものであるかを示す情報が付加されている。
この著作権情報には、タグ付きデータで撮影者の名前、メールアドレス、アイコンなどが含まれている。
パーサ部1803aは、マージされたタグ付きドキュメントが入力されると、「<」及び「>」で囲まれたタグを構文解釈することによりタグをパースし、ドキュメントオブジェクトツリー400を生成する。構文解釈の方法としては再帰降下法などいくつかのアルゴリズムがあるが、適当なアルゴリズムであればどのアルゴリズムを使用してもよい。
次に、パーサ部1803aは、生成したドキュメントオブジェクトツリー400からヘッダ部の枝を取得し、その中の「<id>」タグと「</id>」タグとで囲まれたブロックを切り出す。
パーサ部1803aは、「<id>」タグで囲まれたブロックの最初の行をヘッダの識別子とし、そこから「</id>」タグの直前までの情報を著作権者情報として読み込み、さらに前記著作権者情報を記憶させる。パーサ部1803aは、ヘッダ部の枝に含まれている「<id>」タグと「</id>」タグとで囲まれたブロックの情報をすべて読み込んで前記の処理を行い図16のようなテーブル1600を生成する。
次に、パーサ部1803aは、ドキュメントオブジェクトツリー400からボディ部の枝を取得し、「<photo>」タグと「/<photo>」タグとで囲まれたブロックを取得する。そして、パーサ部1803aは、前記取得したブロックの中から「<id>」タグと「</id>」タグとで囲まれたブロックを取得し、前記ブロックから撮影画像の著作権者情報のidを取得する。さらに、パーサ部1803aは、「<photo>」タグと「/<photo>」タグとで囲まれたブロックから画像データを取得し、表示部1802に表示を行う。
さらに、パーサ部1803aは、図16に示したテーブル1600から前記取得した著作権者情報のidをキーにアイコンデータを取得し、図17のように前記表示した画像1701a〜1701eの右下に、前記取得したアイコンデータを重ねて表示させるようにする。なお、別途用意したスタイルシートファイルの指定に従ってアイコンの表示位置を指定するようにしてもよい。ファイルボディ部の枝中のすべての「<photo>」タグと「/<photo>」とで囲まれたブロックに対して前記処理を行い、すべての画像の表示を行う。
(本発明の他の実施形態)
上述した実施形態の機能を実現するべく各種のデバイスを動作させるように、該各種デバイスと接続された装置あるいはシステム内のコンピュータに対し、前記実施形態の機能を実現するためのソフトウェアのプログラムコードを供給し、そのシステムあるいは装置のコンピュータ(CPUあるいはMPU)に格納されたプログラムに従って前記各種デバイスを動作させることによって実施したものも、本発明の範疇に含まれる。
また、この場合、前記ソフトウェアのプログラムコード自体が上述した実施形態の機能を実現することになり、そのプログラムコード自体、及びそのプログラムコードをコンピュータに供給するための手段、例えば、かかるプログラムコードを格納した記録媒体は本発明を構成する。かかるプログラムコードを記憶する記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
また、コンピュータが供給されたプログラムコードを実行することにより、上述の実施形態の機能が実現されるだけでなく、そのプログラムコードがコンピュータにおいて稼働しているOS(オペレーティングシステム)あるいは他のアプリケーションソフト等と共同して上述の実施形態の機能が実現される場合にもかかるプログラムコードは本発明の実施形態に含まれることは言うまでもない。
さらに、供給されたプログラムコードがコンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって上述した実施形態の機能が実現される場合にも本発明に含まれることは言うまでもない。
本発明の第1の実施形態を示し、タグ付きドキュメントの構造の一例を示した図である。 本発明の第1の実施形態を示し、タグ付きドキュメントの一例であるアルバムファイルの一例を示した図である。 本発明の第1の実施形態を示し、ドキュメント内のタグをパース処理する際の情報処理装置の動作の一例を説明するフローチャートである。 本発明の第1の実施形態を示し、ドキュメントオブジェクトツリーの概念一例を示した図である。 本発明の第1の実施形態を示し、パースデータデータベースの記憶内容の一例を概念的に示した図である。 本発明の第1の実施形態を示し、ヘッダのマージ処理を行う際の情報処理装置の動作の一例を説明するフローチャートである。 本発明の第1の実施形態を示し、idタグが追加されたドキュメントオブジェクトツリーの概念の一例を示した図である。 本発明の第1の実施形態を示し、マージ対象タグ一時記憶部の記憶内容の一例を概念的に示した図である。 本発明の第1の実施形態を示し、ボディ部の出力処理を行う際の情報処理装置の動作の一例を説明するフローチャートである。 本発明の第1の実施形態を示し、ヘッダのマージ処理をより詳細に説明するフローチャートである。 本発明の第1の実施形態を示し、タグデータ記憶部と対象データ記憶部との記憶内容の一例を概念的に示した図である。 本発明の第2の実施形態を示し、タグ付きドキュメントの例を示した図である。 本発明の第2の実施形態を示し、タグデータ記憶部と対象データ記憶部との記憶内容の一例を概念的に示した図である。 本発明の第2の実施形態を示し、マージされたタグ付きドキュメントの一例を示した図である。 本発明の第3の実施形態を示し、著作権情報が追加されたヘッダの一例を示した図である。 本発明の第4の実施形態を示し、著作権情報が格納されたテーブルの一例を示した図である。 本発明の第4の実施形態を示し、アイコンデータが重ねられた画像を示した図である。 本発明の実施形態を示し、情報処理装置の構成の一例を示すブロック図である。 従来の技術を示し、タグ付きドキュメントを単純にマージする際の概念を示した図である。
符号の説明
101 タグ付きドキュメント
102 共通ヘッダ部
104 ボディ部
106 共通フッタ部
300 アルバムファイル
400 ドキュメントオブジェクトツリー
901 識別番号
1101、1401 タグデータ記憶部
1102、1402 対象データ記憶部
1301〜1303 タグ付きドキュメント
1501 マージされたタグ付きドキュメント

Claims (16)

  1. タグ付きドキュメントのヘッダ部及びボディ部に、これらヘッダ部及びボディ部が属しているタグ付きドキュメントを識別可能にするための識別タグを付加する識別情報付加手段と、
    前記識別情報付加手段により識別タグが付加された複数のタグ付きドキュメントを統合する統合手段とを有することを特徴とするデータ処理装置。
  2. 複数のタグ付きドキュメントを1つのタグ付きドキュメントにマージするデータ処理装置であって、
    前記複数のタグ付きドキュメントを入力する入力手段と、
    前記タグ付きドキュメント入力手段により入力されたタグ付きドキュメントをパースするパース手段と、
    特定の情報をもつタグの種類を記憶するタグ記憶手段と、
    前記パース手段によりパースされたデータから、前記タグ記憶手段に記憶された種類のタグによって表現されるタグデータを取得するタグデータ取得手段と、
    前記タグデータの情報と関連のある前記タグ付きドキュメント内の対象データの種類を記憶する対象データ記憶手段と、
    前記パース手段によりパースされたデータから、前記対象データ記憶手段に記憶された種類の対象データを取得するタグ対象データ取得手段と、
    前記タグデータ取得手段により取得されたタグデータと、前記タグ対象データ取得手段により取得された対象データとを関連付ける情報を、前記複数のタグ付きドキュメントのそれぞれに付加して、前記複数のタグ付きドキュメントを1つのタグ付きドキュメントにマージするドキュメント生成手段とを有することを特徴とするデータ処理装置。
  3. 前記パース手段は、前記パースしたデータを記憶媒体に記憶させることを特徴とする請求項2に記載のデータ処理装置。
  4. 前記特定の情報をもつタグの種類を設定するタグ設定手段と、
    前記タグ設定手段により設定された種類のタグによって表現されるタグデータと関連のある前記タグ付きドキュメント内の対象データの種類を設定する対象データ設定手段とを有し、
    前記タグ設定手段によって、前記タグ記憶手段に、前記特定の情報をもつタグの種類が記憶され、
    前記対象データ設定手段によって、前記対象データ記憶手段に、前記対象データの種類が記憶されることを特徴とする請求項2又は3に記載のデータ処理装置。
  5. 前記タグ記憶手段は、著作権情報を示すタグを記憶し、
    前記ドキュメント生成手段は、前記タグ記憶手段に記憶されたタグによって表現される著作権情報を、前記タグデータに付加して出力することを特徴とする請求項2〜4の何れか1項に記載のデータ処理装置。
  6. 前記リンク情報を取得するリンク情報取得手段と、
    前記リンク情報取得手段により取得されたリンク情報に基づいて、前記タグ付きドキュメント中の付加情報を取得する付加情報取得手段と
    前記ドキュメント生成手段により出力された対象データとともに、前記付加情報取得手段により取得された付加情報を表示する表示手段とを有することを特徴とする請求項2〜5の何れか1項に記載のデータ処理装置。
  7. 前記タグデータは、著作権者に関する著作権者情報を含み、前記対象データは、前記著作権者により撮影された画像データを含み、
    前記タグデータ記憶手段は、前記著作権者を示すタグを記憶し、
    前記対象データ記憶手段は、前記撮影された画像データを示すタグを記憶し、
    前記著作権者情報に基づいて、前記タグ付きドキュメント中の撮影者の情報を取得する撮影者情報取得手段と、
    前記ドキュメント生成手段により出力された画像データとともに、前記撮影者情報取得手段により取得された撮影者の情報を表すアイコンデータを表示する表示手段とを有することを特徴とする請求項2〜5の何れか1項に記載のデータ処理装置。
  8. タグ付きドキュメントのヘッダ部及びボディ部に、これらヘッダ部及びボディ部が属しているタグ付きドキュメントを識別可能にするための識別タグを付加する識別情報付加ステップと、
    前記識別情報付加ステップにより識別タグが付加された複数のタグ付きドキュメントを統合する統合ステップとを有することを特徴とするデータ処理方法。
  9. 複数のタグ付きドキュメントを1つのタグ付きドキュメントにマージするデータ処理方法であって、
    前記複数のタグ付きドキュメントを入力する入力ステップと、
    前記タグ付きドキュメント入力ステップにより入力されたタグ付きドキュメントをパースするパースステップと、
    特定の情報をもつタグの種類を記憶媒体に記憶するタグ記憶ステップと、
    前記パースステップによりパースされたデータから、前記タグ記憶ステップにより記憶媒体に記憶された種類のタグによって表現されるタグデータを取得するタグデータ取得ステップと、
    前記タグデータの情報と関連のある前記タグ付きドキュメント内の対象データの種類を記憶する対象データ記憶ステップと、
    前記パースステップによりパースされたデータから、前記対象データ記憶ステップにより記憶媒体に記憶された種類の対象データを取得するタグ対象データ取得ステップと、
    前記タグデータ取得ステップにより取得されたタグデータと、前記タグ対象データ取得ステップにより取得された対象データとを関連付ける情報を、前記複数のタグ付きドキュメントのそれぞれに付加して、前記複数のタグ付きドキュメントを1つのタグ付きドキュメントにマージするドキュメント生成ステップとを有することを特徴とするデータ処理方法。
  10. 前記パースステップは、前記パースしたデータを記憶媒体に記憶させることを特徴とする請求項9に記載のデータ処理方法。
  11. 前記タグ記憶ステップは、著作権情報を示すタグを記憶し、
    前記ドキュメント生成ステップは、前記タグ記憶ステップに記憶されたタグによって表現される著作権情報を、前記タグデータに付加して出力することを特徴とする請求項9又は10に記載のデータ処理方法。
  12. 前記リンク情報を取得するリンク情報取得ステップと、
    前記リンク情報取得ステップにより取得されたリンク情報に基づいて、前記タグ付きドキュメント中の付加情報を取得する付加情報取得ステップと
    前記ドキュメント生成ステップにより出力された対象データとともに、前記付加情報取得ステップにより取得された付加情報を表示する表示ステップとを有することを特徴とする請求項9〜11の何れか1項に記載のデータ処理方法。
  13. 前記タグデータは、著作権者に関する著作権者情報を含み、前記対象データは、前記著作権者により撮影された画像データを含み、
    前記タグデータ記憶ステップは、前記著作権者を示すタグを記憶媒体に記憶し、
    前記対象データ記憶ステップは、前記撮影された画像データを示すタグを記憶媒体に記憶し、
    前記著作権者情報に基づいて、前記タグ付きドキュメント中の撮影者の情報を取得する撮影者情報取得ステップと、
    前記ドキュメント生成ステップにより出力された画像データとともに、前記撮影者情報取得ステップにより取得された撮影者の情報を表すアイコンデータを表示装置に表示する表示ステップとを有することを特徴とする請求項9〜12の何れか1項に記載のデータ処理方法。
  14. タグ付きドキュメントのヘッダ部及びボディ部に、これらヘッダ部及びボディ部が属しているタグ付きドキュメントを識別可能にするための識別タグを付加する識別情報付加ステップと、
    前記識別情報付加ステップにより識別タグが付加された複数のタグ付きドキュメントを統合する統合ステップとをコンピュータに実行させることを特徴とするコンピュータプログラム。
  15. 複数のタグ付きドキュメントを1つのタグ付きドキュメントにマージすることをコンピュータに実行させるためのコンピュータプログラムであって、
    前記複数のタグ付きドキュメントを入力する入力ステップと、
    前記タグ付きドキュメント入力ステップにより入力されたタグ付きドキュメントをパースするパースステップと、
    特定の情報をもつタグの種類を記憶媒体に記憶するタグ記憶ステップと、
    前記パースステップによりパースされたデータから、前記タグ記憶ステップにより記憶媒体に記憶された種類のタグによって表現されるタグデータを取得するタグデータ取得ステップと、
    前記タグデータの情報と関連のある前記タグ付きドキュメント内の対象データの種類を記憶する対象データ記憶ステップと、
    前記パースステップによりパースされたデータから、前記対象データ記憶ステップにより記憶媒体に記憶された種類の対象データを取得するタグ対象データ取得ステップと、
    前記タグデータ取得ステップにより取得されたタグデータと、前記タグ対象データ取得ステップにより取得された対象データとを関連付ける情報を、前記複数のタグ付きドキュメントのそれぞれに付加して、前記複数のタグ付きドキュメントを1つのタグ付きドキュメントにマージするドキュメント生成ステップとをコンピュータに実行させることを特徴とするコンピュータプログラム。
  16. 前記請求項14又は15に記載のコンピュータプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
JP2004154860A 2004-05-25 2004-05-25 データ処理装置、データ処理方法、及びコンピュータプログラム Pending JP2005339027A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004154860A JP2005339027A (ja) 2004-05-25 2004-05-25 データ処理装置、データ処理方法、及びコンピュータプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004154860A JP2005339027A (ja) 2004-05-25 2004-05-25 データ処理装置、データ処理方法、及びコンピュータプログラム

Publications (1)

Publication Number Publication Date
JP2005339027A true JP2005339027A (ja) 2005-12-08

Family

ID=35492551

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004154860A Pending JP2005339027A (ja) 2004-05-25 2004-05-25 データ処理装置、データ処理方法、及びコンピュータプログラム

Country Status (1)

Country Link
JP (1) JP2005339027A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009520267A (ja) * 2005-12-16 2009-05-21 マイクロソフト コーポレーション 電子データ交換(edi)のためのxml仕様
WO2014020737A1 (ja) * 2012-08-02 2014-02-06 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、プログラム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009520267A (ja) * 2005-12-16 2009-05-21 マイクロソフト コーポレーション 電子データ交換(edi)のためのxml仕様
JP4805357B2 (ja) * 2005-12-16 2011-11-02 マイクロソフト コーポレーション 電子データ交換(edi)のためのxml仕様
WO2014020737A1 (ja) * 2012-08-02 2014-02-06 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、プログラム
JPWO2014020737A1 (ja) * 2012-08-02 2016-07-11 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、プログラム
US10627986B2 (en) 2012-08-02 2020-04-21 Canon Kabushiki Kaisha Information processing apparatus, method for controlling information processing apparatus, and program

Similar Documents

Publication Publication Date Title
US5684999A (en) Apparatus and a method for retrieving image objects based on correlation with natural language sentence parameters
KR100324782B1 (ko) 번역기능부 문서검색표시방법
US20050193330A1 (en) Methods and systems for eBook storage and presentation
JP2001522097A5 (ja)
US7275066B2 (en) Link management of document structures
JPH06342426A (ja) 情報提示装置
JP2005339027A (ja) データ処理装置、データ処理方法、及びコンピュータプログラム
JP2006065467A (ja) データ抽出定義情報生成装置およびデータ抽出定義情報生成方法
JP2003085160A (ja) ソースファイル生成装置
JP4934181B2 (ja) 付加画像処理システム、画像形成装置及び付加画像追加方法
JP4207992B2 (ja) 構造化文書処理システム及び構造化文書処理方法
JPWO2005101210A1 (ja) データ解析装置およびデータ解析プログラム
JP2009123024A (ja) 画像処理装置及びシステム、方法及びプログラム
JP5428316B2 (ja) 識別子短縮表示プログラム,識別子短縮表示装置および識別子短縮表示方法
JP4480109B2 (ja) 画像管理装置および画像管理方法
JP4411994B2 (ja) 情報処理装置
JP4260641B2 (ja) 検索結果処理装置、検索結果処理プログラム、検索結果処理プログラム記録媒体及び検索結果処理システム
JP5153054B2 (ja) ファイル生成方法及びファイル検索方法
JP4255538B2 (ja) 構造化文書蓄積検索装置
JP2005135320A (ja) 目次作成システム
Jung DICOM-X-seamless integration of medical images into the EHR
JP5169505B2 (ja) 文書合成システム及びプログラム
JP4034503B2 (ja) 文書検索システムおよび文書検索方法
JPH0616268B2 (ja) 分離型知識ベ−ス生成支援方式
JP2002342695A (ja) 情報入力システムの構築支援装置および構築支援方法