JP2002244894A - Xmlデータの符号化方法、符号化されたxmlデータの復号化方法、xmlデータの符号化システム、符号化されたxmlデータの復号化システム、プログラムおよび記録媒体 - Google Patents

Xmlデータの符号化方法、符号化されたxmlデータの復号化方法、xmlデータの符号化システム、符号化されたxmlデータの復号化システム、プログラムおよび記録媒体

Info

Publication number
JP2002244894A
JP2002244894A JP2001027462A JP2001027462A JP2002244894A JP 2002244894 A JP2002244894 A JP 2002244894A JP 2001027462 A JP2001027462 A JP 2001027462A JP 2001027462 A JP2001027462 A JP 2001027462A JP 2002244894 A JP2002244894 A JP 2002244894A
Authority
JP
Japan
Prior art keywords
xml data
attribute
asn
type
operator
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
JP2001027462A
Other languages
English (en)
Other versions
JP3894280B2 (ja
Inventor
Takeshi Imamura
剛 今村
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2001027462A priority Critical patent/JP3894280B2/ja
Priority to US10/047,958 priority patent/US7143397B2/en
Publication of JP2002244894A publication Critical patent/JP2002244894A/ja
Application granted granted Critical
Publication of JP3894280B2 publication Critical patent/JP3894280B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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/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)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Document Processing Apparatus (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

(57)【要約】 【課題】 XMLデータの符号化(圧縮)効率を高め
る。 【解決手段】 構文(型)生成装置2−1を用いてDT
DをASN.1抽象構文(型)に変換し、分離装置2−
2を用いて前記DTDに従うXMLデータからテキスト
を分離する。その後、構文(値)生成装置2−3を用い
てテキストが分離された後のXMLデータ(要素の構
文)を、前記ASN.1抽象構文(型)に従うASN.
1抽象構文(値)に変換する。その後、転送構文生成装
置2−4を用いてASN.1抽象構文(値)をASN.
1転送構文に変換する。一方、圧縮装置2−5を用いて
分離されたテキストを圧縮する。さらに、併合装置2−
6を用いてASN.1転送構文と圧縮テキストを併合し
符号化XMLデータを生成する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、データの符号化お
よび復号化技術に関し、特にXML(extensiblemarkup
language)データの符号化における圧縮率の向上に適用
して有効な技術に関する。
【0002】
【従来の技術】近年、インターネット上でのデータ表現
の手段としてXMLが注目されている。XMLは拡張可
能なメタ言語であり、ユーザが独自に文法を規定するこ
とができる。また、各要素に論理的な意味を持たせるこ
とが可能であり、HTML(hypertext markup languag
e)に比較してデータ処理が大幅に容易になる。このた
め、電子商取引等インターネットで交換される構造化文
書の標準的な表現方式として期待されている。なお、X
MLについては、「W3C. Extensible Markup Language
(XML) 1.0, 1998. http://www.w3.org/TR/REC-xml」に
詳細が記述されている。
【0003】XMLデータは文字で記述されるため可読
性が高い利点がある。その反面、冗長性も高いという難
点がある。すなわち要素の意味は主に開始タグ内に記述
され、その意味内容は文字で記述されている内容を参照
すれば容易に把握できる。しかし、全てが文字で記述さ
れるため、全体の文字数が増加し、XMLデータ全体の
情報量(文字数)が多くなる。文字数が多ければ、たと
えばストレージに格納したり、あるいはネットワークで
転送する際に、記録容量あるいは転送量が多くなり物理
的、時間的コストの上昇を来たす。そこで、XMLデー
タを短い符号に符号化(または圧縮)できれば都合がよ
い。
【0004】データの圧縮法には各種の手法が知られて
いる。たとえば、ランレングス符号、Huffman符
号、算術符号、LZ77等である。これら符号化の手法
については、たとえば、「Huffman, D.A. “A method f
or the construction of minimum-redundancy codes”
Proc. of the IRE September,1952」、「Mark Nelsonan
d Jean Loup Gailly “The Data Compression Book”,
Second Edition. M&TBooks 1996」、「Jacob Ziv and A
braham Lempel. “A universal algorithm for sequent
ial data compression” IEEE Transactions on Inform
ation TheoryMay, 1977」に詳しい。
【0005】しかしながら、これら圧縮手法はXMLに
特化されたものではなく、XMLデータに適用した場合
に必ずしも圧縮効率が高いものではない。XMLデータ
に特化した圧縮手法には、たとえば「D. Suciu and H.
Liefke. XMill: an Efficient Compressor for XML Da
ta, 1999. http://www.researc
h.att.com/sw/tools/xmill
/」に記載のXMill、「XML Solutions Corp. XML
Zip, 1999. http://www.xmls.com
/products/xmlzip/xmlzip.h
tml」に記載のXMLZip、あるいは「井川甲作
著、東京工業大学工学部情報工学科卒業論文「DTDを
用いたXML文書圧縮アルゴリズムに関する研究」、平
成12年2月」に記載のXCompなどがある。
【0006】XMillは、XMLデータから要素ごと
のコンテンツ(テキスト)部分を抽出する。この抽出さ
れた部分をコンテナと呼ぶ。そして構造部分を数字で符
号化し、テキスト部分はコンテナごとに LZ77など
の方法で圧縮する。基本的にはパラメータ等の情報を必
要とせず、アプリケーションのみで圧縮が可能である。
必要であればパラメータ等を指定してコンテナごとの圧
縮方法を指定し、圧縮効率を高めることが可能である。
また、Cで実装されるため圧縮速度が速いという特徴を
もつ。
【0007】XMLZipは、ルート要素からの深さを
指定し、指定部分をドキュメント要素から分割し、残り
をZIPで圧縮する。ルート要素部分は符号化されず直
接操作することが可能になる。使用しない部分を圧縮す
ることで文書へのアクセスを迅速に行える。ただし、圧
縮効率はXMillに比較して低い。
【0008】XCompは、XMLデータの構造部分の
うち、DTD(Document Type Definition)から一意に決
定される部分は符号化せず、一意に決定できない部分に
ついての構造部分のみを圧縮する。テキスト部分はXM
ill と同じ方法で圧縮する。すなわち、以下の手順
で圧縮を行う。(1)構造とコンテンツを分離する。
(2)DTDからプッシュダウンオートマトン(PD
A)を生成する。(3)生成されたPDAを用いて構造
部分を符号化する符号化トランスデューサを生成する。
(4)符号化トランスデューサの各ノードに割り振られ
た数字をオートマトンを連鎖的に遷移することにより出
力し、構造を符号化する。(5)得られた構造符号と要
素ごとのコンテンツをLZ77等で圧縮し、圧縮された
XML文書を出力する。
【0009】上記XML文書に特化された圧縮手法のう
ち、XCompは構造部分の一部を符号化しないので、
かなりよい圧縮効率を達成する。
【0010】
【発明が解決しようとする課題】上記の通り、XCom
pはXML文書の圧縮手法として相対的に優れる。しか
し、本発明者の検討によればXCompにおいても、X
MLデータがある特定の構造をしている場合に圧縮効率
が悪くなるという課題がある。すなわち、要素に「?」
オペレータや「*」オペレータ(「+」オペレータを含
む)が適用された場合である。
【0011】「?」オペレータは、ある要素の子要素が
0回もしくは1回出現する場合に、要素の宣言文におい
て子要素に付されるオペレータである。XCompにお
いて「?」オペレータが出現した場合、「?」オペレー
タは、ある状態から別の状態に遷移する複数の選択肢で
表現される。選択肢にはインデクスが付与される。XC
ompの実行時には、選択された選択肢に付与されたイ
ンデクスが出力される。選択肢の数は、「?」オペレー
タの後に「?」オペレータなどがいくつ連続するかによ
る。例えば、「?」オペレータがn個連続する場合に、
最初の「?」オペレータに対する選択肢はn+1個とな
る。従って、インデクスはn+1種類必要であり、その
1つを表現するにはO(log n)ビット必要であ
る。「?」オペレータが適用された要素がすべて存在す
ると、インデクスが複数羅列される。その1つを表現す
るのにO(log n)ビット必要であるから、それ全
体を表現するにはO(nlog n)ビット必要であ
る。
【0012】「*」オペレータは、ある要素の子要素が
0回以上出現する場合に、要素の宣言文において子要素
に付されるオペレータであり、「+」オペレータは、あ
る要素の子要素が1回以上出現する場合に、要素の宣言
文において子要素に付されるオペレータである。XCo
mpにおいて「*」オペレータ(または「+」オペレー
タ)が出現した場合、「*(または+)」オペレータ
は、同じ状態か別の状態に遷移する2つの選択肢で表現
される。選択肢には、インデクスが付与される。XCo
mpの実行時には、選択された選択肢に付与されたイン
デクスが出力される。「*」オペレータが適用された要
素が複数存在すると、同じインデクスが複数羅列され
る。インデクスの数は、存在する要素の数に比例する。
従って、インデクス全体を表現するのに、要素の数をn
とすると、O(n)ビット必要である。
【0013】すなわち、XCompではDTDから一意
的に決まらない構造のうち特定のものについて、それら
を表現する符号のビット数が大きくなって、必ずしも十
分な圧縮効率を達成できない問題がある。
【0014】本発明の目的は、より圧縮効率の高いXM
Lデータ(XML文書)の符号化方式を提案し、それを
実現する方法およびシステムを提供することにある。
【0015】
【課題を解決するための手段】より高いXMLデータの
圧縮効率を達成するために、本発明では、「ITU-T. X.6
80 - Abstract Syntax Notation One (ASN.1): Specifi
cation of basic notation, 1997. http://www.itu.int
/itudoc/itu-t/rec/x/x500up/x680.html」に記載のAS
N.1を利用する。すなわち、符号化対象のXMLデー
タを構造とコンテンツ(テキスト)に分離する。一方、
符号化対象のXMLデータの文法をASN.1抽象構文
(型)に変換する。分離したコンテンツは要素ごとある
いはまとめてXMillと同様に圧縮する。また、分離
した構造(要素)をASN.1抽象構文(型)に従うA
SN.1抽象構文(値)に変換する。次に、ASN.1
抽象構文(値)をASN.1で規定されている符号化規
則を用いてASN.1転送構文に変換する。ASN.1
で規定される符号化規則には、BER、DER、PER
等があるが、特に符号化効率の観点からPERを用いる
ことが好ましい。そして符号化された要素(構文)であ
るASN.1転送構文と圧縮されたコンテンツ(テキス
ト)を併合し、符号化されたXMLデータを生成する。
なお、PERについては、「ITU-T. X.691-ASN.1 encod
ing rules: Specification of PackedEncoding Rules
(PER)、 1997. http://www.itu.int/itudoc/itu-t/rec/x
/x500up/x691.html」に詳しく記載されている。
【0016】このような符号化手法を用いることによ
り、XCompに比較して圧縮効率の高い符号化が行え
る。たとえば「?」オペレータがn個連続して出現した
場合の構造の符号化では、本発明を用いることによりO
(n)ビットでそれを表現できる。また、「*」オペレ
ータが出現した場合の構造の符号化では、本発明を用い
ることによりオーダとしてはXCompと同じである
が、実質的には少ないビット数でそれを表現できる。そ
して符号化(圧縮)されたXMLデータを通信あるいは
ストレージに用いることにより通信負荷を低減し、また
ストレージの容量を節約できる。
【0017】なお、符号化されたXMLデータの復号化
は、前記と逆の処理を行うことにより実現できる。ま
た、本発明の符号化あるいは復号化の方法は、システム
として把握することも可能であり、さらに、前記方法に
よって実現される機能をコンピュータに実現させるため
のプログラムとして把握することも可能である。
【0018】
【発明の実施の形態】以下、本発明の実施の形態を図面
を用いて詳細に説明する。ただし、本発明は多くの異な
る態様で実施することが可能であり、本実施の形態の記
載内容に限定して解釈すべきではない。なお、実施の形
態の全体を通して同じ要素には同じ番号を付するものと
する。
【0019】以下の実施の形態では、主に方法またはシ
ステムについて説明するが、当業者であれば明らかなと
おり、本発明はコンピュータで使用可能なプログラムと
しても実施できる。したがって、本発明は、ハードウェ
アとしての実施形態、ソフトウェアとしての実施形態ま
たはソフトウェアとハードウェアとの組合せの実施形態
をとることができる。プログラムは、ハードディスク、
CD−ROM、光記憶装置または磁気記憶装置等の任意
のコンピュータ可読媒体に記録できる。
【0020】また以下の実施の形態では、一般的なコン
ピュータシステムを用いることができる。実施の形態で
用いることができるコンピュータシステムは、中央演算
処理装置(CPU)、主記憶装置(メインメモリ:RA
M)、不揮発性記憶装置(ROM)、コプロセッサ、画
像アクセラレータ、キャッシュメモリ、入出力制御装置
(I/O)等、一般的にコンピュータシステムに備えら
れるハードウェア資源を備える。また、ハードディスク
装置等の外部記憶装置、インターネット等のネットワー
クに接続可能な通信手段を備えることができる。コンピ
ュータシステムには、パーソナルコンピュータ、ワーク
ステーション、メインフレームコンピュータ等各種のコ
ンピュータが含まれる。
【0021】(実施の形態1) 1.前提条件 本実施の形態を説明するにあたり、本実施の形態におけ
る前提となる条件を述べる。 (1)XMLデータは、文法で構造が定義される。ま
た、文法は、XMLデータを符号化する側と復号化する
側で共有される。たとえば文法定義ファイルを外部デー
タとして所定のIPアドレスに記録し、符号化あるいは
復号化する際にIPアドレスを用いてこの外部ファイル
を参照できる。なお、本実施の形態では文法定義として
DTDを用いるが、これに限られない。例えば、XML
SchemaやRELAXなどを用いることができ
る。 (2)XMLデータは、要素とテキストだけから構成さ
れる。その他のもの(例えば、属性や処理命令)は、別
の方法で管理される。例えば、属性や処理命令を特別な
要素として表現し、XMLデータの中に埋め込むことが
できる。この際、文法も変更する必要がある。また、X
MLデータから分離して、XPointerなどと共に
別に格納することも考えられる。 (3)テキストは、XMillなどの方法で圧縮され
る。このような前提条件の下に本実施の形態のXMLデ
ータの符号化および復号化が行われることを説明する。
【0022】2.符号化手順 2.1 システム構成と手順の概要 図1は本実施の形態の符号化システムの一例をその機能
について示したブロック図である。本実施の形態の符号
化システムは、構文(型)生成装置2−1、分離装置2
−2、構文(値)生成装置2−3、転送構文生成装置2
−4、圧縮装置2−5、併合装置2−6を有する。
【0023】構文(型)生成装置2−1は、DTDから
ASN.1抽象構文(型)を生成し、分離装置2−2
は、XMLデータから要素の内容(テキスト)と構造
(要素名および構造)を分離する。構文(値)生成装置
2−3は、要素の構造からASN.1抽象構文(値)を
生成し、転送構文生成装置2−4は、ASN.1転送構
文を生成する。圧縮装置2−5は分離したテキストを圧
縮し、併合装置2−6は圧縮テキストとASN.1転送
構文を併合して符号化されたXMLデータを生成する。
【0024】このような符号化システムを用いた本実施
の形態の符号化方法の手順の概要は以下のとおりであ
る。 (ステップ2−1) 構文(型)生成装置2−1を用い
てDTDをASN.1抽象構文(型)に変換する。 (ステップ2−2) 分離装置2−2を用いてステップ
2−1のDTDに従うXMLデータからテキストを分離
する。なお、ステップ2−2は、ステップ2−1と並行
に行われても良く、ステップ2−1よりも先に行われて
も良い。 (ステップ2−3) 構文(値)生成装置2−3を用い
てステップ2−2でテキストが分離された後のXMLデ
ータ(要素の構文)を、ステップ2−1のASN.1抽
象構文(型)に従うASN.1抽象構文(値)に変換す
る。 (ステップ2−4) 転送構文生成装置2−4を用いて
ステップ2−3のASN.1抽象構文(値)をASN.
1転送構文に変換する。 (ステップ2−5) 圧縮装置2−5を用いてステップ
2−2で分離されたテキストを圧縮する。なお、ステッ
プ2−5はステップ2−3〜ステップ2−4と並行に行
われる。 (ステップ2−6) 併合装置2−6を用いてステップ
2−4で生成されたASN.1転送構文とステップ2−
5で生成された圧縮テキストを併合し、符号化XMLデ
ータを生成する。
【0025】なお、ASN.1抽象構文(値)をAS
N.1転送構文に変換するには、ASN.1で規定され
ている符号化規則に従う。そのような規則には、BER
やDER、PERなどがある。特に、PERは、AS
N.1抽象構文(型)から一意に決定される型やその値
などを符号化しないため、符号化効率がよい。
【0026】以下、前記各ステップを詳細に説明する。 2.2 ステップ2−1 ステップ2−1では、DTDをASN.1抽象構文
(型)に変換する。以下では、内容モデルのパターンご
とに、その方法を説明する。
【0027】2.2.1 要素内容(element content) XMLの要素内容は、要素名とオペレータの組み合わせ
で構成される。通常要素名は文字列で表される。オペレ
ータは要素内容における子要素の出現順と出現回数を指
定するための演算子である。周知のとおりXMLでは、
「,」、「|」、「?」、「*」、「+」の各オペレー
タが許可される。原則として、要素名はASN.1抽象
構文では識別子として、オペレータは同じくASN.1
抽象構文では型として表現する。ただし、識別子はBE
Rなどでは符号化されないため、要素名を識別子とする
必然性はない。以下では、オペレータごとに、それをど
のような型で表現するかを説明する。
【0028】2.2.1.1 「,」オペレータ 「,」オペレータは、ASN.1抽象構文ではsequ
ence型で表現する。例えば、DTDとして、 <!ELEMENT a (b、c)> <!ELEMENT b (#PCDATA)> <!ELEMENT c (#PCDATA)> が与えられるとき、ASN.1抽象構文(型)は、 となる。ここで、A、B、Cは、便宜上導入した型参照
である。型参照は、衝突さえしなければどのようなもの
でもよい。また、テキストはステップ2−2で分離され
るため、BやCはnull型とする。
【0029】2.2.1.2 「|」オペレータ 「|」オペレータは、ASN.1抽象構文ではchoi
ce型で表現する。例えば、DTDとして、 <!ELEMENT a (b|c)> <!ELEMENT b (#PCDATA)> <!ELEMENT c(#PCDATA)> が与えられているとき、ASN.1抽象構文(型)は、 となる。
【0030】2.2.1.3 「?」オペレータ 「?」オペレータは、ASN.1抽象構文ではsequ
ence型とキーワード「OPTIONAL」の組み合
わせで表現する。例えば、DTDとして、 <!ELEMENT a (b?)> <!ELEMENT b (#PCDATA)> が与えらるとき、ASN.1抽象構文(型)は、 となる。
【0031】2.2.1.4 「*」オペレータ 「*」オペレータは、ASN.1抽象構文ではsequ
ence−of型で表現する。例えば、DTDとして、 <!ELEMENT a (b*)> <!ELEMENT b (#PCDATA)> が与えられるとき、ASN.1抽象構文(型)は、 A ::= SEQUENCE OF B B ::= NULL となる。
【0032】2.2.1.5 「+」オペレータ 「+」オペレータは、ASN.1抽象構文ではサイズが
制限されたsequence−of型で表現する。ただ
し、サイズ制限は符号化には影響しないため、「+」オ
ペレータに対する符号は「*」オペレータに対するそれ
と同じものになる。例えば、DTDとして、 <!ELEMENT a (b+)> <!ELEMENT b (#PCDATA)> が与えられるとき、ASN.1抽象構文(型)は、 A ::= SEQUENCE SIZE (1 .. MAX) OF B B ::= NULL となる。
【0033】2.2.1.6 オペレータなし 要素内容には、オペレータの適用されていない要素名が
1つだけ指定されることもある。そのような要素名は、
ASN.1抽象構文ではdefined型で表現する。
例えば、DTDとして、 <!ELEMENT a (b)> <!ELEMENT b (#PCDATA)> が与えられるとき、ASN.1抽象構文(型)は、 A ::= B B ::= NULLとなる。
【0034】2.2.2 混在内容(mixed content) 混在内容は、キーワード「#PCDATA」と1つ以上
の要素名を「|」オペレータで結合した後、「*」オペ
レータを適用したものである。そこで、ASN.1抽象
構文ではchoice型とsequence−of型の
組み合わせで表現する。例えば、DTDとして、 <!ELEMENT a (#PCDATA|b)*> <!ELEMENT b (#PCDATA)> が与ええられるとき、ASN.1抽象構文(型)は、 となる。ここで、txtは便宜上導入した識別子であ
り、混在内容に含まれるテキストに対応する。
【0035】2.2.3 空要素(EMPTY) 空要素は、ASN.1抽象構文ではnull型で表現す
る。例えば、DTDが、 <!ELEMENT a EMPTY> の場合はASN.1抽象構文(型)は、 A ::= NULL となる。
【0036】2.2.4 任意要素(ANY) 任意要素は、キーワード「#PCDATA」とDTDで
宣言されたすべての要素名から構成される混在内容と等
価である。従って、任意要素のASN.1抽象構文にお
ける表現は、混在内容のそれに帰着される。
【0037】2.3 ステップ2−2 ステップ2−2では、ステップ2−1のDTDに従うX
MLデータからテキストを分離する。例えば、XMLデ
ータが、 の場合、要素bから「10」が、要素cから「20」が
分離される。その結果、XMLデータ(要素名および構
造)は次のようになる。
【0038】分離されたテキストを圧縮する方法は、例
えば、XMillなどのように、要素ごとにまとめた
後、圧縮することができる。なお、その他の圧縮方法を
適用してももちろん良い。
【0039】2.4 ステップ2−3 ステップ2−3では、ステップ2−2のXMLデータ
を、ステップ2−1のASN.1抽象構文(型)に従う
ASN.1抽象構文(値)に変換する。例えば、AS
N.1抽象構文(型)が、 の場合、以下のXMLデータ(要素名および構造)、 をASN.1抽象構文(値)に変換すると、 となる。
【0040】2.5 ステップ2−4 ステップ2−4では、ASN.1で規定されている符号
化規則に従って、ステップ2−3のASN.1抽象構文
(値)をASN.1転送構文に変換する。そのような規
則にはBERやDER、PER(ALIGNED/UN
ALIGNED)などがある。しかしながら、符号化効
率を向上する観点からPER(UNALIGNED)を
利用することが好ましい。尤も、BER、DER、PE
R(ALIGNED)を利用してもよいことは勿論であ
る。
【0041】2.6 ステップ2−5 ステップ2−5では、テキストを圧縮する。圧縮の具体
的方法については、周知のLZ77等を用いる。その
他、従来技術の項で説明した公知技術を用いることがで
きる。圧縮は、要素ごとに行われても良く、また、各要
素をまとめて圧縮しても良い。
【0042】2.7 ステップ2−6 ステップ2−6では、ASN.1転送構文と圧縮テキス
トを併合する。両データを単に結合することも可能であ
るが、復号時の分離を考慮したセパレータをデータ間に
挿入し、あるいはデータビット数情報を持つヘッダ等を
付加しても良い。
【0043】3.復号化手順 3.1 システム構成と手順の概要 図2は本実施の形態の復号化システムの一例をその機能
について示したブロック図である。本実施の形態の復号
化システムは、構文(型)生成装置3−1、転送構文復
号装置3−2、抽象構文復号装置3−3、併合装置3−
4、分離装置3−5、解凍装置3−6を有する。
【0044】構文(型)生成装置3−1は、前記した構
文(型)生成装置2−1と同様に、DTDをASN.1
抽象構文(型)に変換する。分離装置3−5は、符号化
されたXMLデータからASN.1転送構文と圧縮テキ
ストを分離し、転送構文復号装置3−2は、ASN.1
転送構文をASN.1抽象構文(型)に従うASN.1
抽象構文(値)に変換する。抽象構文復号装置3−3
は、ASN.1抽象構文(値)をDTDに従うXMLデ
ータ(要素名と構造)に変換する。併合装置3−4は復
号化されたテキスト(要素の内容)とXMLデータ(要
素名と構造)を併合し、XMLデータを生成する。解凍
装置3−6は、圧縮テキストを解凍する。
【0045】このような復号化システムを用いた本実施
の形態の復号化方法の手順は、前記符号化の手順をほぼ
逆に行う。その概要は以下のとおりである。 (ステップ3−1) DTDをASN.1抽象構文
(型)に変換する。 (ステップ3−2) 符号化XMLデータを圧縮テキス
トとASN.1転送構文に分離する。なお、ステップ3
−2は、ステップ3−1と並行に行われても良く、ステ
ップ3−1よりも先に行われても良い。 (ステップ3−3) ASN.1転送構文を、ステップ
3−1のASN.1抽象構文(型)に従うASN.1抽
象構文(値)に変換する。 (ステップ3−4) ステップ3−3のASN.1抽象
構文(値)を、ステップ3−1のDTDに従うXMLデ
ータ(要素名と構造)に変換する。 (ステップ3−5) ステップ3−2で分離した圧縮テ
キストを解凍する。 (ステップ3−6) ステップ3−4のXMLデータ
(要素名と構造)にステップ3−5で解凍したテキスト
を結合する。
【0046】なお、前記ステップ3−1〜ステップ3−
6における復号化の各処理は、それに相当する符号化の
場合の逆であって自明である。よって、その詳細な説明
を省略する。以下、DTDの変換およびそのDTDに従
うXMLデータのPERによる符号化の具体例を示す。
【0047】4.「,」オペレータを含む場合 ここでは、「,」オペレータを含むDTDと、それに従
うXMLデータを例にとる。以下のDTD、 <!ELEMENT a (b、c)> <!ELEMENT b (#PCDATA)> <!ELEMENT c (#PCDATA)> が与えられている場合、前記ステップ2−1で生成され
るASN.1抽象構文(型)は、 となる。このようなDTDに従う符号化対象のXMLデ
ータとして、 を例示すれば、前記ステップ2−2で分離される要素
(XMLデータの要素名と構造)は、 となる。この要素から前記ステップ2−3で生成される
ASN.1抽象構文(値)は、 となる。
【0048】PERでは、sequence型の値は、
原則としてその構成要素の値がその順番で符号化され
る。しかし、ここではbやcの値はnullであり、n
ullは空ビット列に符号化されるため、aの値は空ビ
ット列となる。その場合に、符号は例外的に、 00000000(2) のようになる。このようにして、ASN.1転送構文が
生成される。なお、このようなASN.1転送構文の生
成は前記ステップ2−4で行われる。また、下付き文字
の“(2)”は2進数であることを示す。
【0049】その後、前記ステップ2−5で圧縮処理さ
れた圧縮テキストとASN.1転送構文(ここでは「00
000000(2)」)が前記ステップ2−6で併合され、符号
化XMLデータが生成される。
【0050】5.「|」オペレータを含む場合ここで
は、「|」オペレータを含むDTDと、それに従うXM
Lデータを例にとる。以下のDTD、 <!ELEMENT a (b|c)> <!ELEMENT b (#PCDATA)> <!ELEMENT c(#PCDATA)> が与えられている場合、前記ステップ2−1で生成され
るASN.1抽象構文(型)は、 となる。このようなDTDに従う符号化対象のXMLデ
ータとして、 を例示すれば、前記ステップ2−2で分離される要素
(XMLデータの要素名と構造)は、 となる。この要素から前記ステップ2−3で生成される
ASN.1抽象構文(値)は、 a A ::= b:NULL となる。
【0051】PERでは、choice型の値は、まず
選択された構成要素のインデクス(0ベース)が符号化
され、次にその構成要素の値が符号化される。ここでは
bが選択されているため、インデクスは0である。ま
た、bの値はnull である。従って、aの値は、 0XXXXXXX(2) のようになる。ここで、Xは、8ビットの倍数にするた
めに付加されたパディング・ビットを表わす。このよう
にして、ASN.1転送構文が生成される。なお、圧縮
テキストの生成および圧縮テキストとASN.1転送構
文の併合は前記“4.「,」オペレータを含む場合”と
同様である。
【0052】6.「?」オペレータを含む場合 ここでは、「?」オペレータを含むDTDと、それに従
うXMLデータを例にとる。以下のDTD、 <!ELEMENT a (b?、c)> <!ELEMENT b (#PCDATA)> <!ELEMENT c (#PCDATA)> が与えられている場合、前記ステップ2−1で生成され
るASN.1抽象構文(型)は、 となる。このようなDTDに従う符号化対象のXMLデ
ータとして、 を例示すれば、前記ステップ2−2で分離される要素
(XMLデータの要素名と構造)は、 となる。この要素から前記ステップ2−3で生成される
ASN.1抽象構文(値)は、 となる。
【0053】PERでは、sequence型の構成要
素が少なくとも1つ「OPTIONAL」と指定されて
いる場合に、各構成要素の値が符号化される前に、どの
構成要素が存在しているかを表わすビット列が付加され
る。ビットは、構成要素が存在する場合に1、存在しな
い場合に0となる。ここではbだけが「OPTIONA
L」と指定されており、それが存在しているため、まず
ビット列1 が付加される。次にbとcの値が符号化さ
れるが、それらは共にnullであるため、aの値は、 1XXXXXXX(2) のようになる。このようにして、ASN.1転送構文が
生成される。なお、圧縮テキストの生成および圧縮テキ
ストとASN.1転送構文の併合は前記“4.「,」オ
ペレータを含む場”と同様である。
【0054】7.「*」オペレータを含む場合 ここでは、「*」オペレータを含むDTDと、それに従
うXMLデータを例にとる。以下のDTD、 <!ELEMENT a (b*)> <!ELEMENT b (#PCDATA)> が与えられている場合、前記ステップ2−1で生成され
るASN.1抽象構文(型)は、 A ::= SEQUENCE OF B B ::= NULL となる。このようなDTDに従う符号化対象のXMLデ
ータとして、 を例示すれば、前記ステップ2−2で分離される要素
(XMLデータの要素名と構造)は、 となる。この要素から前記ステップ2−3で生成される
ASN.1抽象構文(値)は、 となる。
【0055】PERでは、sequence−of型の
値は、まずその構成要素の数が符号化され、次に各構成
要素の値がその順番で符号化される。ここでは構成要素
の数は2であり、まずその値が符号化される。次に各構
成要素の値が符号化されるが、それらはすべてnull
であるため、aの値は、00000010(2) のようになる。こ
のようにして、ASN.1転送構文が生成される。な
お、圧縮テキストの生成および圧縮テキストとASN.
1転送構文の併合は前記“4.「,」オペレータを含む
場合”と同様である。
【0056】8.混在内容を含む場合 ここでは、混在内容を含むDTDと、それに従うXML
データを例にとる。以下のDTD、 <!ELEMENT a (#PCDATA|b)*> <!ELEMENT b (#PCDATA)> が与えられている場合、前記ステップ2−1で生成され
るASN.1抽象構文(型)は、 となる。このようなDTDに従う符号化対象のXMLデ
ータとして、 を例示すれば、前記ステップ2−2で分離される要素
(XMLデータの要素名と構造)は、 となる。
【0057】なお、上記において「xxx」はテキスト
の内容を示し、「txt」は要素がテキストであること
を示す。この要素から前記ステップ2−3で生成される
ASN.1抽象構文(値)は、 となる。
【0058】sequence−of型の値とchoi
ce型の値をPERで符号化する方法は、前述の通りで
ある。ここでは、構成要素の数は3である。また、構成
要素としてtxt、b、bがその順番で選択されている
ため、インデクスは0、 1、1となる。それらの値は
すべてnullであるため、aの値は、 00000011(2) 011XXXXX(2) のようになる。このようにして、ASN.1転送構文が
生成される。なお、圧縮テキストの生成および圧縮テキ
ストとASN.1転送構文の併合は前記“4.「,」オ
ペレータを含む場合”と同様である。
【0059】(実施の形態2)前記実施の形態1では、
XMLデータは要素とテキストだけから構成され、その
他のもの(例えば、属性や処理命令)は別の方法で管理
されると仮定して説明を行った。本実施の形態では、属
性や処理命令等が含まれる場合の処理の一例を説明す
る。すなわち、それら属性等を特別な要素で表現し、X
MLデータの中に埋め込む方法を例示する。この場合、
文法も変更する必要がある。なお、本実施の形態の例に
関わらず、属性等をXMLデータから分離して、XPo
interなどと共に別に格納する方法を採用すること
も可能である。このような属性等を特別な要素としてX
MLデータに埋め込む方策は、前記実施の形態1の処理
の前処理および後処理として把握することが可能であ
る。これにより広い範囲のXMLデータを扱えるように
なる。以下では、そのような前処理の例として、DTD
で定義される項目をXMLデータの中に埋め込む方法を
説明する。
【0060】9.1 前処理システムと前処理の概要 図3は、本実施の形態の前処理システムの一例をその機
能について示したブロック図である。本実施の形態の前
処理システムは、DTD変換装置9−1、XMLデータ
変換装置9−2、符号化装置9−3を有する。
【0061】DTD変換装置9−1は、一般のDTDを
要素以外の項目についても考慮したDTD’に変換す
る。XMLデータ変換装置9−2は、一般のDTDに従
うXMLデータをDTD’に従うXMLデータ’に変換
する。符号化装置9−3は、実施の形態1の符号化シス
テムである。
【0062】本実施の形態の前処理方法は、装置9−1
によるDTDの変換および装置9−2によるXMLデー
タの変換の各ステップを有する。各々変換後、実施の形
態1の符号化処理を行うことにより符号化XMLデータ
が生成される。
【0063】9.2 DTDの変換処理 DTDには、要素型宣言以外に属性リスト宣言、エンテ
ィティ宣言、記法宣言の3つの宣言が含まれうる。
【0064】エンティティ宣言で定義されるエンティテ
ィには、パース対象エンティティ、パース対象外エンテ
ィティ、パラメータ・エンティティがある。パース対象
エンティティは、テキストや属性値など、あらゆる場所
で参照されうる。このエンティティは、単純に展開す
る。また、パース対象外エンティティは、属性値でしか
参照されえない。従って、属性を処理できれば十分であ
る。一方、パラメータ・エンティティは、DTDの中で
しか参照されえない。従って、パラメータ・エンティテ
ィは本実施の形態では考慮しない。
【0065】記法宣言で定義される記法は、属性値でし
か参照されえない。従って、属性を処理できれば十分で
ある。
【0066】以上の議論から、DTDに対する前処理
は、要素型宣言と属性リスト宣言に対するそれに帰着さ
れる。
【0067】属性リスト宣言では、ある要素に付与され
る属性と、その属性の取りうる値が定義される。また、
必要であれば、デフォルト値も定義される。属性は、
「REQUIRED」であるか、「IMPLIED」で
あるか、デフォルト値が定義されているか、それは「F
IXED」であるかで、要素に対する付与のされ方が変
わる。従って、属性は原則として要素で表現することに
するが、その定義に従って表現を多少変えることが好ま
しい。
【0068】属性リスト宣言に従って要素型宣言を変更
する規則は、以下のとおりである。 (1)属性は、要素(以下、属性要素)で表現する。要
素名は、属性名から一意に決定できるようにする。例え
ば、“親の要素名”+“_”+“属性名”のようにす
る。ただし、要素名がすでに使用されていないことに注
意する。以下では、この命名規則に従うことにする。 (2)属性値はすべて「CDATA」として扱い、属性
要素に含める。 (3)属性要素は、親要素の子要素の先頭に挿入する。 (4)「REQUIRED」属性は、要素で表現する。 (5)「IMPLIED」属性は、「?」オペレータが
適用された要素で表現する。 (6)デフォルト値が定義されている属性は、「?」オ
ペレータが適用された要素で表現する。 (7)「FIXED」デフォルト値が定義されている属
性は、無視する。
【0069】以下具体例をあげる。例えば、DTDとし
て、 が与えられたとき、DTD’は、 <!ELEMENT a (a_w、a_x?、a_y?、b、c)> <!ELEMENT a_w (#PCDATA)> <!ELEMENT a_x (#PCDATA)> <!ELEMENT a_y (#PCDATA)> となる。
【0070】9.3 XMLデータの変換処理 ここでは、上記のDTDに従うXMLデータを上記DT
D’に従うXMLデータ’に変換する。基本的には、要
素に付与されている属性を属性要素に変換し、その属性
要素をその要素の子要素の先頭に挿入すればよい。ただ
し、属性にデフォルト値が定義されており、属性値がそ
れと一致するのであれば、属性要素には変換しない。
【0071】例えば、9.2におけるDTDに従うXM
Lデータとして、 を例示すれば、XMLデータ’は、 に変換される。ここで、a要素にはx属性が付与されて
いないため、a_x要素は現れていない。また、y属性
の値はデフォルト値と一致するため、a_y要素も現れ
ていない。さらに、z属性は「FIXED」デフォルト
値が定義されているため、削除されている。
【0072】9.4 後処理システムと後処理の概要 図4は、本実施の形態の後処理システムの一例をその機
能について示したブロック図である。本実施の形態の後
処理システムは、DTD変換装置9−4、復号化装置9
−5、XMLデータ変換装置9−6を有する。
【0073】DTD変換装置9−4はDTD変換装置9
−1と同様である。復号化装置9−5は、実施の形態1
の復号化システムである。XMLデータ変換装置9−6
は、DTD’に従うXMLデータ’からDTDに従うX
MLデータに変換する。
【0074】本実施の形態の後処理方法は、装置9−4
によるDTDの変換および装置9−6によるXMLデー
タの変換の各ステップを有する。実施の形態1の復号化
処理の後、これらステップを実行する。装置9−4によ
るDTDの変換は9.2と同様であり、装置9−6によ
るXMLデータの変換は9.3の変換を逆に行うことに
より実行できる。よって、詳細な説明は省略する。な
お、図中破線矢印は、必要があればDTDを参照するこ
とを意味する。属性要素を識別でき、かつその要素名か
ら属性名を一意に決定できるのであれば、DTDを参照
する必要はない。また、後処理は前処理がいかに行われ
たかに依存するので、前記前処理が異なる場合に本実施
の形態の後処理もそれに併せて変更されることは勿論で
ある。
【0075】10.実施の形態の効果 上記した実施の形態1、2の符号化方法を用いれば、X
MLデータを効率良く圧縮することが可能である。以
下、XCompとの比較において、本実施の形態の効果
を説明する。
【0076】XMLデータを符号化するときに、DTD
から一意に決定される情報は符号化しないという点で、
本手法とXCompは同じである。しかし、XComp
は、XMLデータがある特定の構造をしている場合に、
圧縮効率が悪くなる。具体的には、要素に「?」オペレ
ータや「*」オペレータ(「+」オペレータを含む)が
適用された場合である。
【0077】10.1 「?」オペレータ 本実施の形態の手法は要素が存在するかどうかをビット
列で表現するのに対して、XCompは存在する要素
(選択肢)に付与されたインデクスを羅列する。この差
は、「?」オペレータが適用された要素がいくつか連続
し、それらがすべて存在する場合に顕著に現れる。
【0078】例えば、DTD: <!ELEMENT a (b?、c?)> <!ELEMENT b (#PCDATA)> <!ELEMENT c (#PCDATA)> に従うXMLデータ: を考える。このXMLデータには、要素bと要素cが共
に存在している。このXMLデータは、本手法では11
(2)に符号化される。ただし、簡単のため、パディン
グ・ビットは付加していない。
【0079】一方、XCompでは、オートマトン: が作成されたとすると、インデクス列11が得られる。
このインデクス列を0ベースに変換し、必要最小限のビ
ット数で符号化すると、符号000(2)が得られる。
本手法による符号とXCompによるそれを比較する
と、本手法のほうが1ビットだけ短く符号化できること
が分かる。
【0080】表1に、「?」オペレータが適用された要
素がいくつか連続し、それらがすべて存在する場合に、
それらを符号化するのに必要なビット数を、本手法とX
Compで比較したものを示す。表1から、本手法はX
Compと同じか、それよりも効率よく符号化できるこ
とが分かる。一般には、「?」オペレータが適用された
要素がn個連続する場合に、XCompはO(nlog
n)ビットを必要とするのに対して、本手法はO
(n)ビットで十分である。
【0081】
【表1】
【0082】10.2 「*」オペレータ 本実施の形態の手法は存在する要素の数を符号化するの
に対して、XCompは存在する要素(選択肢)に付与
されたインデクスを羅列する。この差は、「*」オペレ
ータが適用された要素がいくつも存在する場合に顕著に
現れる。
【0083】例えば、DTD: <!ELEMENT a (b*)> <!ELEMENT b (#PCDATA)> に従うXMLデータ: を考える。ここで、要素bは8回出現しているとする。
このXMLデータは、本手法では00001000
(2)に符号化される。
【0084】一方、XCompでは、オートマトン: が作成されたとすると、インデクス列11111111
2が得られる。このインデクス列を0ベースに変換し、
必要最小限のビット数で符号化すると、符号00000
0001(2)が得られる。本手法による符号とXCo
mpによるそれとを比較すると、本手法のほうが1ビッ
トだけ短く符号化できることが分かる。
【0085】図5に、「*」オペレータが適用された要
素がいくつも存在する場合に、それらを符号化するのに
必要なビット数を、本手法とXCompで比較したもの
を示す。同図から、要素が8つ以上存在する場合に、本
手法はXCompよりも効率よく符号化できることが分
かる。本手法は、一般にはXCompと同じオーダのビ
ット数を必要とするが、実質的にはそれよりも少ないビ
ット数で十分である。
【0086】以上、本発明者によってなされた発明を発
明の実施の形態に基づき具体的に説明したが、本発明は
前記実施の形態に限定されるものではなく、その要旨を
逸脱しない範囲で種々変更可能である。
【0087】たとえば、本発明の手法は、複数のオペレ
ータを組み合わせて適用しても良い。内容モデルで使用
されうるオペレータには、「,」、「|」、「?」、
「*」(「+」 を含む)の4つがある。従って、適用
順序を考慮に入れると、それらの組み合わせは16通り
ある。各組み合わせに対して、前記実施の形態と同様に
XMLデータをASN.1抽象構文に変換することがで
きる。よって、本発明を利用してあらゆるオペレータの
組合せを含むXMLデータを符号化できる。
【0088】また、前記実施の形態で説明した手法のポ
イントの1つは、文法やそれに従うXMLデータのAS
N.1抽象構文における表現を定義したことである。し
かし、それとは別の表現も考えられる。
【0089】たとえば、「?」オペレータは、前記実施
の形態ではsequence型とキーワード「OPTI
ONAL」の組み合わせで表現した。具体的には、DT
D: <!ELEMENT a (b?、c)> は、ASN.1抽象構文: に変換される。
【0090】しかし、先のDTDはASN.1抽象構
文: に変換されてもよい。このように変換されるほうが、B
ERやDERで符号化する場合に符号が短くなるため都
合がよい。
【0091】ただし、この方法では、以下のDTD: <!ELEMENT a (b?)> <!ELEMENT a (b?|c)> のような場合にうまく機能しないので、実施の形態のよ
うに表現するほうが妥当である。
【0092】また、前記実施の形態では、オペレータは
何からの型で表現される。例えば、「,」オペレータは
sequence型で表現され、「|」オペレータはc
hoice型で表現される。一方、オペレータの適用を
プロダクションと見なし、すべてsequence型で
表現するという方法も採れる。その場合に、seque
nce 型で表現されていない「|」オペレータ、
「*」オペレータ(「+」オペレータを含む)およびオ
ペレータなしは、次のように表現できる。
【0093】すなわち、<!ELEMENT a(b|c)>は、 と表現できる。また、<!ELEMENT a (b*)>は、 と表現できる。また、<!ELEMENT a (b)>は、 A ::= SEQUENCE { b B } と表現できる。
【0094】この表現法では、sequence型で統
一的に表現することで、見た目には分かりやすくなる。
また、オペレータをsequence型でラップするこ
とに相当するので、複数のオペレータを組み合わせても
うまく機能することが分かる。ただし、BERやDER
では常に型が符号化されるため、型を挿入すればするほ
ど符号は長くなる。従って、必要以上の型を挿入するべ
きではなく、その理由から前記実施の形態の手法で表現
するほうが妥当である。
【0095】
【発明の効果】本願で開示される発明のうち、代表的な
ものによって得られる効果は、以下の通りである。すな
わち、XMLデータの符号化(圧縮)効率を高めること
が可能になり、また、属性等要素以外の記述を含めたX
MLデータの符号化(圧縮)が可能になる。これによ
り、XMLデータの転送による通信負荷を軽減し、ま
た、XMLデータのストレージ容量を少なくできる。
【図面の簡単な説明】
【図1】本発明の一実施の形態である符号化システムの
一例をその機能について示したブロック図である。
【図2】本発明の一実施の形態である復号化システムの
一例をその機能について示したブロック図である。
【図3】本発明の一実施の形態である前処理システムの
一例をその機能について示したブロック図である。
【図4】本発明の一実施の形態である後処理システムの
一例をその機能について示したブロック図である。
【図5】本実施の形態の符号化手法の符号化率をXCo
mpとの比較において示した図である。
【符号の説明】
2−1…構文(型)生成装置、2−2…分離装置、2−
3…構文(値)生成装置、2−4…転送構文生成装置、
2−5…圧縮装置、2−6…併合装置、3−1…構文
(型)生成装置、3−2…転送構文復号装置、3−3…
抽象構文復号装置、3−4…併合装置、3−5…分離装
置、3−6…解凍装置、9−1…DTD変換装置、9−
2…XMLデータ変換装置、9−3…符号化装置、9−
4…DTD変換装置、9−5…復号化装置、9−6…X
MLデータ変換装置。
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) // G06F 17/21 570 G06F 17/21 570G (72)発明者 今村 剛 神奈川県大和市下鶴間1623番地14 日本ア イ・ビー・エム株式会社 東京基礎研究所 内 Fターム(参考) 5B009 SA07 5B082 GA01 5B089 HB10 KA08 KH04 KH28 5J064 AA02 BA11 BC02 BD03

Claims (23)

    【特許請求の範囲】
  1. 【請求項1】 XMLデータの文法を定義する文法定義
    をASN.1抽象構文(型)に変換するステップと、 前記XMLデータを、要素の内容(テキスト)と構造
    (構造を含む要素名)とに分離するステップと、 前記構造を、前記ASN.1抽象構文(型)に従うAS
    N.1抽象構文(値)に変換するステップと、 前記ASN.1抽象構文(値)をASN.1転送構文に変
    換するステップと、 前記要素の内容を圧縮するステップと、 圧縮された前記要素の内容と前記ASN.1転送構文と
    を併合するステップと、 を含むXMLデータの符号化方法。
  2. 【請求項2】 前記文法定義に属性、処理命令その他前
    記要素以外の文法定義項目を有し、 前記要素以外の文法定義項目を特別要素として前記要素
    に含めるように前記文法定義を他の文法定義に変換する
    ステップと、 前記他の文法定義に従うように、前記XMLデータを他
    のXMLデータに変換するステップと、 をさらに有する請求項1記載のXMLデータの符号化方
    法。
  3. 【請求項3】 前記文法定義はDTDであり、 前記DTDの要素内容には、「,」、「|」、「?」、
    「*」または「+」から選択される単一または複数のオ
    ペレータが含まれ、または前記オペレータを含まず、 前記ASN.1抽象構文(型)において、 前記「,」オペレータは、sequence型で表現
    し、 前記「|」オペレータは、choice型で表現し、 前記「?」オペレータは、sequence型とキーワ
    ード「OPTIONAL」の組み合わせで表現し、 前記「*」オペレータは、sequence−of型で
    表現し、 前記「+」オペレータは、サイズが制限されたsequ
    ence−of型で表現し、 前記オペレータが無いときには、defined型で表
    現する、 請求項1または2記載のXMLデータの符号化方法。
  4. 【請求項4】 前記文法定義を他の文法定義に変換する
    ステップにおいて、 前記文法定義に含まれる属性を、一意に決定できる属性
    要素として表現し、前記属性の親要素の子要素として扱
    い、 前記属性の属性値は、「CDATA」として前記属性要
    素の子要素として扱い、 前記属性が「REQUIRED」属性の場合、前記属性
    要素を要素で表現し、 前記属性が「IMPLIED」属性の場合、または、前
    記属性にデフォルト値が定義されている場合、前記属性
    要素を「?」オペレータが適用された要素で表現し、 前記XMLデータを他のXMLデータに変換するステッ
    プにおいて、 前記XMLデータの要素に含まれる属性を、一意に決定
    できる属性要素として表現し、前記属性の親要素の子要
    素として扱う(ただし前記属性にデフォルト値が定義さ
    れ、かつ前記属性の属性値が前記デフォルト値と一致す
    る場合を除く)、 請求項3記載のXMLデータの符号化方法。
  5. 【請求項5】 前記ASN.1抽象構文(値)を前記A
    SN.1転送構文に変換するステップにおいて、PER
    規則を用いる請求項1または2記載のXMLデータの符
    号化方法。
  6. 【請求項6】 XMLデータの文法を定義する文法定義
    をASN.1抽象構文(型)に変換するステップと、 符号化されたXMLデータを、ASN.1転送構文と圧
    縮された要素の内容(テキスト)とに分離するステップ
    と、 前記ASN.1転送構文を、前記ASN.1抽象構文
    (型)に従うASN.1抽象構文(値)に変換するステ
    ップと、 前記ASN.1抽象構文(値)を、前記文法定義に従う
    XMLデータの構造(構造を含む要素名)に変換するス
    テップと、 前記圧縮された要素の内容を解凍するステップと、 前記解凍された要素の内容と前記XMLデータの構造と
    を併合するステップと、 を含む符号化されたXMLデータの復号化方法。
  7. 【請求項7】 前記文法定義に属性、処理命令その他前
    記要素以外の文法定義項目を有し、 前記要素以外の文法定義項目を特別要素として前記要素
    に含めるように前記文法定義を他の文法定義に変換する
    ステップと、 前記文法定義に従うように、前記復号化されたXMLデ
    ータを他のXMLデータに変換するステップと、 をさらに有する請求項6記載の符号化されたXMLデー
    タの復号化方法。
  8. 【請求項8】 前記文法定義はDTDであり、 前記DTDの要素内容には、「,」、「|」、「?」、
    「*」または「+」から選択される単一または複数のオ
    ペレータが含まれ、または前記オペレータを含まず、 前記ASN.1抽象構文(型)において、 前記「,」オペレータは、sequence型で表現
    し、 前記「|」オペレータは、choice型で表現し、 前記「?」オペレータは、sequence型とキーワ
    ード「OPTIONAL」の組み合わせで表現し、 前記「*」オペレータは、sequence−of型で
    表現し、 前記「+」オペレータは、サイズが制限されたsequ
    ence−of型で表現し、 前記オペレータが無いときには、defined型で表
    現する、 請求項6または7記載の符号化されたXMLデータの復
    号化方法。
  9. 【請求項9】 前記文法定義を他の文法定義に変換する
    ステップにおいて、 前記文法定義に含まれる属性を、一意に決定できる属性
    要素として表現し前記属性の親要素の子要素として扱
    い、 前記属性の属性値は、「CDATA」として前記属性要
    素の子要素として扱い、 前記属性が「REQUIRED」属性の場合、前記属性
    要素を要素で表現し、 前記属性が「IMPLIED」属性の場合、または、前
    記属性にデフォルト値が定義されている場合、前記属性
    要素を「?」オペレータが適用された要素で表現し、 前記復号化されたXMLデータを他のXMLデータに変
    換するステップにおいて、 前記復号化されたXMLデータの要素に子要素として含
    まれる前記属性要素を、前記要素の属性またはその属性
    値に変換する、 請求項8記載の符号化されたXMLデータの復号化方
    法。
  10. 【請求項10】 前記ASN.1転送構文を前記AS
    N.1抽象構文(値)に変換するステップにおいて、P
    ER規則を用いる請求項6または7記載の符号化された
    XMLデータの復号化方法。
  11. 【請求項11】 XMLデータの文法を定義する文法定
    義をASN.1抽象構文(型)に変換する手段と、 前記XMLデータを、要素の内容(テキスト)と構造
    (構造を含む要素名)とに分離する手段と、 前記構造を、前記ASN.1抽象構文(型)に従うAS
    N.1抽象構文(値)に変換する手段と、 前記ASN.1抽象構文(値)をASN.1転送構文に変
    換する手段と、 前記要素の内容を圧縮する手段と、 圧縮された前記要素の内容と前記ASN.1転送構文と
    を併合する手段と、 を含むXMLデータの符号化システム。
  12. 【請求項12】 前記文法定義に属性、処理命令その他
    前記要素以外の文法定義項目を有し、 前記要素以外の文法定義項目を特別要素として前記要素
    に含めるように前記文法定義を他の文法定義に変換する
    手段と、 前記他の文法定義に従うように、前記XMLデータを他
    のXMLデータに変換する手段と、 をさらに有する請求項11記載のXMLデータの符号化
    システム。
  13. 【請求項13】 前記文法定義はDTDであり、 前記DTDの要素内容には、「,」、「|」、「?」、
    「*」または「+」から選択される単一または複数のオ
    ペレータが含まれ、または前記オペレータを含まず、 前記ASN.1抽象構文(型)において、 前記「,」オペレータは、sequence型で表現
    し、 前記「|」オペレータは、choice型で表現し、 前記「?」オペレータは、sequence型とキーワ
    ード「OPTIONAL」の組み合わせで表現し、 前記「*」オペレータは、sequence−of型で
    表現し、 前記「+」オペレータは、サイズが制限されたsequ
    ence−of型で表現し、 前記オペレータが無いときには、defined型で表
    現する、 請求項11または12記載のXMLデータの符号化シス
    テム。
  14. 【請求項14】 前記文法定義を他の文法定義に変換す
    る手段において、 前記文法定義に含まれる属性を、一意に決定できる属性
    要素として表現し、前記属性の親要素の子要素として扱
    い、 前記属性の属性値は、「CDATA」として前記属性要
    素の子要素として扱い、 前記属性が「REQUIRED」属性の場合、前記属性
    要素を要素で表現し、 前記属性が「IMPLIED」属性の場合、または、前
    記属性にデフォルト値が定義されている場合、前記属性
    要素を「?」オペレータが適用された要素で表現し、 前記XMLデータを他のXMLデータに変換する手段に
    おいて、 前記XMLデータの要素に含まれる属性を、一意に決定
    できる属性要素として表現し、前記属性の親要素の子要
    素として扱う(ただし前記属性にデフォルト値が定義さ
    れ、かつ前記属性の属性値が前記デフォルト値と一致す
    る場合を除く)、 請求項13記載のXMLデータの符号化システム。
  15. 【請求項15】 前記ASN.1抽象構文(値)を前記
    ASN.1転送構文に変換する手段において、PER規
    則を用いる請求項11または12記載のXMLデータの
    符号化システム。
  16. 【請求項16】 XMLデータの文法を定義する文法定
    義をASN.1抽象構文(型)に変換する手段と、 符号化されたXMLデータを、ASN.1転送構文と圧
    縮された要素の内容(テキスト)とに分離する手段と、 前記ASN.1転送構文を、前記ASN.1抽象構文
    (型)に従うASN.1抽象構文(値)に変換する手段
    と、 前記ASN.1抽象構文(値)を、前記文法定義に従う
    XMLデータの構造(構造を含む要素名)に変換する手
    段と、 前記圧縮された要素の内容を解凍する手段と、 前記解凍された要素の内容と前記XMLデータの構造と
    を併合する手段と、 を含む符号化されたXMLデータの復号化システム。
  17. 【請求項17】 前記文法定義に属性、処理命令その他
    前記要素以外の文法定義項目を有し、 前記要素以外の文法定義項目を特別要素として前記要素
    に含めるように前記文法定義を他の文法定義に変換する
    手段と、 前記文法定義に従うように、前記復号化されたXMLデ
    ータを他のXMLデータに変換する手段と、 をさらに有する請求項16記載の符号化されたXMLデ
    ータの復号化システム。
  18. 【請求項18】 前記文法定義はDTDであり、 前記DTDの要素内容には、「,」、「|」、「?」、
    「*」または「+」から選択される単一または複数のオ
    ペレータが含まれ、または前記オペレータを含まず、 前記ASN.1抽象構文(型)において、 前記「,」オペレータは、sequence型で表現
    し、 前記「|」オペレータは、choice型で表現し、 前記「?」オペレータは、sequence型とキーワ
    ード「OPTIONAL」の組み合わせで表現し、 前記「*」オペレータは、sequence−of型で
    表現し、 前記「+」オペレータは、サイズが制限されたsequ
    ence−of型で表現し、 前記オペレータが無いときには、defined型で表
    現する、 請求項16または17記載の符号化されたXMLデータ
    の復号化システム。
  19. 【請求項19】 前記文法定義を他の文法定義に変換す
    る手段において、 前記文法定義に含まれる属性を、一意に決定できる属性
    要素として表現し、前記属性の親要素の子要素として扱
    い、 前記属性の属性値は、「CDATA」として前記属性要
    素の子要素として扱い、 前記属性が「REQUIRED」属性の場合、前記属性
    要素を要素で表現し、 前記属性が「IMPLIED」属性の場合、または、前
    記属性にデフォルト値が定義されている場合、前記属性
    要素を「?」オペレータが適用された要素で表現し、 前記復号化されたXMLデータを他のXMLデータに変
    換する手段において、 前記復号化されたXMLデータの要素に子要素として含
    まれる前記属性要素を、前記要素の属性またはその属性
    値に変換する、 請求項18記載の符号化されたXMLデータの復号化シ
    ステム。
  20. 【請求項20】 前記ASN.1転送構文を前記AS
    N.1抽象構文(値)に変換する手段において、PER
    規則を用いる請求項16または17記載の符号化された
    XMLデータの復号化システム。
  21. 【請求項21】 コンピュータが実行可能なプログラム
    であって、コンピュータに、 XMLデータの文法を定義する文法定義をASN.1抽
    象構文(型)に変換する機能と、 前記XMLデータを、要素の内容(テキスト)と構造
    (構造を含む要素名)とに分離する機能と、 前記構造を、前記ASN.1抽象構文(型)に従うAS
    N.1抽象構文(値)に変換する機能と、 前記ASN.1抽象構文(値)をASN.1転送構文に変
    換する機能と、 前記要素の内容を圧縮する機能と、 圧縮された前記要素の内容と前記ASN.1転送構文と
    を併合する機能と、 を実現させるためのプログラム。
  22. 【請求項22】 コンピュータが実行可能なプログラム
    であって、コンピュータに、 XMLデータの文法を定義する文法定義をASN.1抽
    象構文(型)に変換する機能と、 符号化されたXMLデータを、ASN.1転送構文と圧
    縮された要素の内容(テキスト)とに分離する機能と、 前記ASN.1転送構文を、前記ASN.1抽象構文
    (型)に従うASN.1抽象構文(値)に変換する機能
    と、 前記ASN.1抽象構文(値)を、前記文法定義に従う
    XMLデータの構造(構造を含む要素名)に変換する機
    能と、 前記圧縮された要素の内容を解凍する機能と、 前記解凍された要素の内容と前記XMLデータの構造と
    を併合する機能と、 を実現させるためのプログラム。
  23. 【請求項23】 コンピュータ読取可能な記録媒体であ
    って、 コンピュータに、XMLデータの文法を定義する文法定
    義をASN.1抽象構文(型)に変換する機能と、前記
    XMLデータを、要素の内容(テキスト)と構造(構造
    を含む要素名)とに分離する機能と、前記構造を、前記
    ASN.1抽象構文(型)に従うASN.1抽象構文
    (値)に変換する機能と、前記ASN.1抽象構文
    (値)をASN.1転送構文に変換する機能と、前記要
    素の内容を圧縮する機能と、圧縮された前記要素の内容
    と前記ASN.1転送構文とを併合する機能と、を実現
    させるための第1プログラム、または、 コンピュータに、XMLデータの文法を定義する文法定
    義をASN.1抽象構文(型)に変換する機能と、符号
    化されたXMLデータを、ASN.1転送構文と圧縮さ
    れた要素の内容(テキスト)とに分離する機能と、前記
    ASN.1転送構文を、前記ASN.1抽象構文(型)
    に従うASN.1抽象構文(値)に変換する機能と、前
    記ASN.1抽象構文(値)を、前記文法定義に従うX
    MLデータの構造(構造を含む要素名)に変換する機能
    と、前記圧縮された要素の内容を解凍する機能と、前記
    解凍された要素の内容と前記XMLデータの構造とを併
    合する機能と、を実現させるための第2プログラム、 の何れかのプログラムが記録された記録媒体。
JP2001027462A 2001-02-02 2001-02-02 Xmlデータの符号化方法、符号化されたxmlデータの復号化方法、xmlデータの符号化システム、符号化されたxmlデータの復号化システム、プログラムおよび記録媒体 Expired - Fee Related JP3894280B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001027462A JP3894280B2 (ja) 2001-02-02 2001-02-02 Xmlデータの符号化方法、符号化されたxmlデータの復号化方法、xmlデータの符号化システム、符号化されたxmlデータの復号化システム、プログラムおよび記録媒体
US10/047,958 US7143397B2 (en) 2001-02-02 2002-01-15 XML data encoding and decoding

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001027462A JP3894280B2 (ja) 2001-02-02 2001-02-02 Xmlデータの符号化方法、符号化されたxmlデータの復号化方法、xmlデータの符号化システム、符号化されたxmlデータの復号化システム、プログラムおよび記録媒体

Publications (2)

Publication Number Publication Date
JP2002244894A true JP2002244894A (ja) 2002-08-30
JP3894280B2 JP3894280B2 (ja) 2007-03-14

Family

ID=18892112

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001027462A Expired - Fee Related JP3894280B2 (ja) 2001-02-02 2001-02-02 Xmlデータの符号化方法、符号化されたxmlデータの復号化方法、xmlデータの符号化システム、符号化されたxmlデータの復号化システム、プログラムおよび記録媒体

Country Status (2)

Country Link
US (1) US7143397B2 (ja)
JP (1) JP3894280B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005018672A (ja) * 2003-06-30 2005-01-20 Hitachi Ltd 構造化文書の圧縮方法
US7231591B2 (en) 2003-03-31 2007-06-12 Nec Corporation Computer system suitable for communications of structured documents
JP2008123122A (ja) * 2006-11-09 2008-05-29 Mitsubishi Electric Corp Sipメッセージ圧縮解凍モジュール生成装置、通信装置およびsipメッセージ圧縮解凍方法
US7668860B2 (en) * 2007-04-02 2010-02-23 Business Objects Software Ltd. Apparatus and method for constructing and using a semantic abstraction for querying hierarchical data
KR100950026B1 (ko) 2007-08-31 2010-03-29 (주)지슨 에이에스엔.1 을 이용하여 데이터를 연동하는 시스템과데이터 연동 장치, 에이에스엔.1을 이용하여 이종시스템으로 송출할 데이터를 인코딩하는 방법 및 이종시스템과의 데이터 연동 방법
JP2012502337A (ja) * 2008-09-08 2012-01-26 トムソン ライセンシング 要素の符号化方法と装置

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8751391B2 (en) * 2002-03-29 2014-06-10 Jpmorgan Chase Bank, N.A. System and process for performing purchase transactions using tokens
US7669120B2 (en) * 2002-06-21 2010-02-23 Microsoft Corporation Method and system for encoding a mark-up language document
EP1609285B1 (en) * 2003-02-14 2007-11-07 Research In Motion Limited System and method of compact messaging in network communications
ATE405032T1 (de) * 2003-02-14 2008-08-15 Research In Motion Ltd System und verfahren zum komprimieren von strukturierter definition-sprache
US7720794B2 (en) * 2003-08-05 2010-05-18 International Business Machines Corporation Identifying resource and data instances in management systems
GB2412978A (en) * 2004-04-07 2005-10-12 Hewlett Packard Development Co Method and system for compressing and decompressing hierarchical data structures
AU2004318284B2 (en) * 2004-04-09 2008-10-30 Huawei Technologies Co., Ltd. ASN.1 protocol processor and method for ASN.1 protocol processing
US7885980B2 (en) 2004-07-02 2011-02-08 Oracle International Corporation Mechanism for improving performance on XML over XML data using path subsetting
US8769401B2 (en) * 2004-08-05 2014-07-01 Digi International Inc. Method for compressing XML documents into valid XML documents
US20060075391A1 (en) * 2004-10-05 2006-04-06 Esmonde Laurence G Jr Distributed scenario generation
US8346737B2 (en) * 2005-03-21 2013-01-01 Oracle International Corporation Encoding of hierarchically organized data for efficient storage and processing
US7461335B2 (en) 2005-05-31 2008-12-02 Sap Ag Dynamic conversion of data into markup language format
US7933928B2 (en) 2005-12-22 2011-04-26 Oracle International Corporation Method and mechanism for loading XML documents into memory
US8024427B2 (en) * 2006-01-09 2011-09-20 Microsoft Corporation Dynamic storage of documents
US7593949B2 (en) * 2006-01-09 2009-09-22 Microsoft Corporation Compression of structured documents
US7565339B2 (en) * 2006-03-31 2009-07-21 Agiledelta, Inc. Knowledge based encoding of data
US9460064B2 (en) * 2006-05-18 2016-10-04 Oracle International Corporation Efficient piece-wise updates of binary encoded XML data
US7405677B2 (en) * 2006-08-08 2008-07-29 International Business Machines Corporation Apparatus, system, and method for incremental encoding conversion of XML data using Java
US20080077606A1 (en) * 2006-09-26 2008-03-27 Motorola, Inc. Method and apparatus for facilitating efficient processing of extensible markup language documents
US7739251B2 (en) * 2006-10-20 2010-06-15 Oracle International Corporation Incremental maintenance of an XML index on binary XML data
US8010889B2 (en) * 2006-10-20 2011-08-30 Oracle International Corporation Techniques for efficient loading of binary XML data
US7627566B2 (en) * 2006-10-20 2009-12-01 Oracle International Corporation Encoding insignificant whitespace of XML data
US9953103B2 (en) * 2006-11-16 2018-04-24 Oracle International Corporation Client processing for binary XML in a database system
US7836396B2 (en) * 2007-01-05 2010-11-16 International Business Machines Corporation Automatically collecting and compressing style attributes within a web document
US7747558B2 (en) * 2007-06-07 2010-06-29 Motorola, Inc. Method and apparatus to bind media with metadata using standard metadata headers
US7831540B2 (en) * 2007-10-25 2010-11-09 Oracle International Corporation Efficient update of binary XML content in a database system
US7991768B2 (en) 2007-11-08 2011-08-02 Oracle International Corporation Global query normalization to improve XML index based rewrites for path subsetted index
US8543898B2 (en) 2007-11-09 2013-09-24 Oracle International Corporation Techniques for more efficient generation of XML events from XML data sources
US8250062B2 (en) 2007-11-09 2012-08-21 Oracle International Corporation Optimized streaming evaluation of XML queries
US9842090B2 (en) 2007-12-05 2017-12-12 Oracle International Corporation Efficient streaming evaluation of XPaths on binary-encoded XML schema-based documents
US8145794B2 (en) * 2008-03-14 2012-03-27 Microsoft Corporation Encoding/decoding while allowing varying message formats per message
KR101419885B1 (ko) 2008-04-10 2014-07-16 (주)휴맥스 적응적 복호화 장치 및 방법
US8429196B2 (en) 2008-06-06 2013-04-23 Oracle International Corporation Fast extraction of scalar values from binary encoded XML
FR2943441A1 (fr) 2009-03-18 2010-09-24 Canon Kk Procede de codage ou decodage d'un document structure a l'aide d'un schema xml, dispositif et structure de donnees associes
US8997207B2 (en) * 2009-09-24 2015-03-31 Sap Ag Modular secure data transfer
US20110107201A1 (en) * 2009-10-29 2011-05-05 Microsoft Corporation Representing complex document structure via simpler structure through isomorphism
US8255372B2 (en) 2010-01-18 2012-08-28 Oracle International Corporation Efficient validation of binary XML data
EP2570921A1 (de) * 2011-06-14 2013-03-20 Siemens Aktiengesellschaft Verfahren und Vorrichtungen zum Austausch von Daten
US10756759B2 (en) 2011-09-02 2020-08-25 Oracle International Corporation Column domain dictionary compression
US8812523B2 (en) 2012-09-28 2014-08-19 Oracle International Corporation Predicate result cache
KR102126018B1 (ko) 2013-11-06 2020-06-23 삼성전자주식회사 필드의 위치 정보를 포함하는 패킷을 처리하는 송, 수신 노드의 동작 방법 및 필드의 위치 정보를 포함하는 패킷

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3305191B2 (ja) 1996-03-19 2002-07-22 富士通株式会社 文書管理装置及びデータ圧縮方法及びデータ復元方法
KR19980033054A (ko) * 1996-10-23 1998-07-25 윌리엄비.켐플러 프로그램 가능 메모리 액세스
JP2925084B1 (ja) * 1998-07-10 1999-07-26 トーヨーテクノ株式会社 開口レーザーラインマーカー
JP4003854B2 (ja) * 1998-09-28 2007-11-07 富士通株式会社 データ圧縮装置及び復元装置並びにその方法
JP2000357568A (ja) * 1999-06-14 2000-12-26 Harness Syst Tech Res Ltd 放電式ランプのソケット
US6772413B2 (en) * 1999-12-21 2004-08-03 Datapower Technology, Inc. Method and apparatus of data exchange using runtime code generator and translator
US7024413B2 (en) * 2000-07-26 2006-04-04 International Business Machines Corporation Method of externalizing legacy database in ASN.1-formatted data into XML format

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7231591B2 (en) 2003-03-31 2007-06-12 Nec Corporation Computer system suitable for communications of structured documents
JP2005018672A (ja) * 2003-06-30 2005-01-20 Hitachi Ltd 構造化文書の圧縮方法
JP2008123122A (ja) * 2006-11-09 2008-05-29 Mitsubishi Electric Corp Sipメッセージ圧縮解凍モジュール生成装置、通信装置およびsipメッセージ圧縮解凍方法
US7668860B2 (en) * 2007-04-02 2010-02-23 Business Objects Software Ltd. Apparatus and method for constructing and using a semantic abstraction for querying hierarchical data
KR100950026B1 (ko) 2007-08-31 2010-03-29 (주)지슨 에이에스엔.1 을 이용하여 데이터를 연동하는 시스템과데이터 연동 장치, 에이에스엔.1을 이용하여 이종시스템으로 송출할 데이터를 인코딩하는 방법 및 이종시스템과의 데이터 연동 방법
JP2012502337A (ja) * 2008-09-08 2012-01-26 トムソン ライセンシング 要素の符号化方法と装置

Also Published As

Publication number Publication date
JP3894280B2 (ja) 2007-03-14
US7143397B2 (en) 2006-11-28
US20030018466A1 (en) 2003-01-23

Similar Documents

Publication Publication Date Title
JP3894280B2 (ja) Xmlデータの符号化方法、符号化されたxmlデータの復号化方法、xmlデータの符号化システム、符号化されたxmlデータの復号化システム、プログラムおよび記録媒体
Girardot et al. Millau: an encoding format for efficient representation and exchange of XML over the Web
US6883137B1 (en) System and method for schema-driven compression of extensible mark-up language (XML) documents
US8819287B2 (en) System and method for compressing URL request parameters
JP3368883B2 (ja) データ圧縮装置、データベースシステム、データ通信システム、データ圧縮方法、記憶媒体及びプログラム伝送装置
EP0813167B1 (en) Method and apparatus for font compression and decompression
US20020029229A1 (en) Systems and methods for data compression
Sundaresan et al. Algorithms and programming models for efficient representation of XML for Internet applications
EP1803225A1 (en) Adaptive compression scheme
JP2004514966A (ja) Mpeg−7インスタンス用の二進フォーマット
JP2004535034A (ja) 階層化ツリーを圧縮する方法及び圧縮されたマルチメディア信号をデコーディングする方法
US6304676B1 (en) Apparatus and method for successively refined competitive compression with redundant decompression
KR20020069229A (ko) 텍스트 도큐먼트들을 압축하기 위한 방법 및 장치
US7676742B2 (en) System and method for processing of markup language information
WO2014029081A1 (zh) 压缩方法及设备
KR100653189B1 (ko) 엑스엠엘 문서 변환 장치 및 그 방법
Al-Shammary et al. SOAP web services compression using variable and fixed length coding
US10762281B1 (en) Prefix compression for keyed values
JP2001136075A (ja) データ圧縮/復元装置及びデータ圧縮/復元プログラムを記録した記憶媒体
Hoang et al. Dictionary selection using partial matching
JP4093193B2 (ja) データ圧縮方法及びプログラムならびにデータ復元方法及び装置
Alakuijala et al. RFC 7932: Brotli Compressed Data Format
Yokoo An improvement of dynamic Huffman coding with a simple repetition finder
JP2005284903A (ja) 文書符号化装置、文書復号化装置、文書符号化方法及び文書復号化方法
Yokoo et al. Data compression by context sorting

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051107

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20060207

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20060210

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060508

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

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20061117

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061205

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20091222

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20101222

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20101222

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20111222

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20111222

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20121222

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20121222

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20131222

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees