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

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

Info

Publication number
JP2006127235A
JP2006127235A JP2004316109A JP2004316109A JP2006127235A JP 2006127235 A JP2006127235 A JP 2006127235A JP 2004316109 A JP2004316109 A JP 2004316109A JP 2004316109 A JP2004316109 A JP 2004316109A JP 2006127235 A JP2006127235 A JP 2006127235A
Authority
JP
Japan
Prior art keywords
structured document
post
data
xml
original
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
JP2004316109A
Other languages
English (en)
Inventor
Motoki Nakanishi
基起 中西
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 JP2004316109A priority Critical patent/JP2006127235A/ja
Priority to US11/080,822 priority patent/US7457812B2/en
Priority to CNB2005100646039A priority patent/CN100498771C/zh
Publication of JP2006127235A publication Critical patent/JP2006127235A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/123Storage facilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/83Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/84Mapping; Conversion
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99942Manipulating data structure, e.g. compression, compaction, compilation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Document Processing Apparatus (AREA)

Abstract

【課題】構造化文書データベースから構造化文書を取得する都度、取得された構造化文書に対するパース処理を行わなくても済むようにする。
【解決手段】パース処理部14は、クライアント端末20から与えられる構造化文書格納要求に応じて、要求された構造化文書をパースすることによってパース後データを取得する。構造化文書更新部13は、パース処理部14によって取得されたパース後データをXMLDB11に格納する。構造化文書参照部15は、クライアント端末20から与えられる構造化文書取得(検索)要求に応じて、当該要求に合致する構造化文書のデータとしてのパース後データを取得する。要求処理部12は、構造化文書参照部15によって取得されたパース後データをクライアント端末20に返す。
【選択図】 図1

Description

