电子发送消息的翻译的制作方法

文档序号:6422529阅读:368来源:国知局
专利名称:电子发送消息的翻译的制作方法
技术领域
本发明涉及电子发送消息的自动翻译。它可应用于所有形式的电子发送消息,但在基于互联网的电子邮件系统、即时消息传送系统、基于电子邮件的传真系统以及诸如SMS消息的其它形式的电子发送文本中具有特别应用。
背景技术
随着借助电子装置的国际通信量的增加,带有不同母语的通信系统的用户问题更为明显地增加。从而需要有效的自动语言翻译服务变成更加重要。
已经提出提供电子消息的自动翻译问题的解决办法,例如Boucher等在US 588 4246和Scanlan在WO 01/02 994中。在Boucher方法中,翻译站点的地址连在消息的目的地地址上,从而把消息传送到翻译站点。在翻译站点上翻译消息然后传送到接收者。Boucher方法具有几个问题1)说明了一种把消息改向到用来翻译的中央站点上的机制,但未说明把提供消息的自动翻译的面向用户的综合解决办法集成到用户现有消息传送系统中。
2)未指出如何利用传送系统的地址薄中的交往来确保系统自动改向要翻译的消息,除非以某方式预定义接收者的语言,该系统不能判定消息是否需要翻译。
3)Boucher说明二种定义接收者的优选语言的办法。可以通过发送者在它的电子邮件地址中加以规定或者在接收者的顶级域名中加以规定推断出接收者的语言。该第一方法意味着用户介入从而造成背离常规的消息发送工作,而该第二方法可能对于用户尤其是官方语言不止一种语言的国家中的用户是不适用的。
4)未指出多个电子消息接收者情况下如何使用地址连接机制。
5)未指出如何答复或转发要处理的消息。
6)未指出如何处理接收者接收的不是以其优选语言的消息。
在Scanlan方法中要求接收者在该翻译站点上登记新消息地址。向接收者发送消息的人把消息发送到该新地址上,随后该接收者利用驻留在其计算机系统上的现有消息客户应用程序检索翻译后的消息。Scanlan方法也存在几个问题1)用于接收译后消息的目的要求接收者登记新消息地址。
2)接收器必须为每种想接收的语言登记一个新消息地址从而会具有多个地址。
3)发送者必须知道该新消息地址。
4)发送者不能对完成的翻译服务付费。
5)一种语言下拼写的新消息地址仍会由许多语言域上的用户访问。
6)发送者不能控制翻译消息中的哪些部分。
7)发送者不能控制可能会影响译后消息的质量的翻译过程。
Boucher和Scanlan都不解决当用户答复消息或者转发消息时处理译后消息的复杂性。除非采取以结构化方式封装信息在消息内的步骤,在答复消息时可能出现同一文本的多个翻译或者当转发消息时可能出现原始文本的级接翻译。此外,当转发消息时它可能含有和该消息转发次数一样多的许多翻译,当此和答复连接时则要只观看用户优选语言下的消息竟会是不方便的。
人工翻译不是精确学科,而机器翻译仍在争取达到和人工翻译相同的品质。任何提供机器翻译服务的中央站点需要支持容纳翻译选择的能力,以便配置翻译过程从而提高翻译输出的品质。尽管Boucher多少接触到这个问题,但是Scanlan一点也没有涉及翻译选项问题。
Boucher专利主要涉及一种通过处理目的地地址改向消息的机制。该改向方法依赖实现改向的统一资源定位符(URL)的基本体系结构,从而Boucher局限于采用这种定址方法的消息改向。Boucher提供一些如何在系统中应用该机制的指示,其中数次提到通过利用计算机编程业内人士可构建的附加模块使该机制自动化。但是,未覆盖该附加模块对构建一个完整功能系统所需的特性和功能,而且也没有如何利用消息传送系统的现有特性例如联系表使翻译过程自动化的说明。Scanlan专利基本上说明在其处进行消息翻译的网站。
用来提供电子消息的自动翻译的系统需要满足以下目的1)系统不要求用户介入来实现电子消息的翻译。
2)无缝集成到用户的现有消息传送系统中。
3)不强制用户改变他们的常规工作方式。
4)不强制用户获得附加资源例如外部的或专门的电子邮件地址。
源于这些目的,自动电子消息翻译系统的突出特征和功能是1)能使用户越过语言壁垒通信并且同时允许他们使用现有通信地址的系统。
2)把消息改向到提供机器翻译服务的中央站点的机制。
3)不要求用户介入的消息改向机制。
4)可以等同地应用于电子邮件消息以及其它电子通信形式的消息改向机制。
5)在通信链路的发送端和接收端都能把消息改向到用于翻译的中央站点的能力。
6)自动检查输入消息的语言以及和用户自己的语言比较的能力。
7)提供使改向处理自动化并且和提供消息翻译服务的中央站点通信的附加模块。
8)访问发送者和接收者的语言从而可以进行判定是否批准翻译的比较。
9)不妨碍向多个接收者发送消息的能力的消息改向机制。
10)支持向多个各可能具有不同的语言的接收者发送消息的能力的系统。
11)和任何其它附件分开地处理电子邮件本体的翻译的能力。
12)在电子邮件以及它们各自的附件内处理电子邮件的能力。
13)对译后消息提供结构化封装以支持消息的答复及转发上的处理复杂性,并且提供过滤器以便只观看观者自己语言下的消息部分。
14)定义消息的翻译选项范围以提高翻译质量的能力。
15)屏蔽不必翻译的文本部分例如地址的能力。
16)向翻译站点重新提交接收到的消息并且申请翻译选项以便改进翻译质量的能力。
17)使发送者得到消息的回声从而监视翻译问题例如“未找到的词”的能力。
18)使接收者向中央站点提交未译消息以进行翻译的能力。
19)使接收者向中央站点重新提交消息以在不是接收者的喜好语言下改变翻译语言以及改进翻译质量。
20)应对安全通信的能力,涉及加密消息以及不安全网络上消息的发送。
21)整个系统作好一个集成体操作以在不必学习新技能或者不必获得附加资源下提供自动消息翻译好处。
除非在任何建议中解决上面各项,则得到的系统不能看成是用于电子消息翻译的综合的并且全自动的系统。

