JP4405493B2 - 構造化文書管理システム及びプログラム - Google Patents

構造化文書管理システム及びプログラム Download PDF

Info

Publication number
JP4405493B2
JP4405493B2 JP2006269484A JP2006269484A JP4405493B2 JP 4405493 B2 JP4405493 B2 JP 4405493B2 JP 2006269484 A JP2006269484 A JP 2006269484A JP 2006269484 A JP2006269484 A JP 2006269484A JP 4405493 B2 JP4405493 B2 JP 4405493B2
Authority
JP
Japan
Prior art keywords
binary data
structured document
identification information
file
information
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.)
Expired - Fee Related
Application number
JP2006269484A
Other languages
English (en)
Other versions
JP2008090528A (ja
Inventor
雄二 近藤
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.)
Toshiba Corp
Toshiba Digital Solutions Corp
Original Assignee
Toshiba Corp
Toshiba Solutions Corp
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 Toshiba Corp, Toshiba Solutions Corp filed Critical Toshiba Corp
Priority to JP2006269484A priority Critical patent/JP4405493B2/ja
Publication of JP2008090528A publication Critical patent/JP2008090528A/ja
Application granted granted Critical
Publication of JP4405493B2 publication Critical patent/JP4405493B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Document Processing Apparatus (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、構造化文書に加えて当該構造化文書に付随するバイナリデータを管理する構造化文書管理システム及びプログラムに関する。
タグと呼ばれる文字列で文書の階層的な構造が記述された文書は構造化文書と呼ばれている。構造化文書はコンピュータでの処理に適している。構造化文書の代表として、XML(Extensible Markup Language)を使って記述された文書(XML文書)が良く知られている。XML文書を格納し、格納されたXML文書の検索が可能なデータベースは、XMLデータベース(XMLDB)と呼ばれる。
XMLデータベースで、イメージデータのようなバイナリデータを管理する手法として、従来から以下の3つの手法が知られている。
<手法1>
OS(オペレーティングシステム)のローカルファイルとしてバイナリデータを保存し、XML文書に当該バイナリデータ(ローカルファイル)のファイル名などの情報を保存して管理する。
<手法2>
バイナリデータを文字列化してXMLのテキスト情報として保存する(例えば、特許文献1参照)。
<手法3>
RDB(リレーショナルデータベース)で、バイナリデータを管理する。ここでは、バイナリデータは、BLOB(Binary Large Object)と呼ばれるバイナリデータ格納用の列(カラム)に保存可能である。
特開2003−316767号公報
上記手法1では、トランザクション管理ができない、または複雑になる。その理由は次の通りである。手法1では、XML文書だけをXMLデータベースに登録し、バイナリデータはOS上のローカルファイルとして管理される。このため、バイナリファイルも含めたトランザクションを実現しようとすると、上位アプリケーションが複雑になる。例えば、XMLデータベースにXML文書を格納するに当たり、関連するバイナリファイルを同一のトランザクションで管理するようなケースで、リカバリ処理などが複雑になる。
手法2では、バイナリデータが文字列として表現される。このため、テキスト情報が極端に増加する。つまり手法2では、管理する情報が増えてしまい、XML文書の取り出し自体の性能劣化を招く。また、文字列化した情報をバイナリデータに戻す処理が必要になる。
手法3では、事前にBLOB型の列を用意しておく必要がある。また、この手法は同一行の同一カラムに複数のバイナリデータを登録することができない。
本発明は上記事情を考慮してなされたものでその目的は、構造化文書に付随するバイナリデータを当該構造化文書の変更を必要とせずに管理でき、バイナリデータの登録/取得が高速で行える構造化文書管理システム及びプログラムを提供することにある。
本発明の1つの観点によれば、構造化文書の集合を格納する構造化文書データベースを備えた構造化文書管理システムが提供される。このシステムは、クライアント端末からのバイナリデータ登録要求に従い、当該クライアント端末から要求された構造化文書に付随されるべきバイナリデータをそのままの形で前記構造化文書データベースに格納するバイナリデータ格納手段と、前記構造化文書データベースに格納されている構造化文書に付随する全てのバイナリデータを、当該構造化文書に対応させて前記構造化文書データベースに格納される管理情報によって、当該構造化文書と関連付けて管理する関連付け手段と、クライアント端末からのバイナリデータ取得要求に従い、当該クライアント端末から要求された構造化文書に対応させて前記構造化文書データベースに格納されている前記管理情報に基づいて、当該管理情報によって当該構造化文書と関連付けられている全てのバイナリデータを特定し、当該特定されたバイナリデータを前記構造化文書データベースから取得するバイナリデータ取得手段とを具備する。
本発明によれば、構造化文書に付随させるべきバイナリデータを、当該構造化文書に何ら変更を加えることなしに、当該構造化文書とは別の情報(管理情報)を用いて当該構造化文書と関連付けて管理することにより、構造化文書データベースへのバイナリデータ(特に複数のバイナリデータ)の登録及び当該構造化文書データベースからのバイナリデータ(特に複数のバイナリデータ)の取得が高速で行える。
以下、本発明の実施の形態につき図面を参照して説明する。
図1は本発明の一実施形態に係るXML文書管理システムを含むクライアント−サーバシステムのハードウェア構成を示すブロック図である。図1のクライアント−サーバシステムは、XML文書管理システム10と、クライアント端末20を含む複数のクライアント端末(クライアント)とから構成される。各クライアント端末上では、XML文書管理システム10を利用するアプリケーション(アプリケーションプログラム)が動作する。クライアント端末20を含む複数のクライアント端末は、ローカルエリアネットワーク(LAN)のようなネットワーク30を介して、XML文書管理システム10と接続されている。なお、図1では、クライアント端末20以外のクライアント端末は省略されている。
XML文書管理システム10は、構造化文書としてのXML文書を管理するXML文書管理サーバ(サーバコンピュータ)11と、当該サーバ11が有する外部記憶装置、例えば磁気ディスク装置(以下、HDDと称する)12とから構成される。HDD12は、XML文書管理プログラム121及びXML文書データベース122を格納する。
XML文書管理プログラム121は、XML文書及び当該XML文書に付随するバイナリデータをXML文書データベース122に格納して管理する処理をXML文書管理サーバ11に実行させるのに用いられる。XML文書データベース122は、XML文書の集合及び当該XML文書に付随するバイナリデータを保存する。XML文書データベース122は更に、当該データベース122に格納されるXML文書に基づいて作成される索引データも保存する。この索引データは、XML文書を検索するのに用いられる。
次に、XML文書管理システム10で適用される、XML文書及び当該XML文書に付随するバイナリデータの管理の原理について順次説明する。
(1)XML文書管理
まず、XML文書管理の原理について図2を参照して説明する。XML文書管理システム10では、XML文書は、従来から良く知られているように図2に示されるツリー構造で管理される。この管理は、ディレクトリを用いた、OSのファイルシステムにおけるファイル管理に相当する。図2では、“id”がそれぞれ“1”及び“2”のXML文書201及び202が、“公開特許_2005”で示されるノードの下位に登録されている。同様に、“id”が“10”のXML文書210が、“公開特許_2006”で示されるノードの下位に登録されている。XML文書201,202及び210は、例えばXMLで記述された特許文書である。
XML文書201及び202は、“/”で示されるルート→“公開特許_2005”のパスを辿ることにより取得(検索)可能である。XML文書210は、“/”で示されるルート→“公開特許_2006”のパスを辿ることにより取得(検索)可能である。このような検索条件としてのパスは、XQueryに代表されるクエリを用いて指定可能である。クエリ(XQuery)では、XML文書内のタグで表される構造も指定可能であり、これによりXML文書に含まれているタグ情報やテキスト情報を取り出すことも可能である。
(2)バイナリデータ管理
次に、バイナリデータ管理の原理について図3を参照して説明する。本実施形態では、テキストとしてのXML文書(XMLデータ)に付随するバイナリデータは、XML文書とは別のデータとして管理されて、XML文書と同様にXML文書データベース122に格納される。図3の例では、バイナリデータ211がXML文書201に付随し、バイナリデータ220A〜220CがXML文書210に付随している状態が示されている。ここでは、バイナリデータ211は特許文書としてのXML文書201に付随する特許図面のイメージデータであり、バイナリデータ220A〜220Cは特許文書としてのXML文書210に付随する特許図面のイメージデータである。
本実施形態では、バイナリデータがXML文書に付随していることを管理するために、XML文書とは別の情報(後述するファイルレコード)が用いられる。この情報を用いた関連付けにより、バイナリデータ及びXML文書を何ら加工することなく、バイナリデータがXML文書に付随していることを管理できる。ここで、XML文書とバイナリデータの例としては、上述のXML形式の特許文書と特許図面のイメージデータの他に、XHTMLファイル(XML形式でHTML(HyperText Markup Language)を表現したファイル)とイメージデータ、バイナリデータのプロパティ情報を表したXML文書と当該バイナリデータなどが挙げられる。
図4は図1に示されるXML文書管理システム10の主として機能構成を示すブロック図である。XML文書管理システム10は、XML文書データベース122に加えて、XML文書特定部401、管理情報生成部402、保存用ページ確保部403、バイナリデータ格納部404、関連付け部405、管理情報読み込み部406及びバイナリデータ取得部407の各処理部を含む。これらの処理部401〜407の機能については後述する。
処理部401〜407は、図1のXML文書管理サーバ11がHDD12に格納されているXML文書管理プログラム121を読み込んで実行することにより実現されるものとする。このプログラム121は、コンピュータ読み取り可能な記憶媒体に予め格納して頒布可能である。また、このプログラム121が、ネットワーク30を介してXML文書管理サーバ11にダウンロードされても構わない。
XML文書データベース122には、XML文書(XMLデータ)及びバイナリデータを格納するのに用いられるデータ領域としてのエクステント領域410が確保されている。エクステント領域410は、図1に示すHDD12が有する物理ディスクによって提供されるもので、エクステント411〜413を含む複数のエクステントから構成される。XML文書データベース122にはまた、エクステント領域410に格納されているXML文書(XMLデータ)及びバイナリデータを内部的にファイルとして管理するファイルテーブル420が格納される。
このように本実施形態では、XML文書(XMLデータファイル)及びバイナリデータ(バイナリファイル)を、ファイルテーブル410とエクステントとで管理する。このような管理手法は、OSのファイルシステムで採用されている。つまり本実施形態では、OSのファイルシステムとは別に、XML文書(XMLデータファイル)及びバイナリデータを管理するための独自のファイルシステムを採用している。
ここで、本実施形態で使用される用語について説明する。
(a)エクステント
エクステントとは、指定されたサイズで確保された物理的に連続するページ領域を指す。
(b)ファイル
ファイルとは、データベース(XML文書データベース122)に格納される「論理的な」まとまり(つまり論理的に1つの意味を持つデータ集合)ごとに割り当てた管理単位である。ファイルは物理的には、1つ、もしくは複数のエクステントから構成される。ファイルは、初期エクステントサイズで作成され、データの追加に応じて、エクステント単位で拡張される。
(c)ファイルテーブル
ファイルテーブル(ファイルテーブル420)は、エクステント領域(エクステント領域410)に格納されているファイルを管理するためのテーブルである。ファイルテーブルは、ファイルを管理するためのファイルレコードと呼ばれるレコードをファイル数分格納する。ファイルレコードのデータフォーマットについては後述する。
ファイルテーブルも1つのファイルである。このためファイルテーブルは、1つ、もしくは複数のエクステントから構成される。例えば、図4に示すファイルテーブル420は、エクステント421及び431を含む複数のエクステントから構成される。エクステント421には、ファイルレコード422及び423が格納されている。エクステント431には、ファイルレコード432を含む複数のファイルレコードが格納されている。ファイルレコード432は、例えば後述するXMLデータファイル#1を管理する。
「ファイル」についての説明の欄でも述べたように、本実施形態では、ファイル内のページを物理ディスクに確保する(割り当てる)方式として、エクステント方式が適用される。この方式では、ファイルは、複数の物理的に連続な領域、つまりエクステントによって構成される。ファイルに対するデータ追加に伴って当該ファイルのための領域が不足する場合には、エクステント単位で新たな連続領域が確保される。
図5は、ファイルレコード(例えばXMLデータファイル#1のファイルレコード)のデータフォーマットを示す。ファイルレコードは、当該ファイルレコードによって管理されるファイルのID(ファイルID)、ファイル名、当該ファイルを構成するエクステントの数(エクステント数)及びバイナリデータ(バイナリファイル)のID(バイナリファイルID)を含むヘッダ情報と、ファイルを構成するエクステントに関する情報(エクステント情報)とを保持する。エクステント情報は、ファイルを構成するエクステント数分存在する。ファイルレコードに保持されるヘッダ情報及びエクステント情報から構成される情報を管理情報(ファイル管理情報)と呼ぶ。
XMLデータファイルを管理するファイルレコード(XMLデータファイルのファイルレコード)の場合、バイナリファイルIDには、当該XMLデータファイルに最初に付随させられたバイナリファイルのバイナリファイルIDが用いられる。また、バイナリファイルを管理するファイルレコード(バイナリファイのファイルレコード)の場合、バイナリファイルIDには、当該ファイルの次にXMLデータファイルに付随させられたバイナリファイルのバイナリファイルIDが用いられる。
図6は、図5のファイルレコードで管理されるXMLデータファイル#1の論理イメージと物理ディスク(エクステント領域410)上の位置との関係の一例を示す。ここでは、XMLデータファイル#1は、エクステント#1、エクステント#2及びエクステント#3の3つのエクステントから構成される。物理ディスク上では、エクステント#1、エクステント#2及びエクステント#3は必ずしも連続していない。但し、エクステント#1、エクステント#2及びエクステント#3内では、そのエクステントを構成する複数のページ(物理ページ)は連続している。
図7は、図6に示されるXMLデータファイル#1のエクステント#1、エクステント#2及びエクステント#3に関するエクステント情報の一例を示す。図7の例では、エクステント#1、エクステント#2及びエクステント#3は、それぞれ連続する5ページ、10ページ及び11ページから構成される。エクステント#3のみが、空きページ(1ページ分の空きページ)を有する。
次に本実施形態の動作について、(1)バイナリデータの登録処理、(2)バイナリデータの取り出し処理を例に、順に説明する。
(1)バイナリデータの登録処理
まず、バイナリデータの登録処理について、図8のフローチャート及び図9のXML文書データベース122の状態を示す図を参照して説明する。
今、クライアント端末20のユーザが、ある検索条件に合致するXML文書(のファイルID)を取得して、当該(ファイルIDで指定される)XML文書(XMLデータファイル)にバイナリデータを付随(追加)させたいものとする。この場合、ユーザはクライアント端末20を操作して、XML文書管理システム10に対するXMLデータ検索を要求するクエリ(例えばXQuery)を当該クライアント端末20からネットワーク30経由で送出させる。
XML文書管理システム10のXML文書特定部401は、クライアント端末20からのクエリを受け取ると当該クエリを解析し、例えば索引を用いた周知の検索手法により、当該クエリで指定された検索条件(パス)に合致するXML文書のファイルIDを特定(取得)する(ステップS1)。ここでは、バイナリデータの追加対象となるXMLデータファイル#1のファイルIDが特定されたものとする。このファイルIDは、図9(a)に示されるファイルレコード432のヘッダ情報に含まれている。
XMLデータファイル(XML文書)#1のファイルIDが特定されると、ユーザはクライアント端末20を操作して、特定されたファイルIDで指定されるXMLデータファイル#1にバイナリデータを付随させることを指示するバイナリデータ登録要求を、当該クライアント端末20からXML文書管理システム10に送出させる。
XML文書管理システム10の管理情報生成部402は、クライアント端末20からのバイナリデータ登録要求に従い、要求されたバイナリデータの保存用ファイル(バイナリデータファイル)の管理情報を生成する(ステップS2)。このステップS2において管理情報生成部402は、ファイルテーブル420を構成するエクステント内の空きページを探す。管理情報生成部402は、生成された管理情報を保持するファイルレコードを、この空きページに登録する。ここでは、図9(a)に示されるように、エクステント421内の空きページに、要求されたバイナリデータの保存用ファイル(バイナリファイル)の管理情報を保持するファイルレコード424が登録されるものとする。この時点では、ファイルレコード424のヘッダ情報を構成するファイルID(ここではバイナリファイルID)、ファイル名、エクステント数及びバイナリファイルIDのうち、エクステント数及びバイナリファイルIDは生成されていない。また、ファイルレコード424のエクステント情報も生成されていない。
管理情報生成部402による管理情報生成が行われると、XML文書管理システム10の保存用ページ確保部403は、クライアント端末20から要求されたバイナリデータ(の実データ)の保存用ページ(エクステント)を、エクステント領域410から確保する(ステップS3)。ここでは、図9(b)に示されるように、エクステント411〜413が保存用ページ430として確保されたものとする。
するとXML文書管理システム10のバイナリデータ格納部404は、クライアント端末20から要求されたバイナリデータ(ファイルレコード424によって管理されるバイナリファイルの実データ)を、ステップS3で確保された保存用ページ430に図9(c)において矢印90で示すように格納する(ステップS4)。このとき管理情報生成部402は、保存用ページ430を構成するエクステント411〜413へのバイナリデータの格納状況に基づき、ファイルレコード424のヘッダ情報中にエクステント数を設定すると共に、ファイルレコード424中にエクステント411〜413に関するエクステント情報を設定する。
保存用ページ430にバイナリデータが格納されると(ステップS4)、XML文書管理システム10の関連付け部405は、ファイルレコード424のヘッダ情報中のファイルID、つまりファイルレコード424によって管理されるバイナリデータ(バイナリファイル)のファイルIDを、ステップS1で特定されたXMLデータファイル#1のファイルIDに関連付ける(ステップS5)。この関連付けは次のように行われる。
まず、上記特定されたファイルIDを含むファイルレコード432(XMLデータファイル#1のファイルレコード432)のヘッダ情報中に、バイナリファイルIDが設定されていないものとする。この場合、関連付け部405は、ファイルレコード424によって管理されるバイナリファイルのデータ、つまりステップS4で保存用ページ430に格納されたバイナリデータが、XMLデータファイル#1に最初に付随させられるデータであると判定する。
すると関連付け部405は、XMLデータファイル#1のファイルIDが設定されているファイルレコード432のヘッダ情報中に、ファイルレコード424によって管理されるバイナリファイルのファイルIDをバイナリファイルIDとして設定する。これにより、ファイルレコード424によって管理されるバイナリファイルのファイルIDが、XMLデータファイル#1のファイルIDに直接関連付けられる。
これに対し、XMLデータファイル#1のファイルレコード432のヘッダ情報中にバイナリファイルIDが既に設定されているものとする。この場合、関連付け部405は、ファイルレコード424によって管理されるバイナリファイルのデータが、ファイルレコード432のヘッダ情報中のバイナリファイルIDによって指定されるバイナリファイルのデータよりも後にXMLデータファイル#1に付随させられるデータであると判定する。
すると関連付け部405は、ファイルテーブル420を参照することにより、ファイルレコード432のヘッダ情報中のバイナリファイルIDから、当該バイナリファイルIDをファイルIDとして持つファイルレコードを辿る。このように関連付け部405は、XMLデータファイル#1のファイルレコード432から始まり、ファイルレコードのヘッダ情報中のバイナリファイルIDから、当該バイナリファイルIDをファイルIDとして持つ別のファイルレコードを辿る動作を、バイナリファイルIDがヘッダ情報中に設定されていないファイルレコードに到達するまで繰り返す。バイナリファイルIDがヘッダ情報中に設定されていないファイルレコードは、起点となったファイルレコード432によって管理されるXMLデータファイル(つまりXMLデータファイル#1)に前回付随されたバイナリファイルを管理する。
関連付け部405は、バイナリファイルIDがヘッダ情報中に設定されていないファイルレコードに到達した時点で、そのファイルレコードのヘッダ情報中に、ファイルレコード424によって管理されるバイナリファイル(つまりXMLデータファイル#1に新たに付随されるバイナリファイル)のファイルIDをバイナリファイルIDとして設定する。
これにより、ファイルレコード424によって管理されるバイナリファイル(今回XMLデータファイル#1に付随されたバイナリファイル)のファイルIDが、XMLデータファイル#1のファイルIDを起点とするチェーン(ファイルIDのチェーン)により関連付けられる。ここで、上記チェーンにより関連付けられるバイナリファイルのファイルIDの順序は、当該バイナリファイルの登録順に一致する。
このように本実施形態においては、XMLデータファイル#1に付随する全てのバイナリファイルのファイルIDが、これらのファイルのファイルレコードを用いて作成されるファイルIDのチェーン(つまり、XMLデータファイル#1のファイルIDを起点とする当該XMLデータファイル#1に付随する全てのバイナリファイルのファイルIDのチェーン)により、当該バイナリファイルの登録順に管理される。この管理のために、XMLデータファイル#1を何ら変更する必要がなく、したがって当該XMLデータファイル#1に付随する複数のバイナリファイルのデータ(バイナリデータ)のXML文書データベース122への高速登録が可能となる。また、上述のファイルID管理の適用により、XMLデータファイル#1のファイルIDが特定されるならば、この特定されたファイルIDを起点とするチェーンを辿るだけで、当該XMLデータファイル#1に付随する全てのバイナリファイルのファイルIDを高速で取得することが可能となる。
なお、XMLデータファイル#1に付随するバイナリファイルのファイルIDを当該XMLデータファイル#1のファイルIDに関連付ける手法は、上述のチェーンを用いた手法に限らない。例えば、XMLデータファイル#1に付随するバイナリファイル(バイナリデータ)のファイルIDを管理するための(管理情報を保持する)バイナリ管理ファイルを用いることにより、上述の関連付けを次のように実現することも可能である。
バイナリ管理ファイルは、例えばXMLデータファイル#1に最初に付随されるバイナリファイルの登録時にXML文書データベース122(の例えばエクステント領域410)内に作成される。このとき、バイナリ管理ファイルのファイルIDが、XMLデータファイル#1を管理するファイルレコード432のヘッダ情報中に、上述のバイナリファイルIDに代えて設定される。これにより、バイナリ管理ファイルは、XMLデータファイル#1に対応させてXML文書データベース122に格納されることになる。
バイナリ管理ファイルには、XMLデータファイル#1に新たにバイナリファイルが付随される都度、そのバイナリファイルのファイルIDが格納される。つまりバイナリ管理ファイルは、XMLデータファイル#1に付随する(関連付けられる)全てのバイナリファイルのファイルID一覧(管理情報)を保存するのに用いられる。これにより、XMLデータファイル#1のファイルレコード432に設定されているバイナリ管理ファイルのファイルIDに基づき、当該バイナリ管理ファイルを参照するだけで、当該XMLデータファイル#1に付随する全てのバイナリファイルのファイルIDを取得することが可能となる。
(2)バイナリデータの取り出し処理
次に、バイナリデータの取り出し処理について、図10フローチャートを参照して説明する。
今、クライアント端末20のユーザが、ある検索条件に合致するXML文書(のファイルID)を取得して、当該(ファイルIDで指定される)XML文書(XMLデータファイル)に付随しているバイナリデータを取得したいものとする。この場合、ユーザはクライアント端末20を操作して、XML文書管理システム10に対するXMLデータ検索を指示するクエリ(例えばXQuery)を当該クライアント端末20からネットワーク30経由で送出させる。
XML文書管理システム10のXML文書特定部401は、クライアント端末20からのクエリを受け取ると、前記ステップS1と同様に、当該クエリの示す検索条件に合致するXML文書(取得対象となるXML文書)のファイルIDを特定(取得)する(ステップS11)。ここでは、XMLデータファイル#1のファイルIDが特定されたものとする。
XMLデータファイル#1のファイルIDが特定されると、ユーザはクライアント端末20を操作して、特定されたファイルIDで指定されるXMLデータファイル#1に付随するバイナリデータを取得することを指示するバイナリデータ取得要求を、当該クライアント端末20からXML文書管理システム10に送出させる。
XML文書管理システム10の管理情報読み込み部406は、クライアント端末20からのバイナリデータ取得要求に従い、要求されたファイルID(つまり、ステップS11で特定されたファイルID)と関連付けられている、全てのバイナリデータ(バイナリファイル)のファイルIDを、次のようにして取得する(ステップS12)。まず管理情報読み込み部406は、上記特定されたファイルIDが設定されているファイルレコード(に保持されている管理情報)をファイルテーブル420から読み込む。ここでは、XMLデータファイル#1のファイルレコード432が読み出される。管理情報読み込み部406は、このファイルレコード432のヘッダ情報中のバイナリファイルIDから、当該バイナリファイルIDのバイナリファイルを管理するファイルレコードを辿るというように、バイナリファイルを管理するファイルレコードを辿る動作を繰り返すことにより、バイナリファイルIDのチェーンを辿る。これにより管理情報読み込み部406は、上記特定されたファイルIDと関連付けられている、全てのバイナリファイルのファイルIDを当該バイナリファイルの登録順に取得する。
XML文書管理システム10のバイナリデータ取得部407は、管理情報読み込み部406によって取得されたファイルIDで特定されるバイナリファイルの実データを次のようにしてエクステント領域410から取得する(ステップS13)。まずバイナリデータ取得部407は、取得されたファイルIDのバイナリファイルを管理するファイルレコードをエクステント領域410から読み込む。バイナリデータ取得部407は、このファイルレコードのヘッダ情報中のエクステント数と、当該ファイルレコード中のエクステント数分のエクステント情報とに基づき、エクステント領域410内の該当するエクステントから目的とするバイナリファイルの実データ(バイナリデータ)を取得する。取得されたデータはクライアント端末20に返される。
なお、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。例えば、上記実施形態では、構造化文書としてXML文書を例にとって説明したが、これに限るものではない。本発明は、例えば、SGML(Standard Generalized Markup Language)文書のようなXML文書以外の構造化文書にも同様に適用できる。
また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。
本発明の一実施形態に係るXML文書管理システムを含むクライアント−サーバシステムのハードウェア構成を示すブロック図。 同実施形態で適用されるXML文書管理の原理を説明するための図。 同実施形態で適用されるバイナリデータ管理の原理を説明するための図。 図1に示されるXML文書管理システム10の主として機能構成を示すブロック図。 同実施形態で適用されるファイルレコードのデータフォーマットを示す図。 図5のファイルレコードで管理されるXMLデータファイルの論理イメージと物理ディスク上の位置との関係の一例を示す。 図6に示されるXMLデータファイルの各エクステントに関するエクステント情報の一例を示す図。 同実施形態におけるバイナリデータの登録処理の手順を示すフローチャート。 上記バイナリデータの登録処理時におけるXML文書データベース122の状態を示す図。 同実施形態におけるバイナリデータの取り出し処理の手順を示すフローチャート。
符号の説明
10…XML文書管理システム(構造化文書管理システム)、11…XML文書管理サーバ(XML文書管理サーバコンピュータ)、121…XML文書管理プログラム、122…XML文書データベース(構造化文書データベース)、401…XML文書特定部(構造化文書特定手段)、402…管理情報生成部、403…保存用ページ確保部、404…バイナリデータ格納部、405…関連付け部、406…管理情報読み込み部、407…バイナリデータ取得部、410…エクステント領域、420…ファイルテーブル。

Claims (3)

  1. 構造化文書の集合を格納する構造化文書データベースと、
    バイナリデータを構造化文書識別情報によって識別される指定の構造化文書に付随して登録することを要求するためのクライアント端末からのバイナリデータ登録要求に従い、当該クライアント端末から要求された前記指定の構造化文書に付随されるべきバイナリデータを管理するための、ファイル識別情報及びバイナリデータ識別情報との対が設定可能なヘッダ情報を含むバイナリデータの管理情報であって、当該バイナリデータを識別するためのバイナリデータ識別情報が前記ファイル識別情報として設定され、且つ当該ファイル識別情報と対をなすバイナリ識別情報が未設定のヘッダ情報を含むバイナリデータの管理情報を生成して、当該バイナリデータの管理情報を前記構造化文書データベースに格納する管理情報生成手段と、
    前記クライアント端末から要求された前記指定の構造化文書に付随されるべきバイナリデータを前記構造化文書データベースに格納するバイナリデータ格納手段と、
    前記指定の構造化文書に付随されるべきバイナリデータが前記構造化文書データベースに格納された際に、前記構造化文書データベースに格納されている管理情報のうち、前記指定の構造化文書を識別する構造化文書識別情報がファイル識別情報として設定され、且つ当該ファイル識別情報と対をなすバイナリデータ識別情報が未設定のヘッダ情報を含む構造化文書の管理情報、または前記指定の構造化文書に付随されるべきバイナリデータに先行して前記構造化文書データベースに格納された前記指定の構造化文書に付随する別のバイナリデータを識別するバイナリデータ識別情報がファイル識別情報として設定され、且つ当該ファイル識別情報と対をなすバイナリデータ識別情報が未設定のヘッダ情報を含むバイナリデータの管理情報を対象に、前記指定の構造化文書に付随されるべきバイナリデータを識別するバイナリデータ識別情報を、当該管理情報のヘッダ情報中に前記ファイル識別情報と対をなすバイナリデータ識別情報として設定することにより、当該バイナリデータ識別情報が設定された管理情報によって、前記指定の構造化文書に付随されるべきバイナリデータを前記指定の構造化文書と関連付け関連付け手段と、
    構造化文書識別情報によって識別される指定の構造化文書に付随するバイナリデータを取得するためのクライアント端末からのバイナリデータ取得要求に従い、前記指定の構造化文書を識別する構造化文書識別情報を前記ファイル識別情報として含む当該要求された構造化文書の管理情報を起点として、当該管理情報中のバイナリデータ識別情報から、当該バイナリデータ識別情報をファイル識別情報として含むバイナリデータの管理情報を辿る動作を繰り返すことにより、当該構造化文書と関連付けられている全てのバイナリデータを、当該構造化文書に付随して前記構造化文書データベースに格納された順に特定し、当該特定されたバイナリデータを前記構造化文書データベースから取得するバイナリデータ取得手段と
    を具備することを特徴とする構造化文書管理システム。
  2. 前記クライアント端末からの検索要求に従い、前記構造化文書データベースに格納されている構造化文書の集合から当該検索要求で指定された検索条件に合致する構造化文書を特定する構造化文書特定手段を更に具備し、
    前記指定の構造化文書が、前記クライアント端末からの前記検索要求に従って特定された構造化文書である
    ことを特徴とする請求項1記載の構造化文書管理システム。
  3. 構造化文書データベースに格納される構造化文書を管理するコンピュータに、
    バイナリデータを構造化文書識別情報によって識別される指定の構造化文書に付随して登録することを要求するためのバイナリデータ登録要求がクライアント端末から与えられる都度、当該クライアント端末から要求された前記指定の構造化文書に付随されるべきバイナリデータを管理するための、ファイル識別情報及びバイナリデータ識別情報との対が設定可能なヘッダ情報を含むバイナリデータの管理情報であって、当該バイナリデータを識別するためのバイナリデータ識別情報が前記ファイル識別情報として設定され、且つ当該ファイル識別情報と対をなすバイナリ識別情報が未設定のヘッダ情報を含むバイナリデータの管理情報を生成して、当該バイナリデータの管理情報を前記構造化文書データベースに格納するステップと、
    前記クライアント端末から要求された前記指定の構造化文書に付随されるべきバイナリデータを前記構造化文書データベースに格納するステップと、
    前記指定の構造化文書に付随されるべきバイナリデータが前記構造化文書データベース格納される都度、前記構造化文書データベースに格納されている管理情報のうち、前記指定の構造化文書を識別する構造化文書識別情報がファイル識別情報として設定され、且つ当該ファイル識別情報と対をなすバイナリデータ識別情報が未設定のヘッダ情報を含む構造化文書の管理情報、または前記指定の構造化文書に付随されるべきバイナリデータに先行して前記構造化文書データベースに格納された前記指定の構造化文書に付随する別のバイナリデータを識別するバイナリデータ識別情報がファイル識別情報として設定され、且つ当該ファイル識別情報と対をなすバイナリデータ識別情報が未設定のヘッダ情報を含むバイナリデータの管理情報を対象に、前記指定の構造化文書に付随されるべきバイナリデータを識別するバイナリデータ識別情報を、当該管理情報のヘッダ情報中に前記ファイル識別情報と対をなすバイナリデータ識別情報として設定することにより、当該バイナリデータ識別情報が設定された管理情報によって、前記指定の構造化文書に付随されるべきバイナリデータを前記指定の構造化文書と関連付けるステップと、
    構造化文書識別情報によって識別される指定の構造化文書に付随するバイナリデータを取得するためのクライアント端末からのバイナリデータ取得要求に従い、前記指定の構造化文書を識別する構造化文書識別情報を前記ファイル識別情報として含む当該要求された構造化文書の管理情報を起点として、当該管理情報中のバイナリデータ識別情報から、当該バイナリデータ識別情報をファイル識別情報として含むバイナリデータの管理情報を辿る動作を繰り返すことにより、当該構造化文書と関連付けられている全てのバイナリデータを、当該構造化文書に付随して前記構造化文書データベースに格納された順に特定し、当該特定されたバイナリデータを前記構造化文書データベースから取得するステップと
    を実行させるためのプログラム。
JP2006269484A 2006-09-29 2006-09-29 構造化文書管理システム及びプログラム Expired - Fee Related JP4405493B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006269484A JP4405493B2 (ja) 2006-09-29 2006-09-29 構造化文書管理システム及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006269484A JP4405493B2 (ja) 2006-09-29 2006-09-29 構造化文書管理システム及びプログラム

Publications (2)

Publication Number Publication Date
JP2008090528A JP2008090528A (ja) 2008-04-17
JP4405493B2 true JP4405493B2 (ja) 2010-01-27

Family

ID=39374614

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006269484A Expired - Fee Related JP4405493B2 (ja) 2006-09-29 2006-09-29 構造化文書管理システム及びプログラム

Country Status (1)

Country Link
JP (1) JP4405493B2 (ja)

Also Published As

Publication number Publication date
JP2008090528A (ja) 2008-04-17

Similar Documents

Publication Publication Date Title
JP5023715B2 (ja) 情報処理システム、情報処理装置及びプログラム
JP4445509B2 (ja) 構造化文書検索システム及びプログラム
JP5656563B2 (ja) 文書管理システム、文書管理システムの制御方法、プログラム
JP4189369B2 (ja) 構造化文書検索装置及び構造化文書検索方法
JP2011065546A (ja) ファイル検索システム及びプログラム
JPH11242676A (ja) 構造化文書登録方法、検索方法、およびそれに用いられる可搬型媒体
JP4247108B2 (ja) 構造化文書検索方法、構造化文書検索装置、及びプログラム
JP2008090404A (ja) 文書検索装置、文書検索方法および文書検索プログラム
JP3868171B2 (ja) 文書のデジタル署名付き管理方法および文書管理装置
JP2005227851A (ja) 構造化データ記憶方法および装置
JP2005242904A (ja) 文書群分析装置、文書群分析方法、文書群分析システム、プログラムおよび記録媒体
JP2006127229A (ja) 構造化文書検索システム、構造化文書検索方法及びプログラム
JP4405493B2 (ja) 構造化文書管理システム及びプログラム
JP5712496B2 (ja) アノテーション復元方法、アノテーション付与方法、アノテーション復元プログラム及びアノテーション復元装置
JP2009187401A (ja) 文書管理システム、文書管理装置、文書管理方法及びプログラム
JP5063447B2 (ja) コンテンツ管理装置及び方法及びプログラム
CN101930451B (zh) 用于存储高效地搜索至少一个询问数据元素的方法和装置
JP4393498B2 (ja) 構造化文書管理システム及びプログラム
CN117873403B (zh) office文档IO中tmp文件还原方法及其系统
JP3725088B2 (ja) 知識情報収集システムおよび知識情報収集方法
JP4521413B2 (ja) データベース管理システム及びプログラム
JP5334214B2 (ja) 組織内ソーシャルマップ作成システム及び組織内ソーシャルマップ作成方法
JP3725837B2 (ja) 知識情報収集システムおよび知識情報収集方法
JP3937944B2 (ja) 構造化文書からの情報抽出方法及び装置及び情報抽出プログラム及びコンピュータ読み取り可能な記録媒体
JP3725835B2 (ja) 知識情報収集システムおよび知識情報収集方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090626

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090707

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090902

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20091006

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091104

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121113

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4405493

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131113

Year of fee payment: 4

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees