处理因特网表单的方法和设备的制作方法

文档序号:6469970阅读:371来源:国知局
专利名称:处理因特网表单的方法和设备的制作方法
技术领域
本发明涉及改进的数据处理系统,尤其是在网络数据处理系统中的客户机和服务器之间传送数据的方法和设备。更具体地说,本发明提供处理因特网表单的方法和设备。
背景技术
因特网(也称为“互联网络”)是借助网关连接在一起的一组可能不同的计算机网络,所述网关处理数据传送和从发送网络到接收网络使用的协议的消息转换(如果需要的话,用分组来处理)。当用大写字母开头时,术语“因特网”指的是使用TCP/IP协议组的网络和网关的集合。
因特网已变成信息和娱乐源泉的文化固定器。作为推销活动的组成部分,许多企业正在创建因特网网站,把企业提供的产品或者服务通知消费者或者提供旨在使消费者产生品牌忠实度的其它信息。许多联邦、州和地方政府机构也正在把因特网网站用于提供信息的用途,尤其是那些实际上必须和社会的所有部门来往的机构,例如国家税务局和国务秘书。提供信息指南和/或可搜索的在线公共记录数据库可降低业务开支。此外,作为一种商业交易媒体,因特网正变得越来越普及。
当前,普遍采用的通过因特网传送数据的方法是采用万维网环境,也简称为“Web”。存在用于传送信息的其它因特网资源,例如文件传送协议(FTP)和基于菜单驱动的Internet信息查询工具Gopher,但是还没有达到Web的普及程度。在Web环境中,服务器和客户机利用超文本传送协议(HTTP)(一种处理各种数据文件(例如文本、静止图形图像、音频、运动视频等)的传送的已知协议)实现数据交换。各种数据文件中的信息被格式化,以便借助标准的页面描述语言-超文本标记语言(HTML)呈现给用户。除了基本呈现格式之外,HTML允许开发人员规定由统一资源定位符(URL)标识的到其它Web资源的“链接”。URL是定义访问特定信息的通信路径的特殊语法标识符。客户机可访问的信息的每个逻辑块,称为“页面”或者“Web页”,由URL确定。URL提供查找并访问这种信息的通用、一致的方法,这不一定是针对用户而言,而主要是针对用户的Web“浏览器”而言。浏览器是能够提出对标识符例如URL所标识的信息的请求的程序。用户可通过浏览器的图形用户界面(GUI)输入域名,以便访问内容源。域名由域名系统(DNS)自动转换成网际协议(IP)地址,域名系统是一种通过在数据库中查寻域名,把用户输入的符号名称翻译成IP地址的服务。
因特网还被广泛用于向使用浏览器的用户传送应用程序。就网上商业来说,单个的消费者和企业使用Web购买各种商品和服务。就供应商品和服务来说,一些公司只在Web上供应商品和服务,而其它公司使用Web扩展他们的范围。
随着电子商务的增长,越来越多的Web页包含要求用户输入信息的表单。这些表单都需要一些程序来获得和处理信息。该程序可以是,例如服务小程序servlet或者实用提取报告语言(perl)脚本。servlet是在Web服务器或者应用程序服务器中运行的Java应用程序,并且提供服务器端的处理,一般用于访问数据库或者执行电子商务处理。Perl是一种产生Web服务器程序,以便执行诸如自动更新用户账户和新闻组记录,处理清除请求,使数据库同步和产生报告之类任务的语言。一般来说,每种表单需要一种处理方法来分析数据,并把数据转发给有用的位置,因为不同的表单使用不同的表单数据输入名称和最终位置。由于具有不同的处理方法,处理不同类型的表单就需要大量的代码。
于是,具有一种处理表单的改进的方法、设备和计算机执行的指令将是有益的。

发明内容
本发明提供一种用于在数据处理系统中处理表单的方法、设备和计算机执行的指令。接收标记语言表单,其中标记语言表单包括用户输入的第一数据和标识该数据将被如何处理的隐式字段中的第二数据。识别出用第二数据来处理第一数据的过程,形成被识别的过程。利用被识别的过程处理第一数据。


