(57)【要約】【課題】ファイルサイズを小さくし、圧縮後にもＸＭＬ書式を保たせて圧縮する。【解決手段】圧縮するＸＭＬデータを取得し、データ中のタグ名を短い標識子に変換するタグ名変換手段１１と、前記において変換したタグ名と標識子の対応付定義情報をＸＭＬデータの冒頭に配置する定義情報配置手段１２と、前記定義情報を含むＸＭＬデータについて、改行文字とインデント用スペース文字とを削除する文字削除手段１３と、削除処理で得られるＸＭＬデータ内の数値データをバイナリ化して別ファイルとして分離するバイナリ化手段１４と、該別ファイルについてファイル名とＡＮＳＩ規格による型名及びファイル内アドレスの記述文をＸＭＬデータ内の対応する数値データが存在した位置に埋め込む埋込手段１５と、埋込手段１５により得られるＸＭＬデータと分離された別ファイルのデータをペアとして圧縮後ＸＭＬデータとして出力する出力手段１６とを具備する。【選択図】  図１
2007058645.tif 000002
【特許請求の範囲】
【請求項１】
圧縮するＸＭＬデータを取得し、データ中のタグ名を短い標識子に変換するタグ名変換手段と、
前記において変換したタグ名と標識子の対応付定義情報をＸＭＬデータの冒頭に配置する定義情報配置手段と、
前記定義情報を含むＸＭＬデータについて、改行文字とインデント用スペース文字とを削除する文字削除手段と、
前記文字削除手段による処理の結果得られるＸＭＬデータ内の数値データをバイナリ化して別ファイルとして分離するバイナリ化手段と、
前記分離された別ファイルのデータについてファイル名とＡＮＳＩ規格による型名及びファイル内アドレスの記述文を作成し、作成した記述文をＸＭＬデータ内の対応する数値データが存在した位置に埋め込む埋込手段と、
前記埋込手段により得られるＸＭＬデータと前記分離された別ファイルのデータをペアとして圧縮後ＸＭＬデータとして出力する出力手段と
を具備することを特徴とするＸＭＬデータ圧縮装置。
【請求項２】
前記文字削除手段は、デリミタ文字として使用される改行及びスペース文字については、これらを所定記号に変換することを特徴とする請求項１に記載のＸＭＬデータ圧縮装置。
【請求項３】
圧縮するＸＭＬデータを取得し、データ中のタグ名を短い標識子に変換するタグ名変換ステップと、
前記において変換したタグ名と標識子の対応付定義情報をＸＭＬデータの冒頭に配置する定義情報配置ステップと、
前記定義情報を含むＸＭＬデータについて、改行文字とインデント用スペース文字とを削除する文字削除ステップと、
前記文字削除ステップによる処理の結果得られるＸＭＬデータ内の数値データをバイナリ化して別ファイルとして分離するバイナリ化ステップと、
前記分離された別ファイルのデータについてファイル名とＡＮＳＩ規格による型名及びファイル内アドレスの記述文を作成し、作成した記述文をＸＭＬデータ内の対応する数値データが存在した位置に埋め込む埋込ステップと、
前記埋込ステップにより得られるＸＭＬデータと前記分離された別ファイルのデータをペアとして圧縮後ＸＭＬデータとして出力する出力ステップと
を具備することを特徴とするＸＭＬデータ圧縮方法。
【請求項４】
前記文字削除ステップは、デリミタ文字として使用される改行及びスペース文字については、これらを所定記号に変換することを特徴とする請求項３に記載のＸＭＬデータ圧縮方法。
【請求項５】
コンピュータに実行されるとＸＭＬデータを圧縮して圧縮後ＸＭＬデータとするプログラムであって、
圧縮するＸＭＬデータを取得し、データ中のタグ名を短い標識子に変換するタグ名変換ステップと、
前記において変換したタグ名と標識子の対応付定義情報をＸＭＬデータの冒頭に配置する定義情報配置ステップと、
前記定義情報を含むＸＭＬデータについて、改行文字とインデント用スペース文字とを削除する文字削除ステップと、
前記文字削除ステップによる処理の結果得られるＸＭＬデータ内の数値データをバイナリ化して別ファイルとして分離するバイナリ化ステップと、
前記分離された別ファイルのデータについてファイル名とＡＮＳＩ規格による型名及びファイル内アドレスの記述文を作成し、作成した記述文をＸＭＬデータ内の対応する数値データが存在した位置に埋め込む埋込ステップと、
前記埋込ステップにより得られるＸＭＬデータと前記分離された別ファイルのデータをペアとして圧縮後ＸＭＬデータとして出力する出力ステップと
をコンピュータが実行するように構成されていることを特徴とするＸＭＬデータ圧縮プログラム。
【請求項６】
前記文字削除ステップは、デリミタ文字として使用される改行及びスペース文字については、これらを所定記号に変換することを特徴とする請求項５に記載のＸＭＬデータ圧縮プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ＸＭＬデータ圧縮装置、ＸＭＬデータ圧縮方法及びＸＭＬデータ圧縮プログラムに関するものであり、特に、地図をＸＭＬにより記述したＸＭＬデータを圧縮するために好適なものである。
【背景技術】
【０００２】
従来、ＸＭＬデータ（文書）を圧縮する手法としてユニバーサルデータ圧縮が行われているが、これによると人が見たときに意味のあるタグの内容が失われてしまうことに鑑み、例えば、タグのリストを出現順にリスト化し、タグを区切りコードに換えて圧縮し、リストと圧縮結果を対応付けて出力するものが特許文献１に示されている。
【特許文献１】特開２００２−１６３２４８号公報  しかしながら、上記の手法では地図のような数字が多いＸＭＬデータについては、効率が悪いという問題がある。その他、ＸＭＬデータ（文書）を圧縮する手法としては、特許文献２〜４に示されているものがある。
【特許文献２】特開２００２−２９７５６８号公報
【特許文献３】特開２００２−２４４８９４号公報
【特許文献４】特開２００１−６７３４８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
解決しようとする課題は、ファイルサイズを小さくすると共に圧縮後においてもＸＭＬとしての書式を保たせて圧縮することである。
【課題を解決するための手段】
【０００４】
本発明に係るＸＭＬデータ圧縮装置は、圧縮するＸＭＬデータを取得し、データ中のタグ名を短い標識子に変換するタグ名変換手段と、前記において変換したタグ名と標識子の対応付定義情報をＸＭＬデータの冒頭に配置する定義情報配置手段と、前記定義情報を含むＸＭＬデータについて、改行文字とインデント用スペース文字とを削除する文字削除手段と、前記文字削除手段による処理の結果得られるＸＭＬデータ内の数値データをバイナリ化して別ファイルとして分離するバイナリ化手段と、前記分離された別ファイルのデータについてファイル名とＡＮＳＩ規格による型名及びファイル内アドレスの記述文を作成し、作成した記述文をＸＭＬデータ内の対応する数値データが存在した位置に埋め込む埋込手段と、前記埋込手段により得られるＸＭＬデータと前記分離された別ファイルのデータをペアとして圧縮後ＸＭＬデータとして出力する出力手段とを具備することを特徴とする。
【０００５】
本発明に係るＸＭＬデータ圧縮装置は、前記文字削除手段は、デリミタ文字として使用される改行及びスペース文字については、これらを所定記号に変換することを特徴としている。
【０００６】
本発明に係るＸＭＬデータ圧縮方法は、圧縮するＸＭＬデータを取得し、データ中のタグ名を短い標識子に変換するタグ名変換ステップと、前記において変換したタグ名と標識子の対応付定義情報をＸＭＬデータの冒頭に配置する定義情報配置ステップと、前記定義情報を含むＸＭＬデータについて、改行文字とインデント用スペース文字とを削除する文字削除ステップと、前記文字削除ステップによる処理の結果得られるＸＭＬデータ内の数値データをバイナリ化して別ファイルとして分離するバイナリ化ステップと、前記分離された別ファイルのデータについてファイル名とＡＮＳＩ規格による型名及びファイル内アドレスの記述文を作成し、作成した記述文をＸＭＬデータ内の対応する数値データが存在した位置に埋め込む埋込ステップと、前記埋込ステップにより得られるＸＭＬデータと前記分離された別ファイルのデータをペアとして圧縮後ＸＭＬデータとして出力する出力ステップとを具備することを特徴とする。
【０００７】
本発明に係るＸＭＬデータ圧縮方法は、前記文字削除ステップは、デリミタ文字として使用される改行及びスペース文字については、これらを所定記号に変換することを特徴とする。
【０００８】
本発明に係るＸＭＬデータ圧縮プログラムは、コンピュータに実行されるとＸＭＬデータを圧縮して圧縮後ＸＭＬデータとするプログラムであって、圧縮するＸＭＬデータを取得し、データ中のタグ名を短い標識子に変換するタグ名変換ステップと、前記において変換したタグ名と標識子の対応付定義情報をＸＭＬデータの冒頭に配置する定義情報配置ステップと、前記定義情報を含むＸＭＬデータについて、改行文字とインデント用スペース文字とを削除する文字削除ステップと、前記文字削除ステップによる処理の結果得られるＸＭＬデータ内の数値データをバイナリ化して別ファイルとして分離するバイナリ化ステップと、前記分離された別ファイルのデータについてファイル名とＡＮＳＩ規格による型名及びファイル内アドレスの記述文を作成し、作成した記述文をＸＭＬデータ内の対応する数値データが存在した位置に埋め込む埋込ステップと、前記埋込ステップにより得られるＸＭＬデータと前記分離された別ファイルのデータをペアとして圧縮後ＸＭＬデータとして出力する出力ステップとをコンピュータが実行するように構成されていることを特徴とする。
【０００９】
本発明に係るＸＭＬデータ圧縮プログラムは、前記文字削除ステップは、デリミタ文字として使用される改行及びスペース文字については、これらを所定記号に変換することを特徴とする。
【発明の効果】
【００１０】
上記本発明の構成によれば、任意長さのタグ文字列を可能な限り短い文字列に置き換え、さらに改行文字とインデント用スペース文字とを削除し、この置き換えと文字削除による処理の結果得られるＸＭＬデータ内の数値データをバイナリ化して別ファイルとして分離するので、圧縮が行われてＸＭＬデータのファイルサイズを小さくすることができ、例えばネットワーク等を介して伝送する場合の伝送効率を向上させる。また、数値データがＡＮＳＩバイナリ化されており、圧縮前のＸＭＬデータのまま読み込む場合に比べて圧縮後のデータを読み込む方が、読み込み効率を向上させる効果が得られる。これと共に、分離された別ファイルのデータについてファイル名とＡＮＳＩ規格による型名及びファイル内アドレスの記述文を作成し、作成した記述文をＸＭＬデータ内の対応する数値データが存在した位置に埋め込むので、情報が失われる度合いを少なくして圧縮化を行うことが可能である。また、埋込ステップにより得られるＸＭＬデータと分離された別ファイルのデータをペアとして圧縮後ＸＭＬデータとして出力するが、このペアのうちＸＭＬデータは圧縮後においてもＸＭＬとしての書式が保たれており、圧縮されたデータでありながら、読み込みの際には解凍を行う必要がなく、汎用ＸＭＬ読取りプログラムなどを用いてそのまま読取り可能であるという効果がある。
【発明を実施するための最良の形態】
【００１１】
圧縮後においてもＸＭＬとしての書式を保つという目的を、数値データをバイナリ化して別ファイルとして分離すると共に、分離された別ファイルのデータについてファイル名とＡＮＳＩ規格による型名及びファイル内アドレスの記述文を作成し、作成した記述文をＸＭＬデータ内の対応する数値データが存在した位置に埋め込むことで、実現した。
【実施例】
【００１２】
図１には、本発明に係るＸＭＬデータ圧縮装置１の構成が示されている。ＸＭＬデータ圧縮装置１には、タグ名変換手段１１、定義情報配置手段１２、文字削除手段１３、バイナリ化手段１４、埋込手段１５、出力手段１６を備えている。第１の記憶部２には圧縮前のＸＭＬデータ（文書）が記憶されており、第２の記憶部３には圧縮後のＸＭＬデータ（文書）が記憶される。
【００１３】
タグ名変換手段１１は、圧縮するＸＭＬデータを第１の記憶部２から取得し、データ中のタグ名を短い標識子に変換するものである。定義情報配置手段１２は、タグ名変換手段１１において変換したタグ名と標識子の対応付定義情報をＸＭＬデータの冒頭に配置するものである。文字削除手段１３は、上記定義情報を含むＸＭＬデータについて、改行文字とインデント用スペース文字とを削除するものである。バイナリ化手段１４は、文字削除手段１３による処理の結果得られるＸＭＬデータ内の数値データをバイナリ化して別ファイルとして分離するものである。埋込手段１５は、上記分離された別ファイルのデータについてファイル名とＡＮＳＩ規格による型名及びファイル内アドレスを含む記述文を作成し、作成した記述文をＸＭＬデータ内の対応する数値データが存在した位置に埋め込むものである。出力手段１６は、埋込手段１５により得られるＸＭＬデータと上記分離された別ファイルのデータをペアとして圧縮後ＸＭＬデータとして出力するものである。出力された圧縮後ＸＭＬデータは、第２の記憶部３に記憶される。
【００１４】
ＸＭＬデータ圧縮装置１は、コンピュータにより構成されるものであり、タグ名変換手段１１、定義情報配置手段１２、文字削除手段１３、バイナリ化手段１４、埋込手段１５、出力手段１６は、コンピュータがＸＭＬデータ圧縮プログラムを実行することにより実現される。以下、第１の記憶部２に記憶されている図２に示されるようなＸＭＬデータを、コンピュータにより構成されるＸＭＬデータ圧縮装置１により、圧縮する場合の動作を説明する。
【００１５】
タグ名変換手段１１を実現するタグ名変換ステップでは、第１の記憶部２に記憶されている図２に示されるようなＸＭＬデータを取り込む。そして、タグを検出し、タグ名を短い標識子に変換する。図２の例では、AnyTag1 、Group1、AnyTexData、DisplayCoordinates、AnyNumericDataが、タグ名であるから、ここでは、これらを、それぞれ＄１〜＄５に変換する。短い標識子は、特に＄ｎに限らないが、通常使用されない文字によって構成され、異なるタグ名に対して重複せずに付される。この処理により、ＸＭＬが可視性を確保するために冗長構成を採用しているタグ名が圧縮される。
【００１６】
定義情報配置手段１２を実現する定義情報配置ステップでは、上記タグ名変換ステップによって、タグ名であるAnyTag1 、Group1、AnyTexData、DisplayCoordinates、AnyNumericDataが＄１〜＄５に変換されたことを受けて、図３に示すように、タグ名と標識子の対応付定義情報２０をＸＭＬデータの冒頭に配置する。タグ名と標識子の対応付定義情報２０はＸＭＬ書式で記述する。この段階のＸＭＬデータは、図３に示すように、冒頭に対応付定義情報２０を備えるが、これ以降は、タグ名が短い標識子に変換されており、その部分が圧縮されている。タグ名と標識子の対応付定義情報２０をＸＭＬデータの冒頭に配置することにより、メンテナンスを容易とし、また対応関係が明確となる。
【００１７】
次に、文字削除手段１３を実現する文字削除ステップが実行される。この文字削除ステップでは、改行文字とインデント用スペース文字を削除する。このとき、デリミタ文字として使用される改行及びスペース文字は、「，」に置き換える。以上の処理の結果、定義情報配置ステップでは、図３に示すようなＸＭＬデータが、この文字削除ステップが実行されることにより、図４に示される通り、視覚的にコンパクトなＸＭＬデータとなる。
【００１８】
上記文字削除ステップに次いで、バイナリ化手段１４を実現するバイナリ化ステップが実行される。このバイナリ化ステップにおいては、文字削除ステップにより作成されたＸＭＬデータ中の数値データをＡＮＳＩ（American National Standards Insititute）の数値データ形式であるバイナリ形式とし、別ファイルに分離する（図５）。
【００１９】
バイナリ化ステップの次には、埋込手段１５を実現する埋込ステップが実行される。即ち、埋込ステップでは、バイナリ化ステップにおいて別ファイルに分離したバイナリ形式のデータに対して、ファイル名を付すと共に、その数値データがＡＮＳＩ規格によるどの型のデータであるかを示す型名及びファイル内アドレスの記述文（ＸＭＬ書式）を作成する。
【００２０】
図４に示すＸＭＬデータにあっては、ファイル名を「binary1.dat」とし（図５）、データ型を「ＡＮＳＩにおける不動小数点型６４ビット長である」ことを示す「$binary1.dat$ANSI_F64$」としてある。ここでは、数値データが１ブロックであるため、ファイル内アドレスは省略されているが、通常、何データ目から何データ目或いは先頭のデータ目とデータ長により規定される。そして、文字削除ステップにより得られたＸＭＬデータ（図４）における数値データの位置（別ファイルとした後には、対応する数値データが存在した位置）に上記ファイル名とＡＮＳＩ規格による型名及びファイル内アドレスの記述文を埋込む。埋込ステップにより、図６に示すようなＸＭＬデータが得られる。
【００２１】
次に、出力手段１６を実現する出力ステップが実行される。出力ステップでは、埋込ステップにより得られた図６に示すＸＭＬデータと上記分離された別ファイル（図５）のデータをペアとして圧縮後ＸＭＬデータとして第２の記憶部３へ出力して、記憶する（図７参照）。
【００２２】
以上の処理により圧縮されたＸＭＬデータはＸＭＬ書式を保っているため、第２の記憶部３から読み込む際には通常のＸＭＬパーサ（解凍の必要がない）で良い。読み込みの後に、アプリケーション処理において文書構造の復元及び分離された数値データの埋込み復旧を行えば良い。また、数値データがバイナリ化されているため、計算機にとって文書を数値に解読する必要がなく、読み込み効率を高めることができる。また、全体としてファイルサイズが小さくなるので、蓄積容量を必要とせず、伝送の場合に負荷軽減を図ることが可能である。
【００２３】
以上をまとめてステップ順にフローチャートとして示すと、図８に示すように、「ＸＭＬデータを取り込み、タグを検出し、タグ名を短い標識子に変換する」ことからなるタグ名変換ステップＳ１１、「タグ名と標識子の対応付定義情報をＸＭＬ書式で記述し、ＸＭＬデータの冒頭に配置する」ことからなる定義情報配置ステップＳ１２、「改行文字とインデント用スペース文字を削除する（デリミタ文字として使用される改行及びスペース文字は、所定文字である「，」に置き換える）」ことからなる文字削除ステップＳ１３、「文字削除ステップにより作成されたＸＭＬデータ中の数値データをバイナリ形式とし、別ファイルに分離する」ことからなるバイナリ化ステップＳ１４、「別ファイルに分離したバイナリ形式のデータに対して、ファイル名を付すと共に、その数値データがＡＮＳＩ規格によるどの型のデータであるかを示す型名及びファイル内アドレスの記述文（ＸＭＬ書式）を作成する」ことからなる埋込ステップＳ１５、「埋込ステップにより得られたＸＭＬデータと分離された別ファイルのデータをペアとして圧縮後ＸＭＬデータとして第２の記憶部３へ出力することからなる」出力ステップＳ１６を備える。
【００２４】
上記ＸＭＬデータ圧縮装置、ＸＭＬデータ圧縮方法及びＸＭＬデータ圧縮プログラムによる圧縮の優位性を示すために、座標（数値データ）や同じ多角形が何度も出現する（同じタグ名が何度も出現する）地図データ（Ｇ−ＸＭＬ  ＪＩＳ  Ｘ−７１９９）についての処理を説明する。まず、タグ名変換ステップＳ１１において取り込むデータは、図９に示されるようである。次の定義情報配置ステップＳ１２においては、図１０に示されるように、ＸＭＬ書式で記述されたタグ名と標識子の対応付定義情報２０Ａが冒頭に配置される。
【００２５】
文字削除ステップＳ１３において、改行文字とインデント用スペース文字が削除される（デリミタ文字として使用される改行及びスペース文字は、所定文字である「，」に置き換える）ことにより、図１１に示すようにＸＭＬデータの量が少なくなる。バイナリ化ステップＳ１４にて数値データがバイナリ化され別ファイル（ファイル名「binary1.dat」）のファイル（図１２）に分離化され、埋込ステップＳ１５では、別ファイルのファイル名と共に、その数値データの型名及びファイル内アドレスの記述文（ＸＭＬ書式）が作成され元の位置に埋め込まれ図１３に示すＸＭＬデータとされる。そして、出力ステップＳ１６では、埋込ステップＳ１５により得られたＸＭＬデータと分離された別ファイルのデータをペアとして圧縮後ＸＭＬデータとして第２の記憶部３へ出力する。斯して、図９と図１３との比較により明らかな如く、大幅なデータ圧縮がなされるものである。
【図面の簡単な説明】
【００２６】
【図１】本発明に係るＸＭＬデータ圧縮装置の実施例の構成図。
【図２】本発明に係るＸＭＬデータ圧縮装置の実施例において圧縮する前のＸＭＬデータ（文書）の例を示す図。
【図３】本発明に係るＸＭＬデータ圧縮装置の定義情報配置ステップにおいて処理したＸＭＬデータ（文書）の例を示す図。
【図４】本発明に係るＸＭＬデータ圧縮装置の文字削除ステップにおいて処理したＸＭＬデータ（文書）の例を示す図。
【図５】本発明に係るＸＭＬデータ圧縮装置のバイナリ化ステップにおいて処理分離したファイルを示す図。
【図６】本発明に係るＸＭＬデータ圧縮装置の埋込ステップにおいて処理したＸＭＬデータ（文書）の例を示す図。
【図７】本発明に係るＸＭＬデータ圧縮装置の埋込ステップの処理を示す図。
【図８】本発明に係るＸＭＬデータ圧縮方法或いはＸＭＬデータ圧縮プログラムの実施例を示すフローチャート。
【図９】ＸＭＬによる地図データ（Ｇ−ＸＭＬ  ＪＩＳ  Ｘ−７１９９）を示す図。
【図１０】図９に示すＸＭＬデータが、定義情報配置ステップＳ１２において処理された結果を示す図。
【図１１】図１０に示すＸＭＬデータが、文字削除ステップＳ１３において処理された結果を示す図。
【図１２】バイナリ化され別ファイル（ファイル名「binary1.dat」）のファイルとされた図１０に示すＸＭＬデータ内の数値データを示す図。
【図１３】図１１に示すＸＭＬデータが、埋込ステップＳ１５により処理された結果を示す図。
【符号の説明】
【００２７】
１  ＸＭＬデータ圧縮装置
２  第１の記憶部
３  第２の記憶部
１１  タグ名変換手段
１２  定義情報配置手段
１３  文字削除手段
１４  バイナリ化手段
１５  埋込手段
１６  出力手段
【図１】
2007058645.tif 000003
【図２】
2007058645.tif 000004
【図３】
2007058645.tif 000005
【図４】
2007058645.tif 000006
【図５】
2007058645.tif 000007
【図６】
2007058645.tif 000008
【図７】
2007058645.tif 000009
【図８】
2007058645.tif 000010
【図９】
2007058645.tif 000011
【図１０】
2007058645.tif 000012
【図１１】
2007058645.tif 000013
【図１２】
2007058645.tif 000014
【図１３】
2007058645.tif 000015