发明内容
由此,本发明提供一种用于人类通信的通信系统,其包括设置成从发送者发送通信的发送系统、设置成为接收者接收该通信的接收系统以及翻译系统,其中该发送系统设置成,当发送通信时确定和发送者关联的第一人类可认知语言以及和接收者关联的第二人类可认知语言,如果第一和第二语言不同把该通信以及该接收系统的地址发送到该用于翻译的翻译系统从而使该翻译系统能接收该转向的供翻译的通信以及把译后通信转发到该接收系统,但若第一和第二语言相同把该通信直接发送到该接收系统,而且其中该接收系统设置成,一旦接收通信确定和发送者关联的第一人类可认知语言以及和接收者关联的第二人类可认知语言,如果第一和第二语言不同把该通信以及该接收系统的地址发送到该用来翻译的翻译系统从而使该翻译系统能接收该要翻译的通信以及把译后通信回送到该接收系统,但若二种语言相同接受该发送到该接收系统的通信。
本发明还提供一种包括一个设置成从发送者向接收者发送通信的发送系统以及一个翻译系统的通信系统,其中该发送系统设置成判定何时需要翻译一个通信并把它转发到该用于翻译的翻译系统,并且该发送系统包括设置成使能该发送者把通信发送到该用于翻译的翻译系统并且回送给该发送者以在把译后通信发送到接收者之前进行检查的发送者输入。
本发明还提供一种包括一个设置成为接收者接收通信的接收系统以及一个翻译系统的通信系统,该接收系统包括设置成显示通信以供接收者观看的显示装置并且包括设置成使该接收者能向该翻译系统提交该接收到的通信以及至少一个的翻译参数从而提供该接收到的通信的由接收者控制的翻译的接收者输入。
该翻译参数包括接收该通信的语言,或者可包括专题或定制的翻译字典或词汇表,或者包括对通信内容的格式或类别的指示。
现在说明本发明的优选实施例的一些特征的优点。
本文所说明的本发明的一些实施例提供一种克服Boucher和Scanlan方法的缺点并且解决答复和转发期间处理消息所遇到的问题的系统和方法。该系统最好包括一个驻留在用户的计算机系统上的附加模块以及提供翻译服务的中央站点。该附加模块和谐地和用户计算机系统上驻留的现有消息客户应用程序一起操作。该附加模块和该提供翻译服务的中央站点之间的协作关联意味着在发送者和接收者之间传送的电子消息翻译过程对该二者是完全觉察不到的。
把翻译服务放在中央站点上意味着所有支持许多语言间的翻译的繁杂都不必装在用户的系统上。另外,具有一个中央翻译资源意味着它可由所有人访问、任何人可以使用最新的机器翻译技术并且可以使用大范围的语言对。
附加模块根据发送者和接收者的语言判定消息是否需要翻译。二种语言的不同使附加模块把消息改向到用于翻译的中央站点上,随后再把译后消息传送到接收者。可以在发送者的计算机系统上、接收者的计算机系统上或者在处理发送者和接收者之间发送的消息的中间服务器上进行消息改向。当在发送者的计算机系统上进行改向时,附加模块可以利用先前定义的有关发送者语言以及接收者的优选语言的信息。相反当在接收者的计算机系统或在中间服务器上进行改向时,则只能从消息正文本身利用自动语言检测技术确定发送者的语言,而接收者的语言假定事先已经定义例如通过接收者的输入或选择。
在发送者的计算机系统上对新创造的消息进行消息改向,而当传送的消息不是接收者的优选语言下在接收者的系统或中间服务器上进行消息改向。当二个通信参与方连接到因特网服务提供商(ISP)上时在通信链路的发送者端或接收者端进行改向是适当的,在组织通过本地服务器拥有它自己的消息传送能力的情况下于中间服务器上进行改向是特别合适的。
提供翻译服务的中央站点从附加模块接收消息,然后利用该附加模块放在消息标题中的信息以及该消息的本体配置翻译处理。一旦完成翻译,利用消息标题中的信息把译后消息传送到预期的接收者。在传送给接收者之前,从消息中删除放在消息标题中的或者在专用部分上附在消息上的附加信息。
附加模块和中央站点之间的协作确保翻译处理对发送者和接收者都是完全不可觉察的。此外,双方都把他们的现有电子邮件地址用于彼此通信的用途。
本发明的主要目的是提供电子发送消息的透明翻译。本发明的另一个目的是提供一种不要求通信参与方改变常规工作方式或获得附加资源以促进电子发送消息的翻译的系统。
本发明涉及文本通信例如电子邮件消息的翻译,但是不限于这种形式或通信。该电子消息可包括音频和音频/视频通信以及任何其它形式的在从发送者向接收者传送消息中可能要求翻译的电子通信。
可以在覆盖局域网、内联网和因特网的计算机网络上传送通信,但不受这些传送消息的形式的限制。
本发明提供一种翻译通信的系统和方法,该通信通过计算机网络传送其中该通信在第一人类认知语言下发送并且以第二人类认知语言到达目的地。该通信开始于始发站点并在计算机网络上传送以到达目的地站点。通过计算机网络在消息传送协议中通常使用的地址规定始发站以及目的地站点的位置。
本发明驻留在一种提供电子发送消息的透明翻译的系统和方法。该系统包括一个安装在用户计算机系统上的集成到现有应用软件包中的模块,用于建立、发送和接收电子消息。集成到现有应用中提供附加特性和功能的模块在计算机业中称为附加模块或插入模块。该附加模块操作上和一个提供增值服务的中央站点关联,该增值服务包括但不限于电子消息的透明翻译。
该中央站点可以包括一个链接成提供单个相干计算资源的计算机系统设备。该中央站点的用途是接收附加模块发送的消息、把该消息从第一人类认知语言翻译成第二人类认知语言以及把译后消息传送到目的地站点。附加模块和中央站点之间的协作安排提供电子发送消息翻译的透明性并且不要求通信参与者改变他们的常规工作方式或获得附加资源。
尽管附加模块可以促进本文所说明技术和用户现有消息传送系统的集成,但在本发明的另一实施例中认识到可以通过系统制造商把附加模块含有的技术集成到现有消息转发系统中。尽管这种方法会提供和附加模块相同的特性和功能,但这会把技术限制在某具体消息传送系统上。从而本文说明的实施例采用附加模块。
附加模块可驻留在发送者的计算机系统上、或接收者的计算机系统上或者处理发送者和接收者间发送的消息的某中间服务器上。附加模块拦截消息并比对发送者的语言和接收者的语言。如果二种语言匹配附加模块不顾及该消息从而允许以常规方式处理该消息,反之不匹配使附加模块把消息改向到用于翻译的中央站点上。在中央站点翻译该消息后把它传到它的目的地站点上。
发送者系统上的附加模块拦截输出的消息并比对发送者语言和接收者语言,一旦这些语言不匹配则该附加模块把该消息改向到用于翻译的中央站点上。发送者语言假定为是事先定义的,例如由发送者或发送系统的其它用户利用该发送系统输入或选择,而接收器语言是从与该电子消息转发应用关联的电子地址薄得到的或者是由发送者自己请求的。
和系统一起使用附加模块便于以人类可读的形式选择语言名称。此外,语言名称的选择不受某特定语言域的限制,因为附加模块可以把所有的语言名称的域规定变量变换成公用表达。附加模块在所发送的消息内把语言名称的该公用表达传送到中央站点,随后在该中央站点使用过该语言消息后从消息中舍弃掉该信息。
驻留在接收者系统上的附加模块拦截输入的消息并且比对发送者语言和接收者语言,一旦这些语言不匹配造成该附加模块把该消息改向到用于翻译的中央站点上。发送者语言是通过在消息正文上应用非常确定的自动语言检测技术得到的,而接收者语言假定是事先定义的,例如由接收者或接收系统的其它用户利用该接收系统输入或选择的。
驻留在中间服务器上的附加模块拦截输入的消息并且比对发送者语言和接收者语言,一旦这些语言不匹配造成该附加模块把该消息改向到用于翻译的中央站点上。发送者语言是通过在消息正文上应用非常确定的自动语言检测技术得到的,而接收者语言是从与该中间服务器上运行的消息传送服务器应用关联的电子地址薄得到的。
发送者或接收者系统上驻留的附加模块预料是由使用因特网服务提供商(ISP)的服务从而和因特网连接以发送和接收电子消息的人们使用的。驻留在中间服务器上的附加模块预期由利用它们自己的本地服务器提供消息传送服务的机构使用。
通过把原始目的地地址保留在消息标题中的“用户字义”字段中并且用中央站点地址替代该地址,附加模块使电子消息改向。一旦该消息由该中央站点翻译,恢复原始目的地地址并且废弃对消息标题的修改。接着该中央站点把结果消息转发到期望的接收者。
在确定发送者以及接收者的语言后附加模块把它们添加到消息标题中的“用户定义”字段上以供中央站点使用。一旦该中央站点利用该信息翻译了该消息,舍弃这些对消息标题的修改。接着该中央站点把结果消息转发到期望的接收者。
附加模块不仅可以确定消息的主接收者还可以确定该消息的任何其它接收者。在这种情况下,由于存在多个消息接收者可能存在许多目的语言。附加模块为涉及所有接收者的每一种目的语言封装要改向的消息,从而在中央站点避免重复翻译。
本发明的基本方面是利用附加模块为与中央站点连接的现有电子消息转发应用提供额外的特性和功能,从而提供透明的翻译服务并且同时不强制用户改变他们的常规工作方式或者要得到附加资源例如额外的消息地址。
要认识到人工翻译不是精确学科并且机器翻译仍在争取达到和人工翻译相同的品质,从而应该避免同一正文的多个翻译。每一次消息由中央站点处理时,中央站点把原始正文和译文都封装在该消息的单个逻辑单元中。当用户答复消息时,在把完整的消息回送到原始发送者之前把用户的贡献(contribution)附在当前报文的前面。由于中央站点封装原始正文以及译文,这避免需要进行多次翻译。每次答复时重复该方法,从而对该由原始正文加上译文组成的消息添加另一个逻辑单元。由于该通信的二个参与方都能得到二种语言的原始消息和答复,每个人能在他们自己的语言下观看答复以及示出所有语言的完整消息。
当用户转发消息时需要一种上述用来处理答复的方法的变型。在这种情况下,每次转发该消息时中央站点封装原始正文以及该正文的译文。由于每次转发该消息时可得到原始正文,另一种语言版本附着到从原始正文派生出的逻辑单元,从而避免原始正文的译文串接。由于通信的所有参与方都能得到原始正文以及所有的语言版本,每个人可以以他自己的语言观看消息。
这种由中央站点把原始正文以及所有译本封装到该消息的单个逻辑单元中的方法功能上等同于答复消息、转发消息以及任何可能出现的组合。
计算机业目前采用的基于消息交换电子文本的标准提供对消息附加另一种类型的通信,包括但不限于明文、格式文本、音频、音频/视频和图象,的能力。应理解并不是所有这些消息类型要求或者适宜翻译。从而本发明假定不翻译附件,除非建立消息的用户做出其它指示。
当电子消息包括用户已决定要翻译的附件时,则与答复及转发消息关联的问题等同地施加到这些附件上。中央站点以和消息文本完全相同的方式把原始附件以及译本封装到单个逻辑单元中。
目前机器翻译要求人工输入各种选项以把翻译质量提高到人工翻译能达到的水平。附加模块能在现有消息转发应用之外输入这些翻译选项并且把这些选项封装在该电子消息内的专用段中以供中央站点在配置机器翻译过程中使用。中央站点使用过这些翻译选项后,在中央站点把译后消息转发到目的地站点之前从消息中舍去这些选项。
根据本发明的另一个方面,应认识到,一旦发送者发送消息,翻译处理中遇到的任何问题该发送者是不能察觉的,因为译后消息转发到目的地站点上。通过该附加模块发送者可以向该中央站点提交一条消息,以便对他回送译后消息以及机器翻译过程中遇到的任何问题的报告并加上任何可能适用于解决这些问题的建议。可以重复该过程,直至发送者满意机器翻译结果。
根据本发明的另一个方面,认识到当在通信链路的接收端拦截消息时,利用自动语言检查判定是否需要翻译。目前可使用的从正文本身确定语言的最成功方法是基于统计的方法,其中可使用的正文的长度越长结果的准确性越高。必须把有关源语言以及消息的任何不确定性放在接收者的消息框中以允许用户采取任何他认为必要的适当行动。另外,拦截消息的附加模块不具有消息内容的先有知识并且因此不能为消息设定任何翻译选项,从而机器翻译能达到的品质是用原始正文的要点最佳描述的,该要点足以使接收者得到对原始消息的某种了解。本发明的另一个重要的小方面是要考虑到发送者定义的接收者优选语言伴有选择不适当的语言的风险。把这些问题集中到一起意味着要求附加模块提供一种接收者可以决定的向用来翻译的中央站点重新提出选定的语言的功能。通过该附加模块用户可以规定他们对消息的优选语言并且定义一组他们认为适当的翻译选项。可以重复该过程直至接收者满意机器翻译结果。
还应认识到,电子消息可能插在另一个电子消息之内。根据本发明的另一个方面,利用处理外封电子消息相同的方法处理插入的消息。


现在参照

