(57)【要約】【課題】１つのデータフォーマットを他のデータフォーマットに変換してデータを編集した後、その編集内容を元のデータフォーマットに確実に変換できる技術を提供する。【解決手段】文書データ編集システムであり、第１形式の文書データ４（６Ｂ）を第２形式の文書データ６Ａに変換する手段５と、上記第２形式の文書データ６Ａを編集して更新済み文書データ８Ａを生成する手段と、上記第１形式の文書データ４（６Ｂ）を第２形式に変換した更新前文書データ６Ｃと上記更新済み文書データ８Ａとから差分情報９を生成する差分情報生成手段１２と、上記第１形式の文書データ６Ｂと上記差分情報とから第１形式の更新済み文書データを生成する手段とを備える。【選択図】  図１
2005010841.tif 000002
【特許請求の範囲】
【請求項１】
第１形式の文書データを第２形式の文書データに変換する手段と、
前記第２形式の文書データを編集して更新済み文書データを生成する手段と、
前記第１形式の文書データを第２形式に変換した更新前文書データと前記更新済み文書データとから差分情報を生成する差分情報生成手段と、
前記第１形式の文書データと前記差分情報とから第１形式の更新済み文書データを生成する手段とを備える文書データ編集システム。
【請求項２】
前記第１形式の文書データと第２形式の文書データとを関連づけて記録する記録手段をさらに備える請求項１に記載の文書データ編集システム。
【請求項３】
前記第２形式は、ベクタフォーマットである請求項１または２に記載の文書データ編集システム。
【請求項４】
前記第２形式は、コメントを挿入可能な形式であり、前記記録手段は、前記第１形式の文書データを前記第２形式におけるコメントデータとして記録する請求項１から３のいずれかに記載の文書データ編集システム。
【請求項５】
第１形式の文書データを第２形式に変換した更新前文書データと前記更新前文書データを編集した更新済み文書データとから差分情報を生成する差分情報生成手段と、
前記第１形式の文書データと前記差分情報とから第１形式の更新済み文書データを生成する手段とを備える文書データ変換装置。
【請求項６】
コンピュータに、第１形式の文書データを第２形式に変換した更新前文書データと前記更新前文書データを編集した更新済み文書データとから差分情報を生成するステップと、
前記第１形式の文書データと前記差分情報とから第１形式の更新済み文書データを生成するステップとを実行させるプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、文書データ、画像データ等のデータ処理に関するものである。
【０００２】
【従来の技術】
今日、様々な文書データ、あるいは、画像データ等のフォーマットが提案され、各フォーマットのデータに対する編集プログラム、加工プログラム等が提供されている。また、１つのフォーマットから他のフォーマットへの変換プログラム等も提案されている（例えば、特許文献１参照。）。
【０００３】
しかし、一般的には、複数のデータフォーマット間で完全な対応関係が保証される訳ではない。したがって、１つのフォーマットから他のフォーマットに変換した場合、一部の情報が未変換のまま漏れてしまう場合がある。
【０００４】
さらに、このようなフォーマットのデータを編集、加工するプログラムについては、多種多様なものが提供される。一方、使いなれたもの、あるいは、操作性のよいもの等、各プログラムに対するユーザの指向がある。したがって、ユーザが各種のデータフォーマットを１つのデータフォーマットに変換した上で、特定の編集プログラムを利用してそのデータを編集し、元のデータフォーマットに戻したいという要望は多い。
【０００５】
しかし、上述のように、フォーマット変換時の確実性に問題があるため、ユーザは、安易にデータフォーマットの変換と逆変換とを実行することはできなかった。
【０００６】
【特許文献１】
特開２００３−６００９号公報
【０００７】
【発明が解決しようとする課題】
本発明はこのような従来の技術の問題点に鑑みてなされたものである。すなわち、本発明の課題は、１つのデータフォーマットを他のデータフォーマットに変換してデータを編集した後、その編集内容を元のデータフォーマットに確実に変換できる技術を提供することにある。
【０００８】
【課題を解決するための手段】
本発明は上記課題を解決するために、以下の手段を採用した。すなわち、本発明は、文書データ編集システムであり、
第１形式の文書データを第２形式の文書データに変換する手段と、
上記第２形式の文書データを編集して更新済み文書データを生成する手段と、
上記第１形式の文書データを第２形式に変換した更新前文書データと上記更新済み文書データとから差分情報を生成する差分情報生成手段と、
上記第１形式の文書データと上記差分情報とから第１形式の更新済み文書データを生成する手段とを備えるものである。
【０００９】
この文書データ編集システムは、上記第１形式の文書データを第２形式に変換した更新前文書データと上記更新済み文書データとから差分情報を生成する。そして、この差分情報に基づき、上記第１形式の文書データを変更することで、第１形式の更新済み文書データを生成する。したがって、互いに対応関係のないデータの存在等、第１形式と第２形式との間にデータの非互換性がある場合でも、第１形式と第２形式との間でデータ形式を変換することによって生じるデータの消滅等を防止して、第１形式の更新済み文書データを生成することができる。
【００１０】
好ましくは、上記文書データ編集システムは、上記第１形式の文書データと第２形式の文書データとを関連づけて記録する記録手段をさらに備えるものでもよい。
【００１１】
好ましくは、上記第２形式は、ベクタフォーマットが望ましい。
【００１２】
好ましくは、上記第２形式は、コメントを挿入可能な形式であり、上記記録手段は、上記第１形式の文書データを上記第２形式におけるコメントデータとして記録するものが望ましい。
【００１３】
また、本発明は、文書データ変換装置であり、第１形式の文書データを第２形式に変換した更新前文書データと上記更新前文書データを編集した更新済み文書データとから差分情報を生成する差分情報生成手段と、
上記第１形式の文書データと上記差分情報とから第１形式の更新済み文書データを生成する手段とを備えてもよい。
【００１４】
また、本発明は、上記いずれかの処理をコンピュータに実行させる方法であってもよい。また、本発明は、以上のいずれかの機能をコンピュータに実現させるプログラムであってもよい。また、本発明は、そのようなプログラムを記録したコンピュータが読み取り可能な記録媒体でもよい。
【００１５】
ここで、コンピュータが読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータから読み取ることができる記録媒体をいう。このような記録媒体のうちコンピュータから取り外し可能なものとしては、例えばフレキシブルディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ／Ｗ、ＤＶＤ、ＤＡＴ、８ｍｍテープ、メモリカード等がある。
【００１６】
また、コンピュータに固定された記録媒体としてハードディスクやＲＯＭ（リードオンリーメモリ）等がある。
【００１７】
【発明の実施の形態】
以下、本発明の実施の形態を図１から図５の図面に基づいて説明する。図１は、本発明の一実施の形態に係る情報システムのシステム構成図であり、図２は、図１に示した復元サーバ９の詳細を示すブロック図であり、図３は、本情報システムの処理対象となる文書データの例であり、図４は、図２に示した変換済みデータ６のデータ例であり、図５は、差分データ１３のデータ例である。
【００１８】
＜システム構成＞
図１に、本情報システムのシステム構成図を示す。本情報システムは、各種のデータフォーマットをＳＶＧフォーマットに変換し、ＳＶＧフォーマットにおいてデータを編集する機能を提供する。図１のように、この情報システムは、ＳＶＧ変換サーバ５、ＳＶＧ編集部７、および復元サーバ９を備えている。
【００１９】
ＳＶＧ変換サーバ５は、元データ４をＳＶＧ（Ｓｃａｌａｂｌｅ  Ｖｅｃｔｏｒ  Ｇｒａｐｈｉｃｓ）フォーマットのデータ（以下、ＳＶＧデータ６Ａという）に変換する。この変換は、ＳＶＧ変換サーバ５上の変換プログラムにより実行される。ＳＶＧ変換サーバ５の構成は、一般的なコンピュータであるので、その説明を省略する。
【００２０】
元データ４は、各種の文書データ、画像データ等のフォーマットデータである。本実施形態では、この元データ４として、文字、図形、画像等を含むデータを想定する。また、元データ４に含まれる図形は、頂点列データを含むベクタフォーマットで記述されているものとする。元データ４は、バイナリデータでもよいし、テキストデータでもよい。
【００２１】
また、ＳＶＧ変換サーバ５は、ＳＶＧデータ６Ａを作成するときに、元データ４の複製（以下、元データ６Ｂという）をＳＶＧデータ６Ａに付加する。元データ６Ｂは、ＳＶＧフォーマットに規定されたコメントデータの形式でＳＶＧデータ６Ａに付加される。
【００２２】
したがって、元データ４がバイナリデータの場合には、一旦テキスト形式に変換され、コメントデータとしてＳＶＧデータ６Ａに付加される。この場合、元データ６Ｂは、元データ４の単なる複製ではなく、元データ４をテキスト形式に変換したものとなる。
【００２３】
このようなバイナリデータからテキストデータへの変換としては、例えば、Ｂａｓｅ６４エンコーディング等の方式を使用することができる。ただし、本発明の実施は、Ｂａｓｅ６４エンコーディングに限定されものではなく、他の方法を用いてもよい。以下、ＳＶＧデータ６Ａと元データ６Ｂとを併せて変換済みデータ６と呼ぶ。
【００２４】
ＳＶＧ編集部７は、ＳＶＧデータの編集プログラムを実行し、利用者にＳＶＧデータの編集機能を提供する。例えば、図１に示した利用者２は、このＳＶＧデータの編集プログラムを操作し、ＳＶＧデータを編集し、あるいは、加工する。ＳＶＧ編集部７は、例えば、一般的なパーソナルコンピュータである。
【００２５】
ＳＶＧ編集部７が変換済みデータ６を編集する場合、ＳＶＧデータ６Ａが編集対象になる。元データ６Ｂの部分は、ＳＶＧフォーマットのコメントデータで記述されているため、ＳＶＧデータの編集プログラムの処理対象外だからである。このような操作により、編集済みのＳＶＧデータ８Ａと元データ６Ｂとを含む編集済みデータ８が出力される。
【００２６】
なお、ＳＶＧ編集部７を利用する利用者２は、例えば、テキストエディタで変換済みデータ６を編集してもよい。ＳＶＧフォーマット自体は、テキスト形式で記述されるからである。
【００２７】
復元サーバ９は、編集済みデータ８（編集済みのＳＶＧデータ８Ａと元データ６Ｂ）から元データ４の形式で復元データ１０を作成する。この処理は、復元サーバ９上のコンピュータプログラムにより実行される。復元サーバ９の構成についても、一般的なコンピュータであるので、その説明を省略する。
【００２８】
ＳＶＧ変換サーバ５、復元サーバ９における変換プログラムの起動は、ユーザ（図１に示した利用者１等）が実行してもよい。また、ＳＶＧ編集部７における編集プログラムから上記変換プログラムが起動されるようにしてもよい。
【００２９】
＜復元サーバの処理＞
図２に、復元サーバ９の詳細ブロック図を示す。上述のように、復元サーバ９は、編集済みＳＶＧデータ８Ａと元データ６Ｂとを含む編集済みデータ８を復元データ１０（元データ４のデータフォーマット）に変換する。
【００３０】
図２に示したように、復元サーバ９は、機能ブロックとして、ＳＶＧ変換部１１、ＳＶＧデータ比較部１２および差分反映処理部１４を有する。これらの各機能ブロックは、復元サーバ９上のコンピュータプログラムにより実現される。
【００３１】
ＳＶＧ変換部１１は、元データ６Ｂを読み出し、ＳＶＧデータ６Ｃに変換する。ＳＶＧ変換部１１の機能は、ＳＶＧ変換サーバ５の機能と同様である。ただし、元データ４がバイナリデータであって、元データ６Ｂがバイナリデータからテキスト形式に変換（エンコード）されたものである場合、一旦、元のバイナリデータに逆変換（デコード）した上で、ＳＶＧデータ６Ｃに変換すればよい。
【００３２】
ＳＶＧデータ比較部１２は、編集済みのＳＶＧデータ８Ａと元データ６Ｂに対応するＳＶＧデータ６Ｃとを比較し、その差分を抽出する。この差分は、差分データ１３として出力される。差分データ１３は、ＳＶＧデータ６Ｃに対して、追加、削除、あるいは、変更されたデータ要素を特定する情報を含む。
【００３３】
この情報は、例えば、追加、削除、あるいは、変更等操作の種別を特定する情報と、頂点列データ等のデータ要素との組み合わせを含む。これにより、ＳＶＧデータ６Ｃ中のどの位置に、新たなデータ要素が追加されたか、元データ６Ｂ中のどのデータ要素が削除または変更されたか等が記述される。ここで、データ要素とは、線分、折れ線、多角形、曲線（近似曲線）、塗りつぶしパターン、文字列、フォントの種別、画像データ部分等、文書データを構成する要素をいう。
【００３４】
差分反映処理部１４は、差分データ１３を読み出し、その差分の内容にしたがい、元データ６Ｂを更新する。例えば、差分データ中に、特定のデータ要素が追加された記述がある場合、対応するデータ要素を元データ６Ｂ中に生成する。
【００３５】
また、差分反映処理部１４は、差分データ中に、特定のデータ要素が削除された記述がある場合、対応するデータ要素を元データ６Ｂ中で検索し、そのデータ要素を削除する。データ要素は、例えば、線分、折れ線、多角形、曲線（近似曲線）、塗りつぶしパターン、文字列、フォントの種別、画像データ部分等の種別、および、その配置位置（矩形や多角形の頂点列等の座標値）で認識される。
【００３６】
同様に、差分反映処理部１４は、差分データ中に、特定のデータ要素が変更された記述がある場合、対応するデータ要素を元データ６Ｂ中で検索し、そのデータ要素を変更する。例えば、頂点列（ｘ１、ｙ１、ｘ２、ｙ２）で示される線分が頂点列（ｘ３、ｙ３、ｘ４、ｙ４）に変更されたとの記述がある場合、頂点列（ｘ１、ｙ１、ｘ２、ｙ２）を元データ６Ｂ中で検索し、頂点列（ｘ３、ｙ３、ｘ４、ｙ４）に置き換える。
【００３７】
なお、元データ４がバイナリデータであって、元データ６Ｂがバイナリデータからテキスト形式に変換（エンコード）されたものである場合、差分反映処理部１４は、一旦、元データ６Ｂを元のバイナリデータに逆変換（デコード）した上で、上記変更処理を実行すればよい。
【００３８】
＜データ例＞
図３に、本情報システムの処理対象となる文書データの例を示す。この文書データは、矩形、円、折れ線、テキスト等の要素を含んでいる。なお、本発明の実施は、このような文書データの要素に限定されものではなく、例えば、多角形、曲線等が含まれても構わない。
【００３９】
図４に、図３の文書データを元データとして作成された変換済みデータ６のデータ例を示す（「途中省略」と記載された箇所で一部のデータが省略されている）。図４のデータは、一般的なＳＶＧフォーマットにしたがって記述されておいる。
【００４０】
例えば、Ｌ１およびＬ２の符号で示される部分は、ヘッダ情報に相当する。また、Ｌ３以降の部分に文書データの各要素が定義されている。例えば、Ｌ４は、矩形、Ｌ５はパスデータと呼ぶ頂点列データ、そして、Ｌ６は、テキストデータ（図３の「ｔｅｘｔです」の部分）に対応する。
【００４１】
また、図４のＬ７の部分は、”＜！”で開始、”／＞”で終了する。この記述形式は、ＳＶＧフォーマットのコメントデータに相当し、例えば、表示プログラム（ビューワともいう）による表示内容には含まれない。本情報システムでは、コメントデータとして、ＳＶＧに変換前の元データのコピーを記録する。
【００４２】
図５に、差分データ１３のデータ例を示す。図５の差分データは、ＳＶＧデータの編集によって追加、変更された要素と削除された要素とを含んでいる。図５において、削除された要素は、横線（以下、消去線という）が上書きされている。また、追加された要素は、アンダーラインで示されている。また、消去線、アンダーラインのないデータは、変更されていないデータを示す。
【００４３】
例えば、Ｌ１０の頂点列データ（ｐａｔｈデータ）は変更がない要素であり、Ｌ１１の頂点列データは削除されたデータである。また、Ｌ１２の直線データ（ｌｉｎｅデータ）では、ｘ１、ｘ２、ｙ１、ｙ２等の端点座標が各々変更されている。また、Ｌ１３のテキストデータは、新たに追加されたデータである。
【００４４】
図５に示すように、追加されたデータ、変更されたデータ、および削除されたデータの組み合わせにより、ＳＶＧデータの編集操作を特定できる。また、各データの種別、例えば、矩形、頂点列、直線、テキスト等の種別、および、各データの座標値から変更箇所を特定できる。そして、差分反映処理部１４は、このような差分データ１３を基に、元データ６Ｂ中でデータを追加、変更、削除する。
【００４５】
＜効果＞
以上述べたように、本情報システムによれば、図形、画像、テキスト等を含む各種文書データをＳＶＧフォーマットに変換し、ＳＶＧデータに対して編集操作を実行できる。そして、編集済みのＳＶＧデータを元の文書フォーマットに逆変換することにより、ＳＶＧデータの編集機能を利用して各種の文書フォーマットを編集できる。
【００４６】
さらに、本情報システムでは、ＳＶＧフォーマットに変換前の元の文書データのコピーを変換後のＳＶＧデータ内にコメントデータとして保存しておく。そして、編集前のＳＶＧデータと編集後のＳＶＧデータの差分データを求め、その差分データに基づいて変換前の元の文書データを変更する。このような処理により、各種文書データとＳＶＧデータとのデータ非互換性に基づくデータの消滅を回避し、変更箇所だけを元の文書データに反映できる。
【００４７】
＜変形例＞
上記実施形態では、差分データとして図５に示すように、削除された要素を横線でマークすることで記述する例を示した。しかし、本発明は、このような差分データの記述形式に限定されるものではない。例えば、ｕｎｉｘ等のシステムで使用されているように、変更前の行の先頭を”＞”で示し、変更後の行の先頭を”＜”で示す等、各種の記号を用いて、変更前後の関係を示してもよい。また、削除（ｄｅｌｅｔｅ）の場合に”ｄ”、追加（ａｄｄ）の場合に”ａ”、置き換え（ｃｈａｎｇｅ）の場合に”ｃ”等の文字を各行に付加することで、変更の態様を明示するようにしてもよい。
【００４８】
上記実施の形態では、各種データをＳＶＧフォーマットに変換し、ＳＶＧフォーマットのデータを編集する例を示した。しかし、本発明の実施は、ＳＶＧフォーマットへの変換に限定されるものではない。要するに本発明は、各種のデータフォーマットを特定のデータフォーマットに変換し、編集し、その後元のデータフォーマットに戻す場合に、データ非互換によるデータの消滅を防止するものである。したがって、文書データを取り扱えるものであれば、ＳＶＧフォーマット以外のフォーマットにも本発明は適用可能である。なお、このようなフォーマットとしては、ベクタフォーマットが好ましい。
【００４９】
また、上記実施の形態では、元データ４のコピーである元データ６ＢをコメントデータとしてＳＶＧデータ６Ａに付加した。すなわち、編集対象のＳＶＧデータ６Ａと元データ４との対応付けのため、元データ４のコピーである元データ６Ｂを直接ＳＶＧデータ６Ａに添付した。しかし、本発明の実施は、このような構成には限定されない。例えば、元データ６ＢをＳＶＧデータ６Ａとは、異なるファイルに格納しておき、そのファイルの存在場所（存在先コンピュータのホスト名、フォルダ名、ファイル名等）をコメントとしてＳＶＧデータ６Ａに付加するようにしてもよい。また、元データ６Ｂの存在場所をリンク先としてＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）等で記述するようにしてもよい。
【００５０】
さらに、このようなコメントデータに相当する記述形式（例えば、備考欄等）の存在するデータ形式であれば、上記ＳＶＧフォーマットに代わるデータフォーマットとしてバイナリデータを用いてもよい。その場合、差分データ１３は、文書データに含まれる要素（矩形、多角形、折れ線、テキスト等）ごとに文書データを比較して生成すればよい。
【００５１】
上記実施の形態では、複数のコンピュータ、すなわち、ＳＶＧ変換サーバ５、ＳＶＧ編集部７、および復元サーバ９を含む情報システムにより、各種文書データフォーマット（元データ４）をＳＶＧフォーマットに変換し、その編集結果を元データ４に反映する情報システムを示した。しかし、本発明の実施は、このような構成に限定されるものではない。
【００５２】
例えば、ＳＶＧ変換サーバ５、ＳＶＧ編集部７、および復元サーバ９を単一のコンピュータ上に実現してもよい。また、ＳＶＧ変換サーバ５、ＳＶＧ編集部７、および復元サーバ９のうち、いずれか１以上を複数のコンピュータによるマルチプロセッサとして実現してもよい。
【００５３】
【発明の効果】
以上説明したように、本発明によれば、各種データフォーマットを他のデータフォーマットに変換してデータを編集した後、その編集内容を元のデータフォーマットに確実に反映することができる。
【図面の簡単な説明】
【図１】本発明の一実施の形態に係る情報システムのシステム構成図
【図２】復元サーバ９の詳細を示すブロック図
【図３】本情報システムの処理対象となる文書データの例
【図４】変換済みデータ６のデータ例
【図５】差分データ１３のデータ例
【符号の説明】
４  元データ
５  ＳＶＧ変換サーバ
６  変換済みデータ
７  ＳＶＧ編集部
８  編集済みデータ
９  復元サーバ
１０  復元データ
１１  ＳＶＧ変換部
１２  ＳＶＧ比較部
１３  差分データ
１４  差分処理反映部
【図１】
2005010841.tif 000003
【図２】
2005010841.tif 000004
【図３】
2005010841.tif 000005
【図４】
2005010841.tif 000006
【図５】
2005010841.tif 000007