具体实施方式
注意:MemjetTM是澳大利亚的Silverbrook Research Pty Ltd的商标。
在这个优选实施方式中,本发明被构造成使用一个基于网络网页的计算机***进行工作,在后面对它进行了详细的描述。应理解,就基本***来说,不是每一个实施方式均必须实现下面所讨论的全部甚至大部分具体的细节和延伸内容。但是,以最完全的形式描述了这个***,以减少当希望理解本发明的优选实施方式和方面进行工作的上下文时,对外部参考资料的需要。
简单地说,这个网页***的优选形式利用了形式为一个映射表面的一个计算机接口,即,包括指向在一个计算机***中被维持的表面映射的索引的一个物理表面。这个映射索引可以被一个合适的传感器设备进行查询。取决于具体的实施方式,这个映射索引可以被进行可见地编码或者不可见编码,并且以这样一个方法来定义,以使对这个映射编码进行的一个本地查询可以获得一个明确的在这个映射内和在不同映射之间的映射索引。这个计算机***可以包括关于这个映射表面的特征的信息,并且这样的信息可以根据一个传感器设备和映射表面一起提供的映射索引被进行检索。这样被检索的信息可以对这个操作员与表面特征进行的交互作出响应,代表这个操作员执行由计算机***所发起的动作。
在其优选的形式中,这个网页***依赖于网页的产生以及人与这个网页的交互。这些网页是关于文本的网页,关于图象和打印在普通纸张上的图形的页面,但是它们工作起来就象交互式万维网页面。使用墨水在每一张纸上对信息进行编码,这墨水基本上不能够被普通的、不使用特殊仪器的人所看见。但是,这个墨水,及由此产生的编码数据可以被一个光学成象笔所探测并且被发送到这个网页***。
在这个优选的形式中,在每一个页面上的每一个按钮和超级链接可以用这个笔来进行点击,以从这个网络请求信息或者向一个网络服务器发送优选项的信号。在一个实施方式中,在一个网页上用手写的文本在这个网页***中被自动地识别和转换到计算机文本,并且允许对表格进行填充。在其它的实施方式中,被记录在一个网页上的签名被自动地进行证实,这允许电子商务的交易可以被安全地授权。
如图1中所显示的,一个打印出来的网页1可以表示一个交互式表格,这个表格可以被用户在打印出来的页面上进行物理地填充,并且也可以被用户进行“电子”填充,这是通过在笔和网页***之间的通信来进行的。这个示例显示了包括名字和地址字段的一个“请求”表格和一个提交按钮。这个网页包括使用可见墨水打印出来的图形数据2,和使用不可见墨水打印的、作为一个标记集合4的编码数据3。被保存在这个网页网络上的相应页面描述5描述了这个网页的独立部件。特别地,它描述了每一个交互式部件(即,在这个示例中的文本字段或者按钮)的类型和空间范围(区域),以允许这个网页***能够正确地理解通过网页进行的输入。例如,提交按钮6具有一个区域7,这个区域与相应图形8的空间范围相应。
如图2中所显示的,网页笔101与一个网页打印机601,一个用互联网连接的、用于家庭、办公室或者移动使用的打印工具一起进行工作,这个网页笔101的一个优选形式被显示在图8和9中,并且在下面被进行更详细的描述。这个笔是无线的,并且通过一个短距离无线链路9与这个网页打印机进行安全的通信。
这个网页打印机601的优选形式被显示在图11到图13中,并且在下面被进行详细地描述,这个网页打印机601能够根据需要或者周期性地发送个性化的新闻报纸,杂志,商品目录,小册子和其它出版物,所有这些出版物均以高质量进行打印,并且被用作交互式网页。与一个个人计算机不同,这个网页打印机是一个应用工具,例如,它可以被安装在与早间新闻首先被阅读的区域相邻的墙壁上,例如一个用户的厨房,靠近早餐桌的旁边,或者在靠近这天离开家的位置上。它也可以是桌面,台面,便携式的或者缩微的形式。
在消费点被打印的网页综合了纸张使用的方便性和一个交互式媒质的及时性与交互性。
如图2中所显示的,这个网页笔101与一个打印网页1上的编码数据进行交互,并且通过一个短距离无线链路9与一个网页打印机进行交互。这个打印机601将这个交互发送到相关的网页页面服务器10,以进行理解。在合适的环境下,这个页面服务器发送一个相应的消息到在一个网页应用服务器13上运行的应用计算机软件。这个应用服务器反过来可以发送一个响应,这个响应将被打印在这个发起打印机上。
通过与基于高速微机械***(MEMS)的喷墨(MemjetTM)打印机一起进行使用,在这个优选实施方式中,可以使这个网页***更方便。在这个技术的优选实施方式中,相对高速度和高质量的打印已经降低到可以为更多的用户所使用的程度。在其优选形式中,一个网页出版具有一个传统的新闻杂志的物理特征,例如一组信纸大小的、两面使用全彩色进行打印的光滑页面,并且被装订在一起以更方便地进行导航和进行舒适的处理。
这个网页打印机利用了日益增多的宽带互联网接入。对美国的家庭用户来说,有95%的用户可以使用有线电视电缆业务,并且其中22%的家庭用户已经可以使用有线电视电缆调制解调器所提供的宽带互联网接入业务了。这个网页打印机也可以在低速度连接上进行工作,但是其发送时间变长了,其图象质量变差了。实际上,使用已有的、消费者所使用的喷墨打印机和激光打印机,就可以实现这个网页***,虽然这个***的工作速度较慢,由此从一个消费者的角度来看是比较难以接受的。在其它的实施方式中,这个网页***驻留在一个私有的内部网络中。在另外其它的实施方式中,这个网页***驻留在一单个计算机或者用计算机来工作的设备上,例如一个打印机上。
在这个网页网络上的网页出版服务器14被配置成将打印质量的出版内容发送到网页打印机。通过单播和多播互联网协议,周期性的出版物被自动地发送到进行订阅的网页打印机。个性化的出版物被根据每一个用户的要求而进行滤波与进行格式化。
一个网页打印机可以被配置成支持任何数量的笔,并且一个笔可以与任何数量的网页打印机一起进行工作。在这个优选实施方式中,每一个网页笔具有一个唯一的标识符。一个家庭可以有很多彩色网页笔的集合,其中一个笔被分配到这个家庭的每一个成员。这允许每一个用户可以对一个网页出版服务器或者应用服务器保留不同服务要求。
一个网页笔也可以登记到一个网页登记服务器11上,并且被连接到一个或者多个付费卡帐号。这允许使用这个网页笔来对电子商务付费进行安全的授权。这个网页登记服务器将这个网页笔所捕获的签名与前一个登记注册的签名进行比较,这允许它能够对一个电子商务服务器的一个用户的身份进行认证。也可以使用其它生物统计学来证实身份。这个网页笔的一个版本包括指纹扫描,其证实方法与这个网页登记服务器的证实方法类似。
虽然一个网页打印机可以发送期刊,例如早间新闻报纸,而不需要用户进行干预,但是它也可以被配置成决不发送未经请求的垃圾邮件。在其优选形式中,它仅发送来自被订阅的或者是被授权的源的周期性杂志。从这个角度来说,这个网页打印机与一个传真机或者电子邮件帐号是不同的,传真机或者电子邮件帐号对任何垃圾邮件发送者是可见的,并且垃圾邮件发送者知道这个电话号码或者电子邮件地址。
1 网页***结构
使用一个统一的模型语言(UML)类图来描述每一个对象模型。一个类图包括通过关系而连接在一起的一组对象类,这里对两类关系感兴趣:相关和一般化。一个相关表示在对象之间的某种关系,即在类的实例之间的关系。一个一般化涉及实际的类,并且可以使用下面的方法来进行理解:如果一个类被认为是这个类所有对象的集合,并且类A是类B的一个一般化,然后,简单地说,B就是A的一个子集。这个UML不直接支持第二级模型-即,关于类的类。
每一个类被表示为一个标有该类的名字的矩形。它包括一个该类的属性的列表,与名字之间是用水平线分开的,并且包括一个类的操作列表,与这个属性列表之间是用一个水平线分开的。但是在随后的类图中,操作决不进行模型化。
一个相关被表示为连接了两个类的一条线,可选地,可以在任何一端标上相关的多重性。这个缺省的多重性是1。一个星号表示多重性为“很多”,即,零或者更多。每一个相关被可选地标上其名字,并且可选地,在其任何一端标上相应类的角色。一个中心为空的菱形表示一个聚合相关(“是其一部分”),并且被画在这个相关线的聚合者端。
一个一般化的关系(“是一个”)被表示连接两个类的一条实线,在其一般化端有一个箭头(中心为空的三角形)。
当一个类图被分为多个图时,被复制的任何一个类被用一个虚线来进行显示,除了定义这个类的主图外。仅在其定义的位置显示了类的属性。
1.1 网页
网页是在其上建立一个网页网络的基础。它们提供了一个基于纸张的、面向出版信息和交互式业务的用户接口。
一个网页包括一个打印页面(或者其它表面区域),并且该打印页面附带着对这个页面的在线描述的不可见的索引。这个在线页面描述被一个网页页面服务器进行永久的维护。这个页面描述描述了这个页面的可见布局和内容,包括文本的,图形和图象的。它也描述这个页面上的输入部件,包括按钮,超级链接,和输入字段。一个网页允许使用一个网页笔在其表面上进行标记,而同时被这个网页***所捕获与处理。
多个网页可以共享相同的页面描述。但是,为了允许能够将通过相同页面而进行的输入区别开来,每一个网页被分配了一个唯一的页面标识符。这个页面ID具有足够多的精度来区别数量很多的网页。
到这个页面描述的每一个索引按一个打印的标记的形式被进行编码。这个标记标识了其上出现了这个标记的这个唯一页面,由此间接地识别了这个页面描述。这个标记也标识其自己在这个页面上的位置。下面更详细地描述了这些标记的特征。
标记被使用对红外线能够进行吸收的墨水打印在任何能够反射红外线的基底上,例如普通的纸张上。近红外线波长对人眼是不可见的,但是很容易被具有一个合适滤波器的一个固态图象传感器所探测到。
一个标记被在这个网页笔中的一个区域图象传感器所探测,并且这个标记数据被通过最近的网页打印机发送到这个网页***。这个笔通过一个短距离无线链路与这个网页打印机进行通信,并且通信是无线的。标记是足够地小,并且被足够密集地排列,以致即使在页面上进行一单个点击,这个笔也能够可靠地对至少一个标记进行成象。重要的是,每一次与这个页面进行交互时,这个笔能够识别出这个页面ID和位置,因为交互式通信是无状态的(stateless)。这些标记被进行了能够纠正错误的编码,以使它们能够部分地容忍对表面的损害。
这个网页页面服务器为每一个打印网页维持一个唯一的页面实例,这允许它能够为每一个打印网页的页面描述的输入字段维持不同的、用户所提供的值。
在网页描述,页面实例,和打印网页之间的关系被显示在图4中。这个页面实例与打印它的这个网页打印机和请求它的这个网页用户,如果知道的话,均相关。
1.2 网页标记
1.2.1 标记数据内容
在一个优选的形式中,每一个标记标识它所出现的区域,和该标记在这个区域中出现的位置。一个标记也包括与整个区域或者与这个标记相关的一个标识。一个或者多个标识比特可以,例如,向一个标记探测设备发送信号来提供表示与这个标记的近邻区域相关的一个功能的反馈,而不需要这个探测设备参考这个区域的一个描述。一个网页笔,例如,可以让一个“激活区域”LED发光,当其在一个超级链接的区域中时。
如下面将更清楚地解释的,在一个优选实施方式中,每一个标记包括一个容易被识别的固定不变的结构,它有助于初始时的检测,并且可以帮助使这个表面或者这个探测过程所引入的任何弯曲所造成的影响减少到最小。优选地,这些标记平铺在整个页面中,并且足够地小和足够密集地被排列,以致即使在页面上进行一单个点击,这个笔也能够可靠地对至少一个标记进行成象。重要的是,每一次与这个页面进行交互时,这个笔能够识别出这个页面ID和位置,因为交互是无状态的。
在一个优选的实施方式中,一个标记所指向的这个区域与整个页面一致,并且所以,在这个标记中被进行编码的这个区域ID与这个标记出现在其中的这个页面的页面ID是同义的。在其它的实施方式中,一个标记所指向的这个区域可以是一个页面或者其它表面的一个任意子区域。例如,它可以与一个交互式部件的区域一致,在这个情形下,这个区域ID可以直接地标识出这个交互式部件。
表1-标记数据
字段 |
精度(比特) |
区域ID |
100 |
标记ID |
16 |
标识 |
4 |
总数 |
120 |
每一个标记包括120个比特的信息,典型的分配如表1中所显示的。假设一个最大的标记密度是每平方英寸是64个标记,一个16比特的标记ID支持的区域大小可以达到1024平方英寸。更大的区域可以进行连续的映射,而不需要增加标记ID的精度,而是简单地使用相邻区域和地图。100比特的区域ID允许可以唯一识别2100个(~1030或者一百万兆万兆万)不同的区域。
1.2.2 标记数据编码
这个120比特的标记数据可以被使用一个(15,5)的里得索罗门码进行冗余编码。这实现了360个编码比特,包括6个码字,每个码字是15个4比特的符号。这个(15,5)码允许在每一个码字中可以有5个符号错误可以被纠正,即,它能够容忍的符号错误速率为每一个码字33%。
每一个4比特符号以一个空间相关的方式被表示在这个标记中,并且这6个码字的符号在这个标记中被进行空间交织。这可以确保一个突发错误(能够对多个空间上相邻的比特产生影响的一个错误)对整个符号的破坏符号数目最小,并且在任何一个码字中的符号数目最小,这样可以使突发错误被完全纠正的可能性达到最大。
1.2.3 物理标记结构
这个标记的物理结构表示被显示在图5中,其物理结构包括固定的目标结构15,16,17和可变的数据区域18。固定的目标结构允许一个探测设备,例如这个网页笔能够检测到这个标记,并且推断出它相对于这个传感器的3维方向。这个数据区域包括这个被编码标记数据的独立比特的表示。
为了实现正确的标记再生,这个标记被再现为256×256点的分辨率。当以每英寸1600个点的精度进行打印时,这实现了一个直径为4毫米的一个标记。使用这个分辨率,这个标记被设计成被其半径为16点的一个“安静区域”所围绕。因为这个安静区域也是由相邻标记作贡献的。所以它仅给这个标记的有效直径增加了16点。
这个标记包括6个目标结构。一个检测环15允许这个探测设备能够在开始就检测到这个标记。这个环是很容易被检测的,因为它是圆型的并且是固定不变的,并且对其长宽比进行一个简单的纠正就去除了大部分透视畸变的影响。一个方向轴16允许这个探测设备能够确定这个标记的大致水平方向,因为这个传感器的偏转。这个方向角是不对称的,以实现一个唯一的方向。4个透视目标17允许这个探测设备推断出这个标记的一个准确的2维透视变换,因此可以推断出这个标记相对于这个传感器的一个准确的3维位置和方向。
所有的目标结构均是足够冗余的和足够大的,以改进它们的抗噪声的能力。
整个标记的形状是圆形的。除了其它方面,这在一个不规则的三角格栅中支持了最佳的标记包装。与这个圆形的检测环一起,这使在这个标记中的一个圆形数据比特结构为最佳结构。为了使其尺寸最大化,每一个数据比特被用一个径向的楔表示,这个楔的形式是被两个径向线和两个同心圆弧所围绕而成的一个区域。每一个楔的最小尺寸在1600dpi时是8个点,并且被设计成以使其基点(其内圆弧)至少与最小尺寸相等。这个楔在径向上的高度总是等于最小尺寸。每一个4比特数据符号用一个2×2楔的阵列来表示。
6个码字中每一个码字的这15个4比特数据符号被分配到4个同心符号环18a到18d中,并且分配方式是交织的。符号被交替地、围绕这个标记以圆形前进的方式而进行分配。
设计交织的目的使在相同码字的任何两个符号之间的平均空间距离最大。
为了支持通过一个探测设备与一个被标记区域进行的“单点击”交互式作用,这个探测设备必须能够在其视场中看到至少一个完整的标记,不管在这个区域的哪一个位置或者位于哪一个方向上。所以,这个探测设备的视场的所需要直径是这些标记的尺寸和距离的函数。
假设这个视场是一个圆形的,当这些标记被排列在一个等边三角形格栅上时,这个传感器的视场的最小直径就可以获得了,如图6中所显示的。
1.2.4 标记图象处理和解码
这个标记图象处理和解码是被一个探测设备,例如图7中所显示的网页笔,执行的。当一个被捕获图象可以被这个图象传感器中获得,就确定了这个图象的动态范围(在20)。然后,这个范围的中心被选择作为这个图象的二进制阈值21。然后,这个图象被进行阈值处理并且被分段成连接的点区域(即,形状23)(在22)。尺寸太小以致不能够表示标记目标结构的形状被丢弃。每一个形状的尺寸和质心也被计算出来。
然后,对每一个形状计算出(在24)二进制形状矩(shape moment)25,并且这些提供了随后对目标结构进行定位的基础。从本质上说,中心形状矩是与位置无关的,并且可以很容易地被做成与尺寸大小,长宽比和旋转无关。
环的目标结构15被首先定位出来(在26)。一个环的优点在于当发生了透视畸变时,可以很好地进行工作。在进行匹配以前,对每一个形状的矩进行长宽比的归一化和旋转归一化。一旦其二阶矩被归一化,这个环就很容易被识别出来,即使透视畸变非常严重。环的初始长宽比和旋转27一起提供了对这个透视变换的一个有用近似。
下面对轴向目标结构16进行定位(在28)。在进行匹配以前,对每一个形状的矩进行环的归一化,并且对所产生的矩进行旋转归一化。一旦其二阶矩已经被归一化了,其轴向目标结构就可以很容易地被识别。注意,在区分轴方向为两个可能方向中哪一个方向时就需要使用3阶矩。这个形状被故意地朝一侧倾斜以使可能区别出方向。另外,注意,仅仅在对它进行了环的归一化后,才能够对轴向目标进行旋转归一化,因为透视畸变可以隐藏轴向目标的轴方向。这个轴向目标的初始旋转提供了一个有用的、对标记因为笔的偏转29而旋转的一个近似。
4个透视目标结构17是最后一个需要被定位的(在30)。根据它们与环和轴向目标环的方位(aspect)和旋转,以及轴向的旋转之间已知的空间关系,可以很好地估计计算位置。通过将好的归一化应用到每一个形状矩来进行匹配。一旦其二阶矩被归一化了,就很容易识别出圆形的透视目标,并且最靠近每一个估计位置的目标也被认为是匹配的。然后,4个透视目标的初始质心被认为是在标记空间中一个已知尺寸的平方的透视畸变角31,并且在求解了涉及4个标记空间和图象空间点对的已知方程后,就可以推断出(在32)一个8自由度的透视变换33(见Heckbert,P.,Fundamentals of Texture Mapping and Image Warping,MasterThesis,Dept.Of EECS,U.Of California at Berkley,Technical Report No.UCB/CSD 89/516,June 1989,其内容在这里被用作参考)。
所推断出来的、从标记空间到图象空间的透视变换被用于将标记空间中的每一个已知数据比特位置投影(在36)到图象空间中,其中实数值位置被用于双线性内插(在36)输入图象中的4个相关相邻点。前面计算出来的图象阈值21被用于对结果进行阈值处理,而产生最终的比特值37。
一旦已经使用这个方法获得了所有360个数据比特37,6个60比特里得索罗门码字中的每一个被进行解码(在38)来获得20个解码比特39,或者总共120个解码比特。注意,以码字的顺序来对码字符号进行采样,以使在采样过程中,就暗暗地完成了对码字的去交织。
仅在该图象的子区域中来寻找这个环目标15,该图象区域与这个图象的关系可以确保,如果发现了该环,该环就是一个完整标记的一部分。如果没有发现一个完整的标记并且成功地解码出这个标记,然后,就不记录当前帧的笔位置。如果有足够的处理能力和理想的一个不是最小的视场193,就可以使用一个替代的策略来在当前图象中寻找另一个标记。
所获得的标记数据表示包括该标记的区域的标识身份和标记在这个区域中的位置。然后,就可以从对这个标记进行的透视变换33和在笔的物理轴与笔的光学轴之间的已知空间关系来推断(在34)出这个笔尖在区域中的确切位置35,以及笔的整体方向35。
1.2.5 标记图
对一个标记进行解码就产生了一个区域ID,一个标记ID,和一个与标记相关的笔变换。在标记ID和与标记相关的笔位置被转换成在这个标记区域中的一个绝对位置以前,这个标记在该区域中的位置必须是已知的。这是通过一个标记图而给出的,这个标记图的功能是将一个标记区域中的每一个标记ID映射到一个相应的位置。这个标记图类图被显示在图22中,它作为网页打印机类图的一部分。
一个标记图反映了用标记将这个表面排列满的一个方法。并且这个排列方法可以根据表面类型的不同而不同。当多个标记区域共享了相同的排列方法和相同的标记编号方法时,它们也可以共享相同的标记图。
用于一个区域的一个标记图必须是可以通过区域ID进行检索的。这样,给出一个区域ID,一个标记ID和一个笔变换,就可以检索这个标记图,并且这个标记ID可以被变换成在该区域内的一个绝对标记位置,并且与标记相关的笔位置可以被增加到这个标记位置以获得笔在该区域内的一个绝对位置。
1.2.6 进行标记的方法
两个不同的表面编码方法是比较有意思的,这两个方法均使用在这个部分中前面所描述的标记结构。优选编码方法使用“表示位置的”标记,如已经讨论的。一个替代的编码方法使用表示对象的标记。
一个表示位置的标记包括一个标记ID,当通过与标记区域相关的标记图而进行变换时,这个标记ID获得了在该区域中的一个唯一的标记位置。笔的、与标记相关的位置被增加到这个标记位置以获得笔在该区域内的位置。这依次又被用于决定笔相对于在与该区域相关的页面描述中的一个用户接口部件的位置。不仅用户接口部件本身被标识,而且也标识了相对于这个用户接口部件的一个位置。所以,表示位置的标记可以很容易地捕获在一特定用户接口部件中的区域中的一个绝对笔路径。
一个表示对象的标记包括直接标识在与该区域相关的页面描述中的一个用户接口部件。这个用户接口部件中的区域中的所有标记标识了这个用户接口部件,使它们均是一致的,并且所以也是不可区分的。所以,表示对象的标记不支持对一个绝对笔路径的捕获。但是,它们能够支持对一个相对笔路径的捕获。只要位置采样频率超过了所遇到的标记频率的两倍,在一次点击中从一个采样笔位置到下一个位置的偏移量可以被准确地确定出来。
使用任何一个进行标记的方法,这些标记的功能都是与网页上作为用户交互式部件的相关视觉部件进行合作,这样一个用户可以使用一个合适的探测设备与打印页面进行交互式作用,以通过这个探测设备读取标记数据并且在网页***中产生一个合适的响应。
1.3 文档和页面描述
图25和26显示了一个文档和页面描述类图的一个优选实施方式。
在这个网页***中,用3个层次来描述一个文档。在最抽象的层次上,文档836具有一个等级结构,其终端部件839与内容对象840,例如文本对象,文本类型的对象,图象对象,等等相关。一旦这个文档在使用一个特定的页面大小的打印机上并且根据一特定用户的缩放因子优选项被打印出来,这个文档被编上页号并且也被进行格式化。格式化终端部件835在某些情形下将与那些不同于那些与它们相应终端部件相关的内容对象的内容对象相关,特别地,在内容对象是与风格(style)相关的地方。一个文档和页面的每一个打印实例也被分开进行描述,以允许通过一特定页面实例830而捕获的输入的记录可以与通过该相同页面描述的其它实例而捕获的输入的记录分开。
在这个页面服务器上的最抽象文档描述的出现允许一个用户能够请求一个文档的拷贝,而不需要被强迫接受源文档的特定格式。这个用户可以通过使用一个不同纸张大小的打印机来请求一个拷贝,例如。相反,在这个页面服务器上的格式化文档描述的出现允许这个页面服务器能够有效地解释用户对一特定打印页面进行的动作。
一个格式化文档834包括一组格式化的页面描述5,每一个页面描述5包括一组格式化的终端部件835。每一个格式化终端部件在这个页面上具有一个空间的扩展或者区域58。这定义了输入部件,例如超级链接和输入字段的激活区域。
一个文档实例831与一个格式化文档834相应。它包括一组页面实例830,每一个页面实例830与这个格式化文档的一个页面描述5相应。每一个页面实例830描述了一单个唯一的打印网页1,并且记录了该网页的页面ID 50。一个页面实例不是一个文档实例的一部分,如果它表示一个被分开请求的页面的一个拷贝。
一个页面实例包括一组终端部件实例832。仅当一个部件实例记录了与实例相关的信息,这个部件实例才存在。这样,对一个超级链接部件存在有一个超级链接实例,因为它记录了一个对这个页面实例特定的交易ID 55,并且对一个字段部件存在一个字段实例,因为它记录了一个对该页面实例特定的输入。但是,静态部件,例如文本流,不存在一个部件实例。
一个终端部件可以是一个静态的部件843,一个超级链接部件844,一个字段部件845或者一个页面服务器命令部件846,如图27中所显示的。一个静态部件843可以是具有一个相关风格对象(style object)854的一个风格部件847,具有相关风格化文本对象855的一个文本流部件848,具有一个相关图象部件856的一个图象部件849,具有一个相关图形对象857的一个图形部件850,具有一个相关视频剪辑对象858的一个视频剪辑部件851,具有一个相关音频剪辑对象859的一个音频剪辑部件852,或者具有一个相关描述对象860的一个描述部件863,如图28中所显示的。
一个页面实例具有一个背景字段833,它被用于记录在这个页面上所捕获的、不用于一个特定输入部件的任何数字墨水。
在本发明的这个优选实施方式中,一个标记图811与每一个页面实例相关来允许这个页面上的标记被变换到这个页面上的位置。
1.4 网页网络
在一个优选实施方式中,一个网页网络包括一个分布式的、网页页面服务器10,网页注册服务器11,网页ID服务器12,网页应用服务器13,网页出版服务器14,和网页打印机601的集合,这些服务器是通过一个网络19,例如互联网而连接在一起的,如图3中所显示的。
这个网页注册服务器11是记录在用户,笔,打印机,应用和出版之间的关系的服务器,由此对各种网络活动进行授权。它对用户进行认证,并且在应用交易中担当代表被认证的用户的签名代理。它也提供了硬件识别服务。如上面所描述的,一个网页页面服务器10保存了关于页面描述和页面实例的永久信息。这个网页网络包括任何数量的页面服务器,每一个页面服务器处理页面实例的一个子集。因为一个页面服务器也维持每一个页面实例的用户输入,所以客户,例如网页打印机将网页输入直接发送到合适的页面服务器。这些页面服务器解释任何相对于相应页面的描述的这种输入。
一个网页ID服务器12根据需要分配文档ID 51,并且通过其ID分配方法来在页面服务器之间提供负载均衡。
一个网页打印机使用互联网分布式名字***(DNS),或者类似的***,来将一个网页页面ID 50解析为处理相应页面实例的网页页面服务器的网络地址。
一个网页应用服务器13是其上装有交互式网页应用的一个服务器。一个网页出版服务器14是将网页文档出版给网页打印机的一个应用服务器。它们在部分2中将被详细地描述。
网页服务器可以被安装在很多网络服务器平台上,例如IBM,惠普公司,和Sun公司所生产的网络服务器平台。多个网页服务器可以同时运行在一单个主机上,并且一单个服务器也可以分布到多个主机上。网页服务器所提供的某些或者全部功能,特别是ID服务器和页面服务器所提供的功能,也可以被直接提供在一个网页应用工具,例如一个网页打印机中,一个计算机工作站中,或者被提供在一个局域网上。
1.5 网页打印机
网页打印机601是注册到这个网页***中的一个应用工具,并且根据需要或者根据订阅来订阅网页文档。每一个打印机具有一个唯一的打印机ID 62,并且通过一个网络,例如互联网,理想的是一个宽带连接,被连接到这个网页网络。
除了被保存在非挥发性存储器中的、关于身份和安全设置的信息外,这个网页打印机不包括永久的保存信息。就一个用户来说,“这个网络是一个计算机”。在这个分布式网页页面服务器10的帮助下,网页通过空间与时间来进行交互式的通信,而与特定的网页打印机无关。
网页打印机从网页出版服务器14接收订阅的网页文档。每一个文档被分成两个部分:页面布局,和用来填充页面的文本和图象对象。因为有个性化,页面布局典型地是对一个特定用户而具体化的,所以通过合适的页面服务器被单播给用户的打印机。另一方面,文本和图象对象典型地是与其它用户进行共享的,所以被多播给所有用户的打印机和合适的页面服务器。
网页出版服务器对文档内容的分段进行优化,以进行单播和多播。在接收到单播的一个文档页面布局后,这个打印机就知道需要侦听哪一个多播,如果有的话。
一旦这个打印机已经接收到完整的定义了需要被打印的这个文档的页面布局和对象,它就能够打印这个文档。
这个打印机可以进行光栅化操作,并且同时在纸张的两面打印奇数页和偶数页。它包括双向打印引擎控制器760和使用用于这个目的的MemjetTM打印机头的打印引擎。
这个打印过程包括两个分开的阶段:页面描述的光栅化,和页面图象的扩展和打印。光栅图象处理器(RIP)包括一个或者多个并行工作的标准的DSP 757。这个双向打印引擎控制器包括定制处理器,它实时地扩展,抖动和打印页面图象,并且与打印引擎中的打印机头的操作同步。
不能够进行IR打印的打印机具有使用吸收IR的黑墨水来打印标记的选项,虽然这将标记局限在页面的其它空白区域中。虽然与用IR打印的页面相比,这样的页面具有更局限性的功能,但是它们仍然可以被分类为网页。
一个正常的网页打印机将网页打印在纸张上。更特殊的网页打印机可以打印更特殊的表面,例如球面。每一个打印机支持至少一个类型的表面,并且对每一个表面类型支持至少一个标记排列方法,由此可以形成一个标记图。这个标记图811描述了实际被使用来打印一个文档的标记排列方法,并且与该文档相关,以使这个文档的标记可以被正确地理解。
图2示出了网页打印机类图,反映了与打印机相关的、被网页网络上的一个注册服务器11所维持的信息。
在下面的部分6中,参考图11到16更详细地描述了这个网页打印机的一个优选实施方式。
1.5.1 MemjetTM打印头
这个网页***可以使用用各种数字打印技术制造的打印机来进行工作,包括热喷墨打印机,压电喷墨打印机,激光电子照象技术,和其它类型的打印机。但是,为了使消费者能够广泛地接受,理想的是,一个网页打印机应具有下面的特征:
照片质量的彩色打印
高质量的文本打印
高可靠性
打印机成本低
墨水成本低
纸张成本低
操作简单
打印噪声很低
打印速度高
同时能够进行双面打印
紧凑的形状因子
功率消耗低
目前还没有商用的打印机技术能够满足所有这些特征。
为了生产具有这些特性的打印机,本发明申请已经发明了一个新的打印技术,称作MemjetTM打印技术。MemjetTM是根据需要而进行滴墨的喷墨打印技术,其打印头的宽度与纸张相同,并且是使用微电子机械***(MEMS)技术来制造的。图17显示了用一个MemjetTM打印头做的一单个打印部件300。这个网页墙壁安装打印机包括了168960个打印部件300来形成一个1600dpi页宽的双向打印机。这个打印机同时打印深蓝色,品红色,黄色,黑色,和红外墨水及纸张调节剂与墨水固定剂。
这个打印部件300大约是110微米长,32微米宽。这些打印部件阵列是被形成在一个硅衬底301上,这个硅衬底包括CMOS逻辑电路,数据传送,定时,和驱动电路(没有显示)。
这个打印部件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)显示了一个MemjetTM打印部件300的工作周期。
图19(a)显示了在打印一个墨水微滴以前,墨水弯液面316的静止位置。墨水被墨水弯液面316的表面张力维持在喷嘴腔内,并且被维持在形成在喷嘴腔304和墨水管道缘边306之间的流体密封305中。
在进行打印时,打印头CMOS电路将数据从打印引擎控制器分发到正确的打印部件,锁存这个数据,并且缓存这个数据,以驱动这个有源传动机构梁对308的电极318。这促使一个电流通过这个梁对308并且电流的持续时间大约为1微秒,这就产生了焦耳热效应。焦耳热效应所产生的温度升高促使梁对308进行膨胀。因为这个无源传动机构梁对309没有被加热,所以它不会进行热膨胀,这导致在这两个梁对之间存在有应力差异。这个应力差异部分地是通过热电弯曲激励器320的悬臂末端朝衬底301进行弯曲而得到消散。这个杠杠臂307将这个运动传送到喷嘴腔304。喷嘴腔304移动大约2个微米到如图19(b)所显示的这个位置。这增加了墨水的压强,迫使墨水321喷出喷嘴302,并且促使墨水的弯液面316凸出。喷嘴缘边303避免墨水弯液面316扩展到喷嘴腔304的表面。
当梁对308和309的温度相等时,激励器320返回到其初始位置。这有助于墨水微滴317与在喷嘴腔中的墨水321断开,如图19(c)中所显示的。这个喷嘴腔受弯液面316的表面张力的作用而重新被注满。
图20显示了一个打印头350的一段。在一个网页打印机中,打印头的长度是纸张在方向351上的满宽度(典型地是210mm)。所显示的段是0.4mm长(一个完全的打印头的大约0.2%)。当进行打印时,这个纸张在方向352上进行移动并且通过固定的打印头。这个打印头具有6行叉指形排列的打印部件300,打印由墨水注入口312所提供的6个颜色的或者6个类型的墨水。
为了在工作期间保护打印头的脆弱表面,一个喷嘴保护薄片330被连接到这个打印头衬底301。对每一个喷嘴302来说,有一个相应的喷嘴保护孔331,通过这个孔,墨水微滴被发射出去。为了避免喷嘴保护孔331被纸张纤维或者其它碎片所阻塞,在进行打印期间,被过滤的空气通过空气注入口332被泵浦进来并且从这个保护孔被泵浦出去。为了避免墨水321变干,当打印机处于空闲状态时,打印防护装置被进行密封。
1.6 网页笔
这个网页***的有源探测设备典型地是一个笔101,它使用其中被嵌入的控制器134来通过一个图象传感器从一个页面捕获和解码IR位置标记。这个图象传感器是一个固体设备,并且具有一个合适的滤波器来允许仅探测近红外波长。如下面更详细描述的,这个***能够探测到笔尖与表面的接触,并且这个笔能够以一足够的速率对标记进行探测来捕获人手写的字(即,为200dpi或者更高,和100Hz或者更快)。这个笔所捕获的信息被进行编码,并且被用无线的方式发送到这个打印机(或者基站),这个打印机或者基站使用(已知的)页面结构来理解这个数据。
这个网页笔的优选实施方式既可以作为一个普通的标记墨水笔使用,也可以作为一个非标记输入笔使用。然而,这个标记用途对使用作为一个浏览***的网页***来说不是必需的,例如当它被用作一个互联网接口时。每一个网页笔被注册到这个网页***中,并且具有一个唯一的笔ID61。图23显示了这个网页笔类图,反映了这个网页网络上一个注册服务器11所维持的与笔相关的信息。
当笔尖与一个网页进行接触时,这个笔确定其相对这个页面的位置和方向。这个笔尖被连接到一个力传感器,并且这个笔尖上的力被相对表示这个笔是“抬起的”或者是“按下的”的一个阈值来进行理解。这允许通过使用笔尖来进行按压来“点击”这个页面上的一个交互式部件,以从一个网络请求,例如,信息。另外,这个力被作为一个连续值而进行捕获从而允许例如一个签名的全动态特性被证实。
该笔通过在红外谱中对笔尖周围的页面区域193进行成象,来确定其笔尖在这个网页上的位置和方向。它解码最近的标记,并且根据在这个图象标记上的被观察透视畸变和这个笔的已知光学几何结构来计算这个笔尖相对标记的位置。虽然这个标记的位置分辨率可能比较低,因为页面上的标记密度与标记大小成反比,但是被调节后的位置分辨率是很高的,超过了准确手写识别所需要的最小分辨率。
笔相对网页而进行的动作是作为一系列笔画而捕获的。一个笔画包括在这个页面上的一系列标记了时间的笔位置,这是被一个笔按下的事件所触发的,并且被随后的一个抬起笔的事件所结束。无论何时这个页面ID改变时,在正常的情形下,页面ID的改变是在一个笔画的开始。一个笔画也被标记了这个网页的页面ID 50。
每一个网页笔有与其相关的一个当前选择826,这允许这个用户能够执行拷贝和粘贴操作,等等。这个选择被标记上了时间,以允许这个***能够在一预定时间后丢弃这个选择。当前选择描述了一个页面实例的一个区域。它包括通过笔相对这个页面的背景区域而捕获的最近数字墨水笔画。一旦它已经被通过一个选择超级链接激活而提交到一个应用时,它就被用一个与应用相关的方式进行理解。
每一个笔具有一个当前的笔尖824。这是笔最后一次通知给这个***的笔尖。在上面所描述的缺省网页笔的情形下,或者是标记黑墨水笔或者非标记输入笔是当前的笔尖。每一个笔也具有一个当前的笔尖风格825。这是一个应用最后将其与笔相关的一个笔尖风格,例如,对用户从一个调色板中选择一个颜色作出的响应。这个缺省笔尖风格是与当前笔尖相关的笔尖风格。通过一个笔而被捕获的笔画被标记上了当前的笔尖风格。当笔画随后被进行再生时,它们被用标记到其上的笔尖风格来进行再生。
无论何时笔在与其进行通信的一个打印机的范围内时,这个笔缓慢地闪烁其“联机”LED。当这个笔不能够相对这个页面对一个笔画进行解码时,它立即激活其“错误”LED。当这个笔成功地相对这个页面解码一个笔画时,它立即激活其“OK”LED。
一系列被捕获的笔画被称作数字墨水。数字墨水形成了绘画和手写的数字交换的基础,形成了对手写进行联机识别的基础,并且形成了对签名进行联机证实的基础。
这个笔使用无线通信方式,并且通过一个短距离无线链路将数字墨水发送到这个网页打印机。被发送的数字墨水被进行加密以确保私有性和安全,并且被进行打包以进行有效的传输,但是总是在一个笔抬起的事件发生后就被清空到打印机,以确保在打印机中能够进行及时处理。
当这个笔出了一个打印机的范围时,它将数字墨水缓存在内部存储器中,内部存储器的容量能够保存10分钟连续的手写。当这个笔又处于一个打印机的范围内时,它发送任何缓存的数字墨水。
一个笔可以注册到任何数目的打印机,但是因为所有的状态数据驻留在纸张的网页中和在网络的网页中,所以在任何特定时刻一个笔与哪一个打印机进行通信就不是特别重要。
下面在部分6中,参考图8到10来详细描述这个笔的一个优选实施方式。
1.7 网页交互
网页打印机601接收关于笔101的一个笔画的数据,当这个笔被用于与一个网页1进行交互时。标记4的被编码数据3被这个笔所读取,当笔被用于执行一个运动,例如一个笔画时。这个数据允许特定页面的识别标记和相关的交互式部件被确定出来,并且允许获得这个笔相对该页面的相对位置的表示。这个表示数据被发送到打印机,在这个打印机中,它通过DNS将笔画的页面ID 50解析为维持了相应的页面实例830的网页页面服务器10的网络地址。然后,它将这个笔画发送到页面服务器。如果最近在前面的笔画中识别出了这个页面,然后,这个打印机已经在其缓冲器中有相关页面服务器的地址。每一个网页包括被一个网页页面服务器(见下面)所永久维持的一个紧凑页面布局。这个页面布局涉及对象,例如图象,字体文本和片段,典型地被保存在网页网络中的其它地方。
当这个页面服务器从这个笔接收到笔画时,它检索这个笔画应用到其上的一个页面描述,并且确定这个笔画与页面描述的哪一个部件相交。然后,它能够根据相关部件的上下文类型来理解该笔画。
一个“点击”是一个其中在笔放下的位置和随后笔抬起的位置之间的距离与时间均比某个小的最大值小的笔画。被一个点击所激活的一个对象典型地需要激活一个点击,所以,就忽略了一个长的点击。一个笔动作,例如一个“草率”的点击不能够进行注册可以通过缺乏笔的“OK”LED的响应而表示出来。
在一个网页页面描述中有两类输入部件:超级链接和表格字段。通过一个表格字段而进行的输入也可以触发对一个相关超级链接的激活。
1.7.1 超级链接
一个超级链接是向一个远程应用发送消息的工具,典型地在网页***中引出一个打印响应。
一个超级链接部件844标识出处理超级链接的激活的应用71,标识到这个应用的超级链接的一个链路ID 54,要求该***在超级链接激活中包括用户的应用别名ID 65的一个“所需要别名”标记,和当超级链接被作为一个优选项而记录或者出现在用户的历史记录中时被使用的一个描述。这个超级链接部件类被显示在图29中。
当一个超级链接被激活时,这个页面服务器发送一个请求到这个网络中某个地方上的一个应用。这个应用用一个应用ID 64来进行标识,并且这个应用ID被通过DNS,使用一个正常的方法来进行解析。有3类超级链接:一般的超级链接863,表格超级链接865,和选择超级链接864,如图30中所显示的。一个一般超级链接可以实现关于一个被链接文档的请求,或者可以简单地向一个服务器发送一个优选项。一个表格超级链接将相应的表格提交给这个应用。一个选择超级链接将当前的选择提交给这个应用。如果当前的选择包括一单个词的文本,例如,这个应用可能会返回一单个页面的文档,以给出这个词所出现的上下文中这个词所表示的意思,或者将它翻译成为一个不同的语言。每一个超级链接类型的特征在于它所提交给这个应用的信息。
相应的超级链接实例862记录了一个交易ID 55,这个交易ID 55专用于这个超级链接实例所在的页面实例。这个交易ID可以标识出对这个应用的、与用户相关的数据,例如由一个购物应用为这个用户的所维持的存放待处理购买的“购物车”。
这个***在一个选择超级链接激活中包括笔的当前选择826。这个***在一个表格超级链接激活中包括相关表格实例868的内容,虽然如果这个超级链接具有其“增量提交”属性集合,仅最后一次表格提交之后的输入被包括。这个***在所有的超级链接激活中包括一个有效的返回路径。
一个超级链接组866是具有一相关超级链接的一组部件838,如图31所显示的。当通过这个组中的任何字段部件进行输入时,与这个组相关的超级链接844被激活。一个超级链接组可以被用于将超级链接行为与一个字段,例如一个选择框进行相关。它也可以与一个表格超级链接的“增量提交”属性一起,用于向一个应用提供连续的输入。所以,它也可以被用于支持一个“黑板式”交互式模型,即,输入被捕获的地方并且所以只要它一发生就可以被共享。
1.7.2 表格
一个表格定义了用于通过一个打印网页来捕获一个相关输入集合的相关输入字段集合。一个表格允许一个用户向在一个服务器上运行的一个应用软件程序提交一个或者多个参数。
一个表格867是在文档层次结构中的一组部件838。它最终包括一组终端字段部件839。一个表格实例868表示了一个表格的一个打印实例。它包括与这个表格的字段部件845相应的一组字段实例870。每一个字段实例具有一个相关值871,该相关值的类型取决于相应字段部件的类型。每一个字段值记录了通过一特定打印表格实例的输入,即,通过一个或者多个打印网页的输入。这个表格类图被显示在图32中。
每一个表格实例具有一个状态872,该状态872表示这个表格是否是激活的,冻结的,被提交,无效的,或者过期的。当首先被打印时,这个表格是被激活的。一旦这个表格已经被进行了签名,这个表格就被冻结了。一旦一个表格的一个提交超级链接已经被激活,这个表格就变为被提交的,除非这个超级链接的“增量提交”属性被激活。当这个用户调用了一个无效表格,复位表格或者复制表格页面命令时,这个表格就变为无效的了。当这个表格被激活的时间已经超过了这个表格的规定寿命时间,这个表格就变为过期的了。当这个表格处于激活状态时,允许对这个表格进行输入。通过非激活的一个表格而进行的输入将在相关页面实例的背景字段833中被捕获。当这个表格处于激活或者冻结状态时,允许提交表格。当这个表格不处于激活或者冻结状态时,任何提交表格的尝试将被拒绝,而相反发起一个表格状态表格。
每一个表格实例与从其推断出的任何表格实例相关(在59),这样,提供了一个版本历史。这允许除了最新的一个表格版本外的所有表格版本在一特定时间内可以被从搜寻中排除出来。
所有输入是作为数字墨水而被捕获的。数字墨水873包括一组有时间标记的笔画组872,每一个笔画组包括一组所做的笔画875。每一个笔画包括一组带时间标记的笔位置876,每一个笔位置876也包括笔方向和笔尖的力。这个数字墨水类图被显示在图33中。
一个字段部件845可以是一个选择框字段877,一个文本字段878,一个绘画字段879,或者一个签名字段880。这个字段部件类图被显示在图34中。在一个字段区域58中被捕获的任何数字墨水被分配到这个字段。
一个选择框字段具有一个相关的布尔值881,如图35中所显示的。在一个选择框字段区域中被捕获的任何标记(一个勾号,一个叉,一个斜杠,一个之字形,等等)可以促使一个真值被分配到这个字段的值。
一个文本字段具有一个相关的文本值882,如图36中所显示的。在一个文本字段区域中被捕获的任何数字墨水被通过联机手写识别自动转换为文本,并且这个文本被分配到这个字段的值。联机手写识别已经被广泛理解了(见,例如,Tappert,C.,C.Y.,Suen和T.Wakahara写的“Thestate of the Art in On-line Handwriting Recognition”.IEEE Transactionson Pattern Analysis and Machine Intelligence,Vol.12,No.8,1990年8月,其内容在这里被用作交叉参考)。
一个签名字段具有一个相关的数字签名值883,如图37中所显示的。在一个签名字段的区域中被捕获的任何数字墨水被根据笔的拥有者的身份而进行证实,并且包括该字段的表格的内容的一个数字签名被产生并且被分配到这个字段的值。使用这个笔用户专用于拥有这个表格的应用的私有签名密钥来产生这个数字签名。联机签名证实是被广泛地理解的(见,例如,Plamondon,R.和G.Lorette写的“Automatic SignatureVerification and Writer Identification-The State of the Art”,PatternRecognition,Vol.22,No.2,1989,其内容在这里被用作交叉参考)。
一个字段部件被隐藏,如果其“隐藏”属性被设置。一个被隐藏的字段部件在页面上不具有一个输入区域,并且不接收输入。它可以具有一个相关字段值,并且当包括这个字段的表格被提交时,这个值可以被包括在表格数据中。
“编辑”命令,例如表示删除的删除线,也可以在表格字段中被识别出来。
因为手写识别算法是联机工作的(即,使用了笔移动的动态特性),而不是“离线”的(即,仅使用笔标记的位图),所以它可以使用相对较高的准确度识别出连续写的、分开写的字符,而不需要与书写者相关的一个训练阶段。但是在经过一段时间后,自动产生与一个书写者相关的手写模型,并且如果必要的话,可以预先产生它。
如已经描述的数字墨水,包括一系列笔画。任何在一特定部件的区域开始的笔画被附加到这个部件的数字墨水流,并且以用于理解。任何没有被附加到一个对象的数字墨水流的笔画可以被附加到这个背景字段的数字墨水流。
在背景字段中被捕获的数字墨水可以被理解为一个选择动作。用范围线将一个或者多个对象界定在一起通常被理解为选择了这些被用线界定的对象,虽然实际的理解是与应用相关的。
表2概述了与一个网页进行的各种笔交互。
表2 与一个网页进行交互的笔的概述
对象 |
类型 |
笔输入 |
动作 |
超级链接 |
一般 |
点击 |
将动作提交给应用 |
表格 |
点击 |
将表格提交给应用 |
选择 |
点击 |
将选择提交给应用 |
表格字段 |
选择框 |
任何标记 |
分配真值给字段 |
文本 |
手写 |
将数字墨水转换为文本;分配文本到字段 |
图画 |
数字墨水 |
分配数字墨水到字段 |
签名 |
签名 |
证实数字墨水签名;产生表格的数字签名;分配数字签名到字段 |
无 |
- |
界限 |
分配数字墨水到当前的选择 |
这个***维持每一个笔的一个当前选择。这个选择简单地包括在背景字段中最近被捕获的笔画。在一个非激活时间后,这个选择被清除,以确保可预测的行为。
在每一个字段中被捕获的原始数字墨水被保留在这个网页服务器上,并且当这个表格被提交给应用时被与表格数据一起可选地进行传送。这允许这个应用能够询问原始数字墨水,当它对这个初始的转换有怀疑时,例如手写文本的转换。例如,这可以包括在应用层上对没有通过特定的、与应用相关的一致性检查的表格进行人为干预。作为这个的一个扩展是,一个表格的整个背景区域可以被指定为一个绘画字段。然后,这个应用可以根据在表格的明确字段外出现的数字墨水来决定将这个表格路由到一个人工操作员,假设这个用户可能已经在这些字段外指出了对已经填充的字段的修改。
图38显示了处理相对一个网页的笔输入的过程的一个流图。这个过程包括从这个笔接收(在884)一个笔画;标识(在885)笔画中的这个页面ID 50所涉及的页面实例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 页面服务器命令
一个页面服务器命令是被这个页面服务器进行本地处理的一个命令。它直接对表格,页面,和文档实例进行操作。
一个页面服务器命令907可以是一个无效的表格命令908,一个复制的表格命令909,一个复位表格命令910,一个获得表格状态的命令911,一个复制页面命令912,一个复位页面命令913,一个获取页面状态的命令914,一个复制文档命令915,一个复位文档命令916,或者一个获得文档状态的命令917,如图39中所显示的。
一个无效的表格命令使相应的表格实例无效。一个复制表格命令使相应的表格实例无效,并且然后使用保存的字段值来产生当前表格实例的一个激活打印拷贝。这个拷贝包括与原始表格相同的超级链接交易ID,并且对一个应用来说,是不能够与原始表格有区别的。一个复位表格命令使相应的表格实例无效,并且产生这个表格实例的一个激活的打印拷贝,而放弃字段值。一个获得表格状态命令产生关于这个相应表格实例的状态的一个打印报告,包括谁出版了它,何时被打印的,是为谁打印的,和这个表格实例的表格状态。
因为一个表格超级链接实例包括一个交易ID,这个应用就不得不产生一个新的表格实例。所以,请求一个新的表格实例的一个按钮典型地是作为一个超级链接而被实现的。
一个复制页面命令使用保存的背景字段值来产生相应页面实例的一个打印拷贝。如果这个页面包括一个表格或者一个表格的一部分,然后,这个复制页面命令就被理解为一个复制表格命令。一个复位页面命令产生相应页面实例的一个打印拷贝,而其背景字段值被丢弃。如果这个页面包括一个表格或者一个表格的一部分,然后,这个复位页面命令就被理解为一个复位表格命令。一个获得页面状态的命令产生关于这个相应页面实例的状态的一个打印报告,包括谁出版了它,何时被打印的,是为谁打印的,和它包括的任何表格或者其部分表格的状态。
出现在每一个网页上的这个网页图标通常与一个复制页面部件相关。
当一个页面实例被复制并且字段值被保存时,字段值被以它们原本的形式被打印,即,一个选择记号作为一个标准的选择记号图形而出现,并且文本作为排版文本出现。仅图和签名是以其原始形式而出现的,并且一个签名伴随有一个标准的、表示成功地通过了签名证实的图形。
一个复制文档命令使用被保存的背景字段值产生了相应的文档实例的一个打印拷贝。如果这个文档包括任何表格,然后,这个复制文档命令就使用与一个复制表格命令相同的方法来复制表格。一个复位文档命令产生相应文档实例的一个打印拷贝,而其背景字段值被丢弃。如果这个文档包括任何表格,然后,这个复位文档命令就使用与一个复位表格命令相同的方法来复位表格。一个获得文档状态的命令产生关于这个相应文档实例的状态的一个打印报告,包括谁出版了它,何时被打印的,是为谁打印的,和它包括的任何表格的状态。
如果这个页面服务器命令的“在被选中后”属性被设置了,然后,这个命令对被笔的当前选择所标识的页面进行操作,而不是对包括这个命令的页面进行操作。这允许一个页面服务器命令的菜单能够被打印。如果这个目标页面不包括关于这个指定页面服务器命令的一个页面服务器命令部件,然后,这个命令被忽略。
通过将相关的页面服务器命令部件嵌入在一个超级链接组中,一个应用可以提供与应用相关的处理。这个页面服务器将激活与这个超级链接组相关的超级链接而不是执行这个页面服务器命令。
一个页面服务器命令部件被隐藏,如果其“隐藏”属性被设置了。一个被隐藏的命令部件在这个页面上没有一个输入区域,所以不能够直接被一个用户所激活。但是,它可以通过嵌入在一个不同页面中的一个页面服务器命令而被激活,如果这个页面服务器命令的“在被选中后”属性被设置了。
1.8 网页的标准特征
在这个优选的方式中,每一个网页的底部均打印了这个网页图标,以表示它是一个网页并且所以具有交互式通信的特性。这个图标也用作一个拷贝按钮。在大多数情形下,按下这个图标就产生了这个页面的一个拷贝。在一个表格的情形下,这个按钮产生整个表格的一个拷贝。并且在一个安全文档的情形下,例如一个票或者赠券,这个按钮引出一个说明条或者广告页面。
这个缺省单页面拷贝能够直接被相关的网页页面服务器进行处理。特殊的拷贝功能通过将这个图标按钮链接到一个应用而进行处理。
1.9 用户帮助***
在一个优选实施方式中,这个网页打印机具有一单个被标记为“帮助”的按钮。当按下这个按钮时,它引出一单个页面的信息,包括:
打印机连接状态
打印机消耗品的状态
最高层帮助菜单
文档功能菜单
最高层网页网络目录
这个帮助菜单提供了关于如何使用这个网页***的分层次指导手册。
这个文档功能菜单包括了下面的功能:
打印一个文档的拷贝
打印一个表格的一个原始拷贝
打印一个文档的状态
简单地通过按下这个按钮,然后触摸这个文档任何页面,就激发了一个文档功能。一个文档的状态表示谁出版了它和出版时间,它被发送给谁了,它随后作为一个表格被提交给谁和提交时间。
这个网页网络目录允许这个用户能够浏览这个网络的出版和业务层次结构。作为一个替代的方式,这个用户可以拨打这个网页网络“900”号码“黄页”并且对一个人工操作员讲话。这个操作员可以定位所需要的文档,并且将它路由到这个用户的打印机。取决于文档的类型,出版者或者这个用户付少量的“黄页”服务费。
如果这个打印机不能够进行打印,很显然就不能够获得这个帮助页面。在这个情形下,“错误”灯就被点亮并且这个用户可以通过网络请求远程诊断。
2 个性化的出版模型
在下面的描述中,新闻作为一个标准的出版示例被用于显示这个网页***中的个性化机制。虽然新闻经常被用于狭义上的新闻报纸和新闻杂志新闻,但是本发明上下文中所指的范围更宽。
在这个网页***中,使用了不同的机制来对一个新闻出版中的编辑内容和广告内容进行了个性化处理。这个编辑内容是根据读者的明确说明以及暗地捕获的兴趣资料而进行了个性化处理。广告内容是根据读者的地点和人口统计而进行了个性化处理。
2.1 编辑个性化处理
一个用户可以使用两类新闻资源:那些发送新闻出版物的新闻资源,和那些发送新闻流的资源。虽然新闻出版是被出版者所组合并且进行编辑的,但是新闻流或者可以被一个新闻出版者所编辑,或者可以被一个专业新闻收集者所编辑。典型地,新闻出版与传统的新闻报纸和新闻杂志相应,而新闻流可以是很多并且可以被改变:来自一个新闻服务的一个“原始”新闻,一个卡通带(cartoon strip),一个自由作家的栏目,一个朋友的布告板,或者读者自己的电子邮件。
这个网页出版服务器支持被编辑的新闻出版物的出版和多个新闻流的聚合。通过对直接被读者所选择的新闻流进行聚合处理和由此进行格式化处理,这个服务器能够将广告放置在那些否则没有编辑控制的页面上。
这个用户通过选择一个或者多个提供新闻的出版物,并且为每一个产生一个个性化的版本,就可以建立一个新闻日报。所产生的日报版本被打印并且一起被绑定到一单个新闻报纸中。一个家庭的各个成员典型地通过选择不同的日报出版物并且然后对它们进行定制,来表达他们不同的兴趣和口味。
对每一个出版物,这个读者可选地选择特定的部分。某些部分是每天出现的,而其它是每周出现的,来自纽约时代在线的每天出现的部分,例如,包括“头版头条(page-one-plus)”,“国家”,“国际的”,“观点”,“商业”,“艺术与生活”,“技术”,和“运动”。可获得的部分的集合是对一个出版物特定的,这是缺省的子集。
这个读者可以通过产生定制部分来扩展新闻日报,每一个定制部分使用任何数目的新闻流。定制部分可以是对电子邮件和朋友的通告(“个性化”)而产生的,或者被产生用于监视关于特定题目的新闻源(“提醒”或者“剪辑”)。
对每一个部分来说,这个读者可选地规定其大小,或者定性的(例如,短的,中等的,或者长的),或者用数字表示的(即,作为对页面数目的一个限制),和所希望的广告部分,或者是定性的(例如,高,普通,低,无),或者用数字表示的(即,作为一个百分比)。
这个读者也可以可选地表达希望有更多数目的短文或者更少数目的长篇文章的爱好。理想地,每一篇文章被用短形式的和长形式两个方式来写(或者编辑)以支持这个爱好选项。
一篇文章也可以以不同的版本来写(或者编辑),以满足这个读者所期望的复杂性,例如,可以提供小孩版本和成人版本。合适的版本是根据读者的年龄来选择的。这个读者也能够规定一个“阅读年龄”,这个阅读年龄比他们的生理年龄有更高的优先级。
组成每一个部分的文章被编辑进行选择和进行优先级排列,并且每一个被分配了一个有用的寿命时间。缺省地,它们被发送到所有相关的用户,并且是按优先级顺序发送的,并服从用户版本中的空间限制。
在合适的部分中,这个读者可以可选地进行合作滤波。然后,这被应用到具有足够长寿命时间的文章。每一篇满足合作滤波规则的文章被打印,并且在这篇文章末尾有多个评价按钮,这些按钮提供了一个容易的选择(例如,“喜欢”和“不喜欢”),这使读者更可能操心去评价这篇文章。
因此具有高优先级和短使用时间的文章被编辑认为是最需要被阅读的重要文章,并且被发送到大多数相关用户。
这个读者可选地规定了一个主题的偶然组配因子,或者是定性的(例如,给我,或者不给我一个惊奇),或者用数字表示。一个高主题的偶然组配因子降低了在合作滤波期间进行匹配所使用的阈值。一个高因子使相应的部分将被填充到读者规定的容量中的机会更多。一个不同的主题的偶然组配因子可以对周内的每天是不同的。
这个读者也可以可选地规定一个部分中特别感兴趣的题目,并且这修改了编辑所分配的优先级。
读者的互联网连接速度影响了图象被发送的质量。这个读者可以可选地规定一个优选项,来请求较少的图象或者较小的图象,或者同时请求这两个选项。如果图象的数目或者大小没有被减少,然后,就以较低的质量来发送图象(即,以较低的分辨率或者使用更高的压缩比例)。
从全球的角度来说,这个读者可以规定数量,日期,时间,和货币值如何被进行本地化。这涉及规定单位是采样英制还是采样公制,一个本地时区和时间格式,和一个本地的汇率,和本地化是否在原地包括翻译或者注释。这些优选项缺省是从读者的地点来推断出来的。
为了减少因视力较差而导致的阅读困难,这个读者可选地可以规定一个全局选项,以请求使用更大的外观。文本和图象均被进行相应地放大,并且在每一页上包括较少的信息。
一个新闻出版物出版时所使用的语言,和其它相应的文本编码是这个出版物的一个特性,并且不是这个用户所表示的一个选项。但是,这个网页***能够被配置成以各种外表来提供自动的翻译服务。
2.2 广告的本地化和目标对象
编辑内容的个性化直接影响了广告的内容,因为广告典型地是被放置来利用编辑内容的上下文的。例如,旅游广告更可能出现在一个旅游栏目中,而不是出现在其它的地方。编辑内容对一个登广告人(和所以是对出版者)来说的价值在于它吸引具有合适人口统计的大量读者的能力。
有效的广告是基于地点和人口统计学的。地点决定了特殊服务,零售商等等的近似性,和与本地社区和环境相关的特殊兴趣与注意力。人口统计学特点决定了一般的兴趣和偏见及可能的消费模式。
一个新闻出版者最能够带来利润的产品是广告“空间”,由出版物的地理覆盖范围,其读者人数的大小,其读者人数的人口统计特性所决定的一个多维实体,和用于广告的页面区域。
在这个网页***中,这个网页出版服务器在对出版物的地理覆盖范围,这个部分的读者人数,每一个读者部分编辑的大小,每一个读者的广告比例,和每一个读者的人口统计特性进行考虑的基础上,对每一个部分计算一个出版物可销售广告空间的多维尺寸。
与其它媒体相比,这个网页***允许以更大的细节来定义广告空间,并且允许分别以更小的部分来进行销售。所以,它允许以更接近真正价值的价格来销售它。
例如,相同的广告“条”能够以不同的比例销售给几个登广告的人,而每一个读者的页面随机地接收一个登广告人或者另一个的广告,整体上来说,保持了销售给每一个登广告人的空间比例。
这个网页***允许所广告的信息被直接链接到详细的产品信息和在线购买。所以,它增加了广告空间的固有价值。
因为能个性化和本地化处理是被网页出版服务器自动处理的,所以一个广告聚合可以提供任意宽的地理和人口覆盖范围。随后的去聚合是有效的,因为其过程是自动的。这使出版者在处理广告聚合体时,比直接捕获广告的性价比更高。即使这个广告聚合占了广告收入的一部分,但是出版者也可能改变的利润中间点,因为聚合有更大的效率。这个广告聚合也用作登广告人和出版者之间的一个中间角色,并且可以在多个出版物中放相同的广告。
值得注意的是,在一个网页出版物中放一个广告可能比在出版物的传统相应部分中放广告更复杂。虽然忽略了在登广告人,广告聚合和出版者之间进行协商的全部复杂性,但是这个网页***的优选实施方式提供了对这些协商的某种自动支持,包括支持广告空间的拍卖。对产生少量收入的广告的放置来说使用自动方式是特别可取的,例如小的或者地理性很强的广告。
一旦已经协商好了广告放置,这个聚合就捕获和编辑广告并且将其记录在一个网页广告服务器上。相应地,这个出版者将这个广告放置记录在相关的网页出版服务器上。当这个网页出版服务器对每一个用户个性化的出版进行布局设计时,它从这个网页广告服务器中拾取相关的广告。
2.3 用户资料
2.3.1 信息过滤
新闻和其它出版物的个性化处理依赖于与用户相关的用户资料信息的分类,包括:
出版客户定制
合作滤波矢量
详细的联系方式
展示优选项
一个出版物的客户定制典型地是与出版物相关的,所以,客户定制信息是由相关的网页出版服务器所保持的。
一个合作滤波矢量包括这个用户对一些新闻项目的评价。它被用于对不同用户的兴趣进行相关,以提供建议。虽然保持一单个合作滤波矢量而与任何特定的出版物无关是有利的,但是,有两个原因导致对每一个出版物保持一个独立的矢量是更实际的:在用户对相同出版物的矢量之间的重叠部分比这些用户对不同出版物的矢量之间的重叠部分更多;和一个出版物更愿意将其用户的合作滤波矢量作为其商标价值的一部分,而不是在其它地方。所以,合作滤波矢量也被相关的网页出版服务器所保持。
详细的联系方式,包括名字,街道地址,邮政编码,省,国家,电话号码在本质上是全球通用的,并且被一个网页注册服务器所保存。
展示优选项,包括关于数量,日期和时间的优选项类似地也是全球性的,并且也被使用相同的方法进行保存。
广告的本地化处理依赖于在用户的详细的联系方式中所指出的地点,虽然广告的目标地点依赖于个人信息,例如出生日期,性别,婚姻状态,收入,职业,教育程度,或者推断出来的数据,例如年龄范围和收入范围。
对那些为广告目的选择公开个人信息的用户来说,这个信息被保存在相关的网页注册服务器中。在缺乏这样的信息时,广告是根据与用户的邮政编码或者ZIP+4编码相关的人口统计特性来进行定位的。
每一个用户,笔,打印机,应用提供者和应用被分配了其自己的唯一标识符,并且这个网页注册服务器保存了在它们之间的关系,如图21,22,23,和24中所显示的。对注册来说,一个出版者是一个特殊类型的提供者,并且一个出版物是一个特殊类型的应用。
每一个用户800可以被授权使用任何数目的打印机,并且每一个打印机可以允许任何数目的用户来使用它。每一个用户具有一单个缺省的打印机(在66),缺省地期刊杂志被发送到这个缺省打印机,而根据需要而进行打印的页面被发送到用户与其进行交互式通信的打印机。这个服务器跟踪一个用户授权哪一个出版者打印到这个用户的缺省打印机。一个出版者不能够记录任何特定打印机的ID,而是当它需要时才解析这个ID。
当一个用户订阅808一个出版物807时,这个出版者806(即,应用提供者803)被授权打印到一个规定的打印机或者这个用户的缺省打印机。在任何时刻,这个用户可以取消这个授权。每一个用户可能具有几个笔801,但是一个笔是专用于一单个用户的。如果一个用户被授权使用一个特定的打印机,然后,这个打印机就识别出这个用户的任何一个笔。
笔ID被用于定位被一特定网页注册服务器所保存的相应用户情况资料,这是通过DNS使用一个通常的方法来进行的。
一个万维网Web终端809可以被授权在一个特定的网页打印机上进行打印,这允许在万维网浏览期间所遇到的万维网页面和网页文档可以被方便地打印在最近的网页打印机上。
这个网页***可以代表一个打印机提供者在这个提供者的打印机上打印出版物所获得的收入进行费用和佣金的收取。这样的收入包括广告费用,点击费用,电子商务佣金,和交易费用。如果这个打印机是被用户所拥有的,然后,这个用户就是打印机提供者。
每一个用户也具有一个网页帐号820,这个网页帐号被用于累加微小的负债和信用(例如,在前面的段落中所描述的那些);详细的联细方式815,包括名字,地址和电话号码;全局优选项816,包括私有性,发送和本地化设置;任何数目的生物统计记录817,包括这个用户的编码签名818,指纹819,等等;被这个***自动保存的一个手写模型819;和电子商务使用其进行付费的SET付费卡帐号821。
2.3.2 收藏列表
一个网页用户可以保存一个收藏列表922-链接到这个网页网络上的有用文档等等。这个列表是被这个***代表用户而进行保存的。其结构是一个目的层次结构924,其一个优选实施方式被显示在图41的类图中。
2.3.3 历史列表
这个***代表每一个用户保存了一个历史列表929,包括到这个用户通过这个网页***所访问的文档等等的链接。其组装顺序是按时间排列的,其一个优选实施方式被显示在图42中的类图中。
2.4 智能页面布局设计
这个网页出版服务器对每一个部分均自动进行针对每一个用户的个性化出版页面布局设计。因为大多数广告是格式预定的矩形,所以在放编辑内容以前,将它们放在页面上。
在这个部分的每一个页面上的广告比例可以有很大的变化范围,广告布局设计算法利用了这个比例变化特性。这个算法被配置成将紧密联系的编辑内容和广告内容放在一起,例如将关于屋顶材料的广告特别地放在出版物中,因为具有自己动手修复屋顶的特殊特征。
为这个用户所选择的编辑内容,包括文本的和相关的图象与图形,然后被根据各种审美规则而进行布局设计。
一旦整个布局已经汇聚,整个过程,包括广告的选择和编辑内容的选择,必须被迭代以更好地实现用户所申明的栏目尺寸优选项。但是,这个栏目尺寸优选项可以是长时间内,平均来说有比较好的匹配,这允许可以在每一天进行大的变化与调整。
2.5 文档格式
一旦这个文档已经被进行了布局设计,它就被为进行有效的传送分发而编码并且被有效地永久保存在这个网页网络中。
这个基本有效的机制是将针对一单个用户版本的信息和被多个用户版本所共享的信息分开。这个专门的信息包括页面布局设计。共享的信息包括这个页面布局所涉及的对象,包括图象,图形,和文本片段。
一个文本对象包括完全格式化的、使用可扩展纸张类型语言(ExtensibleStylesheet Language)(XSL)以可扩展的标记语言(XML)来表示的文本。XSL提供了对文本格式的精确控制,而与这个文本所放置的区域无关,在这个情形下,文本放置区域是被布局设计所提供的。文本对象包括允许自动翻译的嵌入式语言代码,和帮助段落格式化的嵌入式的、用连字符连接的暗示。
一个图象对象使用JPEG 2000基于小波的压缩图象格式来对一个图象进行编码。一个图形对象使用可缩放矢量图形(SVG)格式来对一个2D图形进行编码。
这个布局自己包括一系列被放置的图象和图形对象,文本对象通过其流动的被链接文本流对象,如上面所描述的超级链接和输入字段,和水印区域。这些布局对象被汇总在表3中。这个布局使用了适合有效分发和保存的一个紧凑格式。
表3 网页布局对象
布局对象 |
属性 |
被链接对象的格式 |
图象 |
位置 |
- |
图象对象ID |
JPEG 2000 |
图形 |
位置 |
- |
图形对象ID |
SVG |
文本流 |
文本流ID |
- |
区域 |
- |
可选的文本对象ID |
- |
超级链接 |
类型 |
- |
区域 |
- |
应用ID,等等 |
- |
字段 |
类型 |
- |
意义 |
- |
区域 |
- |
水印 |
区域 |
- |
2.6 文档分发
如上面所描述的,为了在这个网页网络上进行有效的分发和永久保存,一个与用户相关的页面布局被与它所涉及的共享对象分开。
当一个被订阅的出版物已经准备好进行分发时,这个网页出版服务器在网页ID服务器12的帮助下为每一个页面,页面实例,文档,和文档实例分配一个唯一的ID。
这个服务器计算一组优化的共享内容子集,并且为每一个子集产生一个多播信道,然后将将承载这个布局所使用的共享内容的多播信道的名字标记到每一个与用户相关的布局上。然后,这个服务器通过合适的页面服务器将每一个用户的布局单播到这个用户的打印机,并且当这个单播完成时,在这个规定的信道上多播这个共享的内容。在接收到其单播后,每一个页面服务器和打印机订阅这个页面布局中所规定的多播信道。在多播期间,每一个页面服务器和打印机从多播流中提取其页面布局所涉及的那些对象。这个页面服务器对所接收的页面布局和共享内容进行永久归档保存。
一旦一个打印机已经接收到其页面布局所涉及的所有对象,这个打印机重新产生完全排版的布局,并且然后进行光栅化处理并且打印它。
在通常的情形下,这个打印机打印页面的速度比页面分发的速度快。假设每一个页面的四分之一是图象,平均页面的大小比400KB约小一点。所以,这个打印机能够在其64MB存储器中保存超过100张这样的页面的内容,这允许能够进行临时缓存等等。这个打印机以每秒一张的速度进行打印。这相当于每秒400KB或者大约3M比特的页面数据,这可与通过一个宽度网络而实现的最高期望页面数据分发速度相比。甚至在异常的情形下,例如当这个打印机的打印纸用完时,很可能的是,在这个打印机的100页内部保存容量被使用完以前,用户就已经在打印机中增加了新的打印纸。
但是,如果这个打印机的内部存储器被填满了,然后这个打印机就不能够在多播第一次发生时就使用多播。所以,这个网页出版服务器允许打印机提交关于再次多播的请求。当接收到一个临界数目的请求或者发生超时时,这个服务器重新多播相应的共享对象。
一旦已经打印了一个文档,一个打印机可以在任何时刻通过从相关的页面服务器中检索其页面布局和内容产生一个精确的复制品。
2.7 文档点播
当根据需要请求一个网页文档时,其个性化处理和分发的方式与期刊杂志的情形非常相同。但是,因为没有共享的内容,分发是直接给请求的打印机的,而不需要使用多播。
当根据需要请求一个非网页文档时,它不被进行个性化处理,并且它被通过一个指定网页格式化服务器进行分发,这个指定网页格式化服务器重新将其格式化为一个网页文档。一个网页格式化服务器是一个网页出版服务器的一个特殊实例。这个网页格式化服务器了解各种互联网文档格式,包括Adobe的便携式文档格式(PDF),和超文本标记语言(HTML)。在HTML的情形下,它可以使用打印页面的高分辨率来以一个多栏的格式展示万维网页面,并且具有一个内容表。它可以自动地包括所有直接被链接到这个被请求页面的万维网页面。这个用户可以通过一个优选项来调节这个行为。
这个网页格式化服务器进行可以在任何互联网文档上获得的标准的网页行为,包括交互性和连续性,不管其起源和格式是什么。它向网页打印机和网页页面服务器隐藏了不同文档格式的细节,并且向万维网服务器隐藏了网页***的细节。
3 安全性
3.1 加密方法
加密方法被用于保护在保存中和在传送中的敏感信息,并且被用于对一个交易的参与者进行认证。有两类广泛使用的加密方法:密钥加密方法和公钥加密方法。这个网页网络使用了这两类加密方法。
密钥加密方法,也被称作对称加密方法,使用了相同的密钥来对一个消息进行加密和解密。希望交换消息的双方必须首先安全地交换这个密钥。
公钥加密方法,也被称作非对称加密方法,使用了两个加密密钥。这两个密钥在数学上是这样相关的,使用一个密钥被加密的任何消息仅能够被使用另一个密钥进行解密。这些密钥中的一个然后被公开,而另一个密钥被私下保存。这个公钥被用于加密任何希望发送到这个私钥持有者的消息。一旦使用了这个公钥进行加密,一个消息仅能够使用这个私钥被进行解密。这样,双方可以安全地交换消息而不需要首先交换密钥。为了确保私钥是安全的,通常是私钥持有者产生这个密钥对。
公钥加密可以被用于产生一个数字签名。私钥持有者可以产生一个消息的已知杂凑,并且然后使用这个私钥对杂凑进行加密。然后,任何人可以通过使用这个公钥对被加密的杂凑进行解密并且使用这个消息来证实这个杂凑,而证实被加密的杂凑构成了私钥所有者关于这个特定消息的签名。如果这个签名被附加到这个消息上,然后,这个消息的接收者可以证实这个消息是真实的并且在传送过程中没有被修改。
为了使公钥加密方法能够很好地工作,必须有一个方法来分发公钥,并且这个方法能够避免假冒。这通常是使用证书和证书管理机构来完成的。一个证书管理机构是一个可被信任的第三方,它对在一个公钥和某个人的身份之间的连接进行认证。这个证书管理机构通过检查身份文档来证书这个人的身份,并且然后产生并且签署一个数字证书,这个数字证书包括这个人的身份细节和公钥。任何相信这个证书管理机构的个人可以使用这个证书中的公钥,并且完全可以确信这个公钥是真实的。他们仅仅需要证实这个证书确实是被这个证书管理机构所签署的,证书管理机构的公钥是众所周知的。
在大多数交易环境下,公钥加密方法仅被用于产生数字签名,并且用于安全地交换私下会话密钥。私钥加密方法被用于所有其它的目的。
在下面的讨论中,当提到在一个网页打印机和一个服务器之间进行安全的信息传送时,实际上所发生的是这个打印机获得这个服务器的证书,使用这个证书的管理机构来证实这个证书,使用这个证书中的公钥交换密钥来与这个服务器交换一个私下会话密钥,并且然后使用这个私下会话密钥对这个消息数据进行加密。从定义来说,一个会话密钥可以有一个任意短的有效使用时间。
3.2 网页打印机安全性
每一个网页打印机在制造时就被分配了一对唯一的标识符,这对唯一的标识符被保存在这个打印机的只读存储器中,并且被保存在这个网页注册服务器的数据库中。第一个ID 62是公开的,并且唯一地标识了这个网页网络上的这个打印机。第二个ID是保密的,并且当这个打印机首先注册到网络上就被使用。
当这个打印机在安装后第一次连接到这个网页网络时,它产生一个签名公开/私有密钥对。它将这个私有ID和公钥安全地传送给这个网页注册服务器。这个服务器将这个私有ID与被记录在其数据库中的打印机的保密ID进行比较,并且如果这两个ID匹配的话就接受这个注册。然后,它就产生和签署一个证书,这个证书包括这个打印机的公开ID和公开签名密钥,并且将这个证书保存在注册数据库中。
这个网页注册服务器用作这些网页打印机的一个证书管理机构,因为它能够访问允许它证实打印机的身份的保密信息。
当一个用户订阅一个出版物时,就在这个网页注册服务器数据库中产生一个记录,该记录授权这个出版者将这个出版物打印到这个用户的缺省打印机或者一个规定的打印机。经过一个页面服务器被发送到一个打印机的每一个文档可以被一个特定的用户访问,并且被这个出版者使用出版者的私有签名密钥进行签名。这个页面服务器通过这个注册数据库证实,这个出版者已经被授权将出版物发送到这个规定的用户。这个页面服务器使用这个出版者的公钥来证实这个签名,出版者的公钥是从被保存在注册数据库中的出版者的证书中获得的。
这个网页注册服务器接受将打印授权增加到数据库中的请求,只要这些请求是通过注册到这个打印机的一个笔发起的。
3.3 网页笔的安全性
每一个网页笔在制造时就被分配了一个唯一的标识符,这个唯一的标识符被保存在笔的只读存储器中,并且被保存在网页注册服务器数据库中。笔ID 61唯一地标识了这个网页网络上的这个笔。
一个网页笔能够“知道”网页打印机的数目,并且一个打印机能够“知道”笔的数目。一个笔通过一个无线频率信号与一个打印机进行通信,无论何时它处于这个打印机的范围内时。一旦一个笔和打印机被注册了,它们就定期地交换会话密钥。无论何时这个笔将数字墨水发送到这个打印机,数字墨水总是被使用合适的会话密钥进行加密。数字墨水决不会以明文的形式被传送。
一个笔为它所知道的每一个打印机保存一个会话密钥,会话密钥的索引是打印机ID,并且一个打印机为它所知道的每一个笔保存一个会话密钥,这些会话密钥的索引是笔ID。笔和打印机均有一个很大的但是也有限的存储容量来保存会话密钥,并且能够根据一个最近最少被使用的原则来丢弃一个会话密钥,如果需要的话。
当一个笔处于一个打印机的范围内时,这个笔和打印机发现它们是否能够知道对方。如果它们均不知道对方,然后,这个打印机判断它是否应知道这个笔。例如,这可能是因为这个笔属于已经注册到使用这个打印机的一个用户。如果这个打印机被意味着应知道这个笔但是不能够知道,然后它就发起自动笔注册过程。如果这个打印机不应知道这个笔,然后它就同意忽略这个笔,直到这个笔被放置在一个收费的杯中,这时它就发起注册过程。
除了其公开ID,这个笔包括一个保密的密钥交换密钥。这个密钥交换密钥也在制造时被记录在网页注册服务器数据库中。在注册期间,这个笔将其笔ID发送到这个打印机,并且这个打印机将笔ID发送到这个网页注册服务器。这个服务器产生一个会话密钥以被这个打印机和笔所使用,并且安全地将这个会话密钥传送到这个打印机。它也发送使用笔的密钥交换密钥进行加密的会话密钥的一个拷贝。这个打印机将这个会话密钥保存在内部,其索引是笔ID,并且将这个被加密的会话密钥发送到笔。笔将这个会话密钥保存在内部,其索引是打印机ID。
虽然一个伪造的笔能够在笔注册协议中模仿一个笔,但是仅一个真正的笔能够对这个打印机所发送的会话密钥进行解密。
当一个前面没有注册的笔第一次注册时,它被有限地使用,直到它被链接到一个用户。一个注册的但是“不被所有的”笔仅被允许用于请求和填充网页用户和笔注册表格,以注册一个将被这个新笔自动链接的新用户,或者以将一个新笔增加到一个已有的用户。
这个笔使用私钥而不是公钥加密方法,因为笔中的硬件性能限制。
3.4 安全文档
这个网页***支持安全文档的发送,例如票和赠券。这个网页打印机包括一个设施来打印水印,但是仅在接收到被合适授权的出版者的请求后才打印水印。这个出版者在其证书中标明其打印水印的授权,这个打印机能够证实该证书。
这个“水印”打印过程在这个页面的规定“水印”区域使用了一个替代的抖动矩阵。背靠背页面包括镜像水印区域,当进行打印时它们是重合的。在奇数和偶数页面的水印区域中被使用的这个抖动矩阵被设计成当这些区域被一起观看时会产生一个干扰效果,这个效果是透过打印纸张而获得的。
这个效果与一个水印类似的地方在于,当仅看这个页面的一个面时它是不可见的,当使用普通的装置来拷贝这个页面时它会被丢失。
安全文档的页面不能够使用在上面的部分1.9中所描述的内建网页拷贝机制进行拷贝。这可以延伸到在网页知道的复印机上对网页进行拷贝。
安全文档典型地是作为一个电子商务交易的一部分而被产生的。所以,它们可能包括用户的照片,当这个用户将其生理信息注册到这个网页注册服务器上时,该用户的照片被捕获,如在部分2中所描述的。
当展示一个安全网页文档时,这个接收者可以通过使用通常的方法来请求其状态,而证实其可靠性。一个安全文档的唯一ID仅在这个文档的有效使用时间内才有效。并且安全文档ID的分配不是连续的,以避免它们被机会主义者预测出来。可从开发一种内建关于证实失败的反馈的安全文档证实笔,以支持简易的展示点文档证实。
很清楚,从一个加密的角度来说,水印也不安全,用户的照片也不安全。它们简单地对偶然的伪造提供了大的障碍。联机文档证实,特别地使用一个证实笔,在它所需要的地方所提供的安全性增加了,但是仍然不能够完全避免不被伪造。
3.5 不可否认
在这个网页***中,用户所提交的表格是被可靠地发送到表格处理者,并且在网页页面服务器中可被永久进行归档。所以,接收人不可能否认该发送。
通过该***而进行的电子商务付费,如在部分4中所描述的,也不可能被收款人所否认。
4 电子商务模型
4.1 安全的电子交易(SET)
这个网页***使用安全电子交易(SET)***作为其付费***的一部分。SET是已经被MasterCard and Visa所开发出来的***,并且是用于付费卡的,这可以从其术语名字中看出来。但是,这个***的大部分是与所使用的帐号类型无关的。
在SET中,卡持有者和商人注册到一个证书管理机构,并且被发放了包括其公开签名密钥的证书。这个证书管理机构使用合适的卡发放者来证实一个卡持有人的注册细节,并且使用合适的获得者来证实一个商人的注册细节。卡持有人和商人将他们相应的私有签名密钥安全地保存在他们的计算机中。在付费过程期间,这些证书被用于相互认证一个商人和卡持有人,并且用于向这个付费网关对他们进行认证。
SET还没有被广泛地接受,部分地是因为卡持有人认为维护密钥和证书是比较麻烦的。将卡持有人的密钥和证书保存在一个服务器上并且允许这个卡持有人通过一个密码来访问这个服务器的临时解决方法已经取得了部分成功。
4.2 SET付费
在这个网页***中,这个网页注册服务器用作SET付费交易中的这个网页用户(即这个卡持有人)的一个代理。
这个网页***使用生理信息来认证这个用户并且授权SET付费。因为这个***是基于笔的,所以所使用的生理信息是这个用户的联机签名,它包括随时间变化的笔的位置和压力。一个指纹生理信息也可以被使用,这可以通过在这个笔中设计一个指纹传感器,但是其成本更高。所使用的这个生理信息类型仅影响这个生理信息的捕获,不影响这个***的授权。
能够进行SET付费的第一个步骤是将这个用户的生理信息注册到网页注册服务器。这可以在一个被控制的环境下进行,例如一个银行,其中在这个用户的身份被证实的同时可以捕获这个生理信息。这个生理信息被捕获并且被保存在注册数据库中,被链接到这个用户的记录。这个用户的照片也被可选地捕获并且被链接到这个记录。这个SET卡持有人注册过程就完成了,并且所产生的私有签名密钥和证书被保存在数据库中。这个用户的付费卡信息也被保存,这给网页注册服务器足够的信息来在任何SET付费交易中充当这个用户的代理。
当这个用户最终提供了这个生理信息来完成一个付费,例如,通过对一个网页订单表格进行签名,这个打印机安全地将这个订购信息,这个笔ID和生理信息数据传送给网页注册服务器。这个服务器证实这个笔ID所标识的这个用户的生理信息,并且从这个时刻起,这个服务器充当这个用户的代理来完成SET付费交易。
4.3 微付费
这个网页***包括用于进行微付费的一个机制,以允许这个用户方便地为根据需要打印低成本的文档和为拷贝有版权的文档而进行付费,并且可能地,也允许对这个用户为打印广告材料所引起的费用进行补偿。这后一个情形取决于已经被提供给这个用户的补助程度。
当这个用户注册电子商务时,聚合微付费的一个网络帐号就被建立。这个用户定期地接收一个支付结算表,并且可以使用标准的付费机制解决任何的未付款的登入借方的余额。
这个网络帐号可以被扩展到聚合关于期刊的订阅费用,另外,这也可以独立的付费结算表的表格形式提供给用户。
4.4 交易
当一个用户请求一个特定应用上下文中的一个网页时,这个应用能够被嵌入到这个页面的、一个与用户相关的交易ID 55中。通过这个页面随后进行的输入被用交易ID进行标记,并且由此这个应用能够为用户的输入建立一个合适的上下文。
但是,当输入是通过与用户不相关的一个页面而进行时,这个应用必须使用这个用户的唯一身份来建立一个上下文。一个典型的示例包括将一个预打印的目录页面上的项目增加到用户的虚拟“购物车”中。但是,为了保护这个用户的私有性,为这个网页***所知道的这个唯一的用户ID60不被泄漏到应用。这是为了防止不同的应用提供者能够轻易地对独立收集的行为数据进行相关。
相反,网页注册服务器通过一个唯一的别名ID 65维持在一个用户和一个应用之间的一个匿名关系,如图24中所显示的。无论何时这个用户激活了具有“被注册的”属性的一个超级链接,这个网页页面服务器要求这个网页注册服务器将这个相关的应用ID 64,和笔ID 61翻译成一个别名ID 65。这个别名ID然后被提交给这个超级链接的应用。
这个应用保存由别名ID所索引的状态信息,并且能够检索与用户相关的状态信息,而不需要知道这个用户的全球身份。
这个***也为一个用户的每一个应用保存一个独立的证书和私有签名密钥,以允许它能够仅使用与应用相关的信息,就代表这个用户对应用交易进行签名。
为了帮助***对产品条形码(UPC)“超级链接”激活进行路由,这个***代表这个用户对任何数目的产品类型记录了一个优选的应用。
每一个应用与一个应用提供者相关,并且这个***代表每一个应用提供者保存了一个帐号,以允许它为点击费用等等而为这个提供者存款和登入借方。
一个应用提供者可以是期刊被订阅内容的一个出版者。这个***记录了用户关于接收这个订阅的出版物的希望,以及所期望的出版频率。
4.5 资源描述和版权
一个资源描述类图的一个优选实施方式被显示在图40中。
每一个文档和内容对象可以被一个或者多个资源描述842来进行描述。资源描述使用了Dublin Core元数据元素集,这是专门针对电子资源的查找而设计的。Dublin Core元数据遵循万维网联盟(W3C)资源描述框架(RDF)。
一个资源描述可以标识权利持有人920。这个网页***自动地将版权费用从用户传送到权利持有人,当用户打印版权保护内容时。
5 通信协议
一个通信协议定义了在实体之间交换的一个有序的消息。在这个网页***中,实体,例如笔,打印机和服务器,利用了一组已定义协议来合作地处理用户与这个网页***的交互式通信。
每一个协议被一个序列图来描述,其中水平方向被用于表示消息流,而垂直方向被用于表示时间。每一个实体被包括该实体的名字和表示这个实体有效使用时间的一个垂直列来表示。在一个实体存在的时间内,生命线被显示为虚线。在一个实体处于激活的时间内,生命线被显示为双线。因为这里所考虑的协议不产生或者破坏实体,所以一旦一个实体停止参与到一个协议,其生命线一般就被削短。
5.1 订阅发送协议
一个订阅发送协议的一个优选实施方式被显示在图43中。
很多数量的用户可能会订阅一个期刊出版物。每一个用户的版本可能会被进行不同的设计,但是很多用户的版本将共享共同的内容,例如文本对象和图象对象。所以,这个订阅发送协议通过单播将文档结构发送到每一个打印机,但是通过多播来发送共享的内容对象。
这个应用(即,出版者)首先从一个ID服务器12获得关于每一个文档的一个文档ID 51。然后,它对这个文档新分配的ID作出响应,将每一个文档结构,包括其文档ID和页面描述发送到这个页面服务器10。它包括其自己的应用ID 64,这个用户的别名ID 65,和相关的多播信道名字集合。它使用其私有签名密钥对这个消息进行签名。
这个页面服务器使用这个应用ID和别名ID来从这个注册服务器获得相应的用户ID 60,这个用户选择的打印机的ID 62(这可以是明确地为该应用选择的打印机,或者可以是这个用户的缺省打印机),和这个应用的证书。
这个应用的证书允许这个页面服务器证实这个消息的签名。如果这个应用ID和别名ID一起不能够标识一个订阅808,这个页面服务器到注册服务器的请求失败。
然后,这个页面服务器分配文档和页面实例ID,并且转发这个页面描述,包括页面ID 50,到这个打印机。它包括这个打印机所侦听的相关多播信道名字的集合。
然后,它将新分配的页面ID返回给这个应用,以在未来用作参考。
一旦这个应用已经通过相关的页面服务器将所有的文档结构分发到这个用户选择的打印机,它在前面选择的多播信道上多播共享对象的各种子集。页面服务器和打印机均监视合适的多播信道并且接收他们需要的内容对象。然后,他们能够将前面单播的文档结构应用上去。这允许页面服务器能够将完全的文档增加到它们的数据库中,并且它允许打印机能够打印这个文档。
5.2 超级链接激活协议
一个超级链接激活协议的一个优选实施方式被显示在图45中。
当一个用户使用一个网页笔在一个网页上进行点击时,这个笔将这个点击通信给最近的网页打印机601。这个点击标识出这个页面和在这个页面上的一个位置。这个打印机已经从笔连接协议中知道了笔的ID 61。
这个打印机通过DNS确定处理特定页面ID 50的页面服务器10a的网络地址。这个地址可能已经在其缓冲器中,如果这个用户最近与相同的页面发生了交互式通信。然后,这个打印机将笔ID,其自己的打印机ID62,页面ID和点击位置转发给这个页面服务器。
这个页面服务器载入这个页面ID所标识的页面描述5,并且判断这个点击位于哪一个输入部件的区域58中,如果有的话。假设相关的输入部件是一个超级链接部件844,然后,这个页面服务器获得相关的应用ID 64和链路ID 54,并且通过DNS获得驻留了这个应用71的应用服务器的网络地址。
这个页面服务器使用笔ID 61来从注册服务器11获得相应的用户ID60,并且然后分配一个全球唯一的超级链接请求ID 52并且建立一个超级链接请求834。这个超级链接请求类图被显示在图44中。这个超级链接请求记录了进行请求的用户和打印机的ID,并且标识被点击的超级链接实例862。这个页面服务器然后将其自己的服务器ID 53,超级链接请求ID,和链路ID发送到这个应用。
这个应用根据与应用相关的逻辑来产生一个响应文档,并且从一个ID服务器52获得一个文档ID 51。然后,它对这个文档新分配的ID作出响应,将这个文档,和进行请求的页面服务器ID和超级链接请求ID发送到这个页面服务器10b。
第二页面服务器将超级链接请求ID和应用ID发送到第一页面服务器,以获得相应的用户ID和打印机ID 62。第一页面服务器拒绝这个请求,如果这个超级链接请求已经过期了或者是关于一个不同的应用的。
第二页面服务器分配文档实例和页面ID 50,将新分配的页面ID返回给这个应用,并且将完整的文档增加到其自己的数据库中,最后将这个页面描述发送到进行请求的打印机。
这个超级链接实例可能包括一个有意义的交易ID 55,在这个情形下,第一页面服务器在发送到这个应用中的消息中包括这个交易ID。这允许这个应用能够为超级链接激活建立一个与交易相关的上下文。
如果这个超级链接需要一个用户的别名,即,其“需要别名”的属性被设置了,然后,这第一页面服务器将笔ID 61和超级链接应用ID 64发送到这个注册服务器11,以不仅获得与这个笔ID相应的用户ID,而且也获得与这个应用ID和用户ID相应的别名ID 65。它在发送到这个应用的消息中包括这个别名ID,这允许这个应用能够为超级链接激活建立与用户相关的一个上下文。
5.3 手写识别协议
当一个用户在一个网页上使用一个网页笔来画一个笔画时,这个笔将这个笔画传送到这个最近的网页打印机。这个笔画标识了这个页面和在这个页面上的一个路径。
这个打印机使用通常的方法,将笔ID 61,其自己的打印机ID 62,页面ID 50和笔画路径转发到这个页面服务器10。
这个页面服务器载入这个页面ID所标识的页面描述5,并且确定这个笔画与哪一个输入部件的区域58进行相交,如果有的话。假设相关输入部件是一个文本字段878,这个页面服务器将这个笔画附加到文本字段的数字墨水上。
在这个文本字段的区域中没有发生活动的一段时间后,这个页面服务器将笔ID和挂起的笔画发送到这个注册服务器11,以进行解释。这个注册服务器标识与这个笔相应的用户,并且使用用户的累积手写模型822来理解作为手写文本的笔画。一旦它已经将这些笔画转换为文本,这个注册服务器将这个文本返回给进行请求的页面服务器。这个页面服务器将这个文本附加到文本字段的文本值上。
5.4 签名证实协议
假设这个笔画与其区域相交的输入部件是一个签名字段880,这个页面服务器10将这个笔画附加到签名字段的数字墨水上。
在这个签名字段的区域中没有发生活动的一段时间后,这个页面服务器将笔ID 61和挂起的笔画发送到这个注册服务器11,以进行证实。它也发送与这个签名是其一部分的表格相关的应用ID 64,和表格ID 56和这个表格的当前数据内容。这个注册服务器标识与这个笔相应的用户,并且使用这个用户的动态签名生理信息818来证实作为这个用户的签名的笔画。一旦它已经证实了这个签名,这个注册服务器使用应用ID 64和用户ID 60来标识这个用户的、与应用相关的私有签名密钥。然后,它使用这个密钥来产生这个表格数据的一个数字签名,并且将这个数字签名返回给进行请求的这个页面服务器。这个页面服务器将这个数字签名分配给签名字段,并且将相关的表格状态设置为冻结。
这个数字签名包括相应用户的别名ID 65。这允许一单个表格能够捕获多个用户的签名。
5.5 表格提交协议
一个表格提交协议的一个优选实施方式被显示在图46中。
表格提交是通过一个表格超级链接激活而发生的。这样,它遵循在部分5.2中所定义的协议,并且具有某些与表格相关的补充部分。
在一个表格超级链接的情形下,被这个页面服务器发送到这个应用71的这个超级链接激活消息也包括表格ID 56和这个表格的当前数据内容。如果这个表格包括任何签名字段,然后,该应用通过提取与相应数字签名相关的别名ID 65,并且从注册服务器11获得相应的证书就可以证实每一个签名字段。
5.6 佣金付费协议
一个佣金付费协议的一个优选实施方式被显示在图47中。
在一个电子商务的环境下,在点击,交易,和销售后,费用和佣金可以被从一个应用提供者付给一个出版者。关于费用的手续费和关于佣金的手续费也可以被从这个出版者付给打印机的提供者。
这个超级链接请求ID 52被用于将一个费用或者佣金款从这个目标应用提供者70a(例如,商人)付给源应用提供者70b(即,出版者),并且从源应用提供者70b付给打印机提供者72。
目标应用从这个页面服务器10接收超级链接请求ID,当这个超级链接被第一次激活时,如部分5.2中所描述的。当这个目标应用需要为这个源应用提供者进行存款时,它将这个应用提供者款额和超级链接请求ID一起发送给这个原始页面服务器。这个页面服务器使用超级链接请求ID来标识源应用,并且将这个款额和源应用ID 64,其自己服务器ID 53和超级链接请求ID发送给相关的注册服务器11。这个注册服务器存入到相应的应用提供者的帐号827中。它也通知应用提供者。
如果这个应用提供者需要为打印机提供者进行存款,将这个打印机提供者款额和超级链接请求ID一起发送给这个原始页面服务器。这个页面服务器使用超级链接请求ID来标识这个打印机,并且将这个款额和打印机ID一起发送给相关的注册服务器。这个注册服务器存入到相应的打印机提供者的帐号814中。
可选地将目标应用提供者的身份通知给这个源应用提供者,并且将源应用提供者的身份通知给打印机提供者。
6 网页笔描述
6.1 笔的结构
参考图8和9,这个笔一般被用标号101来表示,并且包括一个塑料铸模形成的一个外壳102,这个外壳102具有定义了用于安装笔部件的一个内部空间104的壁103。笔顶部105是可以被旋转地安装在外壳102的一端106的。一个半透明的壳107被安全地安装到这个外壳102的另一端108。壳107也是用铸模塑料做的,并且是用半透明材料做的,以能够使用户看到被安装在外壳102中的LED的状态。壳107包括基本上围绕外壳102的末端108的一个主要部分109和从这个主要部分109往后凸出的并且可以被安装在外壳102的墙壁103中所形成的一个相应槽111中的一个凸出部分110。一个无线天线112被安装在凸出部分110的后面,并且在外壳102内。围绕在壳107上的一个孔113A的螺旋螺纹112被安排成与一个金属末端片114啮合,这个金属末端片包括相应的螺旋螺纹115。金属末端片114是可以被拆卸的,以允许可以替换墨水盒。
另外,被安装在壳107内的是在一个弯曲PCB 117上的一个三色状态LED 116。这个天线112也被安装在这个弯曲PCB 117上。状态LED 116被安装在笔101的顶部以实现比较好的全向视角。
这个笔也能够作为一个普通的标记笔使用,同时也能够作为一个非标记的输入笔。具有笔尖119的一个墨水笔墨盒118和具有输入笔笔尖121的一个输入笔120被并排安装在外壳102内。通过旋转笔头105,或者是墨水墨盒笔尖119或者是输入笔笔尖121可以被旋转到通过金属末端片114的开口122。相应的滑动块123和124被分别安装在墨水墨盒118和输入笔120中。一个可旋转的凸轮桶125被安全地安装到笔头105,并且可以进行工作与其一起旋转。这个凸轮桶125包括在凸轮桶的墙壁181内的一个槽形式的凸轮126。从滑动块123和124中凸出来的凸轮输出器127和128啮合在凸轮槽126中。在凸轮桶进行旋转时,这个滑动块123或者124进行相对移动,以将这个笔笔尖119或者输入笔笔尖121凸出并通过金属末端片114中的开口122。笔101具有3个工作状态。通过将笔头105以90°为步长进行旋转,这3个状态是:
输入笔120笔尖121出来;
墨水墨盒118笔尖119出来;和
输入笔120笔尖121和墨水墨盒118笔尖119均不出来。
一第二弯曲PCB 129被安装在位于外壳102内的一个电子机壳130上。这第二弯曲PCB 129将用于提供发射用的红外辐射的一个红外LED131安装在这个表面上。一个图象传感器132被安装在这第二弯曲PCB 129上,以接收表面上的反射红外辐射。第二弯曲PCB 129也安装了包括一个RF发送器和RF接收器的一个无线频率芯片133,和用于控制笔101的工作的一个控制器芯片134。一个光学模块135(用铸模的干净塑料做的)位于壳107内,并且将一个红外线束发射到这个表面,并且将图象接收传送到图象传感器132。电源线136将第二弯曲PCB 129上的部件连接到电池接触点137,电池接触点也被安装在凸轮桶125上。一个终端138将电池接触点137和凸轮桶125连接在一起。一个3V电压可充电电池139位于凸轮桶125内并且与电池接触点连接。一个感应充电线圈140被安装在第二弯曲PCB板129的周围,以通过感应对电池139进行充电。这个第二PCB 129也安装了一个红外线LED 143和一个红外线光电二极管144来检测在凸轮桶125中的移动,当输入笔120或者墨水墨盒118被用于书写时,以判断笔笔尖119或者输入笔笔尖121施加到这个表面上的力量。IR光电二极管144通过被安装在滑动块123和124上的反射器(没有显示)来检测来自IR LED 143的光。
橡胶夹子垫141和142被提供到外壳102的末端108,以帮助夹住笔101,并且顶部105也包括一个夹子142来将这个笔101夹到一个口袋上。
6.2 笔控制器
笔101被安排成来通过在红外线谱中对笔尖附近的表面区域进行成象来决定其笔尖的位置(输入笔笔尖121或者墨水墨盒笔尖119)。它记录来自最近位置标记的位置数据,并且被安排成使用光学模块135和控制器芯片134计算笔尖121或者119距位置标记的距离。控制器芯片134从这个被成象标记上所观察到的透视畸变来计算这个笔的方向和笔尖到标记的距离。
使用这个RF芯片133和天线112,笔101可以将数字墨水数据(它被进行加密以确保安全,并且被进行分组化以进行有效的传输)发送到这个计算***。
当这个笔在一个接收器的范围内时,输入墨水数据就按其形成的而被发送。当笔101移动出了其范围时,数字墨水数据被缓存在笔101的内部(笔101电路包括被安排成能够保存笔在这个表面上移动大约12分钟的数字墨水数据的一个缓冲器),并且可以被较后的时间被发送。
控制器芯片134被安装在笔101的第二弯曲PCB 129上。图10是显示控制器芯片134的结构细节的一个模块图。图10也显示了RF芯片133,图象传感器132,三色状态LED 116,IR发射LED 131,IR力量传感器LED 143和力量传感器光电二极管144的表示。
笔控制器芯片134包括一个控制处理器145。总线146使在控制器芯片134的部件之间交换数据成为可能。闪存147和一个512KB DRAM 148也被包括在其中。一个模拟到数字转换器149被安排成将来自力量传感器光电二极管144的模拟信号转换为一个数字信号。
一个图象传感器接口152与这个图象传感器132进行接口通信。一个收发器控制器153和基带电路153也被包括来与RF芯片133进行接口通信,RF芯片133包括一个RF电路155和RF振荡器和被连接到天线112的电感156。
这个控制处理器145捕获和解码通过图象传感器132从这个表面的标记来的位置数据,监视力量传感器光电二极管144,控制LED 116,131和143,并且通过无线收发器153处理短距离无线通信。它是一个中等性能(~40MHz)的通用RISC处理器。
这个处理器145,数字收发器部件(收发器控制器153和基带电路154),图象传感器接口152,闪存147和512KB DRAM 148被集成在一单个控制器ASIC中。模拟RF部件(RF电路155和RF振荡器和电感156)被提供在独立的RF芯片中。
这个图象传感器是带一个IR滤波器的一个215×215点的CCD(例如,由Matsushita Electronic Corporation所生产的一个传感器,它被描述在Itakura,K T Nobusada,Nokusenya,R Nagayoshi,and M Ozaki等写的一篇文章,“a 1mm 50k-Pixel IT CCD Image Sensor for MiniatureCamera System”,IEEE Transactions on Electronic Devices,Vol.47,number 1,January 2000,它在这里被用作参考)。
当笔101不与表面进行接触的一段非活动时间后,控制器ASIC 134进入一个静止状态。它包括一个专用电路150来监视力量传感器光电二极管144并且在一个笔按下的事件发生后就通过电源管理器151来唤醒控制器134。
无线收发器在通常是被无绳电话所使用的非许可900MHz频带内进行通信,或者替代的,在非许可2.4GHz工业,科学和医药(ISM)频带内进行通信,并且使用跳频和碰撞检测技术来提供无干扰的通信。
在一个替代的实施方式中,笔包括了一个红外线数据协会(IrDA)接口来与一个基站或者网页打印机进行短距离通信。
在另一个实施方式中,笔101包括一对正交的加速计,它们被安装在笔101轴的垂直平面上。这对加速计190以细小的轮廓线被显示在图9和10中。
提供了加速计后可以使笔101的这个实施方式探测到运动,而不需要参考表面的位置标记,这允许可以使用较低的采样速率来采样位置标记。然后,每一个位置标记ID可以标识一个感兴趣的对象,而不是表面上的一个位置。例如,如果这个对象是一个用户接口输入部件(例如,一个命令按钮),然后,在这个输入部件的区域内的每一个位置标记的这个标记ID可以直接地标识出输入部件。
在每一个x和y轴上的加速计所测量的加速度可以与时间一起来产生一个瞬时的速度和位置。
因为笔画的开始位置是不知道的,所以仅可以计算一个笔画内的相对位置。虽然位置集成累积了所探测加速度的误差,但是典型地,加速计具有高的分辨率,并且累积错误的一个笔画的持续时间比较短。
7 网页打印机描述
7.1 打印机机械结构
垂直安装的网页墙挂式打印机601在图11中显示为完全装配状态。它使用双向8 1/2”MemjetTM打印引擎602和603,如图12和12a中所显示的,在Letter/A4大小的媒质上打印网页。它使用一个直的纸张路径,并且纸张604通过双向的打印引擎602和603,这两个打印引擎使用全色和全渗透来同时在一个纸张的两面进行打印。
一个集成捆绑装订装配部件605沿每一个打印纸张的一个边缘施加一个胶条,当被按压时允许它能够粘结到前一个纸张。这产生了一个最终捆绑装订的文档618,其厚度可以从一张纸到几百张纸。
可替换的墨水墨盒627在图13中被显示,它与双向打印引擎连接,并且具有用于保存固定剂,粘结剂,和青色,品红色,黄色,黑色和红外墨水的空腔或者小室。这个墨盒也在基部压制件中包括一个微型空气过滤器。这个微型空气过滤器通过一个软管639与这个打印机内的一个空气泵638进行连接。这将被过滤的空气提供给打印头,以避免将微颗粒输入到这个MemjetTM打印头350,否则颗粒将阻塞打印头的喷嘴。通过将空气过滤器包括在墨盒中,过滤器的工作寿命可以有效地与墨盒的使用寿命绑在一起。这个墨盒是完全可再生的产品,并且其容量可以用于打印和粘结3000页面(1500张纸)。
参考图12,这个用电动机带动的媒质拾取辊子装配部件626将最上面的纸张直接从媒质盘推动通过第一打印引擎602上的一个纸张传感器,并且送到双向的MemjetTM打印头装配部件。这两个MemjetTM打印引擎602和603被安装在沿直纸张路径上的、相对的、在线上依次排列的结构中。这个纸张604通过集成的电动拾取辊子626被拖入第一打印引擎602。纸张604的位置和大小被探测,并且进行全渗透打印。固定剂被同时打印以有助于在最短可能时间内变干。
这张纸通过一组电动退出带钉轮子(沿直的纸张路径排列)退出第一MemjetTM打印引擎602,这组电动带钉轮子作用在一个涂上橡胶的辊子上。这些带钉的轮子接触“湿的”被打印表面,并且继续将这纸张604送入到第二MemjetTM打印引擎603。
参考图12和12a,纸张604从双向的打印引擎602和603进入捆绑装订装配部件605。被打印的页面通过带一个纤维支撑辊子的一个电动带钉轮子轴670和具有带钉轮子和一个瞬时作用胶轮子的另一个可移动轮轴之间的空间。这可移动的轴/胶装配部件673被安装到一个金属支撑托架上,并且它被在一个凸轮轴的作用下,通过齿轮向前传送到与电动轴670接触。一个独立的电动机带动这个凸轮轴。
胶轮装配部件673包括一个部分中空的轮轴679,该轮轴679具有一个与来自墨水墨盒627的胶水提供软管641联接的旋转联接器。这个轮轴679连接到通过径向的孔的毛细管作用而吸附粘结剂的一个胶轮。一个模制的外壳682围绕这个胶轮,并且在前面有一个开口。绕枢轴转动的侧压制件和被支在弹簧上的外部门被连接到这个金属托架,并且当这个装配部件673的其余部分往前冲出时转动到一侧。这个动作通过模制外壳682的前面暴露出胶轮。张力弹簧关闭这个装配部件并且在非活动期间内有效地密封这个胶轮。
当纸张604进入到这个胶轮装配部件673中时,粘结剂被施加到前侧上的一个垂直边缘(除了一个文档的第一纸张),当它被向下传送到捆绑装订装配部件605时。
7.2 打印机控制器结构
这个网页打印机控制器包括一个控制处理器750,一个被工厂安装的或者在现场被安装的网络接口模块625,一个无线收发器(收发器控制器753,基带电路754,RF电路755,和RF振荡器和电感756),双光栅图象处理器(RIP)DSP 757,双向打印引擎控制器760a和760b,闪存658,和64MB DRAM 657,如图14中所显示的。
这个控制处理器处理与网络19和与本地无线网页笔101的通信,探测帮助按钮617,控制用户接口LED 613-616,并且馈送和同步RIP DSP757和打印引擎控制器760。它包括一个中等性能的通用微处理器。这个控制处理器750通过一个高速串行总线659与这个打印引擎控制器760进行通信。
RIP DSP对页面描述进行光栅化处理并且将其压缩到网页打印机的压缩页面格式。每一个打印引擎控制器实时地解压缩,抖动和打印页面图象到其相关的MemjetTM打印头350(即,以每分钟超过30页的速度)。这个双向打印引擎控制器可以同时在一个纸张的两面进行打印。
主打印引擎控制器760a与主QA芯片665和墨水墨盒QA芯片761一起控制纸张的传送和监视墨水的使用情况。
这个打印机控制器的闪存658保存了关于处理器750和DSP 757的软件,并且保存了配置数据。这在启动时被拷贝到主存储器657。
处理器750,DSP 757,和数字收发器部件(收发器控制器753和基带电路754)被集成在一单个控制器ASIC 656中。模拟RF部件(RF电路755和RF振荡器和电感756)被提供在一个独立的RF芯片762中。这个网络接口模块625是分开的,因为网页打印机允许这个网络连接可以被工厂选择,也可以在现场进行选择。闪存658和2×256Mbit比特(64MB)DRAM 657也是一个独立的芯片。这个打印引擎控制器760被提供在独立的ASIC中。
可以提供很多类型的网络接口模块625,并且每一个提供一个网页网络接口751和可选地提供一个本地计算机或者网络接口752。网页网络互联网接口包括POTS调制解调器,混合光纤同轴电缆(HFC)调制解调器,ISDN调制解调器,DSL调制解调器,卫星收发器,当前的和下一代的蜂窝电话收发器,和无线本地环路(WLL)收发器。本地接口包括IEEE1284(并行口),10Base-T和100Base-T以太网口,USB和USB 2.0口,IEEE 1394(火警线),和各种不断涌现的家庭网络接口。如果一个以太网连接可以在一个本地网络上获得,然后,这个本地网络接口可以被用作网页网络接口。
无线收发器753在通常是被无绳电话所使用的非许可900MHz频带内进行通信,或者替代的,在非许可2.4GHz工业,科学和医药(ISM)频带内进行通信,并且使用跳频和碰撞检测技术来提供无干扰的通信。
这个打印机控制器可选地包括一个红外线数据协会(IrDA)接口来用于接收从设备,例如网页照相机中“喷出”的数据。在一个替代的实施方式中,这个打印机使用IrDA接口来与合适配置的网页笔进行短距离通信。
7.2.1 光栅化处理和打印
一旦这个主处理器750已经接收到并且证实了该文档的页面布局设计和页面对象,它就在DSP 757上运行合适的RIP软件。
DSP 757对每一个页面描述进行光栅化,并且压缩被光栅化的页面图象。主主处理器将每一个被压缩的页面图象保存在存储器中。对多个DSP进行负载平衡的最简单方法是让每一个DSP对一个独立的页面进行光栅化。这个DSP总是很忙,因为一般来说,一个任意数目的被光栅化页面可能被保存在存储器中。只在对短的文档进行光栅化时,这个负载平衡策略会潜在地导致DSP的利用率很低。
在这个页面描述中的水印区域被光栅化到一个连续色调分辨率的(contone-resolution)双电平比特图,这个比特图被无损地压缩到可忽略的尺寸并且形成了被压缩图象的一部分。
被打印页面的红外(IR)层包括被编码网页标记,其密度是每英寸大约6个标记。每一个标记对这个页面ID,标记ID,和控制比特进行编码,而每一个标记的内容在进行光栅化处理期间被产生并且被保存在被压缩页面图象中。
这个主处理器750将背对背页面图象传送到这个双向打印引擎控制器760。每一个打印引擎控制器760将被压缩页面图象保存在其本地存储器中,并且开始对这个页面进行解压缩和打印流程处理。页面解压缩和打印是流水线处理的,因为将整个114MB双电平CMYK+IR页面图象保存在存储器中是不实际的。
7.2.2 打印引擎控制器
打印引擎控制器760的页面解压缩和打印流水线处理包括一个高速的IEEE 1394串行接口659,一个标准的JPEG解码器763,一个标准的第4类传真解码器764,一个定制半色调板/排字机单元765,一个定制标记编码器766,一个行加载器/格式化器单元767,和到这个MemjetTM打印头350的一个定制接口。
这个打印引擎控制器360使用一个双缓冲器的方式进行工作。虽然一个页面通过高速串行接口659被载入到DRAM 769中,前面被载入的页面被从DRAM 769中读取出来的,并且通过打印引擎控制器流水线处理。一旦这个页面已经被打印出来了,刚才被载入的页面就被打印,而另一个页面被载入。
这个流水线处理的第一级解压缩(在763)JPEG-压缩的连续色调CMYK层,解压缩(在764)第4类传真压缩双电平黑色层,并且根据在部分1.2中所定义的标记格式来再现(在766)双电平网页标记层,所有这些是并行处理的。第二级抖动(在765)连续色调CMYK层和在所产生的双电平CMYK层合成(在765)双电平黑色层。所产生的双电平CMYK+IR点数据被缓存和进行格式化(在767)以通过一组行缓冲器而在MemjetTM打印头350上进行打印。这些行缓冲器中的大多数被保存在芯片外的DRAM中。最后一级通过打印头接口768将6个信道的双电平点数据(包括固定剂)打印到MemjetTM打印头350。
当几个打印引擎控制器760被协调使用时,例如在一个双向结构中,它们通过一个共享的行同步信号770进行同步。仅一个通过外部主/从管脚771而选择的打印引擎760产生行同步信号770到这个共享线上。
打印引擎控制器760包括一个低速处理器772,这个低速处理器772用于对页面解压缩和再现流水线处理进行同步,用于通过一个低速串行总线773配置这个打印头350,并且控制步进电机675,676。
在纸张大小为81/2”的网页打印机中,这两个打印引擎中的每一个沿页面的长度方向(11”)每分钟打印30张纸,其行速在1600dpi下为8.8kHz。在纸张大小为12”的网页打印机中,这两个打印引擎中的每一个沿页面的宽度方向(81/2”)每分钟打印45张纸,其行速为10.2KHz。这些行速很好地落在MemjetTM打印头的工作频率范围内,在目前的设计中这超过了30kHz。
8 目录导航
一个目录是一个带名字对象的有结构的列表。它可以使用很多方式来进行显示:按字母排序的,按排成不同的命名组或者主题等。缺省的显示方式是与每一个目录的类型相关的。一个目录也可以被进行搜寻。
为了使用一个网页来进行导航,在这个目录上建立了一个n元的索引树,其中每一个节点包括足够的索引项来填满两个打印页面(即,一张纸的两面)。如果两个页面具有k个表目,并且这整个目录包括了m个表目,然后在索引中的层的数量是logkm。例如,如果两个页面保存200个表目,整个目录表示了包括60亿个表目的一个全球电话目录,然后在索引中的层数是5,并且一个用户可以通过打印5张纸来定位这个目录中的一个所希望表目。
8.1 应用图符号表示法
每一个应用用户接口流被显示为用命令箭头链接在一起的文档集合。一个命令箭头指出,作为这个用户按下这个资源页面上相应命令按钮的结果,这个目标文档被打印。某些命令箭头被使用由斜杆(‘/’)所分开的多个命令进行标记,这表示所规定命令中的任何一个均可以促使目标文档被打印。虽然多个命令可以标记相同的命令箭头,它们典型地具有不同的副作用。
在应用术语中,区分网页文档和网页表格是重要的。文档包括被打印的信息,和命令按钮,这些命令按钮可以被这个用户按下来请求更多的信息或者某些其它动作。除了其行为象一个正常的文档外,表格也包括可以被这个用户填充的输入字段。它们给这个***提供一个数据输入机制。能够区分包括一般信息的文档和包括专用于在这个用户和一个应用之间的一个特定交互的文档也是很有用的。一般文档可以是预打印的出版物,例如在新闻站中所销售的杂志或者在公共场合中所遇到的广告海报。表格也可以被预打印,包括,例如在预打印出版物中遇到的订阅表格。当然,它们也可以被对用户请求作出响应而由一个网页打印机匆忙地产生。与用户相关的文档和表格通常是被一个网页打印机对用户请求作出响应而匆忙地产生的。图48显示了一个一般文档990,一个一般表格991,一个与用户相关的文档992,和一个与用户相关的表格993。
参与一个用户接口流的网页被进一步用抽象的页面布局来进行描述。一个页面布局可以包括各种部件,每一个部件具有一个唯一的类型以将其与其它的区分开。如图49所显示的,这些包括固定的信息994,可变的信息995,输入字段996,命令按钮997,和可拖动的命令998。
当一个用户接口流被分成多个图时,任何重复文档在除了定义这个文档的主图外的所有其它图中均被用虚轮廓线所表示。
8.2 目录导航
一个索引目录类图被显示在图50中,这个显示是一个示例。每一个索引表目500或者是一个索引节点表目501或者是表示一个目录对象503的一个目录表目502,这个索引表目500本身表示一个更上层索引节点504的一些可能表目中的一个。
一般目录索引页面520的布局被显示在图51中。每一个索引节点504被这个索引页面上的一个表目518来描述,这个表目518规定了它所链接到的一个双面页面上的开始和结束名字,这是被“to”分开,例如“Aardvark to Axolotl”,“Ayatollah Bo Bernoulli”等。每一个表目518用作到表示下一层索引节点504的相应下层索引页面520的一个超级链接。
如果整个目录可以被放在两个页面上,然后,它就被直接显示,而不需要***一个索引树。
在一个终端索引页面521中的一个终端(最底层)索引节点,即,指实际名字对象,的索引表目的表示是对每一个目录类型专用的。
每一个页面包括打印这个索引的根节点的一个<头>按钮511,打印这个索引中这个页面的父亲节点的一个<上>按钮512和分别打印这个页面的索引层的第一个节点,前一个节点,下一个节点和最后一个节点的<第一个>,<前一个>,<下一个>和<最后一个>的按钮513到516。特别的导航按钮并不出现,如果它们对当前的页面没有任何意义,例如关于一个索引层中第一索引节点的这个页面就没有<第一个>和<前一个>按钮。
每一个页面也包括一个<搜寻>按钮517,这个按钮产生允许对目录进行搜寻的一个搜寻。这个搜寻表格的内容是对每一个目录类型专用的。
这个目录导航用户接口流被显示在图52中,其中按钮511到516的导航功能被使用一个目录索引520和一个终端目录索引521来进行显示。这个导航可能导致打印一个特定的目录对象522。通过使用这个搜寻按钮517进行一个搜寻523,可以获得一个类似的结果。当然,如果这个搜寻结果是不完全确定的,就提供一个匹配列表524来让这个用户选择一个合适的结果。
9 电子邮件
网页电子邮件(E-mail)在网页用户之间提供了一个消息服务。它也支持与互联网的电子邮件用户进行消息交换,并且扩展的,可以支持与通过互联网而互联的其它电子邮件***的用户,例如公司电子邮件***的用户进行消息交换。
每一个网页用户在这个网页***内具有一个唯一的ID,并且它们的名字也是被这个***已知的,这个名字可能是也可能不是唯一的。通常,通过从一个列表,例如,从网页用户的全球列表或者从一个特定用户的联系人列表中,选择一个名字来访问这个网页电子邮件。这个用户的绰号或者别名用于帮助不会混淆类似的名字。一个网页与通常不知道或者规定另一个网页用户的唯一ID。
当一个网页用户希望向一个互联网用户发送一个电子邮件时,他们必须说明一个互联网电子邮件地址。类似地,当一个互联网用户希望向一个网页用户发送电子邮件时,他们必须说明一个网页互联网电子邮件地址。通过这个互联网上的一个或者多个域名来知道这个网页网络。网页邮件网关服务器与互联网上的邮件服务器交换电子邮件,并且特别地,接收到一个网页域名的互联网电子邮件。每一个网页用户被给予一个电子邮件别名ID,通过这个别名ID,他们可以在一个网页互联网的域内被标识。所以,一个用户的网页互联网地址的形式是<电子邮件别名ID>@<网页域名>。
电子邮件是这个网页***的一个核心业务。
9.1 电子邮件对象模型
9.1.1 电子邮件用户
这个电子邮件对象模型是以一个电子用户1000为中心的,如图53的类图中所显示的。一个电子邮件用户100或者是一个网页用户800,或者是一个互联网用户1002。
9.1.2 电子邮件
如图54的电子邮件类图中所显示的,电子邮件1003本身包括一些页面1004。每一个页面与一个网页相应。这个页面结构是一个逻辑结构,因为这个电子邮件被以其写作的形式而被发送,并且它是被发送者一页一页写作的。
每一个页面包括数字墨水873(图33),并且包括任何数目的附件1005。一个附件被在其***点的位置进行打印,并且在一页打印不完是可以打印到后面的页面上。
电子邮件的发送者1006是一个电子邮件用户1000,并且可以有任何数目的接收人1007和任何数目的抄送接收人(CC)1008。为了清晰起见,这里没有匿名接收人(BCC),但是很清楚,可以很容易地包括匿名接收人。
这个电子邮件有一个很明显的主题,它总是被从数字墨水转换为文本,来支持与不直接支持数字墨水的电子邮件***进行互通,例如互联网上的电子邮件***进行互通,并且在这个网页***本身内流水线地显示邮箱的内容。
这个电子邮件具有一个高优先级标记1009,这个标记允许发送者和接收者均可以控制这个电子邮件发送的及时性。
9.1.3 邮箱
进入的电子邮件可以被累积在用户的邮箱1010中,如图55的类图中所显示的,可以被打印在这个用户的缺省打印机上,被包括在用户的新闻日报中,或者这些形式的任意组合。例如,这个用户可以选择在接收后就立即打印高优先级电子邮件,而保持低优先级的电子邮件。
这个用户可以在这个邮箱1010内产生任何数目的、带名字的目录1011,并且可以在目录之间进行手工拷贝和移动所接收的电子邮件1003,或者将一个目录与一个或者多个电子邮件联系人(包括电子邮件组)进行相关来使从这些联系人发送来的电子邮件自动地被放置到这个目录中。从不与一个目录相关的联系人发送来的电子邮件被放置在一个预定义的“输入邮箱”的目录中。这个用户所发送的所有电子邮件被放置在一个预定义的“发送电子邮件”的目录中,以待将来使用。
每一个目录具有3个发送选项:“打印所有电子邮件”,“打印高优先级电子邮件”,和“一旦被打印后,就删除电子邮件”。如果选择了一个打印的选项,具有相应优先级的电子邮件消息就在接收后被立即打印到这个用户的缺省打印机上。如果选择了删除选项,一旦进行打印后,就从电子邮件目录中删除电子邮件消息。否则就将电子邮件消息无限制地保存在电子邮件目录中,即直到这个用户手工删除。
9.1.4 联系人列表
每一个用户具有一个联系人1013的列表1012。这个联系人列表1012,如图56中所显示的,提供了一个很方便的方法来选择电子邮件接收人,而不是用户的全局列表,特别地,因为大多数用户的联系人列表将在一单个双面打印纸张内。这个联系人列表也提供了一个方法来忽略未经请求的电子邮件。一个私密选项允许一个用户能够忽略不是从这个联系人列表中一个发送来的电子邮件。
一个用户可以在这个联系人列表内产生任何数目的联系人组1014,并且将一个组作为一单个联系人1015进行处理,以处理对往外发送的电子邮件的地址并且控制进入电子邮件的发送。
组本身也可以包括组,并且两个独立的联系人和组可以是多个组的成员并且也可以是最顶层联系人列表本身的成员。
9.1.5 被禁止用户列表
除了仅接收从已知的联系人发送来的电子邮件,一个用户800可以选择去禁止若干个单用户1016。这个禁止的用户列表1017,如图57中所显示的,记录了这个用户不接收从这些用户发送来的电子邮件的用户。
9.2 电子邮件用户接口
9.2.1 发送电子邮件
使用往外发送电子邮件的表格1020(见图60和61)来发送电子邮件。这个表格总是使用在1021所规定的发送者的名字来被打印,因为发送者的身份是可以从用于请求这个电子邮件表格的笔中知道的。如果通过按下在某个页面上的一个与用户相关的<电子邮件>按钮来请求这个电子邮件表格,然后,就使用已经规定的接收人的名字107来打印这个电子邮件表格。另一方面,如果这个电子邮件表格是从帮助页面请求的,然后,这个接收人是不知道的,并且表格的左边被空着。在可以发送这个电子邮件以前,这个用户必须规定至少一个接收人。
这个用户可以通过按下帮助页面上的这个<到联系人的电子邮件>按钮来预先将一个地址给一个电子邮件表格。这引出了一个增加接收人表格(图62),它列表出了这个用户的联系人1013。每一个联系人具有一个<到>和一个<CC>选择框1022,1023和一个<电子邮件>按钮1024。这个电子邮件按钮引出一个其地址是到这个用户的一个电子邮件表格。在这个页面的底部的<被选择的电子邮件>按钮1025引出到所有用户的一个地址邮件,其<到>或者<CC>选择框全被选择了。
开始,这个电子邮件表格包括一个双面的页面。这个纸张的正面(图60)包括了用于接收人的名字和拷贝接收人的名字的字段1026,1027,用于主题的字段1028,和用于电子邮件体的字段1029。这个纸张的背面(图61)包括用于继续写电子邮件内容的一个字段1030。手写的任何接收人名字(或者地址)被从数字墨水转换为文本,以进行搜寻。主题也被进行转换,以用于进行显示,如前面所讨论的。电子邮件的内容仍然保持为数字墨水,以允许手写文本和图等可以被使用一个单一的和具有表达意义的形式被发送。
在这个电子邮件表格的每一个页面的底部的<增加页面>按钮1031将另一个双面纸张增加到这个电子邮件表格。仅打印附加的页面,而不是整个表格,但是附加的页面在逻辑上被链接到初始的电子邮件。在每一个页面的底部的这个<丢弃页面>按钮1032从这个电子邮件丢弃相应的页面(但是不是这个双面纸张的两面)。在被丢弃的页面被删除后,并且随后的页面,如果有的话,被进行移动来弥合这个空隙后,重新打印整个电子邮件。一个空的页面被增加,来使页面数目为偶数,如果必要的话。
每一个打印的电子邮件表格与一个独立的电子邮件示例相应,其唯一性是通过发送者的名字,打印在每一个页面顶部的日期和时间来标识的。一旦已经发送了这个电子邮件,它就不能够被再发送。但是,可以很容易地生成一个拷贝并进行编辑和发送。在这个电子邮件表格的每一个页面上的标准<打印>按钮打印与一个新的电子邮件示例相应的、这个电子邮件的另一个拷贝。初始的和电子邮件的拷贝均可以被进行进一步的编辑并且被独立发送。
在<接收人>,<拷贝接收人>和<主题>字段中的文本可以被用笔来进行删除,以删除接收人,主题文本等等。<打印>按钮产生其被删除文本已经去掉了的电子邮件表格的一个拷贝。
在每一个页面的底部的<附加>按钮1033将当前的选择附加到这个电子邮件内容的当前末尾。整个电子邮件被用所包括的附件进行打印。
另外的页面被自动地增加到这个电子邮件来包括更多的附件。附件可以包括在任何网页上所选择的任何资料。
在这个电子邮件表格的第一页面的顶部上、与<接收人>和<拷贝接收人>字段1026,1027相邻的<增加接收人>按钮1034引出了一个增加接收人的表格1036(图62),其中这个<主题>字段1028反映了这个电子邮件表格的主题。在增加接收人表格上的这个<电子邮件>和<被选择的电子邮件>按钮1024,1025引出了这个电子邮件表格的一个拷贝,其中增加了附加的接收人和拷贝接收人。
在每一个页面的底部的这个<发送>按钮1035发送整个电子邮件。如果任何接收人的名字不被这个***知道,然后,就重新打印这个电子邮件表格,并且用红色来打印不被***知道的这些名字和表示这个问题的一个错误消息。
如果任何接收人的名字是不完全确定的,然后,就打印一个匹配用户的列表,每一个有一个选择框以允许它被选择。在这个表格的底部的这个<电子邮件>按钮重新打印这个电子邮件表格,而接收人的名字被进行了合适的更新。
整个电子邮件用户接口流被显示在图58中。电子邮件接收例程用户接口流被显示在图59中。
9.2.2 接收电子邮件
电子邮件是被用一个进入电子邮件的文档1040(图63,和64)的形式而被接收的,进入电子邮件的页面结构和内容与相应往外发送电子邮件表格的页面结构和内容是相同的。
在这个电子邮件文档的每一个页面的底部的这个<回复>按钮1041产生将发送给这个进入电子邮件的发送者的一个往外发送电子邮件表格(图60和61),并且其主题反映了进入电子邮件的主题,但是其前缀增加了“回复:”。
这个<回复所有的>按钮1042产生将被发送到这个进入电子邮件的发送者,其所有的接收人和拷贝接收人的一个往外发送电子邮件表格。
这个<转发>按钮1043产生不带接收人的一个往外发送电子邮件表格,并且其主题反映了这个进入电子邮件的主题,但是其前缀增加了“被转发的:”。进入电子邮件的内容也被拷贝到这个往外发送电子邮件的内容中。
这个<转发到联系人>按钮1044产生,但是不打印一个往外发送的电子邮件,其处理方法与这个<转发>按钮相同,并且然后隐含地调用关于它的<增加接收人>命令。这使用通常的方法引出一个增加接收人表格(图62),其<主题>字段反映了被转发电子邮件的主题。
这个<增加到联系人中>的按钮1045将这个发送者增加到联系人的接收人列表中,并且产生反映这个被更新联系人列表的一个编辑联系人表格。在部分9.2.3中更详细地描述了联系人列表编辑。
这个<禁止>按钮1046将这个发送者增加到被禁止用户的接收人列表中,并且产生反映这个被更新的禁止用户列表的一个编辑被禁止用户表格。在部分9.2.5中更详细地描述了被禁止用户列表编辑。
9.2.3 编辑联系人列表
使用这个编辑联系人表格1050(图66)来编辑这个联系人列表。因为一个独立的联系人组的结构是与最顶层联系人列表的结构相同,所以使用相同的表格来编辑一个联系人组。通过按下帮助页面上的这个<编辑联系人列表>按钮来获得这个表格。无论何时一个联系人被增加到这个联系人列表时,例如,当按下一个进入电子邮件1040上的这个<增加到联系人列表中>按钮1045来将这个发送者增加到联系人列表中时,也打印这个表格。
在这个联系人列表表格上的每一个表目1051显示了关于这个联系人1052的名字,和从这个联系人发送来的电子邮件被保存在其中的当前电子邮件目录1053。每一个表目具有一个选择框1054,它允许这个联系人可以被选择,每一个表目具有引出关于这个用户的一个信息页面(图77)的一个<信息>按钮1055,和允许与这个联系人相关的这个电子邮件目录可以通过设置电子邮件目录表格(图68)而被改变的一个<设置电子邮件目录>。
在这个表格底部的<删除被选择的>按钮1057删除从这个联系人列表中所选择的联系人(或者联系人组)。在被删除的联系人被去除后,重新打印这个表格。
在这个表格底部的<拷贝到组>和<移动到组>按钮1058,1059允许被选择的联系人可以通过这个拷贝联系人表格1060(图67)被拷贝到和移动到一特定组中。
这个联系人列表编辑用户接口流被显示在图65中。
这个拷贝(移动)联系人表格列表出了在这个用户的联系人列表中的所有组,每一个具有一个<拷贝到>(<移动到>)按钮,这个按钮是用于将被选择的联系人拷贝(移动)到规定的组。当一个<拷贝到>(<移动到>)按钮被按下时,一个编辑联系人表格被打印,它显示了目的组的被更新成员关系。
这个<拷贝>(<移动>)联系人表格1060提供了带一个相关的<拷贝到新的>(<移动到新的>)按钮1062的一个<新组名字>字段1061。这允许一个新组可以被同时产生,并且也被选择作为拷贝或者移动的目的地。
这个设置电子邮件目录表格1070(图68)列表出了在这个用户的邮箱中的所有目录,每一个带一个<设置>按钮1071,该按钮将这个目录设置为这个联系人的电子邮件目录。当按下了这个<设置>按钮时,就重新打印这个编辑联系人表格来反映与这个联系人相关的新目录。
这个设置电子邮件目录表格1070提供了带一个相关的<设置新的>按钮1073的一个<新电子邮件目录名字>字段1072。这允许一个新的目录同时被产生并且被选择作为这个联系人电子邮件的目录。这个新的目录具有一组相关的选择框1074,它们允许规定这个目录的电子邮件的发送选项。
9.2.4 列表邮箱
这个用户的邮箱内容被使用邮箱表格1080(图70)和电子邮件目录表格1090(图71)来进行列表显示。这个邮箱表格列表出了所有的用户电子邮件目录1011,每一个电子邮件目录具有一组选择框1081,它们反映了这个目录的电子邮件的发送选项并且允许改变发送选项。每一个目录表目也具有一个选择框1082以允许这个表目被选择。在每一个目录名字后面的这个<计数>按钮1083指出了在这个目录中没有被打印的(即,没有被阅读的)电子邮件的数目。
在这个表格的底部的<删除被选择的>按钮1084从这个邮箱中删除所有被选择的目录。在被删除目录被去掉后,这个邮箱表格被重新打印。
在这个表格的底部的<更新选项>按钮1085应用任何通过选择框而做的对目录发送选项的改变。
每一个目录表目也具有一个<列表>按钮1086,它通过电子邮件目录表格1090(图71)而列表出这个目录的内容。
这个邮箱列表用户接口流被显示在图69中。
这个电子邮件目录表格1090列表出了这个目录中所有的电子邮件。每一单行电子邮件表目1091显示了这个电子邮件的发送者1092,这个电子邮件的主题1093,和这个电子邮件所接收的日期和时间1094。这个列表可以通过发送者,主题,或者日期和时间进行排序。不是当前排序列的每一个列可以有一个<排序>按钮1095来允许这个列表被用这个列进行排序。当一个<排序>按钮被按下时,这个电子邮件目录被用选择的列进行排序并且重新打印这个表格。
在一个电子邮件是对另一个电子邮件的回复邮件的地方,这个进行回复的电子邮件的主题是相对它进行回复的这个电子邮件的主题而进行确定的。这样,一个讨论的每一个脉络均很清楚可见。关于从来没有被打印的电子邮件的表目被以粗体进行打印以引起用户的注意。
每一个电子邮件表目具有一个选择框1096来允许它被选择,并且也具有一个打印按钮1097来允许整个电子邮件被以一个进入电子邮件的形式而被打印(图63和64)。
在这个表格的底部的<删除被选择的>按钮1098删除目前选择的电子邮件。在被删除电子邮件被去掉后,这个电子邮件表格被重新打印。
在这个电子邮件目录的底部的<拷贝被选择的>和<移动被选择的>按钮1099,1100允许当前被选择的电子邮件通过拷贝电子邮件表格1110(图72)被拷贝到或者移动到一个不同的电子邮件目录。
这个拷贝(移动)电子邮件1110表格列表出了在这个用户的邮箱中的所有目录1011,每一个具有一个<拷贝到>(<移动到>)按钮1111,这个按钮是用于将被选择的电子邮件拷贝(移动)到规定的目录。当一个<拷贝到>(<移动到>)按钮被按下时,一个电子邮件目录表格被打印,它显示了目的目录的被更新内容。
这个<拷贝>(<移动>)电子邮件表格1110提供了带一个相关的<拷贝到新的>(<移动到新的>)按钮1113的一个<新电子邮件名字>字段1112。这允许一个新的目录可以被同时产生,并且也被选择作为拷贝或者移动的目的地。这个新的目录具有一组相关的选择框1114,它们允许规定这个目录的电子邮件的发送选项。
9.2.5 编辑禁止用户列表
通过这个编辑禁止用户表格1120(图74)来编辑这个禁止用户列表。这个表格1120是通过按下帮助页面上的这个<编辑禁止用户列表>的按钮来获得的。无论何时一个用户被禁止,例如,当按下一个进入电子邮件1040上的这个<禁止>按钮1046来将这个发送者增加到禁止用户列表中时,它也被重新打印。
这个表格列表出了这个用户的禁止用户列表1017中的所有用户1121。每一个具有一个选择框1122来允许它被选择。
在这个表格的底部上的<不禁止被选择的>按钮1123将被选择的用户从禁止用户列表中删除掉。当被删除的用户去掉后,重新打印这个表格。当一个用户被这个列表中删除时,这个用户就不再被禁止。
禁止用户编辑用户接口流被显示在图73中。
9.2.6 全局用户目录
因为这个全局用户目录很大,所以是通过一个目录索引(如前面在部分8中所描述的)而进行导航的。通过按下帮助页面上的<全局用户目录>来获得全局用户目录。
全局用户目录页面1130(图76)包括用户的一个字母列表,是用户的姓,名字的范围是这个页面所能够容纳的大小。每一个表目具有3个相关的按钮。这个<信息>按钮1133产生一个用户信息页面(图77),<电子邮件>按钮1134产生发送到这个相应用户的一个往外发送电子邮件表格1020(图60和61),<增加到联系人列表中>按钮1135将这个用户增加到用户的联系人列表中并且打印被更新的联系人列表1050(图66)。
这个全局用户目录页面1130也包括标准的索引导航按钮1136。
这个全局用户目录用户接口流被显示在图75中。这个索引用户接口流和相关的页面布局如前面所描述的。
这个用户信息页面1140(图77)包括在用户注册期间所提供的用户联系细节,并且这受用户私密性优选项的限制和处理。它也包括<电子邮件>和<增加到联系人列表中>按钮1141,1142,它们的工作方式是一般的工作方式。
如果这个用户信息页面是通过关于一个互联网联系人的联系人列表(与一个网页联系人不同)而被打印的,就仅包括这个<互联网电子邮件地址>字段1143。
9.2.7 增加互联网联系人
一个互联网电子邮件用户可以使用这个互联网联系人注册表格1170(图79)被增加到一个用户的联系人列表中。因为一个互联网用户的其它方面是不被这个网页***所知道的,所以除了规定互联网用户的电子邮件地址1172外,这个表格允许规定全名字细节1171。
这个互联网联系人注册用户接口流被显示在图78中。
结束语
已经参考一个优选实施方式和一些专用的替代实施方式描述了本发明。但是,该相关领域内的技术人员将理解,一些与这些具体描述的实施方式不同的其它实施方式也可以在本发明的精神和范围内。所以,应理解,本发明不局限于在本说明中所描述的具体实施方式,包括用作参考的合适文档。本发明的范围仅局限于后附的权利要求书。