本発明は、構造化文書データベースを管理する構造化文書管理システム、構造化文書管理方法及びプログラムに係り、特に構造化文書のパース後データを構造化文書データベースに格納する構造化文書管理システム、構造化文書管理方法及びプログラムに関する。
一般に、論理構造を持つ文書は構造化文書と呼ばれる。構造化文書において、当該文書の論理構造は、当該文書中に記述されたタグによって示される。このタグを用いて論理構造が表現された構造化文書は、コンピュータでの処理に適している。
さて、タグを用いてデータを記述する手段として、XML(Extensible Markup Language)が広く利用されている。XMLは、意味付けされたタグによるデータの階層化が可能で且つ構造の自由な拡張性に富むという特長を持つ。このXMLを用いて記述された文書はXML文書と呼ばれる。XML文書は、タグを用いて論理的に木構造で表現される構造化文書の代表として知られている。
一般に、XML文書はテキスト形式のファイルとして保存される。また、1つのファイルには1つのXML文書が記述されることが多い。よって、複数のXML文書は同数のテキスト形式ファイルとして保存される。
XMLの特長を生かしてXML文書を格納し、且つ当該文書中の任意の論理構造(文書構造)を検索可能とするデータベースは、XMLデータベース(XMLDB)と呼ばれる。またXMLDBを管理するソフトウェアはXMLDB管理システム(XMLDBMS)と呼ばれる。従来のXMLDBMSは、XML文書をテキスト形式のまま、或いは独自のバイナリ形式でXMLDBに格納するのが一般的である。このXMLDBにXML文書を格納する手法では、元の複数のXML文書の各々がそれぞれ個々のファイルに分かれているという保存上の構成が引き継がれている。このためXMLDBでは、複数のファイルに分かれている同数のXML文書が、その分かれている状態で、例えばテキスト形式のまま格納される。
したがって、このようなXML文書格納手法を適用したXMLDBを、クライアント端末上で動作するアプリケーションから検索する場合、当該アプリケーションによって検索結果として取得されるXML文書は、一般にテキスト形式となる。ここで、XML文書を独自のバイナリ形式で格納しているXMLDBでは、検索結果としてのXML文書を当該独自のバイナリ形式で返すことが可能である。しかし、独自のバイナリ形式のXML文書では、アプリケーション側でのその後のデータ処理が困難となる。そこで、XMLDBから検索された独自のバイナリ形式のXML文書を、XMLDBMSがテキスト形式に変換してからアプリケーションに返すのが一般的である。つまりXMLDBから検索されたXML文書は、当該XML文書がテキスト形式で格納されている場合は勿論、独自のバイナリ形式で格納されている場合も、テキスト形式でアプリケーションに返される。
一方、アプリケーションは、XMLDBMSから返されるテキスト形式のXML文書をそのまま利用することは殆どない。即ちXML文書を扱うアプリケーションの多くは、取得されたテキスト形式のXML文書を、XMLプロセッサ(XMLパーサ)を用いてパース済みデータ(パース後データ)と呼ばれる当該アプリケーションにとって利用しやすい形式に変換(パース)する。このXMLパーサのパース処理では、XML文書がXMLの文法に則って記述されているかが同時に検証される。そのため、XML文書の内容と量によっては、パース処理はアプリケーションにとって高負荷となる。
また、XMLDBを検索した結果が複数のXML文書に跨っている場合、得られるXML文書は複数に分かれる。その理由は、元のXML文書の保存上の構成がXMLDBにおけるXML文書の格納形態に引き継がれているためである。したがって、XMLDBに格納されたXML文書のデータを検索・更新する処理はファイル単位となり、アプリケーションは、常にファイル単位を意識する必要がある。
ところで、複数のXML文書の集合をDOM(Document Object Model)集合に変換してXMLDBに格納する手法も知られている(例えば、特許文献1参照)。この格納手法を利用するならば、アプリケーションは、XMLDBに格納されたXML文書のデータを検索・更新する処理で、必ずしもファイル単位を意識しなくても済む。
特開2003−157249(段落0003及び0013)
上記したように、従来のXMLDBにおいては、XML文書は当該XMLDBにテキスト形式あるいは独自のバイナリ形式で格納される。このため、この種のXMLDBに格納されたXML文書をクライアント(上で動作するアプリケーション)から検索して利用するには、検索結果として得たXML文書をクライアント(またはXMLDBMS)でパース済みデータにパースする必要がある。
ところパース処理は、その性質上、クライアント(またはXMLDBMS)にとって高負荷となる可能性がある。しかも、パース処理は、XML文書を取得する度に必要となるため、クライアントは高い処理コストを払わなければならない可能性がある。また、XMLDBに格納されているXML文書の更新処理において、その更新対象範囲がXML文書の一部のデータである場合には、当該XMLDBに格納されている更新対象のデータを変更するために再度パースして変更を加え、再び元の形式に戻す処理が必要になる。
本発明は上記事情を考慮してなされたものでその目的は、クライアントからの要求に従って構造化文書データベースから要求に合致した構造化文書を取得する都度、当該取得された構造化文書に対するパース処理を当該クライアントまたは構造化文書管理システム側で行わなくても済む構造化文書管理システム、構造化文書管理方法及びプログラムを提供することにある。
本発明の1つの観点によれば、構造化文書データベースを管理する構造化文書管理システムが提供される。このシステムは、クライアントから与えられる構造化文書格納要求に応じて、要求された構造化文書をパースすることによってパース後データを取得するパース処理手段と、このパース処理手段によって取得された構造化文書のパース後データを上記構造化文書データベースに格納する構造化文書格納手段と、クライアントから与えられる構造化文書取得要求に応じて、当該要求に合致する構造化文書のデータとしてのパース後データを上記構造化文書データベースから取得する構造化文書取得手段と、この構造化文書取得手段によって取得されたパース後データをクライアントに返す要求処理手段とを備える。
このような構成においては、構造化文書データベースには、構造化文書をパースした後のデータ、即ちパース後データ(パース済みデータ)が格納されるため、クライアントからの構造化文書取得要求(構造化文書の検索またはデータ取得要求)に対しては、構造化文書データベースから要求に合致した構造化文書のデータとしてパース後データを取得(検索)して、当該パース後データをクライアントに返すことができる。これにより、クライアント(クライアント上で動作するアプリケーション)、更には構造化文書管理システムは、取得した構造化文書に対するパース処理が不要となる。
ここで、構造化文書のパース後データが、1つの仮想的な構造化文書の木構造の部分木として構造化文書データベースに格納される構成、つまり構造化文書データベースに格納される全ての構造化文書のパース後データが、当該構造化文書データベース内で1つの木構造(データ構造)として格納される構成とすると良い。
このような構成においては、構造化文書データベースに格納される全ての構造化文書のパース後データの各ノード(要素)は、構造化文書データベース内の唯一の木構造のノードとなる。このため、構造化文書データベースに格納されたパース後データの元となった複数の構造化文書が同数のファイルに分かれていたとしても、クライアントは構造化文書データベースに格納されたデータに対し、ファイルの差異を意識することなく透過的に検索・更新などの処理が可能となる。
また、構造化文書データベースに格納されるパース後データの元の構造化文書が元構造化文書データベースに格納される構成とするならば、構造化文書データベースにパース後データの形で格納された構造化文書の原本性が、元構造化文書データベースに格納された構造化文書によって保証できる。
また、パース後のデータを操作するための汎用の問い合わせ言語を解析する問い合わせ言語処理手段を追加して、構造化文書取得要求(構造化文書の検索要求)での汎用の問い合わせ言語の使用を許すならば、クライアントは構造化文書取得(検索)のための専用言語を利用する必要がなく、使い慣れた言語を使うことができるため、開発生産性が向上する。
本発明によれば、構造化文書データベースには、構造化文書のパース後データが格納されるため、クライアントからの要求に合致した構造化文書のデータとして、当該構造化文書データベースからパース後データを取得することができる。この結果、構造化文書データベースから要求に合致した構造化文書が取得される都度、当該取得された構造化文書に対するパース処理をクライアントまたは構造化文書管理システム側で行わなくても済む。
以下、本発明の実施の形態につき図面を参照して説明する。
[第1の実施形態]
図1は本発明の第1の実施形態に係る構造化文書管理システム10の構成を示すブロック図である。この構造化文書管理システム10は、クライアント端末20と、ローカルエリアネットワーク(LAN)等のネットワークNを介して接続されている。クライアント端末20上では、構造化文書管理システム10を利用するアプリケーション(アプリケーションプログラム)21が動作する。構造化文書管理システム10は、XMLデータベース(XMLDB)11と、要求処理部12と、構造化文書更新部13と、パース処理部14と、構造化文書参照部15と、クエリ処理部16と、格納位置管理部17とから構成される。
XMLDB11は、構造化文書としてのXML文書を格納するデータベース(構造化文書データベース)である。ここでは、XMLDB11には、XML文書のパース後のデータが格納される。つまりXML文書は、詳細を後述するように、テキスト形式或いはシステム独自のバイナリ形式でXMLDB11に格納されるのではないことに注意されたい。
要求処理部12は、クライアント端末20上のアプリケーション21からの要求を受け付けて当該要求を解析する。構造化文書更新部13は、要求処理部12によって受け付けられた要求がXML文書の格納要求の場合、アプリケーション21から要求されたXML文書のパース後のデータをXMLDB11に格納する。このXMLDB11におけるXML文書の格納形態については後述する。構造化文書更新部13は、要求処理部12によって受け付けられた要求がパース後データ変更要求の場合、要求されたXML文書のパース後のデータでXMLDB11内の元のパース後データを更新する。
パース処理部14は、構造化文書更新部13から要求されたXML文書をパースする。構造化文書参照部15は、要求処理部12によって受け付けられた要求がXML文書の検索要求の場合、クエリ処理部16及び格納位置管理部17を利用して、要求された検索条件に合致するデータのXMLDB11における格納位置の情報を取得する。構造化文書参照部15は、要求処理部12によって受け付けられた要求がパース後データ取得要求の場合、要求されたパース後データをXMLDB11から取得する。
クエリ処理部16は、検索要求で指定されるクエリ文字列を解析する。クエリ文字列は具体的には、XMLDB11に格納されたパース後データを検索対象とするXPath式またはXQuery式である。XPath式とXQuery式とは、いずれもワールド・ワイド・ウエブ・コンソーシアム(World Wide Web Consortium (W3C))が公開している問い合わせ言語であり、一般に良く知られている。XPath式またはXQuery式は、本来はパース後のデータを操作するために使用する言語である。しかし、本実施形態では、XMLDB11にXML文書のパース後データが格納されるデータ格納手法を適用している。このため図1に示す構造化文書管理システム10では、XPath式またはXQuery式は、XMLDB11に格納されているデータを対象とする検索のための言語として使用可能となる。格納位置管理部17は、XMLDB11に格納されたパース後データの当該XMLDB11における格納位置の情報(格納位置情報)を管理する。
要求処理部12、構造化文書更新部13、パース処理部14、構造化文書参照部15、クエリ処理部16及び格納位置管理部17は、コンピュータ(例えばデータベースサーバコンピュータ)にインストールされた特定のソフトウェアプログラム(例えば構造化文書管理プログラム)を当該コンピュータ(内のCPU)が読み取って実行することにより実現される。このプログラムは、コンピュータで読み取り可能な記憶媒体に予め格納して頒布可能である。また、このプログラムが、ネットワークを介してダウンロード(頒布)されても構わない。
次に、XMLDB11におけるXML文書格納の概念について図2乃至図6を順次参照して説明する。本実施形態におけるXMLDB11の特徴は、XML文書をテキスト形式またはシステム独自のバイナリ形式で格納せず、XML文書をパースした後のデータ(パース後データ)を木構造で格納する点にある。
図2は、XML文書を格納していないXMLDB11の状態を示す。この状態では、XMLDB11には、“root”ノードと呼ぶ、木構造の根となる論理的な階層構造だけが存在する。この論理的な階層構造、つまり“root”ノードは、複数のXML文書のパース後データをまとめて格納する機能を持つ。
図3は、図2の状態のXMLDB11に、XML文書(XML文書A)31のパース後データ(パース後XML文書)310が追加された状態を示す。図3の例では、XML文書(A)31は、パース後データ(パース後XML文書)310に変換されて、“root”ノードの下に格納される。“root”ノードと、XML文書Aの最上位タグ(最上位ノード)であるbook(“book”ノード)とは、木構造における親子関係(“root”ノードが親)となるように関連付けられる。即ち、XMLDB11において、パース後データ(パース後XML文書)310は、“root”ノードを根とする木構造の部分木として管理される。“root”ノードを根とする木構造は、1つの仮想的なXML文書300の木構造であるといえる。
図5は、図3の状態、即ちXML文書(A)31のパース後データ(パース後XML文書)310がXMLDB11に格納された状態における、当該XMLDB11のデータ構造例を示す。この段階では、パース後データ(パース後XML文書)310は、仮想的なXML文書300の木構造における唯一の部分木となる。
XMLDB11には、格納されたXML文書のデータ構造が保存される。XMLDB11に格納されるデータは、木構造を構成するノード(要素)単位で管理される。そのために各ノードには、一意の番号であるノードIDが付与される。図5に示されるように、XMLDB11には、仮想的なXML文書110の木構造を、当該木構造を構成するノード(要素)単位で管理する構造情報テーブル51と、当該XML文書110の各ノード(要素)の情報(ノード情報)を管理するノード情報ブロック52とが格納される。構造情報テーブル51のエントリ数及びノード情報ブロック52の数は、XML文書110の木構造のノード数に一致する。
構造情報テーブル51のi番目(i=1,2,…)のエントリは、ノードiのノードID(ID=i)、当該ノードiの親ノードのノードID、当該ノードiの兄ノードのノードID、当該ノードiの弟ノードのノードID、及び当該ノードiの子ノードのノードIDを、それぞれ設定するフィールドから構成される。つまり、構造情報テーブル51の各エントリは、対応するノードの木構造における位置関係を示す情報(構造情報)を保持するのに用いられる。なお、ノードiに、親ノード、兄ノード、弟ノードまたは子ノードが存在しない場合、構造情報テーブル51におけるi番目のエントリの対応するフィールドには、該当するノードが存在しないことを示す特定の値が設定される(図5では、“−”で示されている)。
本実施形態では、ノードiに子ノードが複数存在する場合、構造情報テーブル51におけるi番目のエントリの子ノードのフィールドには、長男のノードのノードIDのみが設定される。例えば、ノードIDが2の“book”ノードの子ノードは、ノードIDが3,4及び5の、それぞれ“title”ノード、“author”ノード及び“publisher”ノードであり、ノードIDが3の“title”ノードが長男である。この場合、構造情報テーブル51における2番目のエントリの子ノードのフィールドには、“title”ノードのノードID(=3)が設定される。
一方、ノード情報ブロック52は、対応するノードに固有の情報(ノード情報)を保持するのに用いられる。ここでは、ノード情報ブロック52は、ノードIDと、当該ノードのタグ名と、当該ノードの値(要素値)とを保持する。ノード情報ブロック52が格納されているXMLDB11における位置は、格納位置情報(ブロックポインタ情報)によって示される。本実施形態では、例えばノードiのノード情報ブロック52を指す格納位置情報は、構造情報テーブル51のi番目のエントリにおけるノードIDが設定されるフィールド(ノードIDのフィールド)に当該ノードIDと対をなして設定されるものとする。勿論、構造情報テーブル51の各エントリに、格納位置情報が設定される専用のフィールドを持たせることも可能である。
上述した構造情報テーブル51のエントリの情報(構造情報)、及び当該エントリに対応するノード情報ブロック52は、XML文書のパース後データ(パース後XML文書)をXMLDB11に格納する際に作成される。このように本実施形態では、XML文書を、テキスト形式のまま、或いはシステム独自のバイナリ形式で、XMLDB11に格納するのではないことに注意されたい。即ち本実施形態では、XML文書のパース後データ(パース後XML文書)を“root”ノードをルートとする木構造の部分木として、当該XML文書の各ノード(要素)の当該木構造における位置関係を示す情報(構造情報)と、当該XML文書の各ノードに固有の情報(ノード情報)とが、XMLDB11に格納される。但し、このXML文書のパース後データ(パース後XML文書)に関する構造情報とノード情報がXMLDB11に格納されることを、説明の簡略化のために、XML文書のパース後データ(パース後XML文書)がXMLDB11に格納されると表現することもある。
図4は、図3の状態のXMLDB11に、更にXML文書(XML文書B)32のパース後データ(パース後XML文書)320が追加された状態を示す。XML文書(B)32は、XML文書(A)31と同様に、パース後データ(パース後XML文書)320に変換されて、“root”ノードの下に格納される。“root”ノードと、XML文書Bの最上位タグ(最上位ノード)であるbook(“book”ノード)とは、木構造における親子関係(“root”ノードが親)となるように関連付けられる。即ち、XMLDB11において、パース後データ(パース後XML文書)320も、パース後データ(パース後XML文書)310と同様に、“root”ノードを根とする木構造の部分木として管理される。
図6は、図4の状態、即ちXML文書(A)31のパース後データ(パース後XML文書)の次にXML文書(B)32のパース後データ(パース後XML文書)320がXMLDB11に格納された状態における、当該XMLDB11のデータ構造例を示す。ここでは、XML文書31及び32のパース後データ(パース後XML文書)310及び320が、いずれも“root”を根とする木構造(仮想的なXML文書300の木構造)の部分木として、XMLDB11に格納される。つまりXMLDB11に格納される全てのパース後データ(パース後XML文書)は、1つの木構造を構成する。
図6において、パース後データ(パース後XML文書)320の最上位ノードは、ノードIDとして9が付与された“book”ノードである。ここで、パース後データ(パース後XML文書)320におけるノードIDが9の“book”ノードは、パース後データ(パース後XML文書)310におけるノードIDが2の“book”ノードの弟ノードとして関連付けられる。したがって、ノードIDが2の“book”ノードに対応する、構造情報テーブル51の2番目のエントリにおける弟ノードのフィールドは、弟ノードなしを示す状態“−”から(図5参照)、ノードIDが9のノード(“book”ノード)を弟ノードとして示す状態に更新される。また、パース後データ(パース後XML文書)320をXMLDB11に格納する際に、構造情報テーブル51には、当該パース後データ(パース後XML文書)320のノード数に一致する数のエントリ(ここでは7個のエントリ)が追加される。
次に、図1に示す構造化文書管理システム10における動作について、(1-1)格納処理、(1-2)検索処理、(1-3)パース後データ取得処理、及び、(1-4)パース後データ変更処理を例に順に説明する。
(1-1)格納処理
まず、構造化文書管理システム10における格納処理の手順について、図7のフローチャートを参照して説明する。
今、クライアント端末20のアプリケーション21から構造化文書管理システム10に対して、XML文書の格納要求が発行されたものとする。この場合、構造化文書管理システム10内の要求処理部12は、アプリケーション21から格納要求と格納対象となるXML文書とを受け取る(ステップS1)。
次に要求処理部12は、受け取った要求を解析する(ステップS2)。この例のように、受け取った要求が格納要求であった場合、要求処理部12は、アプリケーション21から受け取ったXML文書を構造化文書更新部13に渡す。構造化文書更新部13は、このXML文書をパース処理部14に渡す。するとパース処理部14は、構造化文書更新部13から渡されたXML文書をパースする(ステップS3)。そしてパース処理部14は、パースの対象となったXML文書が文法的に正当かを調べ、正当であれば構造化文書更新部13にパース後のデータを返す。なお、正当でない場合には、その旨がアプリケーション21に通知される。
構造化文書更新部13は、パース処理部14によるパース後データ(パース後XML文書)のノード毎のノード情報を、先に述べた図5または図6に示されるようなデータ構造のノード情報ブロック52の形式でXMLDB11に格納する(ステップS4)。つまり構造化文書更新部13は、パース後データのノード情報をXMLDB11に格納する。構造化文書更新部13は、パース後データと、当該パース後データのノード情報を保持するノード情報ブロック52のXMLDB11内の格納位置を示す格納位置情報を格納位置管理部17に渡す。
すると格納位置管理部17は、XMLDB11に格納されている構造情報テーブル51にエントリを追加して、当該エントリに、格納位置情報を含む図5または図6に示されるようなデータ構造の構造情報を保存する(ステップS5)。このステップS5において、格納位置管理部17は、格納対象のXML文書の最上位ノード(以下、ノードXと称する)と“root”ノードとが親子関係になるように(“root”ノードが親)、構造情報テーブル51の対応エントリに構造情報を設定する。またステップS4において、既に少なくとも1つのXML文書がXMLDB11に格納済みであるならば、格納位置管理部17は、当該XMLDB11に最も最近に格納されたXML文書の最上位ノードとノードXとが兄弟関係になるように(ノードXが弟)、構造情報を設定する。
このように格納位置管理部17は、パース後データの構造情報を保存する際に、XMLDB11内の全てのXML文書(パース後XML文書)が1つの木構造となるように、構造情報を設定する。その後、格納位置管理部17は、構造化文書更新部13に要求完了を通知する。構造化文書更新部13は、この要求完了を要求処理部12に通知する。要求処理部12は、この要求完了をネットワークNを介してクライアント端末20のアプリケーション21に通知する(ステップS6)。
以上、XML文書の格納処理について説明した。この格納処理において最も特徴的な処理はステップS5である。このステップS5の処理により、XMLDB11に格納されている全てのXML文書(パース後XML文書)が1つの木構造(仮想的なXML文書300)の部分木を形成することになる。
(1-2)検索処理
次に、構造化文書管理システム10における検索処理の手順について、図8のフローチャートを参照して説明する。
今、クライアント端末20のアプリケーション21から構造化文書管理システム10に対して、XML文書の検索要求が発行されたものとする。この場合、要求処理部12は、アプリケーション21から検索要求と検索に用いられるクエリ文字列とを受け取る(ステップS11)。
次に要求処理部12は、受け取った要求を解析する(ステップS12)。この例のように、受け取った要求が検索要求であった場合、要求処理部12は、アプリケーション21から受け取ったクエリ文字列を構造化文書参照部15に渡す。構造化文書参照部15は、このクエリ文字列をクエリ処理部16に渡して、当該クエリ文字列の解析を要求する。するとクエリ処理部16は、構造化文書参照部15から渡されたクエリ文字列を解析する(ステップS13)。このステップS13において、クエリ処理部16はクエリ文字列が文法的に正当かを調べ、正当であればクエリ文字列の解析データ(クエリ解析データ)を構造化文書参照部15に返す。なお、正当でない場合には、その旨がアプリケーション21に通知される。
構造化文書参照部15は、クエリ処理部16から返されたクエリ解析データを格納位置管理部17に渡す。このクエリ解析データは、検索の対象となるノード(ここではXML文書の最上位ノード)へのパスを示す。そこで格納位置管理部17は、クエリ解析データに従って、XMLDB11に保存されている構造情報テーブル51を検索し、当該クエリ解析データに合致する格納位置情報、即ち当該クエリ解析データで示されるパスで特定されるノードのノードIDに対応する格納位置情報を取得する(ステップS14)。格納位置管理部17は、取得された格納位置情報を完了通知と共にパース処理部14へ通知する。この要求完了と取得された格納位置情報とは、パース処理部14から要求処理部12及びネットワークNを介してクライアント端末20のアプリケーション21に通知される(ステップS15)。
これによりアプリケーション21は、検索要求で指定したクエリ文字列によって示される検索条件に合致したノードのノード情報(パース後データのノード情報)の格納位置情報を取得できる。アプリケーション21は、この格納位置情報を利用して、後述するパース後データ取得要求またはパース後データ変更要求を構造化文書管理システム10に発行することにより、当該格納位置情報で指定されるパース後データ(ノード情報ブロック52に保持されているノード情報)を取得または変更(更新)することができる。勿論、格納位置情報に限らず、例えば検索要求で指定されたクエリ文字列によって示される検索条件に合致したノードのノード情報がクライアント端末20のアプリケーション21に返される構成であっても構わない。
なお、ノードiに固有のノード情報の格納位置を示す格納情報は、当該ノードiに固有の構造情報(構造情報テーブル51内のエントリ情報)中に、当該ノードiのノードIDと共に含まれている。したがって、ノードiに対応する格納情報は、当該ノードiのノードIDを用いて構造情報テーブル51を参照することにより取得することが可能である。そこで、上記ステップS14では、クエリ解析データで示されるパスで特定されるノードのノードIDが取得され、上記ステップS15では、当該取得されたノードIDがアプリケーション21に通知されようにしても構わない。
(1-3)パース後データ取得処理
次に、構造化文書管理システム10におけるパース後データ取得処理の手順について、図9のフローチャートを参照して説明する。
今、クライアント端末20のアプリケーション21から構造化文書管理システム10に対して、パース後データ取得要求が発行されたものとする。この場合、構造化文書管理システム10内の要求処理部12は、アプリケーション21からパース後データ取得要求と取得すべきパース後データの格納位置情報とを受け取る(ステップS21)。この格納位置情報は、例えば、上記したアプリケーション21からの検索要求に従う構造化文書管理システム10の検索処理によって、当該アプリケーション21が構造化文書管理システム10から取得したものである。
次に要求処理部12は、受け取った要求を解析する(ステップS22)。この例のように、受け取った要求がパース後データ取得要求であった場合、要求処理部12は、アプリケーション21から受け取った格納位置情報を構造化文書参照部15に渡す。構造化文書参照部15は、この格納位置情報に従って、XMLDB11からパース後データを取得する(ステップS23)。構造化文書参照部15は、取得されたパース後データを完了通知と共に要求処理部12へ通知する。この要求完了と取得されたパース後データとは、要求処理部12からネットワークNを介してクライアント端末20のアプリケーション21に通知される(ステップS24)。
(1-4)パース後データ変更処理
次に、構造化文書管理システム10におけるパース後データ変更処理の手順について、図10のフローチャートを参照して説明する。
今、クライアント端末20のアプリケーション21から構造化文書管理システム10に対して、パース後データ変更要求が発行されたものとする。この場合、要求処理部12は、アプリケーション21から、パース後データ変更要求、変更されるべきパース後データの格納位置情報及び変更後のXML文書とを受け取る(ステップS31)。この格納位置情報は、例えば、上記したアプリケーション21からの検索要求に従う構造化文書管理システム10の検索処理によって、当該アプリケーション21が構造化文書管理システム10から取得したものである。ここでは、この格納位置情報が、XML文書(XML文書A)31の“book”ノード(“book”タグ)のノード情報が格納されているXMLDB11内の位置を示すものとする。また、変更後のXML文書がXML文書Cであるものとする。
次に要求処理部12は、受け取った要求を解析する(ステップS32)。この例のように、受け取った要求がパース後データ変更要求であった場合、要求処理部12は、アプリケーション21から受け取った変更後のXML文書Cを構造化文書更新部13に渡す。構造化文書更新部13は、このXML文書Cをパース処理部14に渡す。するとパース処理部14は、構造化文書更新部13から渡されたXML文書Cをパースする(ステップS33)。このステップS33において、パース処理部14は、パースの対象となったXML文書Cが文法的に正当かを調べ、正当であれば構造化文書更新部13にパース後のデータを返す。
構造化文書更新部13は、要求処理部12から渡された格納位置情報に基づいて、XMLDB11に格納されているパース後データ(つまり、変更前XML文書Aのパース後データ)を当該XMLDB11から取得する(ステップS34)。
構造化文書更新部13は、ステップS34で取得された変更前XML文書Aのパース後データのノード情報を、ステップS33でパース処理部14によって取得された変更後XML文書Cのパース後データのノード情報で更新する(ステップS35)。このステップS35において、構造化文書更新部13は、更新されたパース後データのノード情報を、XMLDB11における元の格納位置に再格納する。構造化文書更新部13は、このXMLDB11に再格納されたパース後データと、当該パース後データのXMLDB11における格納位置を示す格納位置情報とを格納位置管理部17に渡す。
格納位置管理部17は、構造化文書更新部13によってXMLDB11に再格納されたパース後データの構造情報で、当該XMLDB11内の対応する旧構造情報を更新する(ステップS36)。これにより、アプリケーション21からのパース後データ変更要求前にXMLDB11に格納されていたXML文書Aのパース後データは、変更後のXML文書Cのパース後データに置き換えられる。
その後、格納位置管理部17は、構造化文書更新部13に要求完了を通知する。構造化文書更新部13は、この要求完了を要求処理部12に通知する。要求処理部12は、この要求完了をネットワークNを介してクライアント端末20のアプリケーション21に通知する(ステップS37)。
このように、第1の実施形態においては、XML文書のパース後データがXMLDB11に格納される。このため、アプリケーション21(クライアント端末20)は、構造化文書管理システム10に対するデータ取得要求(パース後データ取得要求)により、XMLDB11から、XML文書のデータとして、XML文書のパース後データを取得することができる。これによりアプリケーション21(または構造化文書管理システム10)は、XMLDB11から取得されたデータに対して負荷の高いパース処理を行わなくてよく、処理の高速化が実現できる。この効果は、XMLDB11から同一データを複数回取得する場合に特に大きくなる。
また、第1の実施形態において、XMLDB11に格納されたXML文書は、1つの仮想的なXML文書のパース後データの木構造の一部(部分木)として管理される。このため、元々複数のファイルに分かれていた同数のXML文書の検索を、1回の検索処理で実行できる。他にも、同様な理由により、元々複数のファイルに分かれていた同数のXML文書の取得や削除を、1回の処理で実行できる。
[第2の実施形態]
図11は、本発明の第2の実施形態に係る構造化文書管理システム100の構成を示すブロック図である。図11において、図1と等価な要素には同一参照番号を付してある。
図11に示す構造化文書管理システム100が図1の構造化文書管理システム10と異なる点は、元XML文書DB(元XML文書データベース)110と、元XML文書格納位置管理部117とが追加されたことにある。元XML文書DB110は、パース後データの元のXML文書(例えばテキスト形式のXML文書)を格納する。元XML文書格納位置管理部117は、パース後データの元のXML文書の元XML文書DB110における格納位置の情報(格納位置情報)と、当該パース後データのXMLDB11における格納位置の情報(格納位置情報)とを対応付けて管理する。
次に、図11に示す構造化文書管理システム100における動作について、(2-1)格納処理、及び(2-2)元XML文書取得処理を例に順に説明する。なお、構造化文書管理システム100における検索処理及びパース後データ取得処理は、それぞれ構造化文書管理システム10における検索処理及びパース後データ取得処理と同様である。
(2-1)格納処理
まず、構造化文書管理システム100における格納処理の手順について、図12のフローチャートを参照して説明する。
今、クライアント端末20のアプリケーション21から構造化文書管理システム10に対して、XML文書の格納要求が発行されたものとする。この場合、構造化文書管理システム10ではまず、図7のステップS1乃至S5と同様の処理(ステップS41乃至S45)が実行される。これにより、格納対象となるXML文書のパース後データのノード情報がXMLDB11に格納される。また、パース後データの構造情報がXMLDB11に格納されると共に、XMLDB11内の全てのXML文書(パース後XML文書)が1つの木構造となるように、構造情報が設定される。
すると構造化文書更新部13は、パース処理部14によってパースされる前のXML文書、つまりXMLDB11に格納されたパース後データの元になったXML文書(ここではテキスト形式のXML文書)を元XML文書DB110に格納する(ステップS46)。
構造化文書更新部13は、XMLDB11に格納されたパース後データの当該XMLDB11における格納位置を示す格納位置情報(XMLDB内格納位置情報)と元XML文書DB110に格納された元のXML文書の当該元XML文書DB110における格納位置を示す格納位置情報(元XML文書DB内格納位置情報)とを元XML文書格納位置管理部117に渡す。すると元XML文書格納位置管理部117は、構造化文書更新部13から受け取ったXMLDB内格納位置情報と元XML文書DB内格納位置情報との対を元XML文書DB110に格納する(ステップS47)。その後、元XML文書格納位置管理部117は、構造化文書更新部13に要求完了を通知する。構造化文書更新部13は、この要求完了を要求処理部12に通知する。要求処理部12は、この要求完了をネットワークNを介してクライアント端末20のアプリケーション21に通知する(ステップS48)。
(2-2)元XML文書取得処理
次に、構造化文書管理システム100における元XML文書取得処理の手順について、図13のフローチャートを参照して説明する。
今、クライアント端末20のアプリケーション21から構造化文書管理システム10に対して、元XML文書取得要求が発行されたものとする。この場合、構造化文書管理システム10内の要求処理部12は、アプリケーション21から元XML文書取得要求とパース後データの格納位置情報とを受け取る(ステップS51)。このパース後データの格納位置情報は、取得すべき元XML文書のパース後データが格納されているXMLDB11における位置を示す。
次に要求処理部12は、受け取った要求を解析する(ステップS52)。この例のように、受け取った要求が元XML文書取得要求であった場合、要求処理部12は、アプリケーション21から受け取ったパース後データの格納位置情報を構造化文書参照部15に渡す。構造化文書参照部15は、このパース後データの格納位置情報を元XML文書格納位置管理部117に渡す。元XML文書格納位置管理部117は、このパース後データの格納位置情報に基づいて元XML文書DB110を参照することにより、当該パース後データの格納位置情報と対をなす元のXML文書の格納位置情報を取得する(ステップS53)。元XML文書格納位置管理部117は、取得された元のXML文書の格納位置情報を構造化文書参照部15に通知する。
構造化文書参照部15は、元XML文書格納位置管理部117によって通知された元のXML文書の格納位置情報に従って、元XML文書DB110から元のXML文書のデータを取得する(ステップS54)。構造化文書参照部15は、取得された元のXML文書のデータを完了通知と共に要求処理部12へ通知する。この要求完了と取得された元のXML文書のデータとは、要求処理部12からネットワークNを介してクライアント端末20のアプリケーション21に通知される(ステップS55)。
このように、第2の実施形態においては、XML文書のパース後データがXMLDB11に格納されるだけでなく、当該パース後データの元のXML文書が元XML文書DB110に格納される。これに加えて、パース後データ及び元のXML文書各々の格納位置を示す格納位置情報が、元XML文書格納位置管理部117によって対応付けて保存管理される。このため第2の実施形態においては、上記第1の実施形態で得られる効果に加えて、XMLDB11に格納されたXMLデータの原本性保証が実現できる。更に第2の実施形態においては、検索またはデータ取得の対象を、パース後データにするか、元のXML文書にするかを、処理の内容や特性に応じて選択できる。
なお、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
本発明の第1の実施形態に係る構造化文書管理システム10の構成を示すブロック図。 XML文書を格納していないXMLDB11の状態であって、“root”ノードと呼ぶ、木構造の根となる論理的な階層構造だけが存在するXMLDB11の状態を示す図。 図2の状態のXMLDB11に、XML文書(XML文書A)31のパース後データ310が追加された状態を示す図。 図3の状態のXMLDB11に、XML文書(XML文書B)32のパース後データ320が追加された状態を示す図。 図3の状態のXMLDB11における、当該XMLDB11のデータ構造例を示す図。 図4の状態のXMLDB11における、当該XMLDB11のデータ構造例を示す図。 構造化文書管理システム10における格納処理の手順を示すフローチャート。 構造化文書管理システム10における検索処理の手順を示すフローチャート。 構造化文書管理システム10におけるパース後データ取得処理の手順を示すフローチャート。 構造化文書管理システム10におけるパース後データ変更処理の手順を示すフローチャート。 本発明の第2の実施形態に係る構造化文書管理システム100の構成を示すブロック図。 構造化文書管理システム100における格納処理の手順を示すフローチャート。 構造化文書管理システム100における元XML文書取得処理の手順を示すフローチャート。
符号の説明
10,100…構造化文書管理システム、11…XMLDB(XMLデータベース、構造化文書データベース)、12…要求処理部、13…構造化文書更新部(構造化文書格納手段、第1の格納手段)、14…パース処理部、15…構造化文書参照部(構造化文書取得手段)、16…クエリ処理部(問い合わせ言語処理手段)、17…格納位置管理部(構造化文書格納手段、第2の格納手段)、20…クライアント端末、21…アプリケーション、31…XML文書(XML文書A)、32…XML文書(XML文書A)、51…構造情報テーブル、52…ノード情報ブロック、110…元XML文書DB(元構造化文書データベース)、117…元XML文書格納位置管理部(元構造化文書格納位置管理手段)、300…仮想的なXML文書、310,320…パース後データ(パース後XML文書)。

