(57)【特許請求の範囲】
【請求項１】
印刷物を作成する方法であって、
メモリ内に少なくとも１つのファイルを第１のデータフォーマットで格納し、当該ファイルは少なくとも、印刷物を作成する当該方法に関する情報を含んでおり、
前記ファイルを、コンピューターのワーキングメモリ内の表現に復号化し、前記第１のデータフォーマットは少なくとも２つの記憶領域を有しており、
前記第１のデータフォーマットの前記少なくとも２つの記憶領域のうちの第１の記憶領域は、使用されるべきステップおよび／または印刷プロセスの材料および／または印刷物の材料に対する属性を備えており、
前記表現も少なくとも２つの記憶領域を有しており、少なくとも前記表現の前記少なくとも２つの記憶領域のうちの第１の記憶領域のデータは実質的に、前記第１のデータフォーマットの前記少なくとも２つの記憶領域のうちの前記第１の記憶領域のデータと同一であり、
前記ワーキングメモリ内の表現のデータに対して少なくとも１つの操作を行い、当該操作に依存して、前記表現のデータを変え、前記表現の前記データから再び、前記第１のデータフォーマットのデータを符号化し、
前記第１のデータフォーマットのデータを、ファイルまたはデータストリームとして、印刷物または刷版を処理または加工する少なくとも１つの処理装置に伝送し、このようにして変えられた当該データに基づいて、印刷物、印刷物の処理若しくは加工または刷版の処理若しくは加工を調整し、次に当該調整を用いて印刷物を作成する、
ことを特徴とする、印刷物を作成する方法。
【請求項２】
実質的に同一である、前記第１のデータフォーマットの前記少なくとも２つの記憶領域のうちの前記第１の記憶領域と、前記表現の前記少なくとも２つの記憶領域のうちの前記第１の記憶領域とは、少なくとも同じノードおよび属性インデックスを有する、請求項１記載の方法。
【請求項３】
実質的に同一である、前記第１のデータフォーマットの前記少なくとも２つの記憶領域のうちの前記第１の記憶領域と、前記表現の前記少なくとも２つの記憶領域のうちの前記第１の記憶領域とは、各データを同一の形態で有しており、前記ワーキングメモリ内に第１のデータフォーマットのデータを読み込む際に、当該実質的に同一の、前記第１のデータフォーマットの前記少なくとも２つの記憶領域のうちの前記第１の記憶領域と、前記表現の前記少なくとも２つの記憶領域のうちの前記第１の記憶領域とのデータの変換を行わない、請求項１または２記載の方法。
【請求項４】
前記第１のデータフォーマットの前記少なくとも２つの記憶領域のうちの前記第１の記憶領域のデータのデジタル表示およびワーキングメモリ内の表現の前記少なくとも２つの記憶領域のうちの前記第１の記憶領域のデータのデジタル表示をビット毎に、一致して、第１のデータフォーマットからワーキングメモリ内の表現へ、またはその逆で読み出すおよび書き込む、請求項３記載の方法。
【請求項５】
第１のデータフォーマットの少なくとも１つの第２の記憶領域を準備し、当該第２の記憶領域内に、前記ワーキングメモリ内の前記表現の第２の記憶領域内と同じ構造でデータを供給し、第１のデータフォーマットの少なくとも１つの第３の記憶領域および／または前記表現の少なくとも１つの第３の記憶領域を準備し、
当該第３の記憶領域は、前記第１のデータフォーマットのバイナリー属性データを変換するための辞書を含んでおり、当該辞書によって、前記第１のデータフォーマットの第２の記憶領域のバイナリー属性データを、前記表現の第２の記憶領域の高次のプログラミング言語のオブジェクトに変換する、請求項１記載の方法。
【請求項６】
前記第１のデータフォーマットの第２の記憶領域の個別値のみを、前記第３の記憶領域の辞書のストリングによって置換し、その他の点では、第１のデータフォーマットの前記第２の記憶領域の構造と、前記ワーキングメモリ内の表現の前記第２の記憶領域の構造は同一である、請求項５記載の方法。
【請求項７】
前記第１のデータフォーマットをＸＭＬ文体、有利にはＪＤＦフォーマットから作成し、
相応するＪＤＦファイルのデータまたはＸＭＬ文体のファイルのデータを、第１のコンピューターのワーキングメモリ内の表現に変換し、
前記表現の前記少なくとも２つの記憶領域のうちの前記第１の記憶領域を、ビット毎に、前記第１のデータフォーマットのデータと同一に構成し、
少なくとも前記表現の前記少なくとも２つの記憶領域のうちの前記第１の記憶領域をビット毎に、前記第１のデータフォーマットの前記少なくとも２つの記憶領域のうちの前記第１の記憶領域内に同一にコピーすることによって、前記第１のデータフォーマットを符号化する、請求項１記載の方法。
【請求項８】
前記ＪＤＦファイルの冗長的な属性セット（属性マップ）を一度だけ、前記ワーキングメモリ内の表現の第１または第２の記憶領域内に格納し、前記表現の第３の記憶領域内の辞書を参照し、ここで有利には主に前記属性セットの冗長性を解決する、請求項７記載の方法。
【請求項９】
前記第１のデータフォーマットをネットワークまたは記憶媒体を介して第２のコンピューターに伝送し、
前記第１のデータフォーマットのデータを前記第２のコンピューターのワーキングメモリ内の表現に復号化し、ここで少なくとも、前記第１のデータフォーマットの前記少なくとも２つの記憶領域のうちの前記第１の記憶領域内のデータをビット毎に、同一に、前記第２のコンピューターのワーキングメモリ内の表現の前記少なくとも２つの記憶領域のうちの前記第１の記憶領域内にコピーする、
または択一的に、第１のデータフォーマットに基づいて、第１のコンピューターのワーキングメモリ内の新たに表現を作成し、ここで少なくとも、前記第１のデータフォーマットの前記少なくとも２つの記憶領域のうちの第１の記憶領域のデータをビット毎に、同一に前記表現の前記少なくとも２つの記憶領域のうちの前記第１の記憶領域内にコピーし、
前記第１または第２のコンピューターのワーキングメモリの各表現のデータに操作を行い、当該操作を考慮して、印刷機械、印刷前段階装置または印刷処理装置を用いて印刷物を作成または操作する、請求項７記載の方法。
【請求項１０】
請求項１から９までの少なくとも１項記載の方法を実施するためのコンピュータープログラムを有する記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷物を作成する方法に関する。ここではメモリ内に少なくとも１つのファイルが第１のデータフォーマットの形で格納されている。このファイルは少なくとも、印刷物を作成する当該方法に関する情報を含んでいる。このファイルは、コンピューターのワーキングメモリ内で１つの表現に（in eine Repraesentation）復号化される。ワーキングメモリ内でこの表現に少なくとも１つの操作が加えられる。従ってワーキングメモリ内でこの表現のデータが変えられ、この表現のデータから再び、データフォーマットのデータが符号化され、このようにして変えられたデータに基づいて、印刷物、印刷物の処理または加工または刷版の処理または加工が調整され、最終的に印刷物がこの調整を用いて作成される。
【背景技術】
【０００２】
グラフィック産業においては、印刷物を作成するために、それぞれ少なくとも１つのデータセットが作成される。これは殊に、印刷物自体に対する刷版を含んでいる。このデータセットは、ＸＭＬ等のマークアップ言語（マークアップランゲージ  ＭＬ）で格納されている。印刷物を作成するための近年のワークフローでは、特別なマークアップ言語として、印刷産業では一般的であり、かつＣＩＰ４コンソーシアムによって標準化された言語ないしは相応するデータフォーマットＪＤＦが使用されている。
【０００３】
このデータフォーマット内には、個別に印刷物で行われる動作ステップをあらわすパラメータが、このために事前に定められている箇所に格納される。このファイルは次に、印刷物を作成するために、経営情報システム（ＭＩＳ）によって、さらなる加工ステーションに転送される。これは例えば刷版露光器等の印刷前段階のステーション、印刷機械自体または印刷機の後に配置されている折り装置である。このデータフォーマットＪＤＦによって、相応の情報が放射状にＭＩＳから個々の動作ステーションへと交換される、またはワーキングステーション自体の間でも交換される。
【０００４】
ＭＩＳまたは個別のワーキングステーションはコンピューターを有している。これはワーキングメモリを有しており、このワーキングメモリ内でこれらのファイルが１つの表現の形に復号化される。
【０００５】
コンピューター内でこれらのファイルを加工するために、これらは中央ネットワークメモリから、またはコンピューター自体のローカルメモリから呼び出される、またはコンピューターに送信される。
【０００６】
ＸＭＬデータ、すなわちＪＤＦはここでファイルとして格納される。これらのデータは種々のインタフェース、プロトコールまたはプログラムを用いて、コンピューターのワーキングメモリ内に読み込まれる。すなわち復号化される。このために、ＳＡＸ（Simple API for XML）、ＳｔＡＸ（Streaming API for XML）またはＤＯＭ−Ｐａｒｓｅｒ（Ducument Object Model）等の方法またはＡＰＩｓが使用される。
【０００７】
情報はＸＭＬからピックアップされる、またはワーキングメモリ内でオブジェクトモデルがオブジェクト指向プログラミング言語、例えばＪＡＶＡで作成される。
【０００８】
ＸＭＬファイルまたはＪＤＦファイルの大きさを低減するために、これらのデータを圧縮するおよび圧縮解除する方法が知られている。これには例えばＦａｓｔ  ＩｎｆｏｓｅｔおよびＥＦＦＩＣＩＥＮＴ  ＸＭＬ（ＥＸＩ）が挙げられる。ここではエレメントがＸＭＬから自身の存在する順番で格納される。これはノード、属性、テキスト、コメント、ネームスペースおよび制御符号である。これらの個々の要素は、次に既知の方法によって圧縮される。この圧縮時には、格納されている個別構成部分のクリアテキストを元来の情報と分けて格納するために、１つまたは複数の辞書が使用される。ＸＭＬファイルだけに特化されない別の方法は、通常のデータ圧縮方法であり、これは例えばＧＺＩＰ（ＧＮＵ−ＺＩＰ）等のプログラムによって使用される。
【０００９】
ＸＭＬファイルまたはＪＤＦファイルを、印刷物を作成する方法において、コンピューターのワーキングメモリ内で表現として表すために、これらのファイルは、提案された方法によって通常はまずＤＯＭツリーに変換されなければならない。これはこのファイルが更に処理される前に行われる。この変換には非常に時間がかかり、かつＤＯＭツリーはこの際に非常に多くのメモリを必要とする。さらに個々の処理ステップも、ＤＯＭツリーに基づいて、比較的緩慢に実行される。これによって、コンピューターのワーキングメモリ内での表現におけるＸＭＬデータの処理が、ユーザーにとって非常に緩慢に映る。殊に、既知のＡＰＩｓおよび方法を用いたこの復号化方法には非常に時間がかかる。
【００１０】
このような時間のかかる方法によって、印刷物または刷版または印刷された被印刷材料の作成が開始されるまでの時間期間が長くなってしまう。
【発明の概要】
【発明が解決しようとする課題】
【００１１】
従って本発明の課題は、上述の欠点を、少なくとも低減することである。
【課題を解決するための手段】
【００１２】
上述の課題は、
印刷物を作成する方法であって、
メモリ内に少なくとも１つのファイルを第１のデータフォーマットで格納し、当該ファイルは少なくとも、印刷物を作成する当該方法に関する情報を含んでおり、
前記ファイルを、コンピューターのワーキングメモリ内の表現に復号化し、前記第１のデータフォーマットは少なくとも２つの記憶領域を有しており、
第１の記憶領域は、使用されるべきステップおよび／または印刷プロセスの材料および／または印刷物の材料に対する属性を備えており、
前記表現も少なくとも２つの記憶領域を有しており、少なくとも前記表現の第１の記憶領域のデータは実質的に、前記第１のデータフォーマットのファイルの少なくとも１つの第１の記憶領域のデータと同一であり、
前記ワーキングメモリ内の表現のデータに対して少なくとも１つの操作を行い、当該操作に依存して、前記表現のデータを変え、前記表現の前記データから再び、前記データフォーマットのデータを符号化し、
前記データフォーマットのデータを、ファイルまたはデータストリームとして、印刷物または刷版を処理または加工する少なくとも１つの処理装置に伝送し、このようにして変えられた当該データに基づいて、印刷物、印刷物の処理若しくは加工または刷版の処理若しくは加工を調整し、次に当該調整を用いて印刷物を作成する、ことを特徴とする、印刷物を作成する方法によって解決される。
【発明を実施するための形態】
【００１３】
ここではまずは、ファイルが第１のデータフォーマットで、メモリ内に格納される。このメモリは不揮発性メモリ、例えばハードディスクメモリである。ファイルが別の、離れた計算器またはメモリからコンピューターに送信される場合には、択一的にこれがデータストリームであってもよい。
【００１４】
このファイルは少なくとも、印刷物を作成するためのこの方法に対する情報を含んでいる。この情報は例えば、使用される印刷ウェブ、使用されるべき色、または印刷される被印刷材料上で用いられるべきさらなる処理ステップである。
【００１５】
このファイルは方法に従って、コンピューターのワーキングメモリにおいて１つの表現に復号化される。このファイルのデータフォーマットは、少なくとも２つの記憶領域を有している。ここで第１の記憶領域は、使用されるべきないしは利用されるべきステップおよび／または印刷物の材料に対する属性および／または印刷物自体に関する属性を含んでいる。
【００１６】
本発明では、ワーキングメモリにおけるこの表現自体も少なくとも２つの記憶領域を有する。ここで少なくとも、この表現の第１の記憶領域のデータは、実質的に、メモリ内の第１のデータフォーマットのファイルの少なくとも第１の記憶領域のデータと同一である。
【００１７】
ワーキングメモリ内の表現のデータに対して、少なくとも１つの操作が用いられる。この操作に依存して、次に、ワーキングメモリ内の表現のデータが変えられる。表現のこの変更されたデータに基づいて、新たに、ファイルが第１のデータフォーマットに符号化される。
【００１８】
この操作は例えば、版、使用される印刷材料、折りスキーム、レイアウト等の変更である。
【００１９】
第１のフォーマットのこの変更されたデータは、少なくとも１つの処理装置に、印刷物または刷版の処理または加工のために伝送される。この伝送はデータストリームとして、例えば、イントラネットまたはインターネットを介して行われる、または、データ担体またはサーバー上へのファイル自体の緩衝記憶によっても行われる。
【００２０】
変更されたこのデータに基づいて、印刷物、印刷物の処理または印刷物自体または択一的に刷版のさらなる加工が調整される。最終的に、完成した印刷物がこの調整を用いて作成される。
【００２１】
この情報が、この表現の第１の記憶領域内にこの情報が格納される方式と実質的に同じ形態で、第１のデータフォーマットのファイルの第１の記憶領域内で準備されることによって、少なくともこの第１の記憶領域に対して、格納されている情報の時間のかかる変更が省かれる。これによってファイル全体の復号化が実質的に迅速に行われる。
【００２２】
このステップを行うために、少なくとも部分的に、すなわち少なくともこの第１の記憶領域において、ＸＭＬの仕様、少なくともＪＤＦの仕様、すなわちＣＩＰ４の設定から仕様を異ならせることが必要である。
【００２３】
ファイルのこの処理、すなわち、ワーキングメモリ内のファイルの表現の処理を容易にするために、発展形態では、実質的に同一のこれらの第１の記憶領域が少なくとも同じノードおよび属性インデックスを有するようにされている。
【００２４】
この方法に従って行われる、ワーキングメモリ内への第１のデータフォーマットのデータの読み込み時に、データの変換が少なくとも実質的に同じメモリ内で行われないことによって、相応に、復号化の速度が上昇する。
【００２５】
ワーキングメモリ内への第１のデータフォーマットのデータのできるだけ効率的かつ迅速な読み込みを保証するために、発展形態では、第１のデータフォーマットの第１の記憶領域のデータのデジタル表示とワーキングメモリ内の表現のデジタル表示がビット毎に一致するようにされている。第１のデータフォーマットから、ワーキングメモリ内の表現に、またはその逆で、読み出しおよび書き込みがされる。
【００２６】
実質的に等しくなく、第１の記憶領域内に格納される情報も、できるだけ迅速に変換ないしは復号化するために、付加的に、第１のデータフォーマットの第２の記憶領域が準備される。ここでこの第２の記憶領域内ではデータが、ワーキングメモリ内の表現の第２の記憶領域内と同じ構造で組織化されており、第１のデータフォーマットまたは表現または両者の少なくとも１つの第３の記憶領域が準備され、この第３の記憶領域が、データフォーマットのバイナリー属性データを変換するための辞書を含んでいる。これによって、この辞書を用いて、第１のデータフォーマットの第２の記憶領域のバイナリー属性データが、表現の第２の記憶領域のより高次のプログラミング言語のオブジェクトに変換される。第２の記憶領域内のデータはここでデジタルにビットずつ同一に格納されておらず、さらに変換されなければならず、辞書はこの変換を可能にする。
【００２７】
このようにして、さらなる、殊に辞書によってまとめられた属性データも、スピーディーに復号化される。この属性データは、高次のプログラミング言語のオブジェクトとしてのみ、ワーキングメモリの表現において提供される。
【００２８】
有利にはここで、第１のデータフォーマットの第２のメモリの個々の値が、第３の記憶領域の辞書のストリングによって置換され、その他の点では、第１のデータフォーマットの第２の記憶領域の構造と、ワーキングメモリ内の表現は同じである。これによって、必要な復号化ステップが低減される。
【００２９】
有利な実施形態では、この第１のデータフォーマットは、ＸＭＬ文体から、有利にはＪＤＦフォーマットから形成される。このＪＤＦフォーマットは一般的であり、有利には印刷物を作成するワークフロー内で使用される。
【００３０】
相応するＪＤＦファイルのデータまたはＸＭＬ文体におけるファイルのデータは次にこの方法に従って、第１のコンピューターのワーキングメモリ内の表現に変換される。ここでこの表現の第１の記憶領域はビット毎に、第１のデータフォーマットのデータと同一に構成されており、少なくともこの表現の第１の記憶領域がビット毎に、第１のデータフォーマットの第１の記憶領域内にコピーされることによって、第１のデータフォーマットが符号化される。この変換は実質的にコピーステップである。ワーキングメモリの記憶領域から、別のメモリの記憶領域内へのビットのこの簡単なコピーは、変換のため、すなわち相応に格納されているデータの符号化または復号化のために時間を必要としない。この第１のデータフォーマットはここで、ＪＤＦファイルまたはＸＭＬ文体の別のファイルとは基本的に異なる。ＪＤＦファイルまたはＸＭＬファイルのこの変換によって、表現はまずはワーキングメモリ内に生じ、第１のデータフォーマットの第１の記憶領域のビット毎に等しい構成によって、第１コンピューター内でこの第１のデータフォーマットが、まずはＪＤＦないしはＸＭＬファイルに基づいて作成される。さらなるワークフローにおいて、次にこの第１のデータフォーマットが上述の利点とともに使用される。しかしこのためには、明らかにＪＤＦ仕様とは異なっていなくてはならない。しかしこれは利点を実現するために甘受される。
【００３１】
第１のデータフォーマットのファイル全体の、ワーキングメモリ内の表現への、またはその逆の、さらに迅速な符号化ないしは復号化は次のことによって実現される。すなわちＪＤＦファイルの冗長的な属性量（属性マップ）が一回だけ、ワーキングメモリの表現の第１または第２の記憶領域内に格納され、表現の第３の記憶領域内の辞書を介して参照されることによって実現される。有利にはここでは主に、属性量の冗長性が解決される。
【００３２】
さらに、第１のデータフォーマットないしは第１のデータフォーマッチのファイルがネットワークまたは記憶媒体を介して、第２のコンピューター内に伝送され、第１のデータフォーマットのこのデータが、第２のコンピューターのワーキングメモリ内の表現に復号化される。ここでは少なくとも第１の記憶領域のデータがビット毎に等しく、第２のコンピューターのワーキングメモリの表現の第１の記憶領域内にコピーされる、または択一的に第１のデータフォーマットからはじまり、新たに、第１のコンピューターのワーキングメモリ内の表現が作成される。この作成は、これがこのデータを第２のコンピューターに伝送する代わりに行われる。ここで少なくとも第１のデータフォーマットの第１の記憶領域のデータは、ビット毎に、表現の第１のメモリ内にコピーされる。次に第１または第２のコンピューターのワーキングメモリ内の各表現のデータに対して操作が行われ、この操作を考慮して、印刷物が、印刷機械、印刷前段階装置または印刷処理装置を介して作成される、または少なくとも操作される。ここで有利には複数のステップにおいて同じまたは異なるコンピューターで、ワーキングメモリ内の表現の記憶領域および第１のデータフォーマットの記憶領域の同一性が利用され、これによってそれぞれ迅速な操作をコンピューターで行うことが可能になる、ないしは相応のデータをコンピューターに供給し、迅速かつ容易に、操作された印刷物を得ることができる。
【００３３】
当然ながら、これらの方法のうちの１つを、少なくとも１つの上述したステップに従って実行するためのコンピュータープログラムを備えた、相応の記憶媒体に対する保護も求める。
【００３４】
本発明による方法の例を以下で説明する。しかし本発明はこれに制限されるべきではなく、ここからさらなる本発明の特徴が得られる。
【００３５】
第１のステップでは、経営情報システム（ＭＳＩ）の構成部分であり得る第１のコンピューター内で、第１のファイルが作成される。このファイルは第１のステップにおいて、第１のコンピューター内で、このコンピューターのワーキングメモリ内の表現へと変換され、次に第２のステップにおいてワーキングメモリ内のこの表現が、場合によっては相応する処理の後で、再び相応する第１のデータフォーマットに戻される。このようにして、はじめに作成されたファイルがＸＭＬ文体ないしはＪＤＦフォーマットで作成された場合にはじめてファイルがこの第１のデータフォーマットで作成される。
【００３６】
この第１のデータフォーマットはここで大まかに、以下のように構成されている。すなわちこれは以下の部分を有している。
【００３７】
0006000026.tif 000002
【００３８】
個々の部分を以下で詳細に説明する。
【００３９】
ヘッダは以下のエントリから成る。
【００４０】
0006000026.tif 000003
【００４１】
フォーマット識別は明確なバイトシーケンスである。これによって、コンピュータープログラムは、第１のデータフォーマットをそれとして識別することができる。
【００４２】
バージョン識別は第１のデータフォーマットのバージョンを規定する。典型的にこれは例えば、「１．０．０．０」である。この識別によって、時間が経過するとともに、第１のデータフォーマット内で改良が行われる。このファイルをこの第１のデータフォーマットで読むコンピュータープログラムは、次にこのバージョン識別を評価する。これによって、第１のデータフォーマットの古いバージョンも、新しいバージョンも読むことができる。
【００４３】
著作権者識別は、第１のデータフォーマットのファイルを作成するソフトウェアまたは組織の個々の識別である。
【００４４】
部分「ノード」、「属性テーブル」および「ストリングテーブル」のサイズはバイトの数で表される。
【００４５】
フォーマットバリエーションは、第１のデータフォーマットの各特別な様式を示すビットの集合体から成る。
【００４６】
0006000026.tif 000004
【００４７】
ビット０は、データがヘッダに従って圧縮されているか否かを規定する。「はい」の場合には、これは既知の方法「ｇｚｉｐ」に従って圧縮される。すなわちこれは元来の内容を読む前に一度圧縮解除されなければならない。ヘッダ自体は常に圧縮されていない。
【００４８】
ビット１から６によって、個々の部分の要素がどの位の幅を有しているのかがあらわされる。デフォルトは個々の要素毎に１６ビットである。
【００４９】
ノード領域の構造
ＸＭＬないしはＪＤＦドキュメントにおいてノードの数がｎである場合にはノードは、同じ大きさのｎ個のビットパターンの連続したシーケンスとして格納されている。
【００５０】
0006000026.tif 000005
【００５１】
各ノードはｍ個のビットのシーケンスとして格納される。ここでｍは全てのノードに対して同じである。ｍはヘッダから生じ、通常時には１６と等しい。このノードのシーケンスは、対応するＸＭＬファイル内のノードのシーケンスに相応する。ｍ個のビットは以下の意味を有している。
【００５２】
0006000026.tif 000006
【００５３】
ビット０は、これが最初のチャイルドエレメントであるか否かを示している。
【００５４】
ビット１は、これが最後のチャイルドエレメントであるか否かを示している。
【００５５】
残りのビットは、ストリングテーブル内のインデックを形成するか、またはコメントまたはテキストエレメントに対する識別を含む。ビット２からｍ−１までが値０ｘ３ＦＦＦを形成する場合、これはテキストノードである。ビット２からｍ−１までが値０ｘ３ＦＦＥを形成する場合、これはコメントノードである。その他の場合には、ビットはストリングテーブル内のノード部分に対するインデックスを形成する。
【００５６】
属性インデックス領域の構造
この領域は、ノード領域と同様に、同じ大きさのｎ個のビットマスターの連続したシーケンスから成る。ｎは、ノードの数である。すなわち、各ノードに対して１つの属性インデックスが存在している。
【００５７】
0006000026.tif 000007
【００５８】
各インデックスはｍ個のビットのシーケンスとして格納される。ここでｍは全てのインデックスに対して等しい。ｍはヘッダから生じ、通常時には１６と等しい。ｍ個のビットはインデックスを形成する。これはノード様式に従って以下の意味を有する。
【００５９】
これがテキストノードまたはコメントノードである場合には、このインデックスはストリングテーブル内の一般的なストリングの部分においてストリングを示す。そうでない場合にはこのインデックスは、属性テーブル内の属性マップを示す。
【００６０】
属性マップはＸＭＬノードの属性全体である。
【００６１】
２つの例を以下に示す。
【００６２】
0006000026.tif 000008
【００６３】
ネーム「Ｃｏｌｏｒ」を有するノードは３つの属性「ＣＭＹＫ」、「ＣｏｌｏｒＴｙｐｅ」および「Ｎａｍｅ」を有する。これらの属性は以下の値を有する。
【００６４】
ＣＭＹＫ＝"０．２７０．０００．３８０．００"
ＣｏｌｏｒＴｙｐｅ＝"Ｎｏｒｍａｌ"
Ｎａｍｅ＝"ＰＡＮＴＯＮＥ３５８Ｃ"
属性および属する値から成る集合体が属性マップを形成する。
【００６５】
属性テーブルの構造
ｐが属性マップの数がｐである場合には、属性マップは相互にｐ個のデータセットとして格納されている。
【００６６】
0006000026.tif 000009
【００６７】
属性マップ毎の記憶領域の大きさは、属性マップの大きさから生じる。
【００６８】
すなわち個々のデータセットの大きさは、ノードおよび属性インデックスとは異なり、可変である。従って、インデックス毎のデータセットへの直接的な跳躍は不可能である。属性インデックスによって属性マップを得るために、属性マップが事前に読まれなければならない、すなわち解釈されなければならない。各ノードが属性マップを有しているのではない。複数のノードが、同じ属性マップを示すことができる。属性マップを有していないノードもある。すなわち属性マップの数は、一般的にノードの数よりも小さい。ｑが、個々の属性マップの属性の数である場合には、構造は以下のようになる。
【００６９】
0006000026.tif 000010
【００７０】
フラグは１ビットの大きさを有しており、この属性マップが複数回使用されるか否かを示す。各属性は以下のエントリから成る。
【００７１】
0006000026.tif 000011
【００７２】
インデックスの数は、ヘッダにおいて定められ、通常時には１６ビットである。属性ネームのインデックスは、ストリングテーブルの属性ネーム部分におけるエントリを示す。属性値のインデックスは、ストリングテーブルの一般部分内のエントリを示す。
【００７３】
ストリングテーブルの構造
ストリングテーブルは１つのヘッダと３つの部分とから成る。
【００７４】
0006000026.tif 000012
【００７５】
このヘッダは３つの整数値から成る。これらの積分値はそれぞれ、部分毎のストリングの数を定める。
【００７６】
0006000026.tif 000013
【００７７】
これらのストリングはＵＴＦ８フォーマットで格納されている。
【００７８】
コンピューターのメモリ内の表現
第１のデータフォーマットに対して、まずはワーキングメモリ内の表現が形成される。この表現はバイナリーＪＤＦドキュメントに対するクラスＢＪＤＦドキュメントのデータフォーマットと称される。以下では、ＪＤＦファイルからないしはＸＭＬファイルから、どのようにしてＢＪＤＦドキュメントが作成され、次に第１のデータフォーマット内のファイルとして格納されるのかを説明する。
【００７９】
ＵＭＬ表記法におけるクラス「ＢＪＤＦドキュメント」の説明。
【００８０】
0006000026.tif 000014
【００８１】
属性「ｍ＿ＥｌｅｍｅｎｔＢｕｆｆｅｒ」および「ｍ＿ＡｔｔｒＩｎｄｅｘＢｕｆｆｅｒ」は１対１でノードと、第１のデータフォーマットのファイルからの属性インデックスとを含んでいる。このファイルは実際には、バイナリーＸＭＬファイルである。
【００８２】
「ｍ＿ＡｔｔｒＩｎｄｅｘＢｕｆｆｅｒ」は属性マップを含んでおり、これはそれぞれＪａｖａクラス「ＡｔｔｒｉｂｕｔｅＤａｔａ」によって表される。
【００８３】
「ｍ＿Ｄｉｃｔｉｏｎａｒｙ」はストリングテーブル、すなわち辞書を含んでいる。
【００８４】
「ｍ＿ＣｊｉｌｄｒｅｎＭａＰ」はチャイルドエレメントのキャッシュであり、「ｍ＿ＥｌｅｍｅｎｔＢｕｆｆｅｒ」から作成される。すなわち「ｍ＿ＣｈｉｌｄｒｅｎＭａＰ」内の情報は冗長的であり、迅速なアクセスのためのみに用いられる。
【００８５】
「ＢＪＤＦドキュメント」の方法は、データへの全ての重要な操作が可能である、ということを暗示している。これはここでは単に、最小機能性である。実際に使用するための本当の実装は格段に多くの方法を提供する。実装の詳細はここでは詳細に説明しない。当業者は与えられている情報によって問題なく実装を行うことができるはずである。
【００８６】
以下では、バイナリーＸＭＬデータのデータ、すなわち第１のデータフォーマットのデータがどのように読まれ、ＢＪＤＦドキュメントへ、すなわちコンピューターのワーキングメモリ内の表現にどのように変換されるのかを説明する。
【００８７】
クラス「ＢＪＤＦドキュメント」内のデータ構造は、第１のデータフォーマット内のファイル内の構造に極めて類似している。「ｍ＿ＥｌｅｍｅｎｔＢｕｆｆｅｒ」および「ｍ＿ＡｔｔｒＩｎｄｅｘＢｕｆｆｅｒ」は、第１のデータフォーマット内に記憶されている、ないしは記憶されるべきファイルと同一の形のデータを含んでいる。これらのデータは変換せずに読み込まれる。「ｍ＿ＡｔｔｒｉｂｕｔｅＢｕｆｆｅｒ」および「ｍ＿Ｄｉｃｔｉｏｎａｒｙ」は、記憶されている形態と同じ構造のデータを含んでいる。「ｍ＿ＡｔｔｒｉｂｕｔｅＢｕｆｆｅｒ」からの個別値のみがそれぞれ復号化されなければならず、高次のプログラミング言語のオブジェクトに変更されなければならない。このために、バイナリーフォーマットからのコードがそれぞれ、辞書からのストリングによって置き換えられる。
【００８８】
このようにして、第１のデータフォーマットに対して、ワーキングメモリ内のデータの対応する表現が得られる。これは僅かにのみ、第１のデータフォーマットと異なる。ＢＪＤＦドキュメントは、ここで従来のシステムにおけるＤＯＭツリーの役割を担う。第１のデータフォーマットは、自身の構造において、僅かにのみ、ワーキングメモリ内のデータの表現と異なるので、データの極めて迅速な読み出しおよび書き込みが可能である。ノードおよび属性インデックスは、ファイルから１：１で引き受けられ、復号化される必要はない。なぜならこれらのデータは、バイナリーファイル内の約３０％であるからである。これは、データの３０％が、読み出し時に復号化される必要がなく、書き込み時に符号化される必要がない、ということを意味している。残りの部分のみが、再度変換されなければならない。
【００８９】
属性マップ全体が別個の領域において格納されるように設定することもできる。これによって、常に繰り返し、データストリームに加える代わりに属性マップ全体の写しを一回のみ格納することが可能になる。従来の「Ｍａｉｎ−ＪＤＦ」において、完全な属性マップの通常の写しが存在する。この場合にこれらはそれぞれ１回のみ格納され、ノードは、それぞれ１つのみの参照を、データストリームのこの箇所に対して有する。
【００９０】
ここではさらに、迅速な処理を可能にするために、各属性マップに情報が与えられる。この情報は、これが多数回使用されるか否かを示す。この情報によって、相応するソフトウェアが文章の編集時に迅速に、属性マップが変更前にコピーされなければならないか否かを特定する。属性マップはこの場合には相応にキャッシュ内に提供される。
【００９１】
このようにして、バイナリーデータフォーマット、すなわちワーキングメモリ内のＢＪＤＦドキュメントの迅速な処理が可能になり、データフォーマットは迅速にワーキングメモリ内に伝送され、ワーキングメモリから再び、これまでに知られているよりも格段に迅速に元来のメモリ内に戻される。このようにして次に、このデータフォーマットに基づいて、印刷物が、例えば露光機内での印刷版の画像形成によって、属する情報を有するファイルフォーマットに基づいて実現される。