(57)【要約】【課題】ドキュメント・オブジェクト・モデル記述のコンテキストに基づいたトラバースのためのシステムおよび方法を提供する。【解決手段】先ず、電子ドキュメント・データをドキュメント・オブジェクト・モデル記述として保存する。次いで、１つまたは複数の一意的なアプリケーションからアクセス要求を受け取る。次いで、アプリケーションから述語データを受け取る。次いで、受け取った述語データにしたがって保存されている電子ドキュメント・データを解析し、ドキュメント・オブジェクト・モデル・ノードを生成する。その後、生成したドキュメント・オブジェクト・モデル・ノードにしたがって電子ドキュメント・データをトラバースする。【選択図】図４
2008181484.tif 000002
【特許請求の範囲】
【請求項１】
電子ドキュメント・データをドキュメント・オブジェクト・モデル記述として保存する記憶手段と、
この記憶手段に保存されている電子ドキュメント・データへの１つのアクセス要求を、アプリケーションから受け取る手段と、
前記ドキュメント・オブジェクト・モデル記述との関係における前記アプリケーションの閲覧特性を表すデータを含み、前記アプリケーションに対応する述語データを受け取る手段と、
受け取った述語データにしたがって保存されている電子ドキュメント・データを解析し、ドキュメント・オブジェクト・モデル・ノードを生成する手段と、
生成したドキュメント・オブジェクト・モデル・ノードにしたがって、電子ドキュメント・データをトラバースする手段と
を有することを特徴とするドキュメント・オブジェクト・モデル記述のコンテキストに基づいたトラバースのためのシステム。
【請求項２】
前記生成したドキュメント・オブジェクト・モデル・ノードを、前記ドキュメント・オブジェクト・モデル記述と関連する対象のサブツリーのルートに伝達する手段を、さらに、有することを特徴とする請求項１に記載のドキュメント・オブジェクト・モデル記述のコンテキストに基づいたトラバースのためのシステム。
【請求項３】
前記保存されている電子ドキュメントを前記ドキュメント・オブジェクト・モデル記述のランタイム・インスタンスとして生成する手段を、さらに、有することを特徴とする請求項２に記載のドキュメント・オブジェクト・モデル記述のコンテキストに基づいたトラバースのためのシステム。
【請求項４】
前記述語データは、前記ドキュメント・オブジェクト・モデル記述の少なくとも１つの選択されたノード特性を含むことを特徴とする請求項２に記載のドキュメント・オブジェクト・モデル記述のコンテキストに基づいたトラバースのためのシステム。
【請求項５】
前記アクセス要求を受け取る手段は、さらに、前記記憶手段に保存されている電子ドキュメント・データへの複数のアクセス要求を、一意的なアプリケーションから受け取り、
前記述語データを受け取る手段は、さらに、前記一意的なアプリケーションにそれぞれ対応する一意的な述語データを受け取り、
この一意的な述語データを前記それぞれの一意的なアプリケーションに関連づけ、
前記それぞれの一意的なアプリケーションは、その独自の特性にしたがって、前記電子ドキュメントをトラバースすることを特徴とする請求項４に記載のドキュメント・オブジェクト・モデル記述のコンテキストに基づいたトラバースのためのシステム。
【請求項６】
前記アクセス要求は、印刷要求、または表示要求、またはファクシミリ通信要求を含むことを特徴とする請求項１に記載のドキュメント・オブジェクト・モデル記述のコンテキストに基づいたトラバースのためのシステム。
【請求項７】
電子ドキュメント・データをドキュメント・オブジェクト・モデル記述として保存するステップと、
保存されている電子ドキュメント・データへの１つのアクセス要求を、アプリケーションから受け取るステップと、
前記ドキュメント・オブジェクト・モデル記述との関係における前記アプリケーションの閲覧特性を表すデータを含み、前記アプリケーションに対応する述語データを受け取るステップと、
受け取った述語データにしたがって保存されている電子ドキュメント・データを解析し、ドキュメント・オブジェクト・モデル・ノードを生成するステップと、
生成したドキュメント・オブジェクト・モデル・ノードにしたがって、電子ドキュメント・データをトラバースするステップと
を含むことを特徴とするドキュメント・オブジェクト・モデル記述のコンテキストに基づいたトラバースのための方法。
【請求項８】
前記生成したドキュメント・オブジェクト・モデル・ノードを、前記ドキュメント・オブジェクト・モデル記述と関連する対象のサブツリーのルートに伝達するステップを、さらに、含むことを特徴とする請求項７に記載のドキュメント・オブジェクト・モデル記述のコンテキストに基づいたトラバースのための方法。
【請求項９】
前記保存されている電子ドキュメントを前記ドキュメント・オブジェクト・モデル記述のランタイム・インスタンスとして生成するステップを、さらに、含むことを特徴とする請求項８に記載のドキュメント・オブジェクト・モデル記述のコンテキストに基づいたトラバースのための方法。
【請求項１０】
前記述語データは、前記ドキュメント・オブジェクト・モデル記述の少なくとも１つの選択されたノード特性を含むことを特徴とする請求項８に記載のドキュメント・オブジェクト・モデル記述のコンテキストに基づいたトラバースのための方法。
【請求項１１】
前記アクセス要求を受け取るステップは、さらに、前記記憶手段に保存されている電子ドキュメント・データへの複数のアクセス要求を、一意的なアプリケーションから受け取り、
前記述語データを受け取るステップは、さらに、前記一意的なアプリケーションにそれぞれ対応する一意的な述語データを受け取り、
この一意的な述語データを前記それぞれの一意的なアプリケーションに関連づけ、
前記それぞれの一意的なアプリケーションは、その独自の特性にしたがって、前記電子ドキュメントをトラバースすることを特徴とすることを特徴とする請求項１０に記載のドキュメント・オブジェクト・モデル記述のコンテキストに基づいたトラバースのための方法。
【請求項１２】
前記アクセス要求は、印刷要求、または表示要求、またはファクシミリ通信要求を含むことを特徴とする請求項７に記載のドキュメント・オブジェクト・モデル記述のコンテキストに基づいたトラバースのための方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ドキュメント・オブジェクト・モデル記述のコンテキストに基づいたトラバースのためのシステムおよび方法に関し、特に、多様なアプリケーションのそれぞれからドキュメント・オブジェクト・モデルのドキュメントに効率的にアクセスすることを可能とするシステムおよび方法に関する。
【背景技術】
【０００２】
多様なアプリケーションからアクセスできるように、電子ドキュメントを標準化されたフォーマットで保存するのは一般的な方法である。電子ドキュメントの保存のために現在使用されているフォーマットには、多数のものが存在している。このようなフォーマットには、例えば、米国マイクロソフト社のＷＯＲＤフォーマットや、米国アドビ社のportable document format等がある。インターネットの出現と成長に伴い、アプリケーション、特に、ウェブ・ブラウザを有するアプリケーションから容易にアクセス可能な、電子ドキュメントに対するニーズが拡大している。現時点における代表的なウェブ・ブラウザには、Microsoft Corporation社製、Mozilla社製、あるいはOpera Software ASA社製等のものがある。この結果、ワールド・ワイド・ウェブ上において、特に、ハイパーテキスト・マークアップ言語（HyperText Markup Language；ＨＴＭＬとして知られている環境において通常動作する、ウェブ・ブラウザの使用を通じて、アクセス、表示および閲覧するため、直ちに適合できる電子ドキュメント・フォーマットの開発が促進されている。
【０００３】
ワールド・ワイド・ウェブ・コンソーシアム（World Wide Web Consortium）は、ドキュメント・オブジェクト・モジュールの仕様を公開している。ドキュメント・オブジェクト・モデル（Document Object Model；以下、ＤＯＭということがある。）とは、プログラムおよびスクリプトがドキュメントのコンテンツ、構造およびスタイルへの動的なアクセスおよび更新を可能とする、プラットフォームおよび言語的に中立のインターフェイスである。ＤＯＭドキュメントは、さらに処理され、処理結果は提示されるページに組み込まれる。
【０００４】
ウェブ言語は、ＳＧＭＬ（Standardized General Markup Language）によって作成されている。ＳＧＭＬは、元々、大規模なプロジェクトにおいて機械可読ドキュメントの共有を可能とするために設計されたものである。ＳＧＭＬは印刷業界および出版業界においても広範に使用されてきている。しかしＳＧＭＬは、その複雑さに起因して、小規模な汎用的な使用法における広範な適用が妨げられている。ＸＭＬ（Extensible Markup Language）は、ＳＧＭＬから派生したものであるが、現在ではＳＧＭＬよりも格段に広範に使用されている。ＸＭＬプロファイルは、完全なＳＧＭＬよりも解析および処理が簡単であり、かつ、より軽量の項目別分類を備えるように、設計されたＳＧＭＬの特定のサブセットである。ＸＭＬは、汎用的な適用のためにＳＧＭＬを単純化したものである。ＸＭＬは、ＸＨＴＭＬ、ＲＳＳ、Ａｔｏｍ  ＸＭＬ−ＲＰＣおよびＳＯＡＰ等を含む多数のアプリケーションに使用されている。
【０００５】
ＸＭＬドキュメントにアクセスするアプリケーションは、ＸＭＬデータを解釈する解析手段であるＸＭＬパーサを必要とする。ＸＭＬパーサは、一時的または永久的なメモリ内に、World Wide Web ConsortiumのＤＯＭツリー等のツリーを構築する機能を含む。このパーサは、ＸＭＬ  ＤＯＭドキュメントの階層的なツリーに基づいた表現をスキャンする必要がある。典型的なパーサは、特定のアプリケーションの対象のすべてのノードが識別されるまで、それぞれのツリーをノードごとにトラバースすることを必要とする。複数のユーザまたは複数のアプリケーションは、ドキュメントの異なる表示（views）を特定するために、対象の異なるノードを識別する。したがって、通常、それぞれの使用ごとにコピーを生成するとともに、それぞれごとにツリーを完全にトラバースすることが必要である問題点があった。
【０００６】
したがって、このような非効率性無しに、多様なアプリケーションによる電子ドキュメントの効率的な閲覧を円滑に実行し、このことよって、より少ないリソースを使用して、より高速のドキュメント・アクセスを円滑に実行するシステムおよび方法が望まれている。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明は、上記の従来の問題点に鑑みてなされたもので、ドキュメント・オブジェクト・モデル記述のコンテキストに基づいたトラバースのためのシステムおよび方法を提供することを目的とする。また、本発明は、効率良く電子ドキュメントにアクセスするシステムおよび方法が提供することを目的とする。さらに、本発明は、多様なアプリケーションのそれぞれからドキュメント・オブジェクト・モデルのドキュメントに効率的にアクセスするシステムおよび方法することを目的とする。さらには、本発明は、多様なアプリケーションによる電子ドキュメントの効率的な閲覧を円滑に実行し、これにより、より少ないリソースを使用して、より高速なドキュメント・アクセスを円滑に実行するシステムおよび方法することを目的とする。
【課題を解決するための手段】
【０００８】
本発明によるドキュメント・オブジェクト・モデル記述のコンテキストに基づいたトラバースのためのシステムは、電子ドキュメント・データをドキュメント・オブジェクト・モデル（document object model）記述として保存する記憶手段と、この記憶手段に保存されている電子ドキュメント・データへの１つのアクセス要求を、アプリケーションから受け取る手段と、前記ドキュメント・オブジェクト・モデル記述との関係における前記アプリケーションの閲覧特性を表すデータを含み、前記アプリケーションに対応する述語データ（predicate data）を受け取る手段と、受け取った述語データにしたがって保存されている電子ドキュメント・データを解析し、ドキュメント・オブジェクト・モデル・ノードを生成する手段と、生成したドキュメント・オブジェクト・モデル・ノードにしたがって、電子ドキュメント・データをトラバース（traverse）する手段とを有する。
【０００９】
一実施形態においては、本システムは、生成されたドキュメント・オブジェクト・モデル・ノードを、ドキュメント・オブジェクト・モデル記述と関連する対象のサブツリーのルートに伝達する手段を、さらに、有する。
【００１０】
他の実施形態においては、本システムは、保存されている電子ドキュメントをドキュメント・オブジェクト・モデル記述のランタイム・インスタンスとして生成する手段を、さらに、有する。
【００１１】
さらなる実施形態においては、述語データは、ドキュメント・オブジェクト・モデル記述の少なくとも１つの選択されたノード特性を含む。
【００１２】
さらに別の実施形態においては、本システムのアクセス要求を受け取る手段は、さらに、記憶手段に保存されている電子ドキュメント・データへの複数のアクセス要求を一意的なアプリケーションから受け取り、また、述語データを受け取る手段は、さらに、一意的なアプリケーションにそれぞれ対応する一意的な述語データを受け取り、この一意的な述語データをそれぞれの一意的なアプリケーションに関連づけ、それぞれの一意的なアプリケーションは、その独自の特性にしたがって、電子ドキュメントをトラバースする。
【００１３】
アクセス要求は、印刷要求、または表示要求、またはファクシミリ通信要求を含む。
【００１４】
本発明によるドキュメント・オブジェクト・モデル記述のコンテキストに基づいたトラバースのための方法は、電子ドキュメント・データをドキュメント・オブジェクト・モデル記述として保存するステップと、保存されている電子ドキュメント・データへのアクセス要求を、アプリケーションから受け取るステップと、前記ドキュメント・オブジェクト・モデル記述との関係における前記アプリケーションの閲覧特性を表すデータを含み、前記アプリケーションに対応する述語データを受け取るステップと、受け取った述語データにしたがって保存されている電子ドキュメント・データを解析し、ドキュメント・オブジェクト・モデル・ノードを生成するステップと、生成したドキュメント・オブジェクト・モデル・ノードにしたがって、電子ドキュメント・データをトラバースするステップとを含む。
【発明の効果】
【００１５】
本発明によれば、ドキュメント・オブジェクト・モデル記述のコンテキストに基づいたトラバースのためのシステムおよび方法が提供される。また、本発明によれば、効率良く電子ドキュメントにアクセスするシステムおよび方法が提供される。さらに、本発明によれば、多様なアプリケーションのそれぞれからドキュメント・オブジェクト・モデルのドキュメントに効率的にアクセスするシステムおよび方法が提供される。さらには、本発明によれば、多様なアプリケーションによる電子ドキュメントの効率的な閲覧を円滑に実行し、これにより、より少ないリソースを使用して、より高速なドキュメント・アクセスを円滑に実行するシステムおよび方法が提供される。
【発明を実施するための最良の形態】
【００１６】
以下、適宜、図面を参照しながら本発明による実施形態の説明を行う。図１は本発明の実施形態によるドキュメント・オブジェクト・モデル記述のコンテキストに基づいたトラバースのためのシステム全体の構成例を示す。図に示したシステム１００は、コンピュータ・ネットワーク１０２として表されている分散コンピューティング環境を利用している。コンピュータ・ネットワーク１０２は、複数の電子装置間におけるデータの交換を可能とする本技術分野で知られている任意の分散通信環境である。コンピュータ・ネットワーク１０２は、例えば、仮想ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、パーソナル・エリア・ネットワーク、ローカル・エリア・ネットワーク、インターネット、イントラネット、またはそれらの任意の組み合わせを含む本技術分野で知られている任意のコンピュータ・ネットワークである。本発明による一実施形態において、コンピュータ・ネットワーク１０２は、例えば、トークン・リング、IEEE802.11(x)、Ethernet（登録商標）またはその他の無線ベースまたは有線ベースのデータ通信メカニズム等の既存の多数のデータ転送メカニズムによって例示されるような物理レイヤおよびトランスポート・レイヤから構成される。図１にはコンピュータ・ネットワーク１０２を示したが、本発明は、本技術分野において知られているように、スタンドアローン・システムにおいても同様に実施可能である。
【００１７】
システム１００は、さらに、様々なドキュメント処理を実行するために適切な多機能周辺装置（Multi-Function Peripheral；以下、ＭＦＰということがある。）として図に表されている、少なくとも１つのドキュメント処理装置１０４を含む。しかし、ＭＦＰはドキュメント処理装置の一形態であって、本発明におけるドキュメント処理装置がＭＦＰに限定されるものではない。ドキュメント処理装置における処理操作には、例えば、ファクシミリ通信、画像走査、コピー、印刷、電子メール、ドキュメント管理、ドキュメント保存等が含まれる。本発明による一形態においては、ドキュメント処理装置１０４は、リモート・ドキュメント処理サービスを外部装置あるいはネットワーク装置に対して提供する。ドキュメント処理装置１０４は、ユーザ、ネットワークに接続された装置等とやり取りするように構成された、ハードウェア、ソフトウェアおよびこれらの任意の適切な組み合わせを含んでいる。
【００１８】
また、本発明による一実施形態において、ドキュメント処理装置１０４は、例えば、IEEE 1394あるいはＵＳＢインターフェイスを有する各種ドライブ、多様なＩＣメモリカード等の、複数のポータブル記憶媒体を受け入れるためのインターフェイスを備える。本発明の実施形態においては、ドキュメント処理装置１０４は、さらに、タッチ−スクリーン、ＬＣＤ、タッチ−パネル、英数字キーパッド等のユーザ・インターフェイス１０６を備え、ユーザは、このようなユーザ・インターフェイスを介してドキュメント処理装置１０４と直接やり取りすることができる。ユーザ・インターフェイス１０６は、ユーザに対して情報を伝達するとともに、ユーザから選択内容を受け取るために用いられる。ユーザ・インターフェイス１０６は、本技術分野において知られているように、データをユーザに提示するために適切な様々なコンポーネントを有している。本発明による一実施例においては、後ほど説明するように、ユーザ・インターフェイス１０６は、１つまたは複数のグラフィック要素、テキスト・データ、画像等をユーザに表示し、ユーザから入力を受け取り、受け取った入力をコントローラ１０８等のバックエンド・コンポーネントに対して伝達するディスプレイを備えている。ドキュメント処理装置１０４は、適切な通信リンク１１２を介して、コンピュータ・ネットワーク１０２に通信可能に接続されている。適切な通信リンク１１２には、例えば、WiMax（Worldwide Interoperability for Microwave Access）、IEEE802.11a、IEEE802.11b、IEEE802.11g、IEEE802.11(x)、Bluetooth（登録商標）、公衆交換電話網、専用通信ネットワーク、赤外線接続、光接続、または、本技術分野において知られている他の適切な有線または無線のデータ通信チャネルが含まれる。
【００１９】
本発明による実施形態において、ドキュメント処理装置１０４は、さらに、ドキュメント処理装置１０４による処理操作を容易にする適切なコントローラ１０８として表されたバックエンド・コンポーネントを内蔵している。コントローラ１０８は、ドキュメント処理装置１０４の動作の制御、あるいはユーザ・インターフェイス１０６を介した画像の表示の制御、または、電子画像データの操作等の処理を容易にするように構成されたハードウェア、ソフトウェアあるいはこれらの適切な組み合わせによって実装される。以下の説明においては、コントローラ１０８という用語は、後述する動作を実行する、もしくは実行させる、もしくは制御する、またはその他の方法で管理するように機能するハードウェア、ソフトウェア、またはこれらの組み合わせを含むドキュメント処理装置１０４と関連する任意の多数のコンポーネントの意味で、使用する。なお、図および上記の説明において、コントローラ１０８をドキュメント処理装置１０４に内蔵された形態としているが、コントローラ１０８は、ドキュメント処理装置１０４に通信可能に接続された外部装置の形態であってもよい。コントローラ１０８との関連において説明を行う動作は、本技術分野において知られている任意の汎用コンピューティング・システムによって実行可能である。したがって、コントローラ１０８は、このような一般的なコンピューティング装置を表しており、以下の説明において使用する際にも、そのように意図されている。また、以下の説明においてはコントローラ１０８を使用しているが、これは実施形態の例にすぎず、その他の実施形態においても、本発明によるドキュメント処理媒体をプレビューするシステムおよび方法を利用することができる。コントローラ１０８の構成等については、後ほど図２と図３を参照しながら説明を行う。
【００２０】
また、ドキュメント処理装置１０４にはデータ記憶装置１１０が通信可能に接続されている。データ記憶装置１１０は、例えば、ハードディスク・ドライブ、その他の磁気記憶装置、光学式記憶装置、フラッシュ・メモリまたはそれらの任意の組み合わせを含む本技術分野で知られている大容量記憶装置である。一実施形態においては、データ記憶装置１１０は、ドキュメント・データ、画像データ、電子データベースのデータ等を保存するように適切に適合されている。データ記憶装置１１０は、図においてはシステム１００の独立したコンポーネントとして例示されているが、例えば、内蔵ハードディスク・ドライブ等のような、ドキュメント処理装置１０４の内部記憶装置、あるいはコントローラ１０８のコンポーネント等として実装することができる。本発明による一実施形態においては、データ記憶装置１１０は、ドキュメント・オブジェクト・モデル（ＤＯＭ）記述として電子ドキュメント・データを表す電子データを保存する。
【００２１】
システム１００は、さらに、ユーザ装置１１４を含み、ユーザ装置１１４は、適切な通信リンク１１６を介して、コンピュータ・ネットワーク１０２とのデータ通信を行う。図においてはユーザ装置１１４をノート形パーソナル・コンピュータとして示しているが、これは例示にすぎない。ユーザ装置１１４は、例えば、コンピュータ・ワークステーション、デスクトップ形パーソナル・コンピュータ、携帯情報端末（ＰＤＡ）、ウェブ対応携帯電話、スマートフォン、専用通信ネットワーク用の装置、またはその他のウェブ対応の電子装置を含む本技術分野において知られている任意のパーソナル・コンピューティング装置を表している。通信リンク１１６は、例えば、Bluetooth（登録商標）、WiMax、IEEE802.11a、IEEE802.11b、IEEE802.11g、IEEE802.11(x)、専用通信ネットワーク、赤外線接続、光接続、公衆交換電話網、または、本技術分野において知られている他の適切な有線または無線のデータ通信チャネルである。ユーザ装置１１４は、例えば、電子ドキュメント、ドキュメント処理命令、ユーザ・インターフェイス変更、アップグレード、更新、パーソナル化データ等を生成し、ドキュメント処理装置１０４あるいはコンピュータ・ネットワーク１０２に接続されたその他の類似装置に、送信する。
【００２２】
次に、図２および図３を参照しながら、本発明による実施形態におけるシステムの動作が実行されるコントローラのハードウェアおよび機能構成等を説明する。図２に本発明による実施形態においてシステム１００の動作が実行されるバックエンド・コンポーネント、すなわち図１にコントローラ１０８として示したコントローラ２００のハードウェア・アーキテクチャの構成例を示す。コントローラ１０８は、本明細書に記載する動作を円滑に実行する能力を有する、本技術分野において知られている任意の一般的なコンピューティング装置を表している。コントローラ２００には、少なくとも一つのＣＰＵを含むプロセッサ２０２が含まれている。プロセッサ２０２は、互いに協調して動作する複数のＣＰＵから構成されることもある。また、コントローラ２００には、ＢＩＯＳ機能、システム機能、システム構成データおよびコントローラ２００の動作に使用する他のルーチンもしくはデータ等の静的または固定的なデータ、あるいはインストラクションのために有効に使用される、不揮発性または読出し専用メモリ（ＲＯＭ）２０４が含まれている。
【００２３】
また、コントローラ２００には、ダイナミック・ランダム・アクセス・メモリ、スタティック・ランダム・アクセス・メモリ、または他の任意の適切なアドレス指定可能かつ書込み可能なメモリ・システムから構成されるＲＡＭ２０６が含まれている。ＲＡＭ２０６は、プロセッサ２０２により処理されるアプリケーションおよびデータ処理に関係するデータ・インストラクションのための記憶領域を提供する。
【００２４】
ストレージ・インターフェイス２０８は、コントローラ２００に関連するデータの不揮発性保存、大容量保存または長期的な保存ためのメカニズムを提供する。ストレージ・インターフェイス２０８は、２１６として図示したディスク・ドライブ、あるいは光学式ドライブ、テープ・ドライブ等の適切な任意のアドレス指定可能、またはシリアル記憶装置等の大量記憶装置の他、当業者に知られている適切な任意の記憶媒体を使用する。
【００２５】
ネットワーク・インターフェイス・サブシステム２１０は、ネットワークとの間における入出力を適切にルーティングすることによって、コントローラ２００が他の装置と通信することを可能にする。ネットワーク・インターフェイス・サブシステム２１０は、装置２００に対する外部装置との一つまたは複数のコネクションのインターフェイスを適切にとる。図においては、例えば、Ethernet（登録商標）、トークン・リング等といった固定または有線ネットワークとのデータ通信のための少なくとも一つのネットワーク・インターフェイス・カード２１４、およびWiFi（Wireless Fidelity）、WiMax、無線モデム、セルラ・ネットワークまたは適切な任意の無線通信システム等の手段を介した無線通信のために適切な無線インターフェイス２１８を示している。ネットワーク・インターフェイス・サブシステム２１０は、任意の物理的データ転送レイヤあるいは物理的データ転送レイヤではないデータ転送レイヤまたはプロトコル・レイヤを適切に利用する。ネットワーク・インターフェイス・カード２１４は、例えば、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワークまたはそれらの組合せから適切に構成される物理的ネットワーク２２０を介したデータ交換を行うために、相互接続されている。
【００２６】
プロセッサ２０２、読出し専用メモリ２０４、ＲＡＭ２０６、ストレージ・インターフェイス２０８およびネットワーク・インターフェイス・サブシステム２１０の間のデータ通信は、バス２１２によって例示したバス・データ転送メカニズムを介して行われる。
【００２７】
また、ドキュメント・プロセッサ・インターフェイス２２２もバス２１２を介してデータ通信を行う。ドキュメント・プロセッサ・インターフェイス２２２は、様々なドキュメント処理動作を実行するために、ドキュメント処理ハードウェア２３２との接続を提供する。そのようなドキュメント処理動作には、コピー・ハードウェア２２４によって実行されるコピー、画像走査ハードウェア２２６によって実行される画像走査、印刷ハードウェア２２８によって実行される印刷、およびファクシミリ・ハードウェア２３０によって実行されるファクシミリ通信が含まれる。コントローラ２００は、これらのドキュメント処理動作のいずれかまたは全部を適切に動作させる。複数のドキュメント処理動作を実行可能なシステムは、前述したように、ＭＦＰと呼ばれる。システム１００の機能は、ドキュメント処理装置と関連するインテリジェント・サブシステムとして、コントローラ１０８として図１に示した、図２のコントローラ２００を含む、ドキュメント処理装置１０４において実行される。
【００２８】
次に図３を参照しながらシステムの動作が実行されるコントローラの機能ブロックと動作の概要を説明する。図３に、本発明による実施形態のシステム１００の動作が実行されるコントローラ３００の機能ブロックの構成例を示す。コントローラ３００の機能は、ドキュメント処理エンジン３０２を含む。図３は、ソフトウェアおよびオペレーティング・システム機能と関連して、図２に示したハードウェアの機能性を例示している。
【００２９】
一実施形態において、ドキュメント処理エンジン３０２は、印刷動作、コピー動作、ファクシミリ通信動作および画像走査動作を可能にする。これらの機能が一つの装置で実行できる装置は、産業界において一般に好まれるドキュメント処理周辺装置であるＭＦＰである。しかし、コントローラ３００が上記のドキュメント処理動作のすべてを可能にする必要は必ずしもない。コントローラは、上記のドキュメント処理動作のサブセットである、専用のドキュメント処理装置、あるいはより限定した目的のドキュメント処理装置においても有効に用いられる。
【００３０】
ドキュメント処理エンジン３０２はユーザ・インターフェイス・パネル３１０と適切にインターフェイスされており、ユーザまたは管理者は、このユーザ・インターフェイス・パネル３１０を介して、ドキュメント処理エンジン３０２によって制御される機能にアクセスすることができる。アクセスは、コントローラにローカルに配置されているインターフェイスを介して行われるか、遠隔のシン・クライアント（thin client）またはシック・クライアント（thick client）によって遠隔から行われる。
【００３１】
ドキュメント処理エンジン３０２は、印刷機能部３０４、ファクシミリ通信機能部３０６および画像走査機能部３０８とデータ通信を行う。これらの機能部は、印刷、ファクシミリの送受信、およびドキュメント画像をコピーのために取得するか、またはドキュメント画像の電子バージョンを生成するための、ドキュメント画像走査の実際の処理操作を容易にする。
【００３２】
ジョブ・キュー（job queue）３１２は、印刷機能部３０４、ファクシミリ通信機能部３０６および画像走査機能部３０８とデータ通信を行う。ビットマップ、ページ記述言語（ＰＤＬ）またはベクター・フォーマット等の種々の画像形式は、画像走査機能部３０８からジョブ・キュー３１２を介して以降の処理のために中継される。
【００３３】
ジョブ・キュー３１２は、また、ネットワーク・サービス機能部３１４ともデータ通信を行う。一実施形態において、ジョブ制御、状態データまたは電子ドキュメント・データが、ジョブ・キュー３１２とネットワーク・サービス機能部３１４との間で交換される。このように、適切なインターフェイスが、クライアント側ネットワーク・サービス機能３２０を介したコントローラ３００へのネットワーク・ベースのアクセスのために設けられ、それは、任意の適切なシン・クライアント（thin client）またはシック・クライアント（thick  client）である。一実施形態において、ウェブ・サービス・アクセスは、ハイパーテキスト転送プロトコル（HTTP）、ファイル転送プロトコル（FTP）、ユニフォーム・データ・ダイアグラム・プロトコル（uniform data diagram protocol）または他の任意の適切な交換メカニズムによって実行される。ネットワーク・サービス機能部３１４は、また、FTP、電子メール、テルネット（TELNET）等を介した通信のために、クライアント側ネットワーク・サービス機能３２０とのデータ交換も有効に提供する。このように、コントローラ機能３００は、種々のネットワーク・アクセス・メカニズムによって、電子ドキュメントおよびユーザ情報の出力あるいは受信を容易にする。
【００３４】
ジョブ・キュー３１２は、また、画像プロセッサ３１６ともデータ通信を行う。画像プロセッサ３１６は、印刷機能部３０４、ファクシミリ通信機能部３０６または画像走査機能部３０８等の装置サービスと、電子ドキュメントを交換するために適したフォーマットに変換するラスタ画像処理（ＲＩＰ）、ページ記述言語インタープリタまたは任意の適切な画像処理を行うメカニズムである。
【００３５】
最後に、ジョブ・キュー３１２はジョブ解析部（job parser）３１８とデータ通信を行い、このジョブ解析部３１８はクライアント装置サービス部３２２等の外部装置からの印刷ジョブ言語（ＰＪＬ）ファイルを受け取る働きをする。クライアント装置サービス部３２２は、電子ドキュメントの印刷、ファクシミリ通信、またはコントローラ機能３００による処理が有効である他の適切な電子ドキュメントの入力を含む。ジョブ解析部３１８は、受け取った電子ドキュメント・ファイルを解析し、前述した機能および要素と関連する処理のために、解析した電子ドキュメント・ファイル情報をジョブ・キュー３１２に中継する働きをする。
【００３６】
以下、本発明における動作の概要を説明する。先ず、電子ドキュメント・データをドキュメント・オブジェクト・モデル（ＤＯＭ）記述として保存する。次いで、アクセス要求をアプリケーションから受け取る。このアクセス要求は、電子ドキュメント・データにアクセスするアプリケーションからの要求を反映している。次いで、述語データ（predicate data）をアプリケーションから受け取る。述語データは、ＤＯＭ記述に関連するアプリケーションの閲覧特性を表すデータを含む。次いで、受け取った述語データにしたがって保存されている電子ドキュメント・データを解析することにより、ＤＯＭノードを生成する。その後、生成したＤＯＭノードにしたがって電子ドキュメント・データをトラバースする。
【００３７】
本発明による例示的な一実施形態においては、グラフィック・ユーザ・インターフェイス、ウェブ・ブラウザ等のアプリケーションは、ＤＯＭ記述として保存されている電子ドキュメントにアクセスする。アプリケーションは、ドキュメント処理装置１０４のユーザ・インターフェイス１０６、コンピュータ・ネットワーク１０２を介したユーザ装置１１４等によって、動作することができる。アプリケーションは、本技術分野において知られている任意の適切な手段を介して、データ記憶装置１１０に保存されているＤＯＭ記述に対するアクセスを要求する。アクセス要求は、例えば、印刷要求、表示要求、ファクシミリ通信要求等を含んでいる。保存されている電子ドキュメント・データに対する複数のアクセス要求が、複数の一意的なアプリケーションから受け取られたときには、一意的な述語データがそれぞれのアクセス要求と関連付けられ、それぞれのアプリケーションは、その独自の特性にしたがって電子ドキュメント・データをトラバースする。次いで、ドキュメント・データに対するアクセスを要求しているアプリケーションの数に関わらず、それぞれのアプリケーションはＤＯＭ記述を開き、ドキュメントのランタイム・インスタンスを表すドキュメント・オブジェクトを取得する。
【００３８】
次いで、アプリケーションは、例えば、ドキュメントのノードに表現されている制約のセット、例えば、ノード名、ノード属性値等の１つまたは複数のノード特性に対応した述語データを、ＤＯＭパーサ・インターフェイスに伝達する。ＤＯＭパーサ・インターフェイスは、ＤＯＭドキュメントを解析するために適切な任意のハードウェア、ソフトウェアまたはこれらの組み合わせである。ＤＯＭパーサは、アプリケーションから受け取った述語データを用い、対象のサブツリーのルートに伝達するためにＤＯＭノードを返す。次いで、アプリケーションは、パーサからＤＯＭノードを受け取り、このノードを対象のサブツリーのルートに伝達する。次いで、アプリケーションは、ノードを用いて、取得したＤＯＭドキュメントをトラバースする。その後、アプリケーションは、ドキュメントのトラバース結果にしたがって、ユーザ・インターフェイス１０６あるいはユーザ装置１１４に表示を行う。このような「スマート」なノードによって、ドキュメントは、ドキュメントをラインごとに判読して次のノードを検出することを必要としないで、ＤＯＭドキュメントを迅速にトラバースすることが可能となる。以上のようにして、ＤＯＭ記述のコンテキストに基づいたトラバースが実行される。
【００３９】
本発明による例示的な実施形態において、ドキュメント処理装置１０４は、データ記憶装置１１０上保存されているような階層構造のＤＯＭツリー内に、保留中のドキュメント処理操作のリストを保存する。このジョブのリストは、例えば、印刷ジョブ、画像走査ジョブ、ファクシミリ通信ジョブ、電子メール通信ジョブ等を含む様々なタイプのジョブを含む。ドキュメント処理装置のユーザ・インターフェイス１０６のアプリケーション、ユーザ装置１１４のウェブ対応形のユーザ・インターフェイス等のアプリケーションは、このジョブ・リストを、ユーザに対して異なる方法で提示することができる。すなわち、例えば、ユーザ・インターフェイス１０６のユーザは、ジョブ・リストの印刷ジョブのみに対するフィルタリングを要求することができ、ユーザ装置１１４のウェブ対応形のユーザ・インターフェイスのユーザは、ジョブ・リストの画像走査ジョブのみに対するフィルタリングを要求することができる。これらのアプリケーションがジョブ・リストに結び付け、ジョブ・リストをユーザに対して提供するメカニズムは、一般的なものであり、ユーザによって指定されたフィルタに依存するものではなく、また、依存するべきものでもない。本発明は、アプリケーションがＤＯＭドキュメント全体をコピーすることを必要とするのではなく、ジョブ・リストが個々のユーザのみのためにカスタム的に作成されたものであるかのように、ノードを用いてジョブ・リストをトランスペアレントにトラバースする。すなわち、ＤＯＭツリー全体のトラバースは、規定された優先情報に基づいており、順番にノードを選択しているわけではない。このことによって、ノード自体がドキュメント内においてトラバースするべき次のノードを指定するという結果をもたらしている。
【００４０】
次に図４および図５を参照しながら、本発明による実施形態において、ＤＯＭ記述のコンテキストに基づいたトラバースの動作を説明する。図４に、本発明による実施形態において、ＤＯＭ記述のコンテキストに基づいたトラバースの基本的な動作例を表すフローチャートを示す。先ず、Ｓ４０２で、電子ドキュメント・データをＤＯＭ記述として保存する。例えば、ＤＯＭ記述は、ドキュメント処理装置１０４のデータ記憶装置１１０に保存される。ＤＯＭ記述に対しては、ユーザ装置１１４等のデータ処理装置からコンピュータ・ネットワーク１０２を介してアクセス可能である。Ｓ４０４において、保存されている電子ドキュメント・データにアクセスするためのアクセス要求を、１つまたは複数の一意的なアプリケーションから受け取る。アクセス要求は、例えば、印刷要求、表示要求、ファクシミリ通信要求等を含んでいる。本発明によれば、電子ドキュメント・データに対する複数のアクセス要求を、複数の一意的なアプリケーションから受け取ることができる。アクセス要求を出すアプリケーションには、例えば、ユーザ装置１１４上のウェブ・ブラウザのようなウェブ対応形のユーザ・インターフェイス、およびドキュメント処理装置１０４のユーザ・インターフェイス１０６に関連するディスプレイが含まれる。
【００４１】
次いで、Ｓ４０６において、１つまたは複数の一意的なアプリケーションから述語データを受け取る。この述語データは、ＤＯＭ記述との関係におけるアプリケーションの閲覧特性を表すデータを含んでいる。好ましくは、述語データは、ＤＯＭパーサ・インターフェイスに対する、例えば、ノード名、ノード属性値等の、ドキュメントのノード上において表現されている制約のセット等の、１つまたは複数のノード特性に対応している。ＤＯＭパーサ・インターフェイスは、例えば、コントローラ１０８、ドキュメント処理装置１０４のバックエンド・コンポーネント、ユーザ装置１１４のバックエンド・コンポーネント等の、ＤＯＭドキュメントを解析するために適切な任意のハードウェア、ソフトウェアまたはこれらの組み合わせである。次いで、Ｓ４０８において、受け取った述語データにしたがって、電子ドキュメント・データをＤＯＭパーサ・インターフェイスによって解析し、ＤＯＭノードを生成する。次いで、生成したＤＯＭノードにしたがって、Ｓ４１０において、電子ドキュメント・データをトラバースする。すなわち、ＤＯＭ記述のコンテキストに基づいたトラバースが実行される。
【００４２】
次に図５を参照しながら、本発明による実施形態において、ＤＯＭ記述のコンテキストに基づいたトラバースのための動作をさらに詳細に説明する。図５に、本発明による実施形態において、ＤＯＭ記述のコンテキストに基づいたトラバースのための動作をアプリケーションの観点から表したフローチャートを示す。図に示したフローチャートは、１つの一意的なアプリケーションの観点から本発明による実施形態の動作を示しているが、図に示した動作は、保存されている電子ドキュメント・データに対するアクセスを要求する、複数の一意的なアプリケーションに関しても同様に適用可能である。先ず、Ｓ５０２で、アプリケーションは、ＤＯＭ記述としてデータ記憶装置１１０に保存されている電子ドキュメント・データに対するアクセスを要求する。次いでＳ５０４において、アプリケーションは、ドキュメントを開いてドキュメント・オブジェクトを取得する。次いで、Ｓ５０６において、取得したドキュメント・オブジェクトを保存されている電子ドキュメント・データのランタイム・インスタンスとして生成する。
【００４３】
次いでＳ５０８において、アプリケーションは、述語データをＤＯＭパーサ・インターフェイスに伝達する。次いでＳ５１０において、アプリケーションは、ＤＯＭパーサ・インターフェイスからＤＯＭノードを受け取る。好ましくは、ＤＯＭパーサ・インターフェイスは、ノード名、ノード属性値等に対応する述語データを使用し、ＤＯＭノードをアプリケーションに返す。次いでＳ５１２において、アプリケーションは、受け取ったＤＯＭノードをＤＯＭ記述と関連する対象のサブツリーのルートに伝達する。次いでＳ５１４で、アプリケーションは、受け取ったノードにしたがって、ＤＯＭ記述をトラバースする。その後、Ｓ５１６において、アプリケーションは、ＤＯＭ記述のトラバース結果にしたがって、ユーザ・インターフェイス上に表示データを生成する。
【００４４】
本発明は、ソース・コード、オブジェクト・コード、部分的にコンパイルされた形のようなコード中間ソースおよびオブジェクト・コードの形、あるいは本発明の実施形態で使用するために適した任意の他の形のコンピュータ・プログラムに適用される。コンピュータ・プログラムは、スタンドアローンのアプリケーション、ソフトウェア・コンポーネント、スクリプトまたは他のアプリケーションへのプラグ・インとすることができる。本発明を実施するコンピュータ・プログラムは、例えば、ＲＯＭやＲＡＭ等の記憶媒体、ＣＤ−ＲＯＭ等の光記録媒体、フロッピー（登録商標）ディスク等の磁気記録媒体等の、コンピュータ・プログラムを伝達することができる任意の実体または装置である担体上で具体化することができる。この担体は、電気ケーブルまたは光ケーブルによって、または無線や他の手段によって伝えられる電気信号や光信号等の任意の伝達可能な担体である。コンピュータ・プログラムは、サーバからインターネットを介してダウンロードすることもできる。また、コンピュータ・プログラムの機能は集積回路に組み込むこともできる。説明を行った本発明の原理を実質的にコンピュータまたはプロセッサに実行させるコードを含む任意およびすべての実施形態は、本発明の技術的な範囲内にある。
【００４５】
本発明の好ましい実施形態の以上の説明は、例示と説明のために行った。説明は網羅的ではなく、本発明を開示した形態に限定しようとするものでもない。以上の開示を鑑みて明らかな修正または変形が可能である。実施形態は、本発明の原理とその実際的な応用例を最もよく示し、それにより当業者が、本発明を、意図された特定の使用に適した様々な実施形態において様々な修正で使用できるように選択され説明された。そのようなすべての修正と変形は、特許請求の範囲の記載に明示されるとおりの本発明の原理および範囲内において、当業者によって行われ得ることは明らかであり、特許請求の範囲の記載によって定められる発明の技術的な範囲内にある。
【図面の簡単な説明】
【００４６】
【図１】本発明による実施形態が適用されるシステム全体の構成例である。
【図２】本発明による実施形態のシステムの動作が実行されるコントローラのハードウェアの構成例である。
【図３】本発明による実施形態のシステムの動作が実行されるコントローラの機能ブロックの構成例である。
【図４】本発明による実施形態において、ＤＯＭ記述のコンテキストに基づいたトラバースの基本的な動作例を表すフローチャートである。
【図５】本発明による実施形態において、ＤＯＭ記述のコンテキストに基づいたトラバースの動作例を表すフローチャートである。
【符号の説明】
【００４７】
１００  システム
１０２  コンピュータ・ネットワーク、分散コンピューティング環境
１０４  ドキュメント処理装置、ＭＦＰ
１０６  ユーザ・インターフェイス
１０８  コントローラ
１１０  データ記憶装置
１１２、１１６  通信リンク
１１４  ユーザ装置
２００、３００  コントローラ
２０２  プロセッサ
２０４  読み出し専用メモリ、ＲＯＭ
２０６  ＲＡＭ
２０８  ストレージ・インターフェイス
２１０  ネットワーク・インターフェイス・サブシステム
２１２  バス
２１４  ネットワーク・インターフェイス・カード
２１６  ディスク・ドライブ
２１８  無線インターフェイス
２２０  物理的ネットワーク
２２２  ドキュメント・プロセッサ・インターフェイス
２２４  コピー・ハードウェア
２２６  画像走査ハードウェア
２２８  印刷ハードウェア
２３０  ファクシミリ・ハードウェア
２３２  ドキュメント処理ハードウェア
３０２  ドキュメント処理エンジン
３０４  印刷機能部
３０６  ファクシミリ通信機能部
３０８  画像走査機能部
３１０  ユーザ・インターフェイス・パネル
３１２  ジョブ・キュー
３１４  ネットワーク・サービス機能部
３１６  画像プロセッサ
３１８  ジョブ解析部
３２０  クライアント側ネットワーク・サービス機能
３２２  クライアント装置サービス部
【図１】
2008181484.tif 000003
【図２】
2008181484.tif 000004
【図３】
2008181484.tif 000005
【図４】
2008181484.tif 000006
【図５】
2008181484.tif 000007