JP2002342316A - 文書構造変換方法および文書構造変換装置およびプログラム - Google Patents

文書構造変換方法および文書構造変換装置およびプログラム

Info

Publication number
JP2002342316A
JP2002342316A JP2001151603A JP2001151603A JP2002342316A JP 2002342316 A JP2002342316 A JP 2002342316A JP 2001151603 A JP2001151603 A JP 2001151603A JP 2001151603 A JP2001151603 A JP 2001151603A JP 2002342316 A JP2002342316 A JP 2002342316A
Authority
JP
Japan
Prior art keywords
document
conversion
structured
partial
document structure
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
JP2001151603A
Other languages
English (en)
Other versions
JP3692054B2 (ja
Inventor
Osamu Torii
修 鳥井
Tetsuo Kimura
哲郎 木村
Junichi Segawa
淳一 瀬川
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
Original Assignee
Toshiba 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 filed Critical Toshiba Corp
Priority to JP2001151603A priority Critical patent/JP3692054B2/ja
Priority to US10/151,164 priority patent/US7073120B2/en
Publication of JP2002342316A publication Critical patent/JP2002342316A/ja
Application granted granted Critical
Publication of JP3692054B2 publication Critical patent/JP3692054B2/ja
Priority to US11/387,849 priority patent/US7228498B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

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/151Transformation
    • 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]

Landscapes

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

Abstract