所附权利要求中陈述了本发明特有的新特征。但是结合附图,参考例证实施例的下述详细说明,将更好地理解发明本身,以及优选的应用模式,发明的其它目的和优点,其中图1是其中可实现本发明的数据处理系统的网络的示意图;图2是根据本发明的优选实施例,可实现成服务器的数据处理系统的方框图;图3是图解说明其中可实现本发明的数据处理系统的方框图;图4图解说明了根据本发明的优选实施例在处理表单过程中使用的数据流;图5是根据本发明的优选实施例在Web浏览器中显示的HTML表单的示意图;图6是根据本发明的优选实施例图解说明呈源格式的HTML表单的代码;图7是根据本发明的优选实施例图解说明关键字的表单;图8是根据本发明的优选实施例用于处理HTML表单的程序的流程图。
具体实施例方式
现在参见附图,图1是其中可实现本发明的数据处理系统的网络的图解表示。网络数据处理系统100是其中可实现本发明的计算机网络。网络数据处理系统100包含网络102,网络102是用于提供在网络数据处理系统100内连接在一起的各种设备和计算机之间的通信链路的媒介。网络102可包括诸如有线、无线通信链路或者光缆之类的连接。
在图示的例子中,服务器104与网络102以及存储器106相连。另外,客户机108、110和112也与网络102相连。这些客户机108、110和112可以是例如个人计算机或者网络计算机。在描述的例子中,服务器104向客户机108-112提供数据,例如引导文件、操作系统映象和应用程序。客户机108、110和112是服务器104的客户机。网络数据处理系统100可包括图中未示出的其它服务器、客户机和其它设备。在图示的例子中,网络数据处理系统100是因特网,同时网络102代表全世界的使用TCP/IP协议组相互通信的网络和网关的集合。因特网的核心是由发送数据和消息的成千上万的商业计算机系统、政府计算机系统、教育计算机系统和其它计算机系统组成的主节点或主计算机之间的高速数据通信骨干线路。当然,网络数据处理系统100还可实现成若干不同类型的网络,例如企业内部网、局域网(LAN)或者广域网(WAN)。图1只是一个例子,而不是对本发明的结构的限制。
参见图2,描述了根据本发明的优选实施例的数据处理系统的方框图,所述数据处理系统可实现为服务器,例如图1中的服务器104。数据处理系统200可以是包括与系统总线206相连的若干处理器202和204的对称多处理器(SMP)系统。另一方面,也可采用单处理器系统。提供到本地存储器209的接口的存储器控制器/超高速缓存208也与系统总线206相连。I/O总线桥210也与系统总线206相连,并且提供到I/O总线212的接口。存储器控制器/超高速缓存208和I/O总线桥210可被集成,如图中所示。
与I/O总线212相连的外围组件互连(PCI)总线桥214提供到PCI局部总线216的接口。若干调制解调器可与PCI总线216相连。典型的PCI总线实现支持四个PCI扩展槽或者内插连接件。借助通过内装板与PCI局部总线216相连的调制解调器218和网络适配器220,可以提供与图1中的网络计算机108-112的通信链路。
辅助PCI总线桥222和224为辅助PCI总线226和228提供接口,从辅助PCI总线226和228可支持辅助调制解调器或者网络适配器。这样,数据处理系统200允许连接到多个网络计算机。存储映象图形适配器230和硬盘232也可直接或者间接地与I/O总线212相连,如图所示。
本领域中的普通技术人员将认识到图2中描述的硬件可变化。例如,除了所描述的硬件之外或者代替所描述的硬件,还可使用诸如光盘驱动器之类的其它外围设备。所描述的例子并不意味着对本发明的结构上的限制。
图2中描述的数据处理系统可以是,例如运行先进交互执行程序(AIX)操作系统的IBM RISC/System 600系统(New York,Armonk的国际商用机器公司的产品)。
现在参考图3,图中描述了图解说明可在其中实现本发明的数据处理系统的方框图。数据处理系统300是客户计算机的一个例子。数据处理系统300采用外围组件互连(PCI)局部总线结构。虽然描述的例子采用PCI总线,不过也可使用诸如加速图形端口(AGP)和工业标准结构(ISA)之类的其它总线结构。处理器302和主存储器304通过PCI桥308与PCI局部总线306相连。PCI桥308还可包括处理器302的集成存储器控制器和超高速缓冲存储器。通过直接组件互连或者通过内装板可形成与PCI局部总线306的其它连接。在描述的例子中,局域网(LAN)适配器310、SCSI主总线适配器312和扩展总线接口314通过直接组件连接与PCI本地总线306相连。相反,音频适配器316、图形适配器318和音频/视频适配器319借助插入扩展槽中的内装板与PCI局部总线306相连。扩展总线接口314为键盘和鼠标适配器320、调制解调器322和辅助存储器324提供连接。小型计算机系统接口(SCSI)主总线适配器312为硬盘驱动器326、磁带驱动器328和CD-ROM驱动器330提供连接。典型的PCI局部总线实现支持三个或者四个PCI扩展槽或者内插连接件。
一个操作系统运行于处理器302上,并被用于协调和提供图3的数据处理系统300内的各种组件的控制。该操作系统可以是可从市场上买到的操作系统,例如Windows 2000(它可从微软公司获得)。诸如Java之类的面向对象编程系统可和该操作系统一起运行,并且提供从Java程序或者在数据处理系统300上执行的应用程序对操作系统的调用。“Java”是太阳微系统公司的商标。操作系统、面向对象操作系统和应用软件或程序的指令位于诸如硬盘驱动器之类的存储器上,并且可被载入主存储器304中,以便被处理器302执行。
本领域的普通技术人员将认识到图3中的硬件可根据实现而变化。除了图3中描述的硬件之外或者代替图3中描述的硬件,可使用诸如闪速ROM(或者相当的非易失性存储器)或者光盘驱动器之类的其它内部硬件或外设。另外,本发明的过程可应用于多处理器数据处理系统。
作为另一例子,数据处理系统300可以是被配置成可不依赖于某一类型的网络通信接口而启动的独立系统,而不论数据处理系统300是否包含某一类型的网络通信接口。作为另一例子,数据处理系统300可以是个人数字助手(PDA)设备,它被配置成具有ROM和/或闪速ROM,以便提供用于存储操作系统文件和/或用户生成的数据的非易失性存储器。
图3中描述的例子和上述例子并不意味着对结构的限制。例如,数据处理系统300还可以是笔记本计算机或者除了采取PDA形式之外的手持式计算机。数据处理系统300还可以是信息站或者Web设备。
本发明提供用于处理电子表单,例如为网站生成的电子表单的改进的方法、设备和计算机执行的指令。本发明的机制提供检查输入数据的可能错误,并把该数据转发给最终使用或存储位置的类表单处理器。数据的这种转发可采取各种形式,例如电子邮件消息的产生,把数据放入存储器或者其它可能的目的地中。借助本发明的机制,处理表单不需要任何额外的代码。本质上,本发明的机制把表单的处理指令嵌入文件本身中。特别地,信息包含在表单中,描述信息应被如何处理,例如将如何检查、处理、转发和保存该信息。在图示的例子中,通过利用隐式输入,例如<INPUT type=“hidden”>,指令被嵌入HTML文件内。
现在参见图4,根据本发明的优选实施例描述了说明处理表单中使用的数据流程的图表。本例中,HTML表单400从Web服务器404被发送给浏览器客户机402。用户在客户机浏览器402中填写HTML表单400,并把该表单提交给类表单处理servlet406。在图示的例子中,servlet位于和表单相同的Web服务器中。当然,类表单处理servlet可位于不同的Web服务器上或者位于完全不同的计算机上。类表单处理服务器406使用HTML表单400内的隐式字段来核实、确认和处理该表单。如果成功完成所有操作,则在客户机浏览器402向用户返回确认页408。否则,根据HTML表单400内的隐式字段起动出错处理。
现在参见图5,根据本发明的优选实施例描述了在Web浏览器中显示的HTML表单的图表。HTML表单500是HTML文件的一个例子,例如在Web浏览器502内显示的图4中的HTML表单400。如图所示,名字504、姓氏506、中名508、地址510、城市512、国家514、邮编516和电子邮件518这些字段是用户输入信息的字段。当用户已输入信息时,用户可选择提交按键520把表单送回servlet,例如图4中的类表单处理servlet 406。通过选择复位按键522,HTML表单500内的所有字段被清除。表单还包括在Web浏览器502中不向用户显示的隐式字段。当被图4中的类表单处理servlet 406接收到时,这些字段用于处理该表单。
现在参见图6,根据本发明的一个优选实施例描述了图解说明呈源格式的HTML表单的代码。本例中的代码600是用于HTML表单,例如图5中的HTML表单500的HTML代码。如图所示,代码节602包含将在Web浏览器内向用户显示的信息。代码节604包含关于将如何处理输入该表单中的用户输入的信息。例如,代码节606标识表单内所需的字段。在图示的例子中,这些所需字段是名字、姓氏、地址、城市、国家和邮编。接下来,代码节608指示需要验证的值,例如电子邮件地址、国家和邮编。
这些输入都包括由图4中的类表单处理servlet 400用于处理数据的关键字。现在参见图7,根据本发明的一个优选实施例描述了图解说明关键字的表格。本例中的表格700包括标识由本发明的机制识别的关键字的关键字列702。这些关键字被用作表700中识别如列704中所示操作的索引。列706标识需要传递给执行由关键字所标识的操作的过程的辅助参数或信息。
例如,表目708中的关键字“requiredFields”被用于执行这样的操作确认已在所需输入字段中生成表目。在表目710中,关键字“onIncomplete”标识这样的操作如果所有所需字段不包含表目发生的操作。这些操作被规定为和该关键字相关的参数。表目712中的关键字“errorCheck”被用于规定对该关键字包含的参数检查错误的操作。本例中特定的操作被规定成一个参数。在表目714中,关键字“onError”标识在发生错误检查时要进行的操作。表目716中的关键字“process”标识利用该数据将采取的操作。同样,该特定过程被规定为该关键字的一个参数。虽然图示的例子以表格形式举例说明了该信息,不过该信息也可置于除表格之外的其它数据结构中,例如关系数据库中。
现在参见图8,根据本发明的一个优选实施例描述了用于处理HTML表单的程序的流程图。图8中图解说明的过程可以在Web服务器上的servlet,例如图4中的类表单处理servlet 406中实现。
通过从客户机接收包含表单的请求(步骤800)开始该程序。在图示的例子中,该表单为HTML表单。确定是否存在处理该表单的恰当隐式字段(步骤802)。通过确定在隐式字段内是否存在关键字,可识别所述恰当的隐式字段。通过把这些字段内的信息和一组已知或者识别出的关键字进行比较,可识别关键字。
如果存在处理该表单的恰当隐式字段,则确定所有所需字段是否被正确填写(步骤804)。如果所有所需字段被正确填写,则确定完成的字段是否满足标准(步骤806)。该标准可包括,例如检查以了解邮编字段是否包含有效的邮编或者定货单中的数量是否为有效数字。
如果完成的字段满足标准,则利用隐式字段识别处理数据的过程(步骤808)。该过程可以是,例如发送电子邮件消息,保存数据,或者触发另一过程或方法。随后,调用被识别的过程处理数据(步骤810)。
之后,确定是否无错误地完成了该过程(步骤812)。如果无错误地完成了该过程,则向客户机返回确认消息(步骤814),之后结束该程序。
再次参见步骤802,如果不存在处理表单的恰当的隐式字段,则程序终止。再看步骤804,如果不是所有所需字段都被正确填写,则确定是否返回该表单(步骤816)。如果不返回该表单,则程序返回步骤806。如果表单要被返回,则连同出错消息一起把表单返回给客户机(步骤818),之后程序结束。出错消息可要求用户重新把信息输入表单。该出错消息也可包括关于哪些字段未被正确输入的指示。
再次参见步骤806,如果填写的字段不满足标准,则进行出错处理(步骤820),之后程序结束。出错处理可包括(但不限于)连同例如图7中表目714中所示的“onError”隐式字段中规定的出错消息一起返回表单,以便把该错误和/或正确填写该字段所需的内容通知用户。另一种可能的操作包括继续处理该表单,并把数据中的错误通知服务器管理人员。
再次参见步骤812,如果在发生错误的情况下完成该程序,则生成出错页(步骤822)。随后,该出错页被返回给客户机(步骤824),之后程序结束。如果在处理表单的时候产生了错误,则处理方法把用户输入字段的内容和其它表单信息转储到文件中。或者,可向系统管理人员发送电子邮件以便指示错误。随后用户可被引向出错屏幕或者确认屏幕。服务器端可能需要人机交互作用,以纠正错误并成功处理用户输入。
从而,本发明提供了一种用于处理电子表单,例如HTML表单的改进的方法、设备和计算机执行的指令。特别地,本发明的机制可以供处理所有种类的表单的类过程或通用过程之用。通过在表单中放置关键字信息,规定处理表单的特定方式。在这些例子中,关键字位于隐式输入字段之内。这样,本发明的机制减少了在数据处理系统中实现表单处理程序所必需的代码的数量。
重要的是要注意虽然是在全功能数据处理系统的环境中描述的本发明,不过本领域的普通技术人员将认识到本发明的程序能够以计算机可读指令媒介的形式以各种方式被分发,并且本发明同样适用,而与实际用于实现所述分发的信号承载媒介的特定类型无关。计算机可读媒介的例子包括诸如软盘、硬盘驱动器、RAM、CD-ROM、DVD-ROM之类的可记录媒介和传输介质,比如使用传输形式,例如射频传输和光波传输的数字和模拟通信链路、有线或无线通信链路。计算机可读媒介可采取编码格式,在实际应用于特定的数据处理系统中时所述编码格式被解码。
本发明的上述说明只是用于举例说明,而不是穷举的或者把本发明局限于公开的形式。对本领域的普通技术人员来说,许多修改和变化是显而易见的。虽然举例说明的实施例采用HTML文件,不过本发明的机制也可应用于其它类型的文件。例如,该机制可应用于其它标记语言文件,例如可扩展标记语言(XML)文件。选择和描述的实施例是为了更好地解释本发明的原理和实际应用,以及使本领域的其它普通技术人员能够在对各种实施例进行适合于预期的特定应用的各种修改方面理解本发明。
权利要求
1.一种在数据处理系统中用于处理表单的方法、设备和计算机程序产品,所述方法、设备和计算机程序产品执行下述步骤接收标记语言表单,其中标记语言表单包括用户输入的第一数据和标记如何处理该数据的隐式字段中的第二数据;识别出用第二数据来处理第一数据的过程,形成被识别的过程;和利用被识别的过程处理第一数据。
2.按照权利要求1所述的方法、设备和计算机程序产品,其中被识别的过程把数据转发给选中的位置。
3.按照权利要求2所述的方法、设备和计算机程序产品,其中被选中的位置至少是数据库、文件、Web服务器、远程计算机和程序之一。
4.按照权利要求1所述的方法、设备和计算机程序产品,其中标记语言表单包括第二隐式字段中的第三数据,第三数据确定将存在于第一数据中的各部分信息。
5.按照权利要求1所述的方法、设备和计算机程序产品,其中标记语言表单包括第二隐式字段中的第三数据,第三数据用于验证第一数据。
6.按照权利要求1所述的方法、设备和计算机程序产品,其中标记语言文件是超文本标记语言文件。
7.按照权利要求1所述的方法、设备和计算机程序产品,其中标记语言文件是可扩展标记语言文件。
8.按照权利要求1所述的方法、设备和计算机程序产品,其中第一数据是一组文本串。
9.一种在数据处理系统中用于处理表单的方法、设备和计算机程序产品,所述方法、设备和计算机程序产品执行下述步骤接收表单,其中该表单包括包含一组数据的一组字段和标记如何处理所述数据的隐式字段;和利用隐式字段识别处理该组数据的过程。
10.按照权利要求9所述的方法、设备和计算机程序产品还包括借助利用隐式字段识别的过程处理该组数据。
11.按照权利要求9所述的方法、设备和计算机程序产品,其中被识别的过程把数据转发给选中的位置。
12.按照权利要求11所述的方法、设备和计算机程序产品,其中所述被选中的位置至少是数据库、文件、Web服务器、远程计算机和程序之一。
13.按照权利要求9所述的方法、设备和计算机程序产品,其中表单是标记语言文件。
14.按照权利要求13所述的方法、设备和计算机程序产品,其中标记语言文件是超文本标记语言文件。
15.按照权利要求13所述的方法、设备和计算机程序产品,其中标记语言文件是可扩展标记语言文件。
全文摘要
一种用于在数据处理系统中处理表单的方法、设备和计算机执行的指令。接收标记语言表单,其中标记语言表单包括用户输入的第一数据和标记如何处理该数据的隐式字段中的第二数据。识别出利用第二数据来处理第一数据的过程,形成被识别的过程。利用所识别的过程处理第一数据。
文档编号G06F9/00GK1522403SQ01811805
公开日2004年8月18日 申请日期2001年11月30日 优先权日2001年3月15日
发明者迈克尔·P·卡尔森, 克里斯托弗·S·米里特, 托弗 S 米里特, 迈克尔 P 卡尔森 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1