(57)【要約】XMLファイルの凝縮に関する実施形態について説明する。一実施形態では、XMLファイルから一組のインデックスを生成することを含む。該一組のインデックスは、XMLファイル内で使用されるタグの項を索引付けするタグインデックス、XMLファイル内の属性の項を索引付けする属性インデックス、及びXMLファイル内の値の項を索引付けする値インデックスを含むことが可能である。該実施形態はまた、該インデックスに従ってXMLファイルを変換することにより該XMLファイルを凝縮されたバージョンのXMLファイルへと凝縮することを含む。該実施形態はまた、変換されたファイルの生成を含む。該変換されたファイルは、一組のインデックス及び凝縮されたバージョンのXMLファイルから作成することが可能である。【選択図】図２
2019506652.tif 000002
【特許請求の範囲】
【請求項１】
XML（extensible markup language）ファイルから一組のインデックスを生成し、該一組のインデックスが、該XMLファイル内で使用されるタグの項を索引付けするタグインデックス、該XMLファイル内の属性の項を索引付けする属性インデックス、及び該XMLファイル内の値の項を索引付けする値インデックスを含み、
該インデックスに従って該XMLファイルを変換することにより該XMLファイルを凝縮されたバージョンのXMLファイルへと凝縮し、及び、
該一組のインデックス及び該圧縮されたバージョンのXMLファイルを含む変換されたファイルを生成する、方法。
【請求項２】
前記XMLファイルが、プリンティング材料コンテナに格納されているプリンティング材料のタイプに基づいてプリンタの動作を制御する命令を含む、請求項1に記載の方法。
【請求項３】
前記変換されたファイルを前記プリンティング材料コンテナに関連付けられたメモリに格納することを含む、請求項２に記載の方法。
【請求項４】
前記変換されたファイルを圧縮することを含む、請求項３に記載の方法。
【請求項５】
前記プリンタの動作を制御する前記命令が、該プリンタをクリーニングすること、該プリンタにサービスを提供すること、及び前記プリンティング材料を使用してプリントを行うことのうちの1つ以上を制御する、請求項２に記載の方法。
【請求項６】
前記XMLファイルが、XML構文の既知のサブセットを使用する、請求項1に記載の方法。
【請求項７】
前記タグの項、前記属性の項、及び前記値の項が、前記XMLファイル内の項の頻度に従ってそれぞれのインデックス内で順序付けされる、請求項1に記載の方法
【請求項８】
プリントコンテナであって、
プリント材料の供給源と、
プリント材料分配器と、
メモリとを備えており、
該メモリが、
XMLファイル内のタグの項の頻度に従って編成された、該XMLファイルからのタグの項のリストを含むタグインデックスと、
該XMLファイル内の属性の項の頻度に従って編成された、該Lファイルからの属性の項のリストを含む属性インデックスと、
該XMLファイル内の値の項の頻度に従って編成された、該XMLファイルからの値の項のリストを含む値インデックスと、
前記タグインデックス、前記属性インデックス、及び前記値インデックスに従って前記XMLファイルを変換することにより作成された、凝縮されたバージョンのXMLファイルと
を格納している、プリントコンテナ。
【請求項９】
該プリントコンテナが取り付けられたプリンタが、前記タグインデックス、前記属性インデックス、前記値インデックス、及び前記凝縮されたバージョンのXMLファイルを使用して前記XMLファイルを再作成する、請求項８に記載のプリントコンテナ。
【請求項１０】
前記再作成されたXMLファイルが、前記プリント材料、前記プリント材料分配器、及び前記プリントコンテナのうちの少なくとも1つに関連して前記プリンタの動作を制御する、請求項９に記載のプリントコンテナ。
【請求項１１】
前記タグインデックス、前記属性インデックス、前記値インデックス、及び前記凝縮されたバージョンのXMLファイルが、圧縮形式で前記メモリに格納される、請求項８に記載のプリントコンテナ。
【請求項１２】
プリント材料の供給源を有するプリントコンテナを受容する筐体と、
該プリントコンテナ上のメモリから、一組のインデックスと、該インデックスから作成された凝縮されたXMLファイルとを取得する、通信モジュールと、
該凝縮されたXMLファイルを前記一組のインデックスに従って変換することにより該凝縮されたXMLファイルから凝縮解除されたXMLファイルを生成する抽出モジュールと、
該凝縮解除されたXMLファイルから取り出された命令に従ってプリンタの動作を制御する制御モジュールと
を備えたプリンタ。
【請求項１３】
一組のデフォルト命令を格納したメモリを含み、及び前記制御モジュールが、前記凝縮解除されたXMLファイルが該デフォルト命令を変更するものである場合に、該凝縮解除されたXMLファイルから取り出した命令に従って該プリンタの動作を制御する、請求項１２に記載のプリンタ。
【請求項１４】
前記制御モジュールが、該プリンタの構成要素をクリーニングすること、前記プリンタの構成要素にサービスを提供すること、及び前記プリント材料を使用してプリントすることのうちの少なくとも1つを制御する、請求項１２に記載のプリンタ。
【請求項１５】
前記一組のインデックス及び前記凝縮されたXMLファイルを解凍する解凍モジュールを含む、請求項１２に記載のプリンタ。
【発明の詳細な説明】
【背景技術】
【０００１】
XML（extensible markup language）は、マシン及び人の両方により読むことができる形式でドキュメントをエンコードするために使用される。XMLでエンコードされたドキュメントは、それ自体ではコンピュータに何もさせないものとなることが多いが、該XMLドキュメントを解釈するよう設計されたアプリケーションと相まって、XMLドキュメントは、該アプリケーションに、特定の機能を実行させ、特定の情報を表示させ、特定の形式を使用させる、といったことが可能となる。その結果として、XML規格は、使用されている特定のデバイスに依存しない形式でアプリケーションとデバイスとの間の通信を容易化するよう開発されてきた。該規格は、特定の機能の実行をトリガするものとなる特定のキーワード又は「タグ」を指定することが可能である。次いで、かかる機能を該デバイス及び／又はアプリケーションにとって適した態様で該デバイス及び／又はアプリケーションにおいて実施することが可能となる。
【図面の簡単な説明】
【０００２】
【図１】XMLファイルの凝縮（condensing）に関する例示的なファイル及びデータ構造を示している。
【図２】XMLファイルの凝縮に関する例示的な処理のフローチャートを示している。
【図３】XMLファイルの凝縮に関する例示的な処理の別のフローチャートを示している。
【図４】XMLファイルの凝縮に関する例示的なプリントコンテナを示している。
【図５】XMLファイルの凝縮に関する例示的なプリンタを示している。
【図６】XMLファイルの凝縮に関する別の例示的なプリンタを示している。
【図７】例示的なシステム、方法、及びそれらと等価なものが動作することが可能な例示的なプリンタを示している。
【発明を実施するための形態】
【０００３】
本出願は、添付図面を参照して行う以下の詳細な説明に関して一層完全に理解されよう。同図全体にわたり、同様の符号は同様の構成要素を意味している。
【０００４】
XMLファイルの凝縮に関するシステム、方法、及びそれらと等価なものについて説明する。様々な実施形態において、利用可能なメモリを大量に有さないデバイス又はアイテムにXMLファイルを格納することが望ましい場合がある。かかるアイテムは、低コストとなるよう設計されている場合があり、それ故、かかるアイテムの製造コストに影響を与えることなく一層大きな記憶空間を含めることは現実的ではない。例えば、プリントコンテナ（例えば、インクカートリッジ）は、大衆市場商品であり、該プリントコンテナの価格設定は競争の激しいものであり、それ故、必要以上の空間を有するメモリリソースを採用することは無駄であり不必要に高価になり得る。
【０００５】
その結果として、プリントコンテナに格納されるXMLファイルは、該XMLファイルがメモリに与える影響を低減させるのを促進させるよう凝縮することが可能である。プリントコンテナがプリンタにインストールされているときにプリンタが該ファイルの凝縮を解除する（decondense）ために幾分か時間を要し得るが、この処理時間は、プリントに伴う時間の多くがプリンタの機械部品を動かすことを中心に展開することに鑑みれば、無視可能なものである。プリントコンテナを伴う実施形態について説明するが、本書で説明する技術は、他の分野及び／又は用途で使用することが可能である。
【０００６】
したがって、XMLファイルを格納するために該XMLファイルを凝縮する方法が開示される。 最終的には、XMLファイルは、XMLファイルの一組のインデックス及び該XMLファイルを凝縮したものとして格納することが可能である。該インデックスは、XMLファイルのテキストを３種類のインデックス（タグ、属性、及び値）に分割することにより作成することが可能である。次いで該インデックスに従ってXMLファイルを変換することが可能である。次いで、該インデックス及び凝縮されたXMLファイルは、例えば、プリントコンテナに格納することが可能である。 該プリントコンテナがプリンタに挿入されると、該プリンタは、該インデックスを使用して該凝縮されたXMLファイルを元のXMLファイルへと凝縮解除し、該プリンタが該XMLファイルを使用して該XMLファイルで記述されたアクションを実行することが可能となる。
【０００７】
図１は、XMLファイルの凝縮に関する例示的なファイル及びデータ構造を示している。図１に示すアイテムは例示的な実施形態であり、多くの異なるファイル、データ構造、XMLファイルの凝縮技術等が様々な実施形態に従って動作することが可能であることが理解されよう。図１はXMLファイル100を示している。該XMLファイル100は、11行L00〜L10を有するものとして示されている。ここで示すXMLファイル100は、タグ、属性、及び値という３つの要素タイプから構成されている。
【０００８】
本書で用いる場合、タグとは、一般に、実行されるアクションを定義する命令を指す。XMLファイル100において、例えば、<defaults>（デフォルト）、<spit ... />（spit：インク溜）、及び<routines>（ルーチン）は、タグの例である。タグは、他のネストされたタグを含むことが可能である。XMLファイル100では、２つのタグ構文が示されている。<defaults>タグは、行L00で開始し、クローズタグ</defaults>で行L10で終了し、<spit ... />タグは、同じ行で始まり及び終了している。。この例では、説明のため各タグを異なる行に示したが、複数のタグを同じ行に書くことが可能である。
【０００９】
タグは属性を含むことも可能である。XMLファイル100における「mode」（モード）、「frequency」（頻度）及び「granularity」（粒度）は、属性の例である。本書で用いる場合、タグの属性は、該タグによりトリガされる一意のアクションのパラメータを指定するために使用することが可能である。更に、属性には値を割り当てることが可能である。XMLファイル100において、「1」、「normal」（通常）及び「thermal_mode」（サーマルモード）は、値の例である。本書で用いる場合、値は、属性が修飾しているタグによりトリガされる一意のアクションのパラメータを指定するために該属性に関して使用することが可能である。例えば、<wiper-action .../>タグ（wiper-action：ワイパ動作）は、値「1」に設定された「speed」（速度）属性を有する。このように、<wiper-action .../>タグと共に「speed」属性を使用することにより、<wiper-action .../>タグに関連付けられたアクションの挙動を特定の態様にすることが可能となる。例えば、<wiper-action .../>タグは、プリンタに関連するワイパをオンにすることが可能であり、「speed」属性は、該ワイパを作動させる速度（この場合には「1」）を定義するために使用することが可能である。
【００１０】
上述した特定の凝縮及び圧縮技術を容易化するために、XMLファイル100が特定の既知の一組の構文を有することが望ましい場合がある。この一組の構文は、可能なXML構文のサブセットとすることが可能である。例えば、XMLは、スペース文字を含む値をサポートすることが可能であるが、XMLファイル100中の値がスペース文字ではなくアンダースコア又はダッシュを使用することが望ましい場合がある（例えば、行L03中の値「thermal_mode」、行L02中の値「action-defaults」（デフォルト動作））。構文のサブセットを使用すると、２つの異なる構文を有する２つのフレーズを同じ凝縮されたフレーズへと凝縮することによる衝突が存在しないことを確実にすることを容易にすることにより、XMLファイル100の凝縮、圧縮、解凍、及び凝縮解除を一層容易に及び／又は一層効率良く行うことが可能となる。
【００１１】
上述したように、XMLファイル100を凝縮された形式で格納することが望ましい場合がある。図示のXMLファイル100は、凝縮が不当となるほど短いものにし得るが、タグ、属性、及び値の一層多くの反復を含む一層詳細な命令を含む一層長いXMLファイルの場合には、凝縮が望ましい場合がある。XMLファイル100を凝縮するために、先ずインデックス110を作成することが可能である。これは、XMLファイル100中のタグ、属性、及び値を識別し、及びそれらを別個のカテゴリに分離することにより、達成することが可能である。ここで、XMLファイル100は、８個のタグと、５個の属性と、６個の値とを含む。様々な実施形態では、XMLファイル100の凝縮及び／又は後の圧縮パスを助けるために、タグの属性及び値を更にソートすることが望ましい場合がある。ここで、タグ、属性、及び値は、先ずそれらの項の頻度で、及び次いでアルファベット順にソートされる。例えば、属性「mode」は、行L03,L09に現れ、属性「frequency」は、行L03にのみ現れる。同様に、タグ<defaults>は、行L00,L10に現れ、タグ<progress ... />（progress：進行）は、行L08にのみ現れる。
【００１２】
タグ、属性、及び値のインデックスを作成する１つの方法を示したが、その代わりに他の方法を使用することが可能である。例えば、インデックス110では、タグ、属性、及び値はすべて、同じ範囲のインデックス番号1〜8を使用している。別の実施形態では、代替的に、タグ、属性、及び値にそれぞれ重複しないインデックス範囲が割り当てられるようにインデックスを設計することが可能である。 他のインデックス割り当てを行うことが適当となる場合もある。
【００１３】
インデックス110が作成されると、該インデックスのエンコードされたインデックス115へのエンコーディング、及びXMLファイル100の凝縮されたXMLファイル120への凝縮を開始することが可能である。図１には、エンコードされたインデックス115の１つの可能なバージョンが示されている。角括弧で囲んだアイテムは、インデックス110の複数の構成要素間の分離を示すために使用されるエンコードされたインデックス115内の特殊な識別子を表すことが可能なものである。一実施形態では、該分離を示すセパレータは、例えば、スペース、句読点、組み合わせ、既知の値といった文字とすることが可能である。例示的なエンコードされたインデックス115では、５個のセパレータ、すなわち、タグインデックスの開始を示す[tag_start]（タグ開始）、属性インデックスの開始を示す[attribute_start]（属性開始）、値インデックスの開始を示す[value_start]（値開始）、インデックス110の構成要素間の分離を示す[separator]（セパレータ）、及びエンコードされたインデックス115の終わりを示す[index_end]（インデックス終了）が使用される。エンコードされたインデックス115及び凝縮されたXMLファイル120が単一のアイテムとして格納される場合には、セパレータ[index_end]はまた、凝縮されたXMLファイル120の開始を示すことが可能である。更に、該セパレータの幾つかを、同一の特殊な識別子により表すことが可能である。
【００１４】
上述したように、図示した例示的なインデックス110では、タグ、属性、及び値のそれぞれが同じインデックス範囲を使用し、そのインデックス範囲は既知の値から始まる。 したがって、エンコードされたインデックス115は、該エンコードされたインデックス115内のタグ、属性、及びキーのインデックス値を識別する必要がない。代替的に、この情報を、凝縮されたXMLファイル120の凝縮解除を行うプロセスの一部として再構築することが可能である。タグ、属性、及び値に様々なインデックスが割り当てられる実施形態では、前記情報をエンコードされたインデックス115内に格納することも可能である。
【００１５】
凝縮されたXMLファイル120を作成するために、インデックス110に従ってXMLファイル100を変換することが可能である。ここで、XMLファイル100は、凝縮されたXMLファイル120内の文字の各対（例えば、「T2」）が該XMLファイル100の特定のタグ、属性、又は値に対応するように変換される。この対応は、インデックス110を調べることにより理解することが可能である。具体的には、最初の<defaults>タグは、インデックス110においてインデックス2を有するものとして識別される。このため、凝縮されたXMLファイル120の最初のT2は、XMLファイル100における最初の<defaults>タグに対応する。これは、該T2が、インデックス110における（Tで示す）タグ番号2であるからである。同様に、XMLファイル100の行L03からのフレーズ<spit frequency="6000" mode="thermal_mode"/>は、凝縮されたXMLファイル120の第１行及び第２行にわたる「T7 A2 V2 A1 V6 TE」と読める部分に対応する。凝縮されたXMLファイル120及びエンコードされたインデックス115は、様々な目的を果たすことができる追加の記号を含めて、かかるアイテムが作成される態様に応じて一層多くの又は一層少ない文字を有することが可能である、ということは留意する価値がある。
【００１６】
この例示的なバージョンの凝縮されたXMLファイル120では、タグの終わりを示す特殊記号が使用される。 「TE」として表されるこの記号は、凝縮されたXMLファイル120を解釈するアプリケーションに対して、ここで最も最近に開いたタグを閉じるべきことを示すために使用される。 例えば、凝縮されたXMLファイル120中の一番最後の「TE」は、XMLファイル100の行L10の</defaults>タグのクローズに対応する。様々な実施形態において、TEタグの使用は望ましいものとなり、これは、文字の反復が多いほど特定の形式の圧縮が一層効率的になるからである。 これはまた、項の頻度でタグインデックスをソートする理由でもあり、同じインデックスの使用率が高くなると圧縮効率を一層向上させることができるからである。
【００１７】
結果的に、XMLファイル100は、エンコードされたインデックス115及び凝縮されたXMLファイル120へと凝縮され（それらの組み合わせを変換されたファイルと称す）、該変換されたファイルは、圧縮技術を使用することにより更にそのサイズを縮小することが可能である。どの圧縮技術を使用するかは、エンコードされたインデックス115及び凝縮されたXMLファイル120が作成される態様によって決まり、これは、それらアイテムの作成が、特定のデータ圧縮技術にとって最適となるように設計することが可能であるからである。
【００１８】
変換されたファイルが更に圧縮されたか否かにかかわらず、該変換されたファイルは、次いでXMLファイル100が関連付けられているアイテムのメモリに格納される。この種のXMLファイル100の凝縮が望ましいものとなり得る１つの例示的なアイテムは、プリント材料の供給源を収容したプリントコンテナである。該プリント材料及び／又はプリントコンテナは、特定のタイプのプリンタで動作するよう設計することが可能なものである。 該プリンタは、家庭用またはオフィス用に設計されたデスクトッププリンタ、１時間当たり何千ものアイテムを出力することができる工業規模のプリンタ等といった、２次元プリンタとすることが可能である。該プリンタは、３次元プリンタとすることも可能である。 上述のように、XMLファイルの凝縮を伴うそれら手法は、プリンティング業界以外で適用することも可能である。
【００１９】
前記プリントコンテナに関連するプリンタのタイプに応じて、前記プリント材料は、インク、トナー、洗浄液、３Ｄプリンタ用の造形材料等を含むことが可能である。このため、この実施形態では、XMLファイル100は、プリンタコンテナが取り付けられるプリンタのための命令を含むことが可能である。かかる命令は、プリント材料を使用して効率的に動作する方法をプリンタに指示することが可能である。したがって、かかる命令は、プリンタをクリーニングすること、プリンタにその他のサービスを提供すること、プリント材料を使用したプリントを行うこと等に関するものとすることが可能である。このようにして、他の情報（例えば、セキュリティ情報、一般的な更新情報）をプリンタに伝えることが可能である。
【００２０】
プリントコンテナがプリンタ内に取り付けられると、該プリンタは、該プリントコンテナのメモリから変換されたファイルを取り出し、該変換されたファイルの凝縮解除を行ってXMLファイル100に戻す。該ファイルが解凍される方法は、使用された圧縮技術によって決まる。該変換されたファイルの凝縮解除は、凝縮されたXMLファイルの作成と逆の操作を行うことが可能である。構文は、既知の一組の構文に限定されるので、XMLファイル100は、凝縮されたXMLファイル120内のタグ、属性、及び値の特定の順序に基づいて構文を記入していくことにより再作成することが可能である。変換されたファイルをXMLファイル100へと凝縮解除した後、プリンタは、次いで前記命令を使用して、該XMLファイル100により記述された機能を実行する（例えば、プリンタをクリーニングする、プリンタにサービスを提供する、プリントコンテナ内の材料を使用してプリントを行う）ことが可能である。
【００２１】
実施形態によっては、変換されたファイルを解凍し及び凝縮解除してXMLファイル100に戻した後、プリンタは、該XMLファイル100からの命令を、一組の格納された命令と組み合わせることが可能である。 かかる格納された命令は、該XMLファイル100等のXMLファイルからの命令により上書きされない限り、どのプリント材料が組み込まれているかにかかわらず、該プリンタが使用することができる一組のデフォルト命令とすることが可能である。
【００２２】
以下の説明では、本実施形態の完全な理解を提供するために多数の具体的な詳細が記載されていることが理解されよう。しかし、本実施例は、かかる特定の詳細に限定されることなく実施することが可能であることが理解されよう。実施形態によっては、該実施形態の説明を不必要に不明瞭にすることを回避するために、方法及び構造について詳細に説明しない。また、かかる複数の実施形態は、互いに組み合わせて用いることが可能である。
【００２３】
本書で用いる場合、「モジュール」とは、ハードウェア、ファームウェア、コンピュータ読み出し可能媒体に格納されたソフトウェア、又はマシン上で実行されるソフトウェア、及び／又はそれらの各々の組み合わせであって、1つ以上の機能又は1つ以上のアクションを実行するため、及び／又は別のモジュール、方法、及び／又はシステムからの機能又は動作を生じさせるための該組み合わせを含む（但し、それらには限定されない）。モジュールは、ソフトウェア制御式マイクロプロセッサ、ディスクリートモジュール、アナログ回路、ディジタル回路、プログラムされたモジュールデバイス、命令を含むメモリデバイス等を含むことが可能である。モジュールは、ゲート、複数のゲートの組み合わせ、又はその他の回路要素を含むことが可能である。 複数の論理モジュールについて説明する場合、該複数の論理モジュールを1つの物理モジュールに組み込むことが可能である。同様に、単一の論理モジュールについて説明する場合、該単一の論理モジュールを複数の物理モジュール間で分配することが可能である。
【００２４】
図２は、XMLファイルの凝縮に関連する例示的な方法200を示している。 方法200は、プロセッサにより実行することが可能な命令を格納する非一時的なコンピュータ読み取り可能媒体で実施することが可能である。該命令は、プロセッサにより実行された際に、該プロセッサに方法200を実行させることが可能である。別の実施形態では、方法200は、特定用途向け集積回路の論理ゲート及び／又はRAM内に存在することが可能である。
【００２５】
方法200は、アクション210で、XMLファイルからインデックスを生成することを含む。様々な実施形態において、該XMLファイルは、プリンタの動作を制御する命令を含むことが可能である。該XMLファイルは、プリンティング材料コンテナ（例えば、インクカートリッジ）に格納されたプリンティング材料のタイプに基づいてプリンタの動作を制御する命令を含むことが可能である。例えば、異なる材料は、異なる態様でプリンタの構成要素に影響を与え、かかる構成要素に異なるメンテナンスの必要性を生じさせるものとなる。このため、特定のプリント材料を格納するプリントコンテナに関連付けられたXMLファイルは、該特定のプリント材料に適した（メンテナンス機能を含む）様々な機能を実行するようプリンタを制御することが可能である。該XMLファイルは、例えば、プリンタのクリーニング、プリンタのサービス、プリンティング材料を使用したプリント等に関連する他の命令を含むことも可能である。
【００２６】
一組のインデックスは、タグインデックス、属性インデックス、及び値インデックスを含む幾つかのインデックスを含むことが可能である。タグインデックスは、XMLファイル内で使用されるタグの項を索引付けすることが可能である。属性インデックスは、XMLファイル内の属性の項を索引付けすることが可能である。値インデックスは、XMLファイル内の値の項を索引付けすることが可能である。実施形態によっては、タグインデックス、属性インデックス、及び値インデックス内の各項は、XMLファイル内のそれら項の頻度に従って、それぞれのインデックス内で順序付けすることが可能である。特定の圧縮技術は、より多くの項が繰り返されるほど、一層高い圧縮率を達成するので、項の頻度に従ってインデックスを順序付けするのが望ましい場合がある。したがって、インデックスの範囲が重複する場合、それらインデックスを繰り返し使用することは、一層高い圧縮率の実現に資するものとなる。
【００２７】
様々な実施形態において、XMLファイルは、プリンタの動作を制御する命令を含むことが可能である。 XMLファイルは、プリンティング材料コンテナ（例えば、インクカートリッジ）に格納されたプリンティング材料のタイプに基づいてプリンタの動作を制御する命令を含むことが可能である。例えば、異なる材料は、プリンタの構成要素に異なる態様で影響を与え、かかる構成要素に異なるメンテナンスの必要性を生じさせ得るものとなる。このため、特定のプリント材料を格納するプリントコンテナに関連付けられたXMLファイルは、該特定のプリント材料に適した（メンテナンス機能を含む）様々な機能を実行するようプリンタを制御することが可能である。該XMLファイルは、例えば、プリンタのクリーニング、プリンタのサービス、プリンティング材料を使用したプリント等に関連する他の命令を含むことも可能である。
【００２８】
方法200はまた、アクション220で、XMLファイルを凝縮して凝縮されたバージョンのXMLファイルにすることを含む。該凝縮されたバージョンのXMLファイルは、インデックスに従ってXMLファイルを変換することにより凝縮することが可能である。実施形態によっては、アクション210でのインデックスの作成、アクション220でのXMLファイルの凝縮、及び後のXMLファイルの考え得る凝縮解除を容易化するために、XMLファイルは、XML構文の既知のサブセットを使用することが可能である。かかる構文は、例えば、任意の所与の２つの異なるXMLステートメントについて、凝縮されたバージョンのかかる２つのステートメントが異なるように、予め選択することが可能である。同様に、該構文は、任意の所与の２つの異なる凝縮されたステートメントについて、凝縮解除されたバージョンのかかるステートメントもまた異なるものとなるように選択することも可能である。
【００２９】
方法200はまた、変換されたファイルを生成することを含む。該変換されたファイルは、アクション210で作成された一組のインデックスと、アクション220で作成された凝縮されたバージョンのXMLファイルとから構成することが可能である。例えば、該変換されたファイルを作成するために、該インデックス及び該凝縮されたバージョンのXMLファイルを連結して単一のファイルにすることが可能である。
【００３０】
図３は、XMLファイルの凝縮に関する方法300を示している。方法300は、方法200（図２）に関して上述したものと同様の幾つかのアクションを含む。 例えば、方法300は、アクション310でXMLファイルから一組のインデックスを生成し、アクション320でXMLファイルを凝縮して凝縮されたバージョンのXMLファイルにし、及びアクション330で前記一組のインデックスと前記凝縮されたバージョンのXMLファイルとを含む変換されたファイルを生成することを含む。
【００３１】
方法300はまた、アクション340で、前記変換されたファイルを圧縮することを含む。該変換されたファイルの圧縮は、該変換されたファイルの合計ファイルサイズを更に縮小させることが可能である。方法300はまた、アクション350で、該変換されたファイルをメモリに格納することを含む。プリンティング材料に関連してプリンタの動作を制御する命令をXMLファイルが含む実施形態では、前記変換されたファイルは、プリンティング材料の供給源を保持するプリンティング材料コンテナのメモリに格納することが可能である。これにより、かかる情報をプリンタ自体に格納することなく、様々なプリンティング材料を使用するようにプリンタを具体的に構成することが可能となる。これは、例えば、新しいプリンティング材料を使用するようプリンタを構成する、プリンタ内のメモリ空間を節約する、といった場合に望ましいものとなる。
【００３２】
図４は、XMLファイルの凝縮に関連するプリントコンテナ400を示している。プリントコンテナ400は、プリント材料410の供給源を含む。プリント材料410は、例えば、インク、洗浄液等とすることが可能である。プリントコンテナ400はまた、プリント材料分配器420を含む。プリント材料分配器420は、プリントコンテナ400が挿入されるプリンタがどのように動作するように設計されているかに応じて多くの形態を取ることが可能である。例えば、プリンタがプリンタコンテナ400からプリント材料を引き出して別の場所のプリント媒体上に噴出する場合には、プリント材料分配器420は、プリントコンテナ400からプリント材料410を引き出すプリンタの機構と連絡することが可能である。代替的に、プリントコンテナが、プリント媒体上にプリント材料410を直接噴出するよう設計されたカートリッジである場合には、プリント材料分配器420は、プリント材料410を直接分配することが可能である。
【００３３】
プリントコンテナはまた、メモリ430を含む。メモリ430は、タグインデックス432を含む。タグインデックス432は、XMLファイルからのタグの項のリストを含むことが可能である。タグの項は、XMLファイル内のタグの項の頻度に従って編成することが可能である。メモリ430は、属性インデックス434も含む。属性インデックス434は、XMLファイルからの属性の項のリストを含むことが可能である。属性の項は、XMLファイル内の属性の項の頻度に従って属性インデックス434内で編成することが可能である。メモリ430はまた、値インデックス436を含む。値インデックス436は、XMLファイルからの値の項のリストを含むことが可能である。値の項は、XMLファイル内の値の項の頻度に従って値インデックス436内で編成することが可能である。
【００３４】
メモリ430はまた、凝縮されたXMLファイル438を含む。凝縮されたバージョンのXMLファイル438は、タグインデックス、属性インデックス、及び値インデックスに従ってXMLファイルを変換することにより作成することが可能である。実施形態によっては、タグインデックス432、属性インデックス434、値インデックス436、及び凝縮されたXMLファイル438は、圧縮形式でメモリ430に格納することが可能である。 様々な実施形態において、プリントコンテナ400が挿入されるプリンタは、タグインデックス、属性インデックス、値インデックス、及び凝縮されたバージョンのXMLファイルを使用して、XMLファイルを再作成することが可能である。その結果として、該再作成されたXMLファイルは、プリント材料410、プリントコンテナ400、プリント材料分配器420等のうちの1つ以上に関連してプリンタの動作を制御することが可能である。
【００３５】
図５は、XMLファイルの凝縮に関連するプリンタ500を示している。プリンタ500は、筐体510を含む。筐体510は、プリント材料の供給源を有するプリントコンテナ599を受容することが可能である。プリント材料は、例えば、インク、トナー、洗浄液等とすることが可能である。
【００３６】
プリンタ500はまた、通信モジュール520を含む。通信モジュール520は、プリントコンテナ599から一組のインデックス及び凝縮されたXMLファイルを取得することが可能である。該凝縮されたXMLファイルは、該一組のインデックス並びにプリントコンテナ599上に格納されていない元のXMLファイルから作成されたものとすることが可能である。様々な実施形態において、通信モジュール520は、該一組のインデックス及び凝縮されたXMLファイルをプリントコンテナ599上のメモリから取り出すことが可能である。その結果として、この実施形態では、筐体510及びプリントコンテナ599は、通信モジュール520とプリントコンテナ599上のメモリとの間の通信を容易にするための適当な電子的な接続手段を含むことが可能である。
【００３７】
プリンタ500はまた、抽出モジュール530を含む。抽出モジュール530は、凝縮解除されたXMLファイルを生成することが可能である。 凝縮解除されたXMLファイルは、凝縮されたXMLファイルを一組のインデックスに従って変換することにより生成することが可能である。
【００３８】
プリンタ500はまた、制御モジュール540を含む。制御モジュール540は、凝縮解除されたXMLファイルから取り出された命令に従ってプリンタ500の動作を制御することが可能である。 様々な実施形態において、制御モジュール540は、プリンタの構成要素のクリーニング、プリンタの構成要素のサービス、プリントコンテナ599に含まれるプリント材料を使用したプリント等のうちの1つ以上を制御することが可能である。
【００３９】
図６は、XMLファイルの凝縮に関連するプリンタ600を示している。プリンタ600は、プリンタ500に関して上述したものと同様の幾つかのアイテムを含む。例えば、プリンタ600は、プリント材料の供給源を有するプリントコンテナ699を受容する筐体610、通信モジュール620、抽出モジュール630、及び制御モジュール640を含む。
【００４０】
プリンタ600はまた、解凍モジュール650を含む。解凍モジュール650は、一組のインデックス及び凝縮されたXMLファイルを解凍することが可能である。該凝縮されたXMLファイル及び該インデックスの解凍は、それらアイテムが、プリントコンテナ699上に格納されるデータの量を更に縮小させるために圧縮形式で該プリントコンテナ699のメモリ上に格納されている場合に実行することが可能である。
【００４１】
プリンタ600はまた、メモリ660を含む。メモリ660は、一組のデフォルト命令を格納することが可能である。 その結果として、制御モジュール640は、凝縮解除されたXMLファイルがデフォルト命令を変更するものである場合に、該凝縮解除されたXMLファイルから取り出された命令に従ってプリンタの動作を制御することが可能となる。上述したように、該プリンタの動作は、プリンタのクリーニング、プリンタのサービス、プリント材料を使用したプリント等に関するものとすることが可能である。
【００４２】
図７は、例示的なシステム及び方法並びにその等価物が動作することが可能な例示的なコンピュータを示している。該例示的なコンピュータは、バス730により接続されたプロセッサ710及びメモリ720等の構成要素を含むことが可能である。コンピュータ700はまた、XMLファイル凝縮モジュール740を含む。該XMLファイル凝縮モジュール740は、それ単独で又は他の構成要素との組み合わせにより、上記の例示的なシステム、方法、装置等に関して上述した様々な機能を実行することが可能である。様々な実施形態において、XMLファイル凝縮モジュール740は、プロセッサ実行可能命令を格納した非一時的なコンピュータ読み取り可能媒体として、ハードウェア、ソフトウェア、ファームウェア、特定用途向け集積回路、及び／又はそれらの組み合わせで、実施することが可能である。
【００４３】
該命令は、メモリ720に一時的に格納され、次いでプロセッサ710により実行される、データ750及び／又はプロセス760としてコンピュータ700に提示することが可能である。プロセッサ710は、デュアルマイクロプロセッサその他のマルチプロセッサアーキテクチャを含む様々なプロセッサとすることが可能である。メモリ720は、不揮発性メモリ（例えば、ROM）及び／又は揮発性メモリ（例えば、RAM）を含むことが可能である。 メモリ720はまた、例えば、磁気ディスクドライブ、ソリッドステートディスクドライブ、フロッピーディスクドライブ、テープドライブ、フラッシュメモリカード、光ディスク等とすることが可能である。このため、メモリ720は、プロセス760及び／又はデータ750を格納することが可能である。コンピュータ700はまた、コンピュータ、プリンタ、周辺機器等を含む他のデバイスに多数の構成（図示せず）で関連付けることが可能である。
【００４４】
本開示の実施形態に関する上記説明は、当業者が本開示を作成し又は使用することを可能にするために提供されたものであることが理解されよう。これら実施形態に対する様々な修正は、当業者には自明のものであり、本書で定義した一般的な原理は、本開示の思想又は範囲から逸脱することなく他の実施形態に適用することが可能である。したがって、本開示は、本書に示した実施形態に限定することを意図したものではなく、本書で開示した原理及び新規な特徴と一致する最も広い範囲が認められるべきである。
【図１】
2019506652.tif 000003
【図２】
2019506652.tif 000004
【図３】
2019506652.tif 000005
【図４】
2019506652.tif 000006
【図５】
2019506652.tif 000007
【図６】
2019506652.tif 000008
【図７】
2019506652.tif 000009
【国際調査報告】
2019506652.tif 000010
2019506652.tif 000011