(57)【要約】 【課題】1つの文書構造の構造化文書を、その構造化文
書の利用形態対応の複数の異なる文書構造に変換した
り、利用形態対応の異なる文書構造を元の同じ1つの文
書構造へ変換したりすることが容易に行える文書構造変
換方法、文書構造変換装置、プログラムを提供する。 【解決手段】異なる文書構造の複数の構造化文書のうち
所望の構造化文書を、文書構造毎に予め定められた構造
化文書の利用形態対応の変換規則に従って、前記利用形
態対応の文書構造に変換し、その際、前記構造化文書中
の前記変換規則を適用した領域とその領域に適用した変
換規則とを変換記録として記録し、前記利用形態対応の
文書構造に変換された構造化文書に対し編集を行った結
果得られた構造化文書を前記変換記録と前記変換規則と
に基づき、元の文書構造に変換する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、XML文書などの
構造化文書の文書構造の変換技術に関する。
【0002】
【従来の技術】近年の電化製品の普及にともない、1人
のユーザが、デスクトップパソコン、ノートパソコン、
PDA(Personal Digital Assi
stants)、携帯電話などの複数の異なる端末機器
を保有するケースが増えてきている。これら複数の端末
機器であつかう情報の中にはお互いに非常に関連姓のあ
るデータが多く含まれており、住所録はその代表例であ
る。
【0003】複数の端末機器で管理される住所録の情報
の中には姓、名、住所、電話番号、電子メールアドレス
などが含まれることが多いと考えられるが、これらの情
報はたとえ端末機器ごとにデータ形式が異なっていたと
しても、それらが表す内容は同一である。したがって、
住所録に登録されている人が引越しを行い電話番号が変
更になった場合には、この人の情報をデスクトップパソ
コンで参照する場合でも、ノートパソコンで参照する場
合でも、PDAで参照する場合でも、携帯電話で参照す
る場合でも、すべての場合において新しくなった電話番
号が参照されるべきである。もしデスクトップパソコ
ン、ノートパソコン、PDA、携帯電話で完全に独立に
住所録が管理されているとすると、登録されている個人
情報が変更になった場合、すべての端末機器ごとに情報
の更新を行わなければならず、端末機器が増えれば増え
るほど管理が煩雑になり、情報の一貫姓を保つことが難
しくなる。
【0004】そこで、今までデスクトップパソコン、ノ
ートパソコン、PDA、携帯電話などの複数の異なる端
末機器によって個別に独立に管理されていた情報を、サ
ーバ計算機で集中的に一括管理し、必要に応じてサーバ
計算機から個別の端末機器に読み出して利用するさまざ
まなシステムが考えられている。このようなシステムを
導入する利点は、情報がサーバ計算機上で一元的に管理
されるため、情報の一貫姓を保つことが比較的容易であ
る点が挙げられる。もし、住所録の情報がサーバ計算機
で一括管理されていたとすると、個人情報が変更になっ
た場合でも、(端末機器を通して)サーバ計算機上の情
報のみを更新しておけば、個々の端末機器はサーバ計算
機から住所録情報を読み出すことによって、端末機器ご
とにユーザが情報の更新を行うことなく、一貫姓のある
最新の情報を取得することが可能であるからである。
【0005】サーバ計算機に集中的に格納されているデ
ータは、複数の端末機器で利用するデータをまとめあげ
たものである。一般に、すべての端末機器で利用するデ
ータがすべて同一のデータ形式にしたがっていることは
稀である上に、すべての端末で利用するデータがすべて
同一であることも稀である。例えば、携帯電話とPDA
では住所録を扱うデータ形式は異なっており、さらに、
携帯電話では住所録の情報のうち名前と電話番号のみを
利用するのに対して、別のPDAでは名前と電話番号に
加えて、住所や電子メールアドレスを利用するといった
違いもある。
【0006】そこで、サーバ計算機に格納されている情
報を読み出し端末機器で利用するためには、各端末機器
に適した形式と内容に変換しなければならない。
【0007】このように、複数の端末機器で利用する情
報をサーバ計算機上で一元管理し、必要に応じてサーバ
計算機から端末機器に情報を読み出して利用するシステ
ムでは、ユーザが利用することが可能な端末機器が特定
の機器に限定されており、サーバ計算機に格納されてい
る情報を端末機器で利用可能な形式に変換したり、端末
機器に格納されている情報をサーバ計算機に格納可能な
形式に変換するためには、機器ごとに特化された変換プ
ログラムを用いている。この方法だと、新しく端末機器
が追加されるごとに新たなプログラムを新規作成しなけ
ればならず、システムの保守が煩雑である。
【0008】また、XML文書形式で表現される構造化
文書に場合には、その構造化文書の文書構造を変換する
ために、スタイルシート(XSL(Extesible
Stylesheet Laguage ))を用い
た変換(XSLT)がよく用いられている。
【0009】上記のような、複数の端末機器で利用する
情報をサーバ計算機上で一元管理し、必要に応じてサー
バ計算機から端末機器に情報を読み出して利用するシス
テムにおいて、構造化文書をターゲットにした場合、X
SLTを用いるとプログラムを新たに作成しなくても、
新しく変換規則のみを作成すれば、XML文書を変換し
別の構造化文書を得る仕組みを提供することが可能であ
る。しかし、XSLTはXML文書を変換し別の構造化
文書に得る目的には適しているが、変換規則が複雑であ
り、変換に用いた規則を利用して新たに得られた構造化
文書から変換を行う前のXML文書がしたがっていた文
書構造にしたがうXML文書へ逆方向の変換を行うこと
は非常に困難である。
【0010】
【発明が解決しようとする課題】このように、サーバク
ライアントシステムにより、サーバにて一元管理されて
いる文書情報をクライアントとしての各種端末装置から
読み出して利用する場合、サーバでは、1つの文書情報
として管理していても、クライアント側で当該文書情報
を利用する際には、当該文書情報の形式(文書構造)が
端末装置毎に異なる。このような場合に、サーバ側対応
の文書形式(文書構造)と各クライアント対応の文書形
式(文書構造)との間で変換プログラムなどを用いて相
互変換する場合には、新規にクライアントとして端末装
置を追加する度に、そのための新たな変換プログラムを
作成しなければならず、また、このような変換プログラ
ム作成の制約上、利用できる端末装置の種類が制限され
ることもあり、クライアントとして端末装置を追加する
ための保守が容易ではないという問題点があった。
【0011】また、処理対象をXMLなどで記述された
構造化文書とし、サーバ側対応の文書構造と各クライア
ント対応の文書構造への変換は、XSLTで可能だが、
逆変換が容易に行えないという問題点があった。
【0012】そこで、本発明は、上記問題点に鑑み、サ
ーバクライアントシステムにより、サーバにて一元管理
されている文書情報をクライアントとしての各種端末装
置から読み出して利用する場合、サーバ側対応の文書構
造と各クライアント対応の文書構造との間の相互変換が
容易に行える文書構造変換方法およびそれを用いた文書
構造変換装置およびプログラムを提供することを目的と
する。
【0013】
【課題を解決するための手段】本発明は、異なる文書構
造の複数の構造化文書のうち所望の構造化文書を、文書
構造毎に予め定められた構造化文書の利用形態対応の変
換規則に従って、前記利用形態対応の文書構造に変換
し、その際、前記構造化文書中の前記変換規則を適用し
た領域とその領域に適用した変換規則とを変換記録とし
て記録し、前記利用形態対応の文書構造に変換された前
記構造化文書に対し編集を行った結果得られた構造化文
書を前記変換記録と前記変換規則とに基づき、元の文書
構造に変換することを特徴とする。
【0014】本発明によれば、1つの文書構造の構造化
文書を、その構造化文書の利用形態対応の複数の異なる
文書構造に変換したり、利用形態対応の異なる文書構造
を元の同じ1つの文書構造へ変換したりすることが容易
に行える。例えば、サーバクライアントシステムによ
り、サーバにて一元管理されている構造化文書をクライ
アントとしての各種端末装置から読み出して利用する場
合、サーバ側対応の文書構造と各クライアント対応(利
用形態対応)の文書構造との間の相互変換が容易に行え
る。
【0015】また、前記変換規則は、前記構造化文書に
対する、前記構造化文書中の少なくとも1つの構成要素
からなる部分文書の文書構造の変更や、前記部分文書の
削除・移動などの操作内容を記述したものであることを
特徴とする。
【0016】また、前記変換記録には、前記構造化文書
の各構成要素の持つ識別子を用いて前記変換規則を適用
した領域が示されていることを特徴とする。
【0017】また、前記構造化文書中の少なくとも1つ
の構成要素からなる部分文書に対し前記変換規則を適用
することにより、その部分文書の文書構造が変更された
とき、変更前の前記部分文書中の少なくとも1つの構成
要素の識別子が、変更後の前記部分文書中の少なくとも
1つの構成要素の識別子として継承されることを特徴と
する。
【0018】また、前記利用形態対応の文書構造の構造
化文書に対しなされた編集は、該利用形態対応の文書構
造に適合する範囲内の編集であることを特徴とする。
【0019】また、前記構造化文書中の少なくとも1つ
の構成要素からなる異なる複数の部分文書のそれぞれ
に、該構造化文書の文書構造を前記利用形態対応の文書
構造に変換する際に削除するか否かを予め設定し、この
設定に基づき前記利用形態対応の文書構造に変換する際
に削除されずに残された部分文書が前記編集により削除
された部分文書で書き換えられたとき、前記削除された
部分文書が次回から削除されないように設定し直す(微
調整)ことを特徴とする。
【0020】また、前記構造化文書中の少なくとも1つ
の構成要素からなる異なる部分文書のそれぞれに対し異
なる変換規則を適用することにより該部分文書の文書構
造が変換されて、前記利用形態対応の文書構造に変換さ
れた構造化文書中に同一の文書構造の部分文書が生成さ
れるとき、前記利用形態対応の文書構造の構造化文書を
元の文書構造に変換する際には、前記異なる変換規則の
それぞれに予め設定されている優先度に基づき、前記元
の文書構造への変換のために適用する変換規則を選択す
ることを特徴とする(変換規則グループ)。
【0021】
【発明の実施の形態】以下、本発明の実施形態につい
て、図面を参照して説明する。
【0022】(第1の実施形態)近年インターネットや
イントラネットなどの通信路を介して交換される標準的
な文書形式の1つに、HTML文書やXML文書などが
ある。HTML文書に関しては、HTML 4.01
Specification W3C Recomme
ndation 24 December 1999
に、XML文書に関しては、Extensible M
arkup Language (XML) 1.0
(Second Edition) W3C Reco
mmendation 6 October 2000
に詳細に書かれている。これらの文書はともに構造化
文書の一例である。以下の本発明の実施形態では、構造
化文書の一例であるXML文書を処理対象とした場合を
例にとり説明する。
【0023】まず、XML文書について、簡単に説明を
行う。
【0024】XML文書は要素(あるいは構成要素とも
呼ぶ)から構成された階層構造の文書構造を持つ。根
(ルート)と呼ばれる特別な要素以外のXML文書のす
べての要素は、ただ1つの親要素を保持し、XML文書
のすべての要素は、1つまたは複数の子要素を保持する
こともある。要素の親子関係がXML文書の階層構造を
形成する。
【0025】たとえば、「住所録」情報をXMLで記述
したもの(XML文書)を以下に示す。
【0026】 上記XML文書は、「住所録」という構成要素の子要素
に複数の「メンバ」という子要素があり、さらに、各
「メンバ」要素は、「名前」、「メール」、「勤務先」
という子要素から構成された文書構造を持つ。各構成要
素は、その要素名を表したタグ(<要素名>)で囲まれ
てなる。
【0027】例えば、上記「住所録」情報というXML
文書の持つ上記したような文書構造の識別情報を「住所
録」とする。
【0028】XMLは、文書の構造の表現にタグが用い
られる。タグには、開始タグと終了タグがあり、文書構
造を構成する構成要素を開始タグと終了タグで囲むこと
により、文書中の文字列(テキスト)区切りと、そのテ
キストが構造上どの構成要素に属するのかを明確に記述
することができる。
【0029】ここで開始タグとは要素名を記号「<」、
「>」で閉じたものであり、終了タグとは要素名を記号
「</」と「>」で閉じたものである。タグに続く構成
要素の内容が、テキスト(文字列)または子供の構成要
素の繰り返しである。また開始タグには「要素名 属性
=“属性値”」などのように属性情報を設定することが
できる。
【0030】ここでは、「住所録」タグの子要素の1つ
である「メンバ」要素およびその子要素を含むデータ範
囲を指定するために、「住所録/メンバ」と表し、さら
に、「メンバ」の子要素である「名前」要素を指定する
ために「住所録/メンバ/名前」と表す。このような構
造化文書中の特定のエリアをその文書構造に基づき指定
するものをパスと呼び、「住所録/メンバ」、「住所録
/メンバ/名前」などをパス名と呼ぶ。
【0031】また、「神奈川ガス」という要素値を持つ
要素を指定する場合のパスも上記同様にして、「住所録
/メンバ/勤務先/神奈川ガス」と表すことができる。
【0032】また、パスにより指定される構造化文書中
の特定のエリアを当該構造化文書の部分文書と呼ぶ。部
分文書には、要素とその値も含まれる。例えば、「メン
バ」要素からなる部分文書と呼ぶとき、この部分文書に
は「メンバ」要素の子孫要素とそれらの値を含む範囲を
さす。
【0033】図1は、本発明の一実施形態である構造化
文書管理システムの構成例を示す。構造化文書としては
XML文書を考える。
【0034】図1の構造化文書管理システムは、大きく
分けて、構造化文書配信装置1、構造化文書変換装置
5、構造化文書閲覧・編集装置12の3つの装置からな
る。
【0035】構造化文書配信装置1と構造化文書変換装
置5は、単一の装置の中に組み込まれて機能する場合
と、別個の装置として、ネットワークを通じて結合され
ている場合との両方の構成が考えられる。
【0036】また、構造化文書変換装置5と構造化文書
閲覧・編集装置12に関しても同様に、1つの装置の中
に組み込まれている場合と、それぞれ別個の装置として
ネットワークを通じて結合されている場合の両方の構成
が考えられる。
【0037】例えば、構造化文書配信装置1と構造化文
書変換装置5の機能をサーバ装置に持たせ、構造化文書
閲覧・編集装置12の機能をクライアント端末に持たせ
る構成であってもよい。この場合、サーバ装置の構成に
は、構造化文書配信装置1と構造化文書変換装置5の構
成を含み、クライアント端末には、構造化文書閲覧・編
集装置12の構成を含む。
【0038】また、構造化文書配信装置1の機能をサー
バ装置に持たせ、構造化文書変換装置5と構造化文書閲
覧・編集装置12の機能をクライアント端末に持たせる
ような構成であってもよい。この場合、サーバ装置の構
成には、構造化文書配信装置1の構成を含み、クライア
ント端末には、構造化文書変換装置5と構造化文書閲覧
・編集装置12の構成を含む。
【0039】構造化文書配信装置1は、格納部2、読み
出し部3、書き込み部4とから構成される。
【0040】格納部2は、異なる文書構造の複数のXM
L文書を格納するようになっている。
【0041】読み出し部3は、XML文書を格納部1か
ら読み出し、読み出したXML文書を構造化文書変換装
置5へ送信する。格納部2には一般に複数のXML文書
が格納されているので、それら複数のXML文書の中か
ら(構造化文書閲覧・編集装置12を用いてユーザから
要求されたXML文書であって)構造化文書変換装置5
へ送信すべき適切なXML文書を選択し、読み出す。た
だし、読み出し部3で読み出すものは、XML文書全体
である場合と、前回格納部2から読み出したXML文書
と今回読み出したXML文書との差分のみである場合の
いずれであってもよい。読み出し部3は、読み出すべき
情報がXML文書全体であるかそれともXML文書の差
分のみであるかを適切に判断する。
【0042】書き込み部4は、構造化文書変換装置2か
ら送信されてきたXML文書を受信し、受信したXML
文書を格納部2に格納する。ただし、書き込み部で受信
するものは、XML文書全体である場合と、前回格納部
2から読み出したXML文書との差分のみである場合の
いずれであってもよい。
【0043】書き込み部4は、受信した情報が、XML
文書全体であるかそれともXML文書の差分のみである
かに応じて、適切な書き込みを行う。格納部2には一般
に複数のXML文書が格納されているので、それら複数
のXML文書の中から構造化文書変換装置5から送信さ
れてきたXML文書に対応する適切なXML文書を選択
し、このXML文書を構造化文書変換装置5から送信さ
れてきたXML文書の内容にしたがって更新する。
【0044】なお、図1の構造化文書管理システムで
は、格納部2に格納されるXML文書のすべての構成要
素は、各構成要素を一意に識別するための識別子が付与
される。構造化文書変換装置5から送信されてきたXM
L文書の構成要素のうち、ユーザによって後述の構造化
文書閲覧・編集装置12上で新規作成されたものには識
別子が付与されていないので、書き込み部4が、それら
の識別子が付与されていない要素に識別子を付与する。
【0045】構造化文書変換装置5は、変換実行部6、
逆変換実行部7、一時格納部8、解析部9、変換規則管
理部10、変換記録管理部11から構成され、構造化文
書配信装置1から配信された構造化文書を構造化文書閲
覧・編集装置12で閲覧・編集する目的に適した形式
(文書構造)に変換したり、構造化文書閲覧・編集装置
12から送信されてきた構造化文書を構造化文書配信装
置1に格納する目的に適した形式(文書構造)に逆方向
の変換を行うなど、構造化文書配信装置1と構造化文書
閲覧・編集装置12の中間に位置し構造化文書を仲介す
る役割を果たす。
【0046】一時格納部8は、構造化文書変換装置5に
よって変換される前の構造化文書を一時格納する。構造
化文書の逆方向の変換を行う際に、変換を行う前の構造
化文書の内容を参照する必要が生じたら、一時格納部8
から構造化文書を取り出し、参照することが可能であ
る。
【0047】解析部9は、構造化文書を解析し、解析結
果は、変換実行部6,逆変換実行部7で構造化文書の文
書構造の変換・逆変換時に利用される。
【0048】XML文書は、ある要素が別の要素と親子
関係を持つという階層構造を保持し、この階層構造によ
って意味のまとまりを形成している。
【0049】図1のシステムでは、構造化文書配信装置
1に格納されているXML文書の持つすべての要素に識
別子が付与されており、それらの識別子のうち一部また
はすべては変換、編集、逆変換後のXML文書に継承さ
れることを特徴としているが、以下の説明において、特
に混乱がない限り、識別子が付与されていないXML文
書を用いて説明を行う。
【0050】例えば、次に示すような「名簿」情報をX
MLで記述したXML文書を考える。
【0051】 上記XML文書において、「名前」要素は、「姓」要素
と「名」要素の組という意味のまとまりを形成してい
る。したがって、「名前」要素を削除する変換を行う
と、 となってしまうため意味のまとまりが崩れてしまい、ど
の姓とどの名が対応するか明確でなくなってしまう。ま
た、「名前」要素を2要素に分割し、「姓」要素と
「名」要素を別の要素の子要素にする変換を行うと、 となってしまい、この場合も意味のまとまりが崩れて、
どの姓とどの名が対応するか明確でなくなってしまう。
【0052】一方、「名簿」情報を管理する上記XML
文書とは異なる下記XML文書を考える。
【0053】 <名簿> <メンバ> <名前>A1</名前> <住所> <郵便番号>111-1111</郵便番号> <市町村>A2</市町村> </住所> </メンバ> <メンバ> <名前>B1</名前> <住所> <郵便番号>222-2222</郵便番号> <市町村>B2</市町村> </住所> </メンバ> </名簿> このXML文書において、「住所」要素を削除する変換
を行うと、 となる。この場合には、「住所」要素が削除された後で
あってもどの「郵便番号」要素とどの「市町村」要素が
対応するかは明確であり、その意味において意味のまと
まりは崩れていない。また、「住所」要素を2要素に分
割し、「郵便番号」要素と「市町村」要素を別の要素の
子要素にする変換を行うと、 <名簿> <メンバ> <名前>A1</名前> <住所> <郵便番号>111-1111</郵便番号> </住所> <住所> <市町村>A2</市町村> </住所> </メンバ> <メンバ> <名前>B1</名前> <住所> <郵便番号>222-2222</郵便番号> </住所> <住所> <市町村>B2</市町村> </住所> </メンバ> </名簿> となり、この場合も変換後のXML文書において意味の
まとまりは明確である。
【0054】このように、XML文書中の要素の中に
は、それを削除したり、複数要素に分割することによっ
て、XML文書の意味のまとまりが不明確になるもの
と、削除したり、複数要素に分割しても、XML文書の
意味のまとまりが明確であるものの2種類が存在する。
【0055】構造化文書配信装置1から送信されたXM
L文書を構造化文書閲覧・編集装置12で閲覧・編集す
る目的に適した形式に変換する際には、構造化文書配信
装置1内に格納されているXML文書が保持する意味の
まとまりを崩さない範囲で変換することが必要である。
【0056】解析部9は、構造化文書を解析し、上記2
種類の要素を検出するためのものである。
【0057】変換規則管理部10は、XML文書を変換
する際の変換規則を管理する。
【0058】変換規則には、例えば以下に示す規則が考
えられる。
【0059】(1)XML文書中のパス名を別のパス名
に変更する。すなわち、構成要素名の変更のみを行う場
合と、文書構造の変更のみを行う場合と、文書構造の変
更と構成要素名の変更とを行う場合とがある。ここで、
パス名の変更によってパスに含まれる要素数が変化して
も構わない。パス名の変更という変換規則を用いれば、
例えば、「メンバ/名前/電話番号」というパス名を
「member/name/tel」という英字のパス
名に変更したり、「名簿/名前/自宅/電話番号/$
1」というパス名を「名簿/名前/電話番号/$1」と
「自宅」要素を削除して文書構造を変更したり、さら
に、「名簿/名前/連絡先/$1」と「電話番号」要素
の要素名を「連絡先」と変更することができる。このよ
うにして、パス名の変更という変換規則の実行された構
造化文書は、この変換規則にて指定された(変更前の)
パスにより特定される当該構造化文書中の領域(部分文
書)の文書構造が(変換規則で指定された変更後のパス
で表されるような文書構造に)変更されることになる。
【0060】(2)XML文書のパスを削除する。パス
を削除するとは、そのパスにて指定される部分文書を削
除するということである。なお、XML文書のパスの最
終要素が子孫要素を保持する場合には、それらも合わせ
て削除することになる。また、パスの最終要素とは、例
えばパス「メンバ/住所」であるときの最終要素は、
「住所」要素である。また、「住所」要素以下に、子要
素として「郵便番号」「都道府県」などの子要素がある
ときは、それらも削除する。
【0061】(3)XML文書のパスを移動する。パス
の移動という変換規則の実行された構造化文書は、この
変換規則にて指定されたパスにより特定される当該構造
化文書中のエリア(部分文書)が変換規則で指定された
位置に移動することになる。ここで、XML文書のパス
の移動によって、XML文書が保持する意味のまとまり
を崩してはいけないという制約がある。
【0062】より詳細に変換の種類を定義するならば、
上記パス(名)の変更にも、 (4)新たな部分文書を追加する。
【0063】(5)異なるパスにて指定される複数の部
分文書を1つのパスにて指定することのできる1つの部
分文書に併合する。
【0064】(6)1つのパスにて指定される1つの部
分文書を複数の異なるパスを用いて指定される別個の部
分文書に分割する。
【0065】(7)部分文書中に別の部分文書の複製を
追加する。
【0066】というような種類の変更もありえるだろ
う。これらをパスの変更とは別個の種類の変換規則とし
て定義するようにしてもよい。
【0067】なお、変換規則は、上記のみに限るもので
はなく、必要に応じて、必要な変換規則を用いればよ
い。ここでは、例えば、上記(1)〜(3)に示したよ
うな種類の変換規則を例にとり説明する。
【0068】XSLTにおけるXML文書の文書構造の
変換が、一般にある条件に合致する文書構造を表す
「木」から新規の「木」を作成する操作を基本にしてい
るのに対して、本発明におけるXML文書の文書構造の
変換は、「パス」にて特定される部分文書に対する操作
を基本にしている。このため、本発明における文書構造
の変換は、XSLTにおける変換よりも単純であり、変
換に対応する逆方向の変換を自動的に行うことが容易で
ある。
【0069】1つの構造化文書中のあるパスにて特定さ
れる部分文書を別のパス名になるような文書構造に変換
するパス名の変更といった変換では、要素名や要素数が
変化するため、変換を行う前の要素と変換を行った後の
要素を1対1に対応付けることは不可能である。したが
って、変換前の要素が保持する識別子をすべて変換後の
要素に継承することも不可能である。そこで、変更前の
部分文書中の少なくとも1つの構成要素の識別子が、変
更後の当該部分文書中の少なくとも1つの構成要素の識
別子として継承するようにする。例えば、ここでは、変
換前のパスの最終要素が保持する識別子を変換後のパス
の最終要素に継承させる。この方法を取ることによっ
て、変換を行う前の要素と変換を行った後の要素を1対
1に対応付けることは不可能であるが、変換を行う前の
部分文書と変換を行った後の部分文書を1対1に対応付
けることが可能となる。
【0070】また、後述するように、変換記録では、変
換前のパスの最終要素の保持する要素識別子は、変換規
則が実行された構造化文書中の領域(位置)を特定する
ためにも用いられる。
【0071】次に、上記複数の変換規則のうち、パス名
の変更、パスの削除、パスの移動という3つの変換規則
を例にとり、変換規則により文書構造が変換される様子
と、要素識別子の継承について、具体的に説明する。例
えば、以下に示す「名簿」情報をXMLで記述したXM
L文書を考える。ただし、ここでは、要素の識別子(要
素識別子)は、その要素の属性情報として、各要素の開
始タグ内に「id=“要素識別子”」と書き込まれてい
る。
【0072】 <個人情報 id=”pi1”> <名前 id=”pi2”>A1</名前> <会社 id=”pi3”><住所 id=”pi4”>A2</住所></会社> <自宅 id=”pi5”><住所 id=”pi6”>A3</住所></自宅> <電子メール id=”pi7”>A4</電子メール> </個人情報> 変換規則管理部10で管理されている変換規則の1つ
が、「パス「会社/住所/$1」をパス「会社住所/$
1」に変更する」というものであったとする。ただし、
ここで「$1」は変数を表すものとする。この場合、
「会社」要素からなる部分文書(より詳しく表現する
と、「会社」要素とその子要素である「住所」要素から
なる部分文書)の文書構造を変更する。すなわち、上記
XML文書にこの変換規則を適用すると、部分文書「<
会社 id=”pi3”><住所 id=”pi4”>A2</住所></会社
>」が、部分文書「<会社住所 id=”pi4”>A2</会社住
所>」と変換される。
【0073】そして、この場合、変換前のパスの最終要
素(「住所」要素)が保持する要素識別子「pi4」を
変換後のパスの最終要素(「会社住所」要素)に承継さ
せる。よって、以下に示すXML文書が得られる。
【0074】 <個人情報 id=”pi1”> <名前 id=”pi2”>A1</名前> <会社住所 id=”pi4”>A2</会社住所> <自宅 id=”pi5”><住所 id=”pi6”>A3</住所></自宅> <電子メール id=”pi7”>A4</電子メール> </個人情報> 変換規則管理部10で管理されている別の変換規則の1
つが、「パス「自宅/住所/$1」を削除する」という
ものであったとする。この場合、「自宅」要素からなる
部分文書(より詳しくは、「自宅」要素とその子要素か
らなる「住所」要素からなる部分文書)を削除する。上
記XML文書にこの変換規則を適用すると、以下に示す
XML文書が得られる。
【0075】 さらに、変換規則管理部10で管理されている別の変換
規則の1つが、「パス「電子メール/$1」を「名前」
要素の直後に移動する」というものであったとする。こ
の場合、「電子メール」要素からなる部分文書を「名
前」要素からなる部分文書の直後に移動する。すなわ
ち、上記XML文書にこの変換規則を適用すると以下に
示すXML文書が得られる。
【0076】 例えば、上記3種類の変換規則が登録されて、管理する
のが変換規則管理部10である。XML文書に対して変
換規則を適用したら、どの変換規則を当該XML文書中
のどの領域(どの部分文書)に対して適用したかを表す
変換記録を変換記録管理部11に記録される。「どの領
域(部分文書)に対して適用したか」という情報を、こ
こでは、当該部分文書を示すパス名にある最終要素の要
素識別子にて示している。
【0077】逆変換実行部7は、構造化文書閲覧・編集
装置12から送信されたXML文書を構造化文書配信装
置1に格納する目的に適した形式に変換する際に、構造
化文書配信装置1から送信されたXML文書を構造化文
書閲覧・編集装置12に表示する目的に適した形式に変
換した際の変換記録を用い、記録されている変換の逆変
換を行う。
【0078】逆変換実行部7は、構造化文書閲覧・編集
装置12から送信されてきたXML文書を受信し、受信
したXML文書に対して、変換実行部6で行った変換の
逆変換を行うものである。逆変換を行う際には、変換記
録管理部11で管理されている変換記録を1つずつ取得
し、取得した変換記録を順番に、当該XML文書に適用
する。この際、変換規則や変換実行部6で変換を行う前
のXML文書を参照する必要がある場合には、適宜、変
換規則管理部10や一時格納部8に問い合わせて必要な
情報を取得する。
【0079】構造化文書変換装置5で変換されXML文
書は、構造化文書閲覧・編集装置12に送信され、ここ
で、当該XML文書が編集された場合には、構造化文書
閲覧・編集装置12から構造化文書変換装置5に送信さ
れるXML文書は、構造化文書変換装置5から構造化文
書閲覧・編集装置12に送信されたXML文書と異なっ
ている。
【0080】この場合には、逆変換実行部7で行う逆変
換は変換実行部6で行われた変換と完全に対称になって
いる訳ではない。すなわち、構造化文書閲覧・編集装置
12における編集によって削除された部分文書(パス)
は変換の対象であったにもかかわらず逆変換の対象には
ならない。また、構造化文書閲覧・編集装置12におけ
る編集によって新規作成された部分文書(パス)は変換
の対象でなかったにもかかわらず逆変換の対象になる。
【0081】例えば、以下に示すXML文書を考える。
ただし、ここでも、要素識別子は、その要素の属性情報
として、各要素の開始タグ内に「id=“要素の識別
子”」と書き込まれている。
【0082】 <個人情報 id="pi1"> <名前 id="pi2">A1</名前> <会社 id="pi3"><住所 id="pi4">A2</住所></会社> </個人情報> この場合、変換規則管理部10に、上記XML文書の文
書構造を変換するための、例えば、以下示すような2つ
の変換規則が登録・管理されているとする。 変換規則R101:パス「会社/住所/$1」を「会社
住所/$1」に変更する。
【0083】変換規則R102:パス「自宅/住所/$
1」を「自宅住所/$1」に変更する。
【0084】ただし、ここで「$1」は変数を表すもの
とする。上記XML文書に、この変換規則R101、R
102を適用し、変換実行部6で変換を行うと、変換規
則R101のみが適用され、以下に示すXML文書が得
られる。
【0085】 また、この際、変換記録管理部11に記録される変換記
録は以下の2つである。
【0086】変換記録M101:要素識別子「pi4」
の要素を最終要素として保持するパスに、変換規則R1
01を適用 変換記録M102:変換規則R102を適用するパスは
存在しない。
【0087】上記変換記録は、逆変換実行部7でXML
文書の文書構造の逆変換を行う際に用いる。
【0088】このXML文書を構造化文書閲覧・編集装
置12で編集し、「会社住所」要素が削除され、「自宅
住所」要素が新規追加され、以下に示すXML文書が得
られたとする。
【0089】 上記XML文書に上記変換記録M101、M102を適
用し、構造化文書変換装置5の逆変換実行部7で逆変換
を行うと、上記XML文書中には、もはや要素識別子
「pi4」の要素を最終要素として保持するパス「会社
住所/A2」は存在せず、かわってパス「自宅住所/A
3」が存在するので、変換記録M101は適用できず
に、変換記録M102が適用される。この場合、変換規
則R102の操作の逆の操作を、パス名「自宅住所/$
1」に対して行い、その結果、このパスは、「自宅/住
所/$1」に変更され、以下に示すXML文書が得られ
る。
【0090】 このように、変換記録は、構造化文書中のどの位置に
(最終要素の識別子にて判断されるエリア)、どの変換
規則を適用したかを記録したものである。なお、逆変換
に対し、変換記録に沿った変換を順方向変換と呼ぶこと
もある。
【0091】また、文書構造の逆変換とは、変換記録を
基に、変換規則にて定義されている変換の逆の変換を行
うものである。
【0092】パス名の変更を行う変換規則対応の逆変換
とは、パス名の変更という順方向変換のなされた部分文
書の文書構造を順方向変換を行う前の文書構造に戻す変
換である。その際、当該部分文書に要素識別子や、後述
するようなポインタ属性のような属性情報が与えられて
いるときはそれらの設定も含めて復元される。
【0093】パスの削除を行う変換規則対応の逆変換と
は、パスの削除という順方向変換で削除された部分文書
を復元する変換である。
【0094】パスの移動を行う変換規則対応の逆変換と
は、パスの移動という順方向変換のなされた部分文書の
位置を順方向変換を行う前の位置に戻す変換である。
【0095】パスAをパスBに変更する、パス名の変更
という変換規則対応の逆変換は、変換記録で最終要素の
識別子にて指定される部分文書(パスBにて示されてい
るような文書構造を持つ部分文書)に対し、パスAにて
示されるような文書構造に変換する操作である。また、
これから逆変換しようとする処理対象の構造化文書中
に、変換記録で最終要素の識別子にて指定される部分文
書以外に、パスBに対応する(一致する)パス(部分文
書)が存在するときは、そのパス(部分文書)に対して
もパスAにて示されるような文書構造に変更する。その
際、当該部分文書に、後述するようなポインタ属性のよ
うな属性情報を設定することができる。さらに、パス名
の変換を行う変換規則を適用しなかったという変換記録
である場合にも、パスBに対応する(一致する)パス
(部分文書)が、これから逆変換しようとする処理対象
の構造化文書中に存在するときは、そのパス(部分文
書)をパスAにて示されるような文書構造に変更すると
いう逆変換を行う。その際、当該部分文書に後述するよ
うなポインタ属性のような属性情報を設定することがで
きる。
【0096】パスAを削除する、パスの削除という変換
規則の逆変換は、変換記録で最終要素の識別子にて指定
される部分文書を、一時格納部8に格納されている順方
向変換を行う前の構造化文書から抽出し、この抽出した
部分文書を、これから逆変換しようとする処理対象の構
造化文書中の削除した位置に追加する操作である。その
際、当該部分文書に要素識別子や、後述するようなポイ
ンタ属性のような属性情報が与えられているときはそれ
らの設定も含めて復元される。また、これから逆変換し
ようとする処理対象の構造化文書中に、変換記録で最終
要素の識別子にて指定される部分文書以外に、パスAに
対応する(一致する)パス(部分文書)が存在するとき
は、その部分文書に後述するようなポインタ属性のよう
な属性情報を設定するような操作もできる。さらに、パ
スを削除する変換規則を適用しなかったという変換記録
である場合にも、パスAに対応する(一致する)パス
(部分文書)が、これから逆変換しようとする処理対象
の構造化文書中に存在するときは、その部分文書に後述
するようなポインタ属性のような属性情報を設定するよ
うな操作もある。
【0097】パスAを(位置x1から)位置x2へ移動
する、パスの移動という変換規則対応の逆変換は、変換
記録で最終要素の識別子にて指定される部分文書の移動
前の位置を、一時格納部8に格納されている順方向変換
を行う前の構造化文書を参照して検出し、この検出した
位置に当該部分文書を移動させる操作である。また、こ
れから逆変換しようとする処理対象の構造化文書中に、
変換記録で最終要素の識別子にて指定される部分文書以
外に、パスAに対応する(一致する)部分文書が位置x
2に存在するときは、その部分文書も位置x1へ移動さ
せる。その際、部分文書に後述するようなポインタ属性
のような属性情報を設定するような操作もできる。さら
に、パスを移動する変換規則を適用しなかったという変
換記録である場合にも、パスAに対応する(一致する)
部分文書が、これから逆変換しようとする処理対象の構
造化文書の位置x2に存在するときは、その部分文書も
位置x1へ移動させる。その際、部分文書に後述するよ
うなポインタ属性のような属性情報を設定するような操
作もできる。
【0098】逆変換が施されたXML文書は、構造化文
書格納装置1に送信される。ここで、構造化文書格納装
置1へ送信するものは逆変換が終了したXML文書全体
である場合と、逆変換が終了したXML文書と一時格納
部8に格納されているXML文書との差分である場合と
のいずれであってもよい。
【0099】構造化文書閲覧・編集装置12は、解析部
13と閲覧・編集実行部14とからなる。
【0100】構造化文書閲覧・編集装置12でXML文
書の編集が行われる際、構造化文書変換装置5でXML
文書の変換を行った際と同様、XML文書が保持する意
味のまとまりを崩す編集は避けるべきである。また、編
集が終了したXML文書は、編集を行う前のXML文書
がしたがっていた文書構造と同一の文書構造にしたがっ
ているべきである。
【0101】解析部13は、閲覧・編集実行部14にて
編集されたXML文書の文書構造に対して、編集前の文
書構造と同一の文書構造に従っているか、当該XML文
書が保持する意味のまとまりを崩すような編集はおこな
っていないかなどをチェックする。これは、当該XML
文書の文書構造の種類(と端末の種別)に対応して予め
用意されたDTD(Document Type De
finition)を用いて、パーサ(Parser)
という検証プログラムを使って、編集後の当該XML文
書が当該DTDに従っているかどうかをチェックするこ
とにより実現することができる。このように、解析部1
3により、閲覧・実行部14にて構造化文書に対しなさ
れる編集は、当該構造化文書の利用形態対応の文書構造
に適合する範囲内の編集のみが許され、その範囲外の編
集は拒否される。
【0102】閲覧・編集実行部14は、構造化文書変換
装置5から送信されてきたXML文書を受信し、構造化
文書をユーザに対して表示し、ユーザの編集を受け付
け、編集の終了したXML文書を構造化文書変換装置5
に対して送信する。前述したように、編集を行った後の
XML文書は、しかるべき文書の構造にしたがっていな
ければならない。文書構造にしたがっているかどうかの
検査は、解析部13を利用して行われる。
【0103】閲覧・編集実行部14は、ユーザの編集と
同時進行に解析部13で解析を行いながら、始めから文
書構造を崩さない編集のみを受け付けるものであっても
よいし、一度ユーザの編集を受け付けた上で、その編集
が文書構造に違反しているかどうか解析部13を通して
検査するようになっていてもよい。例えば、ここでは、
前者の場合を例にとり説明するが、後者の場合であって
も、閲覧・編集実行部14、解析部13の処理動作は基
本的には同じである。
【0104】次に、XML文書を構造化文書配信装置1
から構造化文書変換装置5を経由して、構造化文書閲覧
・編集装置12へ送信するまでの処理動作について説明
する。
【0105】構造化文書配信装置1は、構造化文書閲覧
・編集装置12からの文書読み出し要求を受けて、構造
化文書配信装置1内の格納部2に格納されている、当該
読み出し要求にて指定されたXML文書を読み出し部3を
経由して読み出し、それを構造化文書変換装置5へ送信
する。以下、図2に示すフローチャートを参照して、構
造化文書変換装置5の主に変換実行部6の処理動作につ
いて説明する。
【0106】変換実行部6は、構造化文書配信装置1か
ら送信されてきたXML文書を受信すると(ステップS
2)、受信したXML文書の複写を一時格納部8に格納
する(ステップS3)。受信したXML文書に対し、以
下に続く変換規則を用いた変換に適した形式に変換す
る。そのために、まず、当該XML文書に対し前処理を
行う(ステップS4)。前処理とは、解析部9による当
該XML文書の解析結果を参照し(当該XML文書の文
書構造を定義したDTDをチェックしながら)、XML
文書が保持する意味のまとまりを崩さないように、当該
XML文書の記述形式を、変換規則を用いた変換に適し
た形式に変換する処理である。
【0107】次に、変換規則管理部10で登録・管理さ
れている変換規則を1つずつ先頭から取得し、取得した
変換規則を順番に適用して、当該XML文書の文書構造
を変換する。また、変換規則を適用したら、当該XML
文書のどのパスに対してどの変換規則を適用したかを表
す変換記録を、変換記録管理部11に記録する。この手
続きをすべての変換規則に関して行う(ステップS5、
ステップS8〜ステップS15)。
【0108】すなわち、変換規則管理部10から取り出
した変換規則の種類が、XML文書のパス名の変更に関
するものである場合は(ステップS8)、ステップS9
へ進み、そうでない場合にはステップS10へ進む。
【0109】ステップS10において、変換規則管理部
10から取り出した変換規則の種類が、XML文書のパ
スの削除に関するものである場合にはステップS11へ
進み、そうでない場合はステップS12へ進む。
【0110】ステップS12において、変換規則管理部
10から取り出した変換規則が、XML文書のパスの移
動に関するものである場合にはステップS13へ進み、
そうでない場合に、上記パス名の変更、パスの削除、パ
スの移動以外の変換規則(例えば、先述したような、パ
スの新規作成、パスの併合、パスの分割など)であると
きには、さらに、ステップS14へ進む。
【0111】ステップS14において、変換規則管理部
10から取り出した変換規則が、上記パス名の変更、パ
スの削除、パスの移動以外の変換規則(例えば、先述し
たような、パスの新規作成、パスの併合、パスの分割な
ど)である場合には、ステップS15へ進み、そうでな
い場合、例えば、予め用意された変換の種類に該当しな
いような場合には、異常終了する。
【0112】ステップS9では、変換実行部6が、XM
L文書のパス名を変換規則にしたがって変更する。
【0113】ステップS11では、変換実行部6が、X
ML文書のパスを変換規則にしたがって削除する。ま
た、その際、当該削除するパスにて指定される要素の子
孫要素もすべて削除する。
【0114】ステップS13では、変換実行部6が、X
ML文書のパスを変換規則にしたがって移動する。
【0115】ステップS15では、上記パス名の変更、
パスの削除、パスの移動以外の変換規則の種類対応の変
換、すなわち、例えば、前述したような、パスの新規作
成、パスの併合、パスの分割などがあるときには、それ
ぞれの種類対応の変換を行う。
【0116】ステップS5において、当該XML文書に
対し適用可能な全ての変換規則を適用したなら、次に、
ステップS6へ進み、変換が終了したXML文書に対し
後処理を施す(ステップS6)。後処理とは、解析部9
による当該XML文書の解析結果を参照し(当該XML
文書の文書構造を定義したDTDをチェックしなが
ら)、変換後のXML文書を構造化文書閲覧・編集装置
12で閲覧・編集する目的に適した記述形式に変換する
ことである。その後、構造化文書閲覧・編集装置12に
送信する(ステップS7)。
【0117】なお、変換規則は、上記したような、パス
名の変更、パスの削除、パスの移動、パスの新規作成、
パスの併合、パスの分割に限定するものではなく、上記
以外の種類の変換規則ももちろん存在するであろう。し
かし、本発明では、どのような変換規則が存在しても、
どのように組み合わせて用いても、適用可能である。実
際、XML文書を閲覧、編集するクライアント側に合わ
せて、これらのうちのいくつかを組み合わせて適宜用い
ればよい。
【0118】次に、図3〜図4を参照して、構造化文書
変換装置5から送信されるXML文書を構造化文書閲覧
・編集装置12で受信し、構造化文書閲覧・編集装置1
2でXML文書の閲覧・編集後、構造化文書閲覧・編集
装置12から構造化文書変換装置5へXML文書を送信
するまでの処理手順を示す。
【0119】図3は、構造化文書閲覧・編集装置12の
処理動作を説明するためのフローチャートである。
【0120】構造化文書変換装置5から送信されてくる
XML文書は、閲覧・編集実行部14で受信され、所定
の表示のための処理が行われて、ディスプレイなどの表
示装置に表示される(ステップS21)。
【0121】ユーザからの編集要求が終了するまで、ス
テップS23〜ステップS24の処理を繰り返す。
【0122】閲覧・編集実行部14は、解析部13から
得られる情報を利用しながら、ユーザにより行われた編
集内容が、当該XML文書の文書構造を崩すものである
かどうか調べ(当該XML文書の文書構造対応のDTD
にあっているか否かを調べ)、文書構造を崩すものであ
る場合には、そのような編集を拒否し、そうでない場合
には、ステップS24へ進み、当該編集内容を受け付け
る。
【0123】ステップS24では、閲覧・編集実行部1
4は、ユーザからの編集要求にしたがったXML文書更
新を行い、ステップS22へ戻り、上記ステップS23
〜ステップS24の処理を編集要求が終了するまで繰り
返す。
【0124】ユーザからの編集要求が終了したら、編集
した結果であるXML文書を閲覧・編集実行部14から
構造化文書変換装置5へ送信する(ステップS25)。
【0125】図4は、構造化文書変換装置5の主に逆変
換実行部7の処理動作を説明するためのフローチャート
である。
【0126】構造化文書閲覧・編集装置12から構造化
文書変換装置5へ、編集のなされたXML文書が送信さ
れると、逆変換実行部7でそれを受信する(ステップS
32)。解析部9が当該XML文書を解析し、逆変換実
行部7は、当該XML文書に対し前処理を行う(ステッ
プS33)。前処理とは、解析部9による当該XML文
書の解析結果を参照し(当該XML文書の文書構造を定
義したDTDをチェックしながら)、当該XML文書の
記述形式を、変換記録を用いた逆変換に適した形式に変
換する処理である。
【0127】変換記録管理部11で管理されている変換
記録のうち、当該XML文書に適用されていない変換記
録がまだ存在する場合は、その変換記録を例えば、最後
から1つずつ取り出し、取り出した変換記録を順番に適
用して、当該XML文書の文書構造を逆変換する。この
手続きをすべての変換記録に関して行う(ステップS3
4、ステップS38〜ステップS45)。
【0128】すなわち、ステップS38において、変換
記録管理部11から取り出した変換記録に記録されてい
る変換の種類が、パス名の変更に関するものである場合
は、ステップS39へ進み、そうでない場合にはステッ
プS40へ進む。
【0129】ステップS39において、変換記録管理部
11から取り出した変換記録に記録されている変換の種
類が、パスの削除に関するものである場合は、ステップ
S41へ進み、そうでない場合にはステップS42へ進
む。
【0130】ステップS42において、変換記録管理部
11から取り出した変換記録に記録されている変換の種
類が、パスの移動に関するものである場合は、ステップ
S43へ進み、そうでない場合に、上記パス名の変更、
パスの削除、パスの移動以外の変換(例えば、先述した
ような、パスの新規作成、パスの併合、パスの分割な
ど)でがあるときには、さらに、ステップS44へ進
む。
【0131】ステップS44において、変換記録管理部
11から取り出した変換記録に記録されている変換の種
類が、上記パス名の変更、パスの削除、パスの移動以外
の変換規則(例えば、先述したような、パスの新規作
成、パスの併合、パスの分割など)である場合には、ス
テップS45へ進み、そうでない場合、例えば、予め用
意された変換の種類に該当しないような場合には、異常
終了する。
【0132】ステップS39では、逆変換実行部7が、
XML文書のパス名を変換記録にしたがって変更する。
【0133】ステップS41では、逆変換実行部7が、
変換記録に従って、削除されたパスと、当該削除された
パスにて指定される領域内にある子孫要素もすべて削除
する前の状態に戻す。
【0134】ステップS43では、逆変換実行部7が、
変換記録に従って、移動したパスを元の位置に移動す
る。
【0135】ステップS45では、上記パス名の変更、
パスの削除、パスの移動以外の変換の種類対応の逆変
換、すなわち、例えば、前述したような、パスの新規作
成、パスの併合、パスの分割などがあるときには、それ
ぞれの種類対応の逆変換を行う。
【0136】ステップS34において、当該XML文書
に対し全ての変換記録を適用したなら、次に、ステップ
S35へ進み、逆変換が終了したXML文書に対し後処
理を施す(ステップS36)。後処理とは、解析部9に
よる当該XML文書の解析結果を参照し(当該XML文
書の文書構造を定義したDTDをチェックしながら)、
逆変換後のXML文書を構造化文書配信装置1の格納部
2に格納する目的に適した記述形式に変換することであ
る。その後、構造化文書配信装置1に送信する(ステッ
プS37)。
【0137】構造化文書変換装置5から構造化文書配信
装置1に送信されたXML文書は、書き込み部4で受信
し、格納部2へ格納される。
【0138】次に、構造化文書変換装置5における、X
ML文書の文書構造の変換処理、逆変換処理について、
具体的に説明する。
【0139】構造化文書配装置1に格納されているXM
L文書を構造化文書閲覧・編集装置12で閲覧・編集す
る目的に達したXML文書に変換する際には、変換に先
立ち、複数の子要素を保持する要素を子要素の数と同じ
要素に分割する前処理を行っている。これは、複数の子
要素を保持する要素を含むパスのパス名の変更を伴う変
換を行った際に、変換に曖昧さを残さないために行なわ
れる。
【0140】例えば、下記のXML文書(Doc1)を
例に取る。
【0141】 </個人情報>上記XML文書に下記変換規則を適用する
場合を考察する。
【0142】変換規則:パス「名前/姓/$1」をパス
「姓/$1」に変換する。
【0143】この変換規則を上記XML文書に適用する
と、「名前」要素が複数の子要素すなわち、「姓」要
素、「名」要素を保持するが、パス「名前/姓/A1」
に変換規則を適用した結果得られるパス「姓/$1」
は、「名前」要素を含んでいないために、変換実行後の
「名」要素に関して曖昧さが残る。
【0144】変換実施後の「名」要素に関して、例えば
下記の二例が考えられる。
【0145】 上記は、パス「名前/姓/A1」に変換規則を適用した
結果得られるパス「姓/$1」が「名前」要素を含んで
いないために、「名」要素は親要素を失って、XML文
書から削除されるべきであるという立場に立った場合に
得られるXML文書である。
【0146】 上記は、「パス「名前/姓/$1」をパス「姓/$1」
に変換する」という変換規則を、「「名前」要素の子要
素から「姓」要素を削除して、「「個人情報」要素の子
要素として同一の要素値「A2」を保持する「「姓」要
素を追加する」という変換規則であると解釈する立場に
立った場合に得られるXML文書である。
【0147】上記曖昧さを取り除くためには、構造化文
書変換装置5に対して付加的な規則を与えなければなら
ず、システム管理や、変換の処理が複雑になる。
【0148】しかしながら、上記のXML文書に複数の
子要素を保持する要素をその子要素の数の要素に分割す
る前処理を施した結果得られる以下のXML文書(Do
c2)に対して行なうと、パス名の変更を伴う変換は、
上記の曖昧さを残さない。
【0149】 上記の通り、前処理は変換に曖昧さを残さない目的で行
なわれるもので、文書構造自体が変更されるものではな
く、順方向変換、逆変換といった文書構造の変換の際に
処理し易いように文書構造の記述形式を変更するだけの
処理であり、本願発明の要旨ではない。よって、以下の
本願発明の実施形態の説明中では、前処理、後処理につ
いては、簡単な説明のみとする。
【0150】なお、構造化文書閲覧・編集装置12で閲
覧・編集しているXML文書を構造化文書配信装置1に
格納する目的に適したXML文書に変換する際に行う後
処理は、上記前処理とは逆の処理であって、XML文書
(Doc2)をXML文書(Doc1)に示した形式に
変換することである。
【0151】さて、構造化文書配信装置1の格納部2か
ら読み出され、構造化文書変換装置5へ、図7に示すよ
うな「住所録」情報のXML文書が送信されてきたとす
る。
【0152】図7に示したXML文書は、「住所録」と
いう要素の子要素に複数の「メンバ」要素があり、さら
に、各「メンバ」要素は、「名前」、「自宅」、「会
社」という子要素から構成され、さらに、「名前」とい
う要素は、「姓」「名」という子要素から構成され、
「会社」という要素は「電話番号」「住所」という子要
素から構成され、「自宅」という要素は「電話番号」
「住所」という子要素から構成され、「住所」という要
素は「郵便番号」「都道府県」「市町村」「丁目番地
号」という子要素から構成された文書構造を持つ。図7
に示す「住所録」情報には、現在のところ、2人分のメ
ンバ情報がある。
【0153】図10は、図7の「住所録」情報の文書構
造(木構造)を模式的に示したもので、ここでは、主
に、1人分のメンバ情報の文書構造を構成する構成要素
にて示している。各要素名の( )内の記述は、要素識
別子である。
【0154】構造化文書変換装置5で受信したXML文
書は、変換規則を用いて変換を行うのに先立ち、変換規
則を用いた変換に適した記述形式に書き換える前処理を
行う。ただし、前処理を行う際、元のXML文書が保持
する意味のまとまりを崩さない様にする必要がある。前
処理を行った結果のXML文書を図8に示す。
【0155】図7に示すXML文書は、複数の「メン
バ」情報からなるので、前処理として、ここでは、各
「メンバ」情報を構成する文書構造を、例えば、親子関
係にある構成要素間の関係が明確になるようにタグを重
複させた記述形式に書き換えている。が、文書構造自体
は、図7、すなわち、図10と同様である。
【0156】こうして得られた前処理済のXML文書に
対して、変換規則を適用し、文書構造の変換されたXM
L文書を得る。変換規則として、例えば図5に示すよう
に、7つの変換規則があるとする。ただし、ここで「$
+数字」は変数を表すものとする。XML文書に、図5
の変換規則を適用した結果得られる変換記録を図6に示
す。また、変換された結果得られるXML文書を、図9
に示す。図11は、図9のXML文書の文書構造を模式
的に示したものである。
【0157】この場合の、順方向変換について、図1
0、図11を参照して簡単に説明する。すなわち、図5
の変換規則R1〜R5をこの順番に適用することによ
り、図11に示すように、「メンバ」要素の子要素とし
て、「姓」「名」「会社電話番号」「住所」「自宅電話
番号」がこの順に並べられて、さらに、変換規則R6を
適用して、「自宅電話番号」要素からなる部分文書を
「会社電話番号」要素からなる部分文書の直後に移動さ
せて、最後に、変換規則R7を適用して、パス名「自宅
/住所」にて指定される部分文書を削除することによ
り、図11に示すような文書構造に変換される。
【0158】文書構造の変換されたXML文書は、構造
化文書閲覧・編集装置12で閲覧・編集する目的に適し
た記述形式に書き換える後処理が施され、その結果、図
12に示すようなXML文書が得られる。
【0159】後処理の施されたXML文書は構造化文書
閲覧・編集装置12上でユーザによって閲覧・編集さ
れ、編集された結果新たなXML文書が得られる。ここ
では、要素識別子が「member1」である「メン
バ」要素の子要素である「住所」要素の持つ値を変更す
る編集と、新たに「メンバ」情報(「姓」「名」「会社
電話番号」「自宅電話番号」「住所」要素から構成され
る情報)を2人分追加する編集を考える。編集を行った
結果得られたXML文書を図13に示す。
【0160】構造化文書閲覧・編集装置12で編集され
たXML文書は構造化文書変換装置5へ送信される。構
造化文書変換装置5は、XML文書を受信後、変換記録
を用いて逆変換を行うのに先立ち、変換記録を用いた変
換に適した記述形式へ書き換える前処理が施される。こ
の前処理は、前述した順方向変換の際の前処理と同様で
ある。
【0161】XML文書の前処理が終了したら、変換記
録管理部11で管理されている変換記録を後から順番に
1つずつ調べ、変換記録に記録されている変換に対応す
る逆変換を行う。以下、図6に示した変換記録を1つず
つ適用して逆変換を行い、XML文書が変更される様子
を図14〜図16を参照して説明する。なお、図14〜
図16では、要素識別子「member1」の情報と、
編集により追加された「メンバ」情報1人分に対する操
作のみを示しているが、実際には、要素識別子「mem
ber1」の情報と同様、要素識別子「member
2」の情報に対しても操作を行っているし、もう一つの
「メンバ」情報に対しても同様である。
【0162】(1)変換記録M7に対応する逆変換を行
う。具体的には要素識別子「member1−13」、
「member2−13」を持つ要素をそれぞれ最終要
素として保持するパスにて指定される部分文書を挿入す
る(図14参照)。この挿入する部分文書は「郵便番
号」「都道府県」「市町村」「丁目番地号」要素から構
成される「住所」要素を持つ「自宅」要素からなる部分
文書である。
【0163】(2)変換規則M6に対応する逆変換を行
う。この際、要素識別子「member1−12」、
「member2−12」をもつ要素をそれぞれ最終要
素として保持する部分文書に加えて、編集により追加さ
れた2人分の「メンバ」情報についても逆変換が行われ
る。すなわち、図14に示すように、各「メンバ」情報
中の「メンバ」要素の子要素の「自宅電話番号」要素か
らなる部分文書を、同じく「メンバ」要素の子要素であ
る「住所」要素からなる部分文書の次の位置に移動す
る。
【0164】(3)変換記録M5に対応する逆変換を行
う。この際、要素識別子「member1−12」、
「member2−12」をもつ要素を最終要素として
保持する部分文書に加えて、編集により追加された2人
分の「メンバ」情報についても逆変換が行われる。すな
わち、図15に示すように、各「メンバ」情報中の「メ
ンバ」要素の子要素の「自宅電話番号」要素からなる部
分文書を、「自宅」要素とその子要素としての「電話番
号」要素からなる部分文書に変更する。
【0165】(4)変換記録M4に対応する逆変換を行
う。この際、要素識別子「member1−6」、「m
ember2−6」をもつ要素を最終要素として保持す
る部分文書に加えて、編集により追加された2人分の
「メンバ」情報についても逆変換が行われる。すなわ
ち、図15に示すように、各「メンバ」情報中の「メン
バ」要素の子要素の「住所」要素からなる部分文書を、
「会社」要素とその子要素としての「住所」要素からな
る部分文書に変更する。
【0166】(5)変換記録M3に対応する逆変換を行
う。この際、要素識別子「member1−5」、「m
ember2−5」をもつ要素を最終要素として保持す
る部分文書に加えて、編集により追加された2人分の
「メンバ」情報についても逆変換が行われる。すなわ
ち、図16に示すように、各「メンバ」情報中の「メン
バ」要素の子要素の「会社電話番号」からなる部分文書
を、「会社」要素とその子要素としての「電話番号」要
素からなる部分文書に変更する。
【0167】(6)変換記録M2に対応する逆変換を行
う。この際、要素識別子「member1−3」「me
mber2−3」をもつ要素を最終要素として保持する
部分文書に加えて、編集により追加された2人分の「メ
ンバ」情報についても逆変換が行われる。すなわち、図
16に示すように、各「メンバ」情報中の「メンバ」要
素の子要素の「名」要素からなる部分文書を、「名前」
要素とその子要素としての「名」要素からなる部分文書
に変更する。
【0168】(7)変換記録M1に対応する逆変換を行
う。この際、要素識別子「member1−2」、「m
ember2−2」をもつ要素を最終要素として保持す
る部分文書に加えて、編集により追加された2人分の
「メンバ」情報についても逆変換が行われる。すなわ
ち、図16に示すように、各「メンバ」情報中の「メン
バ」要素の子要素の「姓」要素からなる部分文書を、
「名前」要素とその子要素としての「姓」要素からなる
部分文書に変更する。
【0169】変換記録を利用したXML文書の文書構造
の逆変換が終了したので、次に、XML文書を構造化文
書配信装置1に格納する形式に適した記述形式に書き直
す後処理を施す。この後処理は、たとえば、重複するタ
グをまとめるといったような処理を行う。
【0170】後処理の施されたXML文書が構造化文書
配信装置1に送信され、構造化文書閲覧・編集装置12
で行った編集内容を構造化文書配信装置1に格納してあ
るXML文書に反映させる。その際、本実施形態では、
XML文書全体を構造化文書変換装置5から構造化文書
配信装置1に送信するのではなく、編集のために読み出
した際のXML文書との差分のみを図17に示すような
形式の差分情報として送信する。
【0171】図17に示した差分情報では、編集により
書き換えられた要素識別子「member1」の「メン
バ」要素の子要素の「会社」要素の子要素の「住所」要
素からなる部分文書と、追加された2人分の「メンバ」
情報に対応する部分文書とから構成されている。このよ
うに、差分文書には、1つの文書中の書き換えられた部
分文書、追加された部分文書が含まれている。
【0172】図17に示した差分情報を受信した構造化
文書配信装置1は、受信内容を構造化文書配信装置1に
格納されているXML文書に反映させる。その際、差分
情報のうちユーザの編集によって新規作成された要素に
は識別子が付与されていない。そこで、識別子が付与さ
れていない要素に対しては、構造化文書配信装置1でそ
のXML文書内でユニークな識別子を付与した上で、X
ML文書に反映させる。
【0173】(第2の実施形態)上記第1の実施形態で
は、主に、本発明の主要な部分を説明するために、1つ
の構造化文書閲覧・編集装置12により、1つの構造化
文書を閲覧・編集する場合を示したが、本発明の構造化
文書管理システムは、一般的には、複数の構造化文書閲
覧・編集装置12が、それぞれ異なる構造化文書を閲覧
・編集するような利用形態で用いられるものである。そ
こで、第2の実施形態では、前述した第1の実施形態の
説明を補足する意味で、より一般的な利用形態で用いら
れる構造化文書管理システムについて説明する。
【0174】ます、第2の実施形態として、以下の3点
を新たに追加して説明を行う。
【0175】(1)変換規則管理部10は、文書構造と
構造化文書閲覧・編集装置12(の種別)対応、すなわ
ち、構造化文書の利用形態対応に1または複数の変換規
則からなる変換規則の集合を記憶・管理する。ある1つ
の構造化文書の利用形態は、クライアントが携帯電話
か、PDAかなどの端末機器の種別により異なる。一般
に、すべての端末機器で利用するデータがすべて同一の
データ形式にしたがっていることは稀である上に、すべ
ての端末で利用するデータがすべて同一であることも稀
である。さらに、携帯電話では住所録の情報のうち名前
と電話番号のみを利用するのに対して、PDAでは名前
と電話番号に加えて、住所や電子メールアドレスを利用
するといった違いもある。そこで、本実施形態のシステ
ム構成において、ある構造化文書の文書構造をどの様な
(利用形態の)文書構造に変換するかを記述した当該構
造化文書の変換規則を、当該構造化文書を実際に利用す
る(閲覧・編集など)構造化文書閲覧・編集装置12の
種別に対応させて記憶・管理する場合について説明す
る。
【0176】(2)完全に同じ1つのパス(部分的な文
書構造)を生成する可能性がある複数の変換規則をまと
めた変換規則グループを定義し、変換規則管理部10
は、変換規則の集合に、この変換規則グループが存在す
る場合には、変換規則の集合と、変換規則グループとを
対応付けて記憶・管理する。なお、各変換規則グループ
には、逆変換の際に優先的に用いる変換規則はどれであ
るかが予め設定されている。
【0177】(3)XML文書の構成要素のもつ属性と
して、要素識別子とポインタ属性を付与する。
【0178】図18は、本発明の第2の実施形態に係る
構造化文書管理システムの構成例を示したものである。
なお、図18において、図1と同一部分には同一符号を
付し、異なる部分についてのみ説明する。すなわち、構
造化文書配信装置1の格納部2には、文書構造の異なる
複数の構造化文書が格納されていて、複数の構造化文書
閲覧・編集装置12が、この格納部2に格納されている
構造化文書へアクセス可能なようになっている。
【0179】図19は、格納部2の構造化文書の格納例
を模式的に示したもので、複数の構造化文書のデータフ
ァイルが、そのそれぞれが持つ文書構造にて分類されて
格納部2に格納されている。例えば、図19に示すよう
に、異なる文書構造のそれぞれの識別情報(例えば、
「住所録」、「スケジュール」など)と、それに対応す
る構造化文書のデータファイル(例えば、「住所録A」
「住所録B」、「スケジュールA」、「スケジュール
B」などのファイル名を持つデータファイル)とが対応
付けて記憶されている。
【0180】また、ある1つの構造化文書の文書構造を
変換するために用いられる1または複数の変換規則を変
換規則の集合と呼ぶ。例えば、図5に示した7つの変換
規則を1つの変換規則の集合と呼ぶ。
【0181】構造化文書変換装置5で構造化文書の文書
構造を変換する際、一般的に、変換対象となる構造化文
書が、構造化文書配信装置1に格納されている複数のX
ML文書のうちどれであるか(どの文書構造をもつ構造
化文書であるか)、また、構造化文書を閲覧・編集する
構造化文書閲覧・編集装置12は、例えば、携帯電話、
PDA、パーソナルコンピュータなどのうちのどの種別
に対応するかによって、適用する変換規則の集合は異な
る。そこで、変換規則管理部10は、例えば、図20に
示すように、文書構造と、構造化文書を閲覧・編集する
構造化文書閲覧・編集装置12とに対応付けて、それら
に対応する変換規則の集合を予め記憶・管理するように
なっている。
【0182】例えば、図20では、各変換規則の集合
(図20では、簡単のため、変換規則の集合を、R(文
書構造の識別情報、構造化文書閲覧・編集装置の種別の
識別情報)と記述している)を、文書構造の識別情報
と、構造化文書閲覧・編集装置12の(例えば種別)の
識別情報とに対応付けて記憶するようになっている。
【0183】変換規則管理部10は、例えば、図20に
示すようなテーブルを記憶・管理し、構造化文書の文書
構造の変換を行う際には、変換対象のXML文書の文書
構造は何であるか、変換後のXML文書を閲覧・編集す
る構造化文書閲覧・編集装置12の種別が何であるかに
応じて、適切な変換規則の集合を選択するようになって
いる。
【0184】また、構造化文書閲覧・編集装置12から
構造化文書配信装置1に対し文書の読み出し要求を行う
場合には、例えば、読み出したい構造化文書のファイル
名の他に、その文書の文書構造の識別情報と要求元の構
造化文書閲覧・編集装置12の種別を表す識別情報とが
含まれていることが望ましい。
【0185】次に、変換規則グループについて説明す
る。
【0186】例えば、「住所録」という識別情報を持つ
文書構造のXML文書を「TE1」という識別情報をも
つ構造化文書閲覧・編集装置12にて閲覧・編集するた
めに、当該XML文書の文書構造を変換するめに用いる
変換規則の集合が図20から、R(住所録、TE1)で
あったとする。この変換規則の集合のうち、XML文書
中のパス名を別のパス名に変更する2つの変換規則が、
完全に同じパス名を生成する場合がある。
【0187】例えば、その2つの変換規則が、以下に示
す2つであったとする。
【0188】変換規則R201:パス「会社/住所/$
1」を「住所/$1」に変更する。
【0189】変換規則R202:パス「自宅/住所/$
1」を「住所/$1」に変更す。
【0190】また、以下に示すXML文書が構造化文書
配信装置1に格納されているとする。
【0191】 上記XML文書に上記変換規則R201、R202を適
用した結果得られるXML文書は下記の通りである。
【0192】 上記の例からも分かる通り、2つの変換規則が完全に同
じパスを生成する場合が存在する。
【0193】逆に、構造化文書閲覧・編集装置12で下
記のXML文書を新規作成した場合を考える。
【0194】 上記XML文書を上記変換規則R201、R202(よ
り厳密には、上記変換規則を適用して文書構造を変換し
た際に用いた変換記録)を用いて、逆変換を行おうとす
ると、パス「住所/A2」は、変換規則R201に対応
する逆変換を行うことも、変換規則R202に対応する
逆変換を行うことも可能であるので、2種類存在する変
換規則のうちどちらを適用するかを決定しないと逆変換
を行うことができない。そこで、完全に同じ1つのパス
を生成する可能性がある複数の変換規則をまとめた変換
規則グループを定義し、同一の変換規則グループに属す
る変換規則のうち、逆変換を行う際に優先的に利用され
るものを定める。
【0195】例えば、上記2種類の変換規則を1つの変
換規則グループにまとめて、その識別情報を、例えば
「変換規則グループG1」とし、上記2つの変換規則の
うち、変換規則R201を逆変換の際に優先的に用いる
と予め定めるものとする。また、この「変換規則グルー
プG1」は、変換規則の集合R(住所録、TE1)に存
在するものとする。この場合、変換規則管理部10は、
例えば、図21に示すようなテーブルを予め記憶する。
【0196】図21に示すように、ある変換規則の集合
に、完全に同じ1つのパスを生成する可能性がある複数
の変換規則が存在する場合は、それらを変換規則グルー
プとしてまとめ、逆変換の際に、この変換規則グループ
中のどの変換規則を優先的に用いるかという優先度を予
め設定して管理することにより、XML文書を逆変換す
る際に適用可能な変換規則が複数存在する場合であって
も、どの変換規則を適用するか自動的に決定することが
可能である。上記のXML文書を逆変換した結果は下記
の通りである。
【0197】 次に、XML文書の要素のもつ属性について説明する。
すなわち、要素属性には、識別子属性と、ポインタ属性
とがある。
【0198】識別子属性は、第1の実施形態ですでに説
明を行っているので、ここではポインタ属性について説
明を行う。ポインタ属性は複数の要素の中から特定の要
素を指し示す目的で用いられる。
【0199】例えば、要素にポインタ属性を与える場
合、その要素の開始タグに属性情報として「表示=“t
rue”」あるいは「表示=“false”」を書き込
みこととする。構造化文書変換装置5において、部分文
書要素を削除するような文書構造の変換を行う必要のあ
る構造化文書閲覧・編集装置12において、ポインタ属
性値が「true(T)」である要素からなる部分文書
は残し、「false(F)」である要素からなる部分
文書を削除するといった制御の目的で用いられる。
【0200】次に、このポインタ属性の用途について説
明する。
【0201】構造化文書配信装置1から送信されてきた
XML文書を構造化文書変換装置5において、変換規則
を用いて文書構造を変換すると、変換によって得られた
XML文書は、変換時に削除された部分文書を含んでい
ない。したがって、構造化文書配信装置1から送信され
たXML文書に含まれる情報は、文書構造の変換後のX
ML文書にも含まれる情報と、変換後のXML文書には
含まれない情報とに分類できる。
【0202】変換後のXML文書を構造化文書閲覧・編
集装置12において編集して新たなXML文書を得た
際、実際に編集されるのは、構造化文書配信装置1から
送信されたXML文書に含まれる情報のうち、変換後の
XML文書にも含まれる情報のみであるが、編集を行っ
たユーザの意図は、構造化文書配信装置1から送信され
たXML文書に含まれる情報のうち、変換後のXML文
書にも含まれる情報の変更である場合と、構造化文書配
信装置1から送信されてきたXML文書に含まれる情報
のうち現在は変換後のXML文書には含まれない情報
を、次回から構造化文書配信装置1から送信されたXM
L文書を構造化文書変換装置で変換する際には、変換後
の構造化文書にも含まれる情報にする変更である場合の
2種類が存在する。
【0203】以下、図22を参照しながら説明する。
【0204】例えば、以下に示す個人情報を表したXM
L文書を考える。
【0205】 <個人情報 id=”pi1” <名前 id=”pi2”>A1</名前> <電子メール id=”pi3” 表示=”true”>A2</電子メール> <電話番号 id=”pi4” 表示=”false”>111-1111</電話番号> </個人情報> このXML文書は、図22(a)に示すように、「名
前」「電子メール」「電話番号」要素を子要素として持
つ文書構造であり、「電子メール」要素にはポインタ属
性値「true」(以下、簡単に「T」と表す)が与え
られ、「電話番号」要素にはポインタ属性値「fals
e」(以下、簡単に「F」と表す)が与えられているの
で、「電子メール」要素からなる部分文書と「電話番
号」要素からなる部分文書のうち、後者を削除すること
が予め設定されている。
【0206】このXML文書に対し以下に示す変換規則
を用いて変換したとする。
【0207】変換規則R301:パス「電子メール(表
示=“true”)/$1」をパス「電子メール/$
1」に変更する。
【0208】変換規則R302:パス「電子メール(表
示=“false”)/$1」を削除する。
【0209】変換規則R303:パス「電話番号(表示
=“true”)/$1」をパス「電話番号/$1」に
変更する。
【0210】変換規則R304:パス「電話番号(表示
=“false”)/$1」を削除する。
【0211】ただし、ここで、変換規則の記述におい
て、要素に付与される属性情報を()内で記述した。す
ると、上記ポインタ属性値から、「電話番号」要素から
なる部分文書が削除され、図22(b)に示すような文
書構造のXML文書が得られる。このときのXML文書
は、以下の通りである。
【0212】 また、上記変換規則R301〜R304を用いて、XM
L文書の文書構造の変換を行った際に得られる変換記録
は下記の通りである。
【0213】変換記録M301:変換規則R301を要
素識別子「pi3」の要素を最終要素に持つパスに適用
した。
【0214】変換記録M302:変換規則R302を適
用しなかった。
【0215】変換記録M303:変換規則R303を適
用しなかった。
【0216】変換記録M304:変換規則R304を要
素識別子「pi4」の要素を最終要素に持つパスに適用
した。
【0217】引き続き変換後のXML文書を構造化文書
閲覧・編集装置12上で、下記のような、「電子メー
ル」要素からなる部分文書を「電話番号」要素からなる
部分文書に書き換えるような編集を行ったとする(図2
2(c)参照)。
【0218】 上記XML文書に変換記録M301〜M304を後から
順番に1つずつ適用し、逆変換を行う様子を以下に示
す。
【0219】(1)変換記録M304を参照し、変換規
則M304適用時に削除した部分文書(<電話番号 id
=”pi4” 連絡先=”false”>111-1111</電話番号>)を
元に戻す。この結果、図22(d)に示すように、順方
向変換時に削除した「電話番号」要素からなる部分文書
が復元されて(このとき、要素識別子、ポインタ属性値
もそのままの状態で復元される)、得られるXML文書
は下記の通りである。
【0220】 <個人情報 id=”pi1”> <名前 id=”pi2”>A1</名前> <電話番号>111-1111</電話番号> <電話番号 id=”pi4” 連絡先=”false”>111-1111</電話番号> </個人情報> (2)変換記録M303を参照する。ここで、順方向の
変換時には変換規則R303は適用しなかったが、上記
XML文書中には、変換規則R303対応の順方向変換
を行うことによって生成されるはずの「電話番号」要素
が存在する。しかし、「電話番号」要素には、変換規則
R303で示しているようなポインタ属性値が与えられ
ていない。そこで、ここでは、当該「電話番号」要素に
ポインタ属性(「表示する=“true”」)が追加設
定される(図22(e)参照)。ここで、順方向の変換
時には変換規則R303は適用しなかったが、逆変換時
には変換規則R303を利用している。この結果得られ
るXML文書は下記の通りである。
【0221】 <個人情報 id=”pi1”> <名前 id=”pi2”>A1</名前> <電話番号 連絡先=”true”>111-1111</電話番号> <電話番号 id=”pi4” 連絡先=”false”>111-1111</電話番号> </個人情報> (3)変換記録M302を参照する。ここでは、変換規
則R302は適用していないので、実際には何もしな
い。
【0222】(4)変換記録M301を参照し、逆変換
を行う。ただし。上記XML文書中に変換規則R301
対応の順方向変換を行うことによって生成されるはずの
「電子メール」要素が存在しないし、要素識別子「id
3」を持つ要素も存在しないので、実際には何もしな
い。
【0223】変換記録M301〜M304を全て用いて
XML文書の逆変換を行った結果は下記の通りである
(図22(e)参照)。
【0224】 <個人情報 id=”pi1”> <名前 id=”pi2”>A1</名前> <電話番号 表示=”true”>111-1111</電話番号> <電話番号 id=”pi4” 表示=”false”>111-1111</電話番号> </個人情報> 上記XML文書には、「電話番号」要素という、ポイン
タ属性を有し、しかも同じ値を持つ同じ要素名の構成要
素からなる2つの部分文書が存在する(<電話番号 表
示=”true”>111-1111</電話番号>と、<電話番号 id
=”pi4” 表示=”false”>111-1111</電話番号>)。
【0225】このように、逆変換を実行した結果、1つ
のXML文書中に、ポインタ属性をもつとともに、同じ
値を持つ同じ要素名の構成要素からなる複数の部分文書
が存在する場合には、上記XML文書は構造化文書配信
装置1に最終的に反映されるべきXML文書ではなく、
構造化文書閲覧・編集装置12上で行った編集の意図は
以下に示すXML文書を構造化文書配信装置1に最終的
に反映することであるとみなす。
【0226】 <個人情報 id=”pi1”> <名前 id=”pi2”>A1</名前> <電子メール id=”pi3” 表示=”false”>A2</電子メール> <電話番号 id=”pi4” 表示=”true”>111-1111</電話番号> </個人情報> すなわち、上記のような編集を行ったユーザからすれ
ば、順方向変換時に削除せずに残してほしい部分文書は
「電子メール」要素からなる部分文書から、「電話番
号」要素からなる部分文書に変更したいので、ポインタ
属性値を変更するような処理(これを微調整、あるいは
微調整処理と呼ぶ)を行う必要性があると判断する。す
なわち、この微調整処理を行うことによって、「電子メ
ール」要素に属性情報「表示=”true”」を与え、
「電話番号」要素に属性情報「表示=”true”」を
与える。
【0227】図23は、第2の実施形態に係る構造化文
書変換装置5の主に逆変換実行部7の処理動作を説明す
るためのフローチャートである。なお、図23におい
て、図4と異なる部分についてのみ説明する。すなわ
ち、図4のステップS35が図23では、ステップS3
5aに置き換わっている。
【0228】図23のステップS35aでは、逆変換実
行部7では、逆変換を終了した時点で、逆変換を実行し
た結果、1つにXML文書中に、ポインタ属性をもつと
ともに、同じ値を持つ同じ要素名からなる部分文書が複
数存在する場合には、上記のようなユーザの意図を察
し、ポインタ属性値を変更する微調整を行うようになっ
ている。
【0229】次に、図24に示すフローチャートを参照
して、上記微調整処理について説明する。
【0230】逆変換後の構造化文書中に、順方向変換実
行時に、パスの削除により削除された(逆変換により追
加された)部分文書と同じ部分文書(文書構造と要素名
と各要素の値が同じ部分文書)が存在するときは(ステ
ップS51)、この逆変換により追加された部分文書中
のポインタ属性値を変更する(ステップS52)。
【0231】次に、編集された部分文書を編集前の状態
に戻し、その中のポインタ属性値を変更する(ステップ
S53)。
【0232】先に示したXML文書、すなわち、下記に
示すXML文書を用いて、上記の微調整が行われる様子
を説明する。
【0233】 <個人情報 id=”pi1”> <名前 id=”pi2”>A1</名前> <電子メール id=”pi3” 表示=”true”>A2</電子メール> <電話番号 id=”pi4” 表示=”false”>111-1111</電話番号> </個人情報> 上記XML文書に対し編集を行われた後、変換記録M3
01〜M304を用いて逆変換がなされ、下記に示した
XML文書が得られることは前述のとおりである。
【0234】 <個人情報 id=”pi1”> <名前 id=”pi2”>A1</名前> <電話番号 表示=”true”>111-1111</電話番号> <電話番号 id=”pi4” 表示=”false”>111-1111</電話番号> </個人情報> さて、このXML文書において、順方向変換時に削除さ
れた(逆方向の変換時に追加された)部分文書、すなわ
ち、パス「電話番号/111−1111」に合致するも
のを探索する。探索を行った結果、これと同じ部分文書
が存在することが確認される。確認された部分文書は、 <電話番号 表示=”true”>111-1111</電話番号> である。
【0235】そこで、逆変換により追加(復元)された
方の部分文書、すなわち、 <電話番号 id=”pi4” 表示=”false”>111-1111</電
話番号> のポインタ属性を「true」に変更する。
【0236】さらに、構造化文書閲覧・編集部14で編
集された部分文書、すなわち、 <電話番号 表示=”true”>111-1111</電話番号> を編集が行われる前の元の状態、すなわち、 <電子メール id=”pi3” 表示=”true”>A2</電子メ
ール> に戻す。また、さらに、ポインタ属性の値を「fals
e」に変更する。
【0237】その結果、構造化文書配信装置1から読み
出されたときに、「電子メール」要素と「電話番号」要
素とに設定されていたポインタ属性値が書き換えられた
以下に示すようなXML文書が得られる。
【0238】 <個人情報 id=”pi1”> <名前 id=”pi2”>A1</名前> <電子メール id=”pi3” 表示=”false”>A2</電子メール> <電話番号 id=”pi4” 表示=”true”>111-1111</電話番号> </個人情報> このように、変換記録を用いた逆変換を行う際に、XM
L文書中の特定のパスに対して複数の構造化文書変換記
録が適用可能である場合には、変換規則グループにて定
義される優先順位に従った適用を行う点や、構造化文書
閲覧・編集装置12上でポインタ属性に関連する要素が
編集された場合には微調整が必要である点に注意を要す
る。
【0239】次に、具体的なXML文書に即して、XM
L文書が構造化文書変換装置5で順方向変換される様子
と逆変換される様子を説明する。
【0240】格納部2から構造化文書変換装置5へ、図
27に示すようなXML文書が送信されたとする。
【0241】構造化文書変換装置5で受信したXML文
書は、変換規則を用いて変換を行うのに先立ち、変換規
則を用いた変換に適した形式に前処理の変換を行う。た
だし、前処理を行う際、元のXML文書が保持する意味
のまとまりを崩さない範囲で変換を行う必要がある。
【0242】前処理済のXML文書に対して変換規則を
適用し、構造化文書閲覧・編集装置12で利用する目的
に適した形式のXML文書を得る。ここで用いる変換規
則の集合を図25に示す。図25に示すように、変換規
則R405とR406とは変換規則グループG5として
定義されていて、逆変換の際には、変換規則R405を
優先的に用いるように予め設定されている。なお、図2
5の変換規則の記述において、「$+数字」は変数を表
すものとする。
【0243】図27に示した「住所録」情報を表したX
ML文書は、図28に示すような2人分の「メンバ」情
報から構成された文書構造を持つ。なお、図28におい
て、各構成要素のもつ要素識別子、ポインタ属性値を
( )内に示している。
【0244】図27に示したXML文書に対し、図25
に示した変換規則の集合を適用した結果得られる変換記
録を図26に示す。
【0245】図25に示した変換規則の集合を用いた順
方向変換について簡単に説明する。図25の変換規則R
401〜R404をこの順番に適用することにより、各
「メンバ」情報中のパス名「会社/住所」にて指定され
る部分文書と、パス名「自宅/住所」にて指定される部
分文書とのうちポインタ属性値が「true」と設定さ
れている方を残して、他方は削除する。また、ポインタ
属性は削除する。そして、変換規則R405を適用し
て、「電子メール」要素からなる部分文書を「連絡先」
要素からなる部分文書に変更し、次に、変換規則R40
6を適用して、「携帯電話番号」要素からなる部分文書
を「連絡先」要素からなる部分文書に変更する。その結
果、図30に示すような文書構造のXML文書に変換さ
れる。
【0246】変換規則を用いて文書構造の変換された図
30に示したXML文書は、構造化文書閲覧・編集装置
12で閲覧・編集する目的に適した形式に後処理の変換
が施される。
【0247】後処理の施されたXML文書は構造化文書
閲覧・編集装置12上でユーザによって閲覧・編集さ
れ、編集された結果新たなXML文書が得られる。ここ
では、図31に示すように、要素識別子が「membe
r1」である要素からなる部分文書中の「住所」要素の
値「A2」を「A3」に変更する編集と、新たにメンバ
を2人追加する編集がなされたとする。
【0248】構造化文書閲覧・編集装置12で編集され
たXML文書は構造化文書変換装置5へ送信される。構
造化文書変換装置5は、XML文書を受信後、変換記録
を用いて逆変換を行うのに先立ち、変換記録を用いた変
換に適した形式に前処理の変換を行う。
【0249】XML文書の前処理が終了したら、変換記
録管理部11で管理されている図26に示したような変
換記録を後から順番に1つずつ調べ、変換記録に記録さ
れている変換に対応する逆変換を行う。以下、変換記録
を1つずつ適用した際に、XML文書が変更される様子
を図32〜図34を参照して説明する。
【0250】(1)変換記録M405に対応する逆変換
を行う。変換記録M405には、変換規則R405の適
用に関する記録と、変換規則M406の適用に関する記
録の両方が含まれており、これら2つの変換規則のう
ち、変換規則M405を優先的に用いることが定められ
ている(図25参照)。そこで、要素識別子「memb
er1−6」をもつ要素に対して変換規則M405の逆
変換を行い、次に、要素識別子「member2−6」
に対して変換規則M406の逆変換を行う(図32参
照)。
【0251】次に、「名前」要素に値「C1」を持つ
「メンバ」情報中の「連絡先」要素からなる部分文書
と、「名前」要素に値「D1」を持つ「メンバ」情報中
の「連絡先」要素からなる部分文書に対し、逆変換を行
う。逆変換を行う場合、これら部分文書は、変換規則R
405に対応する逆方向の変換、変換規則R406に対
応する逆方向の変換の両方に合致するが、これら2通り
の変換規則のうち、優先的に用いることが予め指定され
ている変換規則R405の逆変換を行う。その結果、双
方の「メンバ」情報中の「連絡先」要素からなる部分文
書は「電子メール」要素からなる部分文書に変更される
(図32参照)。
【0252】(2)変換記録M404に対応する逆変換
を行う。すなわち、図33に示すように、要素識別子
「member1−4」からなる部分文書を復元する。
【0253】(3)変換記録M403に対応する逆変換
を行う。この場合、図33に示すように、要素識別子
「member2−5」を最終要素として持つ部分文書
に加えて、「名前」要素に値「D1」を持つ「メンバ」
情報も逆変換の対象になる。その結果、要素識別子「m
ember2−4」を持つ「自宅」要素にポインタ属性
「true」が設定され、さらに、編集により新たに追
加された「メンバ」情報中の「自宅」要素にもポインタ
属性「true」が設定される。
【0254】(4)変換記録M402に対応する逆変換
を行う。すなわち、図34に示すように、要素識別子
「member2−2」からなる部分文書を復元する。
【0255】(5)変換記録M401に対応する逆変換
を行う。この場合、図34に示すように、要素識別子
「member1−3」を最終要素として持つ部分文書
に加えて、「名前」要素に値「C1」を持つ「メンバ」
情報も逆変換の対象になる。その結果、要素識別子「m
ember1−2」を持つ「会社」要素にポインタ属性
「true」が設定され、さらに、編集により新たに追
加された「メンバ」情報中の「会社」要素にもポインタ
属性「true」が設定される。
【0256】以上で、変換記録を利用したXML文書の
逆変換が終了した。
【0257】図34からもわかるように、このXML文
書には、ポインタ属性をもつとともに、同じ値をもつ同
じ要素名からなる部分文書が2つ存在する。すなわち、
図35に示すように、要素識別子「member1」を
もつ構成要素からなる「メンバ」情報中にある「会社」
要素からなる部分文書中の「住所」要素からなる部分文
書と、「自宅」要素からなる部分文書中の「住所」要素
からなる部分文書である。
【0258】そこで、最後に、XML文書の微調整を行
う。図24に従って説明を行う。まず、逆変換により追
加(復元)された部分文書、すなわち図35に示すよう
に、「自宅」要素からなる部分文書中のポインタ属性値
を「true」に変更し(ステップS52)、次に、構
造化文書閲覧・編集部14で編集された部分文書、すな
わち、「会社」要素から部分文書を編集が行われる前の
元の状態、すなわち「住所」要素の値を「A3」から
「A2」に戻す。さらに、ポインタ属性の値を「fal
se」に変更する(ステップS53)。
【0259】このように、微調整の施されたXML文書
は、次に、構造化文書配信装置1に格納する形式に適し
た形式に後処理の変換を行う。
【0260】この段階において、ユーザの編集によって
新規作成された要素には識別子が付与されていない。識
別子が付与されていない要素に対して、書き込み部4
が、一意な識別子を付与する。図36に示したXML文
書はすべての要素に識別子が付与されたXML文書であ
る。このXML文書が最終的に構造化文書配信装置に格
納されるべきものである。
【0261】以上説明しように、上記第1〜第2の実施
形態によれば、異なる文書構造の複数の構造化文書のう
ち所望の構造化文書を、文書構造毎に予め定められた構
造化文書の利用形態対応の変換規則に従って、利用形態
対応の文書構造に変換し、その際、当該構造化文書中の
変換規則を適用した部分文書とその部分文書に適用した
変換規則とを変換記録として記録しておく。そして、当
該利用形態対応の文書構造に変換された構造化文書に対
し編集を行った結果得られた構造化文書を変換記録と変
換規則とに基づき、元の文書構造に変換することによ
り、1つの文書構造の構造化文書を、その構造化文書の
利用形態対応の複数の異なる文書構造に変換したり、利
用形態対応の異なる文書構造を元の同じ1つの文書構造
へ変換したりすることが容易に行える。
【0262】本発明の実施の形態に記載した本発明の手
法は、コンピュータに実行させることのできるプログラ
ムとして、磁気ディスク(フロッピー(登録商標)ディ
スク、ハードディスクなど)、光ディスク(CD−RO
M、DVDなど)、半導体メモリなどの記録媒体に格納
して頒布することもできる。すなわち、構図化文書配信
装置1の格納部2を除く全ての構成部、構造化文書変換
装置5の全ての構成部、構造化文書閲覧、編集装置12
の全ての構成部は、コンピュータに実行させることので
きるプログラムとして実現可能である。
【0263】なお、本発明は、上記実施形態に限定され
るものではなく、実施段階ではその要旨を逸脱しない範
囲で種々に変形することが可能である。さらに、上記実
施形態には種々の段階の発明は含まれており、開示され
る複数の構成用件における適宜な組み合わせにより、種
々の発明が抽出され得る。例えば、実施形態に示される
全構成要件から幾つかの構成要件が削除されても、発明
が解決しようとする課題の欄で述べた課題(の少なくと
も1つ)が解決でき、発明の効果の欄で述べられている
効果(のなくとも1つ)が得られる場合には、この構成
要件が削除された構成が発明として抽出され得る。
【0264】
【発明の効果】以上説明したように、本発明によれば、
1つの文書構造の構造化文書を、その構造化文書の利用
形態対応の複数の異なる文書構造に変換したり、利用形
態対応の異なる文書構造を元の同じ1つの文書構造へ変
換したりすることが容易に行える。
【図面の簡単な説明】
【図1】本発明の第1の実施形態に係る構造化文書管理
システムの構成例を示した図。
【図2】構造化文書変換装置の主に変換実行部の処理動
作について説明するためのフローチャート。
【図3】構造化文書閲覧・編集装置の処理動作を説明す
るためのフローチャート。
【図4】構造化文書変換装置の主に逆変換実行部の処理
動作を説明するためのフローチャート。
【図5】変換規則の集合の一例を示した図。
【図6】変換記録の一例を示した図。
【図7】XML文書の具体例を示した図。
【図8】図7のXML文書に対し、変換規則を用いた変
換に適した記述形式に書き換える前処理を施した結果を
示した図。
【図9】変換規則を適用して文書構造の変換された結果
を示した図。
【図10】図7のXML文書の文書構造を示した図。
【図11】図9のXML文書の文書構造を示した図。
【図12】文書構造の変換されたXML文書に対し、構
造化文書閲覧・編集装置で閲覧・編集する目的に適した
記述形式に書き換える後処理を施さした結果のXML文
書を示した図。
【図13】要素識別子が「member1」である要素
の子要素である「住所」要素の持つ値を変更する編集
と、新たにメンバを2人追加する編集を行った結果得ら
れたXML文書を示した図。
【図14】図6に示した変換記録を1つずつ適用して逆
変換を行い、XML文書が変更される様子を説明するた
めの図。
【図15】図6に示した変換記録を1つずつ適用して逆
変換を行い、XML文書が変更される様子を説明するた
めの図。
【図16】図6に示した変換記録を1つずつ適用して逆
変換を行い、XML文書が変更される様子を説明するた
めの図。
【図17】構造化文書変換装置から構造化文書配信装置
に送信される差分文書の一例を示した図。
【図18】本発明の第2の実施形態に係る構造化文書管
理システムの構成例を示した図。
【図19】格納部2の構造化文書の格納例を模式的に示
した図。
【図20】変換規則の集合の記憶例を示した図。
【図21】変換規則グループの記憶例を示した図。
【図22】ポインタ属性の用途を説明するための図。
【図23】構造化文書変換装置の主に逆変換実行部の処
理動作を説明するためのフローチャート。
【図24】微調整処理について説明するためのフローチ
ャート。
【図25】変換規則の集合の記憶例を示した図。
【図26】変換記録の記憶例を示した図。
【図27】格納部に格納されているXML文書の具体例
を示した図。
【図28】図27のXML文書の文書構造を示した図。
【図29】図27に示したXML文書に対し、図25に
示した変換規則の集合を適用して文書構造を変換した結
果得られたXML文書を示した図。
【図30】図29のXML文書の文書構造を示した図。
【図31】図29のXML文書の編集内容を説明するた
めの図。
【図32】変換記録を1つずつ適用した際に、XML文
書が変更される様子を説明するための図。
【図33】変換記録を1つずつ適用した際に、XML文
書が変更される様子を説明するための図。
【図34】変換記録を1つずつ適用した際に、XML文
書が変更される様子を説明するための図。
【図35】微調整処理について説明するための図。
【図36】最終的に構造化文書配信装置に格納される、
すべての要素に識別子が付与されたXML文書の例を示
した図。
【符号の説明】
1…構造化文書配信装置 2…格納部 3…読み出し部 4…書き込み部 5…構造化文書変換装置 6…変換実行部 7…逆変換実行部 8…一時格納部 9…解析部 10…変換規則管理部 11…変換規則管理部 12…構造化文書閲覧・編集装置 13…解析部 14…閲覧・編集実行部
───────────────────────────────────────────────────── フロントページの続き (72)発明者 瀬川 淳一 神奈川県川崎市幸区小向東芝町1番地 株 式会社東芝研究開発センター内 Fターム(参考) 5B009 NA05 TA11 5B082 GA02

Claims (15)

    【特許請求の範囲】
  1. 【請求項1】 異なる文書構造の複数の構造化文書のう
    ち所望の構造化文書を、文書構造毎に予め定められた構
    造化文書の利用形態対応の変換規則に従って、前記利用
    形態対応の文書構造に変換し、その際、前記構造化文書
    中の前記変換規則を適用した領域とその領域に適用した
    変換規則とを変換記録として記録し、 前記利用形態対応の文書構造に変換された前記構造化文
    書に対し編集を行った結果得られた構造化文書を前記変
    換記録と前記変換規則とに基づき、元の文書構造に変換
    することを特徴とする文書構造変換方法。
  2. 【請求項2】 前記変換規則は、前記構造化文書に対す
    る、前記構造化文書中の少なくとも1つの構成要素から
    なる部分文書の文書構造の変更や、前記部分文書の削除
    ・移動などの操作内容を記述したものであることを特徴
    とする請求項1記載の文書構造変換方法。
  3. 【請求項3】 前記変換記録には、前記構造化文書の各
    構成要素の持つ識別子を用いて前記変換規則を適用した
    領域が示されていることを特徴とする請求項1記載の文
    書構造変換方法。
  4. 【請求項4】 前記構造化文書中の少なくとも1つの構
    成要素からなる部分文書に対し前記変換規則を適用する
    ことにより、その部分文書の文書構造が変更されたと
    き、変更前の前記部分文書中の少なくとも1つの構成要
    素の識別子が、変更後の前記部分文書中の少なくとも1
    つの構成要素の識別子として継承されることを特徴とす
    る請求項3記載の文書構造変換方法。
  5. 【請求項5】 前記利用形態対応の文書構造の構造化文
    書に対しなされた編集は、該利用形態対応の文書構造に
    適合する範囲内の編集であることを特徴とする請求項1
    記載の文書構造変換方法。
  6. 【請求項6】 前記構造化文書中の少なくとも1つの構
    成要素からなる異なる複数の部分文書のそれぞれに、該
    構造化文書の文書構造を前記利用形態対応の文書構造に
    変換する際に削除するか否かを予め設定し、この設定に
    基づき前記利用形態対応の文書構造に変換する際に削除
    されずに残された部分文書が前記編集により削除された
    部分文書で書き換えられたとき、前記削除された部分文
    書が次回から削除されないように設定し直すことを特徴
    とする請求項1記載の文書構造変換方法。
  7. 【請求項7】 前記構造化文書中の少なくとも1つの構
    成要素からなる異なる部分文書のそれぞれに対し異なる
    変換規則を適用することにより該部分文書の文書構造が
    変換されて、前記利用形態対応の文書構造に変換された
    構造化文書中に同一の文書構造の部分文書が生成される
    とき、前記利用形態対応の文書構造の構造化文書を元の
    文書構造に変換する際には、前記異なる変換規則のそれ
    ぞれに予め設定されている優先度に基づき、前記元の文
    書構造への変換のために適用する変換規則を選択するこ
    とを特徴とする請求項1記載の文書構造変換方法。
  8. 【請求項8】 異なる文書構造の複数の構造化文書を記
    憶する記憶手段と、 前記文書構造毎に予め定められた、構造化文書の利用形
    態対応の変換規則を用いて、前記記憶手段から読み出し
    た構造化文書の第1の文書構造を前記利用形態対応の第
    2の文書構造に変換する第1の変換手段と、 この変換手段での文書構造の変換の際に、前記構造化文
    書中の前記変換規則を適用した領域とその領域に適用し
    た変換規則とを変換記録として記録する記録手段と、 前記利用形態対応の第2の文書構造に変換された前記構
    造化文書に対し編集を行った結果得られた構造化文書を
    前記記憶手段に格納するために、前記変換記録と前記変
    換規則とに基づき、編集の結果得られた構造化文書の第
    2の文書構造を元の第1の文書構造に変換する第2の変
    換手段と、 を具備したことを特徴とする文書構造変換装置。
  9. 【請求項9】 前記変換規則は、前記第1の文書構造の
    構造化文書に対する、前記構造化文書中の少なくとも1
    つの構成要素からなる部分文書の文書構造の変更や、前
    記部分文書の削除・移動などの操作内容を記述したもの
    であることを特徴とする請求項8記載の文書構造変換装
    置。
  10. 【請求項10】 前記変換記録には、前記構造化文書の
    各構成要素の持つ識別子を用いて前記変換規則を適用し
    た領域が示されていることを特徴とする請求項8記載の
    文書構造変換装置。
  11. 【請求項11】 前記構造化文書中の少なくとも1つの
    構成要素からなる部分文書に対し前記変換規則を適用す
    ることにより、その部分文書の文書構造が変更されたと
    き、変更前の前記部分文書中の少なくとも1つの構成要
    素の識別子が、変更後の前記部分文書中の少なくとも1
    つの構成要素の識別子として継承されることを特徴とす
    る請求項10記載の文書構造変換装置。
  12. 【請求項12】 前記第2の文書構造の構造化文書に対
    しなされた編集は、前記第2の文書構造に適合する範囲
    内の編集であることを特徴とする請求項8記載の文書構
    造変換装置。
  13. 【請求項13】 前記構造化文書中の少なくとも1つの
    構成要素からなる異なる複数の部分文書のそれぞれに、
    該構造化文書の第1の文書構造を前記第2の文書構造に
    変換する際に削除するか否かを予め設定し、この設定に
    基づき前記第2の文書構造に変換する際に削除されずに
    残された部分文書が前記編集により削除された部分文書
    で書き換えられたとき、前記削除された部分文書が次回
    から削除されないように設定し直すことを特徴とする請
    求項8記載の文書構造変換装置。
  14. 【請求項14】 前記構造化文書中の少なくとも1つの
    構成要素からなる異なる部分文書のそれぞれに対し異な
    る変換規則を適用することにより該部分文書の文書構造
    が変換されて、前記第2の文書構造に変換された構造化
    文書中に同一の文書構造の部分文書が生成されるとき、
    前記第2の文書構造の構造化文書を元の第1の文書構造
    に変換する際には、前記異なる変換規則のそれぞれに予
    め設定されている優先度に基づき、前記第1の文書構造
    への変換のために適用する変換規則を選択することを特
    徴とする請求項8記載の文書構造変換装置。
  15. 【請求項15】 異なる文書構造の複数の構造化文書の
    うち所望の構造化文書を、文書構造毎に予め定められた
    構造化文書の利用形態対応の変換規則に従って、前記利
    用形態対応の文書構造に変換するための処理と、この文
    書構造の変換の際に、前記構造化文書中の前記変換規則
    を適用した領域とその領域に適用した変換規則とを変換
    記録として記録するための処理と、前記利用形態対応の
    文書構造に変換された前記構造化文書に対し編集を行っ
    た結果得られた構造化文書を、前記変換記録と前記変換
    規則とに基づき、元の文書構造に変換するための処理
    と、をコンピュータに実行させるためのプログラム。
