(57)【特許請求の範囲】
【請求項１】
記憶手段が設けられており、該記憶手段に、コンテンツモデル「混合型」"mixed"を伴うデータ型「複合型」"Complex Type"をもつＸＭＬベースドキュメント（ＤＯＣ）の要素のテキストコンテンツと、所定のバイナリ構造コード（ＳＢＣ）との対応関係を表す少なくとも１つの情報が格納されているコーディング装置を用いて、ＸＭＬスキーマ言語定義に従うコンテンツを含むＸＭＬベースドキュメント（ＤＯＣ）をコーディングする方法において、
前記コーディング装置内のエンコーダ（ＥＮＣ）を用いて、ドキュメントのコンテンツに対し前記コーディング装置内のコードテーブル（ＣＴ）を介してバイナリ構造コード（ＳＢＣ）を割り当てることにより、コーディングされたドキュメントのバイナリ表現（ＢＤＯＣ）を生成し、
前記エンコーダ（ＥＮＣ）により、コンテンツモデル「混合型」"mixed"を伴うデータ型「複合型」"ComplexType"をもつＸＭＬベースドキュメント（ＤＯＣ）の要素のテキストコンテンツに対し、所定のバイナリ構造コード（ＳＢＣ）を割り当てることを特徴とする方法。
【請求項２】
請求項１記載の方法において、
前記エンコーダ（ＥＮＣ）を用いた、コンテンツモデル「混合型」"mixed"を伴うデータ型「複合型」"Complex Type"のテキストコンテンツに対する前記所定のバイナリ構造コード（ＳＢＣ）の割り当てを、もっぱらOperandTBCコーディングテーブルを介して行うことを特徴とする方法。
【請求項３】
請求項１または２記載の方法において、
前記エンコーダ（ＥＮＣ）により、コンテンツモデル「混合型」"mixed"を伴うデータ型「複合型」"Complex Type"のテキストコンテンツに対し「ポジションコード」"Posotion Codes"も割り当てることを特徴とする方法。
【請求項４】
請求項３記載の方法において、
前記「ポジションコード」"Position Codes"を割り当てるときに「単一要素ポジションコード」"Single Element Position Codes"(SPC) および／または「複数要素ポジションコード」"Multiple Element Position Codes"(MPC) を使用することを特徴とする方法。
【請求項５】
請求項３または４記載の方法において、
前記「ポジションコード」"Position Codes"を可変長のコードによりコーディングすることを特徴とする方法。
【請求項６】
請求項５記載の方法において、
前記「ポジションコード」"Position Codes"をvluimsbf5コードによりコーディングすることを特徴とする方法。
【請求項７】
記憶手段が設けられており、該記憶手段に、前記所定のバイナリ構造コード（ＳＢＣ）と、コンテンツモデル「混合型」"mixed"を伴うデータ型「複合型」"Complex Type"をもつＸＭＬベースドキュメント（ＤＯＣ）の要素のテキストコンテンツとの対応関係を表す少なくとも１つの情報が格納されているデコーディング装置を用い、請求項１から６のいずれか１項記載の方法によりコーディングされたＸＭＬベースドキュメント（ＤＯＣ）のバイナリ表現をデコーディングする方法において、
エンコーダ（ＥＮＣ）によるコーディングにより所定のバイナリ構造コード（ＳＢＣ）が割り当てられている、コンテンツモデル「混合型」"mixed"を伴うデータ型「複合型」"ComplexType"をもつＸＭＬベースドキュメント（ＤＯＣ）の要素のテキストコンテンツのバイナリ表現を、前記デコーダ装置内のデコーダ（ＤＥＣ）により、前記所定のバイナリ構造コード（ＳＢＣ）に割り当てられたＸＭＬベースドキュメント（ＤＯＣ）のテキストコンテンツに変換することを特徴とする方法。
【請求項８】
請求項７記載の方法において、
前記デコーダ（ＤＥＣ）を用いた、所定のバイナリ構造コード（ＳＢＣ）に対する前記テキストコンテンツの割り当てを、もっぱらOperandTBCコーディングテーブルを介して行うことを特徴とする方法。
【請求項９】
請求項３から６のいずれか１項記載の方法により前記エンコーダ（ＥＮＣ）によりコーディングされたＸＭＬベースドキュメント（ＤＯＣ）をデコーディングするための請求項７または８記載の方法において、
コンテンツモデル「混合型」"mixed"を伴うデータ型「複合型」"Complex Type"のテキストコンテンツのバイナリ表現を、前記デコーダを用いて「ポジションコード」"Position Codes"によりアドレッシングして、割り当てられたポジションでテキストコンテンツに変換することを特徴とする方法。
【請求項１０】
請求項９記載の方法において、
前記「ポジションコード」"Position Codes"には「単一要素ポジションコード」"Single Element Position Codes"(SPC) および／または「複数要素ポジションコード」"Multiple Element Position Codes"(MPC) が含まれることを特徴とする方法。
【請求項１１】
請求項９または１０記載の方法において、
前記「ポジションコード」"Position Codes"は可変長のコードによりコーディングされていることを特徴とする方法。
【請求項１２】
請求項１１記載の方法において、
前記「ポジションコード」"Position Codes"はvluimsbf5コードによりコーディングされていることを特徴とする方法。
【請求項１３】
コーディング装置およびデコーディング装置によりＸＭＬベースドキュメントをコーディングおよびデコーディングする方法において、
請求項１から６のいずれか１項記載の方法と請求項７から１２のいずれか１項記載の方法が含まれていることを特徴とする方法。
【請求項１４】
請求項１から６のいずれか１項記載の方法に従いＸＭＬベースドキュメントをコーディングする装置において、
記憶手段が設けられており、
該記憶手段に、コンテンツモデル「混合型」"mixed"を伴うデータ型「複合型」"Complex Type"をもつＸＭＬベースドキュメント（ＤＯＣ）の要素のテキストコンテンツと、所定のバイナリ構造コード（ＳＢＣ）との対応関係を表す少なくとも１つの情報が格納されていることを特徴とする装置。
【請求項１５】
請求項７から１２のいずれか１項記載の方法に従いコーディングされたＸＭＬベースドキュメントのバイナリ表現をデコーディングする装置において、
記憶手段が設けられており、
該記憶手段に、所定のバイナリ構造コード（ＳＢＣ）と、コンテンツモデル「混合型」"mixed"を伴うデータ型「複合型」"Complex Type"をもつＸＭＬベースドキュメント（ＤＯＣ）の要素のテキストコンテンツとの対応関係を表す少なくとも１つの情報が格納されていることを特徴とする装置。
【請求項１６】
ＸＭＬベースドキュメント（ＤＯＣ）をコーディングおよびデコーディングする装置において、
請求項１４記載の装置と請求項１５記載の装置が含まれていることを特徴とする装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＸＭＬスキーマ言語定義に従ったコンテンツが含まれているＸＭＬベースのドキュメントをコーディングする方法、この方法に対応したデコーディング方法ならびにコーディング・デコーディング装置に関する。
【０００２】
ＸＭＬ（extensible markup language）は、ＸＭＬスキーマ言語定義によりドキュメントのコンテンツを構造化して記述できるようにした言語である。ＸＭＬスキーマの詳細ならびにその際に使用される構造、データ型ならびにコンテンツモデルについては参考文献［１］、［２］、［３］を参照されたい。
【０００３】
従来技術によれば、ＸＭＬベースドキュメントをコーディングされたバイナリ表現に変換するようにしたＸＭＬベースドキュメントのコーディング方法が知られている。さらにたとえばＭＰＥＧ−７コーディング標準として作成された文献［４］には、ＸＭＬベースドキュメントをコーディングおよびデコーディングする方法について記載されている。
【０００４】
従来技術により知られているＸＭＬベースドキュメントのバイナリ表現を生成する方法は、コンテンツモデル「混合型」"mixed"を伴う「複合型」"Complex Type"というデータ型のコーディングにおいて欠点を有しており、その理由は、このようなデータ型は要素のほかにテキスト内容も含まれている可能性があるけれども、それらはデータ流全体をデコーディングすることによってしか再構成できないからである。データ型「複合型」"Complex Type"ならびにコンテンツモデル"mixed"の詳細については文献［１］を参照されたい。
【０００５】
したがって本発明の課題は、ＸＭＬベースのドキュメントをコーディングする方法において、コンテンツモデル「混合型」"mixed"をもつデータ型「複合型」"Complex Type"におけるコーディングされたテキストコンテンツにいっそう簡単にアクセスできるようにすることである。
【０００６】
本発明によればこの課題は、独立請求項に記載の構成により解決される。従属請求項には本発明の有利な実施形態が記載されている。
【０００７】
本発明によるコーディング方法によれば、ＸＭＬベースのドキュメントに対するコーディングされたバイナリ表現が生成されるが、これはドキュメントのコンテンツに対しコーディングテーブルを介してバイナリ構造コード binary structure code を割り当てることによって行われ、その際にコンテンツモデル"mixed"をもつデータ型「複合型」"Complex type"のテキストコンテンツに構造コード structure code が割り当てられる。ここで構造コードとは、文献［４］のセクション７．６．１に定義されているスキーマブランチコード（schema branch code SBC）のことである。文献［４］で述べられているドキュメントのコンテンツに対する構造コードの割り当てによって、このコンテンツの位置をＸＭＬドキュメントの構造内でシグナリングまたはアドレッシングすることができる。
【０００８】
基本的には本発明によれば、コンテンツモデル"mixed"を伴うデータ型「複合型」"Complex Type"のテキストコンテンツがコーディング割り当てに際して型の定義における要素宣言のように扱われる。したがってコーディングのため型定義において宣言される要素のほか、その型に対しコンテンツモデルmixedが定義されているならば、テキストコンテンツに対し決められた構造コードも付加的に割り当てられる。これによりコーディングされるデータストリーム内のテキストコンテンツがアドレッシングされ、その結果、データストリーム全体をデコーディングする必要なくそのコンテンツにアクセスすることができる。
【０００９】
本発明によるコーディング方法に関する１つの有利な実施形態によれば、コンテンツモデル"mixed"を伴うデータ型「複合型」"Complex Type"のテキストコンテンツに対する構造コードの割り当てが、もっぱらOperandTBCコーディングテーブルを介して行われる。このコーディングテーブルにより、いわゆる OperandTBC すなわちいわゆるオペランドノードのＴＢＣ（TBC = Tree Branch Code ツリーブランチコード）が決定される。オペランドＴＢＣおよびオペランドノードの詳細ならびに定義については、文献［４］のセクション７．６．１ならびに７．６．５．２を参照されたい。
【００１０】
格別有利な実施形態によれば、コンテンツモデル"mixed"を伴うデータ型"Complex Type"に対しさらに「ポジションコード」"Position Code"が割り当てられる。これは文献［４］のセクション７．６．５．５で詳しく説明されているポジションコードである。コンテンツモデル"mixed"を伴うデータ型"Complex Type"には複数のテキストコンテンツが含まれている可能性があるので、これによってデータ型内のどのポジションにテキストコンテンツが存在しているのかに関する情報が伝達される。
【００１１】
殊に有利な実施形態によれば、「ポジションコード」の割り当てにあたり「単一要素ポジションコード」"Single Element Position Codes"および／または「複数要素ポジションコード」"Multiple Element Position Codes"が使用される。これらのポジションコードについては、文献［４］のセクション７．６．５．５で詳しく説明されている。単一要素ポジションコードが殊に用いられるのは、ＸＭＬスキーマ定義における「複合型」"Complex Type"の型定義において「モデルグループ」"Model Group"なしが２回以上頻繁に現れる可能性のあるときである。「モデルグループ」"Model Group"の定義については文献［２］を参照されたい。この場合、単一要素ポジションコードによって、データ型のインスタンス化における個々のパーティクルに関してコンテンツのポジションが決定される。パーティクルの定義についても文献［２］を参照されたい。単一要素ポジションコードは、テキストコンテンツが最大でMPA+1回宣言されているものとしてコーディングされ、ここでMPAとはそのデータ型において可能なすべてのパーティクル・インスタンス化の個数を表す。複数要素ポジションコードが用いられるのは、"Complex Type"の定義においてＸＭＬスキーマ定義で「モデルグループ」"Model Groups"が２回以上の頻度で現れる可能性のあるときである。複数要素ポジションコードは、全部で2*MPA+1回のポジションがアドレッシングされる可能性があるものとしてコーディングされ、その際、このコードによりデータ型のインスタンス化におけるすべてのパーティクルに関してコンテンツのポジションが表される。
【００１２】
別の有利な実施形態によれば、ポジションコードが可変長のコードたとえばvluimsbf5 コードによりコーディングされる。このコードについては文献［４］のセクション４．３で述べられている。
【００１３】
上述のコーディング方法のほか本発明にはさらにデコーディング方法も含まれており、これによれば上述のコーディング方法に従いコーディングされたＸＭＬベースドキュメントのバイナリ表現がデコーディングされる。このデコーディング方法によれば、コーディングにより構造コード（ＳＢＣ）が割り当てられておりコンテンツモデル"mixed"を伴うデータ型"Complex Type"のテキストコンテンツのバイナリ表現が、構造コード（ＳＢＣ）に割り当てられたＸＭＬベースドキュメントのテキストコンテンツに変換される。
【００１４】
コーディング方法と同様、１つの有利な実施形態によれば、構造コード（ＳＢＣ）による割り当てがオペランドＴＢＣ OperandTBC コーディングテーブルを介して行われる。
【００１５】
１つの有利な実施形態によればさらに、コンテンツモデル"mixed"を伴うデータ型"Complex Type"のテキストコンテンツのバイナリ表現が"Position Codes"によりアドレッシングされて、割り当てられたポジションでテキストコンテンツに変換される。この場合も"Position Codes"に、「単一要素ポジションコード」"Single Element Position Codes"および／または「複数要素ポジションコード」"Multiple Element PositionCodes"を含めることができる。これらのポジションコードは、コーディング方法に関して定義されているのと同じポジションコードである。コーディング方法と同様、「ポジションコード」"Position Codes"をさらに可変長コードでコーディングすることができ、その際、それらのコードはポジションコード変換によりテキストコンテンツにデコーディングされる。有利にはポジションコードは、vluimsbf5 コードによってコーディングされる。
【００１６】
上述のコーディング方法ならびにデコーディング方法のほか、本発明にはさらにコーディング・デコーディング方法も含まれており、この方法には本発明によるコーディング方法と本発明によるデコーディング方法が含まれている。
【００１７】
さらに本発明は、本発明によるコーディング方法を実施可能なＸＭＬベースドキュメントをコーディングする装置にも関する。この装置は記憶手段を有しており、この記憶手段内に、コンテンツモデル"mixed"を伴うデータ型"Complex Type"のテキストコンテンツと構造コードとの少なくとも１つの対応づけが格納されている。同様に本発明は、ＸＭＬベースドキュメントのバイナリ表現をデコーディングする装置にも関する。この装置は、本発明によるデコーディング方法を実施できるように構成されている。この装置は記憶手段を有しており、この記憶手段には、構造コードとコンテンツモデル"mixed"を伴うデータ型"Complex Type"のテキストコンテンツとの少なくとも１つの対応づけが格納されている。
【００１８】
さらに本発明は、ＸＭＬベースドキュメントのコーディング・デコーディング装置にも関する。この装置には、本発明による上述のコーディング装置と本発明による上述のデコーディング装置が含まれている。
【００１９】
次に、添付の図面を参照しながら本発明に実施例について詳しく説明する。
【００２０】
図１は、エンコーダとデコーダとを備えた本発明によるコーディング・デコーディングシステムの基本原理を示す図である。
図２は、たとえばコンテンツモデル"mixed"を備えたデータ型「複合型」"Complex Type"が定義されているＸＭＬスキーマ定義を示す図である。
図３は、図２のＸＭＬスキーマ定義で宣言されている要素"MixedElement"がインスタンス化されるＸＭＬドキュメントを示す図である。
図４は、図３のＸＭＬドキュメントにおいてインスタンス化された要素"MixedElement"の構造を描いた図である。
図５は、インスタンスモデル"mixed"をもつデータ型「複合型」"Complex Type"における構造コードの割り当てについて説明する図である。
図６は、コンテンツモデル"mixed"をもつデータ型「複合型」"Complex Type"において"PositionCodes"の割り当てについて説明する図である。
【００２１】
図１には、ＸＭＬドキュメントＤＯＣをコーディングないしはデコーディングするエンコーダＥＮＣとデコーダＤＥＣを備えたコーディング・デコーディングシステムが例示されている。エンコーダもデコーダも双方ともにいわゆるＸＭＬスキーマＳを有しており、ここではＸＭＬドキュメントにおいて通信に利用される要素と型が宣言され定義されている。エンコーダおよびデコーダにおいて、相応のスキーマコンパイルＳＣを介してスキーマＳからコードテーブルＣＴが生成される。ＸＭＬドキュメントＤＯＣがコーディングされるとき、ＸＭＬドキュメントのコンテンツに対しコードテーブルを介してバイナリコードが割り当てられる。これによりドキュメントＤＯＣのバイナリ表現ＢＤＯＣが生成され、デコーダにおけるコードテーブルＣＴを用いてこれをデコーディングすることができる。
【００２２】
本発明による方法は、コンテンツモデル"mixed"を伴うデータ型「複合型」Complex Type"のテキストコンテンツに対しバイナリの構造コードが割り当てられることを特徴としている。これによって、バイナリ表現ＢＤＯＣ全体をデコーディングする必要なく、バイナリ表現ＢＤＯＣからテキストデータを取り出すことができるようになる。
【００２３】
図２には一例としてスキーマＳが描かれており、このスキーマにおいて４行目から１０行目までで"Example"という名前の要素が宣言されており、この要素には"MixedType"型である"MixedElement"という名前の要素がさらに含まれている。１２行目から１７行目までで"MixedType"型が定義されている。ここではコンテンツモデル"mixed"を伴うデータ型"ComplexType"（複合型）を対象としており、このことはたとえば１２行目に示されている。"MixedType"型には、"firstElement"と"secondElement"という名前をもつ２つの要素が含まれており、これらの要素はともに"string"型である。
【００２４】
図３には、ＸＭＬドキュメントにおける"MixedElement"の要素をインスタンス化する様子が描かれている。コンテンツモデル"mixed"には文字列 string としてテキストコンテンツが含まれている可能性があるので、第１の要素と第２の要素である"firstElement"と"secondElement"の前、後またはそれらの間にテキストコンテンツが現れる可能性がある。図３の実施例の場合には全部で３つのテキストコンテンツが現れている。
【００２５】
図４には、図３においてインスタンス化された要素"MixedElement"の構造がツリー構造として再度描かれている。この場合、一番上のMixedElement/mixedTypeノードから第１の階層平面において５つの別のノードが枝分かれしており、これらのノードにはテキストコンテンツも要素"firstElement"もしくは"secondElement"も含まれている。要素"firstElement"および"secondElement"には、第２の階層平面においてさらに対応するコンテンツ"Content of firstElement"もしくは"Content of secondElement"が含まれている。
【００２６】
ＸＭＬ言語に基づく任意のドキュメントをいわゆるツリー構造によって表すことができ、その際にＸＭＬドキュメントのコンテンツによってツリー構造におけるノードが形成され、いわゆるコンテキストパス"context path"がそれらのノードへ通じている。ツリー構造のノードに対し、コーディングによってバイナリ構造コードが割り当てられる。
【００２７】
従来技術によれば、図４に示されている要素のノード"MixedElement"のために１つの構造コードが親ノードに、ならびに要素"firstElement"および"secondElement"に割り当てられる。この場合、親ノードとは、次に高い階層平面において要素"MixedElement"と結ばれているノードのことである。これとは異なり本発明による方法によれば、構造コードが親ノードと要素"firstElement"と"secondElement"とに対して与えられるだけでなく、さらにテキストコンテンツに対しても構造コードが割り当てられる。このことは図５に示されており、これによればコード00が親ノードに割り当てられ、コード01がテキストコンテンツに割り当てられ、さらにコード10もしくは11が"firstElement"もしくは"secondElement"に割り当てられる。
【００２８】
さらに本発明による方法の場合、図６に示されているように個々のテキストコンテンツに対して「ポジションコード」"Position Code"も割り当てることができる。全部で３つのポジションにテキストコンテンツが現れる可能性があるので、そのために３つの「ポジションコード」が必要とされ、この場合、図６によればコード00, 01, 10が使われる。
文献リスト：
[1] http://www.w3.org/TR/2001/REC-xmlschema-0-20010502/
[2] http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/
[3] http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/
[4] ISO/IEC FDIS 15938-1 "Information Technology - Multimedia Content Description Interface -Part 1: Systems", Geneva 2002
【図面の簡単な説明】
【００２９】
【図１】エンコーダとデコーダとを備えた本発明によるコーディング・デコーディングシステムの基本原理を示す図
【図２】たとえばコンテンツモデル"mixed"を備えたデータ型「複合型」"Complex Type"が定義されているＸＭＬスキーマ定義を示す図
【図３】図２のＸＭＬスキーマ定義で宣言されている要素"MixedElement"がインスタンス化されるＸＭＬドキュメントを示す図
【図４】図３のＸＭＬドキュメントにおいてインスタンス化された要素"MixedElement"の構造を描いた図
【図５】インスタンスモデル"mixed"をもつデータ型「複合型」"Complex Type"における構造コードの割り当てについて説明する図
【図６】コンテンツモデル"mixed"をもつデータ型「複合型」"Complex Type"において"PositionCodes"の割り当てについて説明する図
【図１】
0004695398.tif 000002
【図２】
0004695398.tif 000003
【図３】
0004695398.tif 000004
【図４】
0004695398.tif 000005
【図５】
0004695398.tif 000006
【図６】
0004695398.tif 000007