本发明实现了在诸如因特网之类的通信系统中,对电子邮件报文进行
归档、检索和存储的数据处理系统和方法。通过将电子报文转换为HTML
文件(web页),本发明的数据处理系统和方法为通信系统中的用户提供
了更大的灵活性。通过以web页的方式存储电子邮件报文,各邮件报文可
以成为采用上述HTML格式的“web”页中的一个web页或一组web页。
请注意,由于可以在web页格式中嵌入其他语言或协议,所以并不要求按
HTML格式放置整个报文。例如,在本发明的其他实施方式中,可以将部
分报文转换为嵌入式MIME类型。此外,由于在本发明某种实施方式中,
本发明的数据处理系统和方法是基于HTML标准的,所以本发明允许利用
在文件上或WWW上使用的任何工具,如搜索引擎,来访问电子报文档案。
由于以上可访问性允许本发明运用web用户使用的技术与工具,而无需修
改档案格式,所以以上可访问性是非常有用的。
此外,请注意,本发明实现了在以外部用户的要求为特征的存储空间
中,组织电子邮件报文以及其他HTML文件的数据处理系统和方法。以上
存储空间能够为存储因特网或其他通信网络内的HTML文件提供方便的、
易于识别的方式。在本发明的一种实施方式中,可以以文件夹的方式实现
以上存储空间。因此,本发明允许用户以非常自然的、易于导航的方式共
享电子邮件报文档案。具体而言,如同轻而易举地浏览web站点一样,本
发明允许经过浏览,共享以上档案。如上所述,可以采用任意的web浏览
器。此外,由于浏览器几乎可用于每种操作系统平台,并不要求共享档案
的所有用户安装相同的软件平台。此外,可以在用户期望的精细级别实现
共享。例如,用户可以访问某个完整档案、某个档案内的一组报文、单个
报文、甚至是单个报文的一部分。
在本发明的数据处理系统和方法的实施期间,将对每段电子邮件指派
相应的URL。在本发明的一种实施方式中,根据包含报文的分类,生成邮
件报文或部分邮件报文的URL。此外,在本发明的一种实施方式中,可以
采用超链接技术,将用于存储各段邮件、邮件报文本身、部分邮件报文、
甚至邮件报文中嵌入的URL的分类,链接到其他分类,从而形成有用的、
灵活的索引以及交叉引用功能。此外,以web页的方式组织电子报文,允
许用户运用网络浏览器,如Mosaic与Netscape Navigator,的全部功能来
访问、使用电子邮件报文。以下将详细说明本发明的实现以及使用。
在详细说明本发明之前,将简要概括本发明的运行环境。此外,在以
下说明中,将陈述众多具体细节,以便充分理解本发明。然而,熟练的技
术人员清楚,无需以下具体细节,也能够实施本发明。在其他实例中,利
用框图表示众所周知的电路,以避免本发明被不必要的细节弄得模糊不
清。省略了有关定时考虑等的细节,这是由于无需这些细节就能够全面理
解本发明,并且相关领域的一般技术人员了解这些细节。
现在参看附图,其中无需按比例表示所绘部件,并且在所有视图中利
用相同参数表示相同部件或相似部件。
图2表示因特网中通常采用的基于客户-服务器模式的通信网络。对图
2予以讨论和说明,以便说明采用本发明的因特网的环境。
理论上,因特网是一个包括“服务器”210的大网络,其中“客户”
212可以访问各个服务器210。众多客户212中的每个客户通常为个人计算
机用户。客户212经由专用因特网访问提供商(如Internet AmericaTM)或
在线服务提供商(如America On-LineTM,AT&T WorldNetTM等),访
问因特网。各客户212可以在“浏览器”上运行,浏览器是经由访问提供
商(214和216)访问服务器(210)的众所周知的软件工具。各服务器
210选择控制某个“web站点”,web站点支持文件格式和页格式的文件。
利用统一资源定位符(URL)确定到达服务器的网络路径,其中URL具
有定义网络连接的众所周知的语法。
如上所述,WWW是因特网上采用超文本传输协议(HTTP)的服务
器的集合。HTTP是一种众所周知的应用程序协议,该协议允许用户访问
采用标准页面描述语言的文件,其中标准页面描述语言称为超文本标注语
言(HTML)。清注意,文件可以为不同的格式,如文本、图形、图象、
声音、视频以及其他格式。HTML提供基本的文件组织格式,并允许开发
者指定与其他服务器或文件的“链接”。使用与HTML兼容的客户浏览器
包括利用URL指定某个链接。一旦指定了URL,客户212中的某个客户
就可以向该链接中确定的众多服务器210中的某个服务器发出TCP/IP请
求,然后接收web页(具体而言,根据HTML格式组织的文件)。
图3表示数据处理器300,可以利用该数据处理器实现“客户”
(212),客户212执行本发明的方法。数据处理系统300包括一个中央
处理器(CPU)310,如微处理器。CPU 310经由系统总线312与其他
组件相连。只读存储器(ROM)316与系统总线312相连,ROM 316
包括基本输入/输出系统(BIOS),BIOS控制数据处理系统300的某些
基本功能。随机访问存储器(RAM)314,I/O适配器318以及通信适
配器334均与系统总线312相连。I/O适配器318可以为小型计算机系统
接口(SCSI)适配器,SCSI适配器与磁盘存储设备320进行通信。通信
适配器334互连带有外部网络的总线312,以使该数据处理系统与其他系
统进行通信。输入/输出设备经由用户接口适配器322和显示适配器336,
与系统总线312相连。键盘324、跟踪球332、鼠标326以及扬声器328
经由用户接口适配器322与总线312互连。利用显示适配器336将显示监
视器338连接到系统总线312。这样,用户能够通过键盘324、跟踪球332
或鼠标326实现对系统的输入,而利用扬声器328和显示器338接收系统
的输出。
可以利用数据处理系统300的CPU 310执行语法分析软件子例程
350,也可以利用独立电路装置实现语法分析。请注意,在计算机程序设计
中频繁使用语法分析程序,并且可以将语法分析程序概括定义为:为了确
定下一步程序处理所需元素而扫描输入流的软件程序或程序子系统。
语法分析程序的一个例子为命令串处理程序。为了详细说明语法分析
程序,假设某个外部用户在DOS提示符下输入了以下内容:
DIR D:/MYDARA/P
语法分析程序将读取以上输入,并向下一步骤或执行程序的子系统提
供以下信息:
命令=“DIR”
参数=“D:/MYDATA”
选项=“P”
在下一步骤中,激活某个程序以实现“DIR”命令。然后,语法分析程
序将剩余数据(即参数与选项)传递给该程序,从而使该程序在称为“D:”
的驱动器上扫描名为“MYDATA”的目录,并且每显示一页信息就暂停一次
(“/P”选项)。此外,采用诸如AIX(“AIX”为IBM公司的一个商标)
的操作系统协调图3所示的各种组件的功能。
在操作期间,CPU310还运行与浏览器352有关的软件,以便执行各
种功能,其中包括根据本发明之某种实施方式访问、搜索电子邮件报文,
以下将详细说明。如上所述,浏览器为用于访问WWW上文件的某类计算
机程序的公用名称。在本发明中,浏览器352利用HTTP协议,与称为HTTP
服务器、HTTP精灵或Web服务器的程序进行通信,其中这些程序管理
WWW文件。浏览器以HTTP流的方式接收该浏览器请求的文件,抽取包
含在该HTTP流中的HTML文本,解释HTML协议,并在本地显示设备
上显示以上结果。
此外,在经由网络接收信息中,CPU 310依靠某些协议,向语法分析
程序350以及浏览器352提供合适数据。请注意,协议为定义某个方法的
规则集,通过协议两个实体以精确的、正式的方式进行通信。在本发明中,
软件协议包括用于在网络上可靠传送数据包的TCP/IP协议,在浏览器352
与Web服务器之间进行通信的HTTP协议,以及多种具有专用属性的协
议,如Lotus NotesTM所使用的具有专用属性的协议。
本发明的某些实施方式包括以下装置,即执行本文所述方法的计算机
系统程序装置以及计算机程序产品装置。根据计算机系统装置,执行以上
方法的指令集驻留在上述概括配置的一台或多台计算机系统的RAM 314
中。在计算机系统需要该指令集之前,可以在另一计算机存储器中以计算
机程序产品的方式存储该指令集。例如,存储在盘驱动器320中(盘驱动
器320可以包括诸如光盘或软盘之类的可拆卸存储器,以便最终在盘驱动
器320中使用)。
此外,可以在另一台计算机中存储以上计算机程序产品,并在需要时,
就以计算机可读介质的方式,经由网络或诸如因特网之类的外部网络,传
送到用户的工作站。熟练的技术人员懂得,指令集的物理存储将改变存储
该指令集的介质的物理属性,以使该介质含有计算机可读信息。以上改变
可以是电气的、磁性的、化学的或其他物理变化。尽管指令、符号、字符
等等术语适宜于说明本发明,读者应当牢记,应将以上术语和类似术语与
适当的物理组件联系起来。
请注意,本发明描述了可能与操作员有关的诸如比较、验证、选择之
类的术语或其他术语。然而,至少本文所述的构成部分本发明的许多操作,
并不需要操作员的动作。上述操作大部分为处理电信号以生成其他电信号
的机器操作。
以下详细说明本发明的操作。参照图4,图4为一流程图,该图表示
本发明某一实施方式所实现的接收、存储和归档电子邮件报文的方法。在
图3所示的数据处理系统300的某个组件的控制下,执行图4所执行的每
一步骤。
在CPU 310的控制下,在步骤402启动对电子邮件报文进行检索、存
储和归档的方法。然后,在步骤404,经由通信适配器334从因特网上的
某资源检索报文。请注意,在图3中,“网络”泛指因特网。
在步骤406,CPU310通过检查报文标题或报文内容,确定检索的报
文是否为HTML格式。CPU 310通过使用语法分析程序350执行语法分
析操作,完成以上确定,其中在语法分析中扫描入站报文以便确定该报文
是否为HTML文件。为了实现步骤406的语法分析技术,由CPU 310执
行的翻译程序(354)检查邮件的标题或邮件数据内容中的标记符,以确
定该邮件的格式。请注意,常规因特网上电子邮件使用字段,所以本发明
分析该字段,以在HTML格式中检测报文是否出现。如果该报文不为
HTML格式,在步骤408,CPU 310就将该报文转换为HTML格式。附
录A提供了转换操作的示例。
请注意,诸如Netscape MailTM之类的应用程序允许用户采用HTML
格式发送电子邮件报文。在Netscape Messenger中,实现了在内联网和因
特网上传送电子邮件报文的应用程序。在Network ComposerTM中集成了该
应用程序,从而允许用户创建举止为web页的电子邮件报文,其中该web
页是利用图形、图象、甚至Java小应用程序实现的。Network Composer
所提供的编辑处理,允许Netscape Messenger应用程序发送看起来象web
页并且举止为web页的电子邮件报文。然而,这些现有技术的应用程序不
能按照本发明所推荐的形式,提供有效的组织能力。
此外,Lotus DominoTM应用程序提供以上转换技术。当Lotus
DominoTM应用程序中的用户请求非HTML格式的文件时,Lotus
DominoTM应用程序就将该文件转换为HTML格式,以便用户浏览。
在以HTML格式接收了该报文或将该报文转换为HTML格式之后,
CPU 310在步骤410访问语法分析程序350,对接收到的报文进行语法分
析,以发现其中嵌入的URL。CPU 310通过对检索到的报文进行语法分
析来检测前缀“http”的出现,就能够确定URL的出现。表示URL出现
的其他前缀还包括“ftp”和“gopher”。在对报文中的嵌入式URL进行
了语法分析之后,CPU 310在步骤412提供数据和控制信号,以便以适当
方式显示该报文。
用于显示该报文的适当方式取决于所提供的报文类型(即,电子邮件、
数字页、来自蜂窝电话的短信息)。例如,CPU 310可以经由系统总线312
向显示适配器336提供适当的数据和控制信号。随后显示适配器336使显
示设备338向用户显示电子邮件报文的正文。另一方面,CPU 310能够向
相关领域技术人员熟知的寻呼适配器、蜂窝电话适配器以及图3并未示出
的其他类似设备,提供适当的数据和控制信号。一旦接收到数据和控制信
号,寻呼适配器就发出音响提示,并显示与该报文有关的电话号码。同样,
蜂窝电话能够发出音响提示,显示电话号码或根据短信息服务显示报文。
在步骤412浏览该报文之后,CPU 310执行步骤414,以便对正在浏
览的报文选择添加细目。正如本文所用,细目功能类似于“书签”或文件
段落标识符。可以利用自动或非自动的方法向报文“添加”细目。当采用
非自动方式向报文添加细目时,用户只需在该报文内的适当位置添加一个
“超链接”。
为了添加超链接,只需使用与用户接口适配器322相连的鼠标326或
其他用户输入设备指出以上细目,随后将该细目传送到CPU 310。请注意,
通过高亮度显示超链接,或者通过指向显示报文中的超链接文本,抑或通
过其他众所周知的访问方法,指出以上细目。另一方面,可以使选择细目
手工操作以及指出需要在其中插入超链接的手工操作自动化,从而外部用
户一旦确定,就可以立即添加细目。请注意,在本发明的其他实施方式中,
可以根据预定准则自动检测细目。例如,一旦在HTML文件的“标题”部
分检测到某些信息,就自动插入细目。当用户指出需要添加细目时,CPU
310就提供必要的数据和控制信号,以便在与该电子报文有关的HTML代
码中插入链接标识符。例如,与细目1和细目2有关的链接分别表示为:
<a name=“细目1”>…</a>和
<a name=“细目2”>…</a>
如果将所有细目添加到报文中,CPU 310就生成各细目的后缀,随后
使用该后缀完善与各细目相对应的URL。在图4中的步骤416生成所有后
缀。请注意,用户或程序员可以选择与细目有关的名称,该名称并不限于
本例中所提供的“细目”。
在将用户需要的所有细目添加到报文中之后,用户可以在步骤418选
择或创建分类,以便存储所接收的报文。分类可以包括外部用户选择的用
于组织目的的主题或标识符。如果用户接收到与新主题相对应的报文,则
该用户可以选择采用众所周知的技术(本文将不予详细说明)来创建分类。
在确定了放置该报文的分类之后,或者在创建了放置该报文的新分类之
后,在步骤420将该报文存储到存储器中。存储器可以为数据处理系统300
的本地存储器,或者为远程服务器上与该用户相对应的存储器。随后,用
户为了生成与电子邮件报文相对应的web页而正在访问的web站点,生成
与该报文相对应的URL。
根据下面说明的标准协议生成以上URL。假设将第一报文(MSG 1)
传送到因特网服务器(214,216),其中将因特网服务器称为
“MYSERV”。在该服务器内,在称为“MYMAIL”的位置存储与该用
户相对应的邮件。当利用本地网络或网络互连将MSG 1传送到MYSERV
时,MYSERV将MSG 1的数据存储在MYMAIL存储位置。服务器最终
生成的URL为:
http://MYSERV/MYMAIL/MSG1
接着,在步骤424,完成细目的URL。此时,将先前在步骤416生成
的后缀添加到在步骤422生成的URL中。因此,对于“细目1”,最终生
成的对应细目的URL具有以下形式:
http://MYSERV/MYMAIL/MSG1/#subsection1
此外,如果MSG 1具有第二细目,则对应细目的URL为:
http://MYSERV/MYMAIL/MSG1/#subsection2
服务器(MYSERV)根据所存储报文(MSG 1)的URL,自动生
成所有细目的URL。
接着,在步骤426,将以上URL添加到存储在某存储器中的索引中,
CPU 310可以访问该索引,也可以向外部用户显示该索引。在步骤428,
CPU 310确定是否接收到新的报文。如果接收到新报文(步骤430),就
检索该报文,程序流程返回到步骤404。然而,如果没有接收到新报文,
就执行延迟步骤432,程序流程返回到步骤428。
图5表示根据本发明某一实施方式创建并在用户显示设备上显示的示
例索引。在第一索引,即Robert的索引502中,将所有报文划分为两个主
题。将所有主题统称为“Robert的报文主题1”和“Robert的报文主题
2”。在第一主题(主题1)内,对四个报文附加索引。此外,请注意,
利用三个细目标识报文3。上面已经详细论述了细目的生成过程。
此外,参照索引502所示第二主题。在该主题内,对报文5附加索引。
此外,报文5标识了与其他web页或其他文件的“N”个链接。通过检测
该报文内嵌入的URL,可以创建以上链接,从而使索引502的外部用户能
够利用通信网络检索其他文件。
此外,参照Beth的索引504。该索引是为本发明某一实施方式内的第
二外部用户创建的第二索引。然而,请注意,根据用户的需要或意愿一个
用户可以具有一个以上的索引。在Beth的索引504内,存储了有关“Robert
的主题2”的某些报文。该索引涉及与索引502中“Robert的报文主题2”
相对应的URL。此外,Beth的索引504涉及各主题(见508)内的独立
报文,并且涉及某主题(510)内某些报文的独立部分。
用户可以以灵活的方式使用上述各索引以及图5中的索引,以便
借助易于使用的众所周知的因特网搜索技术,利用索引界面访问、搜索报
文,其中索引界面能够以直观的、用户友好的方式,轻易地表示报文、报
文的细目以及相应的链接。因此,通过将用户接收到电子报文转换为HTML
文挡或web页,本发明实现了以下数据处理系统和方法,该数据处理系统
和方法允许用户生成足以满足该用户所有需求的复杂索引模式,而并不要
求用户依赖特定协议。事实上,由于可以以web页的方式实现所有报文,
因此,可以将浏览web页的新应用程序以及为因特网准备的新语言应用于
现有结构中。
以下将说明根据本发明对示例报文附加索引的过程。在该例中,将说
明对接收到的报文进行的逐步分析以及其在用户系统内的存储。
假设接收到以下电子邮件报文:
收件人:Beth
发件人:Robert
主题:有关专利的白皮书
嗨,
以下是专利白皮书的草案。
希望你喜欢。;-)
Robert
************************
撰写专利申请
摘要:
撰写专利申请是一件费时但值得做的工作。将该任务分解为若干子任
务是处理该工作的有效工具。
目录
摘要
目录
第一章-启动
第二章-出发
第三章-继续
第四章-不要停止
第五章-几乎完成
第六章-完成
附录A-找律师谈话
词汇表
索引
第一章-启动
最好从头开始。
第二章-出发
沿黄砖路前进。
第三章-继续
重复:沿黄砖路前进。
第四章-不要停止
前进、前进、前进、前进、沿黄砖路前进!
第五章-几乎完成
我们去看巫师,OZ的好蜥蜴。
第六章-完成
抬起脚,拿杯咖啡,找本好书,把身体蜷作一团。
附录A-找律师谈话
并不难。尽管还要专心于以下几件事情:
1.抓住要点。光阴似箭
2.不要作不能信守的诺言
3.当书写通信地址时,不要忘记姓名后的先生
4.切记:律师的玩笑平淡无味。他们可能会使你从错误的起点开始,并
且可能毁灭你在专利局的机会。
索引
苹果
申请
香蕉
书
鸡
蜥蜴
巫师
随后,将以上报文转换为HTML文件(见附录A)。在以下示例中,
用下划线表示HTML文件与电子邮件之间的区别。HTML文件具有如下
形式:
<!DOCTYPE HTML PUBLIC“-//W3C//DTD HTML 3.2
Final//EN”>
<HTML>
<HEAD>
<TITLE>有关专利的白皮书</TITLE>
<BODY>
<ADDRESS>
收件人:<A HREF=“mailto:bapperle@winstead.com”>Beth</A>
<BR>
发件人:<A HREF=“mailto:tycast@us.ibm.com”>Robert<A><BR>
主题:有关专利的白皮书<BR>
</ADDRESS>
<PRE>
嗨,
以下是专利白皮书的草案。
希望你喜欢。;-)
Robert
************************
撰写专利申请
摘要:
撰写专利申请是一件费时但值得做的工作。将该任务分解为若干子任
务是处理该工作的有效工具。
目录...
到达结尾之前的正文相同,在结尾插入以下HTML代码:
<PRE>
</BODY>
<HTML>
接着,服务器生成该报文的URL,其URL具有如下形式:
http://www.mailserver.bethscompany.com/mailboxes/beth/msg0001
然后,在本发明的数据处理系统的主存储器中保存该URL,以备
后用。假设随后向外部用户显示该报文。如果用户决定启动自动功能以便
向该报文添加细目,读者就从本发明某种实施方式的选择菜单中选择“自
动索引”功能。随后,用户系统将扫描该报文,查找可以识别的功能,以
便附加索引。最终生成具有以下形式的索引文件。为了强调自动索引版本
与先前版本之间的差别,本文采用下划线表示两个版本之间的差别。
<!DOCTYPE HTML PUBLIC“-//W3C//DTD HTML 3.2
Final//EN”>
<HTML>
<HEAD>
<TITLE>有关专利的白皮书</TITLE>
</HEAD>
<BODY>
<ADDRESS>
收件人:<A HREF-“mailto:bapperle@winstead.com”>Beth</A>
<BR>
发件人:<A HREF=“mailto:tycast@us.ibm.com”>Robert<A><BR>
主题:有关专利的白皮书<BR>
</ADDRESS>
<PRE>
嗨,
以下是专利白皮书的草案。
希望你喜欢。;-)
Robert
************************
撰写专利申请
摘要:<a name=“摘要”></a>
撰写专利申请是一件费时但值得做的工作。将该任务分解为若干子任
务是处理该工作的有效工具。
目录<a name=“目录”></a>
摘要
目录
第一章-启动
第二章-出发
第三章-继续
第四章-不要停止
第五章-几乎完成
第六章-完成
附录A-与专利代理人一起工作
词汇表
索引
第一章-启动<a name=“第一章-启动”></a>
最好从头开始。
第二章-出发<a name=“第二章-出发”></a>
沿黄砖路前进。
第三章-继续<a name=“第三章-继续”></a>
重复:沿黄砖路前进。
第四章-不要停止<a name=“第四章-不要停止”></a>
前进、前进、前进、前进、沿黄砖路前进!
第五章-几乎完成<a name=“第五章-几乎完成”></a>
我们去看巫师,OZ的好蜥蜴。
第六章-完成<a name=“第六章-完成”></a>
抬起脚,拿杯咖啡,找本好书,把身体蜷作一团。
附录A-与专利代理人一起工作<a name=“附录A-与专利代理人一起
工作”></a>
并不难。尽管还要专心于以下几件事情:
1.)抓住要点。光阴似箭
2.)不要作不能信守的诺言
3.)当书写通信地址时,不要忘记姓名后的先生
4.)切记:律师的玩笑平淡无味。他们可能会使你从错误的起点开始,
并且可能毁灭你在专利局的机会。
词汇表<a name=“词汇表”></a>
苹果
香蕉
鸡
母牛
狗
索引<a name=“索引”></a>
苹果
申请
香蕉
书
鸡
蜥蜴
巫师
</PRE>
</BODY>
<HTML>
此时,用户系统已经扫描了该报文,确定并“标记”了包括章节、附
录等适当项目。其次,假设用户希望标记其本身的某些细目。该用户将利
用鼠标选择部分报文正文并“点击”。用户系统将利用以下对话框应答,
假设用户选择了附录A中的项目4并提供了以下答案:
细目名: Patent_Joke
分类: Joke_Lawyers
Joke_Patents
修改HTML报文(HTML)的相应部分,使其具有以下形式。请注
意,利用下划线表示先前代码与下述代码之间的区别。
并不难。尽管还要专心于以下几件事情:
1)抓住要点。光阴似箭
2)不要作不能信守的诺言
3)当书写通信地址时,不要忘记姓名后的先生
4)切记:律师的玩笑平淡无味。他们可能会使你从错误的起点开始,
并且可能毁灭你在专利局的机会。<a name=“Patent_Joke”></a>
词汇表<a name=“词汇表”></a>
苹果
香蕉
鸡
母牛
狗
索引<a name=“索引”></a>
苹果
申请
香蕉
书
鸡
蜥蜴
巫师
</PRE>
</BODY>
<HTML>
最后,假设用户决定保存该报文。为了实现该功能,用户从操作系统
实现的菜单中选择“保存”功能,并且用户的系统将采取以下步骤:
1.在URL http://www.mailserver.bethscompany.com/mailboxes/beth/
标识的存储空间中,在名为“msg0001.html”的文件中保存以上报文;
2.和步骤1一样,将以下URL“http://www.mailserver.bethscompany.
com/mailboxes/beth/msg0001.htm”添加到同一存储空间中名为
“index.html”的文件中;
3.在步骤2中的URL之后,将细目的URL直接添加到index.html中;
4.在“http://www.mailserver.bethscompany.com/mailboxes/beth/iokes
/lawyers”标识的存储空间中,在名为“index.html”的文件中保存以下形式
的URL“http://www.mailserver.bethscompany.com/mailboxes/beth/
msg0001.html/#Patent_Joke”;
5.在“http://www.mailserver.bethscompany.com/mailboxes/beth/
jokes/patents”标识的存储空间中,在名为“index.html”的文件中保存以
下形式的URL“http://www.mailserver.bethscompany.com/mailboxes
/beth/msg0001.html/#Patent_Joke”;
6.系统等待用户的下一请求。
此时,以下述方式指派索引。
主索引:http://www.mailserver.bethscompany.com/mailboxes/beth/
index.html
<!DOCTYPE HTML PUBLIC“-//W3C//DTD HTML 3.2
Final//EN”>
<HTML>
<HEAD>
<TITLE>已保存邮件</TITLE>
</HEAD>
<BODY>
<H1>已保存邮件的索引</H1>
<ul>
<li><a href=“msg00001.html”>专利申请状况</a>
<li><a href=“msg00002.html”>附加信息</a>
<li><a href=“msg0001.html”>有关专利的白皮书</a>
<ul>
<li><a href=“msg0001.html/#摘要”>摘要</a>
<li><a href=“msg0001.html/#目录”>目录</a>
<li><a href=“msg0001.html/#第一章-启动”>第一章-启动</a>
<li><a href=“msg0001.html/#第二章-出发”>第二章-出发</a>
<li><a href=“msg0001.html/#第三章-继续”>第三章-继续</a>
<li><a href=“msg0001.html/#第四章-不要停止”>第四章-不要停
止</a>
<li><a href=“msg0001.html/#第五章-几乎完成”>第五章-几乎完
成</a>
<li><a href=“msg0001.html/#第六章-完成”>第六章-完成</a>
<li><a href=“msg0001.html/#附录A”>附录A</a>
<li><a href=“msg0001.html/#词汇表”>词汇表</a>
<li><a href=“msg0001.html/#索引”>索引</a>
</ul>
</BODY>
</HTML>
当执行以上代码时,将在用户显示设备上显示以下格式的索引:
已保存邮件的索引
·专利申请状况
·附加信息
·有关专利的白皮书
。摘要
。目录
。第一章-启动
。第二章-出发
。第三章-继续
。第四章-不要停止
。第五章-几乎完成
。第六章-完成
。附录A
。词汇表
。索引
在读者保存两个附加报文之后,将以下述格式对索引进行编码:
<!DOCTYPE HTML PUBLIC“-//W3C//DTD HTML 3.2
Final//EN”>
<HTML>
<HEAD>
<TITLE>已保存邮件</TITLE>
</HEAD>
<BODY>
<H1>已保存邮件的索引</H1>
<u1>
<li><a href=“msg00001.html”>专利申请状况</a>
<li><a href=“msg00002.html”>附加信息</a>
<li><a href=“msg0001.html”>有关专利的白皮书</a>
<ul>
<li><a href=“msg0001.html/#摘要”>摘要</a>
<li><a href=“msg0001.html/#目录”>目录</a>
<li><a href=“msg0001.html/#第一章-启动”>第一章-启动</a>
<li><a href=“msg0001.html/#第二章-出发”>第二章-出发</a>
<li><a href=“msg0001.html/#第三章-继续”>第三章-继续</a>
<li><a href=“msg0001.html/#第四章-不要停止”>第四章-不要停
止</a>
<li><a href=“msg0001.html/#第五章-几乎完成”>第五章-几乎完
成</a>
<li><a href=“msg0001.html/#第六章-完成”>第六章-完成</a>
<li><a href=“msg0001.html/#附录A”>附录A</a>
<li><a href=“msg0001.html/#词汇表”>词汇表</a>
<li><a href=“msg0001.html/#索引”>索引</a>
</ul>
<li><a href=“msg0002.html”>专利补遗</a>
<li><a href=“msg0003.html”>回复:专利补遗</a>
</BODY>
</HTML>
当执行以上代码时,将在用户显示设备上显示以下格式的索引:
已保存邮件的索引
·专利申请状况 发件人:Robert Tycast日期:11/01/97
·附加信息 发件人:Robert Tycast日期:11/02/97
·有关专利的白皮书 发件人:Robert Tycast日期:11/03/97
。摘要
。目录
。第一章-启动
。第二章-出发
。第三章-继续
。第四章-不要停止
。第五章-几乎完成
。第六章-完成
。附录A
。词汇表
。索引
·专利补遗
·回复:专利补遗
请注意,以上索引显示方式是非常灵活、非常有效的。提供以上示例
的目的是为了不把本发明搞混。例如,以下提供的编码,说明了在索引中
添加其他信息(日期和发件人)的其他方式:
<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 3.2
Final//EN”>
<HTML>
<HEAD>
<TITLE>已保存邮件</TITLE>
</HEAD>
<BODY>
<H1>已保存邮件的索引</H1>
<table border cellspacing=0>
<tr>
<th>主题</th>
<th>发件人</th>
<th>日期</th>
</tr>
<tr>
<td><li><a href=“msg00001.html”>专利申请状况
</a></td><tr><A HERF=“mailto:tycast@us.ibm.com”>Robert
Tycast</A></td><td>11/01/97</td>
</tr>
<tr>
<td><li><a href=“msg00002.html”>附加信息</a></td><tr><A
HERF=“mailto:tycast@us.ibm.com”>Robert Tycast</A></td><td>
11/01/97</td>
</tr>
<tr>
<td><li><a href=“msg0001.html”>有关专利的白皮书</a>
<ul>
<li><a href=“msg0001.html/#摘要”>摘要</a>
<li><a href=“msg0001.html/#目录”>目录</a>
<li><a href=“msg0001.html/#第一章-启动”>第一章-启动</a>
<li><a href=“msg0001.html/#第二章-出发”>第二章-出发</a>
<li><a href=“msg0001.html/#第三章-继续”>第三章-继续</a>
<li><a href=“msg0001.html/#第四章-不要停止”>第四章-不要停
止</a>
<li><a href=“msg0001.html/#第五章-几乎完成”>第五章-几乎完
成</a>
<li><a href=“msg0001.html/#第六章-完成”>第六章-完成</a>
<li><a href=“msg0001.html/#附录A”>附录A</a>
<li><a href=“msg0001.html/#词汇表”>词汇表</a>
<li><a href=“msg0001.html/#索引”>索引</a>
</ul>
</td><td><A HERF=“mailto:tycast@us.ibm.com”>Robert Tycast
</A></td><td>11/03/97</td>
</tr>
<tr>
<td><li><a href=“msg0002.html”>专利补遗</a></td><td><A
HREF=“mailto:tycast@us.ibm.com”>Robert Tycast</A></td><td>11/04
/97</td>
</tr>
<tr>
<td><li><a href=“msg0003.html”>回复:专利补遗</a></td><td><A
HREF=“mailto:tycast@us.ibm.com”>Robert Tycast</A></td><td>
11/04/97</td>
</tr>
</table>
</BODY>
</HTML>
当执行以上提供的代码时,将在显示设备上向外部用户提供以下索
引:
已保存邮件的索引
主题
发件人
日期
专利申请状况
Robert Tycast
11/01/97
附加信息
Robert Tycast
11/02/97
有关专利的白皮书
。摘要
。目录
。第一章-启动
。第二章-出发
。第三章-继续
。第四章-不要停止
。第五章-几乎完成
。第六章-完成
。附录A
。词汇表
Robert Tycast
11/03/97
。索引
专利补遗
Robert Tycast
11/04/97
回复:专利补遗
Robert Tycast
11/04/97
此外,请注意,读者只需点击适当正文就能够访问任意报文或细目。
通过点击“发件人”字段中的姓名就能够发送回复报文。
类似创建其他档案的索引。例如,在上述示例中,当保存某些“玩笑”
信息时,将由下述URL标识保存着以上信息的文件:
http://www.mailserver.bethscompany.com/mailboxes/bethapperley/j
okes/index.html
位于该部分的代码将具有下述形式:
<!DOCTYPE HTML PUBLIC“-//W3C//DTD HTML 3.2
Final//EN”>
<HTML>
<HEAD>
<TITLE>玩笑</TITLE>
</HEAD>
<BODY>
<H1>玩笑的索引</H1>
<ul>
<li><a href=“律师/index.html”>律师</a>
<li><a href=“专利/index.html”>专利</a>
</ul>
</BODY>
</HTML>
请注意,在以上代码中,读者可以点击“律师”或点击“专利”来浏
览该档案的内容。此外,假设读者决定点击“律师”正文。该读者将访问
以下URL标识的文件:
“http://www.mailserver.bethscompany.com/mailboxes/beth/jokes/law
yers/index.html”
当访问该索引时,将检索到以下代码:
<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 3.2
Final//EN”>
<HTML>
<HEAD>
<TITLE>玩笑/律师</TITLE>
</HEAD>
<BODY>
<H1>玩笑/律师的索引</H1>
<ul>
<li><a href=“oldjokel.html”>先前保存的玩笑#1</a>
<li><a
href=http://www.mailserver.bethscompany.com/mailboxes/beth/msg
0001.html/
#Patent_Joke”>Patent_Joke</a>
</ul>
</BODY>
</HTML>
请注意,以上是在由“律师”标识的存储空间中存储完整记录(玩笑
#1)而并不存储“Patent_Joke”的示例,其中“Patent_Joke”是“有
关专利的白皮书”的一部分。而用于访问存储空间的URL又指回到原始报
文中标识的存储段。对于称为“专利”的文件夹,情况大致相同。这里不
作更详细的说明。然而请注意,对于该档案,将共享称为“Patent_Joke”
的原始报文中的相同段。
附录A
其他操作示例
示例A
在以下示例中,假设某用户接收到一个电子邮件报文。如上所述,电
子邮件报文包括字母数字字符。如果该报文实际上是以HTML方式编码
的,通过扫描第一行就能够轻易检测出该报文,第一行特定地以
<!DOCTYPE>说明开始,后跟HTML部分,HTML部分包括HEAD部
分和BODY部分。下面是该中电子邮件报文的示例:
<!DOCTYPE HTML PUBLIC“-//W3C//DTD HTML 3.2
Final//EN”>
<HTML>
<HEAD>
<TITLE>HTML文件样本</TITLE>
...其他标题部分
</HEAD>
<BODY>
...文件体
</BODY>
</HTML>
此外,如果该报文不是采用HTML格式书写的,通过正确插入必要的
主题字段来包装其字母数字内容,就能够转换该报文。例如,假设发送了
以下电子邮件报文:
收件人:Beth
发件人:Robert
主题:信息
嗨,
我还有一些信息。
此致
Robert
为了利用必要字段包装以上字母数字内容,CPU 310将以下封皮
(wrapper)添加到以上报文内容中:
<!DOCTYPE HTML PUBLIC“-//W3C//DTD HTML 3.2
Final//EN”>
<HTML>
<HEAD>
</HEAD>
<BODY>
嗨,
我还有一些信息。
此致
Robert
</BODY>
</HTML>
然后,为了保存该报文的格式,利用<PRE>标记包围报文体。如下面
所示:
<!DOCTYPE HTML PUBLIC“-//W3C//DTD HTML 3.2
Final//EN”>
<HTML>
<HEAD>
</HEAD>
<BODY>
<PRE>
嗨,
我还有一些信息。
此致
Robert
</PRE>
</BODY>
</HTML>
接着,利用原始报文中的“收件人”和“发件人”字段创建地址部分。
以下说明该创建操作:
<!DOCTYPE HTML PUBLIC“-//W3C//DTD HTML 3.2
Final//EN”>
<HTML>
<HEAD>
</HEAD>
<BODY>
<ADDRESS>
收件人:<A HREF=“mailto:bapperle@winstead.com”>Beth Apperley
</A><BR>
发件人:<A HREF=“mailto:tycast@us.ibm.com”>Robert Tycast
<A><BR>
</ADDRESS>
<PRE>
嗨,
我还有一些信息。
此致
Robert
</PRE>
</BODY>
</HTML>
此外,如果原始报文指定了主题,则将该主题也添加到地址部分:
<!DOCTYPE HTML PUBLIC“-//W3C//DTD HTML 3.2
Final//EN”>
<HTML>
<HEAD>
<TITLE>专利申请</TITLE>
</HEAD>
<BODY>
<ADDRESS>
收件人:<A HREF=“mailto:bapperle@winstead.com”>Beth Apperley
</A><BR>
发件人:<A HREF=“mailto:tycast@us.ibm.com”>Robert Tycast<A>
<BR>
主题:专利申请<BR>
</ADDRESS>
<PRE>
嗨,
我还有一些有关本发明的信息。
此致
Robert
</PRE>
</BODY>
</HTML>
示例B
请注意,有许多方法能够将某个文件转换为HTML格式,对于熟练的
技术人员而言,这些方法是众所周知的。此外,上面的例子说明了将某个
文件转换为本发明所需的HTML格式的步骤,而下面的例子说明了接收并
保存具有附件的文件的方法。请注意,在下面的示例中,已创建了一个邮
件报文,该报文具有两个附件:一个jpeg图象和一个gif。
CPU 310接收到的报文为:
MIME-Version:1.0
收件人:Beth A
发件人:Robert T
主题:文件!
内容类型:multipart/mixed;
boundary-unique-boundary-1
--unique-boundary-1
内容类型:text/plain;字符集-US-ASCII
Beth,
以下为我希望您审查的两个文件。第一个文件为jpeg文件,第二个文
件为gif文件。
此致
Robert
--unique-boundary-1
内容类型:multipart/parallel;
boundary=unique-boundary-2
unique-boundery-2
内容类型:image/jpeg
内容传送编码方式:base64(基于64)
...此处为base64编码的图象数据...
--unique-boundary-2
内容类型:image/gif
内容传送编码方式:base64
...此处为base64编码的图象数据...
--unique-boundary-2--
--unique-boundary-1
第一步转换处理是从以上报文中抽取两个文件。我们将其称为文件
image1.jpg和image2.gif。与经过转换的报文一起物理存储以上两个文件,
尽管并不要求这样作。接着,按照前一示例所提供的方式,转换报文体。
<!DOCTYPE HTML PUBLIC“-//W3C//DTD HTML 3.2
Final//EN”>
<HTML>
<HEAD>
<TITLE>文件!</TITLE>
</HEAD>
<BODY>
<ADDRESS>
收件人:<A HREF=“mailto:bapperle@winstead.com”>Beth Apperley
</A><BR>
发件人:<A HREF=“mailto:tycast@us.ibm.com”>Robert Tycast<A>
<BR>
主题:文件!<BR>
</ADDRESS>
<PRE>
Beth,
以下为我希望您审查的两个文件。第一个文件为jpeg文件,第二个文
件为gif文件。
此致
Robert
</PRE>
</BODY>
</HTML>
然后,将超链接添加到图象文件中:
<!DOCTYPE HTML PUBLIC“-//W3C//DTD HTML 3.2
Final//EN”>
<HTML>
<HEAD>
<TITLE>文件!</TITLE>
</HEAD>
<BODY>
<ADDRESS>
收件人:<A HREF=“mailto:bapperle@winstead.com”>Beth Apperley
</A><BR>
发件人:<A HREF=“mailto:tycast@us.ibm.com”>Robert Tycast<A>
<BR>
主题:文件!<BR>
</ADDRESS>
<PRE>
Beth,
以下为我希望您审查的两个文件。第一个文件为jpeg文件,第二个文
件为gif文件。
此致
Rohert
</PRE>
<IMG SRC=“image1.jpg”ALT=“image1.jpg”>
<P>
<IMG SRC=“image2.gif”ALT=“image2.gif”>
</BODY>
</HTML>
请注意,本文提供的说明只是本发明实施方式的示例。此外,请注意,
可以采用许多其他实施方式来实现本发明。例如,无需将整个报文都转换
为HTML格式。此外,在本发明的其他实施方式中,可以将报文转换为其
他格式,如ASCII格式或MIME格式。此外,图5所示索引只是为了提供
示例而已,并不意味着限制本发明的范围,也并不表示索引的配置方式。
此外,请注意,可以与“插件”一起使用本发明。插件为NetscapeTM
杜撰的术语,从而程序能够使用公开接口扩展Netscape NavigatorTM浏览
器。插件主要用于支持诸如RealAudioTM插件之类的新的数据类型,
RealAudioTM插件将音频流引入WWW。其他插件向浏览器添加增强功
能。可以在本发明中使用插件,但并不要求非这样做不可。例如,当某个
报文包含MIME类型时,可以使用插件在显示设备上显示数据。此外,可
以开发专用于阅读利用本发明归档的报文的插件。
尽管本文说明了本发明的原理,熟练的技术人员显然懂得,仅仅通过
示例说明了本发明,而不应将示例看作对本发明范围的限制。因此,附属
权利要求书用来覆盖属于本发明实质和范围内的对本发明的所有改进。