JP2001151603A 2001-05-21 2001-05-21 文書構造変換方法および文書構造変換装置およびプログラム Expired - Lifetime JP3692054B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2001151603A JP3692054B2 (ja) 2001-05-21 2001-05-21 文書構造変換方法および文書構造変換装置およびプログラム
US10/151,164 US7073120B2 (en) 2001-05-21 2002-05-21 Structured document transformation method, structured document transformation apparatus, and program product
US11/387,849 US7228498B2 (en) 2001-05-21 2006-03-24 Structured document transformation apparatus for managing document information transfers between a server and a client

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001151603A JP3692054B2 (ja) 2001-05-21 2001-05-21 文書構造変換方法および文書構造変換装置およびプログラム

Publications (2)

Publication Number Publication Date
JP2002342316A true JP2002342316A (ja) 2002-11-29
JP3692054B2 JP3692054B2 (ja) 2005-09-07

Family

ID=18996414

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001151603A Expired - Lifetime JP3692054B2 (ja) 2001-05-21 2001-05-21 文書構造変換方法および文書構造変換装置およびプログラム

Country Status (2)

Country Link
US (2) US7073120B2 (ja)
JP (1) JP3692054B2 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003248679A (ja) * 2002-02-22 2003-09-05 Toshiba Corp 構造化文書編集システム、構造化文書編集方法及びプログラム
JP2007048215A (ja) * 2005-08-12 2007-02-22 Canon Inc 通信装置、中継装置及び当該装置におけるメッセージ送受信方法
US7516396B2 (en) 2004-03-29 2009-04-07 Nec Corporation System, method, and program for structured document derivation
US7530017B2 (en) 2003-09-24 2009-05-05 Ntt Docomo, Inc. Document transformation system
US7765472B2 (en) 2003-09-30 2010-07-27 Canon Kabushiki Kaisha Method and device for editing SVG type digital graphical documents in particular from a browser
JP2013025631A (ja) * 2011-07-22 2013-02-04 Internatl Business Mach Corp <Ibm> 変換規則生成支援装置、方法、およびプログラム
US8413041B2 (en) 2002-06-26 2013-04-02 Samsung Electronics Co., Ltd. Apparatus and method for parsing XML document by using external XML validator

