(57)【特許請求の範囲】
【請求項１】
コンピューティングデバイスにより実行処理されるためのコンピュータ実行可能コンポーネントを記憶したコンピュータ可読記録媒体であって、前記コンピュータ実行可能コンポーネントは、前記コンピューティングデバイスにより文書のレンディションのために実行処理されるための
第１のストリームおよび第２のストリームを含む複合ファイルを備え、前記第１のストリームは文書の第１のレンディションを含み、前記第２のストリームは前記文書の第２のレンディションを含み、前記複合ファイルはさらに、前記第１のレンディションおよび前記第２のレンディションを記述する情報を含む第３のストリームを含み、前記情報は、各レンディションごとに、各レンディションに関連する開始ストリームの識別を含み、
前記複合ファイルは、前記第１のレンディションおよび前記第２のレンディションによって共有されるリソースを含む第４のストリームをさらに含み、
前記第１のレンディションは、前記文書の第１の視覚表現を含み、
前記第２のレンディションは、前記文書の第２の視覚表現を含み、
前記情報は、複数のレンディションエントリを含み、各レンディションエントリはレンディション識別子およびファイル識別子を少なくとも有し、前記レンディション識別子は、前記レンディションエントリの関連する特定のレンディションを一意に識別するように働き、前記ファイル識別子は、前記特定のレンディションに関連する各ファイルを識別するように働くこと
を特徴とするコンピュータ可読記録媒体。
【請求項２】
前記第１のレンディションは、前記文書の可聴表現を含むことを特徴とする請求項１に記載のコンピュータ可読記録媒体。
【請求項３】
各レンディションエントリは、特定のデバイスまたはアプリケーションに対してどのレンディションが適切かを決定するのに有用な基準を含む規則エントリをさらに含むことを特徴とする請求項１に記載のコンピュータ可読記録媒体。
【請求項４】
各レンディションエントリは、前記特定のレンディションに関連する人間可読な情報を含む説明エントリをさらに含むことを特徴とする請求項３に記載のコンピュータ可読記録媒体。
【請求項５】
プロセッサと記憶装置と表示装置を有するコンピューティングデバイスにより文書のコンテンツツのレンディションのために実行処理されるコンピュータ実施方法であって、
前記プロセッサが文書のコンテンツに関係する命令を要求元アプリケーションから受け取ること、
前記プロセッサが前記文書コンテンツの複数のレンディションに関するメタ情報を分析して適切なレンディションを識別すること、および
前記プロセッサが前記適切なレンディションを前記要求元アプリケーションに利用可能にすることを含み、
前記文書コンテンツの前記複数のレンディションは複合ファイルに記憶されていて、
前記メタ情報を分析することは、前記複数のレンディションに関するデータに照会して、前記プロセッサが前記適切なレンディションを識別する際に使用する選択基準を決定することを含み、
前記選択基準は、前記複数のレンディションのそれぞれの特性を含み、
前記特性は、ＭＩＭＥタイプ、論理解像度および幾何形状、色深度、人間言語、リーダ視覚能力分類を含むグループから選択された少なくとも１つを含むこと
を特徴とするコンピュータ実施方法。
【請求項６】
前記選択基準は、特定のレンディションを特定のアプリケーションまたはデバイスと共に使用するための規則を含むことを特徴とする請求項５に記載のコンピュータ実施方法。
【請求項７】
前記複数のレンディションは、前記文書コンテンツの視覚表現を少なくとも１つ含むことを特徴とする請求項５に記載のコンピュータ実施方法。
【請求項８】
前記複数のレンディションは、前記文書コンテンツの他の表現を少なくとも１つさらに含むことを特徴とする請求項７に記載のコンピュータ実施方法。
【請求項９】
前記文書コンテンツの前記他の表現は、前記文書コンテンツの可聴表現を含むことを特徴とする請求項８に記載のコンピュータ実施方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般に電子文書に関する。より詳細には、本発明は、複合的な電子文書のためのデータ記憶フォーマットに関する。
【背景技術】
【０００２】
本出願は、米国国民および居住者であるＭＩＣＲＯＳＯＦＴ  ＣＯＲＰＯＲＡＴＩＯＮによって２００３年５月１７日に出願されたＰＣＴ出願として出願するものであり、米国を除くすべての国を指定する。
【０００３】
今日のコンピュータユーザは、電子文書を閲覧するための様々な手段を有する。デスクトップコンピュータ、ラップトップコンピュータ、ポケットサイズコンピュータ、タブレットコンピュータは、ユーザが電子文書を閲覧するのに使用することのできる多くの様々なタイプのデバイスのほんの一例である。これらのタイプのデバイスはそれぞれ、異なるフォームファクタを有し、やや異なる仕方で文書を表示する。例えば、ＰＤＡは、デスクトップコンピュータで使用されるモニタとは異なる閲覧可能領域を有する。デスクトップコンピュータはおそらく、ラップトップコンピュータとはかなり異なる閲覧可能領域を有する。問題を複雑にすることには、電子文書は非常に多くの異なるフォーマットで作成され、これらのフォーマットはそれぞれ異なる閲覧属性を有する場合がある。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ラップトップコンピュータなど、あるデバイス上では特定の文書をうまく表示することができるが、ＰＤＡなど別のデバイス上ではこの文書をうまく表示することができないという問題が、しばしばユーザに生じる。ソフトウェア開発者は、多くの様々なタイプのデバイス上で表示可能な文書フォーマットを生み出そうとしてきた。例えば、ＨＴＭＬなどの「リフロー可能（ｒｅｆｌｏｗａｂｌｅ）」文書表現では、文書のレイアウトに重大な悪影響を及ぼすことなく、ウィンドウサイズが変化したときにある程度のサイズ変更が可能であった。しかし、このフォーマットを使用すると、文書がどのように表示されるかを文書作成者が正確に制御することができなくなることが多い。さらに、リフロー可能文書は、多くの様々なデバイス上である程度うまく閲覧されるように意図されているので、いずれか１つのデバイス上で最適化された閲覧体験をもたらすとは限らない。
【０００５】
対照的に、文書がどのように表示されるかに対してより多くの制御が可能なフォーマットの場合は通常、文書は限られた数のデバイスだけにしか適用可能ではない。例えば、ワードプロセッシング文書は、デスクトップコンピュータ上では視覚的に満足のいくように閲覧することができる。しかし、ＰＤＡ上で表示された場合は、押し潰されたように見えるか、さもなければ不適当に見えることがある。さらに、ワードプロセッサでレターサイズなど特定サイズの紙に向けて作成された文書は、Ａ４サイズなど別のサイズの紙には正しく印刷されない場合がある。
【０００６】
いくつかの文書フォーマットでは、文書のコンテンツを本質的にグラフィカル画像にすることにより、文書がどのように見えるかを厳密に制御することができる。この文書フォーマットの欠点の１つは、文書が閲覧されることになる各デバイスごとに、文書全体の異なるいくつかのバージョンを利用可能にしなければならないことである。さらに、この固定フォーマットの文書のコンテンツは編集不可能である。
【課題を解決するための手段】
【０００７】
本発明は、文書コンテンツの複数の表現を単一のファイル内で提供するためのシステムおよび方法を対象とする。簡単に言えば、本発明は、複数のデータストリームを含めるための複合ファイルフォーマットを利用し、各データストリームは文書コンテンツのレンディションである。１つまたは複数のレンディションによって使用されるその他のリソースも、複合ファイル内に記憶される。文書コンテンツの各レンディションを記述するメタ情報が、複合ファイル内に記憶される。メタ情報はまた、所与のデバイスまたはアプリケーションに対する適切なレンディションを識別する際の助けとなる選択基準である規則を含むこともできる。
【発明を実施するための最良の形態】
【０００８】
本発明は、同じ文書コンテンツの複数の表現を含む単一の文書をもたらす機構を提供する。各表現は、特定のデバイスまたはアプリケーションに対して優れた提示を提供するように最適化されたものとすることができる。本発明の機構は、同じコンテンツの複数のレンディションを単一の文書に記憶することを可能にする複合ファイルフォーマットに基づくことが好ましい。単一の文書内には、複数のレンディションのそれぞれを記述するメタ情報が、これらのレンディションと共に使用することのできる任意のサポートファイルと共に含まれる。本発明者は、オブジェクトのリンクと埋め込み（ＯＬＥ、Ｏｂｊｅｃｔ  Ｌｉｎｋｉｎｇ  ａｎｄ  Ｅｍｂｅｄｄｉｎｇ）複合ファイルフォーマットが本発明の実装形態に特によく適合すると決定した。
【０００９】
ここで、本発明について最初に、本発明の実施形態を実現することのできる例示的なコンピューティング環境の一例に関して述べる。次に、本発明の特定の一実装形態の詳細な例について述べる。この特定の実装形態のいくつかの詳細に関して、代替の実装形態を含めることもできる。最後に、本発明により構築された複合ファイルの実装形態の例について述べる。本発明の実施形態は、本明細書に述べるこれらの実施形態に限定されるわけではないことを理解されたい。
【００１０】
（本発明の例示的なコンピューティング環境）
図１に、本発明の例示的な実装形態で使用することのできるコンピューティングデバイスを示す。図１を参照すると、本発明を実施するための例示的なシステムの１つは、コンピューティングデバイス１００などのコンピューティングデバイスを含む。非常に基本的な構成では、コンピューティングデバイス１００は通常、少なくとも１つの処理ユニット１０２と、システムメモリ１０４を備える。コンピューティングデバイスの厳密な構成およびタイプに応じて、システムメモリ１０４は、揮発性（ＲＡＭなど）、不揮発性（ＲＯＭやフラッシュメモリなど）、またはこの２つの何らかの組合せとすることができる。システムメモリ１０４は通常、オペレーティングシステム１０５および１つまたは複数のプログラムモジュール１０６を含み、プログラムデータ１０７を含むこともできる。コンピューティングデバイス１００のこの基本構成を、図１に破線１０８内のコンポーネントで示す。
【００１１】
コンピューティングデバイス１００は、追加の特徴または機能を有することもできる。例えばコンピューティングデバイス１００は、追加のデータ記憶デバイス（取外し可能および／または取外し不可能）、例えば磁気ディスク、光ディスク、テープなどを備えることもできる。このような追加の記憶装置を、図１に取外し可能記憶装置１０９および取外し不可能記憶装置１１０で示す。コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラムモジュール、その他のデータなどの情報を記憶するための任意の方法または技術で実現された、揮発性と不揮発性、取外し可能と取外し不可能の媒体を含めることができる。システムメモリ１０４、取外し可能記憶装置１０９、取外し不可能記憶装置１１０はすべて、コンピュータ記憶媒体の例である。コンピュータ記憶媒体には、限定しないがＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリまたはその他のメモリ技術、ＣＤ−ＲＯＭ、ディジタル多用途ディスク（「ＤＶＤ」）またはその他の光記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置またはその他の磁気記憶デバイスが含まれ、あるいは、所望の情報を記憶するのに使用できコンピューティングデバイス１００からアクセスできるその他任意の媒体が含まれる。このようなコンピュータ記憶媒体はどれも、デバイス１００の一部とすることができる。コンピューティングデバイス１００は、キーボード１２２、マウス１２３、ペン、音声入力デバイス、タッチ入力デバイス、スキャナなどの入力デバイス１１２を有することもできる。また、表示装置、スピーカ、プリンタなどの出力デバイス１１４を備えることもできる。これらのデバイスは当技術分野で周知であり、ここで詳細に論じる必要はない。
【００１２】
コンピューティングデバイス１００はまた、デバイスがネットワークなどを介して他のコンピューティングデバイス１１８と通信できるようにする通信接続１１６を備えることもできる。通信接続１１６は、通信媒体の一例である。通信媒体は通常、搬送波やその他のトランスポート機構などの変調されたデータ信号中の、コンピュータ可読命令、データ構造、プログラムモジュール、またはその他のデータによって具体化されたものとすることができ、任意の情報送達媒体が含まれる。用語「変調されたデータ信号」は、信号中の情報が符号化される形で１つまたは複数の特性が設定されたまたは変更された信号を意味する。限定ではなく例として、通信媒体には、配線式ネットワークや直接配線式接続などの配線式媒体と、音響、無線周波、赤外線、その他の無線媒体などの無線媒体とが含まれる。本明細書で使用するコンピュータ可読媒体という用語は、記憶媒体と通信媒体の両方を含む。
【００１３】
（コンポーネントに関する一般的な考察）
図２は、本発明を実施する環境のコンポーネントを一般に示す機能ブロック図である。この図には、複数のアプリケーション２２０、２２１、２２２と、「レンディションマネージャ」２１０と、複合ファイル２０１が示されている。アプリケーション２２０、２２１、２２２はそれぞれ、そのアプリケーションに特有のフォーマットで文書を処理または表示するように構成されている。例えば、アプリケーションＡ２２０はワードプロセッサなどとすることができ、アプリケーションＢ２２１は、ＨＴＭＬメッセージを表示できるｅメールアプリケーションとすることができ、アプリケーションＣ２２２は、イメージビューアなど固定フォーマットの文書ビューアとすることができる。
【００１４】
複合ファイル２０１は、ＯＬＥ複合ファイルであることが好ましい。ＯＬＥ文書モデルは、当技術分野では知られており、多くの異なるタイプのデータを単一の文書内に含める機構として広く認識されている。ただし、ＯＬＥ複合ファイルは従来、やはりこの１つのＯＬＥ複合ファイルに含まれた埋め込みファイルまたはその他のサポートコンテンツを有する単一の文書の実体に関して使用される。重要なことに、複合ファイル中の各要素は、それを作成したアプリケーションによって処理できるような形で記憶される。複合ファイル２０１については、後で図３および４に関してより詳細に述べる。
【００１５】
簡単に言えば、複合ファイル２０１は、特定の文書コンテンツの複数の表現（「レンディション」）を含む単一のファイルである。表現は視覚的またはその他とすることができる。各レンディションは、特定の種類のデバイスまたは媒体を「ターゲット」とする（特定のデバイスまたは媒体上で提示されるように最適化されている）。例えば、レンディションＡ２０２はワードプロセッシング文書とすることができ、レンディションＢ２０３は、このワードプロセッシング文書のリフロー可能なマークアップ言語バージョンとすることができ、レンディションＣ２０４は、このワードプロセッシング文書の固定フォーマットバージョンとすることができる。複数のレンディションに加えて、複合ファイル２０１には、複数のレンディション２０２、２０３、２０４のうちの１つまたは複数によって使用できるその他のファイルまたはリソースを含めるための記憶域２０５も備わる。メタデータ２０７は、記憶域２０５中のどのサポートファイルが特定のレンディションと共に使用されるかを含めて、複数のレンディション２０２、２０３、２０４のそれぞれを記述する情報を含む。
【００１６】
各レンディションは、「コンテンツ」（テキストやマークアップなど）を含み、また、「リソース」（画像やフォントなど）の集合を含むことができる。必須ではないが、複数のレンディションがおそらく異なるコンテンツを有することが考えられる。というのは、様々なデバイス上でコンテンツをレイアウトするのに必要なマークアップはレンディションごとに異なるからである。しかし、レンディションはしばしば同じリソースを参照してよい。本発明の一態様では、各共有リソースが複合ファイル２０１中で一度だけみられる。いくつかのマルチパート文書フォーマットとは異なり、複合ファイル２０１では、特定リソースの１つのインスタンスを記憶域２０５内に含めることができ、これを複数のレンディション２０２、２０３、２０４のうちの任意の数のレンディションと共に使用することができる。
【００１７】
さらに、単一のファイル中で編集可能レンディション（例えばワードプロセッシング文書）を固定フォーマットレンディション（例えばＸＡＭＬ）と結合することができることは、他の文書フォーマットに勝る本発明の利点の１つである。これらの異なるファイルタイプが複数レンディションの文書中で共存することができ、消費時のソフトウェア利用可能性やユーザの意向（例えば文書の共同作業／編集とそれに対する印刷など）等、複数の要因に基づいて、適切なレンディションが使用されることになる。
【００１８】
レンディションマネージャ２１０は、文書ファイルをアプリケーションに利用可能にすることを担うオペレーティングシステムサービスまたは機能とすることができる。複合ファイル２０１は、各レンディションを全体としてまたは個別のストリームとして処理できるように、標準的な（例えばコンポーネントオブジェクトモデルすなわち「ＣＯＭ」）インタフェースを公開する。アプリケーション２２０、２２１、２２２のいずれか１つまたは複数は、レンディションマネージャ２１０を介して複合ファイル２０１へのアクセスを要求することにより、複合ファイル２０１を開いて編集することができる。レンディションマネージャ２１０は、複合ファイル２０１を開き、要求元アプリケーションのタイプまたはその他の基準に基づいて、特定のレンディション用のインタフェースを要求元アプリケーションに返す。
【００１９】
図３は、ツリー階層として表した、複合ファイル２０１の構造の図示である。複合ファイルは、「ファイル内のファイルシステム」として一般に考えられる。複合ファイル２０１内には、ファイルシステム中のディレクトリに似た「記憶域」と、ファイルシステム中のファイルに似た「ストリーム」との階層がある。
【００２０】
本発明によれば、各レンディションのコンテンツは、別々のストリーム中またはストリームの集合中に配置される。したがって、従来の文書フォーマットに従えば文書ファイル全体を表すことになるであろうデータが、複合ファイル２０１の特定のストリームに記憶される。１つまたは複数のレンディションによって参照される各リソースも、別々のストリーム中に配置される。ただし、いくつかのリソースを共通の記憶域の下に集めてもよい。
【００２１】
この例示的な階層のルート３０１の下には、いくつかのストリーム（すなわちストリーム３０２、ストリーム３０４、ストリーム３０６）と、１つの記憶域３０８がある。この例では、ストリーム３０２は第１のレンディション（レンディションＡ）を含み、ストリーム３０４は第２のレンディション（レンディションＢ）を含み、ストリーム３０６は第３のレンディション（レンディションＣ）を含む。この例によれば、これらのレンディションはそれぞれ、１つの文書の異なる視覚表現を表す。
【００２２】
この例で「＼ｘ０００６ＲｅｎｄｉｔｉｏｎＬｉｓｔ」と名前の付いた特別なストリーム３１０は、複合ファイル２０１中の各レンディションに関するメタ情報を含む。レンディションリスト３１０は、複合ファイル２０１中の各レンディションを記述するテーブル３１２を含む。テーブル３１２については、以下で図４に関してより詳細に述べる。簡単に言えば、テーブル３１２は、複合ファイル２０１中の各レンディションの各コンポーネントを識別する。
【００２３】
図４は、レンディションリスト３１０に記憶することのできる情報のテーブル図である。レンディションリスト３１０はテーブル４０１として表すことができ、各行が１つのレンディションに関連する。一実施形態では、テーブル中の列は、レンディションＩＤの列４１０、ファイル名の列４１２、規則の列４１４、説明の列４１６を含む。以下は、これらの各列の目的についての簡単な説明である。
【００２４】
【表１】
0004542033.tif 000002
【００２５】
このレンディションテーブルのフォーマットでは、各レンディション中の１つのストリームをそのレンディションの「開始ストリーム」として指定することができる。そのレンディションが要求されたときは、開始ストリームが、提示される最初のストリームである。
【００２６】
規則情報に関しては、特別な注意を払うべきである。前述のように、規則の列の情報は、どのレンディションを特定のアプリケーションに返すかについての決定を可能にするように意図されている。したがって、規則情報は、ファイル名の列で識別される第１のファイルなど、そのレンディションの特定ファイルに関連するＭＩＭＥタイプのように単純なものとすることができる。この場合、プロセスがレンディションのリストを走査して、特定の要求元アプリケーションに適合するＭＩＭＥタイプを検索することもできる。論理解像度および幾何形状、色深度、人間言語、またはリーダ視覚能力分類など、その他の識別可能な特徴も選択基準として等しく機能する。
【００２７】
あるいは、規則の列に含める選択基準は、相対的に複雑なものでもよい。例えば、選択プロセスを助ける複合ファイル中のまたはその他の場所のコードを指す参照を、規則の列に含めることができる。さらに、特定のアプリケーションまたはレンディションマネージャ２１０が適切なレンディションを識別する際の助けとなるのに十分な形で各レンディションを記述する、より複雑な情報を規則の列に含めることもできる。これらおよび他の代替形態は、当業者には明らかになるであろう。
【００２８】
（本発明の特定の例に関する考察）
次に、図５および６に関する例を通して、本発明の特定の実装形態について述べる。図５および６は共に、文書リーダタイプのアプリケーションで使用される複合ファイル（図５）およびワードプロセッシングタイプのアプリケーションに使用される複合ファイルを生み出すために、どのように本発明を使用することができるかを示す。
【００２９】
図５は、複数のストリームおよび１つの記憶域５０３を有する複合ファイル５０１の、ある特定の例の図示である。この例では、複合ファイル５０１は、同じ文書実体の６つの異なるレンディションを含む。リフローレンディション５０５が含まれているが、これは、特定の表示デバイスに従ってサイズ変更可能なように文書実体を表す。リフローレンディション５０５は、特定のフォント５０６または画像５０７を参照することのできるマークアップ言語などを含む。したがって、これらのフォント５０６または画像５０７は、記憶域５０３内に含まれる１つまたは複数の別個のストリームに記憶されている。
【００３０】
画面サイズの固定レンディション５０９も含まれ、これは、特定の画面サイズ上で表示されるように設計されたものとすることができる。例えば、画面サイズの固定レンディション５０９は、解像度８００×６００ピクセルのモニタ上で正しく表示される固定サイズとすることができる。あるいは、画面サイズの固定レンディション５０９は、ポケットサイズなど小型のハンドヘルドデバイス上で表示されるサイズとすることもできる。
【００３１】
特定のコンピュータプリンタに対して、２つのレンディションが含まれており、サイズが固定されている。例えば、レターサイズのレンディション５１１は、固定フォーマットであってレターサイズの紙に正しく印刷される文書実体のバーションを含む。Ａ４サイズのレンディション５１３は、固定フォーマットであってＡ４サイズの紙に正しく印刷される文書実体のバージョンを含む。前述のように、この２つのプリンタレンディションも記憶域５０３内のリソースを参照することができる。
【００３２】
複合ファイル５０１は、文書実体の画像レンディション５１５と、文書実体の音声表現５１７を含むこともできる。例えば、文書実体は本の内容とすることができ、その場合、画像レンディション５１５は本のページの写真とすることができ、音声表現５１７は本の内容の朗読とすることができる。レンディションは、同じコンテンツの視覚表現に必ずしも限定されないことは理解されるであろう。
【００３３】
図６は、複数のストリームを有する複合ファイル６０１の別の例の図示である。この例では、複合ファイル６０１は、ワードプロセッシングストリーム６０３、リフローストリーム６０５、固定フォーマットストリーム６０７を含む。この例では、ワードプロセッシングストリーム６０３は、複合ファイル６０１中の共通リソースストリーム６０９に記憶された埋め込みピクチャおよびフォントを有することができる。この場合、この特定の例でのレンディションリスト（図示せず）は、特定のレンディションがリソースストリーム６０９の一部を参照することを可能にするレンディション情報を含むことができる。これは、レンディションリストのファイル名部分のファイルを識別するときにサブストリーム参照を使用することによって達成することができる。
【００３４】
図７は、複合ファイルを介して１つの文書の複数のレンディションを利用可能にするプロセスのステップを一般に示す機能ブロック図である。プロセス７００は開始ブロック７０１で始まるが、ここで、同様の文書コンテンツの複数の表現を含む複合ファイルが存在する。
【００３５】
ブロック７０３で、複合ファイルへのアクセスを求める要求を受け取る。要求は、特定の要求元アプリケーションを識別することができ、このアプリケーションによってサポートされる特定のフォーマットなど、適切なレンディションを決定するのに有用な情報を含むことができる。
【００３６】
ブロック７０５で、要求から、特定のタイプのアプリケーションならびにその他の基準を識別する。適切なレンディションを識別するのに必要な情報が他にあれば、アプリケーションまたは他の何らかのソースに照会することもできる。例えば、複合ファイルが存在している特定のタイプのデバイス（例えばポケットサイズコンピュータまたはデスクトップコンピュータ）を照会することができる。
【００３７】
ブロック７０７で、複合ファイルに関連するレンディションリストに照会して、このアプリケーションに対する適切なレンディションを決定する。先に詳細に論じたように、レンディションリストに照会して、アプリケーションに適合するＭＩＭＥタイプを有する特定のレンディションを識別することができる。あるいは、レンディションリストは、アプリケーションに関連する基準に対して適用または比較することのできる規則または条件のセットを含んでいてもよい。
【００３８】
ブロック７０９で、適切なレンディションについての参照（例えばインタフェースのセット）を要求元アプリケーションに返す。この時点で、要求元アプリケーションは、レンディションをエントリとして扱うことができる。要求元アプリケーションには、このアプリケーションまたは特定のデバイスに向けた文書コンテンツの表現が提示される。
【００３９】
図８は、本発明による、複数レンディションのファイルを生み出すプロセスを一般に示す論理流れ図である。プロセス８００は開始ブロック８０１で始まるが、ここで、１つまたは複数のアプリケーションが、文書コンテンツの複数のレンディションを生み出しており、この複数のレンディションを複合ファイルに書き込む準備をしている。
【００４０】
ブロック８０３で、第１のレンディションを複合ファイルに加える命令を発行する。第１のレンディションは、ワードプロセッシング文書など、文書コンテンツの編集可能形式の視覚表現とすることができる。同様に、第１のレンディションは、文書コンテンツのその他多くの表現のうちの任意の１つとすることもできる。
【００４１】
ブロック８０５で、第１のレンディションに関するメタデータを複合ファイルに加える。前述のように、メタデータは、複合ファイルのレンディションリストストリームの下にあるものとすることができる。メタデータは、第１のレンディションの一部である場合のある任意のファイルを含めて、第１のレンディションを記述する。メタデータはまた、要求元アプリケーションに基づいて適切なレンディションを選択できるようにするための規則または選択基準を含むこともできる。
【００４２】
ブロック８０７で、第２のレンディションを複合ファイルに加える。第２のレンディションも文書コンテンツの視覚表現とすることができ、あるいは、可聴表現や画像表現など他の何らかの形式とすることもできる。
【００４３】
ブロック８０９で、第２のレンディションに関するメタデータを複合ファイルに加える。この場合も、メタデータは、第２のレンディションの一部である場合のある任意のファイルを含めて、第２のレンディションを記述する。メタデータはまた、要求元アプリケーションに基づいて適切なレンディションを選択できるようにするための規則または選択基準を含むこともできる。
【００４４】
ブロック８１１で、文書の作者に関する情報や、文書または複合ファイルに関するその他のレンディション中立情報など、共通の記述メタデータを複合ファイルに加える。この時点で、複合ファイルは２つの完全なレンディションを含み、これらはリソースを共有するものである場合もあり、そうでない場合もある。次にこの複合ファイルを、図７に関して上述したのと同様のプロセスを用いて処理することができる。
【００４５】
以上の仕様、例、データは、本発明の概念および例示的な実装形態の完全な記述を提供するものである。本発明の趣旨および範囲を逸脱することなく本発明の多くの実施形態を生み出すことができるので、本発明は、添付の特許請求の範囲にある。
【図面の簡単な説明】
【００４６】
【図１】本発明の実装形態で使用することのできるコンピューティングデバイスを示す機能ブロック図である。
【図２】本発明により構築された複合ファイルを有するシステムのコンポーネントを一般に示す機能ブロック図である。
【図３】図２に示した複合ファイルを表すツリー階層の図である。
【図４】本発明により構築された複合ファイル内に含めることのできる情報であって、複合ファイル内の複数のレンディションのそれぞれを記述する情報のテーブル図である。
【図５】本発明の一実装形態による、複数のストリームおよび１つの記憶域を有する複合ファイルの、ある特定の例の図である。
【図６】本発明の一実装形態による、複数のストリームを有する複合ファイルの別の例の図である。
【図７】本発明による、複合ファイル内の適切なレンディションを要求元アプリケーションに利用可能にするプロセスを一般に示す論理流れ図である。
【図８】本発明による、複数レンディションの複合ファイルを生み出すプロセスを一般に示す論理流れ図である。
【図１】
0004542033.tif 000003
【図２】
0004542033.tif 000004
【図３】
0004542033.tif 000005
【図４】
0004542033.tif 000006
【図５】
0004542033.tif 000007
【図６】
0004542033.tif 000008
【図７】
0004542033.tif 000009
【図８】
0004542033.tif 000010