(57)【要約】  高解像度デジタル多用途ディスク（ＨＤ−ＤＶＤ）マークアップを増分更新しフォーマットするシステム、方法及び／又は技法（「ツール」）を記載する。本ツールは、ＨＤ−ＤＶＤから読み出される第１のシーン記述を表す第１のマークアップを受信し得、ユーザーに表示するための第１の領域コンポジットへ第１のマークアップをマッピングし得る。本ツールはその後、ＨＤ−ＤＶＤから読み出される第２のシーン記述を表す第２のマークアップを受信し得る。第２のマークアップの受信に応答して本ツールは、ユーザーに表示するための第２の領域コンポジットへ第１のシーン記述の一部を増分再マッピングし得る。【選択図】図１
2010516089.tif 000002
【特許請求の範囲】
【請求項１】
機械可読命令を含む１つ以上の機械可読記憶媒体（１２０）であって、前記命令がマシン（１１６）によって実行されるとき、前記マシン（１１６）に、
高解像度デジタル多用途ディスク（ＨＤ−ＤＶＤ）から読み出される第１のシーン記述を表す第１のマークアップ（２０６ａ）を受信するステップと、
前記第１のマークアップの少なくとも一部を、ユーザーに表示するための第１の領域コンポジット（３０２ａ）へマッピングするステップ（３０４）と、
前記ＨＤ−ＤＶＤから読み出される少なくとも第２のシーン記述を表す少なくとも第２のマークアップ（２０６ｎ）を受信するステップと、
前記第２のマークアップの受信に応答して、前記ユーザーに表示するための少なくとも第２の領域コンポジット（３０２ｎ）へ前記第１のシーン記述の一部を増分再マッピングするステップ（３１２）と、を含む方法を実行させることを特徴とする機械可読記憶媒体。
【請求項２】
前記第１のマークアップ（２０６ａ）を受信する命令が、前記ＨＤ−ＤＶＤから読み出されたコンテンツマークアップ、スタイルマークアップ及びタイミングマークアップのうち少なくとも１つを受信する命令を含むことを特徴とする請求項１記載の機械可読記憶媒体（１２０）。
【請求項３】
前記第１のシーン記述の一部を増分再マッピングする前記命令（３１２）が、前記第１のシーン記述において表されているエレメントすべてのスタイルの一部を再マッピングする命令（４０８）を含むことを特徴とする請求項１記載の機械可読記憶媒体（１２０）。
【請求項４】
前記第１のシーン記述の一部を増分再マッピングする前記命令（３１２）が、前記第１のシーン記述において表されている単一のエレメントのスタイルの一部を再マッピングする命令（４１０）を含むことを特徴とする請求項１記載の機械可読記憶媒体（１２０）。
【請求項５】
前記第１のシーン記述の一部を増分再マッピングする前記命令（３１２）が、前記第１のシーン記述の増分再マッピングを実行しないことを決定する命令（４０６）を含むことを特徴とする請求項１記載の機械可読記憶媒体（１２０）。
【請求項６】
更に、クロックパルス（３０８）に応答して前記第２のマークアップを受信する命令を含む請求項１記載の機械可読記憶媒体（１２０）。
【請求項７】
更に、前記第２のマークアップ受信に応答して少なくとも１つの変更通知メッセージ（４０４ａ，４０４ｂ，４０４ｃ）を生成する命令を含む請求項１記載の機械可読記憶媒体（１２０）。
【請求項８】
前記変更通知メッセージ（４０４ａ，４０４ｂ，４０４ｃ）を生成する前記命令が、前記第２のシーン記述において変更されている、前記第１のシーン記述中の少なくとも１つのエレメントに関する指示を含む変更通知メッセージを生成する命令、を含むことを特徴とする請求項７記載の機械可読記憶媒体（１２０）。
【請求項９】
前記変更通知メッセージ（４０４ａ，４０４ｂ，４０４ｃ）を生成する前記命令が、前記第２のシーン記述において変更されている、前記第１のシーン記述中の少なくとも１つのエレメントにおける少なくとも１つのスタイルに関する指示を含む変更通知メッセージを生成する命令、を含むことを特徴とする請求項７記載の機械可読記憶媒体（１２０）。
【請求項１０】
前記変更通知メッセージ（４０４ａ，４０４ｂ，４０４ｃ）を生成する前記命令が、前記第２のシーン記述において変更されている、前記第１のシーン記述に定義されているレイヤーに存在する、少なくとも１つのエレメント又はスタイルに関する指示を含む変更通知メッセージを生成する命令、を含むことを特徴とする請求項７記載の機械可読記憶媒体（１２０）。
【請求項１１】
前記変更通知メッセージ（４０４ａ，４０４ｂ，４０４ｃ）を生成する前記命令が、前記第２のシーン記述において変更されている、前記第１のシーン記述に定義されているエレメントのスタイルの少なくとも１つの新しい値に関する指示を含む変更通知メッセージを生成する命令、を含むことを特徴とする請求項７記載の機械可読記憶媒体（１２０）。
【請求項１２】
更に、変更通知メッセージにおいて指定されているレイヤーが、効果があるレイヤーであるか否か決定する命令（８０６）を含む請求項７記載の機械可読記憶媒体（１２０）。
【請求項１３】
更に、前記第１のシーン記述に含まれている少なくとも１つの第１のエレメントが、前記第１のシーン記述に含まれている別のエレメントから少なくとも１つの属性を継承するように設定されているか否か決定する命令（８４０）を含む請求項７記載の機械可読記憶媒体（１２０）。
【請求項１４】
更に前記エレメントが、前記少なくとも１つの属性を継承するように設定されている決定に応答して前記第１のエレメントの単一エレメントの再マッピングを利用不可にする命令（８４２）を含む請求項１３記載の機械可読記憶媒体（１２０）。
【請求項１５】
更に、前記エレメントが、前記少なくとも１つの属性を継承するように設定されていない決定に応答して前記第１のエレメントの単一エレメントの再マッピングを実行する命令（８３８）を含む請求項１３記載の機械可読記憶媒体（１２０）。
【請求項１６】
前記第１のエレメントの単一エレメントの再マッピングを実行する前記命令（８３８）が、変更通知メッセージにおいて指定されている単一エレメントに対するスタイルの値を使用する命令を含むことを特徴とする請求項１３記載の機械可読記憶媒体（１２０）。
【請求項１７】
請求項１記載の前記機械可読記憶媒体を含むＨＤ−ＤＶＤ再生装置（１１６）。
【請求項１８】
高解像度デジタル多用途ディスク（ＨＤ−ＤＶＤ）を再生する装置（１１６）であって、
プロセッサー（１１８）と、
１つ以上の計算機可読記憶媒体（１２０）であって、ＨＤ−ＤＶＤ変換コンポーネント（１２２）を含み、該コンポーネントが、
前記ＨＤ−ＤＶＤから読み出される第１のシーン記述を表す第１のマークアップ（２０６ａ）を受信するステップと、
前記少なくとも第１のマークアップの一部を、ユーザーに表示するための第１の領域コンポジット（３０２ａ）へマッピングするステップ（３０４）と、
前記ＨＤ−ＤＶＤから読み出される少なくとも第２のシーン記述を表す少なくとも第２のマークアップ（２０６ｎ）を受信するステップと、
前記第２のマークアップの受信に応答して、前記第１のシーン記述の一部を前記ユーザーに表示するための少なくとも第２の領域コンポジット（３０２ｎ）へ増分再マッピングするステップ（３１２）と、を含むことを特徴とする装置（１１６）。
【請求項１９】
前記ＨＤ−ＤＶＤ変換コンポーネント（１２２）が、前記第１のシーン記述において表されている単一のエレメントのスタイルの一部（４１０）を再マッピング（３１２）するために存在することを特徴とする請求項１８の装置（１１６）。
【請求項２０】
前記ＨＤ−ＤＶＤ変換コンポーネントが、前記第１のシーン記述において表されているエレメントすべてのスタイルの一部（４０８）を再マッピング（３１２）するために存在することを特徴とする請求項１８記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、高解像度デジタル多用途ディスク（ＨＤ−ＤＶＤ）マークアップを増分更新し、フォーマットするためのシステム、方法及び／又は技法（「ツール」）に関する。
【背景技術】
【０００２】
高解像度デジタル多用途ディスク（ＨＤ−ＤＶＤ）媒体に関連するプレーヤーがますます人気になり、広く使用されてきている。より多くのメーカーがこの市場に参入するにつれて競争が増し、価格が下落する傾向がある。この価格設定の環境においては、ＨＤ−ＤＶＤプレーヤー内部で動作するソフトウェアは通常、比較的安価なコンシューマーハードウェア上で動作する。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
ＨＤ−ＤＶＤコンテンツ及びスタイルマークアップを表示するための具体的なフォーマットへ変換することは、計算コストが高い。通常、ＨＤ−ＤＶＤマークアップに対するレンダリング速度に関する合理的目標は、ユーザーエクスペリエンスに対して許容可能な毎秒約２４フレームである。安価なコンシューマーハードウェア上であらゆるクロックパルスに対し関連するＨＤ−ＤＶＤコンテンツ及びスタイルマークアップすべてのフォーマットに対する計算コストが高いタスクを実行するためにこのレンダリング速度の目標を達成しようとするときに、ＨＤ−ＤＶＤマークアップを変換しレンダリングする従来の技法は、困難に直面する。
【課題を解決するための手段】
【０００４】
高解像度デジタル多用途ディスク（ＨＤ−ＤＶＤ）マークアップを増分更新し、フォーマットするシステム、方法及び／又は技法（「ツール」）を本明細書に記載する。本ツールは、ＨＤ−ＤＶＤから読み出される第１のシーン記述を表す第１のマークアップを受信し得、ユーザーに表示するための第１の領域コンポジットへ第１のマークアップをマッピングし得る。本ツールはその後、ＨＤ−ＤＶＤから読み出される第２のシーン記述を表す第２のマークアップを受信し得る。本ツールは、第２のマークアップの受信に応答して第１のシーン記述の一部をユーザーに表示するための第２の領域コンポジットへ増分再マッピングし得る。
【０００５】
この「課題を解決するための手段」を、以下「発明を実施するための形態」に更に詳細に記載したいくつかの概念を簡易化された形式で紹介するために提供する。この「課題を解決するための手段」は、請求項記載対象の主要な又は不可欠な機能を特定することを意図しておらず、請求項記載対象の範囲を決定する際の支援として使用することにも意図していない。用語「ツール」は例えば、システム（単数又は複数）、方法（単数又は複数）、計算機可読命令及び／又は前述及び文書の始めから終りまで文脈によって受入れられる技法（単数又は複数）を参照し得る。
【０００６】
ＨＤ−ＤＶＤマークアップの増分更新及びフォーマットに関連するツールを以下の図面に関連し記載する。同一の数字を、同様のコンポーネント及び機能部を参照するために開示物及び図の始めから終わりまで使用する。参照番号中の第１桁目は、その参照番号が導入されている図面を示す。
【図面の簡単な説明】
【０００７】
【図１】ＨＤ−ＤＶＤマークアップを増分更新しフォーマットする動作環境を例示するブロック図である。
【図２】ＨＤ−ＤＶＤ変換コンポーネントの更なる態様を例示するブロック図である。
【図３】時間と共に発生するシーン記述における状態遷移を例示するブロック図である。
【図４】クロックパルスに応答してこれらの遷移が時間と共に発生するドキュメントオブジェクトモデル（ＤＯＭ）の状態における遷移を例示するブロック図であって、フォーマッターコンポーネントが、ＤＯＭの状態を増分再マッピングし得る方法を例示する。
【図５】ＨＤ−ＤＶＤマークアップを増分更新し、フォーマットする処理を例示する流れ図である。
【図６】ＨＤ−ＤＶＤのスタイルデータが、レイヤーへ統合化される処理を例示するブロック図である。
【図７】変更通知メッセージの更なる態様を例示するブロック図である。
【図８】変更通知メッセージに対する作用として実行され得る処理を例示する流れ図である。
【図９】クロック信号に応答してフレーム毎のフォーマットを実行する処理を例示する流れ図である。
【図１０】マークアップツリーの親及び子供のノードをトラバースする処理を例示する流れ図である。
【発明を実施するための形態】
【０００８】
概観
以下ドキュメントには、技法及び処理の多くを実行及び／又は支援し得るツールを記載する。以下の論述では、本ツールが高解像度デジタル多用途ディスク（ＨＤ−ＤＶＤ）マークアップを増分更新しフォーマットする例示的な方法を記載する。この論述では、本ツールが実行し得る別の技法及び／又は処理も記載する。
【０００９】
ＨＤ−ＤＶＤコンテンツ及びスタイルマークアップを本明細書に記載したような具体的なフォーマットへフォーマットするために、用語「状態」は、ＨＤ−ＤＶＤの仕様によって定義されている任意の状態及び／又はスタイルを参照し得、用語「状態遷移」は、ＨＤ−ＤＶＤの任意の状態又はスタイルに関する値における任意の変更を参照している。
【００１０】
図１には、ＨＤ−ＤＶＤマークアップを増分更新しフォーマットするための動作環境（１００）を例示する。動作環境（１００）は、破線（１０６）によって一般に表されているように１人以上のユーザー（１０２）が、１つ以上のＨＤ−ＤＶＤディスク（１０４）を再生可能にし得る。
【００１１】
これらのＨＤ−ＤＶＤディスク（１０４）は、１つ以上の機械可読コンポーネントを含み得る。これらのコンポーネントは、例えばコンテンツマークアップ部（１０８）を含み得、構造化されたエレメントのツリーを定義するＸＭＬ用語を含み得る。これらのエレメントは、ＨＤ−ＤＶＤディスクが再生されるとき、ユーザーに提示され得る視覚又は音声コンテンツを指定し得る。
【００１２】
ＤＶＤディスク（１０４）は、ユーザーに提示されたときのコンテンツマークアップ部（１０８）に含まれているエレメントの見え方を記述するＸＭＬ用語を含み得るスタイルマークアップ部（１１０）も含み得る。言い換えると、コンテンツマークアップ部は、どのエレメントが、ユーザーにレンダリングされるか指定し得、スタイルマークアップ部は、これらのエレメントが、ユーザーにどのようにレンダリングされるか指定し得る。
【００１３】
以下に示されている表１には、ＨＤ−ＤＶＤのコンテンツマークアップエレメントのツリーを例示する。
【００１４】
【表１】
2010516089.tif 000003
ＤＶＤディスク（１０４）は、１つ以上のスタイルマークアップの変更を時間と共に指定するＸＭＬ用語を含み得るタイミングマークアップ部（１１２）も含み得る。
【００１５】
コンテンツマークアップ部、スタイルマークアップ部及びタイミングマークアップ部は、宣言的プログラミング言語で実装され得る。しかしながらスクリプト部（１１４）は、スタイルマークアップにおける非決定論的な変更を時間と共にもたらす命令型プログラミング用語で実装され得る。
【００１６】
作動環境（１００）では、ユーザー（１０２）は、ディスク（１０４）及びプレーヤー（１１６）に接続している破線で表されているように再生のためにＨＤ−ＤＶＤディスク（１０４）をＨＤ−ＤＶＤプレーヤー（１１６）に挿入可能であり得る。ＨＤ−ＤＶＤプレーヤー（１１６）は、（１１８）に示されている１つ以上のプロセッサーを含む計算機を基本とするシステムであり得る。これらのプロセッサーはまた、所与のタイプ又はアーキテクチャを有するように分類又は特徴付けられ得るが、同一のタイプ又はアーキテクチャを有し得るか又は有し得ない。
【００１７】
ＨＤ−ＤＶＤプレーヤーは、（１２０）に一般に示されている１つ以上の機械可読又は計算機可読記憶媒体の実体も含み得る。計算機可読媒体（１２０）は、プロセッサー（１１８）によって実行されるとき、ＨＤ−ＤＶＤプレーヤーによって実行される本明細書に記載したツール又は関連する任意の機能を実行する命令を含み得る。プロセッサーは、計算機可読媒体に埋め込まれているか又は符号化された命令をアクセス及び／若しくは実行し得、並びに／又は計算機可読媒体にストアされているデータにアクセスし得る。
【００１８】
計算機可読媒体（１２０）に対する更なる詳細に移ると、それはＨＤ−ＤＶＤ変換コンポーネント（１２２）の１つ以上の実体を含み得る。ＨＤ−ＤＶＤ変換コンポーネント（１２２）は、例えばプロセッサーにロードされ、実行されたとき、ＨＤ−ＤＶＤプレーヤーが、ユーザーにレンダリングするためにＨＤ−ＤＶＤマークアップを増分更新しフォーマット可能にする１つ以上のソフトウェアモジュールを含み得る。
【００１９】
図１には、ユーザーへのレンダリングされたマークアップ出力を一般に（１２４）に示す。便宜上であって、説明のためにあり得る実装を限定しないが、図１は、レンダリングされたマークアップが含み得るいくつかのエレメントの例を含む。前述のようにコンテンツマークアップ部（１０８）は、１つ以上の幾何学図形プリミティブ（１２６）を含み得るこれらのエレメントのいくつかを指定し得る。幾何学図形プリミティブ（１２６）の例は、メニューボックス、図形エレメント又は別のユーザーインターフェース機能を構築するために使用されるエレメントを含み得る。
【００２０】
レンダリングされた出力（１２４）は、（１２８）に一般に示されている１つ以上のテキストエレメントを含み得る。これらのテキストエレメントの例（１２８）は、レンダリングされた出力（１２４）にユーザーに提示されているラベル、説明又は他の英数字又は文字を基本とする情報を含み得る。
【００２１】
レンダリングされた出力（１２４）は、（１３０）に一般に示されている１つ以上の画像及び／又は映像エレメントの実体を含み得る。これらの画像又は映像のエレメントは、ユーザーインターフェース装置の一部（例えばメニューボックス又はその他）として含まれ得るか又はＨＤ−ＤＶＤディスクのエンターテインメントの一部（例えば映画、スポーツ競技又はその他）として含まれている主なコンテンツを提供し得る。
【００２２】
レンダリングされた出力（１２４）は、（１３２）に一般に示されている１つ以上の音声エレメントの実体を含み得る。これらの音声エレメントは、単独か又は画像／映像エレメント（１３０）などの他のエレメントと関連し表示され得る。
【００２３】
ＨＤ−ＤＶＤプレーヤー（１１６）は、破線（１３６）によって表されているように、レンダリングされた出力（１２４）をユーザー（１０２）に提供する表示装置（１３４）と連携し得る。図１は、ユーザーへのレンダリングされた出力（１２４）だけではなくユーザーによって提供される任意の応答又は入力も表すために、実際は双方向として破線（１３６）を示す。
【００２４】
表示装置（１３４）は、レンダリングされた出力を視覚的な形式でユーザーに提供するためのディスプレイ表示装置（１３８）を含み得る。ディスプレイ表示装置（１３８）の例は、適切な任意の表示技術を用いて実装されるテレビ、モニター、ディスプレイ又はその他を含み得る。
【００２５】
表示装置（１３４）は、ユーザーに聞きとれる形式でレンダリングされた出力を提供する音声提示装置（１４０）を含み得る。音声提示装置（１４０）の例は、人間の耳によって受信するために適切な任意の音声技術を用いて実装された電気的信号を音波に変換するためのスピーカー又は類似の装置を含み得る。
【００２６】
図１には、あり得る実装を限定しないが、説明及び図示を単に容易にするために、個別のブロックとして表示装置（１３４）及びＨＤ−ＤＶＤプレーヤー（１１６）を示す。更に具体的には、表示装置及びＨＤ−ＤＶＤプレーヤーは、スタンドアロン又は統合化コンポーネントとして実装され得る。ディスプレイ表示装置（１３８）及び音声提示装置（１４０）は、同様の方法によって表示装置（１３４）から分離したスタンドアロンコンポーネント又はそれと統合されたコンポーネントとして実装され得る。
【００２７】
図１を用いて動作環境（１００）を記載したので、ここで今から論述を、図２を用いて提示されているＨＤ−ＤＶＤ変換コンポーネント（１２２）の更に詳細な説明へ進める。
図２には、ＨＤ−ＤＶＤ変換コンポーネント（１２２）の更なる態様（２００）を例示する。便宜上であって限定しない既に記載したエレメントいくつかを図２に繰り返して同一の参照番号によって示す。
【００２８】
全体として見ると、コンテンツマークアップ（１０８）、スタイルマークアップ（１１０）及びタイミングマークアップ（１１２）は、ドキュメントオブジェクトモデル（ＤＯＭ）（２０２）を定義している。ＤＯＭ（２０２）は、ＸＭＬ用語を使用しツリーのデータ構造として実装され得る。ＤＯＭ（２０２）は、図２の（２０４）に一般に示されているように個々の複数のマークアップエレメントを含み得る。上記の表１には、特定のＤＯＭ（２０２）の状態の例を提供し、合法的な親子エレメントセットの組み合わせを表す。
【００２９】
図２には、（２０４ａ）及び（２０４ｎ）にマークアップエレメントの２つの例を示す。しかしながら、ＤＯＭの実装は、任意の数のエレメント（２０４）を含み得、ＤＯＭツリーは、適切な任意のフォーマットを実行し得る。スクリプト（１１４）は、非決定論的な方法でＤＯＭを変更する命令型プログラミング言語であり得る。
【００３０】
これらのマークアップエレメントは、ユーザーに画面上でレンダリングされているものに対するシーン記述を定義し得る。図２には、（２０６）にこのシーン記述を一般的に示す。シーン記述（２０６）がユーザーに画面上でレンダリングされるものを指定し得ると同時に、シーン記述自体は、画面上に直接に現れ得るか又は表示され得るフォーマットというよりもむしろ（ＤＶＤフォーラム運営委員会によって公表されている）ＨＤ−ＤＶＤの仕様によって定義されているフォーマットで表現される。シーン記述を画面上の表示に適する形式へ変換する処理を本明細書においては、フォーマットとして参照する。この機能を実行するためにＨＤ−ＤＶＤ変換コンポーネント（１２２）は、シーン記述を、画面上の表示に適する形式にフォーマットするためのソフトウェア命令を含み得るＨＤ−ＤＶＤフォーマッターコンポーネント（２０８）を含み得る。
【００３１】
ＨＤ−ＤＶＤフォーマッターコンポーネント（２０８）は、ユーザーに画面上でレンダリングするために適する変換されたコンテンツ及びスタイルマークアップへシーン記述言語（２０６）を変換するか又はマッピングする。図２には、変換されたコンテンツ及びスタイルマークアップを（２１０）に一般に示す。この変換されたマークアップ（２１０）は、変換されたコンテンツ及びスタイルマークアップを最終的にレンダリングされた出力フォーマット（例えば（１２４））にレンダリングするソフトウェア命令を含むＨＤ−ＤＶＤレンダリングコンポーネント（２１２）に入力される。このレンダリングされた出力は、例えば、特定の表示装置（１３４）に対する任意の特性を考慮している表示装置（１３４）を介したユーザーへの表示に適している。
【００３２】
図２を用いてＨＤ−ＤＶＤ変換コンポーネント（１２２）を更に詳細に記載したので、ここで今から論述を、図３を用いて示されているシーン記述を時間と共に処理し得るＨＤ−ＤＶＤフォーマッターコンポーネント（２０８）の更に詳細な説明へ進める。
【００３３】
図３には、時間と共に発生するシーン記述における状態遷移（３００）を例示する。便宜上であって限定しない既に記載したエレメントのいくつかを図３に繰り返して同一の参照番号によって示す。
【００３４】
図３に示されているように、（２０６ａ）に示されている所与の初期状態のシーン記述を（２０２ａ）に示されている初期状態に相当するＤＯＭによって表す。ＨＤ−ＤＶＤフォーマッター（２０８）は、ＤＯＭの状態（２０２ａ）を図３の（３０２）に一般に示されている構造領域コンポジットへマッピングする。更に具体的に述べると、ＤＯＭの状態（２０２ａ）に対応する領域コンポジットの状態（３０２ａ）を示すと同時に、マッピング処理を（３０４）に示す。
【００３５】
領域コンポジット（３０２）は、ＤＯＭにおいて指定された様々なエレメントをユーザーに対し画面上にどのようにレンダリングし得るかその方法を示すツリー構造として実装され得る。こうして領域コンポジット（３０２）は、任意の数のエレメント（３０６ａ）及び（３０６ｎ）（一般にエレメント（３０６））を含み得る。ＤＯＭは、ＨＤ−ＤＶＤの著作者によって選択されたマークアップ言語で指定され得るが、領域コンポジットは、ＨＤ−ＤＶＤコンテンツが表示されている装置の機能の観点から表現される。ＨＤ−ＤＶＤのレンダリングコンポーネント（２１２）は、領域コンポジット（３０２ａ）のコンテンツに基づいてレンダリングされた出力（１２４ａ）を生成し得る。
【００３６】
１つのＤＯＭノードは、段落を記述するＤＯＭノードが、複数のテキスト行を作成する時のように複数領域のノードを形成し得、段落全体が（例えば段落に対する背景色を有する）１つの領域を形成し、更に、行それぞれが（例えばその行に対するいくつかのテキスト及び／又は画像を有する）１つの領域を作成する。１つの領域のノードは一般に、１つのＤＯＭノードを逆参照するが、これは常に真であり得ない。例えば、段落のＤＯＭノードが、それ自体であって他の何れのＤＯＭノードによっても十分に指定されないで段落領域及び行領域を形成することを考えられたい。これらの段落領域及び行領域それぞれは、双方とも一般に特に段落のＤＯＭノードを参照していて、他のＤＯＭノードを全く参照しない。
【００３７】
しかしながら、親の段落のＤＯＭノードが、背景色を定義し、子供の段落のＤＯＭノードが、その色を継承する場合を考えられたい。その後、子供の段落のＤＯＭノードによって形成される段落領域及び行領域は一般に、子供の段落のＤＯＭノードを参照する。しかしながら、厳密に言うと、これらの段落領域及び行領域は、背景色を指定した親の段落のＤＯＭノードによっても影響を受けていて関連付けられる。
【００３８】
図３には、ＨＤ−ＤＶＤフォーマッター（２０８）がクロックパルス又は時を刻んだとき、シーン記述をどのように時間と共に遷移し得るか例示する。クロックパルス又は時の刻みを（３０８）に一般に示す。図３には、（２０６ａ）に示されている所与の状態におけるシーン記述が、クロックパルス（３０８）に応答して（２０６ｎ）に示されている次の状態へ遷移するシナリオを例示する。
【００３９】
クロックパルス（３０８）が発生すると、これは、シーン記述（２０６ａ）が状態を（２０６ｎ）に変更された信号をＨＤ−ＤＶＤフォーマッター（２０８）に提供する。図３に示されているように、新しいシーン記述（２０６ｎ）が、（２０２ｎ）に示されているＤＯＭの新しい状態に関連付けされ得る。図３には、初期のＤＯＭの状態（２０２ａ）と新しいＤＯＭの状態（２０２ｎ）との間の任意の変更を（３１０）に示す。
【００４０】
フォーマッター（２０８）は、クロックパルス（３０８）に応答して順に領域コンポジット（３０２ａ）を更新するとき、これらの変更（３１０）を考慮し得る。更に具体的には、フォーマッター（２０８）は、ＤＯＭ（２０２ｎ）の増分再マッピングを（３０２ｎ）に示されている領域コンポジットの更新された状態へ実行し得る。本明細書に使用される用語「増分」は、新しいＤＯＭの状態（２０２ｎ）全体を再マッピングすることと区別するために、以前のＤＯＭの状態（２０２ａ）に対し変更された新しいＤＯＭの状態（２０２ｎ）のその一部だけを再マッピングする概念を示す。図３には、この増分再マッピングプロセスを一般に（３１２）に示す。
【００４１】
その領域コンポジット（３０２ａ）が一旦、領域コンポジット（３０２ｎ）にもたらすために更新されると、ＨＤ−ＤＶＤレンダリングコンポーネント（２１２）は、更新されているレンダリングされた出力（１２４ｎ）を形成し得る。レンダリングされた出力（１２４ｎ）は、ユーザーに明らかにされた最終的な形式で提示されているようにクロックパルス（３０８）によってトリガーされるシーン記述における変更を反映する。
【００４２】
図３を用いてＨＤ−ＤＶＤフォーマッターコンポーネント（２０８）を更に詳細に記載したので、ここで今から論述を、今から図４を用いて時間と共に遷移するとき、フォーマッターコンポーネント（２０８）が示されているＤＯＭの状態を増分再マッピングし得ることによる様々なアプローチの更に詳細な説明へ進める。
【００４３】
図４には、これらの遷移がクロックパルスに応答して時間と共に生ずるときのＤＯＭの状態における遷移（４００）を例示していて、フォーマッターコンポーネント（２０８）がＤＯＭの状態をどのように増分再マッピングし得るかその方法を例示する。便宜上であって限定しない既に記載したエレメントのいくつかを図４に繰り返して同一の参照番号によって示す。
【００４４】
フォーマッターコンポーネント（２０８）は、（２０６ａ）に示されている所与の現在のシーン記述を表すデータを受信し、（３０８）に示されている連続的なクロックパルスの指示を受信する。クロックパルス（３０８）に応答して現在のシーン記述（２０６ａ）は、次のシーン記述の状態（２０６ｎ）の指示を受信し、フォーマッターコンポーネント（２０８）を用いて次のシーン記述の状態（２０６ｎ）へ遷移する。
【００４５】
図４に示されているように、異なるシーン記述状態は、（２０２ａ）、（２０２ｂ）、（２０２ｃ）及び（２０２ｎ）に示されているようなＤＯＭの実体又はそれぞれの状態に関連付けられる。図４には、個々の時間（４０２ａ）、（４０２ｂ）、（４０２ｃ）及び（４０２ｎ）に生ずるクロックパルスの例（３０８）を用いた時間軸（４０２）を例示する。
【００４６】
ＤＯＭが、例えば状態（２０２ａ）から状態（２０２ｂ）へ遷移するにつれて、フォーマッターコンポーネント（２０８）は、ＤＯＭが状態から状態へどのくらい変更するか決定し得る。図４には、（３１２ａ）、（３１２ｂ）及び（３１２ｃ）にそれぞれ示されている３つの変更例を提供する。変更（３１２ａ）は、状態（２０２ａ）から（２０２ｂ）へ遷移するときのＤＯＭにおける変更を示し、変更（３１２ｂ）は、状態（２０２ｂ）から（２０２ｃ）へ遷移するときのＤＯＭにおける変更を示し、変更（３１２ｃ）は、状態（２０２ｃ）から（２０２ｎ）へ遷移するとき、ＤＯＭにおける変更を示す。
【００４７】
ＨＤ−ＤＶＤプレーヤー（１１６）のフォーマッターコンポーネント（２０８）及び／又は他のコンポーネントは、これらの変更の範囲及びコンテンツを示すメッセージを生成し得る。図４には、これらの変更通知メッセージの３つの例（まとめて変更通知メッセージ（４０４））を（４０４ａ）、（４０４ｂ）及び（４０４ｃ）に例示する。本明細書に記載の実装の説明が、ＤＯＭの状態の遷移をいくらでも支援し得ることに留意されたい。
【００４８】
変更通知メッセージ（４０４）において反映されている特定の変更セットの特質及び範囲に従って、フォーマッターコンポーネント（２０８）は、更新された領域コンポジットを派生させるために、ＤＯＭの状態を増分再マッピング又は再フォーマットする異なる技法を使用し得る。図４に３つの技法を例示する。
【００４９】
（４０６）に示されている第１のシナリオにおいては、フォーマッターコンポーネント（２０８）は、変更（３１０）による増分作業を実行しない。この第１のシナリオにおいては、ＤＯＭの状態における遷移は、いかなる増分再マッピングも再フォーマットも結果として生じない。この第１のシナリオが発生し得るときの例を以下に与える。
【００５０】
（４０８）に示されている第２のシナリオにおいては、フォーマッターコンポーネント（２０８）は、技法「スタイルの一部−エレメントすべて」を使用する。この第２の技法においては、フォーマッターコンポーネントは、ＤＯＭのマークアップツリーに含まれているエレメントすべてを評価するが、状態遷移によって変化するスタイルを評価するだけである。
【００５１】
（４１０）に示されている第３のシナリオにおいては、フォーマッターコンポーネント（２０８）は、技法「スタイルの一部−単一エレメント」を使用する。この第３の技法においては、フォーマッターコンポーネントは、マークアップツリーにおける単一のノードを評価し、その単一ノード内の状態遷移によって変化したそれらのスタイルだけを評価する。
【００５２】
図４を用いてフォーマッターコンポーネント（２０８）が時間と共に遷移するとき、ＤＯＭの状態を増分再マッピングし得る様々なアプローチを記載したので、ここで今から論述を、図５を用いてフォーマッターコンポーネント（２０８）が実行し得るプロセスフローの説明へ進める。
【００５３】
図５には、ＨＤ−ＤＶＤマークアップを増分更新し、フォーマットするためのプロセスフロー（５００）を例示する。便宜上であって限定しない既に記載したエレメントのいくつかを図５に繰り返して同一の参照番号によって示す。プロセスフロー（５００）をフォーマッターコンポーネント（２０８）などの一定のコンポーネントに関連して記載したが、別のコンポーネントが、本明細書に記載の範囲及び趣旨から逸脱せずに少なくともプロセスフロー（５００）の一部を実行し得ることに留意されたい。
【００５４】
図５には、クロックパルス（３０８）に応答してＤＯＭの状態（２０２ｂ）へ遷移するＤＯＭの状態（２０２ａ）を例示する。ＤＯＭの状態（２０２）は、前述したように複数のエレメントを含むツリー構造として表され得る。図５に示されているように、これらのツリー内のエレメントは、（５０２）に一般に示されているスタイルそれぞれに関連付けられ得る。図５には、（５０２ａ）、（５０２ｂ）、（５０２ｃ）にＤＯＭの状態（２０２ａ）におけるスタイル及び（５０２ｘ）、（５０２ｙ）及び（５０２ｚ）にＤＯＭの状態（２０２ｂ）におけるスタイルの例を示す。ＤＯＭの状態（２０２ａ）が、ＤＯＭの状態（２０２ｂ）へ遷移するにつれてこれらのスタイル（５０２）の一部（又はことによるとない）が、変更通知メッセージ（４０４）において指示されているように変化し得る。
【００５５】
本明細書に記載したツールは、変更通知メッセージ（４０４）の受信に応答してプロセスフロー（５００）の少なくとも一部を実行し得る。図５の説明及び本明細書に含まれている他の流れ図を用いて続ける前に、これらの流れ図に表されたブロックが、便宜上であって限定しない単に示された順番で提示されていることに留意されたい。これらのプロセスフローの実装は、これらのブロックを都合のよい任意の順番で実行し得る。
【００５６】
ブロック（５０４）は、変更通知メッセージに示されているフォーマット変更が、関連するスタイルに相当するか否か評価することを表す。その場合、プロセスフロー（５００）は、関連するスタイルに相当する任意のデータを一緒に処理することを表すブロック（５０８）への肯定分岐（５０６）を実行し得る。
【００５７】
スタイルは、複数の変更通知が一緒に送信されたとき、一緒に関係付けられて処理され得る。例えば、変更通知メッセージ（例えば（４０４））は、変更Ｂ及びＣが関係付けられ、一緒に処理され得る変更Ａ、変更Ｂ、変更Ｃ及び変更Ｄを含み得る。
【００５８】
スタイルは、スタイルの多くが領域コンポジットの１つの領域の同一部分に影響するときも、一緒に関係づけられ処理され得る。例えば、領域コンポジットにおける領域の一部は、本質的にbounding box (x0, y0) 〜 (x 1 ,y 1)の矩形の背景であって、領域が背景色又は背景画像を有する場合は、背景色及び／又は背景画像がどこに描かれるかを記載している。スタイルの多くは、style:anchor，style:x，style:y，style:position，style: inlineProgressionDimension，style:blockProgressionDimension，style:writingMode， style:width及びstyle:height を含むが、これらに限定しないこの矩形の背景に影響し得る。こうして領域の矩形の背景を計算する演算は、これらのスタイルそれぞれを最終的に考慮するので、これらのスタイルはすべて一度に処理され得る。しかしながら矩形の背景のstyle:colorは、この領域に対するbounding boxに関するが、色は、bounding boxの計算に参入せず、色の変更は、幅、高さその他における変更から切り離されて処理され得る。
【００５９】
ブロック（５０４）に戻ると、変更通知メッセージに示されているフォーマット変更が、関連するスタイルに相当しない場合、プロセスフロー（５００）は、評価ブロック（５１２）への否定分岐を実行し得る。
【００６０】
評価ブロック（５１２）は、過去のフォーマット結果が利用可能であるか否か決定し、利用可能である場合、これらの過去の結果が、ＤＯＭの状態（２０２ｂ）に対して未だに正しいか否かを決定することを表す。その場合、プロセスフロー（５００）は、クロックパルス（３０８）によってトリガーされる現在の再フォーマット動作をもたらすこれらの過去のフォーマットの結果を使用することを表すブロック（５１６）への肯定分岐（５１４）を実行し得る。
【００６１】
評価ブロック（５１２）からの評価結果が否定である場合、プロセスフローは、クロックパルスによってトリガーされる任意のスタイル変更が、ＤＯＭ内のエレメントすべて又はＤＯＭ内のエレメントのサブセットだけに影響するか否か評価することを表す否定分岐（５１８）への評価ブロック（５２０）を実行し得る。これらのエレメントのサブセットだけに影響するスタイル変更が決定された場合、プロセスフロー（５００）は、ＤＯＭ内のエレメントの影響を受ける有用なサブセットを処理することを表すブロック（５２４）への肯定分岐（５２２）を実行し得る。
【００６２】
評価ブロック（５２０）からの評価結果が否定だった場合、プロセスフロー（５００）は、ＤＯＭの状態（２０２ａ）から状態（２０２ｂ）への遷移が図形資産への参照及び／又は参照解除を含むか否か決定することを表す否定分岐（５２６）への評価ブロック（５２８）を実行し得る。図形資産の例は、その利用に復元操作を含み得る画像又はフォントファイルを含む。
【００６３】
評価ブロック（５２８）からの評価の結果が肯定だった場合、プロセスフロー（５００）は、ＨＤ−ＤＶＤにストアされた適切な著作のアプリケーションが、プラットフォームの制限（例えば画素バッファの制限を超えない）を超えないような動作を任意の参照及び／又は参照解除を命令することを表すブロック（５３２）への肯定分岐（５３０）を実行し得る。
【００６４】
評価ブロック（５２８）からの評価結果が否定だった場合、プロセスフロー（５００）は、クリアか又はダーティー状態をＤＯＭツリー内の様々なエレメントに関連付けることを表すブロック（５３６）への否定分岐（５３４）を実行し得る。更に具体的には、（２０２ａ）から（２０２ｂ）へのＤＯＭの状態の変更が、ＤＯＭツリー中の特定のエレメントに対し変更をもたらした場合、ブロック（５３６）は、それらの特定のエレメントを「ダーティー」として印を付けることと、ＤＯＭツリーの残りのエレメントを「クリア」として印を付けることと、を含み得る。
【００６５】
ブロック（５３８）は、クリアか又はダーティー状態をＤＯＭツリー全体として関連付けることを表す。更に具体的には、ＤＯＭの状態（２０２ａ）からＤＯＭの状態（２０２ｂ）への変更が、ＤＯＭツリーに任意の変更をもたらす場合、ブロック（５３８）は、「ダーティー」としてＤＯＭツリーに印を付けることを含み得る。さもなければＤＯＭの状態における変更が、全体としてＤＯＭツリーへの変更をもたらさない場合、ブロック（５３８）は、「クリア」としてＤＯＭツリーに印を付けることを含み得る。
【００６６】
ブロック（５４０）は、ブロック（５３６）及び／又は（５３８）によって「ダーティー」として印付けられているＤＯＭツリー内のそれらのエレメント及び／又はスタイルに対する再フォーマットを表す。
【００６７】
図５に示されている様々な動作は、異なる最適化戦略を提供する。本明細書に記載したツールの実装は、異なる事情において適切ものとしてこれらの１つ以上の最適化戦略を使用し得る。更に具体的には、これらの最適化戦略は、技法スタイルの一部−エレメントすべて（例えば図４のブロック（４０６））及び／又は技法数スタイル−単一エレメント（例えば図４のブロック（４０８））を支援し得る。
【００６８】
図５を用いてフォーマッターコンポーネント（２０８）を実行し得るプロセスフローを記載したので、ここで今から論述を、図６を用いて与えられているＨＤ−ＤＶＤスタイルデータをレイヤーへ統合化する説明へ進める。
【００６９】
図６には、ＨＤ−ＤＶＤスタイルデータをレイヤーへ統合化する処理（６００）を例示する。便宜上であって限定しない既に記載したエレメントのいくつかを図６に繰り返して同一の参照番号によって示す。
【００７０】
図６に示されているようにＤＯＭの状態（２０２ａ）は、クロックパルス（３０８）に応答して変更通知メッセージ（４０４）を生成するＨＤ−ＤＶＤフォーマッター（２０８）にもたらすＤＯＭの状態（２０２ｂ）へ遷移する。スタイル（５０２）を図５から繰り返す。
【００７１】
フォーマッター（２０８）は、レイヤー構造の概念を支援し得る。図６は、（６０２ａ）及び（６０２ｎ）（一般に６０２）に２つのレイヤーの例を表しているが、本明細書に記載したツールの実装は、レイヤーをいくつでも支援し得る。レイヤー（６０２）は、所与のＤＯＭの状態に現れる様々なスタイルデータを統合化し得る。図６に示されている例において、レイヤー（６０２ｎ）は、ＤＯＭの状態（２０２ａ）におけるスタイル（５０２ａ）及びＤＯＭの状態（２０２ｂ）におけるスタイル（５０２ｘ）に関連付けられる。別のレイヤー（例えばレイヤー（６０２ａ））は、別のスタイル（５０２）を統合化し得るが、図６にはわかりやすいようにこれらの関係を省略している。
【００７２】
レイヤーが、スタイルデータを統合化し得ることによる評価基準の例は、ＨＤ−ＤＶＤが書かれている宣言的言語によって許可されている適用可能な値、参照用の値、インライン値、動画の値及びスクリプトの値を支援するようにスタイルデータを分離することを含む。図６には、これらの値をブロック（６０４）、（６０６）、（６０８）、（６１０）及び（６１２）にそれぞれ表す。
【００７３】
ＤＯＭが（２０２ａ）から（２０２ｂ）に状態を変更したとき、フォーマッター（２０８）は、状態変更から生じる異なるレイヤーに対し変更を報告し得る。図６には、レイヤーに対するこれらの変更を（６１４）に示す。これらの変更は、ブロック（６１６）に表されるような例えば個別のレイヤーにおける異なるスタイルに対する１つ以上の操作ｓｅｔ（）として示され得る。
【００７４】
ブロック（６１８）は、これらの変更を、個別のレイヤーにおける異なるスタイルに対する１つ以上の操作ｕｎｓｅｔ（）として表現していることを示す。ブロック（６２０）は、これらのレイヤーの変更を、個別のレイヤーのためのスタイルに対する１つ以上の操作ｇｅｔ（）として表現していることを示す。ブロック（６２２）は、これらのレイヤーの変更を、実効値を決定するためにレイヤーそれぞれの相対的な優先順位を考慮するレイヤーすべてにおいてスタイルすべてに対し実行する１つ以上の操作ｇｅｔ（）として表現していることを示す。ブロック（６２４）は、結果として生じた具体的なデータをレイヤーによって分離していることを示す。
【００７５】
ｓｅｔ（）及びｕｎｓｅｔ（）操作の例は、宣言的コンテンツマークアップ及び宣言的スタイルマークアップの場合を考慮していて、いくつかのエレメントの初期状態は、インラインで適用されるstyle:xによるstyle:x="l0px"である。宣言的タイミングマークアップにおいては、動画再生の３分間、エレメントは、５秒に渡って１０ｐｘから１００ｐｘに動き、その後５秒間に渡って動くようにプログラムされることを考えられたい。
【００７６】
動画全体の持続時間に関しては、動画が発生する部分を含むstyle:xのインラインの値は、１０ｐｘのままである。この値は、ロードの間にｓｅｔ（）され、ｕｎｓｅｔ（）されない。
【００７７】
動画の最初の３分間に関しては、何れのstyle:xの値も動画のレイヤーに存在しない。動画再生の３分において、動画のstyle:xの値は、１０ｐｘにｓｅｔ（）される。その後の１０秒間に関しては、動画のstyle:xの値は、システム性能及び他のプログラミングの考慮に従って１０〜１００の値にｓｅｔ（）される。
【００７８】
動画再生の３分１０秒において、動画のstyle:xの値がｕｎｓｅｔ（）される。動画再生の３分１０秒後、動画のstyle:xの値は、レイヤーに存在しない。ここで動画の最初の３分に関しては、実効値は、インラインレイヤーが提供する値である。３：００から３：１０までの実効値は、動画レイヤーが提供する値である。３：１０において、実効値はインラインレイヤーが提供する値である。
【００７９】
ｇｅｔ（）操作の例として、上記style:xの静的なインライン値及びある期間の動画のstyle:xの値を有するボタンを再度、考えられたい。ｇｅｔ（）操作は、最終的な数を求めるレイヤーコンポーネント外部のコンポーネントの実効値を基本的に決定するためにフォーマットによって実行され得る。このリクエストに対応するために、レイヤーコンポーネントは、個別のレイヤーにストアされている値をｇｅｔ（）する下位の呼び出しを実行し得、その後、ＨＤ−ＤＶＤの仕様における優先権に従って利用可能なレイヤーから適切な実効値を選定し得る。かくして―効率的なｇｅｔ（）を支援するレイヤーのｇｅｔ（）―である２つのｇｅｔ（）バージョンが存在する。
【００８０】
図６を用いてＨＤ−ＤＶＤスタイルデータをレイヤーへ統合化する技法を記載したので、ここで今から論述を、図７を用いて表される変更通知メッセージの更に詳細な説明へ進める。
【００８１】
図７には、変更通知メッセージの更なる機能（７００）を例示する。便宜上であって限定しない既に記載したエレメントのいくつかを図７に繰り返して同一の参照番号によって示す。
【００８２】
前述したように変更通知メッセージ（例えば（４０４））は、ＤＯＭの状態（２０２ａ）がＤＯＭの状態（２０２ｂ）へ遷移したときに生じ得る。変更通知メッセージは、状態遷移から結果として生じる変更の特質及び範囲に従って異なるタイプの情報を含み得る。
【００８３】
図７に示されている例においては、変更通知メッセージは、１つ以上のエレメントが、（７０２）に示されている状態遷移のために変更中であることを示し得る。エレメントの例を（２０４ａ〜ｂ）及び（２０４ｘ〜ｚ）に示す。
【００８４】
変更通知メッセージは、１つ以上のスタイルが、（７０４）に示されているように状態遷移のために変更していることを示し得る。スタイルの例を（５０２ａ〜ｃ）及び（５０２ｘ〜ｚ）に示す。
【００８５】
変更通知メッセージは、１つ以上のレイヤーが、（７０６）に示されているように状態遷移のために変更していることを示し得る。レイヤーの例を（６０２ａ〜ｎ）に示す。
行（７０８）は、ＤＯＭへの変更が、１つ以上のｓｅｔ（）操作で表現されている実体を表す。そのような実体においては、変更通知は、ブロック（７１０）に示されているようにスタイルの新しい値を指定し得る。
【００８６】
図７を用いて変更通知メッセージの更に詳細な説明を提供したので、ここで今から論述を、今から図８を用いて示されている変更通知メッセージに応答するためのプロセスフローの説明へ進める。
【００８７】
図８には、変更通知メッセージへの応答として実行され得るプロセスフロー（８００）を例示する。便宜上であって限定しない既に記載したエレメントのいくつかを図８に繰り返して同一の参照番号によって示す。
【００８８】
図８に示されているように、タイミングマークアップ（例えば（１１２））において又はスクリプト（例えば（１１４））において指定されたＤＯＭにおける状態変更は、変更通知メッセージ（例えば（４０４））をもたらし得る。変更通知メッセージに応答して本ツールは、プロセスフロー（８００）の少なくとも一部を実行し得る。
【００８９】
評価ブロック（８０２）は、着信してくる変更通知メッセージ（４０４）が、ｓｅｔ（）又はｕｎｓｅｔ（）操作を指定するか否か決定することを表す。メッセージ（４０４）が、ｓｅｔ（）操作を指定した場合、プロセスフロー（８００）は、評価ブロック（８０６）への分岐（８０４）を実行し得る。メッセージが、ｕｎｓｅｔ（）操作を指定した場合、プロセスフロー（８００）は、ブロック（８１０）への分岐（８０８）を実行し得る。
【００９０】
ブロック（８１０）は、メッセージ（４０４）において指定されるような実効的なスタイル値を取得するｇｅｔ（）操作の実行を表す。
評価ブロック（８１２）は、着信メッセージ（４０４）が、単一エレメントのフォーマットを許可するか否か決定することを表す。その場合、プロセスフロー（８００）は、着信メッセージ（４０４）において指定された単一のエレメントに関連する具体的なデータを調整することを表すブロック（８１６）への分岐（８１４）を実行し得る。その後、プロセスフロー（８００）は、終了状態（８１８）へ進み得る。
【００９１】
評価ブロック（８１２）から単一エレメントのフォーマットが許可されない場合、プロセスフロー（８００）は、着信メッセージにおいて指定された再フォーマットの影響を調査することを表すブロック（８２２）への分岐（８２０）を要し得る。
【００９２】
フォーマットの影響を調査する例として、背景色を定義する親の段落及びその色を継承する子供の段落を再度、考えられたい。その親の段落の背景色が変化した場合、その変更された値を継承する任意の子供も変化する。こうして親の段落は、単一エレメントのフォーマットを使用するstyle:backgroundColorのフォーマットを許可されない。このフォーマットが許可されるか否かに関する知識は、ブロック（８２８）において計算され、親の段落に対応してフォーマットするソフトウェアの構成の一部としてストアされる。
【００９３】
ブロック（８２４）は、ＤＯＭツリー全体が、着信メッセージにおいて指定された再フォーマットによって影響され、したがって「ダーティー」を示すためにビット又は他の適切な方法を設定することを表す。その後、プロセスフロー（８００）は、終了状態（８１８）へ進み得る。
【００９４】
評価ブロック（８１２）から単一エレメントのフォーマットが許可されているか否かに関する質問がまだ決定されていない場合、プロセスフロー（８００）は、ツリーにおいて現在の親及び／又は子供を調査することを表すブロック（８２８）への分岐（８２６）を実行し得る。その後、プロセスフロー（８００）は、図８に示されているような評価ブロック（８１２）の直前に戻り得る。
【００９５】
フォーマットの構成においては、エレメントのいくつかに対応するソフトウェアが、親エレメント、第１の子供エレメント及び次に兄弟エレメントへの参照をストアされている。これらの３つのリンクを使用してツリーは、適切なように、上方及び／又は下方及び／又は横にトラバースされ得る。ツリーのすべて又は一部が、単一エレメントのフォーマットが許可されているか否か決定するためにトラバースされ得る。
【００９６】
変更通知メッセージは、単一エレメントのフォーマットが許可されるか否か指定できないが、変更通知メッセージは、単一エレメントのフォーマットを許可するか又は許可しない決定を知らせる何らかの情報を含み得る。
【００９７】
例として、赤の背景色を定義する親のボタン及び青い背景色を定義する子供のボタンを考えられたい。子供のボタンが、青色を無視して代わりにその親から赤の背景色を継承するように変更された場合、ここで親に対する変更が、現在の子供に影響するとき、単一のエレメントの親に対するフォーマットが利用不可にされる。
【００９８】
別の例として、明示的な大きさを有さない親の段落及び子供のテキスト「Ｈｅｌｌｏ，Ｗｏｒｌｄ」を含むスパンを考えられたい。この親段落のデフォルトの大きさはそのとき、いろいろなものに基づくが、ここでの説明のために重要なものは、ストリング「Ｈｅｌｌｏ，Ｗｏｒｌｄ」に対するグリフを含むスパンの大きさである。
【００９９】
更に別の例として、その時、子供のスパンが「Ｈｅｌｌｏ， Ｗｏｒｌｄ」の代わりに「Ｔｈｅ Ｑｕｉｃｋ Ｂｒｏｗｎ Ｆｏｘ」を含むように修正されている変更通知を考えられたい。明らかに、ここでは、より多くのテキストがそのスパンに存在するようにスパンが大きくなる。明らかに、スパンサイズに主に従う大きさになる親の段落もここではまた大きくなる。こうしてスパンは、この場合においては単一エレメントの方法に従ってフォーマットされ得ない。
【０１００】
影響は一般に、親から子の影響及び子から親の影響を含み得る。実装においては、これらの影響は、例示のためだけに上記提供される継承及び変更の大きさを変える例に限定しないが、かなり膨大であり得る。
【０１０１】
評価ブロック（８０６）に戻ると、このブロックは、メッセージ（４０４）において指定されたレイヤーが再フォーマットプロセスで効果があるレイヤーであるか否か決定することを表す。ＤＶＤの仕様は、特定の状況においてはどのレイヤーが、効果があるか又は優先権を有するか定義している。メッセージに指定されたレイヤーが、効果があるレイヤーでない場合、プロセスフロー（８００）は、終了状態（８１８）への否定分岐（８３０）を実行し得る。他方、メッセージ（４０４）に指定されたレイヤーが、効果があるレイヤーである場合、プロセスフロー（８００）は、評価ブロック（８３４）への肯定分岐（８３２）を実行し得る。
【０１０２】
ブロック（８３４）は、検査されている現在のノードが、別のノードが提供する少なくとも属性のいくつかを継承するように設定されているか否か決定することを表す。例えば、現在のノードは、親ノードが提供する少なくとも属性のいくつかを継承する子ノードであり得る。別の例として現在のノードが親ノードであり得、その属性の少なくとも１つは、その子供の属性に基づいている。一般に変更メッセージは、それが設定メッセージであるときには設定される値を含む。特別なタイプの１つの値が「継承」値である。
【０１０３】
評価ブロック（８３４）から現在のノードが、別のノードから継承するように設定されてない場合、プロセスフロー（８００）は、着信メッセージ（４０４）において指定されているようなスタイル値を使用することを表すブロック（８３８）への否定分岐（８３６）を実行し得る。その後、プロセスフロー（８００）は、終了状態（８１８）へ進み得る。
【０１０４】
評価ブロック（８３４）から現在のノードが、別のノードから継承するように設定されている場合、プロセスフロー（８００）は、現在のノード及び現在のノードの任意の親又は子供のノードに対して単一エレメントのフォーマットを利用不可にすることを表すブロック（８４２）への肯定分岐（８４０）を実行し得る。現在のノードが、別のノードから継承しているので、再フォーマットからもたらされるいかなる変更も少なくともツリーの一部の始めから終わりまでカスケード接続する傾向があり得、この場合においては、単一エレメントのフォーマットは、適切であり得ない。その後、プロセスフロー（８００）は、前述したブロック（８１０）へ進み得る。
【０１０５】
プロセスフローがブロック（８４２）を介し通過した後に評価ブロック（８１２）に達した場合、ブロック（８４２）は、単一エレメントのフォーマットを利用不可にする。このイベントにおいては、プロセスフロー（８００）は、ブロック（８２２）への分岐（８２０）を実行し得る。ブロック（８２２）は順に、ブロック（８３４）の継承関係から生じる変更が、そのツリーを介しどのくらいカスケード接続するか確認することを含み得る。
【０１０６】
図８を用いて変更通知メッセージに応答するためのプロセスフロー（８００）を記載したので、ここで今から論述を、図９を用いて示されているフレーム毎のフォーマットを実行するプロセスフローの説明へ進める。
【０１０７】
図９には、クロック信号に応答してフレーム毎のフォーマットを実行するプロセスフロー（９００）を例示する。便宜上であって限定しない既に記載したエレメントのいくつかを図９に繰り返して同一の参照番号によって示す。
【０１０８】
図９には、ＨＤ−ＤＶＤクロック信号の例を（３０８）に示す。本明細書に記載したツールは、クロック信号の不連続な実体に応答してプロセスフロー（９００）の少なくともいくつかを実行し得る。前述したようにＨＤ−ＤＶＤのシーン記述用のマークアップは、ツリータイプの構造で表され得、本ツールは、クロック信号発生につれてマークアップを更新し得、ユーザー（例えば図１の（１０２））に対してレンダリングし、表示するためのマークアップを更新し再フォーマットし得る。
【０１０９】
ブロック（９０２）は、クロック信号がシーン記述を表しているツリー構造内の任意の状態又はスタイル変更をもたらすか否か評価することを表す。クロック信号から状態もスタイル変更ももたらさない場合、プロセスフロー（９００）は、終了状態（９０６）への否定分岐（９０４）を実行し得る。他方、状態又はスタイルの任意の変更が、クロック信号からもたらされた場合、プロセスフロー（９００）は、ブロック（９１０）への肯定分岐（９０８）を実行し得る。
【０１１０】
ブロック（９１０）は、ブロック（９０２）において状態又はスタイルの評価された変更がもたらされたとき、ツリー構造の任意の一部が、ダーティーになったか否か評価することを表す。言い換えるとブロック（９１０）は、ツリー内の少なくとも１つのエレメントが、状態又はスタイルの変更によって変化するか否か評価することを含み得る。更に詳しく述べるとブロック（９１０）は、状態又はスタイルの任意の変更に対し、ツリー内の所与の処理するエレメントを選定するためにツリーをトラバースすることを含み得る。
【０１１１】
ツリー内の何れのエレメントも変更されていない場合、プロセスフロー（９００）は、終了状態（９０６）への否定分岐（９１２）を実行し得る。一方、ツリー内の任意のエレメントが変更されると、プロセスフロー（９００）は、ツリーのトラバースが完了されたか否か評価することを表すブロック（９１６）への肯定分岐（９１４）を実行し得る。トラバースするエレメントがツリー内に残っていない場合、プロセスフロー（９００）は、終了状態（９０６）への否定分岐（９１８）を実行し得る。一方、トラバースするエレメントがツリー内に残っている場合、プロセスフロー（９００）は、ブロック（９２２）への肯定分岐（９２０）を実行し得る。
【０１１２】
ブロック（９２２）は、ツリーに残っている現在のエレメントとして少なくとも次の１つのエレメントにアクセスするためのツリーのトラバースを表す。ブロック（９２４）は、現在のエレメントに実行される任意の変更を決定すること又は計算することを表す。これらの変更は、図９に示されているように「ダーティー・ステップ」として見なされ得る。ブロック（９２６は）、現在のエレメントに対する任意のダーティー・ステップを実行することを表す。その後、プロセスフロー（９００）は、トラバース及び処理するために残っているツリーの残りの更なる任意のエレメントに対しチェックするためにブロック（９１６）へ戻り得る。ブロック（９２２）、（９２４）及び（９２６）は、所与のマークアップツリー内に含まれている様々なエレメントに対して繰り返され得る。
【０１１３】
図９を用いてフレーム毎のフォーマットを実行するプロセスフロー（９００）を記載したので、ここで今から論述を、図１０を用いて示されているマークアップツリーに関する親及び子供のノードをトラバースする更に詳細な説明へ進める。
【０１１４】
図１０には、マークアップツリーの親及び子供のノードをトラバースするプロセスフロー（１０００）を例示する。便宜上であって限定しない既に記載したエレメントのいくつかを図１０に繰り返して同一の参照番号によって示す。
【０１１５】
図１０には、シーン記述のマークアップのＤＯＭツリーの例を（２０２）に示す。このＤＯＭツリーの例（２０２）は、任意の数のエレメントを含み得、図１０を用いて（２０４ａ）、（２０４ｂ）及び（２０４ｎ）に３つの例を示している。プロセスフロー（１０００）は、シーン記述を再フォーマットするときに、ツリー構造をトラバースする際、２パス処理を実行し得る。ブロック（１００２）は、第１のパスの実行を表し、ブロック（１００４）は、第２のパスの実行を表す。
【０１１６】
ブロック（１００２）に表されている第１のパスに対する更に詳細に移ると、ブロック（１００６）は、ＤＯＭツリー内の所与の親ノードのトラバースを表す。プロセスフロー（１０００）は、ＤＯＭツリーのルートノード（例えば（２０４ａ））から開始し得、そこからツリーをトラバースし得る。その後トラバースは、ルートノード（例えば（２０４ｂ））の下の親ノード（複数）に進み得、それらの下には１つ以上の子ノードを有している。
【０１１７】
ブロック（１００８）は、その現在のノードの子供ノードへ進む前に、現在のノードにおいて多くの可能な再フォーマットを実行することによって、現在のノードにおける文脈を作成することを表す。
【０１１８】
ブロック（１０１０）は、ＤＯＭツリーにおいて処理する更なるいくらかの親ノードが残っているか否か決定することを表す。その場合、プロセスフロー（１０００）は、ツリー内の次の親ノードを選定するために、ブロック（１００６）に戻る肯定分岐（１０１２）を実行し得る。さもなければ、プロセスフロー（１０００）は、否定分岐（１０１４）を実行し得ない。分岐（１０１４）は、第１のパスに関する詳細な処理を終了し、図１０に示されているように第２のパスに関する詳細な処理を開始する。
【０１１９】
更に詳細なブロック（１００４）に移ると、ブロック（１０１６）は、所与の親ノードの配下の任意の子ノードにアクセスするために、ツリーをトラバースすることを表す。ブロック（１０１８）は、所与の親ノードの配下に存在する子供ノードを処理するために詳細を決定することを表す。
【０１２０】
評価ブロック（１０２０）は、所与の親ノードが、処理のために残っているその配下の更なる子ノードを有しているか否か決定することを表す。その場合、処理は、次の子供ノードとの処理を繰り返すために、ブロック（１０１６）への肯定分岐（１０２２）を実行し得る。所与の親ノードが、その配下に更なる子ノードを有していない場合は、処理は、所与の親ノード配下の子ノードすべてに関する詳細を決定しているので、所与の親ノードに関する詳細のすべての決定を表すブロック（１０２６）への否定分岐（１０２４）を実行し得る。
【０１２１】
図１０を用いてマークアップツリーの親及び子供のノードをトラバースするプロセスフロー（１０００）を記載したので、ここで今から論述を、マークアップツリーを介するコンテンツマークアップの参照及び全体の繰り返しに関する更に詳細な説明へ進める。
【０１２２】
以下に表示されている表２は、パス１及びパス２として示されているツリーを介する分割したパスの例を示す。
【０１２３】
【表２】
2010516089.tif 000004
図１０に前述したようにパス１は、親ノードを介して下方へトラバースし、子供ノードに関する文脈を確立する。パス２が上方にトラバースする間、子供の詳細が完全に決定されていて、親の詳細が完全に決定される。
【０１２４】
結論
上記の記載は、ＨＤ−ＤＶＤを処理する文脈で提示されているが、本明細書に記載したツール及び技法が、その他のタイプの媒体の処理又は本明細書に記載されたもの以外のタイプのマークアップ処理に適し得ることに留意されたい。
【０１２５】
本システム及び方法が構造的な特徴及び／又は方法動作に対して特定の言語で記載されているが、添付の請求項に定義されているシステム及び方法が、説明されている特定の機能又は動作に必ずしも限定されないことが理解されよう。もっと正確に言えば、特定の機能及び動作は、請求されているシステム及び方法を実装する例示的な形式として開示されている。
【０１２６】
更に、本明細書に記載及び例示されている一定のデータ及びプロセスフローに対して、本明細書に記載した趣旨及び範囲から逸脱せずに、そこに示されているプロセス及びサブプロセスが、例示されているもの以外の順番で実行され得ることに留意されたい。これらのデータ及びプロセスフローが、本明細書に一定のコンポーネントにと関連し記載されているが、これらのデータ及びプロセスフローが、本明細書に記載した趣旨及び範囲から逸脱せずに別のコンポーネントを用いて実行され得ることに留意されたい。
【符号の説明】
【０１２７】
１００  動作環境
１０２  ユーザー
１０４  ＨＤ−ＤＶＤディスク
１０６  破線
１０８  コンテンツマークアップ
１１０  スタイルマークアップ
１１２  タイミングマークアップ
１１４  スクリプト
１１６  プレーヤー
１１８  プロセッサー
１２０  計算機可読記憶媒体
１２２  ＨＤ−ＤＶＤ変換コンポーネント
１２４  レンダリングされた出力
１２６  幾何学図形プリミティブ
１２８  テキスト
１３０  画像
１３２  音声
１３４  表示装置
１３６  破線
１３８  ディスプレイ装置
１４０  音声装置
２０２  ＤＯＭ
２０４  エレメント
２０６  シーン記述
２０８  ＨＤ−ＤＶＤフォーマッター
２１０  変換されたコンテンツ及びスタイルマークアップ
２１２  ＨＤ−ＤＶＤレンダリングコンポーネント
３００  時間と共に発生するシーン記述における状態遷移
３０２  領域コンポジット
３０４  マッピング
３０６  エレメント
３０８  クロックパルス
３１０  変更
３１２  ＤＯＭの変更
４０２  時間軸
４０４  変更通知
４０６  増分作業を実行しない
４０８  技法スタイルの一部−エレメントすべて
４１０  技法スタイルの一部−単一エレメント
５００  フォーマットのプロセスフロー
５０２  スタイル
６００  レイヤーの統合化処理
６０２  レイヤー
６０４  適用可能な値
６０６  参照用の値
６０８  インライン値
６１０  動画の値
６１２  スクリプトの値
６１４  レイヤーに対する変更
６１６  ＳＥＴ（）操作
６１８  ＵＮＳＥＴ（）操作
６２０  個々のレイヤーに対するＧＥＴ（）操作
６２２  レイヤーすべてに対するＧＥＴ（）操作
６２４  結果として生じた具体的なデータを分離
７００  変更通知メッセージの更なる機能
７０２  変更されたエレメント
７０４  変更されたスタイル
７０６  変更されたレイヤー
７０８  ＳＥＴ操作
７１０  新しいスタイルの値
【図１】
2010516089.tif 000005
【図２】
2010516089.tif 000006
【図３】
2010516089.tif 000007
【図４】
2010516089.tif 000008
【図５】
2010516089.tif 000009
【図６】
2010516089.tif 000010
【図７】
2010516089.tif 000011
【図８】
2010516089.tif 000012
【図９】
2010516089.tif 000013
【図１０】
2010516089.tif 000014
【国際調査報告】
2010516089.tif 000015
2010516089.tif 000016