仅作为例子的本发明的优选实施例,附图中图1是构成根据本发明的第一实施例的通信系统的一部分的发送系统;图2a和2b是构成根据本发明的第一实施例的通信系统的一部分的接收系统;图3是构成根据本发明的第一实施例的通信系统的一部分的翻译系统;图4示出图1发送系统上显示的工具栏;图5是示出图1发送系统的第一操作方式的流程图;图6是示出图1发送系统的第二操作方式的流程图;图7是示出图2a接收系统的第一操作方式的流程图;图8示出图2b接收系统的修改操作方式的流程图;图9示出图3翻译系统的操作的流程图。
具体实施例方式
参照图1,构成通信系统的一部分的发送系统11以个人计算机为形式并且包括含有电子邮件客户程序的应用10,含有消息传送子系统并和因特网连接的操作系统12以及附加模块14。屏幕16显示应用工具栏18,以允许用户如后面说明那样操作该系统的各种功能。电子邮件客户程序还包括一个含有接收者的优选语言的联系表10a。当用户发送消息时,响应用户点击应用工具栏上的“发送消息”按钮101(参见图4)应用10生成“发送消息”事件。附加模块14拦截该“发送消息”事件并且操作该消息以在若需要翻译时把它改向到中央站点31(图3中示出)。该被操作的消息通过操作系统12的下层消息传送子系统。接着该消息被发送到因特网上以便传送到该中央站点并且随后把它转发到目的地站点。
通过把原始目的地地址保留在消息标题内的“用户定义”字段中并且用该中央站点的地址替代它来实现该消息到该中央站点的改向。该操作是由附加模块进行的从而用户完全不会看到。在该中央站点处一旦该消息被处理,该保留的目的地地址替代该中央站点地址并且去掉消息标题内的该“用户定义”字段,从而使该消息回到它改向到该中央站点之前的原始状态。下面示出实现改向的消息操作的例子原始消息Fromjohn.doe@company.co.ukSent1 October 2002 17:35Topabio.munoz@company.esSubjectGreetingsThank you for your hospitality last week.
改向消息Fromjohn.doe@company.co.ukSent1 October 2002 17:35Toanonymous@translation-site.comX-topablo.munoz@company.esSubjectGreetingsThank you for your hospitality last week.
译后消息Fromjohn.doe@company.co.uk
Sent1 October 2002 17:35ToPabio.munoz@company.esSubjectSaludosGracias por su hospitalidad la semana pasada.
“原始消息”是发送者利用他们的消息准备软件包建立的。“改向消息”由附加模块构建并发送到翻译站点。注意添加“X-to”字段以保持原始目的地地址并且原始目的地地址(To)由翻译站点的地址替代。如上例中示出那样翻译站点地址不是全局进入点(即,Toanonymous@transtation-site.com),该地址可以做成是用户专用的(即,Tojohn.doe@traslation-site.com)以便利为完成的服务向用户收费。一旦翻译了消息,在转发到接收者之前如“译后消息”中示出那样去掉对消息标题做过的调整。
虽然本发明的主实施例覆盖电子邮件消息的改向,这不必限制在电子邮件消息协议上(参见RFC822ARPA格式因特网文本消息标准,RFC2822因特网消息格式加RFC821/RFC2821简单邮件传输协议)。只要消息协议支持消息标题内的“用户定义”字段并且体系结构上字段是自由格式的,则原则上和上述不同的改向机制可用于利用其它协议把消息(不仅仅是电子邮件消息)改向到中央站点进行翻译。
参照图4,工具栏18包括一些例如可以添加到电子邮件客户程序主工作栏区上的按钮。这些按钮如下。发送按钮101促使系统向接收者发送消息。选择按钮102允许用户改变通过一些不同的对话进入的全局选项范围。特性按钮103允许用户修改翻译选项,但这些改变只施加在当前消息上。回声按钮104允许用户向翻译系统31提交供试译的消息,随后向用户回送有关翻译过程中遇到的问题的信息。翻译检查器按钮105允许用户向翻译系统31提交消息,随后回送一个改进翻译质量的建议表。再提交按钮106允许对他发送了不是其母语下的消息的用户最初改变目标语言并且以后使该消息以他们希望的任何次数历经翻译处理以改进翻译质量。再发送按钮107允许用户准备发送出现在用户打开的以进行观看的接收箱内的消息,例如利用回声按钮106接收的试译。过滤按钮108允许用户观看消息中的其母语下的部分或者显示整个消息。后面会更详细说明这些按钮中的一些按钮的操作。
附加模块最好只提供补充的行为,而不改变现有使用方法也不损坏其附着在的程序表示出的现有行为。例如,在未从联系表10a中找到接收者的情况下,用户需要从其中寻找他们的语言之类的信息。在现有“发送消息”按钮上实现该要求明显地会改变程序的使用和行为。但是,添加“消息特性”按钮103便利输入消息专用信息例如接收者语言和其它翻译选项。
参照图2a,接收系统21a包括含有消息传送子系统的操作系统22a、电子邮件客户程序24a以及含有语言检测软件的附加模块26a。当电子邮件客户程序24a利用操作系统22a的赞助从远程服务器下载消息时,把该消息保存在操作系统22a支持的接收者的接收箱中。附加模块26a响应操作系统22a生成的“存储消息”事件并且检查刚刚保存的消息。如果该消息需要处理从该接收箱中取出它并且其中留下“哑消息”以告诉用户原始消息需要翻译。附加模块26a操作该消息以实现至中央站点的改向。该被操作的消息通过操作系统22a的下层消息传送子系统,接着把该消息发送到因特网上以发送到中央站点,在该站点通过翻译和其它操作修改该消息。接着把修改过的消息转发到驻留在一远程服务器上的消息箱。电子邮件客户程序24a利用操作系统22a的赞助从该远程服务器下载该修改过的消息,随后把该修改过的消息保存在由操作系统22a支持的接收箱中。可从该接收箱访问消息例如在PC屏幕上显示。附加模块26a响应操作系统22a生成的“存储消息”事件并检查刚刚保存的消息。一旦识别出该存储的消息是修改过的消息,附加模块26a去掉该中央站点放在电子邮件标题中的额外字段。该修改过的消息返回到接收者的接收箱。可从该接收箱访问该消息例如在PC屏幕上显示。
参照图2b,另一个接收系统21b包括含有消息传送子系统的操作系统22b、电子邮件服务器24b以及含有语言检测软件的附加模块26b。当从互联网接收消息时,操作系统22b响应接收消息生成“接收消息”事件。附加模块26b拦截该“接收消息”事件(否则会去该电子邮件服务器)以检查是否需要消息处理,如果需要附加模块26b操作该消息以实现改向到中央站点。该被操作的消息通过操作系统22b的下层消息传送子系统。接着把该消息发送到因特网上以发送到中央站点,在该站点通过翻译和其它操作修改该消息。接着回送该修改过的消息于是重新由操作系统22b从因特网接收,并且该操作系统响应接收消息生成“接收消息”事件。接着附加模块26b拦截该“接收消息”事件,并且一旦识别出该接收到的消息是修改过的消息则去掉该中央站点放在电子邮件标题中的额外字段。接着该修改过的消息转发到电子邮件服务器24b,随后把它放在接收者的接收箱里供接收者访问和显示。
参照图3,翻译系统31位于对发送者和接收计算机系统为远程的一中央站点上,其包括操作系统32、含有它自己的字典的翻译模块34以及消息改向模块36。翻译系统31还包括一些在线词典,用户可以通过该中央站点的因特网门户访问和查看它们。当消息从发送系统11或者接收系统21a或接收系统21b引导到翻译系统31时,该消息经过翻译模块34并从模块34到达消息改向模块36,在模块36上用消息标题内的目的地站点地址代替该中央站点地址。接着译后消息通过操作系统32的下层消息传送子系统并发送到因特网以便传送到目的地站点。
图5概括在通信链路的发送者端即图1的发送系统上完成的消息改向任务。通过使用工具栏18上的“发送消息”按钮101或者通过选择相应的选单选项发送消息。每个路由造成进入“发送消息”事件处理程序501,其中的第一个任务是从联系表10a得到接收者的语言,如图中步骤502上所示。在步骤503比较发送者的语言和接收者的语言以判定是否认为要把该消息改向到中央站点31以进行相继的翻译。假定不需要翻译则该消息保持原封不动,反之在步骤504改变消息标题中的目的地地址以实现至中央站点31的改向并且把原始接收者的地址保存在该消息标题内。最后在步骤505中把发送者和接收器的语言添加到该消息标题上。
上面这些在“发送消息”事件处理程序中完成的简化任务假定该接收者存在联系表10a内;但是并不会总是这种情况。在接收者未存在联系表10a中或者尚未预先规定他们的优选语言的情况下,则当使用“发送消息”按钮101时该消息会直接发送到该接收者。但是,如果在“发送消息”按钮101之前先使用“消息特性”按钮103则造成显示对话,由此可以输入有关该接收者的请求信息。如果接收者语言和发送者不同则按“发送消息”按钮101把该消息改向到翻译系统31。图6说明这些在“发送消息”事件处理程序中进行的动作。前二个步骤602和603对应图5中的第一步骤502。接着,在步骤604检查发送者语言是否和接收者语言不同。若相同,向接收者发送该消息。若不同,在步骤605操作消息标题以使该消息改向,并在步骤606对消息标题添加发送者和接收者语言。接着把该消息发送到翻译系统31以供翻译。
如果发送消息前未使用“消息特性”按钮103,则图6中进行的步骤基本上是图5中说明的步骤。假定使用“消息特征”按钮103,则可以该当前消息废弃任何以前为该接收者定义的信息或者可以通过用户添加以前未定义的信息。当使用“发送消息”按钮101时,则“发送消息”事件处理程序利用来自“消息特性”的信息进行消息的发送。
图7概括通过驻留在接收者的系统上的附加模块即图2a的接收系统21a进行消息改向时所完成的任务。在步骤701从接收者的接收箱读该消息。接着在步骤702检查该消息是否来自中央站点31。如果该消息不来自该中央站点,必须在步骤703通过在消息正文上进行自动语言检测确定发送者的语言。在“Comparing Two LanguageIdentification Schemes by Gregory Grefenstette,3rdInternationalC0nference on Statistical Analysis of Textual Data,Rome,Dec 11-13,1995”中说明用来进行自动语言检测的方法例子。接着在步骤704比较发送者语言和接收者语言以确定是否要翻译。假定发送者和接收者的语言是相同的,则该消息保存在接收箱内供用户访问。但是,如果需要翻译,则在步骤705操作消息标题以进行改向并在步骤706以类似于在通信链路的发送端采取的策略把发送者和接收者的语言添加到消息标题中。接着在步骤707把该消息发送到翻译系统31以便翻译。一旦翻译系统31翻译了该消息把它回送到接收者,随后利用翻译系统31放在消息标题中的信息表明为译后消息从而旁路掉进行自动语言检测的必要。在该消息返回到接收者的接收箱前去掉附加的信息。
应认识到合格的机器翻译限于一些目前可得到的语言对上并且它们以少量“核心”语言即英语和法语为中心。可以把这些核心语言翻译成一些主要欧洲语言例如德语、意大利语、葡语和西班牙语,但是目前例如不支持从德语到西班牙语或者意大利语到葡语。应意识到一些翻译机报告它们支持大量的语言时,但是它们利用查表技术是相对不复杂的从而得到品质差的翻译。另外,所支持的核心语言不变地是英语。在每一种语言可以高品质地机器翻译到任何其它语言之前,则提出的系统只能应对数量限制的语言对。用户语言分为第一和第二偏好以及缺省语言。用户的第一偏好语言用于确定要翻译的语言对并且如果该特定对目前是得不到的则使用他们的第二偏好,否则的话则使用缺省语言。在此方式下系统尝试找到供翻译的语言对。应意识到,把用户语言分为第一、第二偏好以及缺省语言是目前可得到的数量有限的合格语言对的一个小方面。随着越来越多的语言对添加到该中央站点上,对这种特性的要求会越来越小。
当在接收者的机器上把消息改向到翻译系统31时,由于因特网交通和翻译系统31上的工作负担,回送消息前可能需要适当的时间。相反,如果在支持用户邮箱的服务器上进行改向,则把消息改向到翻译系统31出现的延迟对用户是完全遮蔽的。
图8概括当通过通信链路接收者侧的电子邮件服务器上驻留的附加模块即图2b的接收系统21b进行消息改向时完成的任务。图8中的步骤在大范围上镜向图7中进行的步骤,从而赋予增加了100的对应数字。
很清楚在通信链路的接收端子接收者的系统(系统21a和图7)上或者利用本地电子邮件服务器(系统21b和图8)拦截消息是非常类似的。在接收者的系统上,电子邮件客户程序向一远程服务器请求有关它在用户的消息箱中保持的消息的信息。然后,利用POP3协议(参见RFC1939邮局协议版本3)或HTTP协议(参见RFC2616超文本传输协议一HTTP/1.1)从该服务器向用户的机器下载各个电子邮件或者利用IMAP4协议(参见RFC2060因特网消息访问协议版本4rev1)下载一段消息或整个消息。要重申的是,低级消息传送系统起动的事件可能不必指示整个消息的到达。相反,它们可能指示消息的某个子部分的到达。由此,在把消息或者消息的一部分放在本地接收箱之前,附加模块不能对任何消息事件起反应。相反,在本地电子邮件服务器上,低级消息转发系统会起动一个事件以通知那些对接收感兴趣的模块,例如消息已到达的通知。可以在任何时刻出现“接收消息”事件并且表明整个消息的到达。该附加模块在电子邮件服务器允许它判定消息是否需要该中央站点处理之前拦截“接收消息”事件。反之该事件传到该电子邮件服务器上从而它可以处理输入的消息。
电子邮件消息包括一个含有地址信息的标题,后面跟着含有消息正文的本体。对于简单消息,电子邮件本体除消息正文外没有别的东西。对于更复杂的例如含有附件的消息,则利用MIME协议(参见RFC1521/RFC1522多用途因特网扩展)构建电子邮件本体。MIME是一种用来在电子邮件本体内封装不同的信息项,例如包括明文、格式文本、图象和音频/视频信息,的协议。下面示出一个简单MIME消息Fromsendername@company.comSent1 October 2002 17:35Toreceivername@company.comSubjectAn example of a multipart MIME messageMIME-Version1.0Content-Typemultipart/mixed;
boundary=unique-boundary-1This is the preamble area of a multipart MIME message.
Mail readers that understand multipart format should ignore thispreamble.
--unique-boundary-1Content-Typetext/plainThis is the email message text--unique-boundary-1Content-Typetext/plain;Content-Dispositionattachment;filename=“test.txt”This is the attachment text--unique-boundary-1MIME协议在本体部分和子体部分结构中隔开信息。利用专用边界标记阻断每个部分并且本体部分前方的信息指示它的内容的性质。上面的例子示出一个含有单行正文加上一个附件的电子邮件消息。该中央站点需要处理MIME格式的电子邮件消息,从而识别每个本体部分并且只对一些本体部分进行翻译,如下面说明那样。另外,MIME子本体部分用来应对处理电子邮件消息的答复和转发上的复杂性,如本文后面说明那样。尽管本发明的该实施例利用MIME协议的特性和功能包装原始正文和译文,本发明不限于该协议。任何支持结构化存储消息并且应用可定义描述符的协议可潜在地由本发明用来封装未翻译的和翻译后的消息部分。
图9示出翻译系统31完成的任务。一旦在步骤901接收消息和在步骤902访问该信息中的配置信息,翻译系统31在步骤903扫描第一个MIME本体部分以确定它是否需要翻译。后面会更详细地说明消息内容细节。利用从消息标题中提取的信息以及放在一专用MIME本体部分中的翻译参数控制翻译处理。在步骤904从消息提取出每个需要翻译的MIME本体部分并提供到翻译服务器909进行翻译,在步骤905回送到该消息。在步骤906进行检查以判定是否还有需要翻译的MIME本体部分,由此重复步骤903至905以及步骤909。一旦在步骤906完全构建译后消息并检测到消息的结束,在步骤907改变消息标题中的信息以去掉和改向到翻译系统31有关的信息,并且在步骤908还去掉附加模块为了翻译系统使用放在消息标题中的附加字段。接着把该消息转发到接收者。
出于简明图9未示出当消息包含许多MIME本体部分时可能只有前面的少量本体部分需要翻译,因为如后面讨论那样其余部分可能在答复或转发情况期间事先已得到处理。而且,在把译后消息转发到接收者之前,可以相应地舍弃掉为了供翻译系统31使用从而控制翻译处理由附加模块附到消息上的信息。这些项也在后面说明,它们用于“优化”翻译处理并且不损害翻译系统31处理消息期间进行的基本任务。
在本发明的另一个方面,该系统可扩充成应对安全消息的转发,包括加密的消息以及通过安全网络传送的消息或者二者的组合。用来在因特网上发送消息的RFC821/822和RFC1521/1522协议不提供安全传送系统,从而预期接收者或接收者组外的一些人可以拦截并观看消息。可以通过利用公共密钥基础设施(PKI)和虚拟专用网(VPN)技术解决这个缺点。可以利用这些技术之一或二者来保密因特网上的消息传送。
可以通过利用安全/多用途因特网邮件扩展即S/MIME协议(参见,RFC2632S/MIME版本3认证处理,RFC2633S/MIME版本3消息规范,以及RFC2634用于S/MIME的扩充的安全系统)并一起利用数字认证(参见RFC2459因特网X.509公用密钥基础设施、认证和CRL概要)形成消息来提供对安全通信的支持。希望采用加密通信的用户需要利用该中央站点登记他们的意图,由此从可信的认证机构得到数字认证。把公用密钥发送给用户并且该中央站点的安全区中保存专用密钥。用户利用数字认证的公用密钥加密消息,随后只有由该中央站点保持的专用密钥解密该消息。加密消息在该中央站点上按它们的S/MIME格式排队并且在把消息提供给翻译服务器之前解密消息的程序在它自己的其中访问特权仅限于极少人的安全环境下运行。因此,即使可能具有支持该站点的行政特权的中央站点维护人员也不能访问任何保密消息。
一旦翻译消息在向接收者发送前需要加密它。利用发送者的专用密钥不是一种选择,因为由于任何具有公用密钥(包括接收者)的人可以解密消息,这会产生发送到接收者不安全消息。如果接收者参与安全通信则他们需要拥有他们自己的数字认证,从而该中央站点可以利用他们的公用密钥加密消息,随后只有接收者才能解密消息。很清楚,如果该中央站点由于接收者不具有数字认证不能得到接收者的公用密钥,则该中央站点不能处理加密的消息。在此情况下,该中央站点必须向发送者发送一条消息以指出它不能处理他们的保密消息的原因。
在着手安全通信之前,发送者可以利用明文消息和接收者联系以确保接收者已访问数字认证并在某个阶段把公用密钥交付给该中央站点,然后,可以进行两个参与者之间的安全通信。在团体环境下,数字认识可属于公司或属于机构内某特定站点。替代地,几乎不会妨碍个人得到他们自己的数字认证,因为费用看来不是阻止因素。更重要的是,问题在于对数字认证技术的熟悉程度,并且他们从哪个机构可以得到是重要因素。由于该中央站点为了发送者必须和可信的认证机构建立关系以得到数字认证,从而该中央站点可以是接收者得到数字认证或者向接收者提供何处可得到信息的管道。不管接收者访问数字认证的路由是什么,只要该中央站点访问过他们的公用密钥,则安全通信是可能的。
应注意采用PKI技术的安全通信依赖于接收者具有数字认证。该中央站点充当通信路径内的一条管道的事实不能改变该技术的这条基本要求。
另一种安全通信方法通过采用虚拟专用网(VPN)。VPN概念中体现的基本原理在于,不导致建立安全专用网的巨大费用而是在向公用网例如因特网发送之前自动加密消息。VPN依赖在二个节点之间建立安全的点对点链路。该安全链路称为“隧道”并且是一条在该隧道的一端提供的明文消息在通过该隧道发送前先自动加密该明文消息、并且在接收端提交给接收者之前先解密消息的管道。提供加密和加密的节点可包含在防火墙内从而使机构的内部网络和外部世界隔离。由于要建立点对点通信链路,需要设定VPN节点以定义要对外联系的以及接受联系的IP地址。
该中央站点可以对选定的客户提供VPN能力,从而可以把它们的现有VPN节点配置成能把通信改向到该中央站点以及接受来自该中央站点的通信。在这样的条件下该中央站点变成客户的VPN的一部分从而能处理来自客户的消息。
实现VPN连接需要知道构成VPN(即从发送者到中央站点以及从中央站点到接收者)的节点的IP地址,从而适当地路由通信业务。由于VPN建立二个节点间的点对点链路,不能利用因特网的全局域名系统(DNS)把文本地址转换成IP地址,这必须本地地在该中央站点上完成。这样,该中央站点对VPN客户支持它自己的DNC能力。当在该中央站点上为客户设置VPN环境时,在该中央站点上利用DNS环境注册形成该客户的通信网络的一部分的每个VPN节点的IP地址。一旦完成此,RFC822消息标题字段组作为改向机制的一部分受到操作并且可由TCP/IP通信层翻译成适当的IP地址,从而在正确的VPN链路上路由到接收者。
尽管上面的各实施例指出本发明可以如何利用目前计算机业中主要采用的二种技术应对安全通信,应理解也可以采用其它适用的技术。
作为实现本发明的一个例子。现在说明把它集成到微软的OutlookTM中。选择Outlook是因为它在计算机业中的广泛使用;但是本发明不受该具体的电子邮件程序或该应用在其上运行的微软视窗操作系统的限制。本发明可等同地应用于其它电子邮件程序,例如NetscapeTM、EndoraTM和Lotus NotesTM,以及其它操作系统诸如Unix和Linux。
如前面已说明那样,在用户系统上以附加模块的形式实现该翻译系统。一旦安装,用户应记住更新那些语言和该用户不同的人士的联系表项目。把接收者的语言添加到联系表中能使该附加模块无须用户介入情况下自动决定是否需要把电子邮件改向到用于翻译的翻译系统31。用户必须做的只是常规那样点击“发送”按钮。
在接收者的语言尚未在联系表中定义的情况下则有二种可能的选择1)通过按“发送”按钮101,在不翻译下把电子邮件直接发送到接收者。
2)出现提示用户各种信息项(包括例如接收者语言和翻译应使用哪些字典)的弹出对话。一旦输入所需的信息,则可以接着把电子邮件消息路由到用于翻译的翻译系统31并且再转发到接收者。
由于最好使该附加模块不改变任何现有行为而只提供附加特性和性能,则上面的动作过程会在通过现有“发送邮件”按钮调用时彼此不成对地出现。
但是,如果在该弹出对话上出现的信息是按消息的特性理解的,则可以区分请求观看并更新用来控制把消息改向到翻译系统并随之加以翻译的信息和实际发送信息。这样工具栏18需要包含一个和其它按钮(例如选项和配置按钮)并排的“消息特性”按钮。下面给出和“消息特性”按钮103以及现有“发送”消息按钮101关联的用途和动作。
1)“消息特性”按钮103会显示一个弹出对话,在其上可以修改先有的信息(即,全局配置信息)并且可以添加其它尚未规定的信息(即接收者语言,若联系表上空缺的话)。点击该对话底部处的“取消”按钮会废弃任何做出的修改,而选择“认可”按钮表示接受任何改变并且对应地更新消息特性。
2)“发送”按钮101附加模块14的存在不改变该按钮的用途,即它使电子邮件发送到因特网以传送给接收者。但是,如果存在有关改向或翻译处理的辅助信息,附加模块14会相应地根据该信息动作。替代地,如果出于不论什么原因不存在这种信息则无搀杂地把电子邮件消息发送到因特网。
为了说明“消息特性”和“发送消息”二个按钮的行为和动作,可以考虑以下情景1)向一个当前未在联系表中定义的接收者发送消息。点击“发送”按钮会造成无修改地把该消息发送到该接收者。但是,如果首先选择“消息特性”按钮则赋予用户规定该接收者的语言、翻译字典以及任何其它有关信息的机会。然后点击“发送”按钮,如果发送者和接收者语言不同该消息可能改向到翻译系统31。
2)接收者已经在联系表中定义但未规定语言,则点击“发送”按钮会使该消息无修改地发送到该接收者。但是,如果首先选择“消息特性”按钮并在弹出对话上定义接收者的语言,则点击“发送”按钮在发送者和接收者语言不同下可以造成消息改向。
3)已经在联系表10a中定义接收者和他们的语言。若发送者和接收者语言不同,点击“发送”按钮可以造成消息改向。此外,在发送消息前如果选择“消息特性”按钮,则可以改变从联系表10a得到的接收者语言(只为此消息)以及任何其它有关信息。然后,“发送”按钮会造成把该消息发送到因特网。
必要地处理信息以便控制消息至该中央站点的改向并且根据消息的特性引导翻译处理意味着发送消息的动作完全和用来观看并更新这些信息的任务断开。另外,由于这些“消息特性”是附加信息,从而不改变现有电子邮件客户程序的行为。最后,其中最重要的方面是先有的“发送消息”按钮是唯一的把消息发送到因特网上的按钮。
“消息特性”弹出对话应需显示一个所有接收者、它们的关联语言(如果先前已在联系表中规定)以及翻译选项的列表。所给出的信息量可能要求多于一个的对话,其中例如最通常要改变的项出现在初始对话中而最少要修改的项出现在次要对话中。该信息中的一部分和整个消息相关而其它项只影响该消息的各个组成部分。
弹出对话的用途是观看“消息特征”信息和作出任何需要的改变。由于显示的信息只和该当前消息相关,则任何在弹出对话上做出的对先有信息例如从联系表得到的接收者的语言的改变必须使现有数据保持不变。这样,弹出对话提供一种只对当前消息废弃先有信息或提供新信息的机会。
该系统设置成向在To表中标识的第一主接收者组发送通信,向在Cc表中标识的不是主接收者、但接收通信的拷贝、并和主接收者等同的第二接收者组发送通信,以及向在Bcc表中标识的接收通信的拷贝但和其他接收者不等同的第三接收者组发送通信。在电子邮件要向多于一个的人(多个To、Cc和Bcc项)发送的情况下,可以建立覆盖多个To表和Cc表中的所有接收者的单个SMTP消息和用于Bcc表中的每个接收者的各个消息。但是,根据这种结构把消息重新路由到翻译系统31可能对翻译系统31造成重复的翻译,因为一些接收者可能具有相同的语言。从而,该附加模块向只对单个语言对进行一次翻译的翻译系统31发送单个消息,并且只在此后可以进行多个To、Cc和Bcc接收者处理。利用一个“用户定义”字段(X-RECIPIENT-LANGUAGE),该附加模块会按和接收表中出现的相同次序把每个接收者的语言放在电子邮件标题中。这样如果To、Cc和Bcc字段中的多个项是向说西班牙语、德语、西班牙语和法语的人发送的消息,则“接收者语言”会按如下出现x-recipient-languagees,de,es,fr翻译系统31可以整理上面的“接收者语言”表以优化翻译处理,由此该原表再次和多个接收者比对以向相应的各个人发送译后消息。
电子邮件本体的译文会和原始电子邮件附在一起但用界定符隔开它们。由于在向接收者发送的二个电子邮件本体中译文更重要,基本上把它放在前面。至于附件,由发送者自由决定是否翻译附件,但是当指示翻译时在消息内译文会出现在原文前面。
在该中央站点,把消息分解成要处理的各个组成部分,接着在供发送到接收者或接收者组的新消息中重新组装修改后的部分。当涉及多个接收者时,可以通过单个要发送的消息应对To和Cc字段中遇到的所有接收者(去掉Bcc字段中所有的项)。但是,对于Bcc字段中列出的接收者,需要对该表中的每个接收者建立一个独立的消息并且在输出消息中每次只出现Bcc字段中的一个接收者。一旦处理了所有接收者则可舍弃译后消息组成部分。
可以在支持接收者邮箱的服务器上或者在客户系统上但不同时在这二个位置上进行通信链路接收者侧的消息改向实现。不怎么干扰在该服务器上于把消息放在接收者的邮件之前拦截要改向的消息,因为在利用电子邮件客户程序访问他们的邮件之前用户不知道消息到达该服务器。相反,在客户系统上拦截消息可能造成一个或更多的消息改向到翻译系统,从而造成和最初对从该服务器报告下载操作相比在用户的本地接收箱中出现较少的消息。这种不同决定所产生的实现的性质,如下面的章节中说明那样。
对于和利用ISP服务器提供消息传送能力的因特网服务提供商(ISP)连接的用户,通过远程链接只可以在用户系统(客户系统)灵敏地进行对要改向的消息的拦截。这里利用POP3、IMAP4或HTTP协议请求消息,这意味作为ISP服务器响应协议命令的结果响应接收消息事件。和其中消息传送子系统处理输入的SMTP通信的各个方面并响应接收到非请求消息触发事件的服务器不同,Outlook通过经套接接口(socket interface)和ISP服务器的直接通信实现POP3/IMAP4/HTTP协议,而消息传送子系统(MAPITM)只对接收到的消息提供存储管理。随之,存在三个该附加模块可响应输入消息的位置并且这些位置是1)套接接口试图在该接口拦截输入消息引起二个问题;首先是通过该套接接口拦截进入的通信从而使该附加模块在信息传到Outlook前采取行动的能力,第二是该附加模块应通晓POP3、IMAP4和HTTP协议以便当消息再次从ISP服务器返回时识别出数据。
2)MAPI事件MAPI子系统处理消息的拦截、消息的排队以及结构化方式下的存储(即消息接收箱)。该附加模块可用MAPI注册以便当接收消息以及放在存储器时接收通知。
3)Outlook事件当系统已接收一个或多个消息时Outlook触发New Mail事件,随后该附加模块可检查接收箱中是否有新接收的消息并采取适当的行动。
在这三个附加模块自己可以插入到的并且响应输入消息的可能位置中,可以在套接接口处实现复杂的对输入消息的拦截,但是,如已解释那么,这些产生的问题意味着这不是本发明优选实施例。Outlook的New Mail事件只有在接收了所有消息才触发。因此该附加模块不能拦截各个要处理的消息。相反它必须对所有已收到的消息开放。由于这个原因可以利用Outlook的New Mail事件实现对输入消息的拦截,但是它也不是本发明的优选实施例。与前两个实施例相反,设定MAPI事件是简单的并且对每个接收到的消息触发一个事件。此外,另一个需要考虑的小方面是该附加模块需要具有一条至因特网的有效通信链路以把消息改向到用于翻译的中央站点。对于具有一条诸如ADSL或租用线的永久性“常通”因特网连接的用户这不是问题,因为他们和因特网的连接总是有效的。但是对于具有和因特网的拨号链路的用户,这需要在该附加模块处理好所有需要翻译的消息之前该链路保持有效。必须避免任何在该附加模块完成它的任务前终止该链路的可能性。为此,需要实现WIN32TM函数RasCustomHangUp( )或等同品,从而可以在该附加模块完成它的任务之前延缓任何断开该拨号链路的意图。出于上面所有指出的原因,使用MAPI文件夹事件是本发明的优选实施例。
在POP3和HTTP协议中,客户系统能对ISP服务器询问目前保持的消息的数量,然后客户系统接着把每个消息下载到本地接收箱中。下载操作开始前Outlook在它的状态栏中显示ISP服务器保持的消息的数量然后顺序地示出目前正在下载哪个消息。从而,如果消息中的一个恰好被附加模块改向,则用户可能注意到不是所有的消息都被传送。为了克服这个问题该附加模块必须对改向的消息提供一种替代以指示看起来丢失它的原因并且可能下次Outlook检查该ISP服务器上的消息箱时可以得到译本。
和POP3和HTTP相比IMAP4协议明显灵活得多,后者便于下载消息的一些规定段、整个消息或者用开始位置和正文长度给定的任意部分而且具有不从服务器取出的情况下窥视一消息的能力。利用这些功能中的一部分Outlook窥视消息标题并且在接收箱中放入突出该消息存在的指示但是保持该消息在该服务器上原封不动。用户可以观看短形式的消息并保持它在服务器上原封不动,可以选择通过打开该消息下载它或者可以选择从驻留在ISP服务器上的消息箱中删除该消息而不打开和下载它。这样,仅当用户下载整个消息时该附加模块会拦截该消息,然后可能把它改向到用于翻译的中央站点。
当Outlook利用IMAP4协议从ISP访问信息时,通常在用户系统上只显示消息标题。如果用户选择该信息并且该信息需要翻译,按和POP3/HTTP电子邮件服务器相同的方式该消息自动改向到用于翻译的翻译系统。在一中等时间后译后消息会传送到ISP服务器上的消息箱。
对于带有自己的提供着诸如微软的ExchangeTM的消息传送能力的服务器的用户,可以采用一种不同的方法。在通信链路的接收者端处理消息的最小侵入方法是在消息到达本地电子邮件服务器并放在接收者的接收箱之前拦截它。这可以通过钩住该服务器上运行的操作系统的下层消息传送环境的低层事件机制实现。这能容易地由计算机编程业内人士实现。这会要求设定特权等级以及过滤规范从而该附加模块能调用病毒检查程序在电子邮件服务器通知输入消息之前先保证消息是原始(clean)的。
对于带有自己的消息传送服务器的用户以及对于采用至ISP消息传送服务器远程连接的用户,一旦接收输入消息需要对电子邮件内容以及任何附件进行自动语言检测,由此如果和预定义的“目的地”语言不同则需把该消息改向到翻译系统31。在翻译系统31处理该消息后则回送它,于是利用翻译系统31添加到消息标题中的信息迅速识别它的起源从而节约通常对输入消息进行判定是否需要改向的处理。去掉消息标题中专用于翻译系统的信息并把该电子邮件传送到在其上和任何其它放在接收者的接收箱的消息一样处理该消息的电子邮件服务器。
现在说明如何构建消息以允许答复和转发的细节。首先考虑二个用户通过答复各自的电子邮件消息进入通信的情况。通常,答复放在消息的开头后面跟着原始正文,并且结果消息返回到原始发送者。该过程可以一次又一次地重复,随着新答复放在消息的开头该消息长度不断增加。当该通信的二个参与者说相同的语言时这是简单的,但是当他们说不同的语言时出现问题。
假定讲英语人向讲德语人发送信息,则在转发到接收者之前英语原文要译成德语。现在如果该讲德语人决定答复该消息,他的德语文本译成英语,但是已经历经一次翻译(英语到德语)原始消息还应历经另一次翻译以从德语回到英语。由于现有机器翻译语言机的准确性有限,已经翻译过的文本的再次翻译不会和原始文本相同并且可能丢失大量的理解。所有先前翻译系统采用的方法没有采取避免多次翻译的措施。该问题的一种解决办法是总是包含原始文本和译本,从而当德国人答复时可以回送原始英语文本从而保证已经翻译过的文本不会相继地再次翻译。类似地,当讲英语人答复德国人时,重复该过程。这样,含有一系列英语和德语部分的消息如下面所示E1 →GT1,E1ET2,G2|GT1,E1 ←G2|GT1,E1E3|ET2,G2|GT1,E1 →GT3,E3|ET2,G2|GT1,E1其中E1 原始英语文本GT1 原始英语文本(E1)的德语译本G2 对原始英语文本的答复ET2 德语答复(G2)的英语译本G3 对该消息的英语答复
GT3 英语答复(E3)的德语译本在讲英语人和讲德语人之间的通信的每个阶段中,总是出现原始消息的译本,因为它是消息中接收者立即感兴趣的部分。但是,可能讲英语人偏好只看消息的英语部分并且类似地讲德语人偏好只看该消息的德语部分。从而,该附加模块可能需要把该消息的这些部分过滤成为一种语言或者另一种语言。但是,总是过滤这样的消息可能尤其对于双语人才是很受约束的,从而应存在一种可关掉该过滤处理的能力。工具栏上的按钮109可用来提供对该过滤处理的快速接通/断开控制。
在答复过程的每个阶段,该中央站点只需要翻译消息的第一部分,因为其余部分是由译文和原文对构成的。MIME消息的每个组成部分都可以标记为原文或译文。利用CONTENT-LANGUAGE字段(见RFC1766)和ISO639语言代码可以相应地标记消息的每个部分,这样content-languageencontent-languageen,de第一个例子表示伴生的MIME本体是“英语原文”而第二个例子表示“从英语到德语的译文”。这样,只要CONTENT-LANGUAGE含有单个语言标识符它表示原文,而当它含有二个标识符时则它是译文。从而,一旦一段正文已被翻译它清楚地标识为已翻译,从而该中央站点不会进行另一次可能会相应地降低可理解性的翻译处理。
利用上面的讲英语人和讲德语人之间的通信例子,则这些MIME本体会含有以下信息E1 content-languageenGT1,E1 content-languageen,decontent-languageenG2|GT1,E1 content-languagedecontent-languageen,decontent-languageen
ET2,G2|GT1,E1content-languagede,encontent-languagedecontent-languageen,decontent-languageen该附加模块和该中央站点可以容易地按构建MIME消息的各部分生成这些消息并且这些消息可以由过滤机制使用以便确定供显示的恰当部分。该中央站点还可以利用它们确保已译过的正文不会再译。
如果设法有把每个“消息组成部分”(即,ET2、G2和GT1、E1)从消息中分开从而帮助它们的处理,则会明显简化由逻辑分组的正文块(ET2、G2|GT1、E1)组成的MIME消息。幸运的是,MIME规范提供一种在单个逻辑单元中以不同的数据格式封装相同文本的几种表达方式的机制(参见RFC1521,7.2.3,多部分/替代)。
Message(content-typemultipart/mixed)BodyPart 1(content-typemultipart/alternative)BodyPart 1.1(content-typetext/plain)BodyPart 1.2(content-typetext/html)BodyPart 2(content-typemultipart/alternative)BodyPart 2.1(content-typetext/plain)BodyPart 2.2(content-typetext/html)尽管该MIME规范给出在不同数据格式下封装相同消息,但是并不存在为什么不能把这种特征扩展成区分一段正文的译文和原文的理由。利用RFC1766中定义的“content-language”,可以按如下把MIME消息构建成持有同一消息的多个语本Message(content-typemuitipart/mixed)BodyPart 1(content-typemultipart/alternative)BodyPart 1.1(content-typetext/rtf)(content-languagede,en)BodyPart 1.2(content-typetext/rtf)(content-languagede)BodyPart 2(multipart/alternative)BodyPart 2.1(content-typetext/rtf)(content-languageen,de)
BodyPart 2.2(content-typetext/rtf)(content-languageen)这种对MIME协议的次要(marginal)扩充不会影响现有电子邮件客户程序,因为它们会显示消息的所有组成部分,但是会大大帮助该附加模块为消息的发送者和接收者过滤适当的语言部分。
当向第三人转发消息时,可以采用上述答复机制,但是现在翻译系统31不再翻译该消息的第一部分而是利用原文建立附加元件。假定该通信过程中涉及讲英语、德语和法语的人并且讲英语人向德国人发送原始消息而德国人把它转发到讲法语人,这样E1→GT1,E1→FT1,GT1,E1其中E1 原始英语文本GT1 原始英语文本(E1)的德语译文FT1 原始英语文本(E1)的法语译文讲英语人和讲德语人之间的通信如上面说明那样进行,但是德国人向讲法语人的消息转发需要不同地处理,因为现在需要访问原始英语文本(E1)以进行翻译而不是访问该消息的第一部分(GT1)。否则,翻译质量可能下降,因为要把德语译本进一步翻译成法语。产生的FT1、GT1、E1消息由讲法语人接收并且过滤以如前面那样显示该消息的适当语言部分。在每个用另一种语言转发该消息的阶段,该从原始英语文本(E1)推导出另一种语言部分会补充到该消息中。例如如果该讲法语人现在把该消息转发给讲西班牙语人则由他们接收的消息会按如下包含原始英语文本(E1)的西班牙语(ST1)、法语(FT1)和德语(GT1)翻译E1→GT1,E1→FT1,GT1,E1→ST1,FT1,GT1,E1这样,转发过程造成原始文本的多种语言版本附在该消息上,而答复造成语言对(译文加原文)附在消息上。
为使情况略复杂些,假定该讲法语人不是象上例中那样把消息转发到该讲西班牙语人而是替代地对该德国人答复而该德国人进而答复该讲英语人,即如下
E1→GT1,E1→FT1,GT1,E1ET3,G3|GT2,F2|FT1,GT1,E1←G3|GT2,F2|FT1,GT1,E1←F2|FT1,GT1,E1其中E1 原始英语文本GT1原始英语文本(E1)的德语译本FT1原始英语文本(E1)的法语译本F2 对该讲德语人的法语答复GT2从该讲法语人的答复(F2)的德语译本G3 对该讲英语人的德语答复ET3从该讲德语人的答复(F2)的英语译本任何答复以及转发的组合类似于上面给出的例子那样处理。
应对消息转发所需的行为和答复所需的行为细微不同。由于该附加模块能把自己附着在Outlook的“答复”和“转发”按钮二种事件上,看来在电子邮件标题内包括一个指示要对消息施加哪种处理的应用专用参数(即,x-message-type=reply),从而不必把确定需要哪种行为的责任放在翻译系统31上是明智的。一旦翻译系统31处理了消息则在把消息传送到接收者之前可以去掉该应用专用参数。尽管该“message type”参数对于答复/转发消息处理可以是一个布尔变量,但是最好按列举方式处理该参数从而可以在其它消息处理环境中使用它。
答复及转发消息的组合大大增加在翻译系统31上支持多种语言核心的必要性。不难设想上面例子中的讲英语、德语、法语和西班牙语人之间的通信可能需要下述语言对英语-法语英语-德语英语-西班牙语法语-英语法语-德语法语-西班牙语德语-英语德语-法语德语-西班牙语西班牙语-英语西班牙语-法语西班牙语-德语随着语言数量的增加语言对的数量明显增加。如果翻译系统31上不支持某特定语言对,则若用户向另一个人在该不能得到的特定语言对情况下发送语言,该附加模块需要通过弹出对话框向用户警告该情况,随后他们可以采取任何补救动作。
需要不同地应对接收消息。用户语言分成第一、第二偏好以及默认语言。最初,利用用户的第一偏好语言确定用于翻译的语言时,如果目前不能使用该特定对则使用第二偏好,否则的话使用该默认语言(通常英语作为目前可使用的品质(quality)语言翻译系统支持从源语言到英语的翻译。)在此方式下系统尝试找到用于翻译的语言对。可以理解把用户语言分成第一、第二偏好以及默认语言是因为目前可使用的品质语言对数量有限。这种特性的需要随着对该中央站点添加越来越多的语言对会越来越小。
现在说明如何对消息处理附件的细节。附件可以采取许多形式,包括从明文、格式文本、电子表格、演示、数据库到音频/视频文件。对于文本、电子表格、演示和数据库附件,即任何带有大量正文的附件,进行翻译是恰当的。但是对于音频/视频材料目前进行翻译是不现实的。此外,用户可能不希望翻译某附件,因为他们出于任何原因认为该文档的机器翻译是不合适的。从而,附件的翻译应该完全不同于电子邮件本体的自动翻译。但是,当翻译是合适的时,则在附上文件的时刻或者在晚些时候访问附件特性时用户可以接通或者断开附件的翻译。
取决于附在消息上的文档的类型,能从或者不能从附件本身知道书写它的语言。例如,ASCII明码不带有书写它的语言的信息,而诸如RTF或HTML文档的格式化文档可能包括书写它的语言的信息。这样,在附上文件时可能需要规定文档的语言。如果附件包含格式文本则能较好地得到语言信息从而用户不必请求该信息。相反,如果附件是明文则用户需指出书写该文档使用的语言。
当接收者答复消息时,扔掉所有附件并且当接收答复时只提供它们存在的指示。但是,当转发消息时则各附件作为消息的一部分保留。对于答复附件是否翻译无关紧要,因为附件永远不会回送到原始发送者。但是,转发则完全不同,因为附件出现和前面说明的电子邮件本体出现的相同的问题。可以研究上面给出的讲英语人向德国人发送消息并且该德国人接着把它转发给讲法语人的例子。在该讲英语人决定翻译某附件时他不知道该德国人会把该消息转发给法国人。从而该消息必须包括该附件的英语原文和德语翻译,从而当该德国人把该消息转发给讲法语人时该原始英语附件按如下译成法语EA1→GAT1,EA1→FAT1,GAT1,EA1其中EA1 原始英语附件GAT1原始英语附件(EA1)的德语译本FAT1原始英语附件(EA1)的法语译本当消息含有多于一个的附件时,则只有那些用户已决定要翻译的特定附件会有包含在该消息内的原文和译文。
当修改附件并且然后该消息返回到发送者或者转发到另一方时出现进一步的复杂化。修改可以包括就地编辑附件或者把修改的文档保持在盘上接着重新附到该消息上。在这二种情况中,必须把附件对待成是一个附到消息上的完全新的项。在上面的例子中,当该讲德语人在把该消息转发到该讲法语人之前修改附件时,它和该消息中是否包括该附件的英语原文无关,因为现在它是该附件的需要翻译成法语的德语版本。很清楚,出现英语到德语以及德语到法语的双翻译会造成可理解性的下降。用户必须警惕这种潜在的双翻译危险并且得到继续发送该消息或取消该操作以及采取一些补救行动的机会。
另一个需要对附件考虑的操作是删除。在为原始语言文档的情况下不需要采取进一步的行动。但是,当消息含有某文档的原文和译文时,则删除一个或另一个会形成如下的一些翻译问题1)原文删除并转发消息在此情况下丢失用于翻译的原文只留下可使用的译本于是会造成双翻译。
2)译文删除并转发消息在此情况下原文可用于翻译并且可以无任何问题地发送消息。
附件的原文及译文可看成是单个实体,从而删除一个应去掉另一个。实际中,把二个附件对待成是单个逻辑实体对于一些用户可能显得受约束。一种更好的方法应是对用户形成关于他们的行动的后果的适当警告,从而他们可以决定继续删除或取消该操作。
现在研究处理电子邮件内的项目的问题。Outlook支持在电子邮件本体内作为附加文本或者在附件内添加各种信息项到邮件中。下节中只讨论性质上为文本的项。
当发送电子邮件消息内的电子邮件时,Outlook插入作为该封装消息的附件的嵌入电子邮件。从而上面讨论的应对附件的所有特征会等同地应用到嵌入电子邮件上。
在Outlook中,注释可以作为正文或附件添加到电子邮件上。假定把它按正文添加,则注释形成电子邮件本体的一部分从而不能区分它的电子邮件内容的其余部分。替代地,如果作为附件添加,则它变成一个简单的基于文本的附件并且对应地受到处理。
现在说明可以怎样改进翻译质量的细节。尽管用户通常知道机器翻译不是100%满意的,但是在没有用来改进翻译质量的适当机制情况下,可以最贴切地把翻译表征为原文的“要点”。尽管翻译的品质不那么可以通过在系统中包含各种翻译选项达到,如果不使用这些改进翻译质量的机制,翻译仍然好到足以传递原始含义。但是,翻译的质量可能阻碍一些用户继续使用翻译服务。这样,设置改进翻译质量的机制的能力必须是本系统的一个基本部分。
下面列出由典型翻译服务器例如SystranTM翻译服务器支持的一些选项。
文档类型专题词汇表不翻译(DNT)列表客户专用字典(CSD)Systran翻译服务器适于用在本发明,同样可能会开发其它翻译产品。
文档类型定义文本的内容类型并且可以明显影响翻译质量。下面列出Systran翻译服务器支持的文档类型摘要对话的/口语的信件新闻会议记录无零件目录专利散文用户手册至少从该列表选择任一项则显示信息的下拉选择框是最合适的装置。
专题词汇表是另一个用来改进翻译准确性的工具。选择适当的专题词汇表可以大大地改进翻译质量。下面是Systran翻译服务器支持的词汇表列表汽车航空/航天化学口语的计算机/数据处理地球科学经济/商业电子学食品科学综合法律生命科学数学机械工程医学冶金学军事科学海洋/航海照相术/光学物理/原子能政治科学用户可以为单个消息选择最多四个词汇表并按优先级排列。当消息到达该中央站点时,首先选取优先级最高的词汇表以得到词或词组的含义,如果找到该词或词组则在翻译过程中使用其含义。但是,如果未在优先级最高的词汇表中找到该词或词组,则顺序地选择下一个优先级最高的词汇表并且依次类推。在任何词汇表中都没有找到某个词的情况下会使用来自该语言对的普通字典的含义。
还可以利用“不翻译”表改进翻译质量。“不翻译”词汇表包括翻译机应不改变的诸如人名或地名的条目。为了输入和更新该信息简单的编辑框应是足够的。
和前面的它们的相关信息保持在该中央站点上而不是保持在该附加模块内的文档类型和专题词汇表选项不同,“不翻译”列表是自由格式信息并且是用户专用的。从而,用户规定的词汇表附在发送到翻译系统31的每个消息上。另外,对于具有他们自己的消息传送能力的用户,可以和用户专用表组合的公司级“不翻译”表可驻留在消息传送服务器上。在此情况下,这二个表都会附在消息上并传给该中央站点。
构成消息的大部分电子邮件本体可能都需要翻译。但是,当从另一种语言借用专用短语并在电子邮件中使用时或者在消息中使用一个用户不希望翻译的但不在“不翻译”列表中的专用词时,则需要一种使翻译机注意该正文从而使它保持不变的机制。用户标记一段正文的最方便方法是用和剪切、拷贝和粘贴操作相同方式突显该正文。利用翻译系统选单选项中的一个选项可以把该选定的正文标记成“不翻译”。替代地,利用右鼠标点击可以给出弹出对话,然后选择“特性”可以实现相同的操作。很清楚,这需要修改“公用对话”以便插入该翻译系统专用特性。
当把Outlook文本编辑器配置成用于格式文本例如RTF或HTML时在电子邮件正文中插入标记才是可行的。当把它配置成用于明文时,仍可以在正文流中插入标记,但是用户可以看到它们从而可能降低消息的可读性。为了“不翻译”突显正文的能力应仅在使用RTF、HTML或其它格式文本时才予以支持。
用来突显一部分正文的标记可能不是翻译机使用的标记。因此,该附加模块利用最适当的手段标记RTF或HTML消息中的正文,而该中央站点需要在把该消息提交给翻译机之前识别这些标记并且完成任何必要的转换。
还可以提供客户专用字典,其允许用户定义不在标准字典中的但在他们的机构或行业中具有特殊的或独特的含义的条目。
很明显,客户专用字典和特定的源语言-目标语言配对相关,从而它的选择必须基于目前在工具栏选项上定义的语言配对。客户专用字典中的条目包括源语言下的词或表达、目标语言含义以及一些语法信息。和“不翻译”表一样,客户专用字典是和特定用户关联的,从而客户专用字典必须附在发送到翻译系统31的每个消息上。另外,对于具有他们自己的消息传送服务器的用户,可以支持一个和用户的客户专用字典一起使用的集中式客户专用字典。由此,需要把二个字典附在消息上而不是只对翻译系统传送单个客户专用字典。
如果系统不支持上面的特性或类似物,则翻译的质量下降到可以按原文要点描述的水平。
即使采用上面讨论的所有选项,仍不能保证翻译服务器不会被一些不知道的词或短语难倒,从而会在翻译输出中出现原文。为了提供某种程度的反馈,翻译系统可以把它不理解的任何东西标记为“未找到词”。但是,在常规过程中发送者不访问译后消息从而不能对翻译选项,例如DNT表和CSD表,做出适当调整以便说明“未找到词”。
所需要的是通过回声按钮104激励的回声功能,从而用户可以向翻译系统31提交某消息并对他回送带有所有“未找到词”以及以某种方式标记为具有多重翻译的词的译后消息。
尽管对“未找到词”的检查涉及向翻译系统31发送该感兴趣的消息以进行处理,但是该消息随后不传送到接收者,从而它是一种不由“发送消息”功能支持的动作。由此,“未找到词”检查需要工具栏18上的一个用于此目的的独立按钮,从而添加回声按钮104。
当使用回声功能时,用户在常规方式下建立一个消息并点击工具栏18上的回声按钮104以把消息发送到中央站点31上进行试译。该消息和有关翻译过程中遇到的问题的信息一起回送给该发送者。主要存在二个为什么翻译过程可能遇到问题的原因词未在翻译机的字典中找到或者一个词取决于内容在目标语言中具有多种翻译从而该翻译机不能确定应该使用哪个含义。
如果使用它自己的字典组的翻译机报告“未找到”状态,则中央站点31上的翻译服务34会为恰当翻译搜索一个或更多的其它联机字典。这些联机字典可以位于中央站点31上或者位于别处从该中央站点访问。用于未找到词的任何可能的翻译选项附在该消息上以便回送到该发送者。如果在联机字典上找到某个词的翻译则该词是添加到CSD表上的候选,而若未找到它是包含在DNT表中的候选。即使未在联机字典中找到某个词,也不必必须指出不能得到适当的翻译,因为这样的字典不能一种语言内有每个词或短语,向其展示从该联机字典得出的信息的用户可以决定使用该信息或者咨询任何他们觉得适当的语言资源,当然联机资源也可以是该资源之一。
通过该中央站点的消息处理部分从联机字典得到的信息,例如“未找到词”的各种可能翻译,作为XML结构化数据块附在译后消息上并把结果消息回送到发送者,随后按常规方式该消息会出现在用户的接收箱中。该消息会含有位于其标题中的用来标识它一个含有附加信息的回声消息的信息。从而当该用户选择该消息时,该附加模块会利用该附上的XML数据块突显那些引起翻译处理困难的词。选择突显词中的一个,例如通过利用右鼠标点击某个突显的正文段,会造成向该用户显示为该涉及到的词回送的信息。接着用户可以选择条目中的一条以包含在他们的CSD中,或者转到该中央站点以便搜索该联机字典以及咨询其它资源以得到适当的翻译并把该信息添加到他们的CSD中。如果该中央站点不回送信息则该词可能是一个名词,随后用户可把它添加到他们的DNT表中。
在用户处理了部分或所有的突显正文后,他们可以选择进行另一次回声操作以便检查他们对CSD和DNT添加的新信息产生无故障的翻译。在这一刻之前用户一直通过一个对该消息提供“只观看”透视的窗口在该回送的信息上操作。为了为进一步试译发送该消息或者为了修改该消息或添加补助消息或者为了修改接收者列表,用户需要选择工具栏18的“再发送”按钮107,于是该消息拷贝到另一个能使用户在发送前修改该消息的窗口中。一种选择是修改该消息,从而在不能通过“回声”功能解决突显的翻译问题的情况用不同的词或不同的一些词代替某个词或一些词。一旦修改了消息,可以利用发送按钮101发送它或者再次利用“回声”按钮发回进行另一次试译。
用户可以按他们希望那样多次调用“回声”功能直到他们满意得出的翻译为止,随后他们可以利用发送按钮101按常规方式把该消息发送到预期的接收者。当消息经过回声处理后它包括和“未找到词”以及带有多种翻译的词关联的带标记的信息。在用户采取肯定动作把在该消息中标记的信息加到他们的DNT和CSD中之前该信息保持附在该消息上,随后最终经该翻译站点把该消息发送到接收者前任何剩下的带标记的信息会伴随该信息。此时翻译站点可以在翻译处理中使用该信息,但在把该消息转发到接收者之前会去掉所有带标记的正文。
由于可以在构建消息的任何尚不存在接收者的阶段调用“回声”功能,在使用该功能时定义一个或多个接收者。在未定义接收者或多个接收者的情况下,系统在为了试译发送消息前提示用户规定目标语言。对于其语言不和发送者语言匹配的单个接收者,则假定应用他们的语言。当定义多个接收者时,则必须为每种可能的目标语言调用“回声”功能。这不是硬性执行的,用户可以选择在任何时刻发送消息以便了解以前未调用过“回声”功能的目标语言可能出现的翻译问题。
该“回声”功能对用户提供一种检查结果翻译的简单机制。如果没有这种立即反馈,用户更难以通过调整翻译选项和/或加强他们的CSD和DNT改进翻译质量。
所有其它消息选项不应受到该“未找到词”检查程序的影响。例如,如果用户不选择翻译附件,则它不应由翻译机处理并且由此不出现任何该附件内的任何未知词或短语。在利用该“未找到词”检查程序一次或多次迭代用户满意不存在可辩别的翻译问题后,则可以在常规方式下向接收者发送该消息。
在通信链路的接收者端存在对应的情况,即在完成消息翻译之前用户应能对那些可以用来改进翻译处理的手段做出任何有价值的调整。这样,通常在用户计算机系统的屏幕上向用户显示接收到的电子邮件,它的翻译质量可以不必是最佳可能而是足以提供基本内容的要点。由于现在接收了他们自己语言下的消息,用户处于为了改进翻译质量应对消息施加哪个手段的判断地位。从而,一旦消息已被初始翻译过,用户得到利用再提交按钮106再次提交消息的机会,以便利用他们认为会改进翻译质量的手段按他们愿意多的次数重新翻译至到他们满意结果为止。所有上面说明过的手段,包括“未找到词”表,都是再提交处理的一部分。
接收到的消息含有发送者母语下的信息以及只翻译电子邮件本体任何附件保持未翻译的初始翻译,因为在用户能读译后电子邮件之前他们不能做出任何或所有附件应翻译的判断。用户可以决定他们是否希望继续只重新翻译电子邮件本体或者在此过程中包括任何附件。例如,如果附件是电子表格则翻译这种文档对用户不起作用,从而用户给出重新翻译过程中不翻译某个或全部附件的选项。例如在选择再提交功能时通过生成一个消息中要重新翻译的部分的选择表提供该选项。这使用户能选择哪些要再提交的部分。
再提交是一个在接收到的消息上进行的非常类似答复和转发的动作。另外,常规系统上不存在远程地提供和再提交相似的功能的按钮,从而为了该目的在工具栏上需要再提交按钮106。
“再提交”特性允许消息的接收者把它发送到中央站点31进行翻译并把结果消息返回给他们。当接收不翻译的消息并且自动语言检测处理错误地识别源语言时或者当从翻译服务的订户接收译后消息并且他们不正确地定义接收者语言时需要该特性。在这二种情况中,接收者可以为翻译处理重新定义源语言或目标语言并且再提交该消息。
除了如上面说明的那样修正源语言或目标语言不符外,再提交功能的另一个用途是提高翻译质量。这样当选择再提交功能时向用户显示一个窗口以使用户能重新定义源语言或目标语言、重新定义CSD表或DNT表或者重新定义任何其它翻译参数从而得到更好的翻译。
提高翻译质量的主要部分是CSD,CSD提供从源语言到目标语言的或者在翻译机的字典上没有的或者代替该字典上的条目的翻译。CSD的常规使用是提供从消息创造者的语言(源)到观看者的语言(目标)的翻译。再提交情况下使用CSD需要一个从一种外国语言到接收者的母语的CSD。对于个人用户这是一个特殊问题,因为他们不变地具有从他们自己的语言到某个别的语言的CSD。但是对于公司用户,他们可能具有用于在二个方向上进行语言间的翻译的CSD,从而利用再提交提高翻译质量可能是一种适用的操作。如果消息是从该翻译服务的订户发送的翻译质量可能是好的,从而减轻对再提交特性的需要。相反,在消息来自非订户的情况下,初始的翻译质量可能不理想从而再提交功能是一种重要的系统特性。
用户应设定各种翻译选项以控制翻译输出的质量。需要以某种方式在消息内传送该信息从而该中央站点可以相应地设定翻译机。该信息只由翻译机使用从而不会构成发送给该接收者的重构消息的一部分。
幸运的是,MIME协议(参见RFC1521)在定义各种标准本体类型之外允许系统设计者对已定义的应用专用本体类型提供它们只存在于它们自己的应用域内。在此特定应用中该附加模块把新的本体类型插入到该消息,随后该中央站点去掉它以遵守该应用专用准则。
类似于RFC822协议,RFC1521利用x-token格式提供应用专用定义,其中token(权标)可以是用于该新本体类型的任何适当项目content-typex-token/subtype元素“subtype”(子类型)可以包含任何对该应用适宜地用来进一步限制该定义的项目。例如,不是在一个单个MIME本体部分中传送所有的翻译选择,而是可更合适地加以细分,即content-typex-translation/document-typecontent-typex-translation/topical-glossariescontent-typex-translation/do-not-translate为了提供最大灵活性,所有翻译选项是按选项名后面跟着该选项参数并且每个项在单独的行上传送的,如下面的例子示出那样glossary1=computers/data processingglossary2=electronics尽管可以利用能节约处理时间的枚举变量(例如SystranTM的glossaries)传送一些翻译选项,但是大部分信息本质上是文本式的。
另外,尽管要使用的SystranTMglossaries(词汇表)可以利用枚举变量规定(例如,aviation/space=4),该方法不能不适用于其它加在该翻译服务器的翻译引擎。另一个要考虑的因素是,MIME消息处理基本上是串语法分析和比较操作,从而通过一些额外位的串处理提取翻译选项是意义不大的。这样,在应对未来可能出现的改变上,采纳基于文本的方法传送翻译选项可提供最大的灵活性和坚固性。
还存在大量其它需要考虑的项目,例如标点符号、日期格式和语言专用缩写。但是,可以通过该中央站点处理这些类型的语言或文化本地化特性,因为它们会应用于所有用户,简化该处理可改进翻译质量。
现在说明在用户系统上安装该附加模块时会发生的细节。一旦安装该附加模块只需要和用户的第一偏好语言、第二偏好语言以及默认语言有关的消息,以便本发明在接收到的消息上工作。还要修改联系表10a和联系信息项格式以便能包含联系人的偏好语言。会指示用户为了该翻译服务的自动操作建议他们在最早的机会时填入接收者的语言信息。未在联系表中输入接收者的语言可能造成在未翻译情况下直接把消息发送到接收者,如前面讨论那样。
依靠安装在用户系统上的该附加模块可以在该系统上控制插入到接收者和发送者语言字段里的信息并利用ISO-639语言代码例如法文控制和场所无关的信息,但是出于本地化目的它是在该附加模块内翻译的,例如French、francais、francés总是会按双字符码“fr”始终如一地提供给该中央站点。
利用右鼠标点击选择发送信息上To、Cc或Bcc字段中的电子邮件地址造成弹出对话框的出现。选择该弹出框上的“特性”显示一个含有各种表格的对话,以示出该联系表中保持的该特定人的有关信息。该对话框可设置成显示该接收者的语言,最好在显示该人的基本信息的第一表格中。
当前Outlook版本中的一个特性是设定“目录服务”的能力,其利用轻型目录访问协议(LDAP)(参见RFC2251)访问专用或公用目录。用户可以搜索公司内部目录或者因特网上的可公共访问的目录以得到个人细节例如他们的电子邮件地址。
在当前的Outlook版本中,可以利用选单项“Tools/Accounts”设定目录服务,然后访问“Tools/Address Book”会显示地址薄会话,随后选择工具栏上的“找人”按钮会显示“找人”对话框。可以利用“查找”下拉列表框选择具体的目录服务并且在输入期望的搜索信息后可以搜索该指定的目录。假定搜索是成功的则可以把该人的细节加到用户的联系表上。此时显示“特性”对话框,于是可以定义该人的语言,选择OK按钮会把该信息保持在该联系表中。
在安装时,如上面说明那样对联系表添加专用语言字段。该语言字段加在“特性”对话中(最好在初始姓名表上),从而用户可以在各个人的细节保持在该联系表中前对各个人更新该字段。
Outlook日志可以保持和Outlook内发生过的一些不同的事件有关的信息,这些事件之一和电子邮件消息相关。可以把该日志设置成登记对或从该联系表中的每个人或者一些选定的人发送或接收的电子邮件消息,可以利用该特性跟踪那些调用过翻译服务的人。
上面的章节说明本发明可以怎样在微软的OutlookTM内实现,但是这些示出的例子决不是排它的。所讨论的大多数特征如果不是全部的话可应用于其它在基于视窗的计算机系统上运行的电子邮件客户程序并且可应用于在诸如Linux的操作系统上运行的类似电子邮件客户程序,因为为应对电子邮件通信而进行的任务是处处公用的。各种电子邮件客户程序上出现的不同可能在运行期在该附加模块内提供。反之,编译期改变可能把该技术从一种操作系统移植到另一种操作系统上。
本质上,本发明内说明的技术不是通信协议专用的、不是电子邮件客户程序专用的也不是操作系统专用的,从而可以适应用于许多不同的通信环境中。
权利要求
1.一种用于人类通信的通信系统,包括设置成从发送者发送通信的发送系统、设置成为接收者接收该通信的接收系统、以及翻译系统,其中该发送系统设置成,当发送通信时用于确定和发送者关联的第一人类可认知语言以及和接收者关联的第二人类可认知语言,如果第一和第二语言不同则用于将该通信以及该接收系统的地址发送到该用于翻译的翻译系统从而使该翻译系统能接收该被转向的供翻译的通信以及把译后通信转发到该接收系统,但若第一和第二语言相同则用于将该通信直接发送到该接收系统;而且其中该接收系统设置成,一旦接收通信则确定和发送者关联的第一人类可认知语言以及和接收者关联的第二人类可认知语言,如果第一和第二语言不同则将该通信以及该接收系统的地址发送到该用来翻译的翻译系统从而使能该翻译系统接收该要翻译的通信以及把译后通信回送到该接收系统,但若两种语言相同则接收该发送到该接收系统的通信。
2.根据权利要求1的系统,其中该发送系统包括一个把一种人类可认知语言和多个接收者中的每个关联起来的地址表。
3.根据权利要求1或2的系统,其中该发送系统设置成把接收者的地址保存在该被转向通信的标题中以供随后由该翻译系统提取。
4.根据上述任一权利要求的系统,其中该接收系统设置成把接收者的地址保持在该被转向通信的标题中以供随后由该翻译系统提取。
5.根据上述任一权利要求的系统,其中该翻译系统设置成在把译后消息发送到该接收系统之前从该消息中去掉它自己的地址。
6.根据上述任一权利要求的系统,其中该发送系统包括发送者输入以使发送者和发送系统能够交互从而控制翻译。
7.根据权利要求6的系统,其中该发送者输入使发送者能够输入具体通信的接收者语言。
8.根据权利要求6或7的系统,其中该发送者输入使发送者能够把至少一个翻译参数和要发送的通信关联起来,从而翻译系统可以以至少部分地由该至少一个的翻译参数确定的方式翻译该通信。
9.根据权利要求6至8中任一权利要求的系统,其中该发送者输入使发送者能向翻译系统发送要翻译的通信并在把译后通信发送到接收者之前回送到该发送者以进行检查。
10.一种包括一个设置成从发送者向接收者发送通信的发送系统以及一个翻译系统的通信系统,其中该发送系统设置成判定一个通信何时需要被翻译并把它转发到该用于翻译的翻译系统,并且该发送系统包括设置成使发送者把通信发送到该用于翻译的翻译系统并且回送给该发送者以在把译后通信发送到接收者之前进行检查的发送者输入。
11.根据权利要求9或10的系统,其中该翻译系统设置成突显返回消息的翻译问题。
12.根据权利要求9至11中任一权利要求的系统,其中该翻译系统设置成建议用于改进返回消息的翻译的可能性。
13.根据权利要求9至12中任一权利要求的系统,其中该发送者输入设置成使发送者能够修改返回的通信从而改进翻译。
14.根据权利要求9至12中任一权利要求的系统,其中该发送者输入设置成能使发送者修改至少一个和返回通信关联的翻译参数从而改进翻译。
15.根据权利要求6至14中任一权利要求的系统,其中该发送者输入使发送者能控制是否应翻译插到通信中的附件。
16.根据权利要求6至15中任一权利要求的系统,其中该发送者输入使发送者能控制是否应翻译嵌在该通信中的消息。
17.根据上述任一权利要求的系统,其中该接收系统包括接收者输入以使接收者和接收系统能交互从而控制翻译。
18.根据权利要求17的系统,其中该接收者输入使接收者能把至少一个翻译参数和要发送的通信关联起来,从而翻译系统可以以至少部分地由至少一个翻译参数确定的方式翻译该通信。
19.根据权利要求18的系统,其中该接收者输入设置成使发送者能把接收到的通信以及至少一个翻译参数再提交到该翻译系统以改进该接收到的通信的翻译。
20.一种包括一个设置成为接收者接收通信的接收系统和一个翻译系统的通信系统,该接收系统包括设置成显示通信以供接收者观看的显示装置,并且包括设置成使该接收者能向该翻译系统提交该接收到的通信以及至少一个翻译参数从而提供该接收到的通信的由接收者控制的翻译的接收者输入。
21.根据权利要求19或20的系统,其中所述至少一个翻译参数包括一种要从其翻译该通信的语言。
22.根据权利要求19至21中任一权利要求的系统,其中所述至少一个翻译参数包括一种要把该通信翻译成的接收者语言。
23.根据权利要求19至22中任一权利要求的系统,其中该接收者输入设置成使接收者能识别该通信的需要翻译或重译的各个部分。
24.根据权利要求17至23中任一权利要求的系统,其中该接收者输入使接收者能控制是否应翻译插入到通信中的附件。
25.根据权利要求8至14和18至23中任一权利要求的系统,其中该翻译系统设置成在翻译通信后从其去掉至少一个翻译参数。
26.根据上述任一权利要求的系统,其中该发送系统设置成能把一通信寻址到多个接收者、把每个接收者的接收者语言和发送者的语言比较并且对于任何语言和发送者语言不同的接收者把该通信以及每个需要翻译的接收者的语言和地址发送到该翻译系统。
27.根据权利要求26的系统,其中该发送系统设置成根据接收者的语言对接收者分组从而该翻译系统只需要对每种接收者语言翻译该通信一次。
28.根据权利要求26或27的系统,其中该发送系统设置成向该翻译系统发送该通信的单份拷贝以及关于每个接收者的信息,并且该翻译系统设置成把该通信翻译成每种需要的语言。
29.一种包括一个设置成从一个发送者向多个接收者发送通信的发送系统以及一个翻译系统的通信系统,其中该发送系统设置成把每个接收者的接收者语言和发送者的语言比较并且对于所有其语言和发送者的语言不同的接收者向该翻译系统发送该通信的单个拷贝以及每个需要翻译的接收者的语言和地址,并且该翻译系统设置成把该通信翻译成每种需要的语言并把译后通信转发到这些接收者。
30.根据权利要求28或29的系统,其中该发送系统设置成对每个接收者关联一个状态并且该翻译系统设置成按至少部分地通过所述状态确定的方式把译后消息转发到各个接收者。
31.根据权利要求30的系统,其中该发送系统设置成把每个接收者的状态定义为一组状态中的一种状态,该组状态包括指示该接收者是通信寻址到其上的主接收者的第一接收者状态、和指示该接收者要接收该通信的拷贝但他不和任何其他接收者等同的第二接收者状态。
32.根据权利要求31的系统,其中该发送系统设置成在所述状态组中定义用于指示该接收者要接收该通信的拷贝并且和其他接收者等同的第三接收者状态。
33.根据权利要求31或32的系统,其中该翻译系统设置成,当把译后消息转发到第一状态的接收者时去掉任何第二状态接收者的通信细节,并且单独地把译后通信转发到每个第二状态接收者。
34.根据上述任一权利要求的系统,其中该翻译系统设置成,对于该通信的任何翻译过的部分按修改过的通信向接收者发送该部分的翻译和原始语言版本。
35.一种用于人类通信的通信系统,包括一个设置成从发送者发送通信的发送系统和一个设置成为接收者接收该通信的接收系统,该通信系统包括一个设置成翻译该通信的至少一部分的并且组合该翻译部分以及该部分的原文以形成供发送到该接收系统的修改的通信的翻译系统。
36.根据权利要求34或35的系统,其中该翻译系统设置成提供通信识别装置以便能识别该部分的原始语言版本。
37.根据权利要求34至36中任一权利要求的系统,其中该发送系统设置成在该通信内定义多个部分从而该翻译系统可以以适当方式处理每个部分。
38.根据权利要求37的系统,其中该发送系统设置成识别出所述这些部分中任何未译成接收者语言的部分。
39.根据权利要求37或38的系统,其中该发送系统设置成定义这些部分中的每个部分从而它可以使它自己的翻译参数和它关联。
40.根据权利要求37至39中任一权利要求的系统,其中所述部分中的一个包括附件。
41.根据权利要求37至40中任一权利要求的系统,其中所述部分中的一个包括嵌在该通信中的消息。
42.根据权利要求34至41中任一权利要求的系统,其中该接收系统设置成能把修改的通信转发到另外至少一个的接收者、把该另外的接收者的语言和该通信的原始语言及译后语言比较以及如果需要另外的翻译则把该修改的通信发送到该翻译系统以另外翻译并且发送标识该部分的原始语言版本的指示符。
43.根据权利要求34至42中任一权利要求的系统,其中该翻译系统设置成从该部分的原始语言版本进行所述另外的翻译。
44.根据权利要求43的系统,其中该翻译系统设置成把该部分的该另外的翻译添加到该修改的通信上以形成一个包括该部分三种不同语言版本的进一步修改的通信。
45.根据权利要求34至44的系统,其中该翻译系统设置成提供识别装置以便能识别通信的每个部分的原文版本的语言以及该部分的任何随后的各种翻译的语言。
46.根据权利要求45的系统,其中该接收系统包括设置成向接收者显示该通信的显示装置、和设置成根据各个部分的语言选择该通信的各个要显示的部分的控制装置。
47.根据权利要求46的系统包括使接收者能选择这些译后部分中的至少一部分用哪种语言或哪些语言显示的输入装置。
48.根据上述任一权利要求的系统,其中该接收系统设置成监视从该翻译系统之外接收的通信以识别它们为哪种人类可理解语言、比较该语言和接收者的语言以及如果不同把接收到的通信发送到该翻译系统以翻译成接收者语言。
49.根据权利要求48的系统,其中该接收系统设置成通过分析其内容识别接收到的通信的语言。
50.根据上述任一权利要求的系统,其中该翻译系统设置成从该发送系统接受加密通信、在安全方式下解密和翻译消息以及接着加密译后消息并转发到该接收系统。
51.根据上述任一权利要求的系统,其中该翻译系统设置成在安全网络上从该发送系统接受通信、翻译消息并在同一个安全网络上把译后消息转发到该接收系统。
52.一种用于人类通信的通信系统,包括一个设置成从发送者向接收者发送通信的发送系统,其中该发送系统设置成,当发送通信时则确定和发送者关联的第一人类可认知语言以及和接收者关联的第二人类可认知语言,并且如果第一和第二语言不同则把该通信以及该接收系统的地址发送到用于翻译的翻译系统从而使该翻译系统能接收该转向的供翻译的通信以及把译后通信转发到该接收系统,但若第一和第二语言相同把该通信直接发送到该接收系统。
53.一种用于人类通信的通信系统,包括一个设置成接收从发送者到接收者的通信的接收系统,其中该接收系统设置成,一旦接收通信则确定和发送者关联的第一人类可认知语言以及和接收者关联的第二人类可认知语言,并且如果第一和第二语言不同则把该通信以及该接收系统的地址发送到用于翻译的翻译系统从而使该翻译系统能接收该用于翻译的通信以及把译后通信回送到该接收系统,但若二个语言相同则接受该发送到该接收系统的通信。
54.一种发送通信的方法,包括识别要从发送者发送到接收者的通信,确定和发送者关联的第一人类可认知语言以及和接收者关联的第二人类可认知语言,如果第一和第二语言不同把该通信以及该接收系统的地址发送到用于翻译的翻译系统从而能使该翻译系统接收该被转向的供翻译的通信以及把译后通信转发到该接收系统,但若第一和第二语言相同把该通信直接发送到该接收系统。
55.一种接收通信的方法,包括识别来自发送者的将由接收者接收的通信,确定和发送者关联的第一人类可认知语言以及和接收者关联的第二人类可认知语言,如果第一和第二语言不同则把该通信以及接收系统的地址发送到用于翻译的翻译系统从而使该翻译系统能接收该用于翻译的通信以及把译后通信回送到该接收系统,但若二个语言相同则接受该发送到该接收系统的通信。
56.一种发送通信的方法,包括把通信从发送系统发送到翻译系统,翻译该通信的至少一部分,组合该译后部分和该部分的原文以形成修改的通信,以及把该修改的通信发送到接收系统。
57.一种从发送者向多个接收者发送通信的方法,包括比较每个接收者的接收者语言和发送者语言,对所有其语言和发送者语言不同的接收者把该通信的单个拷贝以及每个需要翻译的接收者的语言和地址发送到翻译系统,在该翻译系统把该通信译成每种需要的语言,以及把译后通信转发到这些接收者。
58.一种利用通信系统发送通信的方法,该方法包括确定何时通信需要翻译,把该通信转发到用于翻译的翻译系统,把该通信回送到发送系统并把它向用户显示,检查该翻译,以及如果满意该翻译把该译后通信发送到接收者。
59.一种利用通信系统接收通信的方法,包括为接收者接收通信,显示该通信供该接收者观看,在该接收者的控制下把该接收到的通信以及至少一个的翻译参数提交到翻译系统,从而提供该接收到的通信的接收者控制的翻译。
60.一种本质上如上面参照各

的通信系统。
全文摘要
一种用于人类通信的通信系统包括发送计算机系统(11)、接收计算机系统(21a)和翻译网站(31)。该发送系统(11)设置成,在发送通信时确定和发送者关联的第一人类可认知语言以及和接收者关联的第二人类可认知语言,如果第一和第二语言不同把该通信发送到该翻译系统(31)进行翻译。和该通信一起发送接收系统的地址。翻译该转向的通信并由该翻译系统(31)转发到该接收系统。如果第一和第二语言相同,该发送系统(11)把该通信直接发送到该接收系统(21a)。该接收系统对照接收者的语言检查输入通信的语言,如果需要把该通信发送到该翻译站点(31)进行翻译并回送。
文档编号G06Q10/00GK1720525SQ200380104740
公开日2006年1月11日 申请日期2003年11月4日 优先权日2002年11月6日
发明者阿伦·威尔金森, 爱德华·C.·马歇尔 申请人:特兰斯洛神控股公开有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1