次に、単なる非限定的な例として、添付の図面を参照して本発明の好ましい実施形態および他の実施形態を説明する。
Memjet(商標)は、オーストラリア国SilverbrookResearch社の商標であることに留意されたい。
好ましい実施形態では、本発明は、ネットページネットワークコンピュータシステムとともに働くように構成される。この詳細な概要を以下に示す。必ずしもすべての実施形態が、基本的なシステムに関連して以下で論じる特定の細部および拡張部の全部を、あるいは大部分でさえ実施しないことを理解されたい。ただし、本発明の好ましい実施形態および態様が機能する状況を理解しようと試みる際に、外部を参照する必要が少なくなるように、このシステムをその最も完全な形態で説明する。
簡単にまとめると、このネットページシステムの好ましい形態は、マッピングされた表面の形態のコンピュータインターフェース、すなわち、コンピュータシステムにおいて維持される表面のマップに対する基準点を含む物理的な表面を使用する。これらマップの基準点は、適切な感知装置によって照会することができる。個々の実施形態に応じて、マッピングされた表面に局所的な照会を行うことより、このマップ内でも、かつ異なるマップの間でも明確なマップの基準点が得られるように、これらマップの基準点を可視的または不可視的に符号化し、定義することができる。コンピュータシステムは、このマッピングされた表面上のフィーチャについての情報を含むことができ、このような情報は、このマップマッピングされた表面とともに使用する感知装置により供給されるマップの基準点に基づいて引き出すことができる。このように引き出される情報は、操作者と表面フィーチャの対話に応答して、操作者の代わりにコンピュータシステムによって開始される動作の形態をとり得る。
好ましい形態では、ネットページシステムは、ネットページの生成および人間とネットページの対話に依存する。これらのネットページは、普通紙に印刷されたテキスト、図形、および画像からなるページだが、対話式ウエブページのように機能する。情報は、人間の裸眼には実質的に不可視のインクを使用して各ページ上で符号化される。ただし、このインク、したがって符号化されたデータを、光学式の画像化ペンによって感知し、ネットページシステムに送信することができる。
好ましい形態では、各ページ上のアクティブなボタンおよびハイパーリンクをペンでクリックして、ネットワークから情報を要求し、また、選択したものをネットワークサーバに知らせることができる。一実施形態では、ネットページ上に手で書き込んだテキストは、ネットページシステム内で自動的に認識され、コンピュータテキストに変換され、それによってフォームを埋めることができる。他の実施形態では、ネットページ上で記録された署名は自動的に検証され、それによって電子商取引トランザクションをセキュアに許可することができる。
図1に示すように、印刷されたネットページ1は、ユーザが、印刷されたページ上に物理的に埋めることもできるし、ペンとネットページシステムの間の通信を介して「電子的に」埋めることもできる対話式フォームを表し得る。この実施例に、名前および住所用のフィールドならびに提示ボタンを含む「要求」フォームを示す。このネットページは、可視インクを使用して印刷した図形データ2と、不可視インクを使用してタグ4の集合として印刷した符号化データ3からなる。ネットページネットワーク上に記憶される対応するページ記述5は、このネットページの個々の要素を記述するものである。具体的にはページ記述5は、各対話要素(すなわち、この実施例では、テキストフィールドまたはボタン)のタイプおよび空間的な範囲(ゾーン)を記述し、それによってネットページシステムは、ネットページを介した入力を正確に解釈することができる。例えば、提示ボタン6は、対応する図形8の空間的な範囲に対応するゾーン7を有する。
図2に示すように、図8および図9に好ましい形態を示し、かつ以下でより詳細に説明するネットページペン101は、家庭用、一般事務所用、または携帯用のインターネット接続印刷機器であるネットページプリンタ601とともに機能する。このペンは、無線式であり、短距離無線リンク9を介してネットページプリンタとセキュアに通信する。
ネットページプリンタについては、図11〜図13に好ましい形態を示し、かつ以下でより詳細に説明する。ネットページプリンタ601は、定期的にまたはオンデマンドで、個人向けにあつらえた新聞、雑誌、カタログ、パンフレットその他の刊行物を配信することができる。これらの刊行物はすべて、対話式ネットページとして高品質で印刷される。パーソナルコンピュータと異なり、ネットページプリンタは、ユーザのキッチン、朝食テーブルの近く、あるいは日々出かけるときの家の地点の近くなど、朝のニュースを最初に見る区域に隣接して、例えば壁に据え付けることができる機器である。ネットページプリンタは、テーブルトップ、デスクトップ、携帯、および小型のバージョンでも供給される。
使用する時点で印刷されるネットページは、紙の使い易さと、対話式媒体の適時性および対話性とを組み合わせたものである。
図2に示すように、ネットページペン101は、印刷されたネットページ1上の符号化データと対話し、この対話を、短距離無線リンク9を介してネットページプリンタに通信する。プリンタ601は、この対話を該当するネットページページサーバ10に送信して解釈を行う。適切な状況では、このページサーバは、ネットページアプリケーションサーバ13上で実行中のアプリケーションコンピュータソフトウエアに、この対話に対応するメッセージを送信する。次いで、このアプリケーションサーバは、発信元プリンタ上で印刷される応答を送信することができる。
好ましい実施形態では、このネットページシステムは、MEMS(微小電子機械システム)ベースの高速インクジェット(Memjet)プリンタとともに使用することによって、かなり便利なものになる。この技術の好ましい形態では、比較的高速で高品質な印刷が、消費者により手ごろな価格になっている。ネットページ刊行物は、その好ましい形態では、1組のレターサイズの光沢ページが、両面にフルカラーで印刷され、合わせて綴じられ、それによって容易にめくることができ、かつ快適に扱えるなど、従来のニュース雑誌の物理的な特徴を有する。
ネットページプリンタは、ブロードバンドインターネットアクセスがますます利用可能な状況になっていることを利用する。ケーブルサービスは、米国の家庭の95%で利用可能であり、ブロードバンドインターネットアクセスを提供するケーブルモデムサービスは、これらの家庭の20%ですでに利用可能である。ネットページプリンタは、より遅い接続形態でも動作するが、配信時間が長くなり、画質が低下する。実際、ネットページシステムは、既存の消費者向けインクジェットプリンタおよびレーザプリンタを使用して使用可能にし得るが、システムの動作が遅くなり、したがって、消費者から見ると許容しにくくなる。他の実施形態では、ネットページシステムは、非公開のイントラネット上で動作する。他の実施形態では、ネットページシステムは、単一のコンピュータ、またはプリンタなど、コンピュータにより使用可能になる装置上で動作する。
ネットページネットワーク上のネットページ発行サーバ14は、ネットページプリンタに印刷品質の刊行物を配信するように構成される。定期刊行物は、ポイントキャストおよびマルチキャストのインターネットプロトコルによって加入者ネットページプリンタに自動的に配信される。個人向けにあつらえた刊行物は、個々のユーザのプロフィールに従ってフィルタリングされ、フォーマットされる。
ネットページプリンタは、任意の数のペンをサポートするように構成することができ、ペンは、任意の数のネットページプリンタとともに機能し得る。好ましい実施形態では、各ネットページペンは、一意の識別子を有する。1つの家庭には、複数本の色付きネットページペンがあることがあり、家族の各構成員に1本が割り当てられる。こうすると、各ユーザは、ネットページ発行サーバまたはネットページアプリケーションサーバに関して別個のプロフィールを維持することができる。
ネットページペンは、ネットページ登録サーバ11に登録することもでき、1つまたは複数の決済カード口座に関連づけることができる。こうすると、ネットページペンを使用して、電子商取引の決済をセキュアに許可することができる。このネットページ登録サーバは、ネットページペンによって取得された署名と、以前に登録した署名とを比較して、電子商取引サーバに対してユーザの身元を認証することができる。他の生体測定値を利用して身元を検証することもできる。あるバージョンのネットページペンは、指紋を走査することを含み、走査した指紋をネットページ登録サーバによって類似のやり方で検証する。
ネットページプリンタは、ユーザを介在させずに朝刊などの定期刊行物を配信することができるが、求められていない迷惑メールが配信されないように構成することもできる。ネットページプリンタは、その好ましい形態では、購読しているか、またはその他の方法で許可した供給源からの定期刊行物しか配信しない。この点で、ネットページプリンタは、電話番号または電子メールアドレスを知っている迷惑メール送信者なら誰でもアクセス可能なファックス機または電子メールアカウントと異なる。
1.ネットページシステムアーキテクチャ
このシステムにおける各オブジェクトモデルは、UML(統一モデリング言語)のクラス図を使用して記述する。クラス図は、関係によって結びつけられた1組のオブジェクトクラスからなり、ここでは、関連および汎化という2種類の関係を対象とする。関連は、オブジェクト間の、すなわちクラスのインスタンス間のある種の関係を表す。汎化は、実際のクラスに関係し、以下のように理解することができる。すなわち、クラスとは、そのクラスのすべてのオブジェクトの組であり、クラスAをクラスBの汎化であると考える場合、Bは、単にAのサブセットである。UMLは、2次モデル化、すなわちクラスのクラスを直接サポートしない。
各クラスは、そのクラスの名前で標示された矩形として描かれる。この矩形は、このクラスの属性リストを含み、これは水平線によって名前と分離される。この矩形はさらに、このクラスの操作リストを含み、これは水平線によって属性リストと分離される。ただし、以下のクラス図では、操作はモデル化しない。
関連は、2つのクラスを結ぶ線として描かれ、任意選択でいずれかの端部をその関連の多重度で標識する。省略時の多重度は1である。*(アスタリスク)は、「多数の」、すなわちゼロまたは複数という多重度を示す。各関連は、任意選択でその名前で標示し、やはり任意選択で、対応するクラスのロールでいずれかの端部を標示する。白抜きの菱形は、集約の関連(「〜の一部である」)を示し、関連の線の集約するもの端部のところに描く。
汎化の関係(「〜である」)は、2つのクラスを結ぶ実線として描かれ、汎化の端部のところに(白抜きの三角形の形式の)矢印を伴う。
クラス図を複数のダイアグラムに分割するとき、複製されたクラスは、そのクラスを定義する主ダイアグラム以外のダイアグラムでは、外形を破線で示す。クラスは、そのクラスが定義される場合のみ属性とともに示す。
1.1 ネットページ
ネットページは、ネットページネットワークを構築する基礎である。ネットページは、発行された情報および対話式のサービスに対する紙ベースのユーザインターフェースを提供する。
ネットページは、印刷されたページ(または他の表面領域)からなり、このページのオンライン記述に対する基準点によって目に見えないタグが付けられる。このオンラインページ記述は、ネットページページサーバによって恒久的に維持される。このページ記述は、テキスト、図形、および画像を含めて、このページの目に見えるレイアウトおよび内容を記述する。このページ記述は、ボタン、ハイパーリンク、および入力フィールドを含めて、このページ上の入力要素も記述する。ネットページでは、ネットページペンによってネットページの表面上に作成されるマーキングの、ネットページシステムによる取得および処理を同時に行うことができる。
複数のネットページは、同じページ記述を共有し得る。ただし、その他の点では同じ複数のページからの入力を区別することができるように、各ネットページに一意のページ識別子を割り当てる。このページIDは、極めて多数のネットページを区別するのに十分な正確さを備えている。
ページ記述に対する各基準点は、印刷されたタグの形で符号化される。このタグにより、タグが現れるページが一意に識別され、それによってページ記述が間接的に識別される。タグは、ページ上でタグ自体の位置も識別する。以下、タグの特徴をより詳細に説明する。
タグは、普通紙など、赤外線反射性の任意の基板上に赤外線吸収インクで印刷する。近赤外波長は、人間の目には見えないが、適切なフィルタを備えた固体画像センサによって容易に感知される。
タグは、ネットページペン内のエリア型画像センサによって感知され、タグデータは、最も近くのネットページプリンタを介してネットページシステムに送信される。このペンは、無線式であり、短距離無線リンクを介してネットページプリンタと通信する。タグは、ページ上を一回クリックするだけで、ペンが少なくとも1つのタグを確実に画像化し得る程度に十分に小型であり、かつ密に配置される。ページと対話するたびに、ペンがページIDおよび位置を認識することが重要である。というのは、この対話が、状態を保持しないからである。タグが表面の損傷を部分的に許容するように、これらのタグを誤り訂正可能に符号化する。
ネットページページサーバは、印刷された各ネットページごとに一意のページインスタンスを維持し、それによって、印刷された各ネットページごとのページ記述内の入力フィールドに対してユーザが供給する値の別個の組を維持することができる。
図4に、ページ記述、ページインスタンス、および印刷されたネットページの間の関係を示す。印刷されたネットページは、印刷されたネットページ文書45の一部であり得る。ページインスタンスは、ネットページを印刷したネットページプリンタと、既知の場合には、ネットページを要求したネットページユーザの両方に関連する。
1.2 ネットページタグ
1.2.1 タグデータの内容
好ましい形態では、各タグは、タグが現れる領域と、この領域内のこのタグの位置とを識別する。タグは、この領域全体、またはこのタグに関係するフラグも含み得る。1つまたは複数のフラグビットは、例えば、このタグの隣接区域に関連する機能を示すフィードバックを、タグ感知装置がこの領域の記述を参照する必要なしに提供するように、タグ感知装置に知らせることができる。ネットページペンは、例えば、それがハイパーリンクのゾーン内にあるとき、「アクティブエリア」LEDを点灯させることができる。
以下でより明確に説明するように、好ましい実施形態では、各タグは、容易に認識される不変構造を含む。この不変構造は、初期検出の助けとなり、かつ、表面によって、または感知プロセスによって誘起される反りの影響を最小限に抑える助けとなる。好ましくは、タグは、ページ全体にタイル状に並べられ、ページ上を一回クリックするだけで、ペンが少なくとも1つのタグを確実に画像化し得る程度に十分に小型であり、かつ密に配置される。ページと対話するたびに、ペンがページIDおよび位置を認識することが重要である。というのは、この対話が、状態を保持しないからである。
好ましい実施形態では、タグが参照する領域はページ全体に一致し、このタグの形で符号化される領域IDはしたがって、このタグが現れるページのページIDと同義である。他の実施形態では、タグが参照する領域は、ページその他の表面の任意の副領域とし得る。例えば、この領域は、対話要素のゾーンと一致させることができ、この場合、領域IDはこの対話要素を直接識別し得る。
一形態では、各タグは、120ビットの情報を含み、典型的には、表1に示すように割り当てられる。タグの密度を1平方インチ当たり64個と仮定すると、16ビットのタグIDは、最大で1024平方インチの領域サイズをサポートする。より大きな領域は、単に隣接する領域およびマップを使用することによって、タグIDの精度を上げずに連続的にマッピングすることができる。100ビットの領域IDにより、2100個(〜1030個、すなわち1兆×1兆×百万個)の異なる領域を一意に識別することができる。
1.2.2 タグデータの符号化
一実施形態では、(15,5)リードソロモン符号を使用して、120ビットのタグデータを冗長符号化する。こうすると、それぞれ15個の4ビットシンボルを含む6つの符号語からなる360個の符号化ビットが得られる。(15,5)リードソロモン符号では、1つの符号語当たり最大で5つのシンボル誤りを訂正することができる。すなわち、1つの符号語当たり最大で33%のシンボル誤り率が許容される。
各4ビットシンボルは、タグ内で空間的にコヒーレントに表され、6つの符号語の各シンボルは、タグ内で空間的に交互に配置される。こうすると確実に、バースト誤り(複数の空間的に隣接したビットに影響を及ぼす誤り)により損傷を受けるシンボルの全体的な数および任意の1つの符号語中のシンボルの数が最小限に抑えられ、そのため、このバースト誤りを完全に訂正し得る尤度が最大になる。本明細書および特許請求の範囲では、「交互に配置された」という用語(および関連する用語)は、符号語の少なくとも1つのシンボルが、このシンボルに隣接するいかなるシンボルも、このシンボルと同じ符号語に属さないように空間的に配置されることを意味すると定義する。
(15,5)リードソロモン符号の代わりに、例えば、冗長性が高いかまたは低く、シンボルおよび符号語のサイズが同じかまたは異なるリードソロモン符号、別のブロック符号、あるいは、コンボリューション符号(例えば、内容を参照により本明細書に組み込む、Stephen B.Wicker、Error Control Systems for Digital Communication and Storage、Prentice−Hall 1995年を参照)などの異なる種類の符号など、任意の適切な誤り訂正符号を使用することができる。
感知装置によるタグ化された領域との「シングルクリック」による対話をサポートするために、この感知装置はその視野内で、少なくとも1つのタグ全体を、このタグが、この領域内のどこに位置決めされていても、また、どんな向きに位置決めされていても観察することができなければならない。したがって、感知装置の視野の必要とされる直径は、タグのサイズおよび間隔の関数である。
物理的なタグ構造
上記で説明したタグ構造は、タグを規則正しくタイル状に並べることが可能ではないことがある非平坦表面のタグ化をサポートするように設計される。タグを規則正しくタイル状に並べることが可能な平坦表面、すなわち紙のシートの表面など、より普通の場合には、タイル状に並べるという規則正しい性質を利用するより効率のよいタグ構造を用いることができる。
図5aに、4つの遠近ターゲット17を備えたタグ726の形態でタグ4の例を示す。このタグの例は、Bennettらの米国特許第5051746号に記載されているタグに構造上類似するものである。タグ726は、60個の4ビットリードソロモンシンボル706を表し、合計で240ビットになる(シンボルを論じる以下の図44〜46の説明を参照されたい)。タグは、マクロドットと称する印748の存在によってそれぞれ「1」ビットを表し、対応するマクロビットがないことによってそれぞれ「0」ビットを表す。図5cに、この説明では、含まれるビットがすべて「1」である9個のタグを正方形でタイル状に並べたもの728を示す。これらの遠近ターゲットは、隣接するタグ間で共有されるように設計されることに留意されたい。図6に、16個のタグを正方形でタイル状に並べたものおよび対応する最小視野193を示す。この視野は、2つのタグの対角線にまたがる。
(15,7)リードソロモン符号を用いると、112ビットのタグデータが冗長符号化され、それによって240個の符号化ビットが生成される。バースト誤りに対する障害許容力が最大になるように、タグ内で4つの符号語を空間的に交互配置する。前と同様にタグIDを16ビットと仮定すると、これにより、領域IDは最大で92ビットにすることができる。
データを担持するタグのマクロドット748は、隣同士重ならないように設計されるので、タグの群が、ターゲットに似た構造を生成することはない。こうすると、インクも節約される。遠近ターゲットによりタグを検出することができ、そのため、さらなるターゲットは必要とされない。
タグには、センサに対する相対的な4つの可能なタグの向きを明確にし得る向きのフィーチャを含めることができるが、本発明は、タグデータ中に向きのデータを埋め込むことに関するものである。各シンボルをその符号語(1〜4)の番号および符号語内でのシンボルの位置(A〜O)で標示した図5aに示すように、例えば、各タグの(回転方向の)向きがその向きで置かれた1つの符号語を含むように、4つの符号語を配置することができる。この場合、タグの復号は、それぞれの回転の向きで置かれた1つの符号語を復号することからなる。各符号語は、それが第1符合語であるかどうかを示す1ビットか、あるいは、その符号語がどの符号語であるかを示す2ビットのいずれかを含み得る。後者の手法は、例えば、1つの符号語のみのデータ内容が必要とされる場合、所望のデータを得るために、最大でも2つの符号語を復号すればよいという利点を有する。これは、ストロークの範囲内で領域IDが変化することが想定されず、そのため、ストロークの開始時にのみ領域IDを復号する場合がそうであり得る。こうすると、ストロークの範囲内では、タグIDを含む符号語のみが所望のものである。さらに、ストロークの範囲内では、感知装置の回転はゆっくりかつ予測可能に変化するので、典型的には、1つのフレーム当たり1つの符号語を復号するだけでよい。
遠近ターゲットを完全に省き、その代わりに、自己登録型のデータ表現を利用することが可能である。この場合、それぞれのビット値(または多ビット値)は一般に、明示的なグリフによって表される。すなわち、グリフがないことによってビット値を表すことはない。こうすると確実に、データグリッドが良好に配置され、そのためグリッドが高い信頼性で識別され、データサンプリング中にその遠近歪みが検出され、その後補正され得る。タグの境界を検出することができるように、各タグデータは、マーカパターンを含まなければならず、これらのタグの境界を冗長符号化して確実に検出できるようにしなければならない。このようなマーカパターンのオーバヘッドは、明示的な遠近ターゲットのオーバヘッドに類似のものである。1つのこのような方式では、グリッド頂点に対して相対的に様々なポイントに位置決めされたドットを使用して、異なるグリフ、したがって異なる多ビット値を表す(Anoto社のAnoto Technology Description、2000年4月を参照)。
図5cの配置728は、正方タグ726を用いて任意のサイズの面に、隙間なく、または重なり合わずに完全にタイル状に並べる、あるいは敷き詰めることができることを示している。
好ましい実施形態では本明細書で説明するタグ化方式により、単一の均一なマクロドットの存在の有無を利用して1つのデータビットが符号化されるが、これらの実施形態では、2001年10月11日出願の本出願人らの同時係属PCT出願PCT/AU01/01274号に示すグリフの組など、差異を設けたグリフの組を用いて、1ビットまたは多ビットの値を表すこともできる。
マクロドットを束ねる方式
図44に、マクロドットを三角形状に束ねたもの700を、4ビットシンボルユニット702の輪郭を描いたものとともに示す。このシンボルユニットの面積は、
によって与えられる。ただし、sは、隣り合うマクロドットの間隔である。図45に、マクロドットを正方形状に束ねたもの704を、4ビットシンボルユニット706の輪郭を描いたものとともに示す。このシンボルユニットの面積は、A
UNIT=4s
2によって与えられる。図46に、マクロドットを六角形状に束ねたもの708を、4ビットシンボルユニット710の輪郭を描いたものとともに示す。このシンボルユニットの面積は、
によって与えられる。これらの束ね方式のうち、三角形状に束ねる方式で、特定のマクロドット間隔sに対してマクロドットの密度が最も高くなる。
好ましい実施形態では、sは、100μm〜200μmの値をとる。
タグの設計
他の実施形態も説明するが、6方向に回転対称な(すなわち、以下で説明する六角形の例の)バージョンの表現が、本発明の好ましい実施形態であることを理解されたい。
図47に、六角形タグの1/6セグメント712を示す。このセグメントは、図44に示すようにマクロドットを三角形状に束ねた状態で、最大で11個の4ビットシンボルを含む。ターゲット17は、隣接するセグメントによって共有される。各タグセグメントは、例を挙げると、u=11−k個のシンボル誤りを検出し、また、t=[(11−k)/2]個のシンボル誤りを訂正することができる(11,k)リードソロモン符号、すなわちパンクチャ処理された(15,k)符号の符号語をサポートし得る。例えば、k=7の場合、u=4およびt=2である。
(式1)から、対応する六角形タグの面積が得られる。(式2)から、必要とされる視野の半径が得られる。(式3)から、必要とされる視野の面積が得られる。(式4)から、この視野について回復されるビットデータ密度が得られる。
図48に、別の六角形タグの1/6セグメント716を示す。このセグメントは、図44に示すようにマクロドットを三角形状に束ねた状態で、最大で17個の4ビットシンボルを含む。各タグセグメントは、例を挙げると、u=17−k個のシンボル誤りを検出し、また、t=[(17−k)/2]個のシンボル誤りを訂正することができる(17,k)リードソロモン符号、すなわち拡大(15,k)符号の符号語をサポートし得る。例えば、k=7の場合、u=10およびt=5である。
(式5)から、対応する六角形タグの面積が得られる。(式6)から、必要とされる視野の半径が得られる。(式7)から、必要とされる視野の面積が得られる。(式8)から、この視野について回復されるビットデータ密度が得られる。
図49に、正方形タグの1/4セグメント718を示す。このセグメントは、図45に示すようにマクロドットを正方形状に束ねた状態で、最大で15個の4ビットシンボルを含む。各タグセグメントは、例を挙げると、u=15−k個のシンボル誤りを検出し、また、t=[(15−k)/2]個のシンボル誤りを訂正することができる(15,k)リードソロモン符号の符号語に対処し得る。例えば、k=7の場合、u=8およびt=4である。
(式9)から、対応する正方形タグの面積が得られる。(式10)から、必要とされる視野の半径が得られる。(式11)から、必要とされる視野の面積が得られる。(式12)から、この視野について回復されるビットデータ密度が得られる。
図50に、六角形タグの1/6セグメント720を示す。このセグメントは、図46に示すようにマクロドットを六角形状に束ねた状態で、最大で14個の4ビットシンボルを含む。各タグセグメントは、例を挙げると、u=14−k個のシンボル誤りを検出し、また、t=[(14−k)/2]個のシンボル誤りを訂正することができる(14,k)リードソロモン符号、すなわちパンクチャ処理された(15,k)符号の符号語をサポートし得る。例えば、k=6の場合、u=8およびt=4である。
(式13)から、六角形タグの面積が得られる。(式14)から、必要とされる視野の半径が得られる。(式15)から、必要とされる視野の面積が得られる。(式16)から、この視野について回復されるビットデータ密度が得られる。
上記で考察したタグ設計のうち、図47および図48に示すタグセグメントを使用する六角形タグの設計により、回復されるビットデータ密度が最も高い視野が得られる。それぞれ図49および図50に示すタグセグメントを使用する正方形および六角形のタグの設計では、回復されるビットデータ密度がより低い視野が得られる。
六角形タグ設計
図51に、図47のタグセグメント712を用い、6つの24元(11,k)符号語を交互配置した六角形タグ722の論理レイアウトを示す。図52に、図51の六角形タグ722のマクロドットレイアウトを示す。図53に、ターゲット17が共有された、隣接する7個の図52の設計のタグ722の配置724を示す。配置724は、六角形タグ722を用いて、任意のサイズの面に敷き詰めることができることを示している。
代替正方形タグ設計
図54に、4つの23元(7,k)符号語を交互配置した別の正方形タグ730の論理レイアウトを示す。各3ビットシンボル732は、3つのマクロドットからなるL形配置によって表される。図55に、図54の正方形タグ730のマクロドットレイアウトを示す。
三角形タグ設計
図56に、3つの23元(7,k)符号語を交互配置した三角形タグ734の論理レイアウトを示す。各3ビットシンボル736は、3つのマクロドットからなる三角形配置によって表される。図57は、図56の三角形タグ734のマクロドットレイアウトを示す。上記で説明した正方形および六角形のタグの場合と同様に、三角形タグ734を用いて、任意のサイズの面に敷き詰めることができる。
直線タグ設計
図58に、2つの23元(7,k)符号語を交互配置した2方向に回転対称の直線タグ738の論理レイアウトを示す。各3ビットシンボル740は、3つのマクロドットからなる直線配置によって表される。図59は、図58の直線タグ738のマクロドットレイアウトを示す。
図60に、図58の直線タグのレイアウトに基づく代替マクロドットレイアウトを示す。このレイアウトは、従来方式のバーコードの構造に類似した純粋に1次元的な構造を有する。このレイアウトは、図58の直線タグのレイアウトに基づいているが、ターゲット構造17は、円形でなく直線である。この実施形態は、面走査ではなく線走査するように適合された先行技術のバーコードスキャナとともに(ソフトウエアを適切に変更して)使用するのに特に適している。
1.2.3 タグの画像処理および復号
図7に、タグの画像処理および復号のプロセスの流れを示す。(200で)例えば、CCD画像センサ、CMOS画像センサ、またはレーザ走査型フォトダイオード画像センサなどの画像センサによって、タグパターンの生画像202を取得する。次いで、典型的には(204で)この生画像を強調して、コントラストが改善され、画素強度がより均一になった強調画像206を生成する。画像強調は、グローバルな、またはローカルな範囲の伸長、均等化などを含み得る。次いで、典型的には(208で)、強調画像206をフィルタリングして、フィルタリングされた画像210を生成する。画像のフィルタリングは、ローパスフィルタリングからなり得る。ローパスフィルタ用のカーネルサイズは、マクロドットは不明瞭になるが、ターゲットは保存されるように調整する。フィルタリングステップ208は、ターゲットフィーチャを強調するために、(エッジ検出などの)追加のフィルタリングを含み得る。次いで、(212で)フィルタリングされた画像210を処理してターゲットフィーチャを位置決定し、それによって1組のターゲットポイントが得られる。この処理は、空間相互関係がタグの既知の幾何形状と合致するターゲットフィーチャを探索することからなり得る。ターゲット候補は、フィルタリングされた画像210の最大値から直接識別することもできるし、あるいは、米国特許出願第09/575154号に記載されているように、(典型的には、フィルタリングされた画像210中の極大値に基づいて、強調画像206の画素から計算する)ターゲットの(2値またはグレースケールの)形状モーメントなどによって、別の特徴付けおよびマッチングの対象とすることもできる。この探索は典型的には、視野の中心から開始する。探索ステップ212によって見つけられたターゲットポイント214から、画像センサおよびその関連する光学系が占める3次元空間におけるタグの位置が間接的に明らかになる。ターゲットポイント214は、(2値またはグレースケールの)ターゲットの重心から導出されるので、これらは一般に、画素未満の精度で定義される。
(216で)タグの実際の3D変換を求め、その延長で、タグに対する相対的な感知装置の3D変換(または姿勢)218を求めることが有用なことがある。これは、米国特許出願第09/575154号に記載されているように解析的に、あるいは、(参照により内容を本明細書に組み込む、P.R.Wolf、B.A.Dewitt、Elements of Photogrammetry with Applications in GIS、3rd Edition、McGraw Hill、2000年2月に記載されているように)遠近歪みを有するターゲットポイントが観測された場合、最大尤度推定量(最小二乗調整など)を用いてパラメータ値を3D変換に合わせることによって実施し得る。3D変換は、タグの3次元的な並進移動、タグの3次元的な向き(回転)、ならびに感知装置の焦点距離および表示域尺度を含み、そのため、適合すべき8つのパラメータ、あるいは、(例えば、設計によって、または較正ステップから)焦点距離および表示域尺度が既知の場合には、6つのパラメータが与えられる。各ターゲットポイントから、観測された座標を既知の座標に関係づける1対の観測方程式が得られる。8つのパラメータを適合させる場合、最大尤度推定を可能にするのに十分な冗長性を得るために、5つ以上のターゲットポイントが必要とされる。6つのパラメータを適合させる場合には、4つ以上のターゲットポイントが必要とされる。タグの設計が、最大尤度推定を可能にするのに最低限必要とされるよりも多くのターゲットを含む場合、最大で、最低限必要とされるターゲットが認識できないほど損傷している場合でも、タグを認識し、復号することができる。
マクロドットの値を正確にサンプリングし得るように、タグの遠近変換を推測しなければならない。ターゲットポイントのうち4つを取り出して、タグ空間内で既知のサイズの矩形の遠近歪みをもつコーナとし、タグ空間と像空間の4つのポイント対を関係づける周知の方程式を解くことに基づいて(参照により内容を本明細書に組み込む、Heckbert,P.、Fundamentals of Texture Mapping and Image Warping、修士論文、Dept.of EECS、カリフォルニア大学バークレー校、Technical Report UCB/CSD 89/516号、1989年6月参照)、(220で)8自由度の遠近変換222を推測する。あるいは、この遠近変換は、3D変換218が利用可能な場合には、それから導出することができる。
タグ空間から像空間への推測された遠近変換222を用いて、(224で)既知のデータビット位置をそれぞれ、タグ空間から像空間に投影し、そこで、実数値位置を用いて、(224で)4つ(またはそれ以上)の該当する隣接画素を強調入力画像206内で双一次(または高次)内挿する。得られたマクロドットの値と適切な閾値を比較して、このマクロドットの値が0ビットまたは1ビットのいずれを表すかを判定する。
1つまたは複数の完全な符号語のビットがサンプリングされた後で、(228で)これらの符号語を復号して、タグ内で符号化された所望のデータ230が得られる。符号語の冗長性を利用して、サンプリングされたデータ中の誤りを検出するか、あるいは、サンプリングされたデータ中の誤りを訂正することができる。
米国特許出願第09/575154号で論じているように、得られたタグデータ230により、直接または間接に、タグを含む表面領域およびこの領域内のタグの位置を識別し得る。したがって、この表面領域に対する相対的な感知装置の正確な位置は、タグデータ230、およびタグに対する感知装置の3D変換218から導出し得る。
1.2.4 タグマップ
タグを復号すると、領域ID、タグID、およびタグに対するペン変換が得られる。タグID、およびタグに対する相対的なペン位置を、タグ化された領域内の絶対位置に翻訳する前に、この領域内でのタグの位置を知る必要がある。これは、タグ化された領域内の各タグIDを対応する位置にマッピングする関数であるタグマップによって与えられる。図22に、ネットページプリンタのクラス図の一部として、タグマップのクラス図を示す。
タグマップは、表面領域にタグをタイル状に並べるのに用いる方式を反映しており、これは、表面のタイプに応じて変化し得る。複数のタグ化された領域が、同じタイル状敷詰め方式および同じタグ番号付け方式を共有する場合、これらの領域は同じタグマップも共有し得る。
ある領域についてのタグマップは、領域IDによって引出し可能でなければならない。そのため、領域ID、タグID、およびペン変換が与えられる場合には、タグマップを引き出すことができ、タグIDをこの領域内の絶対タグ位置に翻訳することができ、タグに対する相対的なペン位置をタグの位置に追加して、この領域内で絶対ペン位置を得ることができる。
タグIDは、タグマップを介した変換の助けとなる構造とし得る。タグIDは、例えば、それが現れる表面のタイプに応じて、直交座標または極座標を符号化することができる。このタグID構造は、タグマップによって管理かつ把握されており、したがって、異なるタグマップに関連するタグIDの構造は異なることがある。例えば、タグIDは単に、このタグの1対のxおよびy座標を符号化することができる。この場合、タグマップは単に、座標精度のレコードからなる。座標精度が一定の場合、タグマップは暗黙的なものとし得る。
1.2.5 タグ化方式
2つの別個の表面符号化方式を対象とするが、いずれの方式も、この節で前に説明したタグ構造を用いる。好ましい符号化方式では、すでに論じたように「位置を示す」タグを用いる。代替符号化方式では、オブジェクトを示すタグを用いる。
位置を示すタグは、タグ化された領域に関連するタグマップによって翻訳されると、この領域内での一意のタグ位置が得られるタグIDを含む。このタグ位置に、タグに対するペン位置を追加して、この領域内でのペンの位置が得られる。これを用いて、この領域に関連するページ記述におけるユーザインターフェース要素に対する相対的なペンの位置を求める。ユーザインターフェース要素自体が識別されるだけでなく、このユーザインターフェース要素に対する相対的な位置も識別される。したがって自明には、位置を示すタグは、個々のユーザインターフェース要素のゾーンにおける絶対ペン経路の取得をサポートする。
オブジェクトを示すタグは、この領域に関連するページ記述におけるユーザインターフェース要素を直接識別するタグIDを含む。ユーザインターフェース要素のゾーン内のタグはすべて、このユーザインターフェース要素に結び付き、そのためこれらのタグはすべて同じになり、したがって区別がつかなくなる。したがって、オブジェクトを示すタグは、絶対ペン経路の取得にサポートしない。ただし、オブジェクトを示すタグは、相対ペン経路の取得にはサポートする。位置サンプリング周波数が、遭遇するタグ周波数の2倍よりも大きい限り、ストローク内での1つのサンプリングされたペン位置から次のサンプリングされたペン位置への変位を明確に求めることができる。
いずれのタグ化方式でも、ユーザが適切な感知装置を使用して印刷されたページと対話し、それによって、この感知装置によってタグデータが読み取られ、ネットページシステム内で適切な応答が生成され得るという点で、タグは、ユーザ対話要素としてのネットページ上の関連する視覚要素と協働して機能する。
1.3 文書およびページの記述
図25および図26に、文書およびページの記述のクラス図の好ましい実施形態を示す。
ネットページシステムでは、文書を3つのレベルで記述する。最も抽象的なレベルでは、文書836は階層構造を有し、その端末要素839は、テキストオブジェクト、テキストスタイルオブジェクト、画像オブジェクトなどのコンテンツオブジェクト840に関連づけられる。文書が、特定のページサイズで、かつユーザの特定の倍率の好みに従ってプリンタで印刷された後で、この文書は、ページ数が付けられるか、またはその他の方法でフォーマットされる。フォーマットされた端末要素835は、場合によっては、端末要素835に対応する端末要素に関連づけられるものとは異なるコンテンツオブジェクトに関連づけられることになる。特に、コンテンツオブジェクトがスタイルに関係する場合はそうである。文書およびページの印刷されたインスタンスもそれぞれ別々に記述され、それによって、特定のページインスタンス830を介して取得された入力を、同じページ記述の他のインスタンスを介して取得された入力とは別に記録することができる。
ページサーバ上に最も抽象的な文書記述が存在することにより、ユーザは、ソース文書の特定のフォーマットを受け入れることを強制されずに、文書のコピーを要求することができる。ユーザは、プリンタを介して、例えば異なるページサイズでコピーを要求し得る。逆に、ページサーバ上にフォーマットされた文書記述が存在することにより、このページサーバは、個々の印刷されたページに関するユーザの動作を効率よく解釈し得る。
フォーマットされた文書834は、1組のフォーマットされたページ記述5からなる。これらのページ記述はそれぞれ、1組のフォーマットされた端末要素835からなる。フォーマットされた要素はそれぞれ、ページ上に空間的な範囲すなわちゾーン58を有する。これにより、ハイパーリンクおよび入力フィールドなどの入力要素のアクティブエリアが定義される。
文書インスタンス831は、フォーマットされた文書834に対応する。文書インスタンス831は、1組のページインスタンス830からなり、ページインスタンス830はそれぞれ、フォーマットされた文書のページ記述5に対応する。各ページインスタンス830は、印刷された1枚の一意のネットページ1を記述し、このネットページのページID50を記録する。ページインスタンスが、単独に要求されたページのコピーを表す場合には、このページインスタンスは文書インスタンスの一部ではない。
ページインスタンスは、1組の端末要素インスタンス832からなる。要素インスタンスは、それがインスタンス固有の情報を記録する場合にのみ存在する。そのため、ハイパーリンクインスタンスは、ハイパーリンク要素のために存在する。というのは、ハイパーリンクインスタンスが、このページインスタンスに固有なトランザクションID55を記録するからである。フィールドインスタンスは、フィールド要素のために存在する。というのは、フィールドインスタンスが、このページインスタンスに固有な入力を記録するからである。ただし、テキストフローなどの静的な要素のための要素インスタンスは存在しない。
図27に示すように、端末要素は、静的な要素843、ハイパーリンク要素844、フィールド要素845、またはページサーバコマンド要素846とすることができる。図28に示すように、静的な要素843は、関連するスタイルオブジェクト854を伴うスタイル要素847、関連するスタイル化されたテキストオブジェクト855を伴うテキストフロー要素848、関連する画像オブジェクト856を伴う画像要素849、関連する図形オブジェクト857を伴う図形要素850、関連するビデオクリップオブジェクト858を伴うビデオクリップ要素851、関連するオーディオクリップオブジェクト859を伴うオーディオクリップ要素852、または関連するスクリプトオブジェクト860を伴うスクリプト要素853とすることができる。
ページインスタンスは、ページ上で取得された、特定の入力要素に適用されないデジタルインクを記録するのに使用するバックグラウンドフィールド833を有する。
本発明の好ましい形態では、タグマップ811は、各ページインスタンスに関連づけられ、それによって、ページ上のタグがこのページ上の位置に翻訳される。
1.4 ネットページネットワーク
好ましい実施形態では、ネットページネットワークは、図3に示すように、インターネットなどのネットワーク19を介して接続された分散した1組の、ネットページページサーバ10、ネットページ登録サーバ11、ネットページIDサーバ12、ネットページアプリケーションサーバ13、ネットページ発行サーバ14、およびネットページプリンタ601からなる。
ネットページ登録サーバ11は、ユーザ、ペン、プリンタ、アプリケーション、および刊行物の関係を記録するサーバであり、それによって、様々なネットワーク活動が許可される。ネットページ登録サーバ11は、アプリケーションのトランザクションにおいて、認証されたユーザの代わりに署名プロキシとして、ユーザおよび行為を認証する。ネットページ登録サーバ11は、手書き認識サービスも提供する。上記で説明したように、ネットページページサーバ10は、ページ記述およびページインスタンスについての恒久的な情報を維持する。ネットページネットワークは、任意の数のページサーバを含み、各ページサーバは、ページインスタンスのサブセットを処理する。ページサーバは、各ページインスタンスごとにユーザ入力値も維持するので、ネットページプリンタなどのクライアントは、ネットページ入力を直接適切なページサーバに送信する。ページサーバは、このような入力を、対応するページの記述に関して解釈する。
ネットページIDサーバ12は、文書ID51をオンデマンドで割り当て、そのID割り当て方式を介してページサーバの負荷を均衡させる。
ネットページプリンタは、インターネットDNS(分散ネームシステム)またはその類似物を利用して、ネットページのページID50を解決して対応するページインスタンスを扱うネットページページサーバのネットワークアドレスにする。
ネットページアプリケーションサーバ13は、対話式ネットページアプリケーションをホストするサーバである。ネットページ発行サーバ14は、ネットページプリンタにネットページ文書を発行するアプリケーションサーバである。これらのサーバは、第2節で詳細に説明する。
ネットページサーバは、IBM(登録商標)、Hewlett−Packard(登録商標)、およびSUN(登録商標)などの製造業者からの様々なネットワークサーバプラットフォーム上で動作し得る。単一のホスト上で複数のネットページサーバを同時に実行することもできるし、いくつかのホストにわたって単一のサーバを分散させることもできる。ネットページサーバが提供する機能の一部または全部を、具体的には、IDサーバおよびページサーバが提供する機能を、ネットページプリンタなどのネットページ機器内で、コンピュータワークステーション内で、またはローカルネットワーク上で直接実現することもできる。
1.5 ネットページプリンタ
ネットページプリンタ601は、ネットページシステムに登録され、ネットページ文書をオンデマンドで、また購読によって印刷する機器である。各プリンタは、一意のプリンタID62を有し、インターネットなどのネットワークを介して、理想的にはブロードバンド接続を介してネットページネットワークに接続される。
ネットページプリンタは、不揮発性メモリ内の身元およびセキュリティの設定の他には、恒久的に記憶されたものをもたない。ユーザに関する限り、「ネットワークはコンピュータである」。ネットページは、分散ネットページページサーバ10を使用して、特定のネットページプリンタとは無関係に、空間および時間を越えて対話式に機能する。
ネットページプリンタは、ネットページ発行サーバ14から購読しているネットページ文書を受け取る。各文書は、ページレイアウトと、このページに配置される実際のテキストおよび画像のオブジェクトの2つの部分で配信される。個人向けにあつらえられているので、ページレイアウトは一般に、個々の購読者に固有のものであり、そのため、適切なページサーバを介してこの購読者のプリンタにポイントキャストされる。一方、テキストおよび画像のオブジェクトは一般に、他の購読者と共有され、そのため、すべての購読者のプリンタおよび適切なページサーバにマルチキャストされる。
ネットページ発行サーバは、ドキュメント内容のポイントキャストおよびマルチキャストへのセグメント化を最適化する。文書のページレイアウトのポイントキャストを受け取った後でプリンタは、受信すべきマルチキャストがある場合には、それがどれかを知ることになる。
プリンタが、印刷すべき文書を定義する完全なページレイアウトおよびオブジェクトを受け取ると、プリンタはこの文書を印刷することができる。
プリンタは、奇数ページおよび偶数ページをラスタデータ化し、これらのページをシートの両面に同時に印刷する。このプリンタは、全2重印刷エンジンコントローラ760および専用のMemjet印刷ヘッド350を使用する印刷エンジンを含む。
印刷プロセスは、ページ記述のラスタデータ化と、ページ画像の伸張および印刷という2つの切り離された段階からなる。RIP(ラスタ画像プロセッサ)は、並列に実行される1つまたは複数の標準のDSP757からなる。全2重印刷エンジンコントローラは、印刷エンジン内の印刷ヘッドの動作に同期して、リアルタイムでページ画像を伸張し、ディザ処理し、かつ印刷するカスタムプロセッサからなる。
IR印刷が可能でないプリンタは任意選択で、IR吸収性黒インクを使用してタグを印刷するが、こうすると、ページのその他には何もない区域にタグが制限される。このようなページは、IR印刷されたページよりも機能が制限されるが、依然としてネットページとして分類される。
通常のネットページプリンタでは、紙のシート上にネットページを印刷する。より特殊なネットページプリンタは、球体などのより特殊な表面上に印刷することができる。各プリンタは、少なくとも1つの表面タイプをサポートし、各表面タイプごとに、少なくとも1つのタイル状にタグを並べる方式、したがってタグマップをサポートする。文書を印刷するのに実際に用いるタイル状にタグを並べる方式を記述するタグマップ811は、この文書のタグを正確に解釈することができるようにこの文書に関連づけられる。
図22に、ネットページネットワーク上の登録サーバ11によって維持されるプリンタ関連情報を反映した、ネットページプリンタのクラス図を示す。
下記の第6節では、図11〜図16を参照して、ネットページペンの好ましい実施形態をより詳細に説明する。
1.5.1 Memjet印刷ヘッド
ネットページシステムは、サーマルインクジェット、圧電インクジェット、レーザ電子写真その他を含めて、広範なデジタル印刷技術によって作製されたプリンタを使用して動作し得る。ただし、広く消費者に受け入れられるには、ネットページプリンタは以下の特徴を有することが望ましい。
・カラー印刷が写真品質であること
・テキスト印刷が高品質であること
・信頼性が高いこと
・プリンタのコストが安いこと
・インクのコストが安いこと
・紙のコストが安いこと
・操作が簡単なこと
・印刷がほぼ無音であること
・印刷スピードが速いこと
・両面に同時に印刷されること
・フォームファクタがコンパクトであること
・電力消費量が少ないこと
これらすべての特徴を有する商業的に利用可能な印刷技術は存在しない。
これらの特徴を有するプリンタを製作し得るように、本出願人は、Memjet技術と称する新しい印刷技術を発明した。Memjetは、MEMS(微小電子機械システム)技術を利用して製作したページ幅印刷ヘッドを組み込んだドロップオンデマンド方式のインクジェット技術である。図17に、Memjet印刷ヘッドの単一の印刷素子300を示す。ネットページ壁型プリンタには、168960個の印刷素子300が組み込まれ、それによって、1600dpiのページ幅全2重プリンタが形成される。このプリンタは、シアン、マゼンタ、イエロー、ブラック、および赤外用のインク、ならびにペーパーコンディショナおよびインク定着剤を同時に印刷する。
印刷素子300は、長さが約110ミクロンであり、幅が約32ミクロンである。これらの印刷素子のアレイは、(図示しない)CMOS論理回路、データ転送回路、タイミング回路、および駆動回路を組み込んだシリコン基板301上に形成される。
印刷素子300の主要な要素は、ノズル302、ノズルリム303、ノズルチャンバ304、流体シール305、インクチャネルリム306、レバーアーム307、能動アクチュエータビーム対308、受動アクチュエータビーム対309、能動アクチュエータアンカー310、受動アクチュエータアンカー311、およびインク注入口312である。
能動アクチュエータビーム対308は、結合部319のところで受動アクチュエータビーム対309に機械的に結合される。いずれのビーム対も、それらのそれぞれのアンカーポイント310および311のところで固定される。308、309、310、311、および319の要素の組合せにより、カンチレバー式電熱曲げアクチュエータ320が形成される。
図18に、印刷素子300のアレイの一部を、印刷素子300の断面図315を含めて示す。断面図315は、シリコンウエハ301を貫通するインク注入口312が明確に示されるようにインクなしで示す。
図19(a)、図19(b)、および図19(c)に、Memjet印刷素子300の動作サイクルを示す。
図19(a)に、インク液滴を印刷する前のインクメニスカス316の静止位置を示す。インクは、インクメニスカス316における表面張力によって、かつノズルチャンバ304とインクチャネルリム306の間に形成された流体シール305のところでノズルチャンバ内に保持される。
印刷中、印刷ヘッドのCMOS回路は、印刷エンジンコントローラから正しい印刷素子にデータを分配し、このデータをラッチし、このデータをバッファして能動アクチュエータビーム対308の電極318を駆動する。こうすると、ビーム対308に電流が約1マイクロ秒流れ、その結果、ジュール熱が発生する。ジュール熱に起因する温度上昇により、ビーム対308が膨張する。受動アクチュエータビーム対309は加熱されないので膨張せず、その結果、2つのビーム対間で応力差が生じる。この応力差は、電熱曲げアクチュエータ320のカンチレバー端が基板301に向かって曲がることによって部分的に軽減される。この動きは、レバーアーム307によりノズルチャンバ304に伝えられる。ノズルチャンバ304は、約2ミクロン移動して、図19(b)に示す位置に至る。これにより、インクの圧力が増加して、インク321がノズル302の外に出され、それによってインクメニスカス316が膨らむ。ノズルリム303が、ノズルチャンバ304の表面全体にわたってインクメニスカス316が拡がるのを防ぐ。
ビーム対308と309の温度が等しくなると、アクチュエータ320は、その元の位置に戻る。図19(c)に示すように、これは、ノズルチャンバ内のインク321からインク液滴317が離れるのを助ける。メニスカス316の表面張力の作用によって、ノズルチャンバが再充填される。
図20に、印刷ヘッド350の一部を示す。ネットページプリンタでは、351の方向の印刷ヘッドの長さは、紙の全幅(典型的には210mm)である。図に示す部分は、長さ0.4mm(完全な印刷ヘッドの約0.2%)である。印刷中、紙は、固定された印刷ヘッドを352の方向に通過して移動する。印刷ヘッドは、6列の組合せ印刷素子300を有し、それによって、インク注入口312から供給される6つの色またはタイプのインクを印刷する。
動作中に印刷ヘッドの脆い表面を保護するために、印刷ヘッド基板301にノズル保護ウエハ330を取り付ける。各ノズル302ごとに、対応するノズル保護穴331があり、それを通ってインク液滴が飛び出す。ノズル保護穴331が紙の繊維その他のくずで遮断されないように、印刷中に、空気注入口332を通して濾過空気をポンプで送り、ノズル保護穴から出す。インク321が乾燥しないように、プリンタが使用されていない間は、ノズル保護部を密封する。
1.6 ネットページペン
ネットページシステムの能動感知装置は、典型的にはペン101であり、ペン101は、その埋込コントローラ134を使用して、ページから画像センサを介してIR位置タグを取得し、それを復号することができる。この画像センサは、近赤外波長のところでのみ感知可能な適切なフィルタを備えた固体デバイスである。以下でより詳細に説明するように、このシステムは、ペン先が表面に接触する時点を感知することができ、このペンは、人間の手書きを捕らえるのに十分な速さ(すなわち、200dpi以上、かつ100Hz以上)でタグを感知することができる。ペンが取得した情報は暗号化され、プリンタ(または基地局)に無線で送信される。このプリンタまたは基地局は、(既知の)ページ構造に関してこのデータを解釈する。
ネットページペンの好ましい実施形態は、通常のマーキングインクペンとして、かつ非マーキングスタイラスとして動作する。ただし、マーキングの態様は、ネットページシステムをインターネット用のインターフェースとして使用するときなど、ネットページシステムをブラウザシステムとして使用するのには必要ではない。各ネットページペンは、ネットページシステムに登録され、一意のペンID61を有する。図23に、ネットページネットワーク上の登録サーバ11によって維持されるペン関連情報を反映した、ネットページペンのクラス図を示す。
いずれかのペン先がネットページに接触すると、このペンは、このページに対する相対的なペンの位置および向きを求める。このペン先には力センサが取り付けられ、ペン先にかかる力を閾値に対して解釈して、ペンが「持ち上げられている」、あるいは「下げられている」のいずれであるかを示す。こうすると、ペン先で押し付けることによって、ページ上の対話要素を「クリック」して、例えば、ネットワークからの情報を要求することができる。さらに、この力を連続値として取得して、例えば、署名の完全な動力学特性を検証することができる。
このペンは、ペン先近傍のページ区域193を赤外スペクトル内で画像化することによって、ネットページ上でのペン先の位置および向きを求める。このペンは、最近接タグを復号し、画像化されたタグに関する遠近歪みの観察結果およびペン光学系の既知の幾何学的性質から、このタグに対する相対的なペン先の位置を計算する。ページ上のタグの密度はタグのサイズに反比例するので、タグの位置分解能が低いことがあるが、調整した位置分解能はかなり高くなり、その結果、手書きを正確に認識するのに必要とされる最低分解能よりも高くなる。
ネットページに対する相対的なペンの動きは、一連のストロークとして取得される。ストロークは、ページ上でタイムスタンプされたペン位置のシーケンスからなる。このシーケンスは、ペンを下げるイベントによって開始され、それに続くペンを上げるイベントによって完了する。ストロークは、ネットページのページID50が変化するたびに、すなわち、通常の状況下ではストロークの開始時に、このページIDによってもタグ化される。
各ネットページペンは、そのペンに関連するカレントの選択826を有し、それによってユーザは、コピーアンドペースト操作などを実施し得る。この選択は、既定時間後にシステムがこの選択を破棄することができるようにタイムスタンプされる。カレントの選択は、ページインスタンスのある領域を記述するものである。このカレントの選択は、ペンによって取得された、このページのバックグラウンド区域に対する相対的な最新のデジタルインクストロークからなる。このカレントの選択は、選択ハイパーリンクの活動化によってアプリケーションに提示された後で、アプリケーション固有のやり方で解釈される。
各ペンは、カレントのペン先824を有する。これは、各ペンによって最後にシステムに通知されたペン先である。上記で説明した既定のネットページペンの場合、マーキング用黒インクペン先または非マーキングスタイラスペン先のいずれかがカレントである。各ペンは、カレントのペン先スタイル825も有する。これは、アプリケーションによって、例えば、ユーザがパレットから色を選択することに応答して、このペンに最後に関連づけられたペン先スタイルである。既定のペン先スタイルは、カレントのペン先に関連づけられたペン先スタイルになる。ペンによって取得されたストロークは、カレントのペン先スタイルでタグ化される。その後、これらのストロークを再現するときには、これらのストロークがタグ化されたペン先スタイルで再現される。
ペンが通信し得るプリンタの範囲にペンが入るたびに、このペンは、その「オンライン」LEDをゆっくりと点滅させる。ペンが、ページに対する相対的なストロークを復号するのに失敗すると、このペンは、その「エラー」LEDを一時的に活動化させる。ペンが、ページに対する相対的なストロークを復号するのに成功すると、このペンは、その「ok」LEDを一時的に活動化させる。
取得された一続きのストロークをデジタルインクと称する。デジタルインクは、図面および手書きされたものをデジタル交換するための基礎であり、それによって、手書きがオンラインで認識され、署名がオンラインで検証される。
このペンは無線式であり、短距離無線リンクを介してネットページプリンタにデジタルインクを送信する。送信されるデジタルインクは、プライバシーおよびセキュリティのために暗号化し、効率よく送信されるようにパケット化するが、プリンタでタイミングよく処理されるようにするために、ペンがもち上がるイベントの後で常に破棄する。
ペンが、プリンタの範囲外にある場合、このペンは、内部メモリにデジタルインクをバッファする。この内部メモリは、連続手書きを10分よりも長くバッファすることができる容量を有する。このペンが再度プリンタの範囲内に入ると、このペンは、バッファされたデジタルインクを転送する。
ペンは、任意の数のプリンタに登録し得るが、紙およびネットワーク上のネットページにはあらゆる状態のデータが存在するので、特定の時間にペンがどのプリンタと通信しているかは概して重要ではない。
図8〜図10を参照して、以下の第6節でペンの好ましい実施形態をより詳細に説明する。
1.7 ネットページの対話
ネットページプリンタ601は、ペン101を使用してネットページ1と対話するときに、このペンからストロークに関係するデータを受け取る。タグ4の符号化データ3は、ペンを使用してストロークなどの動きを実行するときに、このペンによって読み取られる。このデータにより、この特定のページの身元および関連する対話要素を求めることができ、このページに対するペンの相対位置の指示値を得ることができる。この指示データをプリンタに送信し、そこでこのプリンタは、DNSによってこのストロークのページID50を解決して、対応するページインスタンス830を維持するネットページページサーバ10のネットワークアドレスにする。次いで、プリンタは、このページサーバにこのストロークを送信する。このページが、少し前のストロークにおいて識別されたことがある場合、このプリンタのキャッシュにはすでに、その該当するページサーバのアドレスが入っていることがある。各ネットページは、ネットページページサーバによって恒久的に維持されるコンパクトなページレイアウトからなる(下記参照)。このページレイアウトは、一般にネットページネットワーク上の他の場所に記憶されている画像、フォント、およびテキストの断片などのオブジェクトを参照する。
ページサーバがペンからストロークを受け取ると、このページサーバは、このストロークが適用されるページ記述を引き出し、このストロークが、このページ記述のどの要素と交わるかを求める。次いで、このページサーバは、該当する要素のタイプのコンテクストにおいて、このストロークを解釈することができる。
「クリック」は、ペンを下げた位置と、その後でペンを上げた位置の間の距離および時間が、ともにある小さな最大値よりも小さいストロークである。クリックによって活動化されるオブジェクトは一般に、クリックが活動化されることを必要とし、したがって、それよりも長いストロークは無視される。「粗雑な」クリックなど、ペンの合わせ動作の失敗は、このペンの「ok」LEDから応答がないことによって示される。
ネットページのページ記述には、ハイパーリンクおよびフォームフィールドの2種類の入力要素がある。フォームフィールドを介した入力によっても、関連するハイパーリンクの活動化のトリガをかけることができる。
1.7.1 ハイパーリンク
ハイパーリンクは、リモートアプリケーションにメッセージを送信する手段であり、典型的には、ネットページシステムにおいて印刷による応答を引き出す。
ハイパーリンク要素844は、ハイパーリンクの活動化を処理するアプリケーション71、このアプリケーションへのハイパーリンクを識別するリンクID54、ユーザのアプリケーションエイリアスID65をハイパーリンク活動化に含めるようにシステムに要求する「エイリアス要求」フラグ、およびお気に入りとしてハイパーリンクを記録するか、またはハイパーリンクがユーザの履歴に現れるときに用いる記述を識別する。図29に、ハイパーリンク要素のクラス図を示す。
ハイパーリンクを活動化するとき、ページサーバは、ネットワーク上のどこかにあるアプリケーションに要求を送信する。このアプリケーションは、アプリケーションID64によって識別され、このアプリケーションIDは、DNSによって通常のやり方で解決される。図30に示すように、一般のハイパーリンク863、フォームハイパーリンク865、および選択ハイパーリンク864の3つのタイプのハイパーリンクがある。一般のハイパーリンクは、リンクした文書を要求することもできるし、単にサーバに好みを知らせることもできる。フォームハイパーリンクは、対応するフォームをアプリケーションに提示する。選択ハイパーリンクは、カレントの選択をアプリケーションに提示する。カレントの選択が、例えば単一単語のテキストを含む場合、アプリケーションは、この単語が現れるコンテクストにおけるこの単語の意味、または異なる言語に翻訳したものを与える単一ページ文書を返すことができる。ハイパーリンクのタイプはそれぞれ、アプリケーションにどんな情報を提示するかによって特徴づけられる。
対応するハイパーリンクインスタンス862は、このハイパーリンクインスタンスが現れるページインスタンスに固有なものとし得るトランザクションID55を記録する。このトランザクションIDは、このアプリケーションに対するユーザ固有のデータ、例えば、ユーザの代わりに購入アプリケーションによって維持される購入途中の「買い物カゴ」を識別することができる。
このシステムは、選択ハイパーリンクの活動化において、ペンのカレントの選択826を含む。このシステムは、フォームハイパーリンク活動化において、関連するフォームインスタンス868の内容を含むが、このハイパーリンクが、「提示デルタ」属性セットを有する場合、最後のフォーム提示以降の入力だけが含まれる。このシステムは、すべてのハイパーリンク活動化において有効な戻りパスを含む。
図31に示すように、ハイパーリンクされたグループ866は、関連するハイパーリンクを有するグループ要素838である。このグループ内の任意のフィールド要素を介して入力が行われると、このグループに関連するハイパーリンク844が活動化される。ハイパーリンクされたグループを用いて、ハイパーリンクの挙動を、チェックボックスなどのフィールドに関連づけることができる。フォームハイパーリンクの「提示デルタ」属性とともにハイパーリンクされたグループを用いて、アプリケーションに連続した入力を提供こともできる。したがって、ハイパーリンクされたグループを用いて、「黒板」対話モデルをサポートすることができる。すなわち、このモデルでは、入力が行われるとすぐにそれが取得され、したがって共有される。
1.7.2 フォーム
フォームは、印刷されたネットページを介して、関係する1組の入力を取得するのに使用する入力フィールドの集合を定義する。フォームにより、ユーザは、サーバ上で実行されるアプリケーションソフトウエアプログラムに1つまたは複数のパラメータを提示することができる。
フォーム867は、文書階層におけるグループ要素838である。フォーム867は最終的に、1組の端末フィールド要素839を含む。フォームインスタンス868は、あるフォームの印刷されたインスタンスを表す。フォームインスタンス868は、このフォームのフィールド要素845に対応する1組のフィールドインスタンス870からなる。各フィールドインスタンスは、関連値871を有し、関連値871のタイプは、対応するフィールド要素のタイプによって決まる。各フィールド値は、個々の印刷されたフォームインスタンスを介して、すなわち、1枚または複数枚の印刷されたネットページを介して入力を記録する。図32に、フォームのクラス図を示す。
各フォームインスタンスは、このフォームがアクティブであるか、フリーズした状態、提示された状態、無効、または期限切れであるかを示すステータス872を有する。フォームは、最初に印刷されるときにはアクティブである。フォームは、それが署名されるか、あるいはそのフリーズ時間に達するとフリーズした状態になる。フォームは、その提示ハイパーリンクの1つが活動化されると、このハイパーリンクがその「提示デルタ」属性セットをもたない場合に限り、提示された状態になる。フォームは、ユーザが、無効フォーム、リセットフォーム、または複製フォームのページコマンドを呼び出すと無効になる。フォームは、このフォームの指定された有効期限に達すると、すなわち、このフォームがアクティブである期間が、このフォームの指定された継続期間よりも長くなると期限切れになる。フォームがアクティブである間、フォームに入力することができる。アクティブでないフォームを介した入力は、その代わりに、該当するページインスタンスのバックグラウンドフィールド833で取得される。フォームがアクティブな、またはフリーズした状態にあるときに、フォームを提示することができる。フォームがアクティブでもなく、フリーズした状態でもないときにフォームを提示しようと試みても受け付けられず、その代わりにフォームステータスレポートが引き出される。
各フォームインスタンスは、(59で)それから派生したフォームインスタンスに関連づけられ、それによってバージョンの履歴が提供される。これにより、特定の期間におけるフォームの最新バージョンを除くすべてのバージョンを、検索から除外することができる。
すべての入力はデジタルインクとして取得される。デジタルインク873は、1組のタイムスタンプされたストロークのグループ874からなる。これらのグループはそれぞれ、1組のスタイル化されたストローク875からなる。各ストロークは、1組のタイムスタンプされたペン位置876からなり、これらの位置はそれぞれ、ペンの向きおよびペン先の力も含む。図33に、デジタルインクのクラス図を示す。
フィールド要素845は、チェックボックスフィールド877、テキストフィールド878、図面フィールド879、または署名フィールド880とし得る。図34に、フィールド要素のクラス図を示す。フィールドのゾーン58で取得されたデジタルインクは、このフィールドに割り当てられる。
図35に示すように、チェックボックスフィールドは、関連するブール値881を有する。チェックボックスフィールドのゾーンで取得された任意のマーク(チェック、ばつ印、ストローク、塗りつぶしジグザグなど)により、フィールド値に真値が割り当てられる。
図36に示すように、テキストフィールドは、関連するテキスト値882を有する。テキストフィールドのゾーンで取得されたデジタルインクはどれも、オンライン手書き認識によってテキストに自動的に変換され、このテキストは、フィールド値に割り当てられる。オンライン手書き認識は周知のものである(例えば、Tappert,C.、C.Y.Suen、T.Wakahara、「The State of the Art in On−line Handwriting Recognition」、IEEE Transactions on Pattern Analysis and Machine Intelligence、第12巻、第8号、1990年8月を参照されたい。この内容を相互参照により本明細書に組み込む)。
図37に示すように、署名フィールドは、関連するデジタル署名値883を有する。署名フィールドのゾーンで取得されたデジタルインクはどれも、ペンの所有者の身元に関して自動的に検証され、このフィールドが一部をなすフォームの内容のデジタル署名が生成され、このフィールド値に割り当てられる。このデジタル署名は、このフォームを所有するアプリケーションに固有なこのペンのユーザの個人署名キーを使用して生成される。オンライン署名検証は周知のものである(例えば、Plamondon,R.、G.Lorette、「Automatic Signature Verification and Writer Identification− The State of the Art」、Pattern Recognition、第22巻、第2号、1989年を参照されたい。この内容を相互参照により本明細書に組み込む)。
フィールド要素は、その「隠し」属性がセットされている場合には隠れている。隠しフィールド要素は、ページ上に入力ゾーンをもたず、入力を受け付けない。隠しフィールド要素は、このフィールドを含むフォームが提示されるときに、フォームデータに含まれる関連するフィールド値を有することがある。
取消線を示す削除などの「編集」コマンドも、フォームフィールド内で認識し得る。
手書き認識アルゴリズムは、(ペンのマーキングのビットマップにのみアクセスする)「オフライン」ではなく、(ペンの動きの動力学特性にアクセスする)「オンライン」で機能するので、このアルゴリズムにより、無終止の不連続に書かれた文字を、比較的高精度で、書き手に依存する訓練段階なしに認識することができる。書き手に依存する手書きモデルは、自動的に徐々に生成されるが、必要な場合には、前もって生成することができる。
すでに述べたように、デジタルインクは、一続きのストロークからなる。個々の要素のゾーン内で始まるストロークはどれも、その要素のデジタルインクストリームに追加されて、解釈する準備が整う。オブジェクトのデジタルインクストリームに追加されないストロークは、バックグラウンドフィールドのデジタルインクストリームに追加される。
バックグラウンドフィールドで取得されたデジタルインクは、選択ジェスチャとして解釈される。1つまたは複数のオブジェクトを取り囲むことは一般に、取り囲まれたオブジェクトの選択と解釈されるが、実際の解釈は、アプリケーションに固有のものである。
表2に、ペンとネットページのこれらの様々な対話をまとめる。
このシステムは、各ペンごとにカレントの選択を維持する。この選択は単に、バックグラウンドフィールドで取得された最新のストロークからなる。この選択は、挙動を予測し得るようにするために、不活動タイムアウトに達すると消去される。
どのフィールドで取得された未処理デジタルインクも、ネットページページサーバ上で保持され、このフォームがアプリケーションに提示されるときに、任意選択でフォームデータとともに送信される。こうすると、アプリケーションは、手書きテキストの変換など、最初の変換が疑わしい場合、この未処理デジタルインクに問い合わせることができる。これは、例えば、ある種のアプリケーション固有の一貫性チェックに合格しないフォームに対して、アプリケーションレベルで人間の介入を必要とすることがある。この延長として、フォームのバックグラウンド区域全体を、図面フィールドとして指定することができる。この場合、このアプリケーションは、このフォームの明示的なフィールド外にデジタルインクが存在することに基づき、ユーザが、これらのフィールド外のすでに埋められたフィールドの修正を指示したと仮定して、このフォームを人間の操作者に送るように決定し得る。
図38に、ネットページに対するペン入力を処理するプロセスの流れ図を示す。このプロセスは、(884で)ペンからストロークを受け取ることと、(885で)このストローク中でページID50が参照するページインスタンス830を識別することと、(886で)ページ記述5を引き出すことと、(887で)このストロークが交わるゾーン58を有するフォーマットされた要素839を識別することと、(888で)このフォーマットされた要素がフィールド要素に対応するかどうかを判定することと、そうである場合、(892で)受け取ったストロークをフィールド値871のデジタルインクに追加することと、(893で)このフィールドの蓄積されたデジタルインクを解釈することと、(894で)このフィールドが、ハイパーリンクされたグループ866の一部であるかどうかを判定することと、そうである場合、(895で)関連するハイパーリンクを活動化させることと、あるいは、(889で)フォーマットされた要素がハイパーリンク要素に対応するかどうかを判定することと、そうである場合、(895で)対応するハイパーリンクを活動化させることと、あるいは、入力フィールドもハイパーリンクも存在しない場合、(890で)受け取ったストロークをバックグラウンドフィールド833のデジタルインクに追加することと、(891で)受け取ったストロークを、登録サーバによって維持される、カレントペンのカレントの選択826にコピーすることからなる。
図38aに、フィールドの蓄積されたデジタルインクをこのフィールドのタイプに従って解釈する、図38に示すプロセスのステップ893の詳細な流れ図を示す。このプロセスは、(896で)このフィールドがチェックボックスであるかどうかと、(897で)このデジタルインクがチェックマークを表すかどうかを判定することと、そうである場合、(898で)このフィールド値に真値を割り当てることと、あるいは、(899で)このフィールドがテキストフィールドであるかどうかを判定することと、そうである場合、(900で)適切な登録サーバを使用してこのデジタルインクをコンピュータテキストに変換することと、(901で)この変換されたコンピュータテキストをフィールド値に割り当てることと、あるいは、(902で)このフィールドが署名フィールドであるかどうかを判定することと、そうである場合、(903で)適切な登録サーバを使用してこのデジタルインクをこのペンの所有者の署名として検証することと、(904で)やはり登録サーバを使用し、かつ対応するアプリケーションに関係するペンの所有者の個人署名キーを使用して、対応するフォームの内容のデジタル署名を生成することと、(905で)このデジタル署名をフィールド値に割り当てることからなる。
1.7.3 ページサーバコマンド
ページサーバコマンドは、ページサーバによってローカルに処理されるコマンドである。ページサーバコマンドは、フォーム、ページ、および文書のインスタンスに対して直接作用する。
図39に示すように、ページサーバコマンド907は、フォーム無効コマンド908、フォーム複製コマンド909、フォームリセットコマンド910、フォームステータス取得コマンド911、ページ複製コマンド912、ページリセットコマンド913、ページステータス取得コマンド914、文書複製コマンド915、文書リセットコマンド916、または文書ステータス取得コマンド917とし得る。
フォーム無効コマンドは、対応するフォームインスタンスを無効にする。フォーム複製コマンドは、対応するフォームインスタンスを無効にし、次いで、フィールド値が保存されたカレントフォームインスタンスのアクティブな印刷されたコピーを生成する。このコピーは、オリジナルと同じハイパーリンクトランザクションIDを含み、そのため、アプリケーションにはオリジナルとの区別がつかない。フォームリセットコマンドは、対応するフォームインスタンスを無効にし、次いで、フィールド値が破棄されたフォームインスタンスのアクティブな印刷されたコピーを生成する。フォームステータス取得コマンドは、対応するフォームインスタンスのステータスに関する印刷されたレポートを、このレポートが誰によって発行されたか、いつ印刷されたか、誰宛てに印刷されたか、およびこのフォームインスタンスのフォームステータスを含めて生成する。
フォームハイパーリンクインスタンスは、トランザクションIDを含むので、アプリケーションは、新しいフォームインスタンスの生成に関わらなければならない。したがって、新しいフォームインスタンスを要求するボタンは一般に、ハイパーリンクとして実施される。
ページ複製コマンドは、対応するページインスタンスの印刷されたコピーを、バックグラウンドフィールド値が保存された状態で生成する。このページが、フォームを含むか、あるいはフォームの一部である場合、ページ複製コマンドは、フォーム複製コマンドと解釈される。ページリセットコマンドは、対応するページインスタンスの印刷されたコピーを、バックグラウンドフィールド値が破棄された状態で生成する。このページが、フォームを含むか、あるいはフォームの一部である場合、ページリセットコマンドは、フォームリセットコマンドと解釈される。ページステータス取得コマンドは、対応するページインスタンスのステータスに関する印刷されたレポートを、このレポートが誰によって発行されたか、いつ印刷されたか、誰宛てに印刷されたか、このレポートが含むフォームのステータス、またはこのレポートの一部であるフォームのステータスを含めて生成する。
どのネットページにも現れるネットページロゴは通常、複製ページ要素に関連づけられる。
フィールド値が保存された状態でページインスタンスを複製するとき、フィールド値は、それらに固有のフォームで印刷される。すなわち、チェックマークは、標準チェックマーク図形として現れ、テキストは、活字テキストとして現れる。図面および署名だけが、それらの最初のフォームで、署名の検証が成功したことを示す標準図形を伴う署名とともに現れる。
文書複製コマンドは、対応する文書インスタンスの印刷されたコピーを、バックグラウンドフィールド値が保存された状態で生成する。文書がフォームを含む場合、文書複製コマンドは、フォーム複製コマンドと同じやり方でこれらのフォームを複製する。文書リセットコマンドは、対応する文書インスタンスの印刷されたコピーを、バックグラウンドフィールド値が破棄された状態で生成する。文書がフォームを含む場合、文書リセットコマンドは、フォームリセットコマンドと同じやり方でこれらのフォームをリセットする。文書ステータス取得コマンドは、対応する文書インスタンスのステータスに関する印刷されたレポートを、このレポートが誰によって発行されたか、いつ印刷されたか、誰宛てに印刷されたか、このレポートが含むフォームのステータスを含めて生成する。
ページサーバコマンドの「オン選択」属性がセットされている場合、このコマンドは、このコマンドを含むページに対してではなく、ペンのカレントの選択によって識別されたページに対して作用する。これにより、ページサーバコマンドのメニューを印刷することができる。対象ページが、指定されたページサーバコマンド用のページサーバコマンド要素を含まない場合、このコマンドは無視される。
アプリケーションは、ハイパーリンクされたグループに、該当するページサーバコマンド要素を埋め込むことによって、アプリケーション固有の処理を行うことができる。ページサーバは、ページサーバコマンドを実行するのではなく、ハイパーリンクされたグループに関連するハイパーリンクを活動化させる。
ページサーバコマンド要素は、その「隠し」属性がセットされている場合には隠れている。隠しコマンド要素は、ページ上に入力ゾーンをもたず、そのため、ユーザが直接活動化させることはできない。ただし、異なるページに埋め込まれたページサーバコマンドによって、そのページサーバコマンドの「オン選択」属性がセットされている場合には、隠しコマンド要素を活動化させることができる。
1.8 ネットページの標準の特徴
好ましい形態では、各ネットページは、ページ下側のネットページロゴとともに印刷され、それによって、このページがネットページであり、したがって対話特性を有することを示す。このロゴは、コピーボタンとしても働く。ほとんどの場合、このロゴを押すと、そのページのコピーが生成される。フォームの場合には、このボタンにより、フォーム全体のコピーが生成される。チケットまたはクーポンなどのセキュアな文書の場合には、このボタンにより、説明注意書きまたは宣伝用のページが引き出される。
既定の単一ページコピー機能は、該当するネットページページサーバによって直接処理される。特別なコピー機能は、ロゴボタンをアプリケーションにリンクすることによって処理される。
1.9 ユーザヘルプシステム
好ましい実施形態では、ネットページプリンタは、「ヘルプ」と標示した単一のボタンを有する。このボタンを押すと、1枚のヘルプページ46の情報が引き出される。この情報は、
・プリンタ接続の状態
・プリンタ消耗品の状態
・最上位ヘルプメニュー
・文書機能メニュー
・最上位ネットページネットワークディレクトリ
を含む。
このヘルプメニューは、ネットページシステムの使用方法に関する階層マニュアルを提供する。
文書機能メニューは、以下の機能を含む。
・文書のコピーを印刷する
・フォームの清書を印刷する
・文書のステータスを印刷する
文書機能は、その文書を選択し、次いでボタンを押すことによって開始される。文書のステータスは、その文書を誰がいつ発行し、誰に配信し、その後、フォームとして誰にいつ提示したかを示す。
プリンタが印刷不能の場合には、ヘルプページは明らかに利用不可能である。この場合、「エラー」灯が点灯し、ユーザは、ネットワークを介して遠隔診断を要求し得る。
2. 個人向けにあつらえられた発行モデル
以下の説明では、標準刊行物の例としてニュースを用いて、ネットページシステムにおける個人化メカニズムを示す。ニュースはしばしば、新聞およびニュース雑誌のニュースという限定された意味で用いられるが、この状況で意図される範囲はより広いものである。
ネットページシステムでは、ニュース刊行物の記事コンテンツおよび広告コンテンツは、異なるメカニズムを用いて個人向けにあつらえられる。記事コンテンツは、読者が明示的に述べ、かつ読者から暗黙に取得された興味のプロフィールに従って個人向けにあつらえられる。広告コンテンツは、読者の地域および人口統計に従って個人向けにあつらえられる。
2.1 記事の個人化
購読者は、ニュース刊行物を配信するものおよびニュースストリームを配信するものの2種類のニュース供給源を利用し得る。ニュース刊行物は、発行者によって集められ編集され、ニュースストリームは、ニュース発行者または特殊なニュースアグリゲータによって集められる。ニュース刊行物は一般に、従来の新聞およびニュース雑誌に相当し、ニュースストリームには、多くの様々な、通信社からの「生の」ニュース放送、続き漫画、フリーランスライターのコラム、友の会掲示板、または読者自身の電子メールなどがあり得る。
ネットページ発行サーバは、編集されたニュース刊行物の発行および複数のニュースストリームの集約をサポートする。読者によって直接選択されたニュースストリームの集約、したがってそれらのフォーマット化を扱うことによって、このサーバは、普通なら編集の制御がきかないページ上に広告を載せることができる。
購読者は、1つまたは複数の寄稿ニュース刊行物を選択し、それら各刊行物の個人向けにあつらえたバージョンを作成することによって日刊新聞を構築する。得られた日刊版は、印刷され合わせて綴じられて1枚の新聞になる。家庭の各構成員は通常、異なる日刊刊行物を選択し、次いでそれらをカスタマイズすることによって、自分の異なる興味および好みを表現する。
各刊行物ごとに、読者は任意選択で、特定のセクションを選択する。いくつかのセクションは日々掲載され、他のセクションは、週に一度掲載される。The New York Timesオンラインから利用可能な日々のセクションは、例えば、「Page One Plus」、「National」、「International」、「Opinion」、「Business」、「Arts/Living」、「Technology」、および「Sports」を含む。利用可能なセクションの組は、この既定のサブセットの場合と同様に、刊行物に固有のものである。
読者は、それぞれ任意の数のニュースストリームを利用するあつらえたセクションを作成することによって、日刊新聞を拡張することができる。あつらえたセクションは、電子メールおよび友人の通知用(「個人」)に、または、特定の話題に関するニュース放送の監視用(「警戒」または「切抜き」)に作成することができよう。
各セクションごとに、読者は任意選択で、そのサイズを定性的に(例えば、短い、中位、または長い)あるいは数値的に(すなわち、ページ数に関する制限として)指定し、広告の所望の割合を定性的に(例えば、多い、普通、少ない、全くない)あるいは数値的に(すなわち、パーセンテージとして)指定する。
読者は任意選択で、短い記事を多くするか、あるいは、長い記事を数を少なくして載せるかの好みも表現する。各記事は、この好みを支持するために長短の両方の形態で書かれる(または編集される)のが理想的である。
記事は、読者の予想見識度に合うように、例えば、子供向けバージョンおよび大人向けバージョンが提供されるように異なるバージョンで書く(または編集する)こともできる。読者の年齢に応じて適切なバージョンを選択する。読者は、読者の生物学的な年齢に優先する「読書年齢」を指定することができる。
各セクションを構成する記事は、編集者によって選択され優先順位が付けられ、それぞれ有用な存続期間が割り当てられる。指定されない場合は、これらの記事は、すべての該当する購読者に優先順位順に配信されるが、購読者の版のスペースの制約次第である。
しかるべきセクションでは、読者は任意選択で、協調フィルタリングを行うことができる。この場合、これを存続期間が十分に長い記事に適用する。協調フィルタリングに見合う記事はそれぞれ、その記事の終わりに格付けボタンとともに印刷する。これらのボタンにより、簡単な選択肢(例えば、「好き」および「嫌い」)が提供され、それによって、読者がその記事を格付けする手間をかける可能性が高くなる。
したがって、編集者は実際上、優先順位が高く、かつ存続期間が短い記事を不可欠な読み物とみなし、最も適切な購読者に配信する。
読者は任意選択で、掘出し物ファクタを定性的に(例えば、意外なものにするよう、または意外なものにしないよう)、あるいは数値的に指定する。掘出し物ファクタが高いと、協調フィルタリング時の一致に用いる閾値が低くなる。このファクタが高いと、対応するセクションが、明記された読者の理解力ぎりぎりのものになる可能性がより高くなる。週に日替わりで異なる掘出し物ファクタを指定することができる。
読者は任意選択で、あるセクション内で特に興味のある話題も指定し得る。こうすると、編集者によって割り当てられた優先順位が改変される。
読者のインターネット接続のスピードは、画像が配信され得る品質に影響を及ぼす。読者は任意選択で、画像を少なく、または画像を小さく、あるいはその両方という好みを指定する。画像の数またはサイズが減少しない場合、画像は、品質が低い(すなわち、解像力が低いか、あるいは圧縮率が大きい)状態で配信されることがある。
全世界的なレベルでは、読者は、量、日時、および金銭的な価値を地域化する方法を指定する。これは、単位がヤードポンド法かメートル法か、地方時間帯および時刻の形式、ならびに地方通貨を指定し、かつ地域化がその場翻訳および注釈付けからなるかどうかを指定することを含む。これらの好みは、指定しない場合には読者の地域性から導き出される。
視力が弱いことによる読取りの難点を軽減するために、読者は任意選択で、より大きく表示されるようにグローバルプリファレンスを指定する。それに従ってテキストおよび画像の尺度が変わり、各ページに含まれる情報は少なくなる。
ニュース刊行物を発行する言語、およびその対応するテキスト符号化は、その刊行物の特性であり、ユーザが表現する好みではない。ただし、ネットページシステムは、様々な外観で自動翻訳サービスが提供されるように構成し得る。
2.2 広告の地域化および対象設定
記事コンテンツの個人化は直接、広告コンテンツに影響を及ぼす。というのは、広告は一般に、記事コンテンツを利用するように掲載されるからである。例えば、旅行の広告は、どこよりもまず旅行のセクションに掲載される可能性が高い。広告主にとって(したがって、発行者にとって)の記事コンテンツの価値は、ふさわしい人口統計構成の多数の読者を惹き付けることができることにある。
効果的な広告は、地域性および人口統計情報に基づいて掲載される。地域性により、特定のサービス業、小売業者などへの近さ、地域社会および地域環境に関連する特定の利益および関心が決まる。人口統計により、一般的な関心および先入観、ならびにありそうな消費パターンが決まる。
ニュース発行者の最も収益性の高い商品は、刊行物の地理的な対象範囲、刊行物の読者数、刊行物の読者の人口統計情報、および広告に利用可能なページ面積によって決まる多次元体である広告「スペース」である。
ネットページシステムでは、ネットページ発行サーバは、1セクション当たりの刊行物の商品性のある広告スペースの概算多次元サイズを、刊行物の地理的な対象範囲、そのセクションの読者数、そのセクションの各読者の版のサイズ、各読者の広告の割合、および各読者の人口統計情報を考慮に入れて計算する。
他の媒体と比較すると、ネットページシステムでは、広告スペースをより詳細に定義することができ、広告スペースのより小さな断片を別々に販売し得る。したがって、ネットページシステムでは、その真の価値により近い状態で販売することができる。
例えば、同じ広告「スロット」をいくつかの広告主に様々な割合で販売することができる。個々の読者のページは、1つの広告主から別の広告主へと広告を無作為に受け取り、全体的には各広告主に販売するスペースの割合が維持される。
ネットページシステムでは、広告を、詳細な商品情報およびオンライン購入に直接リンクさせることができる。したがって、ネットページシステムは、広告スペースの本質的な価値を上げることができる。
ネットページ発行サーバによって個人化および地域化が自動的に処理されるので、広告アグリゲータは、地理的にも人口統計的にも任意の広範な対象範囲を提供し得る。その後で、集められた広告を構成要素に分解することは自動化されているために効率がよい。こうすると、発行者が、直接広告を獲得するよりも広告アグリゲータと取引するほうがよりコスト効果が高くなる。広告アグリゲータが広告収入の一部を受け取っても、広告集積の効率がより高いので、発行者は、利益が変化しないことがわかる。広告アグリゲータは広告主と発行者の間の仲介者として働き、同じ広告を複数の刊行物に載せることができる。
ネットページ刊行物への広告の掲載を、従来の刊行物への広告の掲載よりも複雑にし得ることは注目に値する。というのは、刊行物の広告スペースはより複雑だからである。広告主、広告アグリゲータ、および発行者の間の交渉の全面的な複雑さを気にすることなく、ネットページシステムの好ましい形態では、広告スペースの自動オークションの支援を含めて、これらの交渉に対するなんらかの自動支援が提供される。小さくかつ極めて地域性の高い広告など、収入額が少ない広告の掲載には自動化は特に望ましい。
掲載の交渉がなされると、アグリゲータは、広告を獲得し編集し、それをネットページの広告サーバに記録する。それに対応して、発行者は、適切なネットページ発行サーバに広告の掲載を記録する。ネットページ発行サーバが、各ユーザの個人向けにあつらえた刊行物のレイアウトを行うとき、ネットページ発行サーバは、ネットページ広告サーバから適切な広告を取り出す。
2.3 ユーザプロフィール
2.3.1 情報フィルタリング
ニュースその他の刊行物の個人化は、
・刊行物のカスタマイズ化
・協調フィルタリングベクトル
・連絡先の詳細
・表現の好み
を含めて、ユーザ固有のプロフィール情報を取り合わせることに依存する。
刊行物のカスタマイズ化は一般に、刊行物に固有のものであり、そのため、カスタマイズされた情報は、該当するネットページ発行サーバによって維持される。
協調フィルタリングベクトルは、いくつかのニュース項目のユーザの格付けからなる。協調フィルタリングベクトルを用いて異なるユーザの興味を相関させ、それによって推奨を行う。個々の刊行物とは独立に単一の協調フィルタリングベクトルを維持することは有益であるが、各刊行物ごとに別々のベクトルを維持することがより実際的である2つの理由がある。すなわち、同じ刊行物の購読者のベクトル間の重なり合いは、異なる刊行物の購読者のベクトル間の重なり合いよりも大きいと考えられ、ある刊行物は、その刊行物のユーザの協調フィルタリングベクトルを、他のところでは見られないそのブランドの価値の一部として提示したいことがある。したがって、協調フィルタリングベクトルも、該当するネットページ発行サーバによって維持される。
名前、住所、郵便番号、州、国、電話番号を含めて、連絡先の詳細は、本来グローバルなものであり、ネットページ登録サーバによって維持される。
量、日時についての好みを含めて、表現の好みも同様にグローバルなものであり、同じやり方で維持される。
広告の地域化は、ユーザの連絡先の詳細の中で示される地域性に依存し、広告の対象設定は、生年月日、性別、配偶者の有無、所得、職業、学歴、または年齢幅および所得範囲などの定性的な派生物など、個人情報に依存する。
ユーザが広告目的で個人情報を明らかにすることを選択する場合、該当するネットページ登録サーバによってこの情報を維持する。このような情報がない場合、ユーザの郵便番号(ZIP)または拡張郵便番号(ZIP+4)に関連する人口統計情報に基づいて、広告の対象設定を行うことができる。
図21、図22、図23、および図24に示すように、ユーザ、ペン、プリンタ、アプリケーションプロバイダ、およびアプリケーションにはそれぞれ、それ自体の識別子が割り当てられ、ネットページ登録サーバはこれらの間の関係を維持する。登録目的の場合、発行者は、特殊なアプリケーションプロバイダであり、刊行物は、特殊なアプリケーションである。
各ユーザ800は、任意の数のプリンタ802を使用するように許可することができ、各プリンタは、任意の数のユーザがそのプリンタを使用することができるようにし得る。各ユーザは、(66のところに)1つの既定プリンタを有し、指定しない限り、このプリンタに定期刊行物が配信され、オンデマンドで印刷されるページは、ユーザが対話するプリンタに配信される。サーバは、ユーザがユーザの既定プリンタに対して印刷を行うのにどの発行者を許可したかを常時監視している。発行者は、個々のプリンタのIDを記録しないが、その代わりに、必要とされる場合にはそのIDを解決する。ユーザは、そのプリンタに関する管理特権69を与えられることがあり、それによって、このユーザは、他のユーザがこのプリンタを使用することを許可し得る。これは、プリンタがこのような動作を行うための管理特権84を必要とする場合にのみ意味をもつことである。
ユーザが刊行物807を購読する(808)とき、発行者806(すなわち、プロバイダ803)は、指定されたプリンタまたはユーザの既定プリンタに対して印刷を行うように許可される。ユーザは、この許可をいつでも取り消すことができる。各ユーザは、いくつかのペン801を所有することがあるが、ペンは、1人のユーザに固有のものである。ユーザが特定のプリンタの使用を許可される場合、このプリンタは、ユーザのペンのいずれかを認識する。
ペンIDを用いて、このペンIDに対応する、特定のネットページ登録サーバによって維持されるユーザプロフィールを、DNSによって通常のやり方で見つけ出すことができる。
ウエブ端末809は、特定のネットページプリンタに対して印刷を行うように許可することができ、それによって、ウエブの閲覧中に遭遇したウエブページおよびネットページ文書を、最も近いネットページプリンタに好都合に印刷することができる。
ネットページシステムは、プリンタプロバイダに代わって、このプロバイダのプリンタに印刷された刊行物から得られた収入に対する料金および手数料を徴収することができる。このような収入は、広告料、クリックスルー報酬、電子商取引手数料、およびトランザクションフィーを含み得る。ユーザがこのプリンタを所有している場合には、ユーザがプリンタプロバイダになる。
ユーザは、(前のパラグラフで説明したものなどの)小額デビットおよびクレジットを蓄積するのに使用するネットページアカウント820、名前、住所、および電話番号を含めて連絡先の詳細815、プライバシー、配信、および地域化の設定を含むグローバルプリファレンス816、ユーザの符号化された署名818、指紋819などを含めて任意の数のバイオメトリクス記録817、システムによって自動的に維持される手書きモデル822、および電子商取引の決済を行うことができるSET決済カード口座821も有する。
ユーザに固有なネットページアカウントに加えて、各ユーザは、そのユーザが使用を許可されている各プリンタに固有なネットページアカウント936も有する。各プリンタ固有アカウントを用いて、そのプリンタに対するユーザの活動に関係する小額デビットおよびクレジットを蓄積することができる。ユーザは、未払いのデビット残高に対して定期的に請求される。
ユーザは任意選択で、ネットページユーザディレクトリ823に載せられ、それによって、他のユーザを見つけ出し、そのユーザに電子メール(など)を送ることができる。
2.4 インテリジェントページレイアウト
ネットページ発行サーバは、各セクションごとに各ユーザの個人向けにあつらえた刊行物のページを自動的にレイアウトする。大部分の広告はあらかじめフォーマットされた矩形の形式なので、それらを記事コンテンツの前にページに載せる。
あるセクションの広告比は、このセクション内の個々のページの広告比を無作為に変化させて実現することができ、広告レイアウトアルゴリズムはこれを利用する。このアルゴリズムは、例えば、日曜大工屋根葺き修理に関する特集記事があるために、この刊行物内に特に屋根葺き材料の広告を配置するなど、緊密に結び付いた記事コンテンツと広告コンテンツの同一場所への配置を試みるように構成される。
次いで、テキストならびに関連する画像および図形を含めて、このユーザ用に選択した記事コンテンツを、様々な美的感覚ルールに従ってレイアウトする。
レイアウトがまとまった後で、広告の選択および記事コンテンツの選択を含めて、このプロセス全体を繰り返して、ユーザが示したセクションサイズの好みをより厳密に実現するように試みなければならない。ただし、このセクションサイズの好みは、長期的に平均して一致すればよく、そのため日々大きく変動し得る。
2.5 文書フォーマット
文書をレイアウトした後で、ネットページネットワーク上で効率よく配信し、恒久的に記憶するために、この文書を符号化する。
主な効率化のメカニズムは、1人のユーザの版に固有な情報と、複数のユーザの版の間で共有される情報とを分離することである。固有な情報は、ページレイアウトからなる。共有される情報は、画像、図形、およびテキストの断片を含めて、このページレイアウトが参照するオブジェクトからなる。
テキストオブジェクトは、XSL(拡張スタイルシート言語)を用いてXML(拡張マークアップ言語)で表現された完全にフォーマットされたテキストを含む。XSLにより、テキストが配置される領域、この場合には、レイアウトによって提供される領域とは無関係にテキストのフォーマット化が精確に制御される。テキストオブジェクトは、自動翻訳を可能にする埋込み型言語コードおよびパラグラフのフォーマット化の助けとなる埋込型ハイフネーションヒントを含む。
画像オブジェクトは、JPEG2000ウェーブレットベース圧縮画像フォーマットで画像を符号化する。図形オブジェクトは、SVG(スケーラブルベクタグラフィックス)フォーマットで2次元図形を符号化する。
レイアウト自体は、一連の配置された画像および図形のオブジェクト、テキストオブジェクトが流れるリンクされたテキストフローオブジェクト、上記で説明したハイパーリンクおよび入力フィールド、および透かし領域からなる。表3に、これらのレイアウトオブジェクトをまとめる。このレイアウトは、効率のよい配信および記憶に適したコンパクトなフォーマットを用いる。
2.6 文書の分配
上記で説明したように、ネットページネットワーク上で効率よく分配し、恒久的に記憶するために、ユーザ固有のページレイアウトを、このページレイアウトが参照する共有オブジェクトから分離する。
購読刊行物を分配する準備が整うと、ネットページ発行サーバは、ネットページIDサーバ12を使用して、ページ、ページインスタンス、文書、および文書インスタンスごとに一意のIDを割り当てる。
このサーバは、共有コンテンツからなる1組の最適化されたサブセットを計算し、各サブセットごとにマルチキャストチャネルを生成し、次いで、各ユーザ固有レイアウトを、このレイアウトが使用する共有コンテンツを運ぶことになるマルチキャストチャネルの名前でタグ化する。次いで、このサーバは、各ユーザレイアウトをそのユーザのプリンタに、適切なページサーバを介してポイントキャストし、このポイントキャストが完了した後で、指定されたチャネル上に共有コンテンツをマルチキャストする。ポイントキャストを受信した後で、各ページサーバおよびプリンタは、ページレイアウト内で指定されたマルチキャストチャネルを購読する。マルチキャスト中、各ページサーバおよびプリンタは、マルチキャストストリームから、ページレイアウトが参照するオブジェクトを引き出す。これらのページサーバは、受信したページレイアウトおよび共有コンテンツを恒久的にアーカイブする。
ページレイアウトが参照するすべてのオブジェクトをプリンタが受信した後で、このプリンタは、完全に配置されたレイアウトを生成し直し、次いで、それをラスタデータ化し印刷する。
正常な状況下では、プリンタは、ページを配信し得るよりも速くページを印刷する。各ページの1/4が画像で覆われていると仮定すると、平均ページのサイズは400KB未満である。したがって、プリンタがその64MBの内部メモリに保持し得るこのようなページの枚数は100枚よりも多く、それによってプリンタはこれらのページを、例えば一時的にバッファすることができる。このプリンタは、1秒に1ページの速さで印刷する。これは、1秒に400KBまたは約3Mbitのページデータに相当する。これは、ブロードバンドネットワークを介したページデータ配信の最大予測速度に近い。
プリンタの紙切れなどの異常な状況下でさえ、プリンタの100ページの内部記憶容量が使い果たされる前に、ユーザが紙を補給し得ると考えられる。
しかし、プリンタの内部メモリが一杯になった場合、このプリンタは、マルチキャストが最初に行われたときに、マルチキャストを利用することができなくなる。そのため、ネットページ発行サーバは、プリンタの再マルチキャスト要求の提示を許可する。受け取った要求の数が限界に達するか、あるいはタイムアウトが発生すると、このサーバは、対応する共有オブジェクトをマルチキャストし直す。
文書が印刷された後で、プリンタは、該当するページサーバからこの文書のページレイアウトおよびコンテンツを引き出すことによって、いつでも厳密な複製を生成し得る。
2.7 オンデマンド文書
ネットページ文書がオンデマンドで要求されると、このネットページ文書は、定期刊行物とほぼ同じやり方で個人向けにあつらえられ、配信される。ただし、共有コンテンツがないので、マルチキャストを用いずに、要求元プリンタに直接配信される。
非ネットページ文書がオンデマンドで要求されると、この文書は、個人向けにあつらえられず、この文書をネットページ文書としてフォーマットし直す指定のネットページフォーマットサーバを介して配信される。ネットページフォーマットサーバは、ネットページ発行サーバの特殊なインスタンスである。ネットページフォーマットサーバは、Adobe社のPDF(ポータブル文書フォーマット)およびHTML(ハイパーテキストマークアップ言語)を含めて、様々なインターネット文書フォーマットを理解している。HTMLの場合、ネットページフォーマットサーバは、ページの高解像力印刷を利用して、ウエブページを目次とともにマルチコラムフォーマットで提示し得る。ネットページフォーマットサーバは、要求されたページに直接リンクするすべてのウエブページを自動的に含めることができる。ユーザは、プリファレンスによってこの動作を調整することができる。
ネットページフォーマットサーバは、対話性および恒久性を含めて標準のネットページ動作を、出所およびフォーマットにかかわらず任意のインターネット文書上で利用可能にする。ネットページフォーマットサーバは、ネットページプリンタおよびネットページページサーバには異なる文書フォーマットを意識させず、ウエブサーバにはネットページシステムを意識させない。
3. セキュリティ
3.1 暗号化
暗号化を利用して、記憶および送信に際して機密情報を保護し、かつトランザクションに対して相手を認証する。秘密キーによる暗号化および公開キーによる暗号化の2つのクラスの暗号化が普及している。ネットページネットワークでは、両方のクラスの暗号化を利用する。
対称暗号化とも称する秘密キーによる暗号化では、同じキーを使用して、メッセージを暗号化し解読する。メッセージの交換を望む2つのグループはまず、秘密キーをセキュアに交換するように手配しなければならない。
非対称暗号化とも称する公開キーによる暗号化では、2つの暗号化キーを使用する。これら2つのキーは、一方のキーを用いて暗号化したメッセージは、他方のキーを用いてしか解読し得ないように数学的に関連している。この場合、これらのキーの一方を公開し、他方は秘密に保つ。公開キーを用いて、個人キーの所持者を対象としたメッセージを暗号化する。公開キーを用いて暗号化すると、個人キーを用いてしかメッセージを解読することができない。そのため、2つのグループは、最初に秘密キーを交換する必要なしに、メッセージをセキュアに交換することができる。個人キーのセキュアを確保するために、個人キーの所持者は通常、キーの対を生成する。
公開キーによる暗号化を用いて、デジタル署名を生成することができる。個人キーの所持者は、メッセージの周知のハッシュを生成することができ、次いで、個人キーを用いてこのハッシュを暗号化する。その後、誰でも、公開キーを用いてこの暗号化したハッシュを解読し、このメッセージに対するハッシュを検証することによって、この暗号化したハッシュが、この特定のメッセージに関して個人キーの所持者の「署名」を構成することを検証し得る。このような署名がメッセージに添付される場合、このメッセージの受信者は、このメッセージが本物であることと、このメッセージが送信中に改変されていないことをともに検証し得る。
公開キーによる暗号化を機能させるためには、なりすましを防止する公開キー分配方法がなければならない。これは通常、証明書および認証局を利用して行われる。認証局は、公開キーとある人の身元の関係を認証する信頼できる第三者機関である。認証局は、身元文書を調べることによってその人の身元を検証し、次いで、その人の身元の詳細および公開キーを含むデジタル証明書を生成し、それに署名する。認証局を信用する人なら誰でも、証明書中の公開キーを使用することができ、この公開キーが本物であることの確実性は高い。使用者は、この証明書が本当に、認証局によって署名されたことを検証するだけでよく、認証局の公開キーは既知のものである。
ほとんどのトランザクション環境では、公開キーによる暗号化だけを用いてデジタル署名を生成し、秘密セッションキーをセキュアに交換する。他のあらゆる目的には、秘密キーによる暗号化を用いる。
以下の考察で、ネットページプリンタとサーバの間の情報のセキュアな送信について言及するときに実際に行われることは、プリンタがサーバの証明書を取得し、認証局を参照してそれを認証し、この証明書中の公開用のキー交換キーを使用して、サーバと秘密セッションキーを交換し、次いで、この秘密セッションキーを用いてメッセージデータを暗号化することである。セッションキーの存続期間は定義上、任意に短くし得る。
3.2 ネットページプリンタのセキュリティ
各ネットページプリンタには、製造時に1対の一意の識別子が割り当てられる。これらの識別子は、プリンタの読出し専用メモリおよびネットページ登録サーバデータベースに格納される。第1のID62は公開され、ネットページネットワーク上でそのプリンタを一意に識別する。第2のIDは秘密であり、このプリンタを最初にネットワーク上で登録するときに用いる。
ネットページネットワークにプリンタを設置後に初めて接続するとき、このプリンタは、署名用の公開/個人キー対を生成する。このプリンタは、秘密IDおよび公開キーをセキュアにネットページ登録サーバに送信する。このサーバは、この秘密IDと、サーバのデータベースに記録されたプリンタの秘密IDとを比較し、これらのIDが一致した場合には登録を受け付ける。次いで、このサーバは、プリンタの公開IDおよび公開署名キーを含む証明書を生成し、それに署名し、この証明書を登録データベースに記憶する。
ネットページ登録サーバは、秘密情報にアクセスしてプリンタの身元を検証することができるので、ネットページプリンタの認証局として働く。
ユーザが刊行物を購読するとき、発行者がこの刊行物をユーザ既定プリンタまたは指定されたプリンタに印刷することを許可するレコードが、ネットページ登録サーバデータベース内に生成される。ページサーバを介してプリンタに送信される文書はどれも、特定のユーザに対してアドレス指定され、発行者によって発行者の個人署名キーを用いて署名される。このページサーバは、登録データベースを介して、発行者が刊行物を指定されたユーザに配信するのを許可されたことを検証する。このページサーバは、登録データベースに記憶された発行者の証明書から取得した発行者の公開キーを用いてこの署名を検証する。
ネットページ登録サーバは、データベースに印刷許可を追加する要求を受け付けるが、これは、これらの要求がそのプリンタに登録されたペンを介して開始されたものである場合に限る。
3.3 ネットページペンのセキュリティ
各ネットページペンには、製造時に一意の識別子が割り当てられる。この識別子は、ペンの読出し専用メモリおよびネットページ登録サーバデータベースに格納される。ペンID61は、ネットページネットワーク上でこのペンを一意に識別する。
ネットページペンは、複数のネットページプリンタを「見分ける」ことができ、プリンタは、複数のペンを「見分ける」ことができる。ペンは、それがプリンタの範囲内にあるときはいつも無線周波数信号によってプリンタと通信する。ペンおよびプリンタが登録されると、それらは、定期的にセッションキーを交換する。このペンがこのプリンタにデジタルインクを送信するときは必ず、このデジタルインクは、適切なセッションキーを用いて必ず暗号化される。デジタルインクがそのままで送信されることはない。
ペンは、プリンタIDによって指標付けされた、このペンが見分けられるプリンタごとにセッションキーを記憶し、プリンタは、ペンIDによって指標付けされた、このプリンタが見分けられるペンごとにセッションキーを記憶する。ペンおよびプリンタのセッションキー用の記憶容量はいずれも、大きいが有限であり、必要な場合には、使用頻度が最も低いセッションキーを削除する。
ペンがプリンタの範囲内に入ると、ペンおよびプリンタは、互いを見分けられるかどうかがわかる。これらが互いを見分けられない場合、プリンタは、プリンタがペンを見分けられるはずだとされているかどうかを判定する。これは、例えばこのペンが、このプリンタを使用するように登録されているユーザの所有物であるためであり得る。プリンタがペンを見分けられるはずだとされているがそうでない場合、プリンタは、ペン自動登録手順を開始する。プリンタがペンを見分けられるはずだとされない場合、プリンタは、ペンが充電カップに置かれるまで、プリンタを無視するようにペンと取り決めを行い、その時点でプリンタは登録手順を開始する。
公開IDに加えて、ペンは、秘密のキー交換キーを含む。このキー交換キーも、製造時にネットページ登録サーバデータベースに記録される。登録時に、ペンは、そのペンIDをプリンタに送信し、プリンタは、このペンIDをネットページ登録サーバに送信する。このサーバは、プリンタおよびペンが使用するセッションキーを生成し、このセッションキーをプリンタにセキュアに送信する。このサーバは、このセッションキーのコピーも、このペンのキー交換キーで暗号化して送信する。プリンタは、このセッションキーをペンIDで指標付けして内部に記憶し、この暗号化されたセッションキーをペンに送信する。ペンは、このセッションキーをプリンタIDで指標付けして内部に記憶する。
ペン登録プロトコルにおいて、偽のペンがペンになりすますことがあっても、本物のペンしか、プリンタから送信されたセッションキーを解読することができない。
以前は未登録のペンを初めて登録しても、このペンがユーザに関係づけられるまで、使用が制限される。登録されているが「所有されていない」ペンは、ネットページユーザ登録フォームおよびネットページペン登録フォームを要求し、それを埋めるのに使用することしかできず、それによって、この新しいペンが自動的に関係づけられる新しいユーザが登録されるか、あるいは、新しいペンが既存のユーザに追加される。
このペンは、ペンのハードウエアの性能の制約のために、公開キーによる暗号化ではなく秘密キーによる暗号化を用いる。
3.4 セキュアな文書
ネットページシステムは、チケットおよびクーポンなどのセキュアな文書の配信をサポートする。ネットページプリンタは、透かしを印刷する設備を含むが、適切に許可された発行者からの要求に応じてのみそれを行う。発行者は、その証明書に透かしを印刷する許可を示し、プリンタはそれを認証することができる。
この「透かし」印刷プロセスでは、ページの指定された「透かし」領域で代替ディザマトリックスを用いる。背中合わせのページは、印刷時に合致する鏡像透かし領域を含む。奇数ページおよび偶数ページの透かし領域で用いるディザマトリックスは、これらの領域を合わせて見るときに干渉効果が得られるように設計される。この行為は、印刷されたシートを透かして見ることによって行われる。
この効果は、ページの片面だけを見るときには見えず、このページを通常の手段でコピーすると失われるという点で透かしに類似のものである。
セキュアな文書のページは、上記の第1.9節で説明したネットページコピー用に組み込まれたメカニズムを用いてコピーすることはできない。このことは、ネットページを認識するコピー機でネットページをコピーすることにも適用される。
セキュアな文書は一般に、電子商取引トランザクションの一部として生成される。したがって、セキュアな文書は、第2節で説明したように、ユーザがネットページ登録サーバにバイオメトリクス情報を登録したときに撮影したユーザの写真を含む。
セキュアなネットページ文書が提示されると、受領者は、通常のやり方でこの文書のステータスを要求することによって、この文書の真正性を検証することができる。セキュアな文書の一意のIDは、この文書の存続期間でのみ有効であり、セキュアな文書のIDは、好機をうかがっている偽造者に予測されないように非連続的に割り当てられる。検証失敗に対するフィードバックが組み込まれた、セキュアな文書の検証用のペンを開発することができ、それによって、簡単な提示時点文書検証がサポートされる。
暗号化という意味では、透かしもユーザの写真もセキュアではないことは明らかである。これらは、ちょっとした偽造に対してかなり邪魔になるだけである。オンライン文書検証により、具体的には検証用のペンを使用して、必要な場合には追加のレベルのセキュリティが得られるが、依然として偽造に対して完全に耐性があるわけではない。
3.5 否認防止
ネットページシステムでは、ユーザが提示したフォームは、フォーム取扱い業者に確実に配信され、ネットページページサーバ上で恒久的にアーカイブされる。したがって、受領者が配信を否認することは不可能である。
第4節で説明するように、このシステムを介してなされた電子商取引の決済は、受取人が否認することも不可能である。
4. 電子商取引モデル
4.1 SET(セキュアエレクトロニックトランザクション)
ネットページシステムでは、その決済システムの1つとしてSET(セキュアエレクトロニックトランザクション)システムを利用する。MastercCardおよびVisaによって開発されたSETは、複数の決済カードを取り込んでまとめられたものであり、それがこの用語に反映されている。ただし、このシステムの大部分は、使用中の口座のタイプとは無関係である。
SETでは、カード所持者および売買業者は認証局に登録され、カード所持者および売買業者の公開署名キーを含む証明書が発行される。認証局は適宜、カード発行者にカード所持者の登録の詳細を確かめ、適宜、取得者に売買業者の登録の詳細を確かめる。カード所持者および売買業者は、それぞれの個人署名キーを、自身のコンピュータにセキュアに記憶する。決済プロセス時に、これらの証明書を用いて、売買業者とカード所持者を相互に認証し、売買業者とカード所持者をともに決済ゲートウエイに対して認証する。
SETはまだ広く採用されていない。これは1つには、カード所持者によるキーおよび証明書の維持が煩わしいとみなされているからである。サーバ上にカード所持者のキーおよび証明書を維持し、パスワードによるアクセスをカード所持者に与える暫定的な解決策が、ある程度成功している。
4.2 SET決済
ネットページシステムでは、ネットページ登録サーバは、SET決済トランザクションにおいてネットページユーザ(すなわちカード所持者)のプロキシとして働く。
ネットページシステムは、バイオメトリクスを利用してユーザを認証し、SET決済を許可する。このシステムはペンに基づくものなので、用いられるバイオメトリクス値は、時間的に変化するペンの位置および圧力からなるユーザのオンライン署名である。指紋センサをペンに入れる設計によって、指紋によるバイオメトリクスも利用し得るが、コストが高くなる。用いられるバイオメトリクスのタイプは、そのバイオメトリクス値の取得に影響を及ぼすだけで、このシステムの認証の態様には影響を及ぼさない。
SET決済を可能にするための第1ステップは、ネットページ登録サーバにユーザのバイオメトリクス値を登録することである。これは、例えば、銀行などの制御された環境で行われ、そこで、ユーザの身元を検証するのと同時に、バイオメトリクス値を取得することができる。バイオメトリクス値を取得し、登録データベースに記憶し、ユーザのレコードに関係づける。ユーザの写真も任意選択で取得し、このレコードに関係づける。SETカード所持者登録プロセスが完了し、得られた個人署名キーおよび証明書がデータベースに記憶される。ユーザの決済カード情報も記憶され、その結果、ネットページ登録サーバに、SET決済トランザクションにおけるユーザのプロキシとして働くのに十分な情報が与えられる。
決済を完了させるためにユーザが、例えばネットページ注文フォームに署名することによって最終的にバイオメトリクス値を供給すると、プリンタは、この注文情報、ペンID、およびバイオメトリクスデータをネットページ登録サーバにセキュアに送信する。このサーバは、このバイオメトリクス値を、ペンIDによって識別されたユーザに関して検証し、これ以降、SET決済トランザクションを完了させる際にユーザのプロキシとして働く。
4.3 小額決済
ネットページシステムは、小額決済用のメカニズムを含み、それによって、低コスト文書のオンデマンド印刷、著作権文書のコピーに対してユーザに好都合に請求することができ、おそらくは、広告材料の印刷にかかった費用をユーザに払い戻すこともできる。後者は、ユーザにすでに提供された補助金のレベルによって決まる。
ユーザが電子商取引登録を行うと、小額決済を集計するネットワークアカウントが開設される。ユーザは、定期的に明細書を受け取り、標準決済メカニズムを利用して未払いの借方残高を精算することができる。
このネットワークアカウントは、普通ならやはり個々の明細書の形式でユーザに提示されることになる定期刊行物の購読料金を集計するように拡張することができる。
4.4 トランザクション
ある特定のアプリケーションの状況において、ユーザがネットページを要求すると、このアプリケーションは、このページにユーザ固有のトランザクションID55を埋め込むことができる。このページを介したその後の入力は、このトランザクションIDでタグ化され、それによって、このアプリケーションは、このユーザ入力に対する適切な状況を確立することができる。
ただし、このユーザを対象としていないページを介した入力が行われるときには、アプリケーションは、このユーザの一意の身元を用いて状況を確立しなければならない。典型的な例は、あらかじめ印刷されたカタログのページから、ユーザの仮想「買い物カゴ」に商品を追加するというものである。ただし、ユーザのプライバシーを保護するために、ネットページシステムには既知である一意のユーザID60は、アプリケーションに漏らさない。これは、異なるアプリケーションプロバイダに、独立に蓄積された挙動データを簡単に相関させないためである。
その代わりにネットページ登録サーバは、図24に示すように、一意のエイリアスID65によってユーザとアプリケーションの間の匿名関係を維持する。ユーザが、「登録済み」属性でタグ化されたハイパーリンクを活動化させるたびに、ネットページページサーバは、ネットページ登録サーバに、関連するアプリケーションID64をペンID61とともに、エイリアスID65に翻訳するように要求する。次いで、このエイリアスIDをこのハイパーリンクのアプリケーションに提示する。
このアプリケーションは、エイリアスIDによって標識付けされた状態情報を維持し、このユーザのグローバルアイデンティティを知らなくてもユーザ固有の状態情報を引き出すことができる。
このシステムは、各ユーザアプリケーションごとに、独立の証明書および個人署名キーも維持し、それによって、アプリケーション固有の情報だけを用いて、ユーザの代わりにアプリケーションのトランザクションに署名することができる。
商品バーコード(UPC)の「ハイパーリンク」活動化を送る際にシステムの助けとなるように、このシステムは、ユーザの代わりに、任意の数の商品タイプについてお気に入りのアプリケーションを記録する。
各アプリケーションは、アプリケーションプロバイダに関連づけられ、このシステムは、各アプリケーションプロバイダに代わってアカウントを維持し、それによって、クリックスルー報酬などについて、このプロバイダの貸方に、また借方に記入することができる。
アプリケーションプロバイダは、定期購読コンテンツの発行者とし得る。このシステムは、この購読刊行物を受け取るユーザの承諾および予想発行頻度を記録する。
5. 通信プロトコル
通信プロトコルは、実体間でのメッセージの順序付けられた交換を定義する。ネットページシステムでは、ペン、プリンタ、およびサーバなどの実体は、1組の定義されたプロトコルを利用して、ユーザとネットページシステムの対話を協働して処理する。
水平次元を用いてメッセージフローを表し、垂直次元を用いて時間を表すシーケンス図として各プロトコルを示す。各実体は、その実体の名前を含む矩形およびその実体のライフラインを表す垂直コラムによって示す。実体が存在する期間中は、ライフラインを破線として示す。実体がアクティブな期間中は、ライフラインを2重線として示す。ここで考えるプロトコルは実体を生成せず、破壊もしないので、ライフラインは一般に、実体がプロトコルに参加することをやめるとすぐに終了する。
5.1 購読配信プロトコル
図40に、購読配信プロトコルの好ましい実施形態を示す。
多数のユーザが、定期刊行物を購読することがある。ユーザの版はそれぞれ異なってレイアウトされることがあるが、ユーザの版の多くは、テキストオブジェクトおよび画像オブジェクトなどの共通コンテンツを共有することになる。したがって、購読配信プロトコルにより、文書構造はポイントキャストによって個々のプリンタに配信されるが、共有コンテンツオブジェクトはマルチキャストによって配信される。
アプリケーション(すなわち発行者)はまず、各文書ごとにIDサーバ12から文書ID51を取得する。次いで、このアプリケーションは、各文書構造を、その文書IDおよびページ記述を含めて、その文書の新たに割り当てられるIDを担うページサーバ10に送信する。このアプリケーションは、それ自体のアプリケーションID64、購読者のエイリアスID65、およびマルチキャストチャネル名の該当する組を有する。このアプリケーションは、その個人署名キーを用いてメッセージに署名する。
ページサーバは、このアプリケーションIDおよびエイリアスIDを用いて、登録サーバから、対応するユーザID60、ユーザの選択した(このアプリケーションに関して明示的に選択することもできるし、ユーザの既定プリンタとすることもできる)プリンタID62、およびアプリケーションの証明書を取得する。
このアプリケーションの証明書により、ページサーバはメッセージの署名を検証することができる。このアプリケーションIDおよびエイリアスIDがともに購読808を識別しない場合、登録サーバへのページサーバの要求は失敗する。
次いで、ページサーバは、文書およびページのインスタンスのIDを割り当て、ページID50を含めてページ記述をプリンタに転送する。ページサーバは、プリンタが受信すべきマルチキャスト名の該当する組を有する。
次いで、ページサーバは、今後の参照のために、新たに割り当てられたページIDをアプリケーションに返す。
アプリケーションが、該当するページサーバを介して購読者が選択したプリンタにすべての文書構造を分配すると、このアプリケーションは、前に選択したマルチキャストチャネル上に共有オブジェクトの様々なサブセットをマルチキャストする。ページサーバおよびプリンタはともに、適切なマルチキャストチャネルを監視し、これらのページサーバおよびプリンタが必要とするコンテンツオブジェクトを受け取る。次いで、これらのページサーバおよびプリンタは、前にポイントキャストされた文書構造を配置することができる。これにより、ページサーバはそのデータベースに完全な文書を追加することができ、それによってプリンタは、これらの文書を印刷し得る。
5.2 ハイパーリンク活動化プロトコル
図42に、ハイパーリンク活動化プロトコルの好ましい実施形態を示す。
ユーザが、ネットページペンでネットページ上をクリックすると、このペンは、このクリックを最も近いネットページプリンタ601に通信する。このクリックにより、このページおよびこのページ上での位置が識別される。このプリンタにはすでに、ペン接続プロトコルから、ペンのID61がわかっている。
このプリンタは、DNSによって、特定のページID50を扱うページサーバ10aのネットワークアドレスを求める。このアドレスは、ユーザが最近同じページと対話したことがある場合には、すでにプリンタのキャッシュに入っていることがある。次いでこのプリンタは、ペンID、プリンタ自体のプリンタID62、ページID、およびクリック位置をページサーバに転送する。
ページサーバは、このページIDによって識別されるページ記述5をロードし、入力要素のゾーン58がある場合には、そのどれにこのクリックがあるかを求める。該当する入力要素がハイパーリンク要素844であると仮定すると、ページサーバは、関連するアプリケーションID64およびリンクID54を取得し、DNSによって、アプリケーション71をホストするアプリケーションサーバのネットワークアドレスを求める。
ページサーバは、ペンID61を用いて、登録サーバ11から対応するユーザID60を取得し、次いで、全世界的に一意のハイパーリンク要求ID52を割り当て、ハイパーリンク要求934を構築する。図41に、このハイパーリンク要求のクラス図を示す。このハイパーリンク要求は、要求元のユーザおよびプリンタのIDを記録し、クリックされたハイパーリンクインスタンス862を識別する。次いで、ページサーバは、それ自体のサーバID53、ハイパーリンク要求ID、およびリンクIDをアプリケーションに送信する。
このアプリケーションは、アプリケーション固有の論理に従って応答文書を生成し、IDサーバ12から文書ID51を取得する。このアプリケーションは、この文書を、要求元のページサーバIDおよびハイパーリンク要求IDとともに、この文書の新たに割り当てられるIDを担うページサーバ10bに送信する。
この第2ページサーバは、ハイパーリンク要求IDおよびアプリケーションIDを第1ページサーバに送信して、対応するユーザIDおよびプリンタID62を取得する。第1ページサーバは、このハイパーリンク要求が、すでに失効しているか、あるいは、異なるアプリケーション向けのものである場合にはこの要求を拒否する。
第2ページサーバは、文書インスタンスおよびページID50を割り当て、新たに割り当てられたページIDをアプリケーションに返し、第2ページサーバ自体のデータベースに完全な文書を追加し、最後に、ページ記述を要求元のプリンタに送信する。
ハイパーリンクインスタンスは、意味のあるトランザクションID55を含み得る。この場合、第1ページサーバは、アプリケーションに送信されるメッセージ中にこのトランザクションIDを含める。こうすると、このアプリケーションが、このハイパーリンク活動化についてのトランザクション固有の状況を確立することができる。
ハイパーリンクが、ユーザのエイリアスを要求する場合、すなわち、ハイパーリンクの「エイリアス要求」属性がセットされている場合、第1ページサーバは、ペンID61およびこのハイパーリンクのアプリケーションID64をともに登録サーバ11に送信して、ペンIDに対応するユーザIDだけでなく、アプリケーションIDおよびユーザIDに対応するエイリアスID65も取得する。第1ページサーバは、アプリケーションに送信されるメッセージ中にこのエイリアスIDを含め、それによってこのアプリケーションが、このハイパーリンク活動化についてのユーザ固有の状況を確立することができる。
5.3 手書き認識プロトコル
ユーザが、ネットページペンでネットページ上にストロークを描くと、このペンは、このストロークを最も近いネットページプリンタに通信する。このストロークにより、このページおよびこのページ上での経路が識別される。
このプリンタは、ペンID61、プリンタ自体のプリンタID62、ページID50、およびストローク経路をページサーバ10に通常のやり方で転送する。
ページサーバは、このページIDによって識別されるページ記述5をロードし、入力要素のゾーン58がある場合には、そのどれとこのストロークが交わるかを求める。該当する入力要素がテキストフィールド878であると仮定すると、ページサーバは、このストロークをこのテキストフィールドのデジタルインクに追加する。
このテキストフィールドのゾーン内で、ある期間にわたり活動がないと、ページサーバは、ペンIDおよび保留のストロークを登録サーバ11に送信して解釈を行う。登録サーバは、このペンに対応するユーザを識別し、このユーザの蓄積された手書きモデル822を用いて、これらのストロークを手書きテキストとして解釈する。これらのストロークがテキストに変換された後で、登録サーバは、このテキストを要求元のページサーバに返す。このページサーバは、このテキストをテキストフィールドのテキスト値に追加する。
5.4 署名検証プロトコル
このストロークと交わるゾーンを有する入力要素が、署名フィールド880であると仮定すると、ページサーバ10は、この署名フィールドのデジタルインクにこのストロークを追加する。
この署名フィールドのゾーン内で、ある期間にわたり活動がないと、ページサーバは、ペンID61および保留のストロークを登録サーバ11に送信して検証を行う。ページサーバは、この署名フィールドが一部をなすフォームに関連するアプリケーションID64だけでなく、このフォームのフォームID56およびカレントのデータの内容も送信する。登録サーバは、このペンに対応するユーザを識別し、このユーザの動的な署名による生体測定値818を用いて、これらのストロークをこのユーザの署名として検証する。この署名が検証された後で、登録サーバは、アプリケーションID64およびユーザID60を用いて、このユーザのアプリケーション固有の個人署名キーを識別する。次いで登録サーバは、このキーを用いてフォームデータのデジタル署名を生成し、このデジタル署名を要求元のページサーバに返す。このページサーバは、このデジタル署名を署名フィールドに割り当て、関連するフォームのステータスをフリーズ状態にセットする。
このデジタル署名は、対応するユーザのエイリアスID65を含む。こうすると、単一のフォームが複数のユーザの署名を取得し得る。
5.5 フォーム提示プロトコル
図43に、フォーム提示プロトコルの好ましい実施形態を示す。
フォームの提示は、フォームハイパーリンクの活動化によって行われる。そのため、フォームの提示は、第5.2節で定義したプロトコルにいくらかフォーム固有の追加を施したものに従う。
フォームハイパーリンクの場合、ページサーバ10からアプリケーション71に送信されるハイパーリンク活動化メッセージは、このフォームのフォームID56およびカレントのデータの内容も含む。このフォームが任意の署名フィールドを含む場合、このアプリケーションは、対応するデジタル署名に関連するエイリアスID65を引き出し、登録サーバ11から対応する証明書を取得することによって、各署名フィールドを検証する。
6. ネットページペンの説明
6.1 ペンメカニズム
図8および図9を参照すると、全体的に参照数字101で示すペンは、このペンの構成要素を取り付けるための内部スペース104を画定する壁103を有するプラスチック成型物の形態のハウジング102を含む。動作時にはペントップ105は、ハウジング102の一方の端部106に回転可能に取り付けられる。半透明カバー107は、ハウジング102の反対側の端部108に固定される。カバー107も成型されたプラスチック製であり、ユーザがハウジング102内に装着されたLEDのステータスを見ることができるように半透明材料で形成される。カバー107は、ハウジング102の端部108を実質的に取り囲む主要部分109と、主要部分109から後に突き出し、ハウジング102の壁103に形成された対応するスロット111にはまる突起部分110とを含む。無線アンテナ112は、突起部分110の裏でハウジング102内に装着される。カバー107上で開口113Aを取り囲むねじ山113は、対応するねじ山115を含む金属端部片114を受けるように構成される。金属端部片114は、インクカートリッジを交換することができるように脱着可能である。
カバー107内には、可撓性PCB117上に3色のステータスLED116も装着される。可撓性PCB117上にはアンテナ112も装着される。ステータスLED116は、周りからよく見えるようにペン101の上部のところに装着される。
このペンは、通常のマーキングインクペンとして、かつ非マーキングスタイラスとして動作し得る。ペン先119を備えたインクペンカートリッジ118、およびスタイラスペン先121を備えたスタイラス120は、ハウジング102内に並んで装着される。インクカートリッジペン先119またはスタイラスペン先121のいずれかを、ペントップ105を回転させることによって、金属端部片114の開口端122を通して前に出すことができる。それぞれのスライダブロック123および124は、インクカートリッジ118およびスタイラス120にそれぞれ装着される。動作時には、回転可能なカムバレル125はペントップ105に固定され、それとともに回転するように構成される。カムバレル125は、カムバレルの壁181にあるスロットの形態のカム126を含む。スライダブロック123および124から突き出たカムフォロワ127および128は、カムスロット126にはまる。カムバレル125を回転させると、スライダブロック123または124が相互に移動して、ペンのペン先119またはスタイラスのペン先121のいずれかが、金属端部片114の穴122を通って突き出る。ペン101は、3つの動作状態を有する。トップ105を90°ステップで回転させることによって、以下の3つの状態になる。
・スタイラス120のペン先121が出る
・インクカートリッジ118のペン先119が出る
・インクカートリッジ118のペン先119も、スタイラス120のペン先121も出ない
ハウジング102内に置かれる電子部品用シャシ130上には、第2可撓性PCB129が装着される。第2可撓性PCB129には、表面に投影する赤外放射を提供する赤外LED131が装着される。この表面から反射する放射を受け取るために画像センサ132が設けられ、第2可撓性PCB129上に装着される。第2可撓性PCB129には、RF送信機およびRF受信機を含む無線周波数チップ133、ならびにペン101の動作を制御するコントローラチップ134も装着される。(透明成型プラスチックで形成された)光学系ブロック135は、カバー107内に置かれ、表面に赤外ビームを投影し、画像センサ132上への画像を受け取る。電源用の導線136は、第2可撓性PCB129上のコンポーネントと、カムバレル125内に装着された電池接点137とを接続する。端子138は、電池接点137およびカムバレル125に接続される。3ボルトの充電式電池139は、電池接点に接触する状態でカムバレル125内に置かれる。誘導充電コイル140は、第2可撓性PCB129を囲んで装着され、それによって、誘導により電池139を再充電することができる。第2可撓性PCB129には、スタイラス120またはインクカートリッジ118のいずれかが書込みに用いられるときにカムバレル125の変位を検出して、ペンのペン先119またはスタイラスのペン先121によって表面に加えられる力を求めることができる赤外LED143および赤外フォトダイオード144も装着される。赤外フォトダイオード144は、スライダブロック123および124上に装着された(図示しない)反射体を介して赤外LED143からの光を検出する。
ペン101を握る助けとなるように、ハウジング102の端部108の近くにラバーグリップパッド141および142が設けられる。トップ105は、ポケットにペン101を留めるクリップ142も含む。
6.2 ペンコントローラ
ペン101は、そのペン先(スタイラスのペン先121またはインクカートリッジのペン先119)の位置を、ペン先近傍の表面の区域を赤外スペクトル内で画像化することによって求めるように構成される。ペン101は、最も近い位置タグからの位置データを記録し、この位置タグからペン先121または119までの距離を、光学系135およびコントローラチップ134を使用して計算するように構成される。コントローラチップ134は、画像化されたタグに関して観察される遠近歪みから、ペンの向きおよびペン先とタグの距離を計算する。
RFチップ133およびアンテナ112を使用して、ペン101は、コンピューティングシステムに、デジタルインクデータを送信することができる(このデジタルインクデータは、セキュリティのために暗号化され、効率よく送信するためにパッケージ化される)。
このペンが受信機の範囲内にあるとき、デジタルインクデータは、それが形成されるときに送信される。ペン101が範囲外に移動すると、デジタルインクデータは、ペン101内にバッファされ(ペン101の回路は、表面上でのペンの動きのデジタルインクデータを約12分間記憶するように構成されたバッファを含む)、後で送信され得る。
コントローラチップ134は、ペン101内の第2可撓性PCB129上に装着される。図10は、コントローラチップ134のアーキテクチャをより詳細に示すブロック図である。図10には、RFチップ133、画像センサ132、3色ステータスLED116、赤外照明LED131、力センサ用赤外LED143、および力センサ用フォトダイオード144を表現したものも示す。
ペンコントローラチップ134は、制御プロセッサ145を含む。バス146により、コントローラチップ134のコンポーネント間でデータを交換することができる。フラッシュメモリ147および512KB DRAM148も設けられる。アナログ−デジタルコンバータ149は、力センサ用フォトダイオード144からのアナログ信号をデジタル信号に変換するように構成される。
画像センサインターフェース152は、画像センサ132とのインターフェースを行う。RF回路155と、アンテナ112に接続されたRF共振器/インダクタ156とを含むRFチップ133とのインターフェースを行うように、送受信機コントローラ153およびベースバンド回路154も設けられる。
制御プロセッサ145は、表面から画像センサ132を介して、タグから位置データを取得し復号し、力センサ用フォトダイオード144を監視し、LED116、131、および143を制御し、無線送受信機153を介して短距離無線通信を処理する。制御プロセッサ145は、中程度の性能(〜40MHz)の汎用RISCプロセッサである。
プロセッサ145、デジタル送受信機コンポーネント(送受信機コントローラ153およびベースバンド回路154)、画像センサインターフェース152、フラッシュメモリ147、および512KB DRAM148は、単一のコントローラASIC内に統合される。アナログRFコンポーネント(RF回路155およびRF共振器/インダクタ156)は、別のRFチップ内に設けられる。
画像センサは、CCDまたはCMOSの画像センサである。画像センサのサイズは、タグ化方式に応じて、約100×100画素〜200×200画素の範囲になる。National Semiconductor社のLM9630を含めて、多くの小型CMOS画像センサが市販されている。
コントローラASIC134は、ペン101が表面と接触しない非活動状態がある期間続くと休止状態に入る。コントローラASIC134には、力センサ用フォトダイオード144を監視し、ペンが下がるイベントがあると、電源管理装置151を介してコントローラ134を起動する専用回路150が組み込まれる。
無線送受信機は、コードレス電話で通常用いられる無認可の900MHz帯域、あるいは、無認可の2.4GHz ISM(工業、科学、および医学用の)帯域で通信を行い、周波数ホッピングおよび衝突検出を利用して、混信のない通信を提供する。
代替実施形態では、このペンには、基地局またはネットページプリンタとの短距離通信用のIrDA(赤外線データ通信協会)インターフェースが組み込まれる。
別の実施形態では、ペン101は、ペン101の軸の法平面に装着される1対の直交加速度計を含む。図9および図10に、加速度計190を架空外形線で示す。
加速度計を設けることにより、ペン101のこの実施形態は、表面の位置タグを参照せずに動きを感知することができ、それによって、位置タグのサンプリングレートをより低くすることができる。こうすると、各位置タグIDにより、表面上での位置ではなく、対象とする物体を識別することができる。例えば、この物体が、ユーザインターフェース入力要素(例えば、コマンドボタン)である場合、この入力要素の区域内にある各位置タグのタグIDにより、この入力要素を直接識別することができる。
加速度計によってxおよびyのそれぞれの方向に測定された加速度を時間に関して積分して、瞬間の速度および位置を得る。
ストロークの開始位置はわからないので、ストローク内での相対位置のみが計算される。位置の積分では、感知された加速度の誤差が累積するが、加速度計は一般に高分解能であり、誤差が累積するストローク継続時間は短い。
7. ネットページプリンタの説明
7.1 プリンタのメカニズム
図11に、垂直に据え付けられたネットページ壁型プリンタ601を完全に組み立てられた状態で示す。プリンタ601は、図12および図12aに示す全2重8 1/2インチMemjet印刷エンジン602および603を使用して、レター/A4サイズの媒体上にネットページを印刷する。プリンタ601の紙の経路は直線であり、紙604は、全2重印刷エンジン602および603を通過し、これらの印刷エンジンにより、シートの両面が同時に、フルカラーで紙面一杯に印刷される。
一体型綴込みアセンブリ605は、印刷された各シートの1つの縁部に沿って一条の糊を塗布し、それによって、そのシートが前のシートに押し付けられて接着され得る。こうすると、1枚のシートから数百枚のシートの厚さになり得る最終的な綴込み文書618が生成される。
図13で全2重印刷エンジンに結合したところを示す交換可能なインクカートリッジ627は、定着剤、接着剤、ならびにシアン、マゼンタ、イエロー、ブラック、および赤外用のインクを蓄える袋またはチャンバを有する。このカートリッジは、基部成型物内にマイクロエアフィルタも含む。このマイクロエアフィルタは、ホース639を介してプリンタ内部のエアポンプ638に接続される。こうすると、印刷ヘッドに濾過された空気が提供され、それによって、Memjet印刷ヘッド350内への微小な粒子の侵入が妨げられる。そうしないと印刷ヘッドのノズルが詰まることがある。カートリッジ内にエアフィルタを組み込むことによって、フィルタの稼動寿命が事実上カートリッジの寿命に関連づけられる。このインクカートリッジは、3000ページ(1500シート)を印刷し糊付けすることができる完全に再利用可能な製品である。
図12を参照すると、電動の媒体取出しローラアセンブリ626により、媒体トレイから一番上のシートが直接押し出され、第1印刷エンジン602上の紙センサを通過し、全2重Memjet印刷ヘッドアセンブリに至る。2つのMemjet印刷エンジン602および603は、紙の直線経路に沿って、対向して一列に順に並んだ構成で装着される。紙604は、一体型電動取出しローラ626によって第1印刷エンジン602内に引き出さる。紙604の位置およびサイズが感知され、紙面一杯の印刷が始まる。定着剤が同時に印刷されて、可能な最短時間で乾燥させる助けとなる。
この紙は、ゴムローラに押し付けられて働く(紙の直線経路に沿って位置合わせされた)1組の電動排出スパイクホイールを通って第1のMemjet印刷エンジン602から排出される。これらのスパイクホイールは、「濡れた」印刷表面に接触し、シート604を第2のMemjet印刷エンジン603内に継続して給紙する。
図12および図12aを参照すると、紙604は、全2重印刷エンジン602および603から、綴込みアセンブリ605に至る。印刷されたページは、繊維質支持ローラを備えた電動スパイクホイール軸670と、スパイクホイールおよびモーメンタリ動作型糊付けホイールを備えた別の移動可能な軸の間を通過する。移動可能な軸/糊付けアセンブリ673は、金属支持ブラケットに装着され、これをカムシャフトの動作によって歯車を介して前方に移動させて電動軸670と接続させる。このカムシャフトは、別のモータによって駆動される。
糊付けホイールアセンブリ673は、インクカートリッジ627からの糊供給ホース641用の回転継手を伴う部分的に中空の軸679からなる。この軸679は、半径方向の穴を通る毛管作用によって接着剤を吸収する糊付けホイールに連結される。糊付けホイールは、前面に開口を有する成型ハウジング682によって取り囲まれる。金属ブラケットには、旋回式側方成型物およびばね付き外部扉が取り付けられ、アセンブリ673の残りの部分が前方に押されるときに側方に蝶番式に開く。この動作により、成型ハウジング682の前面を通して糊付けホイールが露出される。引張ばねによりこのアセンブリが閉じられ、非活動期間中は糊付けホイールが効果的に覆われる。
シート604が、糊付けホイールアセンブリ673に渡されると、綴込みアセンブリ605に移送される際に、(文書の第1シートは別にして)前側の1つの垂直縁部に接着剤が塗布される。
7.2 プリンタコントローラアーキテクチャ
図14に示すように、ネットページプリンタコントローラは、制御プロセッサ750、工場または現場で組み付けられるネットワークインターフェースモジュール625、無線送受信機(送受信機コントローラ753、ベースバンド回路754、RF回路755、およびRF共振器/インダクタ756)、デュアルRIP(ラスタ画像プロセッサ)DSP757、全2重印刷エンジンコントローラ760aおよび760b、フラッシュメモリ658、および64MB DRAM657からなる。
この制御プロセッサは、ネットワーク19およびローカルな無線ネットページペン101との通信を処理し、ヘルプボタン617を感知し、ユーザインターフェースLED613〜616を制御し、RIP DSP757および印刷エンジンコントローラ760に給電し、それらを同期させる。この制御プロセッサは、中程度の性能の汎用マイクロプロセッサからなる。制御プロセッサ750は、高速シリアルバス659を介して印刷エンジンコントローラ760と通信する。
RIP DSPは、ページ記述をラスタデータ化し圧縮して、ネットページプリンタ用の圧縮されたページフォーマットにする。各印刷エンジンコントローラは、その関連するMemjet印刷ヘッド350に対してリアルタイムで(すなわち、1分に30ページよりも多く)ページ画像の伸張、ディザ処理、および印刷を行う。全2重印刷エンジンコントローラにより、シートの両面が同時に印刷される。
マスタ印刷エンジンコントローラ760aは、マスタQAチップ665およびインクカートリッジQAチップ761とともに、紙の搬送を制御し、インクの使用率を監視する。
プリンタコントローラのフラッシュメモリ658は、プロセッサ750およびDSP757用のソフトウエアならびに構成データを保持する。これらは、ブート時に主メモリ657にコピーされる。
プロセッサ750、DSP757、およびデジタル送受信機コンポーネント(送受信機コントローラ753およびベースバンド回路754)は、単一のコントローラASIC656に統合される。アナログRFコンポーネント(RF回路755およびRF共振器/インダクタ756)は、別のRFチップ762内に設けられる。ネットワークインターフェースモジュール625は別物である。というのは、ネットページプリンタでは、ネットワーク接続を工場で選択することもできるし、現場で選択することもできるからである。フラッシュメモリ658および2×256Mbit(64MB)DRAM657もチップ外のものである。印刷エンジンコントローラ760は、別のASIC内に設けられる。
様々なネットワークインターフェースモジュール625が設けられ、それぞれ、ネットページネットワークインターフェース751、および任意選択でローカルなコンピュータまたはネットワーク用のインターフェース752を提供する。ネットページネットワークインターネットインターフェースは、POTSモデム、HFC(ファイバ−同軸ハイブリッド)ケーブルモデム、ISDNモデム、DSLモデム、衛星送受信機、現在および次世代の携帯電話送受信機、およびWLL(ワイヤレスローカルループ)送受信機を含む。ローカルインターフェースは、IEEE1284(パラレルポート)、10Base−Tおよび100Base−Tのイーサネット(登録商標)、USBおよびUSB2.0、IEEE1394(ファイアワイヤ)、ならびに新たに生まれつつある様々な家庭用ネットワークインターフェースを含む。インターネット接続がローカルネットワーク上で利用可能な場合、ローカルネットワークインターフェースは、ネットページネットワークインターフェースとして使用し得る。
無線送受信機753は、コードレス電話で通常用いられる無認可の900MHz帯域、あるいは、無認可の2.4GHz ISM(工業、科学、および医学用の)帯域で通信を行い、周波数ホッピングおよび衝突検出を利用して、混信のない通信を提供する。
プリンタコントローラには任意選択で、ネットページカメラなどの装置から「大量に放出される」データを受信するIrDA(赤外線データ通信協会)インターフェースが組み込まれる。代替実施形態では、プリンタは、IrDAインターフェースを使用して、適切に構成されたネットページペンと短距離通信を行う。
7.2.1 ラスタデータ化および印刷
主プロセッサ750が、文書のページレイアウトおよびページオブジェクトを受け取り、それらを検証した後で、主プロセッサ750は、DSP757上で適切なRIPソフトウエアを実行する。
DSP757は、各ページ記述をラスタデータ化し、これらラスタデータ化されたページ画像を圧縮する。主プロセッサは、圧縮されたページ画像をそれぞれメモリ中に記憶する。複数のDSPの負荷を均衡させる最も簡単な方法は、各DSPに別々のページをラスタデータ化させることである。一般に、任意の数のラスタデータ化されたページをメモリ中に記憶し得るので、これらのDSPを常にビジーな状態に保つことができる。短い文書をラスタデータ化するときには、この戦略では、DSPの利用率が潜在的に悪くなるだけである。
ページ記述中の透かし領域をラスタデータ化して、コントーン解像度の2レベルビットマップにする。このビットマップは、無視し得るサイズに無損失圧縮され、圧縮されたページ画像の一部を形成する。
印刷されたページのIR(赤外)レイヤは、1インチ当たり約6個の密度で、符号化されたネットページタグを含む。各タグは、ページID、タグID、および制御ビットを符号化する。各タグのデータの内容は、ラスタデータ化中に生成され、圧縮されたページ画像内に記憶される。
主プロセッサ750は、背中合わせのページ画像を全2重印刷エンジンコントローラ760に渡す。各印刷エンジンコントローラ760は、そのローカルメモリ中に圧縮されたページ画像を記憶し、ページの伸張および印刷のパイプラインを開始する。ページの伸張および印刷はパイプライン化される。というのは、114MBの2レベルCMYK+IRページ画像全体をメモリ中に記憶することは実際的ではないからである。
7.2.2 印刷エンジンコントローラ
印刷エンジンコントローラ760のページの伸張および印刷のパイプラインは、高速IEEE1394シリアルインターフェース659、標準JPEGデコーダ763、標準グループ4ファックスデコーダ764、カスタムハーフトナー/コンポジッタユニット765、カスタムタグエンコーダ766、ラインローダ/フォーマッタユニット767、およびMemjet印刷ヘッド350へのカスタムインターフェース768からなる。
印刷エンジンコントローラ760は、2重バッファ方式で動作する。高速シリアルインターフェース659を介して、1枚のページをDRAM769にロードし、前にロードされたページをDRAM769から読み出し、印刷エンジンコントローラパイプラインを通過させる。このページの印刷が完了すると、ロードされたばかりのページが印刷され、その間に別のページがロードされる。
このパイプラインの第1段階では、(763で)JPEG圧縮されたコントーンCMYKレイヤを伸張し、(764で)グループ4ファックス圧縮された2レベルブラックレイヤを伸張し、(766で)第1.2節で定義したタグフォーマットに従って2レベルネットページタグレイヤを描画する。これらはすべて並列に行う。第2段階では、(765で)コントーンCMYKレイヤをディザ処理し、(765で)得られた2レベルCMYKレイヤの上で2レベルブラックレイヤを合成する。得られた2レベルCMYK+IRドットデータをバッファし、(767で)1組のラインバッファを介してMemjet印刷ヘッド350上で印刷するためにフォーマットする。これらのラインバッファの大部分は、チップ外のDRAM内に記憶される。最終段階では、印刷ヘッドインターフェース768を介してMemjet印刷ヘッド350に対して、2レベルドットデータの6つのチャネルを(定着剤を含めて)印刷を行う。
全2重構成などで、いくつかの印刷エンジンコントローラ760を同時に使用するとき、共有ライン同期信号770によってこれらのコントローラを同期させる。外部マスタ/スレーブピン771によって選択された1つの印刷エンジン760だけが、共有ライン上にライン同期信号770を生成する。
印刷エンジンコントローラ760は、低速プロセッサ772を含む。低速プロセッサ772は、ページの伸張とパイプライン化を同期させ、低速シリアルバス773を介して印刷ヘッド350を構成し、ステップモータ675、676を制御するためのものである。
8.5インチバージョンのネットページプリンタでは、2つの印刷エンジンがそれぞれ、1分間に30枚のレターページを、ページの長手寸法(11インチ)に沿って印刷する。この場合、1600dpiで8.8kHzのライン速度が得られる。12インチバージョンのネットページプリンタでは、2つの印刷エンジンがそれぞれ、1分間に45枚のレターページを、ページの短いほうの寸法(8.5インチ)に沿って印刷する。この場合、10.2kHzのライン速度が得られる。これらのライン速度は、現在の設計では30kHzを越えるMemjet印刷ヘッドの動作周波数の範囲に十分に収まる。
結論
いくつかの特定の実施例を参照して本発明を説明してきたが、他の多くの形態で本発明を実施し得ることが当業者には理解されよう。