Families Citing this family (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7042888B2 (en) * 2001-09-24 2006-05-09 Ericsson Inc. System and method for processing packets
US7428544B1 (en) 2002-06-10 2008-09-23 Microsoft Corporation Systems and methods for mapping e-mail records between a client and server that use disparate storage formats
US7031973B2 (en) * 2002-06-10 2006-04-18 Microsoft Corporation Accounting for references between a client and server that use disparate e-mail storage formats
US20030236842A1 (en) * 2002-06-21 2003-12-25 Krishnamurti Natarajan E-mail address system and method for use between disparate client/server environments
JP2004062600A (ja) * 2002-07-30 2004-02-26 Fujitsu Ltd 構造型文書の変換方法、復元方法、変換及び復元方法及びプログラム
US8051188B2 (en) 2002-09-05 2011-11-01 Canon Kabushiki Kaisha Method of proposing a service via a description document of such a service
FR2852177B1 (fr) * 2003-03-03 2005-06-24 Canon Kk Procede de proposition d'un service fourni par un ordinateur serveur dans un reseau de communication
US20040177315A1 (en) * 2003-03-03 2004-09-09 International Business Machines Corporation Structured document bounding language
GB0307714D0 (en) * 2003-04-03 2003-05-07 Ibm System and method for information collation
US7409673B2 (en) * 2003-06-24 2008-08-05 Academia Sinica XML document editor
US7302678B2 (en) * 2003-09-10 2007-11-27 Sap Aktiengesellschaft Symmetric transformation processing system
US20050193326A1 (en) * 2004-02-26 2005-09-01 International Business Machines Corporation Tool for configuring available functions of an application
US20050223316A1 (en) * 2004-04-01 2005-10-06 Sun Microsystems, Inc. Compiled document type definition verifier
WO2005098658A1 (ja) * 2004-04-08 2005-10-20 Justsystems Corporation 文書処理装置及び文書処理方法
WO2005098660A1 (ja) * 2004-04-08 2005-10-20 Justsystems Corporation 文書処理装置及び文書処理方法
AU2005248691A1 (en) * 2004-05-25 2005-12-08 Samsung Electronics Co., Ltd. Method of reproducing multimedia data using musicphotovideo profiles and reproducing apparatus using the method
US7536634B2 (en) * 2005-06-13 2009-05-19 Silver Creek Systems, Inc. Frame-slot architecture for data conversion
JP2006185408A (ja) * 2004-11-30 2006-07-13 Matsushita Electric Ind Co Ltd データベース構築装置及びデータベース検索装置及びデータベース装置
US20060168511A1 (en) * 2005-01-21 2006-07-27 International Business Machines Corporation Method of passing information from a preprocessor to a parser
US7496612B2 (en) * 2005-07-25 2009-02-24 Microsoft Corporation Prevention of data corruption caused by XML normalization
JP4899476B2 (ja) * 2005-12-28 2012-03-21 富士通株式会社 分割プログラム、連結プログラム、情報処理方法
US20070168857A1 (en) * 2006-01-17 2007-07-19 Oracle International Corporation Transformation of Source Data in a Source Markup Language to Target Data in a Target Markup Language
US8286075B2 (en) * 2006-03-07 2012-10-09 Oracle International Corporation Reducing resource requirements when transforming source data in a source markup language to target data in a target markup language using transformation rules
US8423226B2 (en) 2006-06-14 2013-04-16 Service Solutions U.S. Llc Dynamic decision sequencing method and apparatus for optimizing a diagnostic test plan
US8762165B2 (en) 2006-06-14 2014-06-24 Bosch Automotive Service Solutions Llc Optimizing test procedures for a subject under test
US9081883B2 (en) 2006-06-14 2015-07-14 Bosch Automotive Service Solutions Inc. Dynamic decision sequencing method and apparatus for optimizing a diagnostic test plan
US8428813B2 (en) 2006-06-14 2013-04-23 Service Solutions Us Llc Dynamic decision sequencing method and apparatus for optimizing a diagnostic test plan
US7643916B2 (en) 2006-06-14 2010-01-05 Spx Corporation Vehicle state tracking method and apparatus for diagnostic testing
US20080028302A1 (en) * 2006-07-31 2008-01-31 Steffen Meschkat Method and apparatus for incrementally updating a web page
FR2906382B1 (fr) * 2006-09-25 2008-11-14 Canon Kk Procedes et dispositifs pour optimiser le traitement xml
US20080320001A1 (en) * 2007-06-21 2008-12-25 Sreedhar Gaddam Collaboration System and Method for Use of Same
US8909635B2 (en) * 2007-09-21 2014-12-09 International Business Machines Corporation Profiling content creation and retrieval in a content management system
US8566338B2 (en) * 2007-09-21 2013-10-22 International Business Machines Corporation Automatically making changes in a document in a content management system based on a change by a user to other content in the document
US8739022B2 (en) * 2007-09-27 2014-05-27 The Research Foundation For The State University Of New York Parallel approach to XML parsing
US8239094B2 (en) 2008-04-23 2012-08-07 Spx Corporation Test requirement list for diagnostic tests
US8280964B2 (en) * 2008-06-04 2012-10-02 Accenture Global Services Limited System and method for communicating an air travel message
US8782514B1 (en) * 2008-12-12 2014-07-15 The Research Foundation For The State University Of New York Parallel XML parsing using meta-DFAs
US8275779B2 (en) * 2009-01-22 2012-09-25 International Business Machines Corporation Data tranformations for applications supporting different data formats
US8856154B2 (en) * 2009-01-22 2014-10-07 International Business Machines Corporation Data tranformations between a source application and service-oriented target applications supporting different data formats
US8301647B2 (en) * 2009-01-22 2012-10-30 International Business Machines Corporation Data tranformations for a source application and multiple target applications supporting different data formats
JP5478936B2 (ja) * 2009-05-13 2014-04-23 キヤノン株式会社 情報処理装置、情報処理方法
US8648700B2 (en) 2009-06-23 2014-02-11 Bosch Automotive Service Solutions Llc Alerts issued upon component detection failure
US20110252312A1 (en) 2010-04-12 2011-10-13 Google Inc. Real-Time Collaboration in a Hosted Word Processor
CN102934105B (zh) 2010-04-12 2016-10-05 谷歌公司 在驻留的文字处理器中的协作光标
US8996985B1 (en) 2011-03-16 2015-03-31 Google Inc. Online document processing service for displaying comments
US9336137B2 (en) 2011-09-02 2016-05-10 Google Inc. System and method for performing data management in a collaborative development environment
US10430388B1 (en) 2011-10-17 2019-10-01 Google Llc Systems and methods for incremental loading of collaboratively generated presentations
US8471871B1 (en) 2011-10-17 2013-06-25 Google Inc. Authoritative text size measuring
US8266245B1 (en) 2011-10-17 2012-09-11 Google Inc. Systems and methods for incremental loading of collaboratively generated presentations
US8397153B1 (en) 2011-10-17 2013-03-12 Google Inc. Systems and methods for rich presentation overlays
US20150199308A1 (en) 2011-10-17 2015-07-16 Google Inc. Systems and methods for controlling the display of online documents
US8434002B1 (en) 2011-10-17 2013-04-30 Google Inc. Systems and methods for collaborative editing of elements in a presentation document
US8812946B1 (en) 2011-10-17 2014-08-19 Google Inc. Systems and methods for rendering documents
US8738706B1 (en) 2011-11-16 2014-05-27 Google Inc. Systems and methods for collaborative document editing
US9626368B2 (en) * 2012-01-27 2017-04-18 International Business Machines Corporation Document merge based on knowledge of document schema
US9367522B2 (en) 2012-04-13 2016-06-14 Google Inc. Time-based presentation editing
US9141596B2 (en) * 2012-05-02 2015-09-22 Google Inc. System and method for processing markup language templates from partial input data
US9529785B2 (en) 2012-11-27 2016-12-27 Google Inc. Detecting relationships between edits and acting on a subset of edits
US10956667B2 (en) 2013-01-07 2021-03-23 Google Llc Operational transformations proxy for thin clients
US9462037B2 (en) 2013-01-07 2016-10-04 Google Inc. Dynamically sizing chunks in a partially loaded spreadsheet model
EP3008588A4 (en) * 2013-06-11 2017-01-18 Smart Research Limited Method and computer program for generating or manipulating source code
US9971752B2 (en) 2013-08-19 2018-05-15 Google Llc Systems and methods for resolving privileged edits within suggested edits
US9348803B2 (en) 2013-10-22 2016-05-24 Google Inc. Systems and methods for providing just-in-time preview of suggestion resolutions
US10482165B2 (en) 2015-03-18 2019-11-19 Microsoft Technology Licensing, Llc Declarative cascade reordering for styles

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10232868A (ja) 1997-02-20 1998-09-02 Fuji Xerox Co Ltd 文書処理装置
US6574644B2 (en) * 1997-11-26 2003-06-03 Siemens Corporate Research, Inc Automatic capturing of hyperlink specifications for multimedia documents
CA2223953A1 (en) * 1997-12-05 1999-06-05 Colin Gajraj Transformation of marked up documents
JP2000339307A (ja) 1999-05-31 2000-12-08 Dainippon Screen Mfg Co Ltd 組版装置
US20020032706A1 (en) * 1999-12-23 2002-03-14 Jesse Perla Method and system for building internet-based applications
US6687873B1 (en) * 2000-03-09 2004-02-03 Electronic Data Systems Corporation Method and system for reporting XML data from a legacy computer system
EP1139231A1 (en) * 2000-03-31 2001-10-04 Fujitsu Limited Document processing apparatus and method
US20020016801A1 (en) * 2000-08-01 2002-02-07 Steven Reiley Adaptive profile-based mobile document integration
US6795868B1 (en) * 2000-08-31 2004-09-21 Data Junction Corp. System and method for event-driven data transformation
JP4657432B2 (ja) * 2000-09-28 2011-03-23 富士通株式会社 階層構造の構造化文書を変換する装置
US6684222B1 (en) * 2000-11-09 2004-01-27 Accenture Llp Method and system for translating data associated with a relational database

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003248679A (ja) * 2002-02-22 2003-09-05 Toshiba Corp 構造化文書編集システム、構造化文書編集方法及びプログラム
US8413041B2 (en) 2002-06-26 2013-04-02 Samsung Electronics Co., Ltd. Apparatus and method for parsing XML document by using external XML validator
US7530017B2 (en) 2003-09-24 2009-05-05 Ntt Docomo, Inc. Document transformation system
US7765472B2 (en) 2003-09-30 2010-07-27 Canon Kabushiki Kaisha Method and device for editing SVG type digital graphical documents in particular from a browser
US7516396B2 (en) 2004-03-29 2009-04-07 Nec Corporation System, method, and program for structured document derivation
JP2007048215A (ja) * 2005-08-12 2007-02-22 Canon Inc 通信装置、中継装置及び当該装置におけるメッセージ送受信方法
JP4701040B2 (ja) * 2005-08-12 2011-06-15 キヤノン株式会社 通信装置及び当該装置におけるメッセージ送信方法
JP2013025631A (ja) * 2011-07-22 2013-02-04 Internatl Business Mach Corp <Ibm> 変換規則生成支援装置、方法、およびプログラム
US9396175B2 (en) 2011-07-22 2016-07-19 International Business Machines Corporation Supporting generation of transformation rule
US9400771B2 (en) 2011-07-22 2016-07-26 International Business Machines Corporation Supporting generation of transformation rule

Also Published As

Publication number Publication date
JP3692054B2 (ja) 2005-09-07
US20060168519A1 (en) 2006-07-27
US20030084078A1 (en) 2003-05-01
US7073120B2 (en) 2006-07-04
US7228498B2 (en) 2007-06-05

Similar Documents

Publication Publication Date Title
JP2002342316A (ja) 文書構造変換方法および文書構造変換装置およびプログラム
KR101310988B1 (ko) 애플리케이션들 사이의 xml 데이터의 실시간 동기화
KR101608099B1 (ko) 문서의 동시적인 협업적 검토
US7140536B2 (en) Method and system for highlighting modified content in a shared document
KR101183426B1 (ko) 웹 기반 데이터 폼
KR100414406B1 (ko) 문서 버전 관리가 가능한 워크플로우 시스템 및 이를이용한 문서 버전 관리 방법
JP2912840B2 (ja) ファイル管理システム
CN106886375A (zh) 存储数据的方法和装置
RU2417420C2 (ru) Программируемость для хранилища xml данных для документов
JPH07262072A (ja) ファイル管理装置
US20190147029A1 (en) Method and system for generating conversational user interface
WO2015112131A1 (en) Multistage customizing of web-based application in a browser independent of platform and operating system
JPH05197734A (ja) データ処理システム
JP3673189B2 (ja) 書き込み制御方法および構造化文書管理装置および構造化文書編集装置およびプログラム
JP5063877B2 (ja) 情報処理装置およびコンピュータプログラム
JP2000155731A (ja) 文書更新通知装置及び記憶媒体
JPS63273961A (ja) 複数バ−ジヨン管理システム
JP2003288365A (ja) 付加情報管理方法及び付加情報管理システム
CN115688694A (zh) 文档处理方法、装置、设备及存储介质
CN115688691A (zh) 文档处理方法、装置、设备及存储介质
CN115688692A (zh) 文档处理方法、装置、设备及存储介质
JP3798580B2 (ja) データ管理システム及びこのデータ管理システムを実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体
KR20150040960A (ko) 여행자 프로파일의 발행을 위한 동적 및 계층적 제너릭 데이터 맵핑
JP2012069054A (ja) 構造化文書処理装置及び構造化文書処理プログラム
Chan An entity relationship menu system for microcomputers

Legal Events

Date Code Title Description
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: 20050614

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050617

R151 Written notification of patent or utility model registration

Ref document number: 3692054

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

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

Free format text: PAYMENT UNTIL: 20090624

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090624

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100624

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100624

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110624

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120624

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120624

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20130624

Year of fee payment: 8

EXPY Cancellation because of completion of term