JP2006154952A - 構造化文書処理装置及び構造化文書処理方法、プログラム、記憶媒体 - Google Patents

構造化文書処理装置及び構造化文書処理方法、プログラム、記憶媒体 Download PDF

Info

Publication number
JP2006154952A
JP2006154952A JP2004340802A JP2004340802A JP2006154952A JP 2006154952 A JP2006154952 A JP 2006154952A JP 2004340802 A JP2004340802 A JP 2004340802A JP 2004340802 A JP2004340802 A JP 2004340802A JP 2006154952 A JP2006154952 A JP 2006154952A
Authority
JP
Japan
Prior art keywords
structured document
information
structured
contents
location 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.)
Granted
Application number
JP2004340802A
Other languages
English (en)
Other versions
JP4868733B2 (ja
JP2006154952A5 (ja
Inventor
Shingo Iwasaki
晋吾 岩崎
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 JP2004340802A priority Critical patent/JP4868733B2/ja
Priority to US11/285,533 priority patent/US7900136B2/en
Publication of JP2006154952A publication Critical patent/JP2006154952A/ja
Publication of JP2006154952A5 publication Critical patent/JP2006154952A5/ja
Application granted granted Critical
Publication of JP4868733B2 publication Critical patent/JP4868733B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/221Parsing markup language streams
    • 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/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • 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/151Transformation

Abstract

【課題】構造化文書を別の構造化文書に変換処理を行う際、予め、構造化文書の属性を把握してプログラミングを行うことなく、ロケーションパスの対応付けに基づいて変換処理を行うこと。
【解決手段】第1構造化文書の第1ロケーション情報と第2構造化文書の第2ロケーション情報とを1対1に対応付けるロケーション情報対応付け部と、ロケーション情報対応付け部による対応付けと、抽出部が抽出した各情報とに基づいて、第2構造化文書から抽出された内容に、第1構造化文書から抽出された内容を組み込み、構造化文書の内容を再現するための情報を変換する変換部と、変換部により変換された構造化文書の内容を再現するための情報に基づいて、第3構造化文書を構築する構造構築部とを備える。
【選択図】 図1A

Description

本発明は、構造化文書の構造を崩さず、内部データだけを変換した形で構造化文書を構築する構造化文書の処理技術に関するものである。
電子的な構造化文書情報の効果的な情報利用技術は、インターネットを含む広範な情報の交換・流通にとってきわめて重要な位置を占めている。例えば、XML(eXtensible Markup Language)に代表されるこれらの技術は,WEBによる情報環境に向けて開発されたものであり、構造化言語として標準化されている。
しかしながら、構造化文書構造の自動解析及び他の構造化文書への変換に関する体系的な言語処理技術は欠如している。従来、入力される構造化文書情報から必要な情報を抽出し、それらをまとめて、別の構造を持った構造化文書として出力するためには、あらかじめ入力される構造化文書の構造と、出力する構造化文書の構造とを把握した上で、XSLT(XML Transformations)の作成や構造化文書から情報を抽出し、新たな別の構造をもった構造化文書として出力するプログラミングを行っていた。
上述の従来技術として、例えば、以下の特許文献1及び特許文献2に示されるものがある。
特開2004−30582号公報 特開2004−38334号公報
しかしながら、入力される構造化文書と、出力する構造化文書の構造があらかじめ分からなければ、入力される構造と出力する構造を意識したXSLTの作成や、プログラミングができず、入力される構造化文書から、必要な情報を抽出し、新たな別の構造をもった構造化文書として出力することは困難であった。
そこで、本発明は、上記の問題点を鑑みて、構造化文書を別の構造化文書に変換処理を行う際、予め、構造化文書の属性を把握してプログラミングを行うことなく、ロケーションパスの対応付けに基づいて変換処理を行うことを可能にする構造化文書処理技術を提供することを目的とする。
上記の目的を達成するべく、本発明にかかる入力された第1及び第2構造化文書に対応する第1及び第2ロケーション情報に基づいて、変換処理を実行する構造化文書処理装置は、
前記入力された第1及び第2構造化文書のデータを読み込み、当該各構造化文書の内容を再現するための各情報を判別する判別手段と、
前記判別手段で判別した各情報にアクセスするための前記第1及び第2ロケーション情報を解析し、当該判別した各情報の特定部分を当該解析結果に基づいて指定する解析手段と、
前記解析手段により指定された特定部分に対応する情報と、当該特定部分に付加された構造化文書として再現するための情報と、を前記判別手段で判別した各情報から抽出する抽出手段と、
前記第1ロケーション情報と第2ロケーション情報とを1対1に対応付けるロケーション情報対応付け手段と、
前記ロケーション情報対応付け手段による対応付けと、前記抽出手段が抽出した各情報とに基づいて、前記第2構造化文書から抽出された内容に、前記第1構造化文書から抽出された内容を組み込み、前記構造化文書の内容を再現するための情報を変換する変換手段と、
前記変換手段により変換された前記構造化文書の内容を再現するための情報に基づいて、第3構造化文書を構築する構造構築手段とを備えることを特徴とする。
本発明により、構造化文書を別の構造化文書に変換処理を行う際、予め、構造化文書の属性を把握してプログラミングを行うことなく、ロケーションパスの対応付けに基づいて構造化文書の変換処理を行うことが可能になる。
以下、本発明の実施の形態を、具体例を用いて詳細に説明する。
(実施形態1)
図1Aは、本発明の実施形態にかかる構造化文書処理装置の構成を示すブロック図である。図1Aにおいて、101は、構造化文書処理装置における解析変換処理部を示す。解析変換処理部101は、不図示のCPU等の制御ユニットの全体的な制御の下、解析変換処理を実行することが可能であり、処理結果を不図示のメモリに格納し、必要に応じてメモリからデータを読み出して処理を実行することが可能である。この解析変換処理部101の内部には、構造化文書(inputA.xml)102、構造化文書(outputB.xml)103やロケーションパスA、B(104、105)を入力処理するための入力部106、構造自動解析部107、ロケーションパス対応付け及びデータ変換処理部113、構造構築部114、出力部115が含まれる。
102は、入力部106に入力される構造化文書(inputA.xml)であり、103は、102の構造化文書を変換して出力するための文書の構造を記述する出力用の構造化文書(outputB.xml)(共にXMLデータであり、以下、「XMLデータ」と表現する)である。104、105は、それぞれの構造化文書102、103の内部データを指し示すためのロケーションパスを示す。
入力部106は、インターネットを含んだネットワークと接続し、ネットワークを介して構造化文書(例えば、XML、SGML、HTML等)及びロケーション情報(ロケーションパス)を受信することができるものとする。入力部106が、構造化文書(XMLデータ)102、103とロケーションパスA,B(104、105)を受信すると、構造自動解析部107は処理を開始する。
107は、構造自動解析部であり、入力部106が受信した構造化文書(102、103)及びロケーションパスA、B(104、105)の構造解析を行い、その構造解析に基づいて、データの選択、構造の再構築を行う。
図1Bは、構造自動解析部107の内部を具体的に示すブロック図である。図1B中、109は、構造解析・分解部であり、例えば、SAX(The Simple API for XML)エンジンを利用して、入力されたXMLデータをパースしていき、不図示のメモリ上にパースによって順番に検出されるXMLデータ構造に含まれる要素ごとにリストを作成し、要素の名前、要素タグの接続関係(親子関係、兄弟関係)、要素タグと要素タグで囲まれる"値"、属性の名前、属性の値を1つの要素に対して付加情報として対応づけ、XMLデータ解析リストとしてXMLデータの構造を分解した情報を格納する。
108はロケーションパス解析部であり、入力されたロケーションパスA,B(104、105)をそれぞれ解析し、不図示のメモリ上に作成したXMLデータ解析リストの内容とリンクして指し示すことが可能な形式でXMLデータ解析リストに格納する。
111はデータ選択・抽出部であり、XMLデータ解析リストから、格納してあるロケーションパスが指し示すデータのリスト番号と、そのリスト番号と親子関係あるいは兄弟関係など関連するリスト番号をすべて選択し、抽出する処理を行う。
112は構造構築部であり、XMLデータ解析リストから、リスト番号に基づいて、一度分解したXMLデータのみを抽出し、構築しなおして、例えば、XMLデータとして出力する処理を行う。
説明を図1Aに戻し、113は、ロケーションパス対応付け・データ変換処理部であり、入力部106に入力されたロケーションパスA104とロケーションパスB105を1対1で対応付け、入力用XMLデータ(inputA.xml)102と、出力用XMLデータ(outputB.xml)103とのそれぞれのXMLデータ解析リストに格納されているデータを、ロケーションパスの対応付けによって変換し、変換した出力用XMLデータのXMLデータ解析リストを出力する。
114は構造構築部であり、XMLデータ解析リストから再びXMLデータとして構築するという112と同様の処理を行い、出力部115から、構築したXMLデータ(output.xml)116を出力する。
出力部116は、インターネットを含んだネットワークと接続し、ネットワークを介して構築した構造化文書(例えば、XML、SGML、HTML等)を他の装置に配信することができるものとする。
図2は、構造解析・分解部109の処理を説明する図である。図2(a)において、206は、入力用XMLデータ(inputA.xml)102の具体例を示す図である。このXMLデータ206が構造解析・分解部109に入力されると、図2(b)に示すフローチャートが構造解析・分解部109により実行される。
図2(b)のステップS201でXMLデータを入力し、ステップS202でSAXエンジンによって、XMLデータ206を先頭のタグからパースしていく。ステップS203で、メモリ上に、パースによって順番に出現するXMLデータの構造における要素ごとに番号を振ってリストを作成し、ステップS204で、要素の階層番号、要素の名前、namespace名、要素タグと要素タグで囲まれる"値"であるテキスト要素値、要素タグの親を示す親要素番号、要素タグの兄弟を表す1つ前兄弟番号、同じ階層で同じ要素名がある場合に判別できるよう、要素が出現した順番を示す要素出現順番号、要素が持っている属性の数、要素が持っている属性の名前と属性の値を全て、1つの要素に対して付加情報として対応づけを行い、ステップS205で、全ての要素に対し分解処理が終了したか否かを判断し、終了しない場合は、ステップS204の処理を続行し、分解処理が終わり次第パースを終了する(S205)。
図2(c)の209は、XMLデータ解析リストの例を示す図であり、不図示のメモリ上にXMLデータの構造を分解した情報がXMLデータ解析リストとして格納される。
図3は、ロケーションパス解析部108の処理を説明する図であり、310は入力用XMLデータ102中のデータを指し示すロケーションパス104の具体例を示す図である。このロケーションパス310がロケーションパス解析部108に入力されると、図3(b)に示すフローチャートがロケーションパス解析部108により実行される。
図3(b)のステップS301で、ロケーションパス310を入力し、ステップS302で、ロケーションパス解析部108は、与えられたロケーションパスを1から順に解析して分解し、不図示のメモリ上にリストとして保存する。
図3(c)の304は、分解されて、リストとして保存されているロケーションパスの例を示す図である。ロケーションパス310中において、例えば、"student[position()="2"]"という表現があれば、これは、同一階層番号上に同じ要素名が存在し、それを区別するために、その中でも2番目の要素という指定がされていることを示し、この場合、"student#2"という形でメモリ上にロケーションパスが格納される。また、例えば、"class/@number"という表現があれば、class@numberという形でロケーションパスが格納される。
図4A、Bは、データ選択・抽出部111の処理内容を説明する図である。
図4Aにおいて、401は構造解析・分解部109から出力されるXMLデータ解析リストを例示しており、また、図4Bはデータ選択・抽出部111の処理の流れを説明するフローチャートである。
まず、図4BのステップS401で、構造解析・分解部109は、先に説明した図3(c)の304のロケーションパスのリストを順に取得する。
次いで、ステップS402で、XMLデータ解析リストから、要素番号順にリスト(図4Aの400)を取得し、取得したリストから要素名と、取得したロケーションパスリストの最下層の要素名address(図3(c)では、リストの1番目ならaddress、リストの2番目ならtel、リストの3番目ならname)を比較していき、XMLデータ解析リスト401内の要素名がロケーションパスで指定された要素名と同じ要素名であるか検索する。
ステップS403において、要素名が同じでなければ(S403-No)、次の要素番号のリストを取得するステップS402の処理まで戻る。同じであれば(S403-Yes)、処理をステップS404に進め、その要素番号を保存する。
ステップS405で、その要素番号に対するリスト内から親要素番号を検索する。
ステップS406において、親要素番号が「-1」であれば(S406-Yes)、ステップS419に処理を進め、ヒットしたリスト番号と、それに関係する保存したリスト番号を出力する。1番最初から親要素番号が「-1」であれば、ルートの要素名であり、関係する保存したリスト番号は無いことになる。
一方、ステップS406において、親要素番号が-1でなければ(S406-No)、処理をステップS407に進め、親要素番号が示すリストを取得する。
ステップS48で、取得してあるロケーションパスに次の要素名、例えば、最下層の要素名の親の要素名(リスト1であればaddressの前のsecurity)、が指定されているか検索する。
ステップS409において、指定の有無を判定し、指定されていなければ(S409−No)、その親要素番号の示すリストは必要なデータであるので、処理をステップS417に進め、取得したリスト番号を保存する。
ステップS409の判定において、指定されていれば(S409−Yes)、処理をステップS410に進め、親要素番号の示すリストの要素名と、そのロケーションパスで指定されている要素名を順(例security→teacher)に比較していく。
ステップS411で、ロケーションパスで指定された要素名と、XMLデータ解析リスト内の親要素番号を辿っていき、ひとつでも要素名の不一致があれば(S411-No)、その親要素番号で指定したリストデータは必要が無いと判断し、次の要素番号のリストを取得する処理に戻る。要素名が一致していれば(S411-Yes)、ステップS412でロケーションパスで指定されている要素名に、データとして「#N(N:数値)」、が付加されているか確認する(S412)。
ステップS413で、「#N」が付加されているか判断し、付加されていれば(S413−Yes)、#NのNで指定された番号と、ステップS414で要素出現順番号を検索した番号をステップS415で比較する。
ステップS416で番号が一致しているか判断し、一致していなければ(S416-No)、その親要素番号で指定したリストデータは必要が無いと判断し、次の要素番号のリストを取得する処理に戻る。
一致していれば(S416−Yes)、その親要素番号を保持し(S417)、そのリストデータの親要素番号を取得(S418)する。
そして、再びステップS406に処理を戻し、親要素番号が-1でないかの判断の処理からまた繰り返す。
最終的にロケーションパスで指定されたパスで、XMLデータ解析リスト内でヒットした要素番号とそれに関係する要素番号を保持する。具体的には、ロケーションパス(図3(c)の304)で1番目のリストのロケーションパス(teacher/security/address)にヒットする番号は、全部で、5→4→2→1→0の順でヒットし、これらが抽出される番号となる。1つのロケーションパスに対して処理が終われば、2番目のロケーションパス(class/student[position="2"]/security/tel)を取得し、同様の処理を繰り返す。2番目のリストのロケーションパスにヒットする番号は、16→14→12→1→0の順でヒットする。3番目のリストのロケーションパス(name)にヒットする番号は、nameという指定だけなので、3→2→1→0、8→7→1→0、13→12→1→0という順番でヒットする。
すべての処理が終わった時点で、抽出した番号で重なるものがあれば、重複した番号は1つだけ残し、その他はすべて削除し、最終的に残った番号を出力する。その結果、データ選択・抽出部111が選択する要素番号のリストは(1)式のようになる。
要素番号のリスト:0,1,2,3,4,5,7,8,12,13,14,16 ・・・(1)
これが、すべてのロケーションパスで指定されたデータに関連する要素番号となる。
次に、構造構築部112の処理を図5A、Bを参照しつつ説明する。
図5Aは、構造構築部112の処理内容を説明するフローチャートである。まず、ステップS501において、XMLデータ解析リスト(図4Aを参照)を取得する。
そして、ステップS502で、XMLデータ解析リストから抽出する要素番号を保持したリスト((1)式を参照)を取得する。
ステップS503で、XMLデータ解析リスト401(図4A)から要素番号のリストデータ((1)式)を順に取得する。
ステップS504で、抽出したリストデータの階層番号を取得し、保持する。
ステップS505で、前回保持した階層番号と今回保持した階層番号を比較する。ステップS506で、初回の処理でない、もしくは、前回保持した階層番号>=今回取得した階層番号の判断が偽ならば(S506−NO)、処理をステップS507に進め、リストデータから要素名を取得し、「<要素名>」の開始タグの形にして('<''>'記号を付加して)文字列(図5Bの520)として格納する。
ステップS508で、リストデータ((1)式)に基づいて、XMLデータ解析リスト中に属性名、属性値で該当するものがあれば順に取得し、開始タグの中に追加する形で、文字列(図5Bの520)に追加する。
ステップS509で、リストデータ((1)式))に基づいて、XMLデータ解析リスト中にテキスト要素値で該当するものがあれば取得し、開始タグの後に、文字列(図5中520)として追加する。
ステップS510で、取得した要素名を「</要素名>」 の終了タグの形にして、スタック(図5Bの521)に格納(push)する。
ステップS506の判断で真ならば(S506−Yes)、処理をステップS515に進め、スタック(図5Bの521)に格納してある終了タグを1回取り出して(pop)、文字列(図5Bの520)に格納する。
ステップS511で、XML解析リスト(図4A)から要素番号のリスト((1)式)に記述されている要素番号のデータ分、データの抽出をしていなければ(S511−Yes)、ステップS503に処理を戻し、抽出していないデータに対して同様の処理を繰り返す。
一方、リストデータ((1)式)に記述された要素番号のデータをすべて抽出し終わったら(S511−No)、処理をステップS512に進め、図5Bのスタック521に終了タグがまだ残っているか確認する。
ステップS513で、終了タグがスタックに残っていれば(S513−Yes)、スタックから終了タグを取得(pop)し、文字列(図5Bの520)に追加する。
終了タグが残っていなければ(S513−No)、処理をステップS514に進め、格納した文字列(図5Bの520)を出力する。
データ選択・抽出部111は、XML解析リスト(図4Aの401)から、要素番号のリスト((1)式)に記述されている要素番号のデータだけを抽出して、文字列を組み立て最終的に出力することができ、その結果、データ選択・抽出部111は、入力されたXMLデータの構造を崩さず、ロケーションパスによって選択されたデータだけを抽出して、図5BにおけるXMLデータ522を出力することができる。
図6は、ロケーションパス対応付け・データ変換部113の処理内容を説明する図である。これまでは、入力されたXMLデータが1つで、そのデータからロケーションパスで選択したデータだけを抽出してXMLデータとして構造を崩さずに構築しなおして出力するところまで述べたが、前記ロケーションパス対応付け&データ変換処理部を、前期構造構築部の処理が行われる前に加えることで、前記入力データの入力用としたXMLデータ(以下入力用XMLデータとする)、前記入力データの出力用としたXMLデータ(以下出力用XMLデータとする)をそれぞれ読み込み、入力用XMLデータからロケーションパスで選択したデータを、出力用XMLデータのロケーションパスで選択した要素に挿入することで、異なる構造をしたXMLデータによるデータの変換が可能となる。以下その流れを説明する。
図6の601は、入力用XMLデータであり、これまでの説明の中で使用してきた入力用XMLデータ(inputA.xml)206と同様の構造とデータ内容とを有する。602は、出力用XMLデータであり、既にテキスト要素値が一部格納してあり、入力用XMLデータとは構造が異なっている。
603は、入力用XMLデータに対するロケーションパスを示しており、604は、出力用XMLデータに対するロケーションパスである。
ロケーションパス対応付け・データ変換部113では、この両者のロケーションパスを605のようにリストの一番目同士、二番目同士という形で、1対1で対応付ける。このロケーションパスの対応付けの情報を使って、ロケーションパス対応付け・データ変換部113におけるデータ変換処理は、不図示のメモリ上に保持してある入力用XMLデータ601を読み込み、構造解析の結果得られるXMLデータ解析リスト606から、それぞれ、ロケーションパスで選択されたデータを示す要素番号を検索し、出力用XMLデータ602の解析から得られるXMLデータ解析リスト607へコピーする(608)。その結果、ロケーションパス対応付け・データ変換部113は、XMLデータ解析リスト609を求め、出力する。
そして、ロケーションパス対応付け・データ変換部113は、このデータの要素番号をすべてリストデータ610として、構造構築部112に入力する。構造構築部112は、XMLデータ解析リスト609と、要素番号のリストデータ610を受け取り、図5Aで説明したリストデータに対応する抽出処理を行うことで、XMLデータ612(図6(e))を出力する。具体的には、入力用XMLデータ601内のデータである、「Aさん」、「東京都」、「045-3333-3333」というテキスト要素値が、出力用XMLデータ602のそれぞれ、ロケーションパスで選択されたテキスト要素値へ格納される。
この結果、構造の異なるXMLデータ601からロケーションパスで指定したデータを、別の構造を持ったXMLデータ602のロケーションパスで指定した領域にデータを挿入することができ、結果的に、XMLの構造を変換して出力することが可能になる。従って、予め入力用XMLデータと出力用XMLデータの構造を把握していなくても、XMLデータの解析から自動的に変換処理を行うことが可能になるので、動的なデータの交換、動的なXMLの構造変換が可能になる。
尚、本実施形態では、テキスト要素値の変換しか行っていないが、属性値に対してもロケーションパスの指定で、構造の異なるデータ間で同様の変換処理を行うことが可能になる。
また、ロケーションパスの関連付けを示すデータをネットワークを介して、他の装置と交換することも可能であり、異なる構造を有する構造化文書のやり取りが、ネットワーク上でも可能になる。
以上説明したように本実施形態によれば、構造化文書を別の構造化文書に変換処理を行う際、予め、構造化文書の属性を把握してプログラミングを行うことなく、ロケーションパスの対応付けに基づいて変換処理を行うことが可能になる。
(他の実施形態)
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、上述の構造化文書処理装置に供給し、その装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。プログラムコードの格納は、クライアントコンピュータに限定されるものではなく、例えば、サーバとして機能するコンピュータに記憶されておくことも可能である。
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,DVD、磁気テープ,不揮発性のメモリカード,ROMなどを用いることができる。
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
本発明の実施形態にかかる構造化文書処理装置の構成を示すブロック図である。 構造自動解析部107の内部を具体的に示すブロック図である。 構造解析・分解部109の処理を説明する図である。 ロケーションパス解析部108の処理を説明する図である。 構造解析・分解部109から出力されるXMLデータ解析リストを例示する図である。 データ選択・抽出部111の処理の流れを説明するフローチャートである。 構造構築部112の処理内容を説明するフローチャートである。 構造構築部112の処理の内容を説明する図である。 ロケーションパス対応付け・データ変換部113の処理内容を説明する図である。

Claims (10)

  1. 入力された第1及び第2構造化文書に対応する第1及び第2ロケーション情報に基づいて、変換処理を実行する構造化文書処理装置であって、
    前記入力された第1及び第2構造化文書のデータを読み込み、当該各構造化文書の内容を再現するための各情報を判別する判別手段と、
    前記判別手段で判別した各情報にアクセスするための前記第1及び第2ロケーション情報を解析し、当該判別した各情報の特定部分を当該解析結果に基づいて指定する解析手段と、
    前記解析手段により指定された特定部分に対応する情報と、当該特定部分に付加された構造化文書として再現するための情報と、を前記判別手段で判別した各情報から抽出する抽出手段と、
    前記第1ロケーション情報と第2ロケーション情報とを1対1に対応付けるロケーション情報対応付け手段と、
    前記ロケーション情報対応付け手段による対応付けと、前記抽出手段が抽出した各情報とに基づいて、前記第2構造化文書から抽出された内容に、前記第1構造化文書から抽出された内容を組み込み、前記構造化文書の内容を再現するための情報を変換する変換手段と、
    前記変換手段により変換された前記構造化文書の内容を再現するための情報に基づいて、第3構造化文書を構築する構造構築手段と
    を備えることを特徴とする構造化文書処理装置。
  2. 前記判別手段は、前記入力された第1及び第2構造化文書のデータを読み込み、当該第1及び第2構造化文書に含まれるタグで記述されている内容を判別し、当該タグで記述されている内容ごとに前記入力された第1及び第2構造化文書の内容を分解することを特徴とする請求項1に記載の構造化文書処理装置。
  3. 前記抽出手段は、前記解析手段による指定に基づいて、前記第2構造化文書の内容に、前記第1構造化文書の内容を組み込むための情報を抽出することを特徴とする請求項1に記載の構造化文書処理装置。
  4. 前記構造構築手段による前記第3構造化文書は、前記第1及び第2構造化文書の内容が保持された構造化文書として構築されることを特徴とする請求項1に記載の構造化文書処理装置。
  5. 前記第1及び第2構造化文書、前記第1及び第2ロケーション情報をネットワークを介して受信する入力手段と、
    前記構造構築手段が構築した前記第3構造化文書を前記ネットワークを介して配信する出力手段と
    を更に備えることを特徴とする請求項1に記載の構造化文書処理装置。
  6. 入力された第1及び第2構造化文書に対応する第1及び第2ロケーション情報に基づいて、変換処理を実行する構造化文書処理方法であって、
    前記入力された第1及び第2構造化文書のデータを読み込み、当該各構造化文書の内容を再現するための各情報を判別する判別工程と、
    前記判別工程で判別した各情報にアクセスするための前記第1及び第2ロケーション情報を解析し、当該判別した各情報の特定部分を当該解析結果に基づいて指定する解析工程と、
    前記解析工程により指定された特定部分に対応する情報と、当該特定部分に付加された構造化文書として再現するための情報と、を前記判別工程で判別した各情報から抽出する抽出工程と、
    前記第1ロケーション情報と第2ロケーション情報とを1対1に対応付けるロケーション情報対応付け工程と、
    前記ロケーション情報対応付け工程による対応付けと、前記抽出工程により抽出された各情報とに基づいて、前記第2構造化文書から抽出された内容に、前記第1構造化文書から抽出された内容を組み込み、前記構造化文書の内容を再現するための情報を変換する変換工程と、
    前記変換工程により変換された前記構造化文書の内容を再現するための情報に基づいて、第3構造化文書を構築する構造構築工程と
    を備えることを特徴とする構造化文書処理方法。
  7. 前記判別工程は、前記入力された第1及び第2構造化文書のデータを読み込み、当該第1及び第2構造化文書に含まれるタグで記述されている内容を判別し、当該タグで記述されている内容ごとに前記入力された第1及び第2構造化文書の内容を分解することを特徴とする請求項6に記載の構造化文書処理方法。
  8. 前記抽出工程は、前記解析工程による指定に基づいて、前記第2構造化文書の内容に、前記第1構造化文書の内容を組み込むための情報を抽出することを特徴とする請求項6に記載の構造化文書処理方法。
  9. 請求項6乃至8のいずれか1項に記載の構造化文書処理方法をコンピュータに実行させることを特徴とするプログラム。
  10. 請求項9に記載のプログラムを格納したことを特徴とするコンピュータ可読の記憶媒体。
JP2004340802A 2004-11-25 2004-11-25 構造化文書処理装置及び構造化文書処理方法、プログラム Expired - Fee Related JP4868733B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004340802A JP4868733B2 (ja) 2004-11-25 2004-11-25 構造化文書処理装置及び構造化文書処理方法、プログラム
US11/285,533 US7900136B2 (en) 2004-11-25 2005-11-21 Structured document processing apparatus and structured document processing method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004340802A JP4868733B2 (ja) 2004-11-25 2004-11-25 構造化文書処理装置及び構造化文書処理方法、プログラム

Publications (3)

Publication Number Publication Date
JP2006154952A true JP2006154952A (ja) 2006-06-15
JP2006154952A5 JP2006154952A5 (ja) 2008-01-10
JP4868733B2 JP4868733B2 (ja) 2012-02-01

Family

ID=36462284

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004340802A Expired - Fee Related JP4868733B2 (ja) 2004-11-25 2004-11-25 構造化文書処理装置及び構造化文書処理方法、プログラム

Country Status (2)

Country Link
US (1) US7900136B2 (ja)
JP (1) JP4868733B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013178650A (ja) * 2012-02-28 2013-09-09 Kyocera Document Solutions Inc ソフトウェア開発用構造化データファイル作成装置

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9495356B2 (en) * 2006-03-30 2016-11-15 International Business Machines Corporation Automated interactive visual mapping utility and method for validation and storage of XML data
JP5735778B2 (ja) * 2010-10-15 2015-06-17 キヤノン株式会社 情報処理装置、情報処理方法、及びプログラム
JP5792942B2 (ja) * 2010-10-15 2015-10-14 キヤノン株式会社 情報処理装置、情報処理方法、及び、プログラム
US8626799B2 (en) * 2011-10-03 2014-01-07 International Business Machines Corporation Mapping data structures

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002183116A (ja) * 2000-12-18 2002-06-28 Toshiba Corp 文書合成方法および文書合成装置

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6721727B2 (en) * 1999-12-02 2004-04-13 International Business Machines Corporation XML documents stored as column data
US6910182B2 (en) * 2000-01-31 2005-06-21 Xmlcities, Inc. Method and apparatus for generating structured documents for various presentations and the uses thereof
WO2002001401A1 (en) * 2000-06-26 2002-01-03 Onerealm Inc. Method and apparatus for normalizing and converting structured content
JP4657432B2 (ja) * 2000-09-28 2011-03-23 富士通株式会社 階層構造の構造化文書を変換する装置
US7111234B2 (en) * 2001-05-02 2006-09-19 Microsoft Corporation System and method for in-line editing of web-based documents
CA2349469A1 (en) * 2001-06-01 2002-12-01 Ibm Canada Limited-Ibm Canada Limitee A data instance transformation tool for transforming a source instance to a target instance
US7222333B1 (en) * 2001-10-15 2007-05-22 Cisco Technology, Inc. Techniques for generating software application build scripts based on tags in comments
JP2003150586A (ja) * 2001-11-12 2003-05-23 Ntt Docomo Inc 文書変換システム、文書変換方法及び文書変換プログラムを記録したコンピュータ読み取り可能な記録媒体
US7281211B2 (en) * 2001-12-21 2007-10-09 Gxs, Inc. Automated method, system, and software for transforming data between extensible markup language format and electronic data interchange format
US7013306B1 (en) * 2001-12-21 2006-03-14 Unisys Corporation XML input definition table for transforming XML data to internal format
JP4068570B2 (ja) * 2002-02-08 2008-03-26 富士通株式会社 文書配信装置、文書受信装置、文書配信方法、文書配信プログラム、文書配信システム
US8032828B2 (en) * 2002-03-04 2011-10-04 Hewlett-Packard Development Company, L.P. Method and system of document transformation between a source extensible markup language (XML) schema and a target XML schema
JP3857663B2 (ja) 2002-04-30 2006-12-13 株式会社東芝 構造化文書編集装置、構造化文書編集方法及びプログラム
JP3788956B2 (ja) 2002-06-28 2006-06-21 株式会社東芝 構造化文書表示方法、構造化文書表示装置及びプログラム
US7069504B2 (en) * 2002-09-19 2006-06-27 International Business Machines Corporation Conversion processing for XML to XML document transformation
US20040088397A1 (en) * 2002-11-05 2004-05-06 Sidley Austin Brown & Wood Llp. System and method for management of software applications
KR100513736B1 (ko) * 2002-12-05 2005-09-08 삼성전자주식회사 그래픽 데이터 압축에 관한 메타표현을 이용한 입력파일생성 방법 및 시스템
US6836778B2 (en) * 2003-05-01 2004-12-28 Oracle International Corporation Techniques for changing XML content in a relational database
US7296223B2 (en) * 2003-06-27 2007-11-13 Xerox Corporation System and method for structured document authoring
US7225411B1 (en) * 2003-06-30 2007-05-29 Tibco Software Inc. Efficient transformation of information between a source schema and a target schema
US7437374B2 (en) * 2004-02-10 2008-10-14 International Business Machines Corporation Efficient XML schema validation of XML fragments using annotated automaton encoding

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002183116A (ja) * 2000-12-18 2002-06-28 Toshiba Corp 文書合成方法および文書合成装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013178650A (ja) * 2012-02-28 2013-09-09 Kyocera Document Solutions Inc ソフトウェア開発用構造化データファイル作成装置

Also Published As

Publication number Publication date
JP4868733B2 (ja) 2012-02-01
US20060112327A1 (en) 2006-05-25
US7900136B2 (en) 2011-03-01

Similar Documents

Publication Publication Date Title
KR101908162B1 (ko) 통합 개발 환경에서의 라이브 브라우저 툴 제공 기법
CN103608802B (zh) 取回的文件和源文件之间的选择映射的方法和系统
JP2007141123A (ja) 異なるファイルの同一文字列のリンク
JP4860416B2 (ja) 文書検索装置、文書検索方法および文書検索プログラム
JP2005339566A (ja) コンテンツを開始テンプレートとターゲットテンプレートとの間でマップするための方法およびシステム
JP2007226452A (ja) 構造化文書管理装置、構造化文書管理プログラムおよび構造化文書管理方法
US20110202532A1 (en) Information sharing system, information sharing method, and information sharing program
JP2006164269A (ja) 検索結果のカスタマイゼーションのためのシステムおよび方法
JP2007058623A (ja) 構造化文書のデータ展開方法及びデータ処理方法
JP6130315B2 (ja) ファイル変換方法及びシステム
JP7081396B2 (ja) 生成方法、生成プログラム、および生成装置
JP2005234837A (ja) 構造化文書処理方法、構造化文書処理システム及びそのプログラム
US7900136B2 (en) Structured document processing apparatus and structured document processing method, and program
US20110087698A1 (en) Search expression creating system, search expression creating method, search expression creating program, and recording medium
JP2006065467A (ja) データ抽出定義情報生成装置およびデータ抽出定義情報生成方法
JP5712496B2 (ja) アノテーション復元方法、アノテーション付与方法、アノテーション復元プログラム及びアノテーション復元装置
JP2008102773A (ja) データを共通のフォーマットに変換する方法
JP2008097436A (ja) 構造化文書構造自動解析および構造自動再構築装置
JP6753190B2 (ja) 文書検索装置及びプログラム
JP2007219579A (ja) ドキュメント変換装置、およびプログラム
JP5193894B2 (ja) データ編集装置、データ編集方法、およびプログラム
JP2004118599A (ja) 情報開示プログラム
JP2008046850A (ja) 文書種類判別装置及び文書種類判別プログラム
JP2010204863A (ja) アノテーションプログラム、アノテーション装置及びアノテーション方法
JPH11249941A (ja) 整理用ファイル生成方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071114

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071114

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20071114

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100702

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100831

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110204

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110405

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: 20111111

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: 20111115

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

Free format text: PAYMENT UNTIL: 20141125

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees