(57)【要約】  本発明は、相互接続された構成要素で構成されるツリーデータ構造を処理する方法に関連する。本発明によれば、本発明は、処理ユニットを前記相互接続された構成要素のサブセットとして定義する過程と、その時に、処理ユニットに割当てられたデータが、前記データに関する宛先であるユニットによって使用されるべきである処理時刻を、各処理ユニットに割当てる過程とを有する。上記の処理方法は、特にスケーラブルマルチメディアコンテンツの適応のためのストリーミングメタデータに適用され得る。
2008536423.tif 000002
【特許請求の範囲】
【請求項１】
相互接続された構成要素で構成されるツリーデータ構造を処理する方法であって、
前記方法が、
・処理ユニットを前記相互接続された構成要素のサブセットとして定義する過程と、
・その時に、関連する処理ユニットのデータが、それに対して前記データが宛先指定される主体によって使用されるべきである処理時刻を、各処理ユニットに割り当てる過程と
を有することを特徴とする方法。
【請求項２】
各処理ユニットが、アンカーエレメントと呼ばれる所定の構成要素に基づいて、所定のアタッチメントモードに従い、前記アンカーエレメントに連結された構成要素のセットとして定義される
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記アタッチメントモードが、以下の“単一体”、“祖先”、“子孫”、“祖先及び子孫”、及び“祖先、子孫及び先行する兄弟”のモードの中から選択される
ことを特徴とする請求項２に記載の方法。
【請求項４】
前記処理時刻が、時刻アドレッシングモード、及び時刻指定モードによって定義される
ことを特徴とする請求項１から請求項３のいずれか一項に記載の方法。
【請求項５】
前記時刻アドレッシングモードが、絶対的アドレッシングモードであると共に、
前記処理ユニットの処理時刻が、完全に時刻通りに定義される。
ことを特徴とする請求項４に記載の方法。
【請求項６】
前記処理時刻指定モードが、所定の指定フォーマットにおける処理時刻である
ことを特徴とする請求項５に記載の方法。
【請求項７】
前記時刻アドレッシングモードが、相対的アドレッシングモードであると共に、
前記処理ユニットの処理時刻が、先行する処理ユニットと比較して定義される
ことを特徴とする請求項４に記載の方法。
【請求項８】
前記処理時刻指定モードが、時間間隔である
ことを特徴とする請求項７に記載の方法。
【請求項９】
前記時間間隔が、時間尺度に関する多くのユニットとして表される
ことを特徴とする請求項８に記載の方法。
【請求項１０】
前記方法が、ツリー構造の形式の文書構成データを用いて実行されると共に、
前記構成要素に割り当てられたモードが、前記文書において指定される
ことを特徴とする請求項２から請求項９のいずれか一項に記載の方法。
【請求項１１】
前記文書において、前記処理ユニットの各アンカーエレメントが、対応する構成要素のアンカーエレメント特性を指定する“アンカーエレメント”属性、及び前記アンカーエレメントに関連付けられたアタッチメントモードを指定する“ｐｕＭｏｄｅ”属性を割り当てられる
ことを特徴とする請求項１０に記載の方法。
【請求項１２】
所定の構成要素に割り当てられた前記“ｐｕＭｏｄｅ”属性が、前記文書内の前記所定の構成要素の全ての子孫の構成要素によって継承される
ことを特徴とする請求項１１に記載の方法。
【請求項１３】
前記所定の構成要素に割り当てられた前記“ｐｕＭｏｄｅ”属性が、前記属性とは異なる“ｐｕＭｏｄｅ”属性を割り当てられた構成要素に至るまで、前記文書内の前記所定の構成要素の全ての子孫の構成要素によって継承される
ことを特徴とする請求項１２に記載の方法。
【請求項１４】
前記処理ユニットのアタッチメントモードが、前記ユニットのアンカーエレメントに割り当てられた“ｐｕＭｏｄｅ”属性によって決定される
ことを特徴とする請求項１１から請求項１３のいずれか一項に記載の方法。
【請求項１５】
各処理ユニットの構成要素が、時刻アドレッシングの“ｔｉｍｅＭｏｄｅ”属性、及び時刻指定属性を割り当てられる
ことを特徴とする請求項１１または請求項１２のいずれか一項に記載の方法。
【請求項１６】
絶対的時刻アドレッシングモードにおいて、前記時刻指定属性が、時刻指定フォーマットにおける“ａｂｓＴｉｍｅＳｃｈｅｍｅ”属性、及び前記フォーマットにおける前記処理時刻を指定するための“ａｂｓＴｉｍｅ”属性を含む
ことを特徴とする請求項１５に記載の方法。
【請求項１７】
相対的時刻アドレッシングモードにおいて、前記時刻指定属性が、“ｔｉｍｅＳｃａｌｅ”で示される時間尺度属性、及び“ｔｉｍｅＩｎｔｅｒｖａｌ”で示される時間間隔属性を含む
ことを特徴とする請求項１５に記載の方法。
【請求項１８】
前記所定の構成要素に割り当てられた“ｔｉｍｅＭｏｄｅ”属性、“ａｂｓＴｉｍｅＳｃｈｅｍｅ”属性、“ｔｉｍｅＳｃａｌｅ”属性、及び“ｔｉｍｅＩｎｔｅｒｖａｌ”属性が、前記文書内の前記所定の構成要素の全ての子孫の構成要素によって継承される
ことを特徴とする請求項１５から請求項１７のいずれか一項に記載の方法。
【請求項１９】
前記所定の構成要素に割り当てられた“ｔｉｍｅＭｏｄｅ”属性、“ａｂｓＴｉｍｅＳｃｈｅｍｅ”属性、“ｔｉｍｅＳｃａｌｅ”属性、及び“ｔｉｍｅＩｎｔｅｒｖａｌ”属性が、前記属性とは異なる“ｔｉｍｅＭｏｄｅ”属性、“ａｂｓＴｉｍｅＳｃｈｅｍｅ”属性、“ｔｉｍｅＳｃａｌｅ”属性、または“ｔｉｍｅＩｎｔｅｒｖａｌ”属性を割り当てられた構成要素に至るまで、前記文書内の前記所定の構成要素の全ての子孫の構成要素によって継承される
ことを特徴とする請求項１５から請求項１８のいずれか一項に記載の方法。
【請求項２０】
前記時刻アドレッシングモード、前記時刻指定フォーマット、前記時間尺度、及び前記処理ユニットの前記時間間隔が、前記装置のアンカーエレメントに割り当てられた“ｔｉｍｅＭｏｄｅ”属性、“ａｂｓＴｉｍｅＳｃｈｅｍｅ”属性、“ｔｉｍｅＳｃａｌｅ”属性、及び“ｔｉｍｅＩｎｔｅｒｖａｌ”属性によって決定される
ことを特徴とする請求項１５から請求項１９のいずれか一項に記載の方法。
【請求項２１】
前記方法が、ツリー構造の形式の文書構成データを用いて実行されると共に、
前記文書が、その中で前記文書に関係のある構成要素に割り当てられたモードが指定されるテンプレート文書と関連付けられる
ことを特徴とする請求項２から請求項９のいずれか一項に記載の方法。
【請求項２２】
前記テンプレート文書が、テンプレートのセットを含むと共に、
各テンプレートが、テンプレートパターン、及び前記テンプレートパターンを満足させる１つまたは複数の構成要素に関して指定されるべき属性のセットによって定義される
ことを特徴とする請求項２１に記載の方法。
【請求項２３】
前記所定の構成要素に適用される前記テンプレートパターンが、もし存在するならば、前記所定の構成要素の祖先、前記所定の構成要素自身、及びそれらの属性の順序に関する１つ以上の状態を指定する
ことを特徴とする請求項２２に記載の方法。
【請求項２４】
前記状態が、前記構成要素の名前と序数、及び前記属性の名前と値を制約するように適合される
ことを特徴とする請求項２３に記載の方法。
【請求項２５】
請求項１から請求項２４のいずれか一項に記載の方法を実行するためのサーバ。
【請求項２６】
プロラムがコンピュータにおいて実行された場合に、請求項１から請求項２４のいずれか一項に記載の方法を実行するためのプログラムのコード命令を含むコンピュータプログラム。
【請求項２７】
“ａｎｃｈｏｒＥｌｅｍｅｎｔ”属性、“ｐｕＭｏｄｅ”属性、“ｔｉｍｅＭｏｄｅ”属性、“ａｂｓＴｉｍｅＳｃｈｅｍｅ”属性、“ａｂｓＴｉｍｅ”属性、“ｔｉｍｅＳｃａｌｅ”属性、または“ｔｉｍｅＩｎｔｅｒｖａｌ”属性を用いて、処理ユニット及び関連付けられた処理時刻を指定するツリー構造の形式でデータを構造化する文書を表している信号。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、相互接続された構成要素で構成されるツリーデータ構造を処理する方法に関連する。
【背景技術】
【０００２】
本発明は、一般的に、遠隔通信の分野、特にインターネットを経由した遠隔通信に適用される。しかしながら、本発明のもう一つの特に有利なアプリケーションは、特にスケーラブルマルチメディアコンテンツを適応させるために、進行的にメタデータを送信すること（ストリーミング）に関連する。
【０００３】
ＭＰＥＧ  ＳＣ２９／ＷＧ１１  Ｍ１１６１１（71st MPEG Meeting, Hong Kong, China, 17/21-01-2005）の論文は、ＭＰＥＧ−２１標準（ISO/IEC TR 2100-1:2004, Part 1: Vision, Technologies and Strategy）によって定義された概念に属するデジタルアイテムのストリーミングの方法を定義すると共に、ＭＰＥＧ−２１コンテキストにおける基本的なトランザクションと分配ユニットを表す。デジタルアイテムは、全てがトランザクションとエンドユースユニット（end-use unit）を構成する、１つ以上の意味的に連結されたマルチメディアコンテンツ（例えば、ビデオ、画像、オーディオ）の抽象概念、及びそれらのコンテンツに連結されたあらゆるメタデータである。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
デジタルアイテムと連結されたメタデータは、高い頻度で、ＸＭＬ（eXtensible Mark-Up Language）として知られている広く使用されるデータツリー構成言語で書かれる。デジタルアイテムは、ここでは適切なインターネットタイプのネットワークによって伝達されることを意図しているので、その中に含まれるメタデータを送信すること、より一般的にはＸＭＬ文書を送信することに関する問題が発生する。
【０００５】
特に、送り先の主体が、全体の文書を受信することを待つ必要がなく受信したフラグメントを使用することができるように、ＸＭＬ文書を流す（進行的に送信する）ことは有益である。更に、ＸＭＬ文書の使用は、時にはビデオストリームのような連続して送信される他のデータの使用と連結される。その場合に、相互に様々なデータストリームを同期させることが必要であると共に、この目的のために、ＸＭＬ文書のフラグメントにタイミング情報を割り当てることが必要である。
【０００６】
上述のＭＰＥＧの論文は、デジタルアイテムをフラグメント化すると共に、獲得されたフラグメントにタイミング情報を割り当てることに関する解決方法を提案する。それは、特にＸＭＬ文書に適用されるが、しかしそれらには制限されない。その解決方法は、Ｘｐａｔｈ表現を用いて送信されるべきフラグメントを示すと共に、Ｘｐａｔｈ（XML Path Language, version 1.0, W3C Recommendation, 16 November 1999）は、ＸＭＬ文書におけるノード、またはノードのセットを識別するための表現言語である。更に、パラメータが、それらのフラグメントに関する伝送時刻を定義するために使用される。
【０００７】
しかしながら、その従来技術の処理方法は、いくつかの欠点を有している。
【０００８】
・第一に、その方法は、ＸＭＬ文書のフラグメントを選択するために、表現言語ＸＰａｔｈを使用する。
【０００９】
ＸＰａｔｈに関する問題は、全体のＸＭＬ文書が、評価されるべき表現のためのメモリにロードされなければならないことである。小さなＸＭＬ文書に関して、これは、問題ではない。一方、大きな文書に関して、それは、かなりのメモリ資源を消費し得ると共に、システム性能を著しく減少させ得る。
【００１０】
・第二に、そして同じ理由のために、その方法は、オンザフライ（on the fly）で生成されたＸＭＬ文書のために使用されることができない。
【００１１】
・第三に、フラグメントに適用されたタイミング情報は、先行するフラグメントと相対的な時刻を定義し得ない。
【００１２】
そのバックグラウンドに対して、本発明によって解決されるべき技術的な問題は、特にＸＭＬタイプの文書におけるフラグメントのセットを選択し、しかも柔軟にタイミング情報をそれらに割り当てることを可能にする、相互接続された構成要素で構成されるツリーデータ構造を処理する方法を提案することである。
【００１３】
更に、流されるべき文書のサイズに関係なく、それが限られたメモリ資源を必要とするべきであるという事実は別として、この方法は、同様に、オンザフライで生成される文書に適用できるべきである。
【課題を解決するための手段】
【００１４】
本発明によれば、提示された技術的問題に対する解決方法は、以下の方法に存在し、前記方法は、
・処理ユニットを相互接続された構成要素のサブセットとして定義する過程と、
・その時に、関連する処理ユニットのデータが、それに対して前記データが宛先指定される主体によって使用されるべきである処理時刻を、各処理ユニットに割り当てる過程と
を有する。
【００１５】
本発明は、更に特に、アンカーエレメントと呼ばれる所定の構成要素に基づいて、所定のアタッチメントモードに従い、前記アンカーエレメントに連結された構成要素のセットとして定義される各処理ユニットを提供する。
【００１６】
本発明によれば、前記アタッチメントモードは、以下の“単一体（simple）”、“祖先（ancestors）”、“子孫（descendants）”、“祖先及び子孫（ancestors and descendants）”、及び“祖先、子孫及び先行する兄弟（ancestors, descendants, and preceding siblings）”のモードの中から選択される。これらの様々なアタッチメントモードは、以下で定義される。
【００１７】
本発明は、更に、時刻アドレッシングモード、及び時刻指定モードによって定義されるべき前記処理時刻を提供する。
【００１８】
本発明の第１の実施において、前記時刻アドレッシングモードは、絶対的アドレッシングモードであると共に、前記処理ユニットの処理時刻は、完全に時刻通りに定義される。前記処理時刻指定モードは、その場合に、所定の指定フォーマットにおける処理時刻である。
【００１９】
本発明の第２の実施において、前記時刻アドレッシングモードは、相対的アドレッシングモードであると共に、前記処理ユニットの処理時刻は、先行する処理ユニットと比較して定義される。時間間隔から構成される処理時刻指定モードが、その場合に予想され得ると共に、同様に、前記時間間隔は、時間尺度に関する多くのユニットとして表される。
【００２０】
以下に詳細に開示されたように、本発明は、静的に、もしくは動的に実施され得る。
【００２１】
より正確には、静的に実施される場合、ツリー形式でデータを構造化する文書を用いて実施される本発明の方法は、前記構成要素に割り当てられたモードが、前記文書の中で指定されるという点で注目に値する。
【００２２】
更に、動的に実施される場合、ツリー形式でデータを構造化する文書を用いて実施される本発明の方法は、前記文書が、前記文書に関係のある構成要素に割り当てられたモードが指定されるテンプレート文書と関連付けられるという点で注目に値する。
【００２３】
特に、前記テンプレート文書は、テンプレートのセットを含み、各テンプレートは、テンプレートパターンによって、及び前記テンプレートパターンを満足させる１つまたは複数の構成要素に関して指定されるべき属性のセットによって定義されるという条件がある。
【００２４】
最後に、本発明は、更に、本発明の方法を実行するためのサーバ、プログラムがコンピュータにおいて実行された場合に、本発明の方法を実行するためのプログラムのコード命令を含むコンピュータプログラム、及び、属性を用いて、処理ユニット及び関連付けられた処理時刻を指定するツリー構造の形式でデータを構造化する文書を表している信号に関連する。
【００２５】
制限しない例として提供される添付された図面を参照した以下の説明は、本発明が何から構成されるか、そして実行するためにどのように削減され得るかを明瞭に説明する。
【発明を実施するための最良の形態】
【００２６】
図１は、相互接続された構成要素で構成されるツリーデータ構造を示す。構成要素は、ツリーのノードに対応すると共に、一般的に文字“e1”で識別される。ツリーの第１の構成要素“ｅ１０”は、根底（root）と呼ばれる。
【００２７】
図２ａ、図２ｂ、及び図２ｃは、送り先の主体によってそのように使用され得るツリーのサブセットまたはフラグメントであるこの構造の３つの処理ユニットＵＴ１、ＵＴ２、及びＵＴ３を示す。フラグメントは、構成要素のあらゆる連結されたセットである。処理ユニットＵＴ１は、構成要素ｅ１０、及びｅ１１を含み、処理ユニットＵＴ２は、構成要素ｅ１０、ｅ１２、ｅ１２１、及びｅ１２１１を含み、処理ユニットＵＴ３は、構成要素ｅ１０、ｅ１２、ｅ１２２、ｅ１２２１、及びｅ１２２２を含む。
【００２８】
図３のＸＭＬ文書は、図１のツリー構造と関連付けられる。もちろん、本発明は、ＸＭＬ文書だけに制限されないと共に、あらゆるツリーデータ構造に適用され得る。
【００２９】
受け側のアプリケーションは、進行的にこの文書を使用することができると仮定されている。この状況において、処理ユニットは、文書の残り部分とは無関係に使用され得る文書のフラグメントである。
【００３０】
図４ａ、図４ｂ、及び図４ｃは、図３のオリジナルの文書から抽出された、各々処理ユニットＵＴ１、ＵＴ２、及びＵＴ３と関連付けられているであろうと共に、サーバのメモリにオリジナルの文書とは独立して格納されるであろうＸＭＬ文書を示す。
【００３１】
しかしながら、この解決方法は、データの冗長性、及び格納スペースと帯域幅の不必要な消費によって引き起こされる矛盾の危険を導入するであろう。
【００３２】
本発明が図５から図１０を参照して以下に説明される処理方法を提案するのは、これらの欠点を回避するためである。
【００３３】
概して、この処理方法は、前記処理ユニットを定義すると共に、その時に、関連する処理ユニットのデータが、前記データの送り先を構成する主体によって使用されるべきである処理時刻を各処理ユニットに割り当てる方法を提供する。
【００３４】
処理ユニットは、アンカーエレメントと呼ばれる所定の構成要素に基づいて、所定のアタッチメントモードに従い、前記アンカーエレメントに連結された構成要素のセットとして定義される。図２ａ、図２ｂ、及び図２ｃにおいて、処理ユニットＵＴ１、ＵＴ２、及びＵＴ３のアンカーエレメントは、各々ツリーにおいて白丸で表されるｅ１１、ｅ１２１１、そしてｅ１２２である。
【００３５】
様々なアタッチメントモード、すなわち“単一体（simple）”アタッチメントモード、“祖先（ancestors）”アタッチメントモード、“子孫（descendants）”アタッチメントモード、“祖先及び子孫（ancestors and descendants）”アタッチメントモード、そして“祖先、子孫及び先行する兄弟（ancestors, descendants, and preceding siblings）”アタッチメントモードが想定され得る。
【００３６】
“単一体”アタッチメントモードにおいて、処理ユニットは、アンカーエレメント自身のみを含む。
【００３７】
“祖先”アタッチメントモードにおいて、処理ユニットは、アンカーエレメント、及びアンカーエレメントの全ての祖先を含む。
【００３８】
“子孫”アタッチメントモードにおいて、処理ユニットは、アンカーエレメント、及びアンカーエレメントの全ての子孫を含む。
【００３９】
“祖先及び子孫”アタッチメントモードにおいて、処理ユニットは、アンカーエレメント、アンカーエレメントの全ての子孫、及びアンカーエレメントの全ての祖先を含む。
【００４０】
“祖先、子孫及び先行する兄弟”アタッチメントモードにおいて、処理ユニットは、アンカーエレメント、アンカーエレメントの子孫、アンカーエレメントの祖先、アンカーエレメントの祖先に先行する構成要素及びそれらの子孫を含む。
【００４１】
図２ａ、図２ｂ、及び図２ｃにおいて、処理ユニットＵＴ１、ＵＴ２、及びＵＴ３は、“祖先及び子孫”アタッチメントモードをそれらのそれぞれのアンカーエレメントに適用することによって定義される。
【００４２】
アンカーエレメント、及びアタッチメントモードの概念は、送り先の主体へ流されるべきツリー構造の構成要素に適用するプロパティを定義するために使用される。
【００４３】
アンカーエレメントの概念は、それによって構成要素がアンカーエレメントになるか、またはアンカーエレメントにならないプロパティに対応する。同様に、アタッチメントモードの概念は、それによって構成要素が所定のアタッチメントモードに従ってアンカーエレメントに接続されるプロパティに対応する。
【００４４】
“アンカーエレメント”プロパティに従って、アンカーエレメントは、唯一の処理ユニットを定義する。一方、それは、他の処理ユニットに属することができる。相互に、処理ユニットは、唯一のアンカーエレメントによって識別される。一方、それは、他のアンカーエレメントを含むことができる。
【００４５】
本発明の処理方法が、例えばＸＭＬ文書によって実行されるとき、例えば、構成要素のプロパティは、ＸＭＬ属性によって定義されるか、またはその親の構成要素から継承されるかのいずれかである。
【００４６】
図５は、図２ａ、図２ｂ、及び図２ｃの処理ユニットが、どのように図３に示されたオリジナルのＸＭＬ文書において静的に選択され得るかを示す。
【００４７】
“アンカーエレメント”プロパティは、ｅ１１、ｅ１２１１、及びｅ１２２に割り当てられた“アンカーエレメント”属性において反映される。アンカーエレメント属性の値は、ブール代数であり、構成要素は、値が“真”である“アンカーエレメント”属性をそれが含むと共に、その時に限り、アンカーエレメントである。
【００４８】
左から右まで、及び上から下までスキャンされた文書のナビゲーション経路と対応する、ＸＭＬ文書の構成要素に関して定義された順序の関係が存在すると共に、構成要素の順序は、初めのタグの発生の順序となる。例えば、図３の文書において、構成要素は、以下の｛ｅ１０，ｅ１１，ｅ１２，ｅ１２１，ｅ１２１１，ｅ１２２，ｅ１２２１，ｅ１２２２，ｅ１３｝のように順序付けられる。処理ユニットの順序は、それらを定義するアンカーエレメントの順序となる。特に先行する処理ユニットと相対的な処理ユニットの処理時刻を定義する相対的時刻アドレッシング（relative time addressing）のために、その順序は以下で使用される。
【００４９】
“アンカーエレメント”プロパティは、構成要素が親の構成要素からこのプロパティを継承し得ないという意味において、継承され得ないという点に注意が必要である。
【００５０】
アタッチメントモードと連結された第２のプロパティは、アンカーエレメントに基づいて処理ユニットを選択するために使用される“ｐｕＭｏｄｅ”属性において反映される。このプロパティは、直接“ｐｕＭｏｄｅ”属性によって定義されるか、もしくは親の構成要素から継承されるかのいずれかである。その値は、以下の内の１つである。
【００５１】
・“単一体”アタッチメントモードのための“ｓｅｌｆ”；
・“祖先”アタッチメントモードのための“ａｎｃｅｓｔｏｒｓ”；
・“子孫”アタッチメントモードのための“ｄｅｓｃｅｎｄａｎｔｓ”；
・“祖先及び子孫”アタッチメントモードのための“ａｎｃｅｓｔｏｒｓＤｅｓｃｅｎｄａｎｔｓ”；
・“祖先、子孫及び先行する兄弟”アタッチメントモードのための“ａｎｃｅｓｔｏｒｓＤｅｓｃｅｎｄａｎｔｓＰｒｅｃｅｄｉｎｇＳｉｂｌｉｎｇ”
【００５２】
図５において示された文書において、“ｐｕＭｏｄｅ”属性は、根底の構成要素ｅ１０において、例えば、値“ａｎｃｅｓｔｏｒｓＤｅｓｃｅｎｄａｎｔｓ”を有する属性“ｐｕＭｏｄｅ”を定義するために使用される。ここで、このプロパティは、文書の全ての構成要素によって継承される。アンカーエレメントｅ１１、ｅ１２１１、及びｅ１２２は、従って、このプロパティを継承する。各々は、従って、上で説明されたそのプロパティの関数として処理ユニットを定義する。処理ユニットＵＴ１、ＵＴ２、及びＵＴ３は、図４ａ、図４ｂ、及び図４ｃにおいて示されると共に、図２ａ、図２ｂ、及び図２ｃにおいて図式的に示される３つの文書に対応するこのような方法で定義される。
【００５３】
この例において、“ｐｕＭｏｄｅ”プロパティは、“ｐｕＭｏｄｅ”属性によって、根底の構成要素に対して１度定義されると共に、その後、他の構成要素によって継承される。他の構成要素のために別々にこのプロパティを定義することが等しく可能である。もし図２ｃの処理ユニットＵＴ３が図６の処理ユニットＵＴ’３と交換される場合、それに関してアンカーエレメントはまだｅ１２２であるが、しかしそれに関して“ｐｕＭｏｄｅ”プロパティは、“子孫”アタッチメントモードによって定義され、その場合に、“ｐｕＭｏｄｅ”属性の“ｄｅｓｃｅｎｄａｎｔｓ”の値は、アンカーエレメントｅ１２２において、指定されなければならない。
【００５４】
属性及び継承といったようなものでプロパティを定義するために本発明によって提案されたメカニズムは、従って、細かい精度によって（すなわち、もし必要ならば各構成要素に関して独立して）及び能率的にプロパティを定義すると共に、もし文書のサブツリーの構成要素が同じプロパティを共有する場合に、そのプロパティを定義するために、各構成要素に属性を加えることは必要ではない。それは、サブツリーの根底の構成要素に属性を加えるのに十分であり、そして、このように定義されたプロパティは、その場合に、それの全ての子孫によって継承される。
【００５５】
まさにこのメカニズムは、類似性によって処理時刻を処理ユニットに割り当てるために適用される。
【００５６】
第１のプロパティ“ｔｉｍｅＭｏｄｅ”は、時刻アドレッシングモード（time addressing mode）を定義する。それは、“ｔｉｍｅＭｏｄｅ”属性によって定義されるか、もしくは親の構成要素から継承されるかのいずれかである。“ｔｉｍｅＭｏｄｅ”属性の値は、以下のとおりである。
【００５７】
・“ｕｎｄｅｆｉｎｅｄ”：時刻アドレッシングモードは定義されていない。
・“ｒｅｌａｔｉｖｅ”：時刻アドレッシングモードは相対的であり、すなわち処理ユニットの処理時刻は、先行する処理ユニットと比較して相対的に定義される。
・“ａｂｓｏｌｕｔｅ”：時刻アドレッシングモードは絶対的であり、すなわち処理ユニットの処理時刻は、絶対的に定義される。
【００５８】
第２のプロパティ“ｔｉｍｅＳｃａｌｅ”は、相対的時刻アドレッシングのための時間尺度を定義する。それは、“ｔｉｍｅＳｃａｌｅ”属性によって定義されるか、もしくは親の構成要素から継承されるかのいずれかである。その値は、時間尺度、すなわち１秒当たりのユニットの数を定義する整数である。
【００５９】
第３のプロパティ“ｔｉｍｅＩｎｔｅｒｖａｌ”は、相対的時刻アドレッシングのための連続した２つの処理ユニットの間の時間間隔を定義する。それは、“ｔｉｍｅＩｎｔｅｒｖａｌ”属性によって定義されるか、もしくは親の構成要素から継承されるかのいずれかである。その値は、先行する処理ユニットと比較した相対的な時刻ユニットの数を定義する整数であると共に、時刻ユニットは、上で定義された“ｔｉｍｅＳｃａｌｅ”プロパティによって定義される。
【００６０】
第４のプロパティ“ａｂｓＴｉｍｅＳｃｈｅｍｅ”は、絶対的時刻アドレッシングのためのアドレッシングフォーマットを定義する。それは、“ａｂｓＴｉｍｅＳｃｈｅｍｅ”属性によって定義されるか、もしくは親の構成要素から継承されるかのいずれかである。その値は、時刻アドレッシングフォーマットを定義するキャラクタストリーム（character stream）である。例えば、ストリーム“ｍｐ７ｔ”は、ＭＰＥＧ７のＭＤＳ（ＭｅｄｉａＴｉｍｅＰｏｉｎｔＴｙｐｅ）によって定義された時刻アドレッシングフォーマットを示す。
【００６１】
最後に、第５のプロパティ“ａｂｓＴｉｍｅ”は、絶対的時刻アドレッシングのための処理時刻を定義する。それは、継承されないと共に、“ａｂｓＴｉｍｅ”属性によって定義される。その値は、“ａｂｓＴｉｍｅＳｃｈｅｍｅ”プロパティによって定義された時刻アドレッシングフォーマットに従って時刻を定義するキャラクタストリームである。ＭＰＥＧ７のアドレッシングフォーマットに関するこの値の１つの例は、“Ｔ１７：３０：４５：２Ｆ１０”である。
【００６２】
例えば、図８において示された文書において、根底の構成要素ｅ１０に適用された“ｔｉｍｅＭｏｄｅ”属性、“ｔｉｍｅＳｃａｌｅ”属性、及び“ｔｉｍｅＩｎｔｅｒｖａｌ”属性は、その構成要素に関する時刻アドレッシングが相対的なものであり、時間尺度が１秒当たり２２０５０ユニットであり、そして、２つの処理ユニットの間の期間が１０２４ユニットである、ということを示す。ここで、これらのプロパティは、文書の構成要素によって、及び特にアンカーエレメントによって継承される。処理ユニットは、これらのプロパティをそれらのそれぞれのアンカーエレメントから継承する。処理ユニットＵＴ１は、従って、時刻ｔ１＝０において、受け側アプリケーションに提示され、処理ユニットＵＴ２は、時刻ｔ２＝１０２４／２２０５０秒において、受け側アプリケーションに提示され、そして、処理ユニットＵＴ３は、時刻ｔ３＝２０４８／２２０５０秒において、受け側アプリケーションに提示されることになる。
【００６３】
図８において例証されたように、どのように処理ユニットとそれらに関連する処理時刻を定義するプロパティが、オリジナルの文書に静的に加えられた属性を用いて指定され得るかが、上で示された。
【００６４】
どのようにこれらの属性がテンプレートのセットを適用することによって動的に加えられ得るかは、以下で説明される。
【００６５】
この動的な実装において、図３で示されるようなオリジナルのＸＭＬ文書は、その中で各テンプレートがテンプレートパターンによって定義されるテンプレート文書と関連付けられる。このパターンは、それに対してこのテンプレートが適用されることになるＸＭＬの構成要素、及びその場合にそれらの構成要素に加えられることになる属性のセットを定義する。全ての属性及びテンプレートのシンタックスは、図１０において定義される。
【００６６】
図９は、動的なテンプレート文書の例を与える。この例の結果は、図８の静的な命令の使用と同じである。
【００６７】
テンプレートパターンは、ＳＴＸ（Streaming Transformations for XML (STX), Version 1.0, Working Draft 1 July 2004）で定義された表現言語ＳＴＸＰａｔｈから得られたシンタックスによって書かれる。ＳＴＸは、オンザフライ（on the fly）で、すなわち最初に文書の全てをメモリにロードせずに、ＸＭＬ文書を変換するためのＸＭＬ変換言語である。これは、大きなＸＭＬ文書、及びオンザフライで生成されると共に、従ってそれらの全体で利用可能にされることができない文書の変換を可能にする。ＳＴＸＰａｔｈは、従って、特に本発明の状況に適当である。
【００６８】
ＳＴＸＰａｔｈシンタックスは、ＸＰａｔｈに近い。その一方、その意味論は異なる。ＳＴＸＰａｔｈと同様に、ＸＰａｔｈにおいて、表現は文脈構成要素（context element）と比較して解決される。表現を評価するために、ＸＰａｔｈは、文書全体に存在する文脈を考慮しなければならない。一方、ＳＴＸＰａｔｈは、文脈構成要素及びその祖先のスタックだけを考察する。ＳＴＸＰａｔｈにおける問題の解決に必要な文脈は、従って、限られていると共に、特に本発明の状況に適当である。ＳＴＸＰａｔｈは、特に文脈の構成要素名、それらの序数、そして潜在的な属性の名前及び値の制約を表すために使用される。
【００６９】
例えば、ＸＰａｔｈ表現“／ｅ１１／ｅ１２”は、親の構成要素がｅ１１と名前を付けられると共に文書の根底（root）である、ｅ１２と名前を付けられた全ての構成要素を選択する。ＳＴＸＰａｔｈにおける同じ表現は、最大でも１つの構成要素、すなわちその親の構成要素がｅ１２と名前を付けられ、そして更にその親がｅ１１と名前を付けられる文脈構成要素の祖先のスタックにおける構成要素を選択する。
【００７０】
所定の実装は、柔軟でかつ高速なフィルタ処理を提供するために、ＳＴＸＰａｔｈのサブセットを使用することができる。
【００７１】
本発明の方法による、図３のＸＭＬ文書の構成要素の処理は、図１１を参照して、（ａ）スタティックモードの場合、及び（ｂ）ダイナミックモードの場合が、以下で説明される。
【００７２】
オリジナルのＸＭＬ文書は、構文解析プログラム（構文アナライザ）と呼ばれるソフトウェアモジュールによって読み込まれる。いくつかの種類の構文解析プログラムは、広く使用される。これらのモジュールは、アプリケーションが、所定のアプリケーションプログラミングインタフェース（ＡＰＩ）を経由して、ＸＭＬ文書に含まれる情報にアクセスすることを可能にする。ＸＭＬ文書に含まれる全ての情報は、ウェブコンソーシアム（Web Consortium）によって標準化された情報セット（Infoset）と呼ばれる抽象モデルによってモデル化される（XML Information Set (Second Edition), W3C Recommendation 4 February 2004）。
【００７３】
本発明は、ＤＯＭ（Document Object Model）（Document Object System Level 2 Core Specification, Version 1.0, W3C Recommendation 13 November 2004）、またはＳＡＸ（Simple API for XML）のような、いくつかのタイプの構文解析プログラムによって使用され得る。本発明は、メモリ消費に関して効率的な実装であるＳＡＸを用いてここで説明される。
【００７４】
ＳＡＸタイプの構文解析プログラムは、ＸＭＬ文書を読み込むと共に、コンテンツを示す一連のイベントを出力する。例えば、図３において表された一般的な文書の読み込みは、実質上、以下の表１に示す一連のイベントを生じさせる。
【００７５】
【表１】
2008536423.tif 000003
【００７６】
本発明は、処理ユニットを定義する情報によって、ＸＭＬ文書の情報セット（Infoset）を強化する。
【００７７】
スタティックモード（ａ）において、図８において示されたように、属性がオリジナルの文書に加えられる。ＳＡＸ構文解析プログラムは、従って、強化された情報を含むＳＡＸイベントシーケンスを生成する。
【００７８】
ダイナミックモード（ｂ）において、オリジナルの文書を分析することによって生成されたイベントは、オンザフライで、属性を加えるために、テンプレートのバンクによって処理される。ストリーミング命令プロセッサと呼ばれるモジュールは、オリジナルの文書を読み込む構文解析プログラムによって出力されたＳＡＸイベントを入力として受信し、ダイナミックストリーミング命令（Dynamic Streaming Instructions）と呼ばれる文書において指定されたテンプレートを適用し、そして強化された情報を含むＳＡＸイベントシーケンスを出力する。エンコーダは、従って、ちょうどそれらの命令が静的にオリジナルのＸＭＬ文書に加えられたかのように、ストリーミング命令によって強化された情報セット（Infoset）を受信する。処理の残りは、従って静的な命令の状況と同じである。
【００７９】
エンコーダは、その場合に、それらを符号化するために、処理ユニットを定義する情報を使用する。エンコーダの出力は、連続するアクセスユニットを解読することが、ストリーミング命令によって定義されるように処理ユニットを復元することができるように、移送するために符号化されたデータの主体である一連のアクセスユニットＵＡから構成される。
【００８０】
ＭＰＥＧ７システム（ISO/IEC 15938-1: 2002, Part 1: Systems）、ＴｅＭ（text encoding）、ＢｉＭ（binary encoding）のような、いくつかのエンコーディング方法が使用され得る。各符号化方法は、いくつかのエンコーディング戦略を有することができる。
【００８１】
アクセスユニットは、その場合に、ネットワーク（例えば、インターネット）を経由して送信され得るか、もしくは、後で送信されるためにメモリに連結され得る。図１１は、これらの場合の両方を示す。いずれの場合も、各アクセスユニットは、解読された後で適切な所で使用されるために、処理ユニットが送り先の主体によって利用可能でなければならない時刻を指定する処理時刻と関連付けられる。図１１の右手部分は、送り先の主体によるアクセスユニットの使用を示す。
【図面の簡単な説明】
【００８２】
【図１】相互接続された構成要素のツリー構造を示す図である。
【図２ａ】図１のツリー構造が提供する処理ユニットを示す図である。
【図２ｂ】図１のツリー構造が提供する処理ユニットを示す図である。
【図２ｃ】図１のツリー構造が提供する処理ユニットを示す図である。
【図３】図１のツリー構造と関連付けられたＸＭＬ文書を示す図である。
【図４ａ】図２ａの処理ユニットと関連付けられたＸＭＬ文書を示す図である。
【図４ｂ】図２ｂの処理ユニットと関連付けられたＸＭＬ文書を示す図である。
【図４ｃ】図２ｃの処理ユニットと関連付けられたＸＭＬ文書を示す図である。
【図５】本発明の処理方法に従って図２ａ、図２ｂ、及び図２ｃの処理ユニットと関連付けられたＸＭＬ文書を示す図である。
【図６】図２ｃの処理ユニットの変形を示す図である。
【図７】図６の変形と関連付けられた図５のＸＭＬ文書の変形を示す図である。
【図８】処理ユニットに関する処理時刻属性を含む、図５のＸＭＬ文書を示す図である。
【図９】図３のＸＭＬ文書と関連付けられたテンプレート文書を示す図である。
【図１０】本発明の方法によって使用される属性、及びテンプレートのシンタックスを示す図である。
【図１１】（ａ）スタティックモードにおける、及び（ｂ）ダイナミックモードにおける本発明の方法に関して、図３のＸＭＬ文書の構成要素の処理ストリームを示す図である。
【符号の説明】
【００８３】
ｅ１０、ｅ１１、ｅ１２、ｅ１３    構成要素
ｅ１２１、ｅ１２２    構成要素
ｅ１２１１、ｅ１２２１、ｅ１２２２    構成要素
ＵＴ１、ＵＴ２、ＵＴ３    処理ユニット
ＵＡ    アクセスユニット
【図１】
2008536423.tif 000004
【図２ａ】
2008536423.tif 000005
【図２ｂ】
2008536423.tif 000006
【図２ｃ】
2008536423.tif 000007
【図３】
2008536423.tif 000008
【図４ａ】
2008536423.tif 000009
【図４ｂ】
2008536423.tif 000010
【図４ｃ】
2008536423.tif 000011
【図５】
2008536423.tif 000012
【図６】
2008536423.tif 000013
【図７】
2008536423.tif 000014
【図８】
2008536423.tif 000015
【図９】
2008536423.tif 000016
【図１０】
2008536423.tif 000017
【図１１】
2008536423.tif 000018
【国際調査報告】
2008536423.tif 000019
2008536423.tif 000020
2008536423.tif 000021
2008536423.tif 000022