Claims (12)

  1. 構造化文書データベースを管理する構造化文書管理システムにおいて、
    クライアントから与えられる構造化文書格納要求に応じて、要求された構造化文書をパースすることによってパース後データを取得するパース処理手段と、
    前記パース処理手段によって取得された前記構造化文書のパース後データを前記構造化文書データベースに格納する構造化文書格納手段と、
    前記クライアントから与えられる構造化文書取得要求に応じて、当該要求に合致する構造化文書のデータとしてのパース後データを前記構造化文書データベースから取得する構造化文書取得手段と、
    前記構造化文書取得手段によって取得されたパース後データを前記クライアントに返す要求処理手段とを具備することを特徴とする構造化文書管理システム。
  2. 前記構造化文書格納手段は、前記構造化文書のパース後データを、1つの仮想的な構造化文書の木構造の部分木として前記構造化文書データベースに格納することを特徴とする請求項1記載の構造化文書管理システム。
  3. 前記構造化文書格納手段は、
    前記構造化文書のパース後データから前記仮想的な構造化文書の木構造の要素となる各ノードのノード情報を取得して前記構造化文書データベースに格納する第1の格納手段と、
    前記構造化文書のパース後データから前記仮想的な構造化文書の木構造の要素となる各ノードの親子兄弟関係を抽出して、当該抽出された親子兄弟関係を管理するための構造情報を前記構造化文書データベースに格納する第2の格納手段と
    を含むことを特徴とする請求項2記載の構造化文書管理システム。
  4. 前記構造化文書格納手段は、当該構造化文書格納手段によって前記構造化文書データベースに格納されるパース後データの元の構造化文書を元構造化文書データベースに格納することを特徴とする請求項1記載の構造化文書管理システム。
  5. 前記構造化文書取得手段は、前記クライアントから与えられる元構造化文書取得要求に応じて、要求された元の構造化文書のデータを前記元構造化文書データベースから取得することを特徴とする請求項4記載の構造化文書管理システム。
  6. 前記構造化文書データベースに格納されるパース後データの当該構造化文書データベースにおける格納位置を示す第1の格納位置情報と、前記元構造化文書データベースに格納される当該パース後データの元の構造化文書の当該元構造化文書データベースにおける格納位置を示す第2の格納位置情報とを対応付けて前記元構造化文書データベースに格納する元構造化文書格納位置管理手段を更に具備し、
    前記元構造化文書格納位置管理手段は、前記クライアントから第2の格納位置情報による元構造化文書取得要求が与えられた場合、当該第2の格納位置情報と対応付けられている第1の格納位置情報を前記元構造化文書データベースから取得し、
    前記構造化文書取得手段は、前記元構造化文書格納位置管理手段によって取得される前記第1の格納位置情報に従って、要求された元の構造化文書のデータを前記元構造化文書データベースから取得する
    ことを特徴とする請求項5記載の構造化文書管理システム。
  7. 前記クライアントから与えられる構造化文書検索要求に応じて前記構造化文書データベースを検索し、当該要求に合致する構造化文書のデータとしてのパース後データが格納されている前記構造化文書データベースにおける格納位置を示す第1の格納位置情報を取得する格納位置管理手段を更に具備し、
    前記要求処理手段は、前記格納位置管理手段によって取得された前記第1の格納位置情報を、前記構造化文書検索要求に対する検索結果として前記クライアントに返すことを特徴とする請求項6記載の構造化文書管理システム。
  8. パース後のデータを操作するための汎用の問い合わせ言語を解析する問い合わせ言語処理手段を更に具備し、
    前記構造化文書取得要求はパース後のデータを操作するための汎用の問い合わせ言語を含み、
    前記構造化文書取得手段は、前記構造化文書取得要求に含まれている前記問い合わせ言語を前記問い合わせ言語処理手段により解析させ、その解析結果に従って、当該解析結果の示す要求に合致する構造化文書のデータとしてのパース後データを前記構造化文書データベースから取得する
    ことを特徴とする請求項1記載の構造化文書管理システム。
  9. 構造化文書管理システムにおいて構造化文書データベースを管理するための構造化文書管理方法であって、
    クライアントから前記構造化文書管理システムに与えられる構造化文書格納要求に応じて、要求された構造化文書をパースするステップと、
    構造化文書をパースすることによって取得されるパース後データを前記構造化文書に格納するステップと、
    前記クライアントから与えられる構造化文書取得要求に応じて、当該要求に合致する構造化文書のデータとしてのパース後データを前記構造化文書データベースから取得するステップと、
    前記取得されたパース後データを前記クライアントに返すステップと
    を具備することを特徴とする構造化文書管理方法。
  10. 前記構造化文書データベースに格納される前記パース後データの元の構造化文書を元構造化文書データベースに格納するステップを更に具備することを特徴とする請求項9記載の構造化文書管理方法。
  11. 前記クライアントから与えられる元構造化文書取得要求に応じて、要求された元の構造化文書のデータを前記元構造化文書データベースから取得するステップと、
    前記取得されたパース後データを前記クライアントに返すステップと
    を更に具備することを特徴とする請求項10記載の構造化文書管理方法。
  12. 構造化文書データベースを管理するためのプログラムであって、
    コンピュータに、
    クライアントから前記構造化文書管理システムに与えられる構造化文書格納要求に応じて、要求された構造化文書をパースするステップと、
    構造化文書をパースすることによって取得されるパース後データを前記構造化文書に格納するステップと、
    前記クライアントから与えられる構造化文書取得要求に応じて、当該要求に合致する構造化文書のデータとしてのパース後データを前記構造化文書データベースから取得するステップと、
    前記取得されたパース後データを前記クライアントに返すステップと
    を実行させるためのプログラム。
JP2004316109A 2004-10-29 2004-10-29 構造化文書管理システム、構造化文書管理方法及びプログラム Pending JP2006127235A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2004316109A JP2006127235A (ja) 2004-10-29 2004-10-29 構造化文書管理システム、構造化文書管理方法及びプログラム
US11/080,822 US7457812B2 (en) 2004-10-29 2005-03-16 System and method for managing structured document
CNB2005100646039A CN100498771C (zh) 2004-10-29 2005-04-15 用于管理结构化文件的系统和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004316109A JP2006127235A (ja) 2004-10-29 2004-10-29 構造化文書管理システム、構造化文書管理方法及びプログラム

Publications (1)

Publication Number Publication Date
JP2006127235A true JP2006127235A (ja) 2006-05-18

Family

ID=36387676

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004316109A Pending JP2006127235A (ja) 2004-10-29 2004-10-29 構造化文書管理システム、構造化文書管理方法及びプログラム

Country Status (3)

Country Link
US (1) US7457812B2 (ja)
JP (1) JP2006127235A (ja)
CN (1) CN100498771C (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007096844A (ja) * 2005-09-29 2007-04-12 Nec Personal Products Co Ltd 文書表示方法及び文書表示装置

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006185408A (ja) * 2004-11-30 2006-07-13 Matsushita Electric Ind Co Ltd データベース構築装置及びデータベース検索装置及びデータベース装置
JP5320697B2 (ja) * 2007-07-26 2013-10-23 富士通株式会社 照合処理プログラムおよび照合処理装置
US8589788B2 (en) * 2007-12-19 2013-11-19 International Business Machines Corporation Methods, systems, and computer program products for automatic parsing of markup language documents
US8352509B2 (en) * 2007-12-19 2013-01-08 International Business Machines Corporation Methods, systems, and computer program products for accessing a multi-format data object
US8145794B2 (en) * 2008-03-14 2012-03-27 Microsoft Corporation Encoding/decoding while allowing varying message formats per message
US8397158B1 (en) 2008-03-31 2013-03-12 Sonoa Networks India (PVT) Ltd System and method for partial parsing of XML documents and modification thereof
JP2013246522A (ja) * 2012-05-23 2013-12-09 Hitachi Ltd 構造化文書検索装置及びプログラム
US10810368B2 (en) * 2012-07-10 2020-10-20 Robert D. New Method for parsing natural language text with constituent construction links
CN109657042A (zh) * 2018-12-11 2019-04-19 浙江格林蓝德信息技术有限公司 结构化报告处理方法、装置、计算机设备和存储介质
CN114647649A (zh) * 2022-05-13 2022-06-21 中电云数智科技有限公司 基于层序遍历的半结构化数据同步方法及装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3083024B2 (ja) * 1993-06-21 2000-09-04 キヤノン株式会社 文字処理装置及び方法
JPH07271813A (ja) 1994-03-31 1995-10-20 Toshiba Corp 情報分類整理システム
JPH0844766A (ja) 1994-07-29 1996-02-16 Fuji Xerox Co Ltd 文書検索装置
CA2242158C (en) 1997-07-01 2004-06-01 Hitachi, Ltd. Method and apparatus for searching and displaying structured document
JP2001167087A (ja) * 1999-12-14 2001-06-22 Fujitsu Ltd 構造化文書検索装置,構造化文書検索方法,構造化文書検索用プログラム記録媒体および構造化文書検索用インデックス作成方法
US6654737B1 (en) * 2000-05-23 2003-11-25 Centor Software Corp. Hypertext-based database architecture
JP2003157249A (ja) 2001-11-21 2003-05-30 Degital Works Kk 文書の圧縮格納方法
JP2003288365A (ja) 2002-03-28 2003-10-10 Toshiba Corp 付加情報管理方法及び付加情報管理システム
AUPS194702A0 (en) * 2002-04-24 2002-05-30 Canon Kabushiki Kaisha Markup-language document formatting in memory-constrained enviroment
US8150818B2 (en) * 2003-08-25 2012-04-03 International Business Machines Corporation Method and system for storing structured documents in their native format in a database

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007096844A (ja) * 2005-09-29 2007-04-12 Nec Personal Products Co Ltd 文書表示方法及び文書表示装置
JP4746952B2 (ja) * 2005-09-29 2011-08-10 Necパーソナルプロダクツ株式会社 文書表示方法及び文書表示装置

Also Published As

Publication number Publication date
US7457812B2 (en) 2008-11-25
CN1766876A (zh) 2006-05-03
US20060106831A1 (en) 2006-05-18
CN100498771C (zh) 2009-06-10

Similar Documents

Publication Publication Date Title
US7080067B2 (en) Apparatus, method, and program for retrieving structured documents
US7386567B2 (en) Techniques for changing XML content in a relational database
US7457812B2 (en) System and method for managing structured document
US6889223B2 (en) Apparatus, method, and program for retrieving structured documents
US7975220B2 (en) Apparatus, program product and method for structured document management
US8762410B2 (en) Document level indexes for efficient processing in multiple tiers of a computer system
US7409636B2 (en) Lightweight application program interface (API) for extensible markup language (XML)
US20080010256A1 (en) Element query method and system
JP2008052662A (ja) 構造化文書管理システム及びプログラム
US8214403B2 (en) Structured document management device and method
JP4247135B2 (ja) 構造化文書記憶方法、構造化文書記憶装置、構造化文書検索方法
US20050144153A1 (en) Structured data retrieval apparatus, method, and computer readable medium
JP2009544102A (ja) Xml文書の、意味論を意識した処理
JP4309818B2 (ja) 構造化文書管理装置、検索装置、記憶方法、検索方法及びプログラム
US20090307187A1 (en) Tree automata based methods for obtaining answers to queries of semi-structured data stored in a database environment
JP2006127229A (ja) 構造化文書検索システム、構造化文書検索方法及びプログラム
JP3842572B2 (ja) 構造化文書管理方法および構造化文書管理装置およびプログラム
JP3842576B2 (ja) 構造化文書編集方法及び構造化文書編集システム
JP3842574B2 (ja) 情報抽出方法および構造化文書管理装置およびプログラム
JP4289022B2 (ja) 構造化文書処理方法及び装置及び構造化文書処理プログラム及び構造化文書処理プログラムを格納した記憶媒体
JP4568267B2 (ja) 構造化文書検索システム及びデータベース管理プログラム
JP5439606B1 (ja) 構造化文書管理装置、方法およびプログラム
JP3842575B2 (ja) 構造化文書検索方法、構造化文書管理装置及びプログラム
JP4406397B2 (ja) 構造化文書検索システム及びプログラム
Nørvåg Query Operators in Temporal XML Databases

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071218

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080215

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080401

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080602

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20080620

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20080815