(57)【要約】【課題】  コンテンツに関する情報の複合条件検索に有用したメタデータのインデックスを利用したメタデータを検索する装置および方法を提供する。【解決手段】  コンテンツに関する情報を検索するために提供されるメタデータのインデックス構造及びメタデータのインデックスを提供する方法と、前記メタデータのインデックスを利用したメタデータの検索方法とそれを利用したメタデータの検索装置に係り、本発明の一実施例によるコンテンツに関する情報を検索するために提供されるメタデータのインデックス構造は、マルチキー値及び前記マルチキー値に対応するメタデータの識別情報を含むが、前記マルチキーは前記メタデータの所定フィールドを組み合わせて構成され、本発明によってメタデータに対する複合条件検索をさらに効率的に行える。【選択図】  図１２
2005222546.tif 000002
【特許請求の範囲】
【請求項１】
（ａ）検索条件を入力される段階と、
（ｂ）前記入力された検索条件に符合するマルチキー値をメタデータのインデックスから検索する段階と、
（ｃ）前記検索されたマルチキー値を利用して該当メタデータを抽出する段階と、を含むメタデータの検索方法。
【請求項２】
前記マルチキー値は、前記メタデータの所定フィールドを組み合わせて構成される請求項１に記載のメタデータの検索方法。
【請求項３】
前記メタデータのインデックスは、所定のマルチキー値及び前記マルチキー値に対応するメタデータの識別情報を含む請求項１に記載のメタデータの検索方法。
【請求項４】
前記マルチキーリストをさらに含む請求項３に記載のメタデータの検索方法。
【請求項５】
前記マルチキー値の所定範囲を代表する代表キー値をさらに含む請求項４に記載のメタデータの検索方法。
【請求項６】
前記代表キー値は、該当範囲の値のうちの最大値、最小値または中間値である請求項５に記載のメタデータの検索方法。
【請求項７】
前記メタデータは、ツリー構造のデータ構造を有し、前記ツリー構造の所定範囲別に分割されたフラグメントで構成され、
前記マルチキーを構成するフィールドは、前記フラグメントを構成する情報のうちいずれか一つに対応する請求項５に記載のメタデータの検索方法。
【請求項８】
前記メタデータの識別情報は前記フラグメントの識別情報である請求項７に記載のメタデータの検索方法。
【請求項９】
前記マルチキーリストは、前記マルチキーを構成するフィールドが属しているフラグメントの前記データ構造内位置情報と、
前記フィールドの前記フラグメント内位置情報と、
を含む請求項７に記載のメタデータの検索方法。
【請求項１０】
前記位置情報はＸＰａｔｈで表現される請求項９に記載のメタデータの検索方法。
【請求項１１】
前記メタデータはＴＶＡで定義するメタデータの構造を有する請求項１に記載のメタデータの検索方法。
【請求項１２】
前記マルチキー値を検索する段階（ｂ）は、前記入力された検索条件の値と前記マルチキー値とを比較して大きさが一致するマルチキー値を前記メタデータのインデックスから検索する段階である請求項１に記載のメタデータの検索方法。
【請求項１３】
前記マルチキー値の大きさ比較は、前記マルチキーを構成する多数のフィールドｋ１，ｋ２，ｋ３…ｋｎに対して優先順位（ｋ１＞ｋ２＞ｋ３＞…ｋｎ）を付与し、優先順位の高いフィールドから順に相互比較して最初に現れる値の大きさが異なるフィールドにより前記マルチキー値の大きさを決定し、大きさが異なるフィールドがない場合には両マルチキー値の大きさが同一であると判定するものの、各フィールドの比較は該当フィールドの値が数字である場合には算術的な大小比較法則により、文字である場合には辞書的な順序により大小を決定する請求項１２に記載のメタデータの検索方法。
【請求項１４】
前記メタデータを抽出する段階（ｃ）は、
（ｃ１）前記メタデータのインデックスから前記検索されたマルチキー値に対応するメタデータの識別情報を抽出する段階と、
（ｃ２）前記抽出された識別情報を利用して該当メタデータを抽出する段階と、
を含む請求項３に記載のメタデータの検索方法。
【請求項１５】
前記マルチキー値を検索する段階（ｂ）は、
（ｂ１）前記入力された検索条件に符合する前記代表キー値を検索する段階と、
（ｂ２）前記代表キー値が代表する範囲のマルチキー値から前記入力された検索条件に符合するマルチキー値を検索する段階と、
を含む請求項５に記載のメタデータの検索方法。
【請求項１６】
前記マルチキー値を検索する段階（ｂ）は、
（ｂ３）前記マルチキーリストから前記検索条件に符合するマルチキーを検索する段階と、
（ｂ４）前記検索されたマルチキーがインデックスするマルチキー値から前記入力された検索条件に符合するマルチキー値を検索する段階と、
を含む請求項９に記載のメタデータの検索方法。
【請求項１７】
前記マルチキーを検索する段階（ｂ３）は、
（ｂ３−１）前記検索条件のフィールドが属しているフラグメントの前記データ構造内位置情報、及び前記フィールドの前記フラグメント内位置情報を判断する段階と、
（ｂ３−２）前記マルチキーリストから、前記判断された位置情報と一致する位置情報を持つフィールドで構成されたマルチキーを検索する段階と、
を含む請求項１６に記載のメタデータの検索方法。
【請求項１８】
前記検索されたマルチキーがインデックスするマルチキー値から前記入力された検索条件に符合するマルチキー値を検索する段階（ｂ４）は、
（ｂ４−１）前記入力された検索条件に符合する前記代表キー値を検索する段階と、
（ｂ４−２）前記代表キー値が代表する範囲のマルチキー値から前記入力された検索条件に符合するマルチキー値を検索する段階と、
を含む請求項１６に記載のメタデータの検索方法。
【請求項１９】
検索条件を入力される入力部と、
前記入力された検索条件に符合するマルチキー値をメタデータのインデックスから検索し、前記検索されたマルチキー値を利用して該当メタデータを抽出する制御部と、
を含むメタデータの検索装置。
【請求項２０】
前記マルチキーは前記メタデータの所定フィールドを組み合わせて構成される請求項１９に記載のメタデータの検索装置。
【請求項２１】
前記メタデータのインデックスは、所定のマルチキー値及び前記マルチキー値に対応するメタデータの識別情報を含む請求項１９に記載のメタデータの検索装置。
【請求項２２】
前記マルチキーリストをさらに含む請求項２１に記載のメタデータの検索装置。
【請求項２３】
前記マルチキー値の所定範囲を代表する代表キー値をさらに含む請求項２２に記載のメタデータの検索装置。
【請求項２４】
前記代表キー値は、該当範囲の値のうちの最大値、最小値または中間値である請求項２３に記載のメタデータの検索装置。
【請求項２５】
前記メタデータは、ツリー構造のデータ構造を有し、前記ツリー構造の所定範囲別に分割されたフラグメントで構成され、
前記マルチキーを構成するフィールドは前記フラグメントを構成する情報のうちいずれか一つに対応する請求項２３に記載のメタデータの検索装置。
【請求項２６】
前記メタデータの識別情報は前記フラグメントの識別情報である請求項２５に記載のメタデータの検索装置。
【請求項２７】
前記マルチキーリストは、
前記マルチキーを構成するフィールドが属しているフラグメントの前記データ構造内位置情報と、
前記フィールドの前記フラグメント内位置情報と、
を含む請求項２５に記載のメタデータの検索装置。
【請求項２８】
前記位置情報はＸＰａｔｈで表現される請求項２７に記載のメタデータの検索装置。
【請求項２９】
前記メタデータはＴＶＡで定義するメタデータの構造を有する請求項１９に記載のメタデータの検索装置。
【請求項３０】
前記制御部は、前記入力された検索条件の値と前記マルチキー値とを比較して大きさが一致するマルチキー値を前記メタデータのインデックスから検索する請求項１９に記載のメタデータの検索装置。
【請求項３１】
前記マルチキー値の大きさ比較は、前記マルチキーを構成する多数のフィールドｋ１，ｋ２，ｋ３…ｋｎに対して優先順位（ｋ１＞ｋ２＞ｋ３＞…ｋｎ）を付与し、優先順位の高いフィールドから順に相互比較して最初に現れる値の大きさが異なるフィールドにより前記マルチキー値の大きさを決定し、大きさが異なるフィールドがない場合には両マルチキー値の大きさが同一であると判定するものの、各フィールドの比較は該当フィールドの値が数字である場合には算術的な大小比較法則により、文字である場合には辞書的な順序により大小を決定する請求項３０に記載のメタデータの検索装置。
【請求項３２】
前記制御部は、前記メタデータのインデックスから前記検索されたマルチキー値に対応するメタデータの識別情報を抽出し、前記抽出された識別情報を利用して該当メタデータを抽出する請求項２１に記載のメタデータの検索装置。
【請求項３３】
前記制御部は、前記入力された検索条件に符合する前記代表キー値を検索し、前記代表キー値が代表する範囲のマルチキー値から前記入力された検索条件に符合するマルチキー値を検索する請求項２３に記載のメタデータの検索装置。
【請求項３４】
前記制御部は、前記マルチキーリストから前記検索条件に符合するマルチキーを検索し、前記検索されたマルチキーがインデックスするマルチキー値から前記入力された検索条件に符合するマルチキー値を検索する請求項２７に記載のメタデータの検索装置。
【請求項３５】
前記制御部は、前記検索条件のフィールドが属しているフラグメントの前記データ構造内位置情報、及び前記フィールドの前記フラグメント内位置情報を判断し、前記マルチキーリストから、前記判断された位置情報と一致する位置情報を持つフィールドで構成されたマルチキーを検索する請求項３４に記載のメタデータの検索装置。
【請求項３６】
前記制御部は、前記入力された検索条件に符合する前記代表キー値を検索し、前記代表キー値が代表する範囲のマルチキー値から前記入力された検索条件に符合するマルチキー値を検索する請求項３４に記載のメタデータの検索装置。
【請求項３７】
メタデータ及び前記メタデータのインデックスを受信する受信部と、
前記メタデータ及び前記メタデータのインデックスを保存する保存部と、
前記制御部による検索結果を出力する出力部と、をさらに含む請求項１９に記載のメタデータの検索装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツに関する情報を検索するために提供されるメタデータのインデックス構造及び前記メタデータのインデックス構造を有するメタデータのインデックスを提供する方法と、前記メタデータのインデックスを利用したメタデータの検索方法とそれを利用した検索装置に係り、特にＴＶ−Ａｎｙｔｉｍｅ（以下‘ＴＶＡ’）フォーラムで定義するデジタルコンテンツに対するＸＭＬメタデータ（以下‘ＴＶＡメタデータ’）をフラグメントという独立的な単位に分けて伝送する時、コンテンツに関する情報をより効率的に検索可能とするためにマルチキーを含むメタデータのインデックス構造及び前記メタデータのインデックス構造を有するメタデータのインデックスを提供する方法と、前記メタデータのインデックスを利用したメタデータの検索方法とそれを利用した検索装置に関する。
【背景技術】
【０００２】
ＴＶＡフォーラムは、個人用大容量保存装置を持つＰＤＲ（Ｐｅｒｓｏｎａｌ Ｄｉｇｉｔａｌ Ｒｅｃｏｒｄｅｒ）などのユーザー環境でオーディオビジュアル関連サービス提供のための標準を開発することを目的として１９９９年９月に設立された民間標準機構であって、あらゆるユーザーが個人用保存装置に基づいて自分の所望の方法で所望の時間に多様な形態（既存の放送サービス及びオンライン対話形サービスなど）のプログラムを視聴可能にすることをその具体的なサービス目標としている。
【０００３】
ＴＶＡフォーラムはビジネスモデル、システム／伝送インターフェース／コンテンツ参照、技術、メタデータ、コンテンツ保護管理などのワーキンググループに分けて標準化を進めており、本発明と関連したメタデータについては２００２年６月に“１ｓｔ Ｄｒａｆｔ ｏｆ Ｍｅｔａｄａｔａ Ｓｐｅｃｉｆｉｃａｔｉｏｎ ＳＰ００３ｖ１．３”が発表されている。
【０００４】
図１を参照してＰＤＲの構成を簡略に説明すれば、ＰＤＲ １００は映像／音声信号を提供する提供者２００から空中波(sky wave)、衛星波、インターネット網などの多様なネットワークを通じて映像／音声信号及びメタデータを受信し、必要に応じて視聴者の視聴パターン、好みなどを収集して映像／音声信号を提供する提供者２００に送信する。ＰＤＲ １００は受信された映像／音声信号及びメタデータを保存する大容量保存装置、映像／音声信号の保存及び再生のためのソフトウェア及び映像／音声信号に対するメタデータを検索(retrieve)／表示(display)するためのＥＰＧ（Ｅｌｅｃｔｒｏｎｉｃ Ｐｒｏｇｒａｍ Ｇｕｉｄｅ）アプリケーションを含み、ユーザーは図２に図示されたＥＰＧアプリケーションのグリッドガイド画面などを通じて映像／音声データに関するメタデータ、すなわち、プログラムタイトル、プログラム再生時間などを確認し、所望のプログラムを選択してネットワークを通じてリアルタイムで受信するか、または既に大量保存装置に保存されている映像／音声データを再生させる。
【０００５】
メタデータとは、プログラムタイトル及び概要などのコンテンツに対する説明的なデータを意味し、“データに関するデータ(data about data)”と定義される。ＴＶＡフォーラムのＴＶＡメタデータ規格ではＸＭＬに関する標準機構Ｗ３Ｃの標準であるＸＭＬ Ｓｃｈｅｍａ言語（Ｗ３ＣのＸＭＬ １．０参照）を使用してその構造を定義する一方、各メタデータエレメント及び属性の意味をともに規定している。放送コンテンツに関連したＴＶＡメタデータは、図３に図示されたように“ＴＶＡＭａｉｎ”３００というルートノードを有するＸＭＬ文書で構成され、例えば、プログラムに関するメタデータは“ＰｒｏｇｒａｍＤｅｓｃｒｉｐｔｉｏｎ”ノードの下に、プログラム情報（ＰｒｏｇｒａｍＩｎｆｏｒｍａｔｉｏｎ Ｔａｂｌｅ）、グループ情報（ＧｒｏｕｐＩｎｆｏｒｍａｔｉｏｎ Ｔａｂｌｅ）、プログラム位置情報（ＰｒｏｇｒａｍＬｏｃａｔｉｏｎ Ｔａｂｌｅ）、サービス情報（ＳｅｒｖｉｃｅＩｎｆｏｍａｔｉｏｎ Ｔａｂｌｅ）などのノードで構成される。
【０００６】
ＴＶＡフォーラムは、ぼう大なＴＶＡメタデータをストリーム形式で伝送するためにフラグメントという独立的な単位でＴＶＡメタデータを伝送する。図４を参照してフラグメントの概念を簡略に説明すれば、フラグメントとは、図３に図示されたＸＭＬ文書で構成されたＴＶＡメタデータを所定のツリー構造別に分割したものであって、例えば、ＴＶＡメタデータ全体を“ＴＶＡＭａｉｎ”を上位ノードとして所定の子ノードまで含むツリー構造（フラグメントＴＶＡＭａｉｎ）と、プログラム情報（ＰｒｏｇｒａｍＩｎｆｏｒｍａｔｉｏｎ Ｔａｂｌｅ）を上位ノードとして以下の子ノードまで含むツリー構造（フラグメントＰｒｏｇｒａｍＩｎｆｏｒｍａｔｉｏｎ）と、ブロードキャストイベント情報（ＢｒｏａｄｃａｓｔＥｖｅｎｔ）を上位ノードとして以下の子ノードまで含むツリー構造（フラグメントＢｒｏａｄｃａｓｔＥｖｅｎｔ）とに分割する場合、分割されたツリー構造それぞれはフラグメントになり、このフラグメントは他のフラグメントと関係なく独立的に伝送可能であり、また個別にアクセスが可能である。
【０００７】
フラグメントに対する個別のアクセスのために、伝送されたＴＶＡメタデータフラグメントがメタデータツリー構造全体でいかなるノードを参照するか、すなわち、ＴＶＡメタデータフラグメントの上位ノードがいかなるノードに該当するか、そして伝送されたＴＶＡメタデータフラグメント内に含まれたキー（‘キー’はインデクシングのために使われるメタデータの所定フィールドをいうが、ここではメタデータフラグメントが参照するノードの子ノードを意味し、ユーザーが入力するフィールド（検索条件のフィールド）、例えば‘チャンネル番号’または‘放送時間(Published Time)’などがキーに該当する）の前記ＴＶＡメタデータフラグメント内の相対経路を表示する必要があり、このためにＷ３Ｃで定義したＸＰａｔｈ（Ｗ３Ｃで定義したＸＭＬ文書内ノードに対する経路を記述するシンタックス（ｓｙｎｔａｘ））を使用する。
【０００８】
一方、フラグメントに対する効率的な検索及びアクセスを提供するためには、メタデータフラグメントに含まれたキーに対するインデックス構造が別途に必要であり、このようなインデックス構造に関する情報、すなわち、インデックス情報も前記メタデータフラグメントとは独立的に伝送される。
【０００９】
ＴＶＡフォーラムが提供する環境下で、所定放送時間条件(Published Time condition)に該当するプログラム情報をユーザーが検索しようとする場合、まずフラグメントとは独立的に伝送されるインデックス情報を活用して所望の放送時間条件に合致するメタデータフラグメントの位置（識別子）を把握し、この位置（識別子）に基づいて該当メタデータフラグメントにアクセスして前記放送時間条件に合致するメタデータを抽出する。
【００１０】
従来の技術文献（ＴＶ−Ａｎｙｔｉｍｅ Ｓｐｅｃｉｆｉｃａｔｉｏｎ ＴＶ１４５，Ｊ．Ｐ．Ｅｖａｉｎ，“１ｓｔ Ｄｒａｆｔ ｏｆ Ｍｅｔａｄａｔａ Ｓｐｅｃｉｆｉｃａｔｉｏｎ ＳＰ００３ｖ１．３，”ＴＶＡフォーラム１７次会議、モントリオール、カナダ、２００２年６月（以下、“シングルキーインデックス技術文献”）ではメタデータフラグメントインデックスのためのシングルキーインデックス構造を提案している。
【００１１】
参考でシングルキーは、以後説明される本発明のマルチキーと区別するために本明細書で使用する概念であって、本発明で使われるマルチキーインデックス構造は同時に多数のキーを使用して多数のキーに該当するメタデータをアクセスできるが、従来技術のシングルキーインデックス構造はメタデータのアクセス時にただ一つのキーだけが使用できる。インデックス構造を説明する前にＴＶＡフォーラムが定義するコンテナ(container)概念をまず説明する。
【００１２】
ＴＶＡフォーラムは前述したインデックス情報及びメタデータフラグメントなどのあらゆるデータが伝送される最上位保存所、すなわち、コンテナという最上位伝送形態を定義するが、コンテナを概略的に説明すれば、あらゆるコンテナは多数のセクションから構成され、各セクションに前記インデックス情報またはメタデータフラグメントが保存される。コンテナは運搬する情報によってキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション、キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション、サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション、ストリング保存所（ｓｔｒｉｎｇ＿ｒｅｐｏｓｉｔｏｒｙ）セクション、フラグメントデータ保存所（ｆｒａｇｍｅｎｔ＿ｄａｔａ＿ｒｅｐｏｓｉｔｏｒｙ）セクションなどのインデックス情報セクションを運搬するインデックスコンテナと、エレメントテーブル（ｅｌｅｍｅｎｔｓ＿ｔａｂｌｅ）セクション、ストリング保存所（ｓｔｒｉｎｇ＿ｒｅｐｏｓｉｔｏｒｙ）セクション、フラグメント保存所（ｆｒａｇｍｅｎｔ＿ｄａｔａ＿ｒｅｐｏｓｉｔｏｒｙ）セクションなどのメタデータフラグメントセクションを運搬するデータコンテナとに区分される。前記区分はコンテナに含まれた情報の内容によってなされ、コンテナの構成はインデックスコンテナとデータコンテナのいずれも同一である。
【００１３】
図５を参照してＴＶＡフォーラムで定義したコンテナーを説明すれば、コンテナは図示されていないコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）フィールドと多数のセクションとを含み、各セクションは‘ｓｅｃｔｉｏｎ＿ｉｄ’のエンコーディング値によって‘ｓｅｃｔｉｏｎ＿ｂｏｄｙ’に保存された内容が識別される。例えば、‘ｓｅｃｔｉｏｎ＿ｉｄ’のエンコーディング値が‘０Ｘ０００４’であるセクション１０はキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション、エンコーディング値が‘０Ｘ０００５’であるセクション２０はキーインデックス（ｋｅｙ−ｉｎｄｅｘ）セクション、エンコーディング値が‘０Ｘ０００６’であるセクション３０はサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション、エンコーディング値が‘０Ｘ０００１’であるセクション４０はエレメントテーブル（ｅｌｅｍｅｎｔ＿ｔａｂｌｅ）セクション、エンコーディング値が‘０Ｘ０００３’であるセクション５０はフラグメントデータ保存所（ｆｒａｇｍｅｎｔ＿ｄａｔａ＿ｒｅｐｏｓｉｔｏｒｙ）セクションとしてそれぞれ識別される。
【００１４】
ＴＶＡメタデータフラグメントはデータコンテナのフラグメントデータ保存所（ｆｒａｇｍｅｎｔ＿ｄａｔａ＿ｒｅｐｏｓｉｔｏｒｙ）セクション５０内に保存されて伝送されるが、前記データコンテナ内のＴＶＡメタデータフラグメントに対する識別子情報（ｈａｎｄｌｅ＿ｖａｌｕｅ）フィールドはエレメントテーブルセクション４０に含まれる。
要するに、ＴＶＡメタデータフラグメントはＴＶＡメタデータフラグメントが含まれたコンテナのコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）及びメタデータフラグメント識別子情報（ｈａｎｄｌｅ＿ｖａｌｕｅ）だけによって識別される。
【００１５】
前述したシングルキーインデックス技術文献では前述したデータコンテナに保存されたＴＶＡメタデータフラグメントをインデクシングするためのシングルキーインデックス構造、すなわち、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１０、キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション２０、及びサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０の構造を提案している。前記構造のシンタックスについてはシングルキーインデックス技術文献に詳細に記述されているので具体的な説明は省略し、以下では前記構造をインデックス情報のセグメントで表現した図６を参照して前記構造を説明する。
【００１６】
シングルキーインデックス構造で定義されるキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１０は、伝送されるあらゆるシングルキーのリストを提供する。このリストには、各キーを定義するキー情報と、後述されるキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション２０に関する識別情報とが含まれる。前記キー情報には、（１）シングルキーと関連したメタデータフラグメントの位置情報（ＴＶＡではＸＰａｔｈ（ｆｒａｇｍｅｎｔ＿ｘｐａｔｈ＿ｐｔｒ）で表現される）と、（２）キーの前記メタデータフラグメント内の位置情報（ＴＶＡではキーとして使われるノードの該当フラグメント内の相対経路に対するＸＰａｔｈ（ｋｅｙ＿ｘｐａｔｈ＿ｐｔｒ）で表現される）とが含まれる。
【００１７】
前記メタデータフラグメントのＸＰａｔｈはＴＶＡメタデータＸＭＬ文書のルートノードに対する経路、すなわち、絶対経路である。そして、シングルキーとして使われるノードのＸＰａｔｈ、すなわち、シングルキーのＸＰａｔｈは関連メタデータフラグメントに対するシングルキーの相対経路を示す。メタデータフラグメントに対するＸＰａｔｈ及びシングルキーに対するＸＰａｔｈはそれぞれ‘ｆｒａｇｍｅｎｔ＿ｘｐａｔｈ＿ｐｔｒ’セグメント１１及び‘ｋｅｙ＿ｘｐａｔｈ＿ｐｔｒ’セグメント１２に保存される。
【００１８】
また、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１０には後述される各シングルキーのキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション２０に対する識別情報（すなわち、キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション２０が保存されたコンテナのコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）及びキーインデックス識別子情報）が含まれるが、前記コンテナ識別子情報及びキーインデックス識別子情報はそれぞれキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１０の‘ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒ’セグメント及び‘ｋｅｙ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ’セグメントに保存されて伝送される。
【００１９】
シングルキーインデックス構造で定義されるキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション２０は、後述されるあらゆるサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０のリストを提供するが、このリストには各サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０に含まれたキー値の範囲を示す情報、すなわち、各サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０内キー値のうち最も大きいキー値（以下‘代表キー値’）、及び各代表キー値に関連したサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０に対する識別情報（すなわち、サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクションが保存されたコンテナのコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）及びサブキーインデックス識別子情報）が含まれる。
【００２０】
したがって、キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション２０は、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１０で定義されたキーインデックス識別子情報が保存される‘ｋｅｙ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ’セグメントと、各サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０の代表キー値が保存された‘ｈｉｇｈ＿ｋｅｙ＿ｖａｌｕｅ’セグメント１３と、サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０が保存されたコンテナのコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）と、サブキーインデックス識別子情報がそれぞれ保存された‘ｓｕｂ＿ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒ’セグメント及び‘ｓｕｂ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ’セグメントを含む。
【００２１】
シングルキーインデックス構造で定義されるサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０は、該当サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０に含まれたキー値に対するリストを提供するが、このリストには該当サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０に含まれたキー値及び前記キー値を有するメタデータフラグメントに対する識別情報（すなわち、メタデータフラグメントが保存されたコンテナのコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）と、前記メタデータフラグメントの識別子情報（ｈａｎｄｌｅ＿ｖａｌｕｅ））が含まれる。
【００２２】
したがって、サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０は、キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション２０で定義されたサブキーインデックス識別子情報が保存される‘ｓｕｂ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ’セグメント、キー値が保存される‘ｋｅｙ＿ｖａｌｕｅ’セグメント１４、前記キー値を有するメタデータフラグメントに対する識別情報としてメタデータフラグメントが保存されたコンテナのコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）が保存された‘ｔａｒｇｅｔ＿ｃｏｎｔａｉｎｅｒ’セグメントと、フラグメントデータ識別子情報（ｈａｎｄｌｅ＿ｖａｌｕｅ）が保存された‘ｔａｒｇｅｔ＿ｈａｎｄｌｅ’セグメントとを含む。
【００２３】
前記シングルキーインデックス構造はインデックス情報を例示的に示した図７を通じてさらに容易に理解される。
図７はチャンネル番号、放送時間及び放送再生時間に対するシングルキーを含むキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクションを図示しており、前記チャンネル番号、放送時間及び放送再生時間に関するシングルキーが含まれたメタデータフラグメントの上位ノードは図３に図示されたように‘ＢｒｏａｄｃａｓｔＥｖｅｎｔ’３１０である。したがって、‘ｆｒａｇｍｅｎｔ＿ｘｐａｔｈ＿ｐｔｒ’セグメント１１ａには‘ＢｒｏａｄｃａｓｔＥｖｅｎｔ’フラグメントに対するＸＰａｔｈ‘／ＴＶＡＭａｉｎ／ＰｒｏｇｒａｍＤｅｓｃｒｉｐｔｉｏｎ／ＰｒｏｇｒａｍＬｏｃａｔｉｏｎＴａｂｌｅ／ＢｒｏａｄｃａｓｔＥｖｅｎｔ’が保存されて、‘ｋｅｙ＿ｘｐａｔｈ＿ｐｔｒ’セグメント１２ａには‘ＢｒｏａｄｃａｓｔＥｖｅｎｔ’フラグメントに対するチャンネル番号、放送時間、及び放送再生時間のシングルキーのＸｐａｔｈである‘＠ＳｅｒｖｉｃｅＩｄ’（図３の３１１ａ）、‘ＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＴｉｍｅ’（図３の３１１ｂ）及び‘ＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＤｕｒａｔｉｏｎ’（図３の３１１ｃ）がそれぞれ保存される。
【００２４】
参考に、図７Ａは、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクションのうちチャンネル番号（シングルキーのＸｐａｔｈ：＠ＳｅｒｖｉｃｅＩｄ）に対するキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション２０ａ及びサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０ａを図示し、図７Ｂは、放送時間（シングルキーのＸｐａｔｈ：ＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＴｉｍｅ）に対するキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション２０ｂ及びサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０ｂを図示する。
【００２５】
このようなシングルキーインデックス構造は、ＴＶＡ規格のメタデータフラグメントに対する特定フィールドをキーとするインデックス検索であるシングルキー検索だけを支援するために、一つ以上の検索条件である複合条件検索に対しては効率的でないという短所を有する。例えば、図２のようなグリッドガイド画面に放送プログラムリストを表示するためには２つのフィールド、すなわち、チャンネル番号及び放送時間に対する検索動作が要求される。
【００２６】
従来のシングルキーインデックス構造を利用した複合条件検索を説明するために、以下では、チャンネル範囲が５０７〜５１４であり、放送時間が０９：３０〜１０：００であるプログラムリストを求める場合を例として説明する。ＴＶＡメタデータ規格からこのようなプログラムリストに関するメタデータをもたらすための検索条件は次のように表現される。
【００２７】
−検索対象フラグメント（ＢｒｏａｄｃａｓｔＥｖｅｎｔ）：
／ＴＶＡＭａｉｎ／ＰｒｏｇｒａｍＤｅｓｃｒｉｐｔｉｏｎ／ＰｒｏｇｒａｍＬｏｃａｔｉｏｎＴａｂｌｅ／ＢｒｏａｄｃａｓｔＥｖｅｎｔ
−検索条件リスト：
５０７＜＝ＳｅｒｖｉｃｅＩｄ＜＝５１４
０９：３０＜＝ＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＴｉｍｅ＜＝１０：００
【００２８】
従来のシングルキーインデックス構造で、指定された検索条件に符合するフラグメントを得るためには２つの方法が可能であるが、図８を参照して詳細に説明すれば次の通りである。
【００２９】
（１）シングルキーインデックスを利用した検索方法１
第１の方法は、図８Ａに説明されたように、ＳｅｒｖｉｃｅＩｄ及びＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＴｉｍｅに対するそれぞれのシングルキーを使用してシングルキー条件に合うフラグメント集合を検索する。以後、検索されたフラグメント集合を論理積することによって条件に合う最終フラグメント集合を得る。
【００３０】
この方式を図７及び図８Ａを参照して詳細に説明すれば次の通りである。まず、チャンネル番号検索に必要なシングルキー情報及びシングルキー値を指定する（Ｓ１１）。シングルキー情報は、検索対象メタデータフラグメントの位置情報として検索対象メタデータフラグメントのＸＰａｔｈと、シングルキーの前記メタデータフラグメント内の位置情報としてシングルキーのＸＰａｔｈとを含む。
【００３１】
メタデータフラグメントのＸＰａｔｈ：
／ＴＶＡＭａｉｎ／ＰｒｏｇｒａｍＤｅｓｃｒｉｐｔｉｏｎ／ＰｒｏｇｒａｍＬｏｃａｔｉｏｎＴａｂｌｅ／ＢｒｏａｄｃａｓｔＥｖｅｎｔ
チャンネル番号のＸＰａｔｈ：＠ＳｅｒｖｉｃｅＩｄ
チャンネル番号のキー値：５０７＜＝ＳｅｒｖｉｃｅＩｄ＜＝５１４
【００３２】
次に、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１０ａで前記フラグメントＸＰａｔｈ １１ａとチャンネル番号のＸＰａｔｈ １２ａとに対応するシングルキーを検索し、キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション２０ａに対する識別情報を抽出し、抽出された識別情報を持つキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション２０ａで検索を所望するシングルキーのキー値５０７〜５１４が含まれるキー値の範囲５００〜５０９、５１０〜５１９を表す代表キー値、すなわち、‘５０９’及び‘５１９’ １３ａの代表キー値を探して前記代表キー値‘５０９’及び‘５１９’に関連したキー値５００〜５０９、５１０〜５１９を有するサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１４ａに対する識別情報を抽出する。そして、抽出された識別情報を持つサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１４ａで５０７〜５１４のキー値に該当するメタデータフラグメント識別情報（‘ｔａｒｇｅｔ＿ｃｏｎｔａｉｎｅｒ’セグメント及び‘ｔａｒｇｅｔ＿ｈａｎｄｌｅ’セグメントにそれぞれ保存されたコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）とフラグメントデータ識別子情報（ｈａｎｄｌｅ＿ｖａｌｕｅ））を抽出し、抽出された識別情報を利用して該当メタデータフラグメントを抽出する（Ｓ１２、Ｓ１４）。
【００３３】
放送時間検索に必要なシングルキー情報（検索対象メタデータフラグメントのＸＰａｔｈ情報とシングルキーのＸＰａｔｈ情報）及びシングルキー値は、それぞれ
フラグメントのＸＰａｔｈ：
／ＴＶＡＭａｉｎ／ＰｒｏｇｒａｍＤｅｓｃｒｉｐｔｉｏｎ／ＰｒｏｇｒａｍＬｏｃａｔｉｏｎＴａｂｌｅ／ＢｒｏａｄｃａｓｔＥｖｅｎｔ
放送時間のＸＰａｔｈ：ＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＴｉｍｅ
放送時間のキー値：０９：３０＜＝ＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＴｉｍｅ＜＝１０：００
であり、前記チャンネル番号検索の段階とほぼ類似した段階を経て０９：３０〜１０：００のキー値に該当するメタデータフラグメントを抽出する（Ｓ１３、Ｓ１５）。
【００３４】
前記チャンネル番号及び放送時間に対してそれぞれ抽出されたメタデータフラグメントを論理積演算し、共通したメタデータフラグメントのメタデータを最終結果として図２のようなグリッドガイド画面に提供する（Ｓ１６）。
【００３５】
（２）シングルキーインデックスを利用した検索方法２
第２の方法は、図８Ｂに説明されたように、検索条件と関連した２個のシングルキーのうち一つ（例えば、チャンネル番号）だけを使用してフラグメントを検索し（Ｓ２１〜Ｓ２３）、検索されたフラグメントのうち放送時間が０９：３０〜１０：００であるフラグメントだけを選ぶ（Ｓ２４）。このようなシングルキーインデックス構造を利用した検索方法は、それぞれのシングルキーを利用して検索することによって得られる中間結果フラグメントの数が非常に大きいために全体工程が非効率的である。第１の方法では、プログラム時間帯に関係なく該当チャンネル範囲のあらゆるプログラムを検索結果としてもたらし、あらゆるチャンネルに対して該当時間帯のプログラムを検索結果としてもたらすために検索結果が非常に大きくなってしまう。さらに、サイズの大きい２つの中間検索結果を併合する過程でも計算の複雑度が高まって受信装置のオーバーヘッドはさらに増加する。第２の方法では一つの中間結果が他の検索条件により追加でフィルタリングされる必要がある。結果的に、シングルキーインデックス構造を利用した複合条件検索によれば、受信装置において多くのオーバーヘッドが発生するおそれがある。
【発明の開示】
【発明が解決しようとする課題】
【００３６】
前述した問題点を解決するために提案された本発明は、コンテンツに関する情報の複合条件検索に有用したメタデータのインデックス構造を提供するのにその目的がある。
また本発明は、コンテンツに関する情報の複合条件に有用したメタデータのインデックスを提供する方法と、前記メタデータのインデックスを利用したメタデータを検索する方法と、これを利用した検索装置を提供するのにその目的がある。
【課題を解決するための手段】
【００３７】
前述した目的を達成するための本発明の一実施例によるメタデータのインデックス構造は、マルチキー値及び前記マルチキー値に対応するメタデータの識別情報を含むが、前記マルチキーは前記メタデータの所定フィールドを組み合わせて構成される。
前記実施例で、前記マルチキーリストをさらに含むことが望ましい。
【００３８】
一方、前記実施例で、前記マルチキー値の所定範囲を代表する代表キー値をさらに含むことが望ましい。
また前記実施例で、前記代表キー値は該当範囲の値のうち最大値、最小値または中間値であることが望ましい。
また前記実施例で、前記メタデータはツリー構造のデータ構造を有し、前記ツリー構造の所定範囲別に分割されたフラグメントで構成され、前記マルチキーを構成するフィールドは前記フラグメントを構成する情報のうちいずれか一つであることが望ましい。
【００３９】
また前記実施例で、前記メタデータの識別情報は前記フラグメントの識別情報であることが望ましい。
また前記実施例で、前記マルチキーリストは、前記マルチキーを構成するフィールドが属しているフラグメントの前記データ構造内位置情報と、前記フィールドの前記フラグメント内位置情報とを含むことが望ましい。
また前記実施例で、前記位置情報はＸＰａｔｈで表現されることが望ましい。
【００４０】
また前記実施例で、前記マルチキー値の大きさ比較は、前記マルチキーを構成する多数のフィールドｋ１，ｋ２，ｋ３…ｋｎに対して優先順位（ｋ１＞ｋ２＞ｋ３＞…ｋｎ）を付与し、優先順位の高いフィールドから順に相互比較して最初に現れる値の大きさが異なるフィールドにより前記マルチキー値の大きさを決定し、大きさが異なるフィールドがない場合には両マルチキー値の大きさが同一であると判定するものの、各フィールドの比較は該当フィールドの値が数字である場合には算術的な大小比較法則により、文字である場合には辞書的な順序により大小を決定することが望ましい。
【００４１】
また前記実施例で、前記メタデータはＴＶＡで定義するメタデータの構造を有することが望ましい。
本発明の一実施例によるメタデータのインデックス提供方法は、マルチキー値及び前記マルチキー値に対応するメタデータの識別情報を含むメタデータのインデックスを提供するが、前記マルチキーは前記メタデータの所定フィールドを組み合わせて構成される。
また前記実施例で、前記マルチキー値は前記インデックス内で所定の規則による大きさ順に配列されることが望ましい。
【００４２】
また前記実施例で、前記マルチキー値の大きさ比較は、前記マルチキーを構成する多数のフィールドｋ１，ｋ２，ｋ３…ｋｎに対して優先順位（ｋ１＞ｋ２＞ｋ３＞…ｋｎ）を付与し、優先順位の高いフィールドから順に相互比較して最初に現れる値の大きさが異なるフィールドにより前記マルチキー値の大きさを決定し、大きさが異なるフィールドがない場合には両マルチキー値の大きさが同一であると判定するものの、各フィールドの比較は該当フィールドの値が数字である場合には算術的な大小比較法則により、文字である場合には辞書的な順序により大小を決定することが望ましい。
【００４３】
本発明の一実施例によるメタデータの検索方法は、検索条件を入力される段階と、前記入力された検索条件に符合するマルチキー値をメタデータのインデックスから検索する段階と、前記検索されたマルチキー値を利用して該当メタデータを抽出する段階と、を含む。
前記実施例で、前記マルチキー値は前記メタデータの所定フィールドを組み合わせて構成されることが望ましい。
【００４４】
また前記実施例で、前記マルチキー値を検索する段階は、前記入力された検索条件の値と前記マルチキー値とを比較して大きさが一致するマルチキー値を前記メタデータのインデックスから検索する段階であることが望ましい。
また前記実施例で、前記メタデータを抽出する段階は、前記メタデータのインデックスから前記検索されたマルチキー値に対応するメタデータの識別情報を抽出する段階と、前記抽出された識別情報を利用して該当メタデータを抽出する段階と、を含むことが望ましい。
【００４５】
また前記実施例で、前記マルチキー値を検索する段階は、前記入力された検索条件に符合する前記代表キー値を検索する段階と、前記代表キー値が代表する範囲のマルチキー値から前記入力された検索条件に符合するマルチキー値を検索する段階と、を含むことが望ましい。
また前記実施例で、前記マルチキー値を検索する段階は、前記マルチキーリストから前記検索条件に符合するマルチキーを検索する段階と、前記検索されたマルチキーがインデックスするマルチキー値から前記入力された検索条件に符合するマルチキー値を検索する段階と、を含むことが望ましい。
【００４６】
また前記実施例で、前記マルチキーを検索する段階は、前記検索条件のフィールドが属しているフラグメントの前記データ構造内位置情報、及び前記フィールドの前記フラグメント内位置情報を判断する段階と、前記マルチキーリストから、前記判断された位置情報と一致する位置情報を持つフィールドで構成されたマルチキーを検索する段階と、を含むことが望ましい。
【００４７】
また前記実施例で、前記検索されたマルチキーがインデックスするマルチキー値から前記入力された検索条件に符合するマルチキー値を検索する段階は、前記入力された検索条件に符合する前記代表キー値を検索する段階と、前記代表キー値が代表する範囲のマルチキー値から前記入力された検索条件に符合するマルチキー値を検索する段階と、を含むことが望ましい。
【００４８】
本発明の一実施例によるメタデータの検索装置は、検索条件を入力される入力部と、前記入力された検索条件に符合するマルチキー値をメタデータのインデックスから検索し、前記検索されたマルチキー値を利用して該当メタデータを抽出する制御部と、を含む。
また前記実施例で、前記制御部は、前記入力された検索条件の値と前記マルチキー値とを比較して、大きさが一致するマルチキー値を前記メタデータのインデックスから検索することがのぞましい。
【００４９】
また前記実施例で、前記制御部は、前記メタデータのインデックスから前記検索されたマルチキー値に対応するメタデータの識別情報を抽出し、前記抽出された識別情報を利用して該当メタデータを抽出することが望ましい。
また前記実施例で、前記制御部は、前記入力された検索条件に符合する前記代表キー値を検索し、前記代表キー値が代表する範囲のマルチキー値から前記入力された検索条件に符合するマルチキー値を検索することが望ましい。
【００５０】
また前記実施例で、前記制御部は、前記マルチキーリストから前記検索条件に符合するマルチキーを検索し、前記検索されたマルチキーがインデックスするマルチキー値から前記入力された検索条件に符合するマルチキー値を検索することが望ましい。
また前記実施例で、前記制御部は、前記検索条件のフィールドが属しているフラグメントの前記データ構造内位置情報、及び前記フィールドの前記フラグメント内位置情報を判断し、前記マルチキーリストから、前記判断された位置情報と一致する位置情報を持つフィールドで構成されたマルチキーを検索することが望ましい。
【００５１】
また前記実施例で、前記制御部は、前記入力された検索条件に符合する前記代表キー値を検索し、前記代表キー値が代表する範囲のマルチキー値から前記入力された検索条件に符合するマルチキー値を検索することが望ましい。
また前記実施例で、メタデータ及び前記メタデータのインデックスを受信する受信部と、前記メタデータ及び前記メタデータのインデックスを保存する保存部と、前記制御部による検索結果を出力する出力部と、をさらに含むことが望ましい。
したがって、メタデータに対する複合条件検索をさらに効率的に行える。
【発明を実施するための最良の形態】
【００５２】
このような特徴を有するコンテンツに関する情報を検索するために提供されるメタデータのインデックス構造と、前記メタデータのインデックス構造を有するメタデータのインデックスを提供する方法と、前記メタデータのインデックスを利用したメタデータの検索方法とそれを利用した検索装置の実施例を添付された図面を参照して説明すれば次の通りである。
【００５３】
以下で、前記実施例はＴＶＡメタデータに基づいて説明するが、本発明はこれに限定されるものではない。まず、コンテンツに関する情報を検索するためのメタデータのインデックス構造として、前述したデータコンテナに保存されるＴＶＡメタデータフラグメントをインデクシングするためのマルチキーインデックス構造、すなわち、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１１０、キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０、及びサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０の構造を定義するシンタックスを説明し、以後前記シンタックスにより定義されるマルチキーインデックス構造について説明する。
【００５４】
本発明の一実施例によるメタデータのインデックス構造、特にマルチキーインデックス構造を定義するシンタックスは、シングルキーインデックス技術文献に定義されたシンタックスとは違ってｋｅｙ＿ｄｅｓｃｒｉｐｔｏｒ（）、ｈｉｇｈ＿ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ（）、ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ（）などのマルチキーインデクシング概念のために新しく導入された構造を含み、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション、キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション、及びサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクションの構造を再編成する。
【００５５】
１．キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション
キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクションは伝送されるあらゆるマルチキーリストを提供する。それぞれのキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）構造内には表１に提示されたようにマルチキーインデクシング可能にｋｅｙ＿ｄｅｓｃｒｉｐｔｏｒ（）を含む。
【００５６】
【表１】
2005222546.tif 000003
【００５７】
ｋｅｙ＿ｉｎｄｅｘ＿ｃｏｕｎｔ：伝送されるあらゆるマルチキーの数、すなわち、全体ＸＭＬ文書に対するインデックス数を定める。
ｆｒａｇｍｅｎｔ＿ｘｐａｔｈ＿ｐｔｒ（）：インデクシングされる目標メタデータフラグメントのＸＰａｔｈ、すなわち、インデクシングされる目標メタデータフラグメントの位置情報を定める。
【００５８】
ｋｅｙ＿ｄｅｓｃｒｉｐｔｏｒ（）：インデクシングされる目標メタデータフラグメントグループのＸＰａｔｈ位置内でマルチキーのＸＰａｔｈ位置、すなわち、マルチキーの前記メタデータフラグメント内位置情報及びマルチキーを構成する各エレメント／属性に対するエンコーディング表示子の情報を定める。
【００５９】
ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒ：指定されたキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクションが存在するコンテナを識別する。
ｋｅｙ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ：ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒにより詳述されたコンテナ内でキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクションを識別する。ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒとｋｅｙ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒの組み合わせによって該当キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクションが唯一に識別される。
【００６０】
２．キーデスクリプタ（ｋｅｙ＿ｄｅｓｃｒｉｐｔｏｒ）
マルチキーは複合キーである。マルチキーを構成する多数のキーに対し、ｋｅｙ＿ｄｅｓｃｒｉｐｔｏｒはキーのＸＰａｔｈなどの特性を記述する。下の表２はｋｅｙ＿ｄｅｓｃｒｉｐｔｏｒを表す。
【００６１】
【表２】
2005222546.tif 000004
【００６２】
ｋｅｙ＿ａｔｔｒｉｂｕｔｅ＿ｃｏｕｎｔ：マルチキーを構成するキーの数を定める。
ｋｅｙ＿ｘｐａｔｈ＿ｐｔｒ：マルチキーとして使われるノード（キー）のｆｒａｇｍｅｎｔ＿ｘｐａｔｈ＿ｐｔｒに関する相対経路である。
【００６３】
３．キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション
ｈｉｇｈ＿ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ（）が新しく導入される。
本実施例で、ｈｉｇｈ＿ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ（）はキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクションが示すサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクションの数（ｓｕｂ＿ｉｎｄｅｘ＿ｃｏｕｎｔ）だけのサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクションに対して該当サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション内のマルチキー値を代表する代表キー値であって、本実施例ではマルチキー値の最大値を指定するが、他の実施例で最小値または中間値など所定範囲のマルチキー値を代表できるいかなる基準値でも採択できる。
【００６４】
【表３】
2005222546.tif 000005
【００６５】
ｋｅｙ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ：ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒにより定められたコンテナ内でキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクションを識別する。ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒとｋｅｙ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒとの組み合わせによりキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクションが唯一に識別されうる。これは、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクションで定義される。
【００６６】
ｓｕｂ＿ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒ：指定されたサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクションが存在するコンテナを識別する。
ｓｕｂ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ：ｓｕｂ＿ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒにより詳述されたコンテナ内でサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクションを識別する。ｓｕｂ＿ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒとｓｕｂ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒとの組合わせによりサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクションが唯一に識別されうる。
【００６７】
表４は、ｈｉｇｈ＿ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ（）を表す。
【００６８】
【表４】
2005222546.tif 000006
【００６９】
ｋｅｙ＿ａｔｔｒｉｂｕｔｅ＿ｃｏｕｎｔ：マルチキーを構成するキーの数を定める。これは、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクションで定義される。
ｋｅｙ＿ａｔｔｒｉｂｕｔｅ＿ｖａｌｕｅ：それぞれのキーに対する代表キー値を表す。前記値エンコーディング形態はシングルキーインデックス技術文献のｋｅｙ＿ｖａｌｕｅと同一である。
【００７０】
ｈｉｇｈ＿ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ（）がマルチキー値を有する場合、マルチキー値間の大きさ比較は次の通りである。マルチキー値は数字の場合には算術的大小比較法則により、文字の場合には辞書編纂方式により順序が決定される。例えば、ｋ１，ｋ２，...，ｋｎのキーで構成されたマルチキーｋ１，ｋ２，...，ｋｎに対して、ｋ１が最も大きい優先順位を有し、ｋｎは最も小さな優先順位を有すると仮定する時、マルチキー値ａ１，ａ２，...，ａｎとマルチキー値ｂ１，ｂ２，...，ｂｎとに対して、
■ あらゆるｊ（０≦ｊ≦ｉ−１）に対してａｊ＝ｂｊ及びａｉ＞ｂｉになるように整数ｉ（０≦ｉ≦ｎ−１）が存在する場合に限ってマルチキー値ａ１，ａ２，...，ａｎがマルチキー値ｂ１，ｂ２，...，ｂｎより大きい。
【００７１】
■ あらゆるｊ（０≦ｊ≦ｉ−１）に対してａｊ＝ｂｊ及びａｉ＜ｂｉになるように整数ｉ（０≦ｉ≦ｎ−１）が存在する場合に限ってマルチキー値ａ１，ａ２，...，ａｎがマルチキー値ｂ１，ｂ２，...，ｂｎより小さい。
■ あらゆるｉ（１≦ｉ≦ｎ）に対してａｉ＝ｂｉの場合に限ってマルチキー値ａ１，ａ２，...，ａｎはマルチキー値ｂ１，ｂ２，...，ｂｎと同一である。
【００７２】
４．サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション
ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ（）がマルチキーインデクシング概念のために新しく導入される。ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ（）は指示する該当フラグメントのマルチキー値を表す。
【００７３】
【表５】
2005222546.tif 000007
【００７４】
ｓｕｂ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ：ｓｕｂ＿ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒにより識別されたコンテナ内でサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクションを識別する。
ｓｕｂ＿ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒとｓｕｂ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒとの組み合わせによりサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクションが唯一に識別されうる。これは、キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクションで定義される。
【００７５】
ｒｅｆｅｒｅｎｃｅ＿ｃｏｕｎｔ：ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ（）内に含まれたマルチキー値の数を定める。
ｔａｒｇｅｔ＿ｃｏｎｔａｉｎｅｒ：指定されたメタデータフラグメントが存在するコンテナを識別する。
ｔａｒｇｅｔ＿ｈａｎｄｌｅ：ｔａｒｇｅｔ＿ｃｏｎｔａｉｎｅｒにより識別されたコンテナ内でメタデータフラグメントセクションを識別する。ｔａｒｇｅｔ＿ｃｏｎｔａｉｎｅｒとｔａｒｇｅｔ＿ｈａｎｄｌｅとの組合わせによりメタデータフラグメントセクションが唯一に識別されうる。表６は、ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ（）を表す。
【００７６】
【表６】
2005222546.tif 000008
【００７７】
ｋｅｙ＿ａｔｔｒｉｂｕｔｅ＿ｃｏｕｎｔ：マルチキーを構成するキーの数を定め、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクションで定義される。
ｋｅｙ＿ａｔｔｒｉｂｕｔｅ＿ｖａｌｕｅ：それぞれのキー値を表現する。その形態はシングルキーインデックス技術文献のｋｅｙ＿ｖａｌｕｅと同一である。
ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ（）値間の比較はキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション構造でのｈｉｇｈ＿ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ（）値間の比較と同一である。
【００７８】
以下、前述したシンタックスにより定義されるメタデータ構造をインデックス情報のセグメントで表現した図９を参照して前記構造を説明する。
メタデータ構造で定義されるキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１１０は、伝送されるあらゆるマルチキーリストを提供する。このリストには、各マルチキーを定義するマルチキー情報と、後述されるキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０に関する識別情報とが含まれる。前記マルチキー情報には、（１）マルチキーと関連したメタデータフラグメントの位置情報（ＴＶＡではマルチキーと関連したメタデータフラグメントに対するＸＰａｔｈ（ｆｒａｇｍｅｎｔ＿ｘｐａｔｈ＿ｐｔｒ）で表現される）と、（２）マルチキーの前記メタデータフラグメント内位置情報（ＴＶＡではマルチキーとして使われるノードの前記メタデータフラグメントのＸＰａｔｈ位置での関連経路、すなわち、マルチキーとして使われるノードのＸＰａｔｈ（ｋｅｙ＿ｄｅｓｃｒｉｐｔｏｒ）で表現される）とが含まれる。シングルキーインデックス構造と同様に、前記メタデータフラグメントのＸＰａｔｈはＴＶＡメタデータＸＭＬ文書のルートノードに対する経路として絶対経路であり、マルチキーとして使われるノードのＸＰａｔｈ、すなわち、マルチキーのＸＰａｔｈは前記メタデータフラグメントに対するマルチキーの相対経路を表す。メタデータフラグメントに対するＸＰａｔｈ及びマルチキーに対するＸＰａｔｈは、それぞれ‘ｆｒａｇｍｅｎｔ＿ｘｐａｔｈ＿ｐｔｒ’セグメント１１１及び‘ｋｅｙ＿ｄｅｓｃｒｉｐｔｏｒ’セグメント１１２に保存される。
【００７９】
また、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１１０には、後述される各マルチキーのキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０に対する識別情報（キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０が保存されたコンテナのコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）及びキーインデックス識別子情報）が含まれるが、前記コンテナ識別子情報及びキーインデックス識別子情報は、それぞれキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１１０の‘ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒ’セグメント及び‘ｋｅｙ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ’セグメントに保存されて伝送される。
【００８０】
メタデータ構造で定義されるキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０は、後述されるあらゆるサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０のリストを提供するが、このリストには、各サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０に含まれたマルチキー値の範囲を表す情報、すなわち、各サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０内のマルチキー値を代表する代表キー値（本実施例では最も大きいマルチキー値）と、各代表キー値に関連したサブキーインデックスセクション１３０に対する識別情報（すなわち、サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクションが保存されたコンテナのコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）及びサブキーインデックス識別子情報）とが含まれる。本実施例で代表キー値間の大きさ比較方法は、表４の説明で言及したマルチキー値の大きさ比較方法と同一である。
【００８１】
キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０は、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１１０で定義されたキーインデックス識別子情報が保存される‘ｋｅｙ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ’セグメント、各サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０の代表キー値が保存された‘ｈｉｇｈ＿ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ’セグメント１１３、及び代表キー値が表す範囲に該当するマルチキー値を含むサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０に対する識別情報を含む。サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０に対する識別情報は、サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０が保存されたコンテナのコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）及びサブキーインデックス識別子情報がそれぞれ保存された‘ｓｕｂ＿ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒ’セグメント及び‘ｓｕｂ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ’セグメントを含む。
【００８２】
メタデータ構造で定義されるサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０は、該当サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０に含まれたマルチキー値に対するリストを提供するが、このリストは、該当サブキーインデックスセクション１３０に含まれたマルチキー値及び前記マルチキー値を有するメタデータフラグメントに対する識別情報（すなわち、メタデータフラグメントが保存されたコンテナのコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）及び前記メタデータフラグメントの識別子情報（ｈａｎｄｌｅ＿ｖａｌｕｅ））を提供する。
【００８３】
サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０は、キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０で定義されたサブキーインデックス識別子情報が保存される‘ｓｕｂ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ’セグメントと、マルチキー値が保存される‘ｋｅｙ＿ｖａｌｕｅ＿ｄｅｃｒｉｐｔｏｒ’セグメント１１４と、マルチキー値を有するメタデータフラグメントに対する識別情報とを含む。メタデータフラグメントに対する識別情報は、メタデータフラグメントが保存されたコンテナのコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）及びフラグメントデータ識別子情報（ｈａｎｄｌｅ＿ｖａｌｕｅ）がそれぞれ保存された‘ｔａｒｇｅｔ＿ｃｏｎｔａｉｎｅｒ’セグメント及び‘ｔａｒｇｅｔ＿ｈａｎｄｌｅ’セグメントを含む。前記メタデータ構造はインデックス情報を例示的に示した図１０によりさらに容易に理解されうる。
【００８４】
図１０は、チャンネル番号及び放送時間に対するマルチキーを含むマルチキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクションを図示しており、前記図面に図示された前記チャンネル番号及び放送時間に関するマルチキーが含まれたメタデータフラグメントの上位ノードは図３に図示されたように‘ＢｒｏａｄｃａｓｔＥｖｅｎｔ’３１０である。したがって、‘ｆｒａｇｍｅｎｔ＿ｘｐａｔｈ＿ｐｔｒ’セグメント１１１には‘ＢｒｏａｄｃａｓｔＥｖｅｎｔ’フラグメントに対するＸＰａｔｈ‘／ＴＶＡＭａｉｎ／ＰｒｏｇｒａｍＤｅｓｃｒｉｐｔｉｏｎ／ＰｒｏｇｒａｍＬｏｃａｔｉｏｎＴａｂｌｅ／ＢｒｏａｄｃａｓｔＥｖｅｎｔ’が保存され、‘ｋｅｙ＿ｄｅｓｃｒｉｐｔｏｒ’セグメント１１２には‘ＢｒｏａｄｃａｓｔＥｖｅｎｔ’フラグメントに対するチャンネル番号及び放送時間のマルチキーのＸＰａｔｈである‘＠ＳｅｒｖｉｃｅＩｄ’３１１ａ及び‘ＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＴｉｍｅ’３１１ｂがそれぞれ保存される。このようなメタデータ構造は一つ以上の検索条件、すなわち、複合条件検索時にメタデータフラグメントに対する検索及びアクセスを効率的に処理可能にする。
【００８５】
本実施例ではチャンネル番号及び放送時間に対するマルチキーを例示したが、いろいろな他のマルチキーが組み合わせられて使われることもできる。例えば、放送スケジュールに関連してプログラムの開始時間及び終了時間に対するマルチキー、プログラム内人物（俳優、監督など）の姓及び名前に対するマルチキーなどが使われうる。
【００８６】
放送スケジュールに関連してプログラムの開始時間及び終了時間に対するマルチキーが使われる場合、放送スケジュールに関連してプログラムの開始時間及び終了時間に対するマルチキーが含まれたメタデータフラグメントの上位ノードは‘Ｓｃｈｅｄｕｌｅ’（図示せず）である。したがって、‘ｆｒａｇｍｅｎｔ＿ｘｐａｔｈ＿ｐｔｒ’セグメント１１１には、‘Ｓｃｈｅｄｕｌｅ’フラグメントに対するＸＰａｔｈ‘／ＴＶＡＭａｉｎ／ＰｒｏｇｒａｍＤｅｓｃｒｉｐｔｉｏｎ／ＰｒｏｇｒａｍＬｏｃａｔｉｏｎＴａｂｌｅ／Ｓｃｈｅｄｕｌｅ’が保存され、‘ｋｅｙ＿ｄｅｓｃｒｉｐｔｏｒ’セグメント１１２には、‘Ｓｃｈｅｄｕｌｅ’フラグメントに対するプログラムの開始時間及び終了時間のマルチキーのＸｐａｔｈである‘＠ｓｔａｒｔ’及び‘＠ｅｎｄ’がそれぞれ保存される。
【００８７】
また、プログラム内人物（俳優、監督など）の姓及び名前に対するマルチキーが使われる場合、プログラム内人物の姓及び名前に対するマルチキーが含まれたメタデータフラグメントの上位ノードは ‘ＰｅｒｓｏｎＮａｍｅ’（図示せず）である。したがって、‘ｆｒａｇｍｅｎｔ＿ｘｐａｔｈ＿ｐｔｒ’セグメント１１１には、‘ＰｅｒｓｏｎＮａｍｅ’フラグメントに対するＸＰａｔｈである‘ＴＶＡＭａｉｎ／ＰｒｏｇｒａｍＤｅｓｃｒｉｐｔｉｏｎ／ＣｒｅｄｉｔｓＩｎｆｏｒｍａｔｉｏｎＴａｂｌｅ／ＰｅｒｓｏｎＮａｍｅ’が保存され、‘ｋｅｙ＿ｄｅｓｃｒｉｐｔｏｒ’セグメント１１２には、‘ＰｅｒｓｏｎＮａｍｅ’フラグメントに対するプログラム内人物の姓及び名前に対するマルチキーのＸｐａｔｈである‘ＦａｍｉｌｙＮａｍｅ’及び‘ＧｉｖｅｎＮａｍｅ’がそれぞれ保存される。
【００８８】
図１１は、前述した本発明の一実施例による構造を有するメタデータのインデックスを提供する方法を示す。本発明の一実施例によるメタデータのインデックスは、例えば、映像／音声信号を提供する提供者２００により生成される。まず、コンテンツに関する情報、すなわち、メタデータを、前述したフラグメント単位で加工する（Ｓ１００）。前記フラグメントを構成する情報、例えば‘チャンネル番号’及び‘放送時間’に関するキーを組み合わせてマルチキーを提供する（Ｓ２００）。以後、前記提供されたマルチキー別に、すなわち、マルチキーを構成するキー別にサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１１４ａ、１１４ｂが提供されるが（Ｓ３００）、前記サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１１４ａ、１１４ｂには、所定範囲別に分割された前記マルチキーの値が含まれ、前記サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１１４ａ、１１４ｂには、前記マルチキーの値を含むメタデータフラグメント識別情報（すなわち、図９の‘ｔａｒｇｅｔ＿ｃｏｎｔａｉｎｅｒ’セグメント及び‘ｔａｒｇｅｔ＿ｈａｎｄｌｅ’セグメントにそれぞれ保存されたコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）及びフラグメントデータ識別子情報（ｈａｎｄｌｅ＿ｖａｌｕｅ））が含まれる。
【００８９】
以後、前記所定範囲別に分割されたマルチキー値を代表する代表キー値を含むキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０を提供するが（Ｓ４００）、例えば、前記組み合わせられたチャンネル番号／放送時間のマルチキー値の所定範囲（５００〜５０９／０９：１０〜１０：００ １１４ａ、５１０〜５１９／０９：１０〜１０：００ １１４ｂなど）を表す代表キー値（‘５０９／１０：００’ １１３ａ、‘５１９／１０：００’ １１３ｂなど）が含まれる。本実施例では、チャンネル番号は放送時間より大きい優先順位を有する。前記キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０には、前記所定範囲別に分割されたマルチキーの値が保存されたサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１１４ａ、１１４ｂに対する識別情報（すなわち、図９のサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクションが保存されたコンテナのコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）及びサブキーインデックス識別子情報）が含まれる。
【００９０】
一方、マルチキー情報、すなわち、前記提供されたマルチキーを構成する各フィールドが属しているメタデータフラグメントの位置情報及び前記各フィールドの前記メタデータフラグメント内位置情報をマルチキー別に配列するキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１１０を提供する（Ｓ５００）。例えば、‘チャンネル番号’及び‘放送時間’のキーで組み合わせられた場合、組み合わせられた‘チャンネル番号／放送時間’のマルチキー情報、すなわち、インデクシングされる目標メタデータフラグメントのＸＰａｔｈ（／ＴＶＡＭａｉｎ／ＰｒｏｇｒａｍＤｅｓｃｒｉｐｔｉｏｎ／ＰｒｏｇｒａｍＬｏｃａｔｉｏｎＴａｂｌｅ／ＢｒｏａｄｃａｓｔＥｖｅｎｔ）と、前記メタデータフラグメントに対するマルチキーのＸｐａｔｈ（チャンネル番号のＸＰａｔｈ‘＠ＳｅｒｖｉｃｅＩｄ’及び放送時間のＸＰａｔｈ‘ＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＴｉｍｅ’）とがキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１１０に含まれる。
【００９１】
参考に、前述した段階は他の実施例で逆順に行われることもあり、代表キー値を含むキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０を提供する段階（Ｓ４００）または前記キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１１０を提供する段階（Ｓ５００）は実施例によって省略されることもある。
【００９２】
以下図１２を参照して、前述した本発明の一実施例による構造を有するメタデータのインデックスを利用して一つ以上の検索条件に符合するメタデータを得るための検索方法を説明する。
まず、ユーザーから検索条件が入力され（Ｓ１１００）、入力された検索条件に符合するマルチキー値をメタデータのインデックスから検索し（Ｓ１２００）、検索されたマルチキー値を利用して前記マルチキー値に対応するメタデータフラグメントの識別情報を利用して該当メタデータフラグメントを抽出することによって（Ｓ１３００）、検索条件に該当するメタデータを抽出する。入力される検索条件にはフィールド及び検索しようとするフィールドの値も含まれる。
【００９３】
マルチキー値を検索する段階（Ｓ１２００）は、入力された検索条件のフィールドが該当するメタデータのフラグメントの位置情報及び前記フィールドの前記メタデータフラグメント内位置情報を判断する段階（Ｓ１２１０）と、判断された位置情報を利用してキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１１０から前記判断された位置情報と一致する位置情報を持つフィールドで構成されたマルチキーを検索し、前記検索されたマルチキーに対するキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０を検索する段階（Ｓ１２２０）と、前記キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０から検索条件として入力されたフィールドの値を含む代表キー値を検索し、前記検索された代表キー値が代表する範囲のマルチキー値を含むサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１１４ａ、１１４ｂを検索する段階（Ｓ１２３０）と、前記検索されたサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１１４ａ、１１４ｂから検索条件に符合するマルチキー値を検索する段階（Ｓ１２４０）とを含む。
【００９４】
前記段階Ｓ１２２０、Ｓ１２３０及びＳ１３００では、該当キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０及びサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクションを検索する段階、及び該当メタデータフラグメントを抽出する段階は、それぞれ、キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０の識別情報、サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクションの識別情報、及びメタデータフラグメントの識別情報を利用して実施される。
【００９５】
前記図１２による検索方法を、図１０を参照して説明したチャンネル番号及び放送時間に対する検索に適用すれば次の通りである。
例えば、ユーザーが、‘チャンネル番号’が‘５０７〜５１４’であり、‘放送時間’は‘９：３０〜１０：００’である検索条件を入力した場合（Ｓ１１００）、前記‘５０７〜５１４’の範囲を有する‘チャンネル番号’と‘９：３０〜１０：００’の範囲を有する‘放送時間’とを組み合わせたフィールドから該当メタデータフラグメントの位置情報及び前記フィールドの前記メタデータフラグメント内位置情報を判断するが（Ｓ１２１０）、検索条件として入力された‘チャンネル番号’及び‘放送時間’はそれぞれメタデータフラグメント内位置情報として‘＠ＳｅｒｖｉｃｅＩｄ’及び‘ＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＴｉｍｅ’を有するため、これに基づいて該当フラグメントの属性、すなわち、該当メタデータフラグメントの位置情報であるＸＰａｔｈを判断する（Ｓ１２１０）。前記過程を通じて決定された事項は次のように整理できる。
【００９６】
フラグメントのＸＰａｔｈ：
／ＴＶＡＭａｉｎ／ＰｒｏｇｒａｍＤｅｓｃｒｉｐｔｉｏｎ／ＰｒｏｇｒａｍＬｏｃａｔｉｏｎＴａｂｌｅ／ＢｒｏａｄｃａｓｔＥｖｅｎｔ
チャンネル番号のＸＰａｔｈ：＠ＳｅｒｖｉｃｅＩｄ
放送時間のＸＰａｔｈ：ＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＴｉｍｅ
チャンネル番号のキー値：５０７＜＝ＳｅｒｖｉｃｅＩｄ＜＝５１４
放送時間のキー値：９：３０＜＝ＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＴｉｍｅ＜＝１０：００
【００９７】
次に、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１１０から前記メタデータフラグメントのＸＰａｔｈ １１１及びチャンネル番号／放送時間のＸＰａｔｈ １１２に対応する位置情報を持つマルチキーを検索し、検索されたマルチキーを含むインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０に対する識別情報を抽出する（Ｓ１２２０）。本実施例では、チャンネル番号は放送時間より大きい優先順位を有する。抽出された識別情報を持つキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０から検索条件に符合するマルチキー値（５０７〜５１４／０９：３０〜１０：００）が含まれるマルチキー値の範囲（５００〜５０９／０９：１０〜１０：００ １１４ａ、５１０〜５１９／０９：１０〜１０：００ １１４ｂ）を表す代表キー値、すなわち、‘５０９／１０：００’ １１３ａ及び‘５１９／１０：００’ １１３ｂの代表キー値を検索し、前記代表キー値を含むサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１１４ａ、１１４ｂに対する識別情報を抽出し（Ｓ１２３０）、抽出された識別情報を持つサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１１４ａ、１１４ｂから検索条件に符合するマルチキー値（５０７〜５１４／０９：３０〜１０：００）に該当するマルチキー値、すなわち、‘５０７／０９：３０’、‘５０７／０９：４０’、...、‘５０９：１０：００’のキー値及び‘５１０／０９：３０’、‘５１０／０９：４０’、...、‘５１４：１０：００’のキー値を有するマルチキー値を検索する（Ｓ１２４０）。
【００９８】
そして検索されたマルチキー値に対応するメタデータフラグメント識別情報（‘ｔａｒｇｅｔ＿ｃｏｎｔａｉｎｅｒ’セグメント及び‘ｔａｒｇｅｔ＿ｈａｎｄｌｅ’セグメントにそれぞれ保存されたコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）及びフラグメントデータ識別子情報（ｈａｎｄｌｅ＿ｖａｌｕｅ））を抽出し、抽出された識別情報を利用して該当メタデータフラグメントを抽出する（Ｓ１３００）。
【００９９】
図１３は、本発明の一実施例によるメタデータを検索する装置を図示する。本実施例による装置は、図１２を参照して説明した本発明の一実施例によるメタデータを検索する方法が行われる装置である。
【０１００】
前記検索装置は、ユーザーから検索条件を入力される入力部１１００、コンテンツ、コンテンツに対するメタデータまたはメタデータのインデックスを受信する受信部１２００と、受信されたコンテンツ、コンテンツに対するメタデータまたはメタデータのインデックスを保存する保存部１３００と、前記入力部１１００から入力された検索条件に符合するマルチキー値をメタデータのインデックスから検索し、前記検索されたマルチキー値を利用して該当メタデータを抽出する制御部１４００と、前記制御部１４００の検索結果を出力する出力部１５００とを含む。
前記制御部１４００は、入力部１１００を通じ入力された検索条件を、前記保存部１３００に保存されたメタデータのインデックスに含まれたマルチキー値と比較する。
【０１０１】
前述した本発明の一実施例による検索方法のうち入力された検索条件に符合するマルチキーを検索する段階（Ｓ１２００）、または検索されたマルチキーに対応するフラグメントの識別情報を利用して該当フラグメントを抽出する段階（Ｓ１３００）は制御部１４００で行われ、前記段階に関する説明は図１２と関連した説明部分を参照されたい。
【０１０２】
本発明は図面に図示された一実施例を参考として説明されたが、これは例示的なものに過ぎず、当業者ならばこれより多様な変形及び均等な他の実施例が可能であるという点を理解できる。したがって、本発明の真の技術的保護範囲は特許請求の範囲の技術的思想により定められねばならない。
【産業上の利用可能性】
【０１０３】
本発明はコンテンツに関する情報のさらに効率的な検索及びアクセスが可能なメタデータのインデックス構造、このような構造を持つメタデータのインデックスを提供する方法、前記メタデータのインデックスを利用したメタデータの検索方法及びそれを利用した検索装置を提示した。
一方、本発明により、ＴＶＡメタデータに対する複合条件の同時検索が可能であり、ＴＶＡメタデータに対する複合条件検索が行われる場合、検索装置のオーバーヘッドが減少して検索時間が短縮され、検索装置の効率が高まる。
【図面の簡単な説明】
【０１０４】
【図１】一般的なＰＤＲの概念図である。
【図２】一般的なＥＰＧアプリケーションでのグリッドガイド画面を示す図面である。
【図３】ＴＶＡフォーラムで定義する一般的なメタデータの構造を示す図面である。
【図４】ＴＶＡフォーラムで定義する一般的なフラグメントの概念図である。
【図５】ＴＶＡフォーラムで定義する一般的なコンテナの概念図である。
【図６】従来のシングルキー概念のメタデータのインデックス構造を示す図面である。
【図７Ａ】従来のシングルキー概念を利用したメタデータのインデックス構造及び検索過程を示す図面である。
【図７Ｂ】従来のシングルキー概念を利用したメタデータのインデックス構造及び検索過程を示す図面である。
【図８Ａ】従来のシングルキーを利用したメタデータの検索方法を説明した図面である。
【図８Ｂ】従来のシングルキーを利用したメタデータの検索方法を説明した図面である。
【図９】本発明によるマルチキー概念のメタデータのインデックス構造を示す図面である。
【図１０】本発明によるマルチキー概念を利用したメタデータのインデックス構造及び検索過程を示す図面である。
【図１１】本発明によるメタデータのインデックスを提供する方法を示す図面である。
【図１２】本発明によるメタデータの検索方法を示す図面である。
【図１３】本発明によるメタデータを検索する装置の構造図である。
【図１】
2005222546.tif 000009
【図２】
2005222546.tif 000010
【図３】
2005222546.tif 000011
【図４】
2005222546.tif 000012
【図５】
2005222546.tif 000013
【図６】
2005222546.tif 000014
【図７Ａ】
2005222546.tif 000015
【図７Ｂ】
2005222546.tif 000016
【図８Ａ】
2005222546.tif 000017
【図８Ｂ】
2005222546.tif 000018
【図９】
2005222546.tif 000019
【図１０】
2005222546.tif 000020
【図１１】
2005222546.tif 000021
【図１２】
2005222546.tif 000022
【図１３】
2005222546.tif 000023
【手続補正書】
【提出日】平成17年4月25日(2005.4.25)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
（ａ）検索条件を入力される段階と、  （ｂ）前記入力された検索条件に符合するマルチキー値をメタデータのインデックスから検索する段階と、  （ｃ）前記検索されたマルチキー値を利用して該当メタデータを抽出する段階と、を含むメタデータの検索方法。
【請求項２】
前記マルチキー値は、前記メタデータの所定フィールドを組み合わせて構成される請求項１に記載のメタデータの検索方法。
【請求項３】
前記メタデータのインデックスは、所定のマルチキー値及び前記マルチキー値に対応するメタデータの識別情報を含む請求項１に記載のメタデータの検索方法。
【請求項４】
前記マルチキーリストをさらに含む請求項３に記載のメタデータの検索方法。
【請求項５】
前記マルチキー値の所定範囲を代表する代表キー値をさらに含む請求項４に記載のメタデータの検索方法。
【請求項６】
前記代表キー値は、該当範囲の値のうちの最大値、最小値または中間値である請求項５に記載のメタデータの検索方法。
【請求項７】
前記メタデータは、ツリー構造のデータ構造を有し、前記ツリー構造の所定範囲別に分割されたフラグメントで構成され、  前記マルチキーを構成するフィールドは、前記フラグメントを構成する情報のうちいずれか一つに対応する請求項５に記載のメタデータの検索方法。
【請求項８】
前記メタデータの識別情報は前記フラグメントの識別情報である請求項７に記載のメタデータの検索方法。
【請求項９】
前記マルチキーリストは、前記マルチキーを構成するフィールドが属しているフラグメントの前記データ構造内位置情報と、  前記フィールドの前記フラグメント内位置情報と、を含む請求項７に記載のメタデータの検索方法。
【請求項１０】
前記位置情報はＸＰａｔｈで表現される請求項９に記載のメタデータの検索方法。
【請求項１１】
前記メタデータはＴＶＡで定義するメタデータの構造を有する請求項１に記載のメタデータの検索方法。
【請求項１２】
前記マルチキー値を検索する段階（ｂ）は、前記入力された検索条件の値と前記マルチキー値とを比較して大きさが一致するマルチキー値を前記メタデータのインデックスから検索する段階である請求項１に記載のメタデータの検索方法。
【請求項１３】
前記マルチキー値の大きさ比較は、前記マルチキーを構成する多数のフィールドｋ１，ｋ２，ｋ３…ｋｎに対して優先順位（ｋ１＞ｋ２＞ｋ３＞…ｋｎ）を付与し、優先順位の高いフィールドから順に相互比較して最初に現れる値の大きさが異なるフィールドにより前記マルチキー値の大きさを決定し、大きさが異なるフィールドがない場合には両マルチキー値の大きさが同一であると判定するものの、各フィールドの比較は該当フィールドの値が数字である場合には算術的な大小比較法則により、文字である場合には辞書的な順序により大小を決定する請求項１２に記載のメタデータの検索方法。
【請求項１４】
前記メタデータを抽出する段階（ｃ）は、  （ｃ１）前記メタデータのインデックスから前記検索されたマルチキー値に対応するメタデータの識別情報を抽出する段階と、  （ｃ２）前記抽出された識別情報を利用して該当メタデータを抽出する段階と、を含む請求項３に記載のメタデータの検索方法。
【請求項１５】
前記マルチキー値を検索する段階（ｂ）は、  （ｂ１）前記入力された検索条件に符合する前記代表キー値を検索する段階と、  （ｂ２）前記代表キー値が代表する範囲のマルチキー値から前記入力された検索条件に符合するマルチキー値を検索する段階と、を含む請求項５に記載のメタデータの検索方法。
【請求項１６】
前記マルチキー値を検索する段階（ｂ）は、  （ｂ３）前記マルチキーリストから前記検索条件に符合するマルチキーを検索する段階と、  （ｂ４）前記検索されたマルチキーがインデックスするマルチキー値から前記入力された検索条件に符合するマルチキー値を検索する段階と、を含む請求項９に記載のメタデータの検索方法。
【請求項１７】
前記マルチキーを検索する段階（ｂ３）は、  （ｂ３−１）前記検索条件のフィールドが属しているフラグメントの前記データ構造内位置情報、及び前記フィールドの前記フラグメント内位置情報を判断する段階と、  （ｂ３−２）前記マルチキーリストから、前記判断された位置情報と一致する位置情報を持つフィールドで構成されたマルチキーを検索する段階と、を含む請求項１６に記載のメタデータの検索方法。
【請求項１８】
前記検索されたマルチキーがインデックスするマルチキー値から前記入力された検索条件に符合するマルチキー値を検索する段階（ｂ４）は、  （ｂ４−１）前記入力された検索条件に符合する前記代表キー値を検索する段階と、  （ｂ４−２）前記代表キー値が代表する範囲のマルチキー値から前記入力された検索条件に符合するマルチキー値を検索する段階と、を含む請求項１６に記載のメタデータの検索方法。
【請求項１９】
検索条件を入力される入力部と、  前記入力された検索条件に符合するマルチキー値をメタデータのインデックスから検索し、前記検索されたマルチキー値を利用して該当メタデータを抽出する制御部と、を含むメタデータの検索装置。
【請求項２０】
前記マルチキーは前記メタデータの所定フィールドを組み合わせて構成される請求項１９に記載のメタデータの検索装置。
【請求項２１】
前記メタデータのインデックスは、所定のマルチキー値及び前記マルチキー値に対応するメタデータの識別情報を含む請求項１９に記載のメタデータの検索装置。
【請求項２２】
前記マルチキーリストをさらに含む請求項２１に記載のメタデータの検索装置。
【請求項２３】
前記マルチキー値の所定範囲を代表する代表キー値をさらに含む請求項２２に記載のメタデータの検索装置。
【請求項２４】
前記代表キー値は、該当範囲の値のうちの最大値、最小値または中間値である請求項２３に記載のメタデータの検索装置。
【請求項２５】
前記メタデータは、ツリー構造のデータ構造を有し、前記ツリー構造の所定範囲別に分割されたフラグメントで構成され、  前記マルチキーを構成するフィールドは前記フラグメントを構成する情報のうちいずれか一つに対応する請求項２３に記載のメタデータの検索装置。
【請求項２６】
前記メタデータの識別情報は前記フラグメントの識別情報である請求項２５に記載のメタデータの検索装置。
【請求項２７】
前記マルチキーリストは、  前記マルチキーを構成するフィールドが属しているフラグメントの前記データ構造内位置情報と、  前記フィールドの前記フラグメント内位置情報と、を含む請求項２５に記載のメタデータの検索装置。
【請求項２８】
前記位置情報はＸＰａｔｈで表現される請求項２７に記載のメタデータの検索装置。
【請求項２９】
前記メタデータはＴＶＡで定義するメタデータの構造を有する請求項１９に記載のメタデータの検索装置。
【請求項３０】
前記制御部は、前記入力された検索条件の値と前記マルチキー値とを比較して大きさが一致するマルチキー値を前記メタデータのインデックスから検索する請求項１９に記載のメタデータの検索装置。
【請求項３１】
前記マルチキー値の大きさ比較は、前記マルチキーを構成する多数のフィールドｋ１，ｋ２，ｋ３…ｋｎに対して優先順位（ｋ１＞ｋ２＞ｋ３＞…ｋｎ）を付与し、優先順位の高いフィールドから順に相互比較して最初に現れる値の大きさが異なるフィールドにより前記マルチキー値の大きさを決定し、大きさが異なるフィールドがない場合には両マルチキー値の大きさが同一であると判定するものの、各フィールドの比較は該当フィールドの値が数字である場合には算術的な大小比較法則により、文字である場合には辞書的な順序により大小を決定する請求項３０に記載のメタデータの検索装置。
【請求項３２】
前記制御部は、前記メタデータのインデックスから前記検索されたマルチキー値に対応するメタデータの識別情報を抽出し、前記抽出された識別情報を利用して該当メタデータを抽出する請求項２１に記載のメタデータの検索装置。
【請求項３３】
前記制御部は、前記入力された検索条件に符合する前記代表キー値を検索し、前記代表キー値が代表する範囲のマルチキー値から前記入力された検索条件に符合するマルチキー値を検索する請求項２３に記載のメタデータの検索装置。
【請求項３４】
前記制御部は、前記マルチキーリストから前記検索条件に符合するマルチキーを検索し、前記検索されたマルチキーがインデックスするマルチキー値から前記入力された検索条件に符合するマルチキー値を検索する請求項２７に記載のメタデータの検索装置。
【請求項３５】
前記制御部は、前記検索条件のフィールドが属しているフラグメントの前記データ構造内位置情報、及び前記フィールドの前記フラグメント内位置情報を判断し、前記マルチキーリストから、前記判断された位置情報と一致する位置情報を持つフィールドで構成されたマルチキーを検索する請求項３４に記載のメタデータの検索装置。
【請求項３６】
前記制御部は、前記入力された検索条件に符合する前記代表キー値を検索し、前記代表キー値が代表する範囲のマルチキー値から前記入力された検索条件に符合するマルチキー値を検索する請求項３４に記載のメタデータの検索装置。
【請求項３７】
メタデータ及び前記メタデータのインデックスを受信する受信部と、  前記メタデータ及び前記メタデータのインデックスを保存する保存部と、  前記制御部による検索結果を出力する出力部と、をさらに含む請求項１９に記載のメタデータの検索装置。
【請求項３８】
マルチキーのリストを有するインデックスと該マルチキーを定義するための位置情報とを用いて、複数のフラグメントに分割されたメタデータを検索する方法であって、  前記メタデータのインデックスから、該メタデータのフィールドの組み合わせの検索条件に対応するマルチキーを検索するステップと、  前記検索されたマルチキーを用いて前記メタデータのフラグメントを抽出するステップとを備えた方法。
【請求項３９】
前記マルチキーを検索するステップは、  前記メタデータに関する前記検索条件のフィールドに対応する位置情報を決定するステップと、  前記検索条件のフィールドに関する前記位置情報に対応する前記マルチキーを検索するステップとを備えた請求項３８記載の方法。
【請求項４０】
前記マルチキーを検索するステップは、前記検索条件を満足する前記マルチキーの値を検索するステップを備えた請求項３８記載の方法。
【請求項４１】
前記値を検索するステップは、前記インデックスからの前記マルチキーの値の中から前記値を検索するステップを備え、  前記フラグメントを抽出するステップは、前記マルチキーの値に対応する前記フラグメントの識別情報を用いて、前記メタデータのフラグメントを抽出するステップを備えた請求項４０記載の方法。
【請求項４２】
前記検索条件を満足する前記マルチキーの複数の値に応答して、前記フラグメントを抽出するステップは、前記検索条件を満足する前記マルチキーの値に対応する前記メタデータのフラグメントのそれを抽出するステップを備えた請求項４１記載の方法。
【請求項４３】
前記値を検索するステップは、  前記マルチキーの値の範囲に対応する前記インデックスの代表キー値の中から、前記検索条件を満足する代表キー値を検索するステップと、  前記代表キー値に対応する値の範囲の中から前記値を検索するステップとを備えた請求項４１記載の方法。
【請求項４４】
マルチキーのリストを有するインデックスと前記マルチキーを定義するための位置情報とを用いて、複数のフラグメントに分割されたメタデータを検索する方法であって、該方法は、  前記メタデータのインデックスから、該メタデータのフィールドの組み合わせの検索条件に対応するマルチキーの値を検索するステップと、  前記検索された値に対応する前記メタデータのフラグメントを抽出するステップとを備えた方法。
【請求項４５】
前記検索条件を満足する前記マルチキーの複数の値に応答して、前記フラグメントを抽出するステップは、前記検索条件を満足する前記マルチキーの値に対応する前記メタデータのフラグメントのそれを抽出するステップを備えた請求項４４記載の方法。
【請求項４６】
複数のフラグメントに分割されたメタデータを検索する方法であって、該方法は、  フラグメントに関する位置情報と前記フラグメント内の少なくとも２つのキーを定義する位置情報との複数の組み合わせを備えたリストをアクセスするステップと、  前記リストから、前記メタデータの少なくとも２つのキーの検索条件に対応する組み合わせを検索するステップとを備えた方法。
【請求項４７】
前記検索された組み合わせによって識別される前記メタデータに関する識別情報に対応する前記メタデータの１又は２以上のフラグメントを抽出するステップを更に備えた請求項４６記載の方法。
【請求項４８】
前記フラグメントに関する前記位置情報と前記少なくとも２つのキーを定義する前記位置情報とのうちの何れか一方は、所定のコードで表された請求項４６記載の方法。
【請求項４９】
請求項３８に記載の動作を実施するためのコンピュータ実行可能な命令を備えたコンピュータ読み取り可能な記録媒体。
【請求項５０】
請求項４４に記載の動作を実施するためのコンピュータ実行可能な命令を備えたコンピュータ読み取り可能な記録媒体。
【請求項５１】
請求項４６に記載の動作を実施するためのコンピュータ実行可能な命令を備えたコンピュータ読み取り可能な記録媒体。
【請求項５２】
マルチキーのリストを有するインデックスと該マルチキーを定義する位置情報とを用いて、複数のフラグメントに分割されたメタデータを検索するための装置であって、  検索条件を入力する入力部と、  前記メタデータのインデックスから、該メタデータのフィールドの組み合わせの前記検索条件に対応するマルチキーを検索し、且つ前記検索されたキーを用いて前記メタデータのフラグメントを抽出する制御部とを備えた装置。
【請求項５３】
前記制御部は、前記インデックスからの前記マルチキーの値の中から前記検索条件を満足する前記マルチキーの値を検索し、且つ前記マルチキーの値に対応する前記フラグメントの識別情報を用いて前記フラグメントを抽出する請求項５２記載の装置。
【請求項５４】
前記検索条件を満足する前記マルチキーの複数の値に応答して、前記制御部は、前記検索条件を満足する前記マルチキーの値に対応する前記メタデータのフラグメントのそれを抽出する請求項５３記載の装置。
【請求項５５】
前記制御部は、前記マルチキーの値の範囲に対応する前記インデックスの代表キー値の中から、前記検索条件を満足する代表キー値を検索し、且つ前記代表キー値に対応する値の範囲の中から前記値を検索する請求項５３記載の装置。
【請求項５６】
前記位置情報は、ＸＰａｔｈで表された請求項５２記載の装置。
【請求項５７】
前記位置情報の少なくとも一部は、所定のコードで表された請求項５２記載の装置。
【請求項５８】
前記メタデータは、ＴＶＡフォーラムで定義されたようなメタデータである請求項５２記載の装置。
【請求項５９】
マルチキーのリストを有するインデックスと該マルチキーを定義する位置情報とを用いて、複数のフラグメントに分割されたメタデータを検索するための装置であって、  検索条件を入力する入力部と、  前記メタデータのインデックスから、該メタデータのフィールドの組み合わせの前記検索条件に対応するマルチキーの値を検索し、且つ前記検索された値を用いて前記メタデータのフラグメントを抽出する制御部とを備えた装置。
【請求項６０】
前記制御部は、前記インデックスからの前記マルチキーの値の中から前記検索条件を満足する前記マルチキーの値を検索し、且つ前記マルチキーの値に対応する前記フラグメントの識別情報を用いて前記フラグメントを抽出する請求項５９記載の装置。
【請求項６１】
前記制御部は、前記マルチキーの値の範囲に対応する前記インデックスの代表キー値の中から、前記検索条件を満足する代表キー値を検索し、且つ該代表キー値に対応する値の範囲の中から前記値を検索する請求項６０記載の装置。
【請求項６２】
前記検索条件を満足する前記マルチキーの複数の値に応答して、前記制御部は、前記検索条件を満足する前記マルチキーの値に対応する前記メタデータのフラグメントのそれを抽出する請求項５９記載の装置。
【請求項６３】
前記位置情報の少なくとも一部は、所定のコードで表された請求項５９記載の装置。
【請求項６４】
前記メタデータおよび該メタデータの前記インデックスを入力する入力部と、  前記メタデータおよび該メタデータの前記インデックスをその中に記憶する記憶部と、  前記制御部による前記検索結果を出力する出力部とを更に備えた請求項５９記載の装置。
【請求項６５】
マルチキーのリストを有するインデックスと該マルチキーを定義する位置情報とを用いて、複数のフラグメントに分割されたメタデータを検索するための装置であって、  前記メタデータの少なくとも２つのキーの検索条件を入力する入力部と、  フラグメントに関する位置情報と該フラグメント内の少なくとも２つのキーを定義する位置情報との複数の組み合わせを含むリストから、前記検索条件に対応する組み合わせを選択する制御部とを備えた装置。
【請求項６６】
前記制御部は、前記選択された組み合わせにより識別される前記メタデータに関する識別情報に対応する前記メタデータの１又は２以上のフラグメントを更に抽出する請求項６５記載の装置。
【請求項６７】
前記フラグメントに関する前記位置情報と前記少なくとも２つのキーを定義する前記位置情報とのうちの何れか一方は、所定のコードで表された請求項６５記載の装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、コンテンツに関する情報を検索するために提供されるメタデータのインデックス構造及び前記メタデータのインデックス構造を有するメタデータのインデックスを提供する方法と、前記メタデータのインデックスを利用したメタデータの検索方法とそれを利用した検索装置に係り、特にＴＶ−Ａｎｙｔｉｍｅ（以下‘ＴＶＡ’）フォーラムで定義するデジタルコンテンツに対するＸＭＬメタデータ（以下‘ＴＶＡメタデータ’）をフラグメントという独立的な単位に分けて伝送する時、コンテンツに関する情報をより効率的に検索可能とするためにマルチキーを含むメタデータのインデックス構造及び前記メタデータのインデックス構造を有するメタデータのインデックスを提供する方法と、前記メタデータのインデックスを利用したメタデータの検索方法とそれを利用した検索装置に関する。
【背景技術】
【０００２】  ＴＶＡフォーラムは、個人用大容量保存装置を持つＰＤＲ（Ｐｅｒｓｏｎａｌ Ｄｉｇｉｔａｌ Ｒｅｃｏｒｄｅｒ）などのユーザー環境でオーディオビジュアル関連サービス提供のための標準を開発することを目的として１９９９年９月に設立された民間標準機構であって、あらゆるユーザーが個人用保存装置に基づいて自分の所望の方法で所望の時間に多様な形態（既存の放送サービス及びオンライン対話形サービスなど）のプログラムを視聴可能にすることをその具体的なサービス目標としている。【０００３】  ＴＶＡフォーラムはビジネスモデル、システム／伝送インターフェース／コンテンツ参照、技術、メタデータ、コンテンツ保護管理などのワーキンググループに分けて標準化を進めており、本発明と関連したメタデータについては２００２年６月に“１ｓｔ Ｄｒａｆｔ ｏｆ Ｍｅｔａｄａｔａ Ｓｐｅｃｉｆｉｃａｔｉｏｎ ＳＰ００３ｖ１．３”が発表されている。【０００４】  図１を参照してＰＤＲの構成を簡略に説明すれば、ＰＤＲ １００は映像／音声信号を提供する提供者２００から空中波(sky wave)、衛星波、インターネット網などの多様なネットワークを通じて映像／音声信号及びメタデータを受信し、必要に応じて視聴者の視聴パターン、好みなどを収集して映像／音声信号を提供する提供者２００に送信する。ＰＤＲ １００は受信された映像／音声信号及びメタデータを保存する大容量保存装置、映像／音声信号の保存及び再生のためのソフトウェア及び映像／音声信号に対するメタデータを検索(retrieve)／表示(display)するためのＥＰＧ（Ｅｌｅｃｔｒｏｎｉｃ Ｐｒｏｇｒａｍ Ｇｕｉｄｅ）アプリケーションを含み、ユーザーは図２に図示されたＥＰＧアプリケーションのグリッドガイド画面などを通じて映像／音声データに関するメタデータ、すなわち、プログラムタイトル、プログラム再生時間などを確認し、所望のプログラムを選択してネットワークを通じてリアルタイムで受信するか、または既に大量保存装置に保存されている映像／音声データを再生させる。【０００５】  メタデータとは、プログラムタイトル及び概要などのコンテンツに対する説明的なデータを意味し、“データに関するデータ(data about data)”と定義される。ＴＶＡフォーラムのＴＶＡメタデータ規格ではＸＭＬに関する標準機構Ｗ３Ｃの標準であるＸＭＬ Ｓｃｈｅｍａ言語（Ｗ３ＣのＸＭＬ １．０参照）を使用してその構造を定義する一方、各メタデータエレメント及び属性の意味をともに規定している。放送コンテンツに関連したＴＶＡメタデータは、図３に図示されたように“ＴＶＡＭａｉｎ”３００というルートノードを有するＸＭＬ文書で構成され、例えば、プログラムに関するメタデータは“ＰｒｏｇｒａｍＤｅｓｃｒｉｐｔｉｏｎ”ノードの下に、プログラム情報（ＰｒｏｇｒａｍＩｎｆｏｒｍａｔｉｏｎ Ｔａｂｌｅ）、グループ情報（ＧｒｏｕｐＩｎｆｏｒｍａｔｉｏｎ Ｔａｂｌｅ）、プログラム位置情報（ＰｒｏｇｒａｍＬｏｃａｔｉｏｎ Ｔａｂｌｅ）、サービス情報（ＳｅｒｖｉｃｅＩｎｆｏｍａｔｉｏｎ Ｔａｂｌｅ）などのノードで構成される。【０００６】  ＴＶＡフォーラムは、ぼう大なＴＶＡメタデータをストリーム形式で伝送するためにフラグメントという独立的な単位��ＴＶＡメタデータを伝送する。図４を参照してフラグメントの概念を簡略に説明すれば、フラグメントとは、図３に図示されたＸＭＬ文書で構成されたＴＶＡメタデータを所定のツリー構造別に分割したものであって、例えば、ＴＶＡメタデータ全体を“ＴＶＡＭａｉｎ”を上位ノードとして所定の子ノードまで含むツリー構造（フラグメントＴＶＡＭａｉｎ）と、プログラム情報（ＰｒｏｇｒａｍＩｎｆｏｒｍａｔｉｏｎ Ｔａｂｌｅ）を上位ノードとして以下の子ノードまで含むツリー構造（フラグメントＰｒｏｇｒａｍＩｎｆｏｒｍａｔｉｏｎ）と、ブロードキャストイベント情報（ＢｒｏａｄｃａｓｔＥｖｅｎｔ）を上位ノードとして以下の子ノードまで含むツリー構造（フラグメントＢｒｏａｄｃａｓｔＥｖｅｎｔ）とに分割する場合、分割されたツリー構造それぞれはフラグメントになり、このフラグメントは他のフラグメントと関係なく独立的に伝送可能であり、また個別にアクセスが可能である。【０００７】  フラグメントに対する個別のアクセスのために、伝送されたＴＶＡメタデータフラグメントがメタデータツリー構造全体でいかなるノードを参照するか、すなわち、ＴＶＡメタデータフラグメントの上位ノードがいかなるノードに該当するか、そして伝送されたＴＶＡメタデータフラグメント内に含まれたキー（‘キー’はインデクシングのために使われるメタデータの所定フィールドをいうが、ここではメタデータフラグメントが参照するノードの子ノードを意味し、ユーザーが入力するフィールド（検索条件のフィールド）、例えば‘チャンネル番号’または‘放送時間(Published Time)’などがキーに該当する）の前記ＴＶＡメタデータフラグメント内の相対経路を表示する必要があり、このためにＷ３Ｃで定義したＸＰａｔｈ（Ｗ３Ｃで定義したＸＭＬ文書内ノードに対する経路を記述するシンタックス（ｓｙｎｔａｘ））を使用する。【０００８】  一方、フラグメントに対する効率的な検索及びアクセスを提供するためには、メタデータフラグメントに含まれたキーに対するインデックス構造が別途に必要であり、このようなインデックス構造に関する情報、すなわち、インデックス情報も前記メタデータフラグメントとは独立的に伝送される。【０００９】  ＴＶＡフォーラムが提供する環境下で、所定放送時間条件(Published Time condition)に該当するプログラム情報をユーザーが検索しようとする場合、まずフラグメントとは独立的に伝送されるインデックス情報を活用して所望の放送時間条件に合致するメタデータフラグメントの位置（識別子）を把握し、この位置（識別子）に基づいて該当メタデータフラグメントにアクセスして前記放送時間条件に合致するメタデータを抽出する。【００１０】  従来の技術文献（ＴＶ−Ａｎｙｔｉｍｅ Ｓｐｅｃｉｆｉｃａｔｉｏｎ ＴＶ１４５，Ｊ．Ｐ．Ｅｖａｉｎ，“１ｓｔ Ｄｒａｆｔ ｏｆ Ｍｅｔａｄａｔａ Ｓｐｅｃｉｆｉｃａｔｉｏｎ ＳＰ００３ｖ１．３，”ＴＶＡフォーラム１７次会議、モントリオール、カナダ、２００２年６月（以下、“シングルキーインデックス技術文献”）ではメタデータフラグメントインデックスのためのシングルキーインデックス構造を提案している。【００１１】  参考でシングルキーは、以後説明される本発明のマル��キーと区別するために本明細書で使用する概念であって、本発明で使われるマルチキーインデックス構造は同時に多数のキーを使用して多数のキーに該当するメタデータをアクセスできるが、従来技術のシングルキーインデックス構造はメタデータのアクセス時にただ一つのキーだけが使用できる。インデックス構造を説明する前にＴＶＡフォーラムが定義するコンテナ(container)概念をまず説明する。【００１２】  ＴＶＡフォーラムは前述したインデックス情報及びメタデータフラグメントなどのあらゆるデータが伝送される最上位保存所、すなわち、コンテナという最上位伝送形態を定義するが、コンテナを概略的に説明すれば、あらゆるコンテナは多数のセクションから構成され、各セクションに前記インデックス情報またはメタデータフラグメントが保存される。コンテナは運搬する情報によってキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション、キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション、サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション、ストリング保存所（ｓｔｒｉｎｇ＿ｒｅｐｏｓｉｔｏｒｙ）セクション、フラグメントデータ保存所（ｆｒａｇｍｅｎｔ＿ｄａｔａ＿ｒｅｐｏｓｉｔｏｒｙ）セクションなどのインデックス情報セクションを運搬するインデックスコンテナと、エレメントテーブル（ｅｌｅｍｅｎｔｓ＿ｔａｂｌｅ）セクション、ストリング保存所（ｓｔｒｉｎｇ＿ｒｅｐｏｓｉｔｏｒｙ）セクション、フラグメント保存所（ｆｒａｇｍｅｎｔ＿ｄａｔａ＿ｒｅｐｏｓｉｔｏｒｙ）セクションなどのメタデータフラグメントセクションを運搬するデータコンテナとに区分される。前記区分はコンテナに含まれた情報の内容によってなされ、コンテナの構成はインデックスコンテナとデータコンテナのいずれも同一である。【００１３】  図５を参照してＴＶＡフォーラムで定義したコンテナーを説明すれば、コンテナは図示されていないコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）フィールドと多数のセクションとを含み、各セクションは‘ｓｅｃｔｉｏｎ＿ｉｄ’のエンコーディング値によって‘ｓｅｃｔｉｏｎ＿ｂｏｄｙ’に保存された内容が識別される。例えば、‘ｓｅｃｔｉｏｎ＿ｉｄ’のエンコーディング値が‘０Ｘ０００４’であるセクション１０はキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション、エンコーディング値が‘０Ｘ０００５’であるセクション２０はキーインデックス（ｋｅｙ−ｉｎｄｅｘ）セクション、エンコーディング値が‘０Ｘ０００６’であるセクション３０はサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション、エンコーディング値が‘０Ｘ０００１’であるセクション４０はエレメントテーブル（ｅｌｅｍｅｎｔ＿ｔａｂｌｅ）セクション、エンコーディング値が‘０Ｘ０００３’であるセクション５０はフラグメントデータ保存所（ｆｒａｇｍｅｎｔ＿ｄａｔａ＿ｒｅｐｏｓｉｔｏｒｙ）セクションとしてそれぞれ識別される。【００１４】  ＴＶＡメタデータフラグメントはデータコンテナのフラグメントデータ保存所（ｆｒａｇｍｅｎｔ＿ｄａｔａ＿ｒｅｐｏｓｉｔｏｒｙ）セクション５０内に保存されて伝送されるが、前記データコンテナ内のＴＶＡメタデータフラグメントに対する識別子情報（ｈａｎｄｌｅ＿ｖａｌｕｅ）フィールドはエレメントテーブルセクション４０に含まれる。  要するに、ＴＶＡメタデータフラグメントはＴＶＡメタデータフラグメントが含まれたコンテナのコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）及びメタデータフラグメント識別子情報（ｈａｎｄｌｅ＿ｖａｌｕｅ）だけによって識別される。【００１５】  前述したシングルキーインデックス技術文献では前述したデータコンテナに保存されたＴＶＡメタデータフラグメントをインデクシングするためのシングルキーインデックス構造、すなわち、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１０、キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション２０、及びサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０の構造を提案している。前記構造のシンタックスについてはシングルキーインデックス技術文献に詳細に記述されているので具体的な説明は省略し、以下では前記構造をインデックス情報のセグメントで表現した図６を参照して前記構造を説明する。【００１６】  シングルキーインデックス構造で定義されるキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１０は、伝送されるあらゆるシングルキーのリストを提供する。このリストには、各キーを定義するキー情報と、後述されるキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション２０に関する識別情報とが含まれる。前記キー情報には、（１）シングルキーと関連したメタデータフラグメントの位置情報（ＴＶＡではＸＰａｔｈ（ｆｒａｇｍｅｎｔ＿ｘｐａｔｈ＿ｐｔｒ）で表現される）と、（２）キーの前記メタデータフラグメント内の位置情報（ＴＶＡではキーとして使われるノードの該当フラグメント内の相対経路に対するＸＰａｔｈ（ｋｅｙ＿ｘｐａｔｈ＿ｐｔｒ）で表現される）とが含まれる。【００１７】  前記メタデータフラグメントのＸＰａｔｈはＴＶＡメタデータＸＭＬ文書のルートノードに対する経路、すなわち、絶対経路である。そして、シングルキーとして使われるノードのＸＰａｔｈ、すなわち、シングルキーのＸＰａｔｈは関連メタデータフラグメントに対するシングルキーの相対経路を示す。メタデータフラグメントに対するＸＰａｔｈ及びシングルキーに対するＸＰａｔｈはそれぞれ‘ｆｒａｇｍｅｎｔ＿ｘｐａｔｈ＿ｐｔｒ’セグメント１１及び‘ｋｅｙ＿ｘｐａｔｈ＿ｐｔｒ’セグメント１２に保存される。【００１８】  また、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１０には後述される各シングルキーのキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション２０に対する識別情報（すなわち、キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション２０が保存されたコンテナのコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）及びキーインデックス識別子情報）が含まれるが、前記コンテナ識別子情報及びキーインデックス識別子情報はそれぞれキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１０の‘ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒ’セグメント及び‘ｋｅｙ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ’セグメントに保存されて伝送される。【００１９】  シングルキーインデックス構造で定義されるキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション２０は、後述されるあらゆるサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０のリストを提供するが、このリストには各サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０に含まれたキー値の範囲を示す情報、すなわち、各サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０内キー値のうち最も大きいキー値（以下‘代表キー値’）、及び各代表キー値に関連したサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０に対する識別情報（すなわち、サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクションが保存されたコンテナのコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）及びサブキーインデックス識別子情報）が含まれる。【００２０】  したがって、キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション２０は、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１０で定義されたキーインデックス識別子情報が保存される‘ｋｅｙ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ’セグメントと、各サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０の代表キー値が保存された‘ｈｉｇｈ＿ｋｅｙ＿ｖａｌｕｅ’セグメント１３と、サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０が保存されたコンテナのコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）と、サブキーインデックス識別子情報がそれぞれ保存された‘ｓｕｂ＿ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒ’セグメント及び‘ｓｕｂ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ’セグメントを含む。【００２１】  シングルキーインデックス構造で定義されるサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０は、該当サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０に含まれたキー値に対するリストを提供するが、このリストには該当サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０に含まれたキー値及び前記キー値を有するメタデータフラグメントに対する識別情報（すなわち、メタデータフラグメントが保存されたコンテナのコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）と、前記メタデータフラグメントの識別子情報（ｈａｎｄｌｅ＿ｖａｌｕｅ））が含まれる。【００２２】  したがって、サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０は、キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション２０で定義されたサブキーインデックス識別子情報が保存される‘ｓｕｂ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ’セグメント、キー値が保存される‘ｋｅｙ＿ｖａｌｕｅ’セグメント１４、前記キー値を有するメタデータフラグメントに対する識別情報としてメタデータフラグメントが保存されたコンテナのコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）が保存された‘ｔａｒｇｅｔ＿ｃｏｎｔａｉｎｅｒ’セグメントと、フラグメントデータ識別子情報（ｈａｎｄｌｅ＿ｖａｌｕｅ）が保存された‘ｔａｒｇｅｔ＿ｈａｎｄｌｅ’セグメントとを含む。【００２３】  前記シングルキーインデックス構造はインデックス情報を例示的に���した図７を通じてさらに容易に理解される。  図７はチャンネル番号、放送時間及び放送再生時間に対するシングルキーを含むキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクションを図示しており、前記チャンネル番号、放送時間及び放送再生時間に関するシングルキーが含まれたメタデータフラグメントの上位ノードは図３に図示されたように‘ＢｒｏａｄｃａｓｔＥｖｅｎｔ’３１０である。したがって、‘ｆｒａｇｍｅｎｔ＿ｘｐａｔｈ＿ｐｔｒ’セグメント１１ａには‘ＢｒｏａｄｃａｓｔＥｖｅｎｔ’フラグメントに対するＸＰａｔｈ‘／ＴＶＡＭａｉｎ／ＰｒｏｇｒａｍＤｅｓｃｒｉｐｔｉｏｎ／ＰｒｏｇｒａｍＬｏｃａｔｉｏｎＴａｂｌｅ／ＢｒｏａｄｃａｓｔＥｖｅｎｔ’が保存されて、‘ｋｅｙ＿ｘｐａｔｈ＿ｐｔｒ’セグメント１２ａには‘ＢｒｏａｄｃａｓｔＥｖｅｎｔ’フラグメントに対するチャンネル番号、放送時間、及び放送再生時間のシングルキーのＸｐａｔｈである‘＠ＳｅｒｖｉｃｅＩｄ’（図３の３１１ａ）、‘ＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＴｉｍｅ’（図３の３１１ｂ）及び‘ＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＤｕｒａｔｉｏｎ’（図３の３１１ｃ）がそれぞれ保存される。【００２４】  参考に、図７Ａは、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクションのうちチャンネル番号（シングルキーのＸｐａｔｈ：＠ＳｅｒｖｉｃｅＩｄ）に対するキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション２０ａ及びサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０ａを図示し、図７Ｂは、放送時間（シングルキーのＸｐａｔｈ：ＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＴｉｍｅ）に対するキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション２０ｂ及びサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション３０ｂを図示する。【００２５】  このようなシングルキーインデックス構造は、ＴＶＡ規格のメタデータフラグメントに対する特定フィールドをキーとするインデックス検索であるシングルキー検索だけを支援するために、一つ以上の検索条件である複合条件検索に対しては効率的でないという短所を有する。例えば、図２のようなグリッドガイド画面に放送プログラムリストを表示するためには２つのフィールド、すなわち、チャンネル番号及び放送時間に対する検索動作が要求される。【００２６】  従来のシングルキーインデックス構造を利用した複合条件検索を説明するために、以下では、チャンネル範囲が５０７〜５１４であり、放送時間が０９：３０〜１０：００であるプログラムリストを求める場合を例として説明する。ＴＶＡメタデータ規格からこのようなプログラムリストに関するメタデータをもたらすための検索条件は次のように表現される。【００２７】    −検索対象フラグメント（ＢｒｏａｄｃａｓｔＥｖｅｎｔ）：    ／ＴＶＡＭａｉｎ／ＰｒｏｇｒａｍＤｅｓｃｒｉｐｔｉｏｎ／ＰｒｏｇｒａｍＬｏｃａｔｉｏｎＴａｂｌｅ／ＢｒｏａｄｃａｓｔＥｖｅｎｔ    −検索条件リスト：    ５０７＜＝ＳｅｒｖｉｃｅＩｄ＜＝５１４    ０９：３０＜＝ＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＴｉｍｅ＜＝１０：００【００２８】  従来のシングルキーインデックス構造で、指定された検索条件に符合するフラグメントを得るためには２つの方法が可能であるが、図８を参照して詳細に説明すれば次の通りである。【００２９】 （１）シングルキーインデックスを利用した検索方法１  第１の方法は、図８Ａに説明されたように、ＳｅｒｖｉｃｅＩｄ及びＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＴｉｍｅに対するそれぞれのシングルキーを使用してシングルキー条件に合うフラグメント集合を検索する。以後、検索されたフラグメント集合を論理積することによって条件に合う最終フラグメント集合を得る。【００３０】  この方式を図７及び図８Ａを参照して詳細に説明すれば次の通りである。まず、チャンネル番号検索に必要なシングルキー情報及びシングルキー値を指定する（Ｓ１１）。シングルキー情報は、検索対象メタデータフラグメントの位置情報として検索対象メタデータフラグメントのＸＰａｔｈと、シングルキーの前記メタデータフラグメント内の位置情報としてシングルキーのＸＰａｔｈとを含む。【００３１】    メタデータフラグメントのＸＰａｔｈ：    ／ＴＶＡＭａｉｎ／ＰｒｏｇｒａｍＤｅｓｃｒｉｐｔｉｏｎ／ＰｒｏｇｒａｍＬｏｃａｔｉｏｎＴａｂｌｅ／ＢｒｏａｄｃａｓｔＥｖｅｎｔ    チャンネル番号のＸＰａｔｈ：＠ＳｅｒｖｉｃｅＩｄ    チャンネル番号のキー値：５０７＜＝ＳｅｒｖｉｃｅＩｄ＜＝５１４【００３２】  次に、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１０ａで前記フラグメントＸＰａｔｈ １１ａとチャンネル番号のＸＰａｔｈ １２ａとに対応するシングルキーを検索し、キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション２０ａに対する識別情報を抽出し、抽出された識別情報を持つキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション２０ａで検索を所望するシングルキーのキー値５０７〜５１４が含まれるキー値の範囲５００〜５０９、５１０〜５１９を表す代表キー値、すなわち、‘５０９’及び‘５１９’ １３ａの代表キー値を探して前記代表キー値‘５０９’及び‘５１９’に関連したキー値５００〜５０９、５１０〜５１９を有するサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１４ａに対する識別情報を抽出する。そして、抽出された識別情報を持つサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１４ａで５０７〜５１４のキー値に該当するメタデータフラグメント識別情報（‘ｔａｒｇｅｔ＿ｃｏｎｔａｉｎｅｒ’セグメント及び‘ｔａｒｇｅｔ＿ｈａｎｄｌｅ’セグメントにそれぞれ保存されたコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）とフラグメントデータ識別子情報（ｈａｎｄｌｅ＿ｖａｌｕｅ））を抽出し、抽出された識別情報を利用して該当メタデータフラグメントを抽出する（Ｓ１２、Ｓ１４）。【００３３】  放送時間検索に必要なシングルキー情報（検索対象メタデータフラグメントのＸＰａｔｈ情報とシングルキーのＸＰａｔｈ情報）及びシングルキー値は、それぞれ    フラグメントのＸＰａｔｈ：    ／ＴＶＡＭａｉｎ／ＰｒｏｇｒａｍＤｅｓｃｒｉｐｔｉｏｎ／ＰｒｏｇｒａｍＬｏｃａｔｉｏｎＴａｂｌｅ／ＢｒｏａｄｃａｓｔＥｖｅｎ���    放送時間のＸＰａｔｈ：ＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＴｉｍｅ    放送時間のキー値：０９：３０＜＝ＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＴｉｍｅ＜＝１０：００  である。【００３４】 前記チャンネル番号検索の段階とほぼ類似した段階を経て０９：３０〜１０：００のキー値に該当するメタデータフラグメントを抽出する（Ｓ１３、Ｓ１５）。前記チャンネル番号及び放送時間に対してそれぞれ抽出されたメタデータフラグメントを論理積演算し、共通したメタデータフラグメントのメタデータを最終結果として図２のようなグリッドガイド画面に提供する（Ｓ１６）。【００３５】 （２）シングルキーインデックスを利用した検索方法２  第２の方法は、図８Ｂに説明されたように、検索条件と関連した２個のシングルキーのうち一つ（例えば、チャンネル番号）だけを使用してフラグメントを検索し（Ｓ２１〜Ｓ２３）、検索されたフラグメントのうち、他の検索条件、即ち放送時間が０９：３０〜１０：００であるフラグメントだけを選ぶ（Ｓ２４）。このようなシングルキーインデックス構造を利用した検索方法は、それぞれのシングルキーを利用して検索することによって得られる中間結果フラグメントの数が非常に大きいために全体工程が非効率的である。第１の方法では、プログラム時間帯に関係なく該当チャンネル範囲のあらゆるプログラムを検索結果としてもたらし、あらゆるチャンネルに対して該当時間帯のプログラムを検索結果としてもたらすために検索結果が非常に大きくなってしまう。さらに、サイズの大きい２つの中間検索結果を併合する過程でも計算の複雑度が高まって受信装置のオーバーヘッドはさらに増加する。第２の方法では一つの中間結果が他の検索条件により追加でフィルタリングされる必要がある。結果的に、シングルキーインデックス構造を利用した複合条件検索によれば、受信装置において多くのオーバーヘッドが発生するおそれがある。更に、シングルキーのための検索条件が入力されると、このメタデータにおける検索条件のフィールドに関する位置情報が決定され、そしてこの決定された位置情報は、該当キーを検索するために、キーインデックスリストにおけるキー情報と比較される。このような場合、両方のＸＰａｔｈの比較が必要であるために、オーバーヘッドが生じる。
【発明の開示】
【発明が解決しようとする課題】
【００３６】 従って、本発明の態様は、コンテンツに関する情報の複合条件検索に有用なメタデータのインデックス構造を提供することである。  また本発明の他の態様は、コンテンツに関する情報の複合条件に有用なメタデータのインデックスを提供する方法と、前記メタデータのインデックスを利用したメタデータを検索する方法と、これを利用した検索装置を提供することである。更に本発明の他の態様は、キー情報、即ちキーを定義する位置情報の少なくとも一部が所定のコードで表されたマルチキーインデックス構造を提供することである。更なる本発明の態様及び／又は利点は、一部が以下で説明され、一部が本記載から明らかになり、または本発明の実施によって理解されるであろう。
【課題を解決するための手段】
【００３７】  本発明の上記及び／又は他の態様を達成するため、複数のフラグメントに分割されたメタデータのインデックス構造であって、前記メタデータのフィールドの組み合わせに対応するマルチキーのリストと、前記リストのマルチキーを定義するための位置情報とを備えたインデックス構造が提供される。前記インデックス構造は、前記マルチキーの値および該マルチキーの値に対応する前記メタデータの識別情報を更に備えてもよい。前記メタデータの識別情報は、前記マルチキーの値に対応する前記メタデータのフラグメントのそれに関する識別情報を備えてもよい。  前記インデックス構造は、前記マルチキーの値の範囲および該マルチキーの値に対応する前記メタデータのフラグメントのそれに関する識別情報を含むサブセクションと、前記マルチキーの値の各範囲を代表する代表キー値を含むセクションと更に備えてもよい。【００３８】  前記リストは前記セクションに関する識別情報を備えてもよく、且つ前記セクションは前記サブセクションに関する識別情報を更に備えてもよい。前記位置情報の少なくとも一部は、所定のコードで表されてもよい。前記位置情報は、前記マルチキーを含むフラグメントの位置情報と該フラグメント内の前記マルチキーの位置情報とを備えてもよい。他の態様において、前記位置情報は、ＸＰａｔｈで表されてもよい。  前記代表キー値のそれぞれは、前記マルチキーの値の対応範囲の中の値であってもよい。また前記実施例で、前記代表キー値は該当範囲の値のうち最大値、最小値または中間値での何れかであってもよい。前記メタデータは、ＴＶＡフォーラムで定義されたようなメタデータであってもよい。  本発明の上記及び／又は他の態様を達成するために、複数のフラグメントに分割されたメタデータの他のインデックス構造であって、マルチキーの値と、前記マルチキーの値に対応する前記メタデータの識別情報と備え、前記マルチキーが、前記メタデータのフィールドの組み合わせに対応するインデックス構造が提供される。前記インデックス構造は、前記マルチキーのリストを更に備えてもよい。前記インデックス構造は、前記マルチキーを定義するための位置情報を更に備え、該位置情報の少なくとも一部は、所定のコードで表される。前記メタデータの識別情報は、前記マルチキーの値に対応する前記メタデータのフラグメントのそれの識別情報を備えてもよい。【００３９】  マルチキーの値の大きさの比較に関し、前記マルチキーは、優先順位（ｋ１＞ｋ２＞ｋ３＞．．．ｋｎ）が付けられた前記メタデータのフィールド（ｋ１，ｋ２，ｋ３．．．ｋｎ）を含んでもよく、且つ前記組み合わせフィールドは、最も高い優先順位を有する１番目のフィールドから始めて順に比較されてもよく、前記値は、前記マルチキーの値が数値である場合には算術的に比較され、又は該マルチキーの値がアルファベットである場合にはアルファベット順の辞書編集順にランク付けされて比較される。前記マルチキーの第１および第２の値は、（ａ１，ａ２，ａ３．．．ａｎ）および（ｂ１，ｂ２，ｂ３．．．ｂｎ）にそれぞれ対応してもよく、前記マルチキーの前記第１および第２の値（ａ１，ａ２，ａ３．．．ａｎ）および（ｂ１，ｂ２，ｂ３．．．ｂｎ）は、異なる大きさを有するフィールドが存在しないところの同一の大きさであるように決定されてもよい。  本発明の上記及び／又は他の態様を達成するため、複数のフラグメントに分割されたメタデータのインデックス構造であって、マルチキーのリストを含み、各マルチキーが前記メタデータのフィールドの組み合わせに対応するキーインデックスリストセクションと、キーインデックスセクションと、前記キーインデックスリストのマルチキーのためのサブキーインデックスセクションとを備え、前記サブキーインデックスセクションは、前記マルチキーの値の範囲および該マルチキーの値に対応する前記メタデータのフラグメントのそれに関する識別情報を含み、前記キーインデックスセクションが、前記マルチキーの値の前記各範囲を代表する代表キー値を含むインデックス構造が提供される。  前記キーインデックスリストセクションは、前記マルチキーを定義するための位置情報を更に備えてもよく、前記位置情報の少なくとも一部は、所定のコードで表される。【００４０】  本発明の上記及び／又は他の態様を達成するため、複数のフラグメントに分割されたメタデータのインデックスを記録するためのデータ構造を備えたコンピュータ読み取り可能な記録媒体であって、前記インデックスが、前記メタデータを検索するために提供される記録媒体が提供される。【００４１】  本発明の上記及び／又は他の態様を達成するため、複数のフラグメントに分割されたメタデータのインデックス構造を提供する方法であって、前記方法は、前記メタデータのフィールドの組み合わせに対応するマルチキーのリストと、該リストのマルチキーを定義するための位置情報とを提供するステップを備えた方法が提供される。  前記方法は、前記マルチキーの値および該マルチキーの値に対応する前記メタデータの識別情報を提供するステップを更に備えてもよい。  前記位置情報は、ＸＰａｔｈで表されてもよい。前記位置情報の少なくとも一部は、所定のコードで表される。前記メタデータは、ＴＶＡフォーラムで定義されたようなメタデータであってもよい。  前記方法は、前記マルチキーの値の範囲および前記マルチキーの値に対応する前記メタデータのフラグメントのそれに関する識別情報を含むサブセクションを提供するステップと、前記マルチキーの値の前記各範囲を代表する代表キー値を含むセクションを提供するステップとを更に備えてもよい。  前記代表キー値のそれぞれは、前記マルチキーの値の対応範囲の中の値である。前記代表キー値は、前記所定範囲内の値うち、最大値、最小値、または中間値の何れかであってもよい。  本発明の上記及び／又は他の態様を達成するため、複数のフラグメントに分割されたメタデータのインデックス構造を提供する他の方法であって、マルチキーの値を提供するステップと、前記マルチキーの値に対応する前記メタデータの識別情報を提供するステップとを備え、前記マルチキーは、前記メタデータのフィールドの組み合わせに対応する方法が提供される。  前記方法は、前記マルチキーのリストを提供するステップを更に備えてもよい。  前記方法は、前記マルチキーを定義するための位置情報を提供するステップを更に備え、該位置情報の少なくとも一部は、所定のコー��で表されてもよい。  前記メタデータの識別情報は、前記マルチキーの値に対応する前記メタデータのフラグメントのそれの識別情報を備えてもよい。  マルチキーの値の大きさの比較に関し、前記マルチキーは、優先順位（ｋ１＞ｋ２＞ｋ３＞．．．ｋｎ）が付けられた前記メタデータのフィールド（ｋ１，ｋ２，ｋ３．．．ｋｎ）を含んでもよく、且つ前記組み合わせフィールドは、最も高い優先順位を有する１番目のフィールドから始めて順に比較されてもよく、前記値は、前記マルチキーの値が数値である場合には算術的に比較され、又は該マルチキーの値がアルファベットである場合にはアルファベット順の辞書編集順にランク付けされて比較される。【００４２】  本発明の上記及び／又は他の態様を達成するため、複数のフラグメントに分割されたメタデータのインデックス構造を提供する更に他の方法であって、該方法は、マルチキーのリストを含み、各マルチキーが前記メタデータのフィールドの組み合わせに対応するキーインデックスリストセクションを提供するステップと、キーインデックスセクションを提供するステップと、前記キーインデックスリストのマルチキーのためのサブキーインデックスセクションを提供するステップとを備え、前記サブキーインデックスセクションは、前記マルチキーの値の範囲および該マルチキーの値に対応する前記メタデータのフラグメントのそれに関する識別情報を含み、前記キーインデックスセクションは、前記マルチキーの値の前記各範囲を代表する代表キー値を含む方法が提供される。  前記キーインデックスリストセクションは、前記マルチキーを定義するための位置情報を備えてもよく、前記位置情報の少なくとも一部は、所定のコードで表される。【００４３】  本発明の上記及び／又は他の態様を達成するため、マルチキーのリストを有するインデックスと該マルチキーを定義するための位置情報とを用いて、複数のフラグメントに分割されたメタデータを検索する方法であって、前記メタデータのインデックスから、該メタデータのフィールドの組み合わせの検索条件に対応するマルチキーを検索するステップと、前記検索されたマルチキーを用いて前記メタデータのフラグメントを抽出するステップとを備えた方法が提供される。  前記マルチキーを検索するステップは、前記メタデータに関する前記検索条件のフィールドに対応する位置情報を決定するステップと、前記検索条件のフィールドに関する前記位置情報に対応する前記マルチキーを検索するステップとを備えてもよい。  前記マルチキーを検索するステップは、前記検索条件を満足する前記マルチキーの値を検索するステップを備えてもよい。  前記値を検索するステップは、前記インデックスからの前記マルチキーの値の中から前記値を検索するステップを備え、前記フラグメントを抽出するステップは、前記マルチキーの値に対応する前記フラグメントの識別情報を用いて、前記メタデータのフラグメントを抽出するステップを備えてもよい。  前記検索条件を満足する前記マルチキーの複数の値に応答して、前記フラグメントを抽出するステップは、前記検索条件を満足する前記マルチキーの値に対応する前記メタデータのフラグメントのそれを抽出するステップを備えてもよい。  前記値を検索するステップは、前記マルチキーの値の範囲に対応する前記インデックスの代表キー値の中から、前記検索条件を満足する代表キー値を検索するステップと、前記代表キー値に対応する値の範囲の中から前記値を検索するステップとを備えてもよい。  本発明の上記及び／又は他の態様を達成するため、マルチキーのリストを有するインデックスと前記マルチキーを定義するための位置情報とを用いて、複数のフラグメントに分割されたメタデータを検索する他の方法であって、該方法は、前記メタデータのインデックスから、該メタデータのフィールドの組み合わせの検索条件に対応するマルチキーの値を検索するステップと、前記検索された値に対応する前記メタデータのフラグメントを抽出するステップとを備えた方法が提供される。  前記検索条件を満足する前記マルチキーの複数の値に応答して、前記フラグメントを抽出するステップは、前記検索条件を満足する前記マルチキーの値に対応する前記メタデータのフラグメントのそれを抽出してもよい。  本発明の上記及び／又は他の態様を達成するため、複数のフラグメントに分割されたメタデータを検索する更に他の方法であって、該方法は、フラグメントに関する位置情報と前記フラグメント内の少なくとも２つのキーを定義する位置情報との複数の組み合わせを備えたリストをアクセスするステップと、前記リストから、前記メタデータの少なくとも２つのキーの検索条件に対応する組み合わせを検索するステップとを備えた方法が提供される。  前記方法は、前記検索された組み合わせによって識別される前記メタデータに関する識別情報に対応する前記メタデータの１又は２以上のフラグメントを抽出するステップを更に備えてもよい。  前記方法において、前記フラグメントに関する前記位置情報と前記少なくとも２つのキーを定義する前記位置情報とのうちの何れか一方は、所定のコードで表されてもよい。【００４４】  本発明の上記及び／又は他の態様を達成するため、マルチキーのリストを有するインデックスと該マルチキーを定義する位置情報とを用いて、複数のフラグメントに分割されたメタデータを検索するための装置であって、検索条件を入力する入力部と、前記メタデータのインデックスから、該メタデータのフィールドの組み合わせの前記検索条件に対応するマルチキーを検索し、且つ前記検索されたキーを用いて前記メタデータのフラグメントを抽出する制御部とを備えた装置が提供される。  前記制御部は、前記インデックスからの前記マルチキーの値の中から前記検索条件を満足する前記マルチキーの値を検索し、且つ前記マルチキーの値に対応する前記フラグメントの識別情報を用いて前記フラグメントを抽出してもよい。  前記検索条件を満足する前記マルチキーの複数の値に応答して、前記制御部は、前記検索条件を満足する前記マルチキーの値に対応する前記メタデータのフラグメントのそれを抽出してもよい。【００４５】  前記制御部は、前記マルチキーの値の範囲に対応する前記インデックスの代表キー値の中から、前記検索条件を満足する代表キー値を検索し、且つ前記代表キー値に対応する値の範囲の中から前記値を検索してもよい。  前記位置情報は、ＸＰａｔｈで表されてもよい。【００４６】  前記��置情報の少なくとも一部は、所定のコードで表されてもよい。【００４７】  前記メタデータは、ＴＶＡフォーラムで定義されたようなメタデータであってもよい。【００４８】  本発明の上記及び／又は他の態様を達成するため、マルチキーのリストを有するインデックスと該マルチキーを定義する位置情報とを用いて、複数のフラグメントに分割されたメタデータを検索するための他の装置であって、検索条件を入力する入力部と、前記メタデータのインデックスから、該メタデータのフィールドの組み合わせの前記検索条件に対応するマルチキーの値を検索し、且つ前記検索された値を用いて前記メタデータのフラグメントを抽出する制御部とを備えた装置が提供される。  前記制御部は、前記インデックスからの前記マルチキーの値の中から前記検索条件を満足する前記マルチキーの値を検索し、且つ前記マルチキーの値に対応する前記フラグメントの識別情報を用いて前記フラグメントを抽出してもよい。  前記制御部は、前記マルチキーの値の範囲に対応する前記インデックスの代表キー値の中から、前記検索条件を満足する代表キー値を検索し、且つ該代表キー値に対応する値の範囲の中から前記値を検索してもよい。  前記検索条件を満足する前記マルチキーの複数の値に応答して、前記制御部は、前記検索条件を満足する前記マルチキーの値に対応する前記メタデータのフラグメントのそれを抽出してもよい。  前記位置情報の少なくとも一部は、所定のコードで表されてもよい。  前記装置は、前記メタデータおよび該メタデータの前記インデックスを入力する入力部と、前記メタデータおよび該メタデータの前記インデックスをその中に記憶する記憶部と、前記制御部による前記検索結果を出力する出力部とを更に備えてもよい。  本発明の上記及び／又は他の態様を達成するため、マルチキーのリストを有するインデックスと該マルチキーを定義する位置情報とを用いて、複数のフラグメントに分割されたメタデータを検索するための更に他の装置であって、前記メタデータの少なくとも２つのキーの検索条件を入力する入力部と、フラグメントに関する位置情報と該フラグメント内の少なくとも２つのキーを定義する位置情報との複数の組み合わせを含むリストから、前記検索条件に対応する組み合わせを選択する制御部とを備えた装置が提供される。  前記制御部は、前記選択された組み合わせにより識別される前記メタデータに関する識別情報に対応する前記メタデータの１又は２以上のフラグメントを更に抽出してもよい。  前記フラグメントに関する前記位置情報と前記少なくとも２つのキーを定義する前記位置情報とのうちの何れか一方は、所定のコードで表されてもよい。【００４９】
【００５０】
【００５１】
【発明を実施するための最良の形態】
【００５２】  このような特徴を有するコンテンツに関する情報を検索するために提供されるメタデータのインデックス構造と、前記メタデータのインデックス構造を有するメタデータのインデックスを提供する方法と、前記メタデータのインデックスを利用したメタデータの検索方法とそれを利用した検索装置の実施例を添付された図面を参照して説明すれば次の通りである。【００５３】  以下で、前記実施例はＴＶＡメタデータに基づいて説明するが、本発明はこれに限定されるものではない。図９は、本発明の実施形態によるマルチキーインデックス構造を定義するシンタックスを示す。まず、図９を参照して、コンテンツに関する情報を検索するためのメタデータのインデックス構造として、前述したデータコンテナに保存されるＴＶＡメタデータフラグメントをインデクシングするためのキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１１０、キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０、及びサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０を備える構造を説明し、以後前記シンタックスにより定義されるマルチキーインデックス構造について説明する。【００５４】  本発明の一実施例によるメタデータのインデックス構造、特にマルチキーインデックス構造を定義するシンタックスは、シングルキーインデックス技術文献に定義されたシンタックスと比較してｋｅｙ＿ｄｅｓｃｒｉｐｔｏｒ（）、ｈｉｇｈ＿ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ（）、ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ（）などのマルチキーインデクシング概念のために新しく導入された構造を含み、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション、キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション、及びサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクションの構造を再編成する。【００５５】 １．キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション  キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクションは伝送されるあらゆるマルチキーリストを提供する。それぞれのキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）構造内には表１に提示されたようにマルチキーインデクシング可能にｋｅｙ＿ｄｅｓｃｒｉｐｔｏｒ（）を含む。【００５６】
【表１】
2005222546.tif 000024
【００５７】  ｋｅｙ＿ｉｎｄｅｘ＿ｃｏｕｎｔ：伝送されるあらゆるマルチキーの数、すなわち、全体ＸＭＬ文書に対するインデックス数を定める。  ｆｒａｇｍｅｎｔ＿ｘｐａｔｈ＿ｐｔｒ（）：インデクシングされる目標メタデータフラグメントのＸＰａｔｈ、すなわち、インデクシングされる目標メタデータフラグメントの位置情報を定める。上記フラグメントの位置情報は、所定のコードとして表されてもよい。即ち、フラグメントが例えば頻繁に使用されるタイプである場合には、所定のコードでフラグメントのためのＸＰａｔｈを表すエンコード値が提供される。フラグメントのＸＰａｔｈは、エンコードされた値として簡単に表すことができるので、メタデータの検索におけるオーバーヘッドを低減することができる。例えば、エンコード値は、用途別に、‘０Ｘ０１’、‘０Ｘ０２’、‘０Ｘ０３’等々、および８ビット、１６ビット等々であってもよい。‘０Ｘ０７’にエンコードされたフラグメントに関する位置情報は、例えば‘ブロードキャストイベント（ＢｒｏａｄｃａｓｔＥｖｅｎｔ）フラグメント’のＸＰａｔｈを示してもよい。エンコード値が‘０ＸＯＦＦ’の場合、それはユーザ定義のフラグメントを示し、従って該当ユーザ定義のフラグメントのためのＸＰａｔｈは、追加情報として付け加えられる。【００５８】  ｋｅｙ＿ｄｅｓｃｒｉｐｔｏｒ（）：インデクシングされる目標メタデータフラグメントグループのＸＰａｔｈ位置内でマルチキーのＸＰａｔｈ位置、すなわち、マルチキーの前記メタデータフラグメント内位置情報及びマルチキーを構成する各エレメント／属性に対するエンコーディング表示子の情報を定める。上述と同様に、頻繁に使用されるタイプのマルチキーの位置情報は、所定のコードとして表されてもよい。頻繁に使用されるタイプのマルチキーのエンコード値は、フラグメントのエンコーディングと同様の構造を備えてもよい。フラグメントのＸＰａｔｈのエンコーディングとマルチキーのＸＰａｔｈのエンコーディングは、同時又は独立に使用してもよい。【００５９】  ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒ：指定されたキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクションが存在するコンテナを識別する。  ｋｅｙ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ：ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒにより詳述されたコンテナ内でキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクションを識別する。ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒとｋｅｙ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒの組み合わせによって該当キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクションが唯一に識別される。【００６０】 ２．キーデスクリプタ（ｋｅｙ＿ｄｅｓｃｒｉｐｔｏｒ）  マルチキーは複合キーである。マルチキーを構成する多数のキーに対し、ｋｅｙ＿ｄｅｓｃｒｉｐｔｏｒはキーのＸＰａｔｈなどの特性を記述する。下の表２はｋｅｙ＿ｄｅｓｃｒｉｐｔｏｒを表す。【００６１】
【表２】
2005222546.tif 000025
【００６２】  ｋｅｙ＿ａｔｔｒｉｂｕｔｅ＿ｃｏｕｎｔ：マルチキーを構成するキーの数を定める。  ｋｅｙ＿ｘｐａｔｈ＿ｐｔｒ：マルチキーとして使われるノード（キー）のｆｒａｇｍｅｎｔ＿ｘｐａｔｈ＿ｐｔｒに関する相対経路である。【００６３】 ３．キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション  ｈｉｇｈ＿ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ（）が新しく導入される。  本実施例で、ｈｉｇｈ＿ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ（）は、キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクションが示す数（ｓｕｂ＿ｉｎｄｅｘ＿ｃｏｕｎｔ）、サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクションの中の該当サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション内のマルチキー値の範囲を代表する代表キー値であって、本実施例では例えばマルチキー値の最大値を指定するが、他の実施例で最小値または中間値など所定範囲のマルチキー値を代表できるいかなる基準値でも採択できる。【００６４】
【表３】
2005222546.tif 000026
【００６５】  ｋｅｙ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ：ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒにより定められたコンテナ内でキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクションを識別する。ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒとｋｅｙ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒとの組み合わせによりキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクションが唯一に識別されうる。これは、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクションで定義される。【００６６】  ｓｕｂ＿ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒ：指定されたサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクションが存在するコンテナを識別する。  ｓｕｂ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ：ｓｕｂ＿ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒにより詳述されたコンテナ内でサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクションを識別する。ｓｕｂ＿ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒとｓｕｂ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒとの組合わせによりサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクションが唯一に識別されうる。【００６７】  表４は、ｈｉｇｈ＿ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ（）を表す。【００６８】
【表４】
2005222546.tif 000027
【００６９】  ｋｅｙ＿ａｔｔｒｉｂｕｔｅ＿ｃｏｕｎｔ：マルチキーを構成するキーの数を定める。これは、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクションで定義される。  ｋｅｙ＿ａｔｔｒｉｂｕｔｅ＿ｖａｌｕｅ：それぞれのキーに対する代表キー値を表す。前記値エンコーディング形態はシングルキーインデックス技術文献のｋｅｙ＿ｖａｌｕｅと同一である。【００７０】  ｈｉｇｈ＿ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ（）がマルチキー値を有する場合、マルチキー値間の大きさ比較は次の通りである。マルチキー値は数字の場合には算術的大小比較法則により、文字の場合には辞書編纂方式により順序が決定される。例えば、ｋ１，ｋ２，...，ｋｎのキーで構成されたマルチキーｋ１，ｋ２，...，ｋｎに対して、ｋ１が最も大きい優先順位を有し、ｋｎは最も小さな優先順位を有すると仮定する時、マルチキー値ａ１，ａ２，...，ａｎとマルチキー値ｂ１，ｂ２，...，ｂｎとに対して、  * あらゆるｊ（０≦ｊ≦ｉ−１）に対してａｊ＝ｂｊ及びａｉ＞ｂｉになるように整数ｉ（０≦ｉ≦ｎ−１）が存在する場合に限ってマルチキー値ａ１，ａ２，...，ａｎがマルチキー値ｂ１，ｂ２，...，ｂｎより大きい。【００７１】  * あらゆるｊ（０≦ｊ≦ｉ−１）に対してａｊ＝ｂｊ及びａｉ＜ｂｉになるように整数ｉ（０≦ｉ≦ｎ−１）が存在する場合に限ってマルチキー値ａ１，ａ２，...，ａｎがマルチキー値ｂ１，ｂ２，...，ｂｎより小さい。  * あらゆるｉ（１≦ｉ≦ｎ）に対してａｉ＝ｂｉの場合に限ってマルチキー値ａ１，ａ２，...，ａｎはマルチキー値ｂ１，ｂ２，...，ｂｎと同一である。【００７２】 ４．サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション  ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ（）がマルチキーインデクシング概念のために新しく導入される。ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ（）は指示する該当フラグメントのマルチキー値を表す。【００７３】
【表５】
2005222546.tif 000028
【００７４】  ｓｕｂ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ：ｓｕｂ＿ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒにより識別されたコンテナ内でサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクションを識別する。  ｓｕｂ＿ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒとｓｕｂ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒとの組み合わせによりサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクションが唯一に識別されうる。これは、キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクションで定義される。【００７５】  ｒｅｆｅｒｅｎｃｅ＿ｃｏｕｎｔ：ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ（）内に含まれたマルチキー値の数を定める。  ｔａｒｇｅｔ＿ｃｏｎｔａｉｎｅｒ：指定されたメタデータフラグメントが存在するコンテナを識別する。  ｔａｒｇｅｔ＿ｈａｎｄｌｅ：ｔａｒｇｅｔ＿ｃｏｎｔａｉｎｅｒにより識別されたコンテナ内でメタデータフラグメントセクションを識別する。ｔａｒｇｅｔ＿ｃｏｎｔａｉｎｅｒとｔａｒｇｅｔ＿ｈａｎｄｌｅとの組合わせによりメタデータフラグメントセクションが唯一に識別されうる。表６は、ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ（）を表す。【００７６】
【表６】
2005222546.tif 000029
【００７７】  ｋｅｙ＿ａｔｔｒｉｂｕｔｅ＿ｃｏｕｎｔ：マルチキーを構成するキーの数を定め、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクションで定義される。  ｋｅｙ＿ａｔｔｒｉｂｕｔｅ＿ｖａｌｕｅ：それぞれのキー値を表現する。その形態はシングルキーインデックス技術文献のｋｅｙ＿ｖａｌｕｅと同一である。  ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ（）値間の比較はキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション構造でのｈｉｇｈ＿ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ（）値間の比較と同一である。【００７８】  以下、前述したシンタックスにより定義されるメタデータのマルチキーインデックス構造をインデックス情報のセグメントで表現した図９を参照して前記構造を説明する。 インデックス構造で定義されるキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１１０は、伝送されるあらゆるマルチキーリストを提供する。このリストには、各マルチキーを定義するマルチキー情報と、後述されるキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０に関する識別情報とが含まれる。前記マルチキー情報には、（１）マルチキーと関連したメタデータフラグメントの位置情報（ＴＶＡではマルチキーと関連したメタデータフラグメントに対するＸＰａｔｈ（ｆｒａｇｍｅｎｔ＿ｘｐａｔｈ＿ｐｔｒ）で表現される）と、（２）マルチキーの前記メタデータフラグメント内位置情報（ＴＶＡではマルチキーとして使われるノードの前記メタデータフラグメントのＸＰａｔｈ位置での関連経路、すなわち、マルチキーとして使われるノードのＸＰａｔｈ（ｋｅｙ＿ｄｅｓｃｒｉｐｔｏｒ）で表現される）とが含まれる。シングルキーインデックス構造と同様に、前記メタデータフラグメントのＸＰａｔｈはＴＶＡメタデータＸＭＬ文書のルートノードに対する経路として絶対経路であり、マルチキーとして使われるノードのＸＰａｔｈ、すなわち、マルチキーのＸＰａｔｈは前記メタデータフラグメントに対するマルチキーの相対経路を表す。メタデータフラグメントに対するＸＰａｔｈ及びマルチキーに対するＸＰａｔｈは、それぞれ‘ｆｒａｇｍｅｎｔ＿ｘｐａｔｈ＿ｐｔｒ’セグメント１１１及び‘ｋｅｙ＿ｄｅｓｃｒｉｐｔｏｒ’セグメント１１２に保存される。【００７９】  また、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１１０には、後述される各マルチキーのキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０に対する識別情報（キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０が保存されたコンテナのコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）及びキーインデックス識別子情報）が含まれるが、前記コンテナ識別子情報及びキーインデックス識別子情報は、それぞれキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１１０の‘ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒ’セグメント及び‘ｋｅｙ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ’セグメントに保存されて伝送される。【００８０】  メタデータ構造で定義されるキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０は、各サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１��０に含まれたマルチキー値の範囲を表す情報、すなわち、各サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０内のマルチキー値の所定の範囲を代表する代表キー値（本実施例では最も大きいマルチキー値）と、各代表キー値に関連したサブキーインデックスセクション１３０に対する識別情報（すなわち、サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクションが保存されたコンテナのコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）及びサブキーインデックス識別子情報）とに関する情報のリストを提供する。本実施例で代表キー値間の大きさ比較方法は、表４の説明で言及したマルチキー値の大きさ比較方法と同一である。【００８１】  キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０は、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１１０で定義されたキーインデックス識別子情報が保存される‘ｋｅｙ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ’セグメント、サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０に含まれるマルチキー値の各範囲の代表キー値が保存された‘ｈｉｇｈ＿ｋｅｙ＿ｖａｌｕｅ＿ｄｅｓｃｒｉｐｔｏｒ’セグメント１１３、及びマルチキー値を有するサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０に対する識別情報を含む。サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０に対する識別情報は、サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０が保存されたコンテナのコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）及びサブキーインデックス識別子情報がそれぞれ保存された‘ｓｕｂ＿ｉｎｄｅｘ＿ｃｏｎｔａｉｎｅｒ’セグメント及び‘ｓｕｂ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ’セグメントを含む。【００８２】 インデックス構造で定義されるサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０は、マルチキー値に対するリストを提供するが、このリストは、前記マルチキー値に対応するメタデータフラグメントに対する識別情報（すなわち、メタデータフラグメントが保存されたコンテナのコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）及び前記メタデータフラグメントの識別子情報（ｈａｎｄｌｅ＿ｖａｌｕｅ））を更に備える。【００８３】 従って、上記サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０は、キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０で定義されたサブキーインデックス識別子情報が保存される‘ｓｕｂ＿ｉｎｄｅｘ＿ｉｄｅｎｔｉｆｉｅｒ’セグメントと、マルチキー値の各範囲が保存される‘ｋｅｙ＿ｖａｌｕｅ＿ｄｅｃｒｉｐｔｏｒ’セグメント１１４と、マルチキー値に対応するメタデータフラグメントに対する識別情報とを含む。識別情報は、メタデータフラグメントが保存されたコンテナの各コンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）及び各フラグメントデータ識別子情報（ｈａｎｄｌｅ＿ｖａｌｕｅ）がそれぞれ保存された‘ｔａｒｇｅｔ＿ｃｏｎｔａｉｎｅｒ’セグメント及び‘ｔａｒｇｅｔ＿ｈａｎｄｌｅ’セグメントを含む。前記インデックス構造はインデックス情報を例示的に示した図１０���よりさらに容易に理解されうる。【００８４】  図１０は、チャンネル番号及び放送時間に対するマルチキーを含むマルチキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクションを図示しており、前記図面に図示された前記チャンネル番号及び前記放送時間に関するマルチキーが含まれたメタデータフラグメントの上位ノードは図３に図示されたように‘ＢｒｏａｄｃａｓｔＥｖｅｎｔ’３１０である。したがって、‘ｆｒａｇｍｅｎｔ＿ｘｐａｔｈ＿ｐｔｒ’セグメント１１１には‘ＢｒｏａｄｃａｓｔＥｖｅｎｔ’フラグメントに対するＸＰａｔｈ‘／ＴＶＡＭａｉｎ／ＰｒｏｇｒａｍＤｅｓｃｒｉｐｔｉｏｎ／ＰｒｏｇｒａｍＬｏｃａｔｉｏｎＴａｂｌｅ／ＢｒｏａｄｃａｓｔＥｖｅｎｔ’が保存され、‘ｋｅｙ＿ｄｅｓｃｒｉｐｔｏｒ’セグメント１１２には‘ＢｒｏａｄｃａｓｔＥｖｅｎｔ’フラグメントに対するチャンネル番号及び放送時間のマルチキーのＸＰａｔｈである‘＠ＳｅｒｖｉｃｅＩｄ’３１１ａ及び‘ＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＴｉｍｅ’３１１ｂがそれぞれ保存される。このようなインデックス構造は一つ以上の検索条件、すなわち、複合条件検索時にメタデータフラグメントに対する検索及びアクセスを効率的に処理可能にする。【００８５】  本実施例では前記チャンネル番号及び前記放送時間に対するマルチキーを例示したが、いろいろな他のマルチキーが組み合わせられて使われることもできる。例えば、放送スケジュールに関連してプログラムの開始時間及び終了時間に対するマルチキー、プログラム内人物（俳優、監督など）の姓及び名前に対するマルチキーなどである。【００８６】  放送スケジュールに関連してプログラムの開始時間及び終了時間に対するマルチキーが使われる場合、放送スケジュールに関連してプログラムの開始時間及び終了時間に対するマルチキーが含まれたメタデータフラグメントの上位ノードは‘Ｓｃｈｅｄｕｌｅ’（図示せず）であってもよい。したがって、‘ｆｒａｇｍｅｎｔ＿ｘｐａｔｈ＿ｐｔｒ’セグメント１１１には、‘Ｓｃｈｅｄｕｌｅ’フラグメントに対するＸＰａｔｈ‘／ＴＶＡＭａｉｎ／ＰｒｏｇｒａｍＤｅｓｃｒｉｐｔｉｏｎ／ＰｒｏｇｒａｍＬｏｃａｔｉｏｎＴａｂｌｅ／Ｓｃｈｅｄｕｌｅ’が保存されてもよく、‘ｋｅｙ＿ｄｅｓｃｒｉｐｔｏｒ’セグメント１１２には、‘Ｓｃｈｅｄｕｌｅ’フラグメントに対するプログラムの開始時間及び終了時間のマルチキーのＸｐａｔｈである‘＠ｓｔａｒｔ’及び‘＠ｅｎｄ’がそれぞれ保存されてもよい。【００８７】  また、プログラム内人物（俳優、監督など）の姓及び名前に対するマルチキーが使われる場合、プログラム内人物の姓及び名前に対するマルチキーが含まれたメタデータフラグメントの上位ノードは ‘ＰｅｒｓｏｎＮａｍｅ’（図示せず）であってもよい。したがって、‘ｆｒａｇｍｅｎｔ＿ｘｐａｔｈ＿ｐｔｒ’セグメント１１１には、‘ＰｅｒｓｏｎＮａｍｅ’フラグメントに対するＸＰａｔｈである‘ＴＶＡＭａｉｎ／ＰｒｏｇｒａｍＤｅｓｃｒｉｐｔｉｏｎ／ＣｒｅｄｉｔｓＩｎｆｏｒｍａｔｉｏｎＴａｂｌｅ／ＰｅｒｓｏｎＮａｍｅ’が保存され、‘ｋｅｙ＿ｄｅｓｃｒｉｐｔｏｒ’セグメント１１２には、���ＰｅｒｓｏｎＮａｍｅ’フラグメントに対するプログラム内の前記人物の姓及び名前に対するマルチキーのＸｐａｔｈである‘ＦａｍｉｌｙＮａｍｅ’及び‘ＧｉｖｅｎＮａｍｅ’がそれぞれ保存されてもよい。【００８８】  図１１は、前述した本発明の一実施例による構造を有するメタデータのインデックスを提供する方法を図解する。本発明の一実施例によるメタデータの前記インデックスは、例えば、映像／音声信号を提供する提供者２００により生成されてもよい。まず、コンテンツに関する情報、すなわち、メタデータを、前述したフラグメント単位で加工する（Ｓ１００）。前記フラグメントを構成する情報、例えば‘チャンネル番号’及び‘放送時間’に関するキーを組み合わせてマルチキーを提供する（Ｓ２００）。以後、サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０が提供されるが、上述したように、前記マルチキー値の範囲を有するセグメント１１４ａ、１１４ｂ、１１４ｃ等が提供される（Ｓ３００）。前記サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０は、前記マルチキーの値に対応するメタデータフラグメント識別情報（すなわち、図９の‘ｔａｒｇｅｔ＿ｃｏｎｔａｉｎｅｒ’セグメント及び‘ｔａｒｇｅｔ＿ｈａｎｄｌｅ’セグメントにそれぞれ保存されたコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）及びフラグメントデータ識別子情報（ｈａｎｄｌｅ＿ｖａｌｕｅ））を更に含む。【００８９】  前記所定範囲別に分割されたマルチキー値の範囲を代表する代表キー値を含むキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０を提供するが（Ｓ４００）、例えば、図９を参照すると、前記組み合わせられたチャンネル番号／放送時間のマルチキー値の所定範囲５００〜５０９／０９：１０〜１０：００ および５１０〜５１９／０９：１０〜１０：００ （１１４ａおよび１１４ｂ）を表す代表キー値‘５０９／１０：００’ および‘５１９／１０：００’ （１１３ａおよび１１３ｂ）が含まれる。本実施例では、チャンネル番号は放送時間より大きい優先順位を有する。前記キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０は、マルチキーの前記値が保存されたサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０に対する識別情報（すなわち、図９のサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクションが保存されたコンテナのコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）及びサブキーインデックス識別子情報）を更に含む。上述したように他のマルチキーおよび対応キーインデックスセクション及び／又はサブキーインデックスセクションが提供されてもよいことが理解される。【００９０】  マルチキー情報、すなわち、前記提供されたマルチキーを構成する各フィールドが属しているメタデータフラグメントの位置情報及び前記各フィールドの前記メタデータフラグメント内位置情報をマルチキー別に配列するキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１１０を提供する（Ｓ５００）。例えば、‘チャンネル番号’及び‘放送時間’のキーで組み合わせられた場合、前記組み合わせられた‘チャンネル番号／放送時間’のマルチキー情報、すなわち、インデクシングされる目標メタデータフラグメントのＸＰａｔｈ（／ＴＶＡＭａｉｎ／ＰｒｏｇｒａｍＤｅｓｃｒｉｐｔｉｏｎ／ＰｒｏｇｒａｍＬｏｃａｔｉｏｎＴａｂｌｅ／ＢｒｏａｄｃａｓｔＥｖｅｎｔ）と、前記メタデータフラグメントに対するマルチキーのＸｐａｔｈ（チャンネル番号のＸＰａｔｈ‘＠ＳｅｒｖｉｃｅＩｄ’及び放送時間のＸＰａｔｈ‘ＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＴｉｍｅ’）とがキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１１０に含まれる。【００９１】  参考に、前述した段階は他の実施例で逆順に行われることもあり、代表キー値を含むキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０を提供する段階（Ｓ４００）または前記キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１１０を提供する段階（Ｓ５００）は実施例によって省略されることもある。【００９２】  以下図１２を参照して、前述した本発明の一実施例による構造を有するメタデータのインデックスを利用して一つ以上の検索条件に符合するメタデータを得るための検索方法を説明する。  例えばユーザーから検索条件が入力され（Ｓ１１００）、入力された検索条件に符合するマルチキー値をメタデータのインデックスから検索し（Ｓ１２００）、検索されたマルチキー値を利用して前記マルチキー値に対応するメタデータフラグメントの識別情報を利用して該当メタデータフラグメントを抽出することによって（Ｓ１３００）、検索条件に該当するメタデータを抽出する。入力される検索条件にはフィールド及び検索しようとするフィールドの値または範囲も含まれてもよい。【００９３】  マルチキー値を検索する段階（Ｓ１２００）は、入力された検索条件のフィールドが該当するメタデータのフラグメントの位置情報及び前記フィールドの前記メタデータフラグメント内位置情報を判断する段階（Ｓ１２１０）と、判断された位置情報を利用してキーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１１０から前記判断された位置情報と一致する位置情報を持つフィールドで構成されたマルチキーを検索し、前記検索されたマルチキーに対するキーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０を検索する段階（Ｓ１２２０）と、前記キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０から検索条件として入力されたフィールドの値を含む代表キー値を検索し、前記検索された代表キー値が代表する範囲のマルチキー値を含むサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０を検索する段階（Ｓ１２３０）と、前記検索されたサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０から検索条件に符合するマルチキー値を検索する段階（Ｓ１２４０）とを含む。【００９４】  前記段階Ｓ１２２０、Ｓ１２３０及びＳ１３００では、該当キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０及びサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０を検索する段階、及び該当メタデータフラグメントを抽出する段階は、それぞれ、キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０の識別情報、サブキーイ��デックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０の識別情報、及びメタデータフラグメントの識別情報を利用して実施される。例えば、メタデータのフィールドの範囲が検索条件の一部として入力された場合、前記マルチキーの複数の検索値と、以下に説明するように抽出された複数のフラグメントとが存在してもよい。【００９５】  前記図１２による検索方法を、図１０を参照して説明したチャンネル番号及び放送時間に対する検索に適用すれば次の通りである。  例えば、ユーザーが、‘チャンネル番号’が‘５０７〜５１４’の範囲であり、‘放送時間’は‘９：３０〜１０：００’の範囲である検索条件を入力した場合（Ｓ１１００）、前記‘５０７〜５１４’の範囲を有する‘チャンネル番号’と‘９：３０〜１０：００’の範囲を有する‘放送時間’とを組み合わせたフィールドから該当メタデータフラグメントの位置情報及び前記フィールドの前記メタデータフラグメント内位置情報を判断するが（Ｓ１２１０）、検索条件として入力された‘チャンネル番号’及び‘放送時間’はそれぞれメタデータフラグメント内位置情報として‘＠ＳｅｒｖｉｃｅＩｄ’及び‘ＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＴｉｍｅ’を有するため、これに基づいて該当フラグメントの属性、すなわち、該当メタデータフラグメントの位置情報であるＸＰａｔｈを判断する（Ｓ１２１０）。前記過程を通じて決定された事項は次のように整理できる。【００９６】    フラグメントのＸＰａｔｈ：    ／ＴＶＡＭａｉｎ／ＰｒｏｇｒａｍＤｅｓｃｒｉｐｔｉｏｎ／ＰｒｏｇｒａｍＬｏｃａｔｉｏｎＴａｂｌｅ／ＢｒｏａｄｃａｓｔＥｖｅｎｔ    チャンネル番号のＸＰａｔｈ：＠ＳｅｒｖｉｃｅＩｄ    放送時間のＸＰａｔｈ：ＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＴｉｍｅ    チャンネル番号のキー値：５０７＜＝ＳｅｒｖｉｃｅＩｄ＜＝５１４    放送時間のキー値：９：３０＜＝ＥｖｅｎｔＤｅｓｃｒｉｐｔｉｏｎ／ＰｕｂｌｉｓｈｅｄＴｉｍｅ＜＝１０：００【００９７】  次に、キーインデックスリスト（ｋｅｙ＿ｉｎｄｅｘ＿ｌｉｓｔ）セクション１１０から前記メタデータフラグメントのＸＰａｔｈ １１１及びチャンネル番号／放送時間のＸＰａｔｈ １１２に対応する位置情報を持つマルチキーを検索し、検索されたマルチキーを含むインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０に対する識別情報を抽出する（Ｓ１２２０）。本実施例では、チャンネル番号は放送時間より大きい優先順位を有する。キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０から検索条件に符合するマルチキー値（５０７〜５１４／０９：３０〜１０：００）が含まれるマルチキー値の範囲（５００〜５０９／０９：１０〜１０：００ １１４ａ、５１０〜５１９／０９：１０〜１０：００ １１４ｂ）を表す代表キー値、すなわち、‘５０９／１０：００’ １１３ａ及び‘５１９／１０：００’ １１３ｂの代表キー値を検索し、前記代表キー値を含むサブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０に対する識別情報を前記キーインデックス（ｋｅｙ＿ｉｎｄｅｘ）セクション１２０から抽出し（Ｓ１２３０）、サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉ��ｄｅｘ）セクション１３０、すなわちセグメント１１４ａ、１１４ｂから検索条件に符合するマルチキー値（５０７〜５１４／０９：３０〜１０：００）に該当するマルチキー値、すなわち、‘５０７／０９：３０’、‘５０７／０９：４０’、...、‘５０９：１０：００’のキー値及び‘５１０／０９：３０’、‘５１０／０９：４０’、...、‘５１４：１０：００’のキー値を有するマルチキー値を検索する（Ｓ１２４０）。【００９８】  そして検索されたマルチキー値に対応するメタデータフラグメント識別情報（‘ｔａｒｇｅｔ＿ｃｏｎｔａｉｎｅｒ’セグメント及び‘ｔａｒｇｅｔ＿ｈａｎｄｌｅ’セグメントにそれぞれ保存されたコンテナ識別子情報（ｃｏｎｔａｉｎｅｒ＿ｉｄ）及びフラグメントデータ識別子情報（ｈａｎｄｌｅ＿ｖａｌｕｅ））を前記サブキーインデックス（ｓｕｂ＿ｋｅｙ＿ｉｎｄｅｘ）セクション１３０から抽出し、抽出された識別情報を利用して該当メタデータフラグメントを抽出する（Ｓ１３００）。【００９９】  図１３は、本発明の一実施例によるメタデータを検索する装置を図示する。本実施例による装置は、図１２を参照して説明した本発明の一実施例によるメタデータを検索する方法が行われる装置である。【０１００】  前記装置１０００は、ユーザーから検索条件を入力される入力部１１００、コンテンツ、コンテンツに対するメタデータまたはメタデータのインデックスを受信する受信部１２００と、受信されたコンテンツ、コンテンツに対するメタデータまたはメタデータのインデックスを保存する保存部１３００と、前記入力部１１００から入力された検索条件に符合するマルチキー値／複数値をメタデータのインデックスから検索し、前記検索されたマルチキー値／複数値を利用して該当メタデータを抽出する制御部１４００と、前記制御部１４００の検索結果を出力する出力部１５００とを含む。  前記制御部１４００は、入力部１１００を通じ入力された検索条件を、前記保存部１３００に保存されたメタデータのインデックスに含まれたマルチキー値と比較する。【０１０１】  前述した本発明の一実施例による検索方法のうち入力された検索条件に符合するマルチキーを検索する段階（Ｓ１２００）、または検索されたマルチキーに対応するフラグメント（複数フラグメント）の識別情報を利用して該当フラグメント（複数フラグメント）を抽出する段階（Ｓ１３００）は制御部１４００で行われ、前記段階に関する説明は図１２と関連した説明部分を参照されたい。【０１０２】  本発明は図面に図示された一実施例を参考として説明されたが、これは例示的なものに過ぎず、当業者ならばこれより多様な変形及び均等な他の実施例が可能であるという点を理解できる。したがって、本発明の真の技術的保護範囲は特許請求の範囲の技術的思想により定められねばならない。
【産業上の利用可能性】
【０１０３】  本発明はコンテンツに関する情報のさらに効率的な検索及びアクセスが可能なメタデータのインデックス構造、このような構造を持つメタデータのインデックスを提供する方法、前記メタデータのインデックスを利用したメタデータの検索方法及びそれを利用した検索装置を提示した。  一方、本発明により、ＴＶＡメタデータに対する複合条件の同時検索が可能であり、ＴＶＡメタデータに対する複合条件検索が行われる場合、検索装置のオーバーヘッドが減少して検索時間が短縮され、検索装置の効率が高まる。しかしながら、次のことが理解される。即ち、本発明の例示的で非制限的な実施形態は、上述の欠点および上述しない他の欠点を克服するが、本発明は上述の欠点を克服することを必須とするものではなく、本発明の例示的で非制限的な実施形態は、上述の何れかの問題を克服しなくてもよい。また、次のことが理解される。即ち、本発明を使用するシステムは、また、磁気ディスクおよび光学ディスク、ＲＡＭ、ＲＯＭ、キャリアウェーブメディア(carrier wave medium)などのような、固定記憶装置またはリムーバブル記憶装置を備え、それらの装置に本発明の処理およびデータ構造を格納し分配することができる。また、そのオペレーションは、例えば、インターネットのようなネットワークを通じたダウンロードにより配信することができる。
【図面の簡単な説明】
【０１０４】
【図１】一般的なＰＤＲの概念図である。
【図２】一般的なＥＰＧアプリケーションでのグリッドガイド画面を示す図面である。
【図３】ＴＶＡフォーラムで定義する一般的なメタデータの構造を示すブロック図である。
【図４】ＴＶＡフォーラムで定義する一般的なフラグメントの概念図である。
【図５】ＴＶＡフォーラムで定義する一般的なコンテナの概念図である。
【図６】従来のシングルキー概念のメタデータのインデックス構造を示すブロック図である。
【図７Ａ】従来のシングルキー概念を利用したメタデータのインデックス構造及び検索過程を示すブロック図である。
【図７Ｂ】従来のシングルキー概念を利用したメタデータのインデックス構造及び検索過程を示すブロック図である。
【図８Ａ】従来のシングルキーを利用したメタデータの検索方法を説明した図面である。
【図８Ｂ】従来のシングルキーを利用したメタデータの検索方法を説明した図面である。
【図９】本発明によるマルチキー概念のメタデータのインデックス構造を示すブロック図である。
【図１０】本発明によるマルチキー概念を利用したメタデータのインデックス構造及び検索過程を示すブロック図である。
【図１１】本発明によるメタデータのインデックスを提供する方法を示すブロック図である。
【図１２】本発明によるメタデータの検索方法を示す図面である。
【図１３】本発明によるメタデータを検索する装置の構造図である。
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】図１１
【補正方法】変更
【補正の内容】
【図１１】
2005222546.tif 000030