CN101196899A - 用于处理xml表格中的输入的方法和系统 - Google Patents

用于处理xml表格中的输入的方法和系统 Download PDF

Info

Publication number
CN101196899A
CN101196899A CNA2007101513033A CN200710151303A CN101196899A CN 101196899 A CN101196899 A CN 101196899A CN A2007101513033 A CNA2007101513033 A CN A2007101513033A CN 200710151303 A CN200710151303 A CN 200710151303A CN 101196899 A CN101196899 A CN 101196899A
Authority
CN
China
Prior art keywords
xml
xml form
difference
modified
event listener
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA2007101513033A
Other languages
English (en)
Other versions
CN101196899B (zh
Inventor
彼得·克里格斯曼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Software AG
Original Assignee
Software AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Software AG filed Critical Software AG
Publication of CN101196899A publication Critical patent/CN101196899A/zh
Application granted granted Critical
Publication of CN101196899B publication Critical patent/CN101196899B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/194Calculation of difference between files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/174Form filling; Merging

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Document Processing Apparatus (AREA)

Abstract

本发明涉及一种用于处理XML表格中的输入的方法和系统,所述方法和系统包括向用户提供模板XML表格(100)、从用户处接收经修改的XML表格(200)、识别模板XML表格和经修改的XML表格之间的差别以及基于所识别出的差别而进一步处理经修改的XML表格的步骤。

Description

用于处理XML表格中的输入的方法和系统
技术领域
本发明涉及用于处理XML表格中的输入的方法和系统。
背景技术
基于内容的路由是信息技术的许多情形中的重要方面。例如,如果用户将一些数据输入到经由因特网而在他的浏览器的屏幕上出现的表格中,则该数据的进一步处理通常取决于用户所输入的内容。数据库的元素例如可以被修改、删除,或者新的元素可以基于用户输入而被加入到这样所出现的表格中。
在基于内容的路由的现有技术方法中,在第一步骤中发送表格到客户端,该发送可能响应于来自客户端的相应请求。在等待了一定量的时间或者等待到来自用户的提交命令之后,取回响应表格,即具有用户所进行的修改的表格。随后,通常是XML文档的响应表格被基于其内容而处理。
为此,用绝对选择路径来处理响应表格中的条目。例如,无论某个条件是否满足,都可以调查包含在响应表格的某行中的用户地址,这确定表格的所取回数据的以一种方式或者以另一种方式的进一步处理。如果整个响应表格将被评估,则所有的条目都必须被以这种方式调查。可以提供响应表格的缺省处理,但是,这将仅在响应表格的所有相关条目被顺序地处理并且与此有关的条件都未达到的情况下正确地工作。但是,主要缺点是表格结构已经发生的小变化以及因此响应表格将需要处理逻辑的实质性修正,这是因为绝对选择路径将不再与改变后的表格的希望条目相匹配。
因此,本发明的技术问题是提供基于内容的路由的更加灵活的方法和系统,尤其用于处理XML表格中的输入,这克服了现有技术的上述缺点。
发明内容
在本发明的一个技术方案中,该问题由一种用于处理XML表格中的输入的方法来解决,该方法包括提供模板XML表格、接收经修改的XML表格、识别模板XML表格和经修改的XML表格之间的差别以及基于所识别出的差别而进一步处理经修改的XML表格的步骤。
因此,模板用作参考。填写表格的用户或web服务应用程序的输入被通过跟踪经修改的表格和参考表格之间的差别而处理。考虑已经包含在模板表格中的信息,而不是分析整个文档,以使得仅两个表格之间的差别或者增量确定表格的进一步处理。因此,减少了所需要的处理时间。此外,如果表格的模式改变,则经修改的XML表格的模式也将以类似的方式改变,以使得两个表格之间所产生的差别不受该变化的影响。因此,评估逻辑不必适应于改变后的模式却仍然可以用于处理输入,这减少了总的配置努力并且允许解决方案的快速原型制作(prototyping)。
在优选的实施例中,识别模板XML表格和经修改的XML表格之间的差别的步骤被限制于与模板XML表格和/或所述经修改的XML表格中的预定条目有关的差别,其中优选地,使用涉及一个或多个事件侦听器的可配置的比较器。因此,不是可以跟踪模板表格和经修改的表格之间的所有差别,而是仅可以跟踪由比较器的合适的事件侦听器所识别的差别,所述合适的事件侦听器例如是识别经修改的XML表格中的一个或多个增加的条目的增加事件侦听器、识别经修改的XML表格中的一个或多个经修改的条目的修改事件侦听器和/或识别经修改的XML表格中的一个或多个删除的条目的删除事件侦听器。因此,选择合适的事件侦听器是配置比较器的一种方式。
在一个实施例中,另外存在缺省侦听器,该缺省侦听器识别模板XML表格和经修改的XML表格之间的不被任何其他任何事件侦听器所识别的差别。缺省侦听器增加了所述方法的可靠性,这是因为其确保任何差别都被以预定方式处理。
由于事件侦听器优选地彼此独立操作,因此它们可以并行处理经修改的XML表格以增大总的处理速度。
在本发明当前优选的实施例中,识别模板XML表格和经修改的XML表格之间差别的步骤包括使用识别两个XML表格的差别的XML差别跟踪器,其中,XML差别跟踪器选择性地意识到命名空间和/或意识到留白和/或选择性地意识到将要比较的两个XML文档的元素的不同顺序。
根据本发明的另一个技术方案,本发明涉及一种用于将输入处理成适应于执行上述方法的XML表格的系统。
附图说明
在下面的详细描述中,参考附图,进一步描述本发明当前优选的实施例:
图1:本发明的一个用于处理XML表格中的输入的实施例的示意图;
图2:可以用于图1的实施例中的示例性XML模板表格;
图3:由用户、web服务应用程序等进行修改之后的图2的XML表格;
图4:给出从图1的实施例中的比较器中获得的结果的表,所述比较器对图2的XML模板表格和图3的经修改的XML表格进行比较;以及
图5:图1中的比较器的示例性输出,该示例性输出显示图4的表中结果。
具体实施方式
图1给出了根据本发明一当前优选实施例的方法和系统的示意图。鉴于工作流程的优选顺序在图1中用实线示出,影响XML表格的处理的配置数据用虚线示出。
在步骤10中,XML表格被例如经由因特网发送给用户。尽管本发明将通常在这样的情形中使用:其中,用户在上面进行其输入的计算机系统不同于评估和处理输入的计算机系统,但是所有步骤也可以在单个机器上执行,该机器不仅接收用户输入还根据本发明的方法处理输入。此外,在下面的描述中,术语用户不仅包括操作用户界面的人类用户,还包括用于填写XML表格的任何一种软件或者自动化过程,例如SOA(面向服务的体系结构)中的web服务应用程序。
在步骤10中发送给用户的XML表格已在前一步骤5中配置,以使得可以从用户获得希望的信息。在步骤20中,系统等待来自用户的响应。在一定量的时间之后或者当用户指出输入完成时,经修改的表格被转发给比较器30。
比较器30对经修改的XML表格的操作由许多事件侦听器来确定。例如,可以存在事件侦听器31,其验证用户是否已经向包含在最初的XML表格中的列表中加入一项目。换句话说,事件侦听器31对最初的XML表格和经修改的XML表格之间的差别进行的分析限于识别用户向列表中加入的任何项目。总的XML表格的任何其他变化将不被事件侦听器31所登记。
以类似的方式,可以存在另一事件侦听器32,其被限制于分析XML表格中所载明的用户地址的变化。此外,事件侦听器32将忽略最初的XML表格和从用户接收到的经修改的XML表格之间的任何其他差别。
事件侦听器31和32两者可以另外包括如何进一步处理从用户接收到的经修改的XML表格中的各个数据的指令。在图1中,这由从各个事件侦听器31、32延伸到相应处理步骤41、42的虚线示出。清楚的是,这两个事件侦听器31和32仅是各种不同的事件侦听器(未示出)的示例,这些不同的事件侦听器中的每个都可以用于识别经修改的XML表格与最初的XML表格相比的一个或多个差别。例如,可以存在检测任何已被从订单列表中删除的项目的另一个事件侦听器,或者识别已被修改的项目的另一事件侦听器。总的来说,事件侦听器为比较器30的配置提供非常灵活的手段,以使得用户输入的实际处理可以容易地适应于变化的要求。
另外,可以存在缺省事件侦听器35,其识别其他事件侦听器所不处理的、用户对最初的XML表格所进行的所有修改。提供缺省事件侦听器35将确保所有来自用户的输入都被处理。缺省事件侦听器35例如可以提供错误处置,即在不允许的用户条目的情况下所执行的处理步骤,例如显示错误消息或者返回到步骤10以将最初的XML表格再次提供给用户以供修改。
图1中处理步骤41、42和45的并行安排反映了各种事件侦听器31、32和35的操作可以同时发生,从而减少全面分析经修改的XML表格所必需的处理时间。与现有技术相比,并行处理将不会影响缺省事件侦听器35对其他事件侦听器所不识别的所有差别进行跟踪的可靠性。
下面,将参考图2所示的示例性XML文档100来进一步说明上面参考图1所一般描述的系统的操作。如图可见,XML文档100是包括银行细节、地址以及起初为空的订单列表的订单模板。这样的XML文档例如可以用作处理在线商店(未示出)的顾客订单的技术手段。
但是,要注意到,本发明不针对或者局限于特定的商业模型或商业规则。相反,XML文档100和200仅是示例,本发明也可以用于分析其他类型的XML文档,所述其他类型的XML文档例如指示装配线上将被装配的机器部件。此外,尽管XML文档100已经包含许多文本节点,但是也可以存在空的模板用于本发明的方法和系统的所述实施例。
图3给出了从用户对最初的XML文档100进行的修改得到的XML文档200的示例。如图可见,地址已被改变并且两个项目被加入到订单列表中。本发明的方法和系统使用对XML文档100和200进行的结构化且可配置的比较来识别来自用户的相关输入,而不是独自地分析经修改的XML文档200。
该比较的结果在图4的表中示出。因此,上述事件侦听器31识别出订单列表中的两个新项目,并且事件侦听器32注意到顾客的地址变化。取决于这些数据变化,在进一步的处理步骤期间将触发不同的动作。例如,新项目的发现可以启动用于收集和包装这些项目的过程,以使得它们可被发送给顾客。所识别出的地址变化可以用于更新顾客数据库。这两个过程显然不相关,因此可以并行执行。
要注意到,比较器30对XML文档100和200的分析结果在很大程度上与XML模板文件100的具体结构无关。例如,如果XML文档100包含指示顾客生日的另外标签,则事件侦听器31和32的处理逻辑将不必被适应性修改,但仍将得到上述结果。这较之基于绝对选择路径对经修改的XML文档200进行的分析有很大优势。这里,XML文档的结构变化在多数情况下将需要处理逻辑的适应性修改。
图5给出了如何可以在比较器的HTML报告中突出图4的表中结果的示例。如图可见,该报告指示所有的变化,即新的街道地址以及两个增加的项目。如图5的上部所示,该报告另外可以指示用于对两个XML文档进行比较的工具的具体配置设置,这将在下面更详细地进行描述。
在本发明的一个实施例中,比较器30利用工具XML差别跟踪器(Difference Tracker)来比较两个XML文档100和200,XML差别跟踪器当前从申请人处可得到并且在下面进行描述。
XML差别跟踪器使得可以比较XML文档和树。其提供各种选项,例如高级命名空间处置,即用于区分驻留在不同的命名空间中的元素和属性的命名空间意识、前缀意识以及用于区分具有相同内容但具有不同编排的XML文档的留白(whitespace)意识。此外,可以用XPATH语句来选择或丢弃XML文档内的子树。
另外,XML差别跟踪器可以被配置为区分具有相同文本节点但是顺序不同的XML文档。或者,比较工具可以被设置为忽略所比较的XML文档的节点顺序。
XML差别跟踪器可以产生具有高亮并使用定制模板的HTML输出。其他选项是XML输出,其中差别被报告为XPATH语句或者布尔输出,其中发现两个XML文档或者是相同的(真)或者是不相同的(假)。XML差别跟踪器的输入XML文档可以作为URL、文件或者流而可用。
因此,XML差别跟踪器具有上述适于用在本发明一实施例的上述比较器中的各种可能设置,以使得经修改的XML文档200的处理可以被修整为符合实现所述方法和系统的机构的处理要求。

Claims (11)

1.一种用于处理XML表格中的输入的方法,该方法包括以下步骤:
a.提供模板XML表格(100);
b.接收经修改的XML表格(200);
c.识别所述模板XML表格(100)和所述经修改的XML表格(200)之间的差别;以及
d.基于所识别出的差别而进一步处理所述经修改的XML表格(200)。
2.如权利要求1所述的方法,其中,步骤c.被限制于与所述模板XML表格(100)和/或所述经修改的XML表格(200)中的预定条目有关的差别。
3.如权利要求1或2所述的方法,其中,步骤c.由涉及一个或多个事件侦听器(31、32)的可配置比较器(30)执行。
4.如权利要求3所述的方法,其中,所述比较器(30)涉及事件侦听器组中的至少一个,所述事件侦听器组包括识别所述经修改的XML表格(200)中的一个或多个增加的条目的增加事件侦听器(31)、识别所述经修改的XML表格(200)中的一个或多个经修改的条目的修改事件侦听器(32)和识别所述经修改的XML表格(200)中的一个或多个删除的条目的删除事件侦听器。
5.如权利要求3或4所述的方法,其中,所述一个或多个事件侦听器包括缺省侦听器(35),该缺省侦听器(35)识别所述模板XML表格(100)和所述经修改的XML表格(200)之间的不被任何其他事件侦听器(31、32)所识别的差别。
6.如在前的权利要求3-5中任一项所述的方法,其中,两个事件侦听器(31、32)并行地处理所述经修改的XML表格(200)。
7.如在前的权利要求中任一项所述的方法,其中,所述步骤c.包括使用识别两个XML表格(100、200)的差别的XML差别跟踪器。
8.如权利要求7所述的方法,其中,所述XML差别跟踪器选择性地意识到命名空间。
9.如权利要求7或8所述的方法,其中,所述XML差别跟踪器选择性地意识到留白。
10.如在前的权利要求7-9中任一项所述的方法,其中,所述XML差别跟踪器选择性地意识到将要比较的两个XML表格中的元素的不同顺序。
11.一种用于将输入处理成适应于执行权利要求1-10中任一项所述的方法的XML表格的系统。
CN2007101513033A 2006-09-25 2007-09-24 用于处理xml表格中的输入的方法和系统 Active CN101196899B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP06019984.1 2006-09-25
EP06019984A EP1903452B1 (en) 2006-09-25 2006-09-25 Method and system for processing the input in an XML form

Publications (2)

Publication Number Publication Date
CN101196899A true CN101196899A (zh) 2008-06-11
CN101196899B CN101196899B (zh) 2011-09-28

Family

ID=37670900

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007101513033A Active CN101196899B (zh) 2006-09-25 2007-09-24 用于处理xml表格中的输入的方法和系统

Country Status (3)

Country Link
US (1) US9229921B2 (zh)
EP (1) EP1903452B1 (zh)
CN (1) CN101196899B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105205177A (zh) * 2015-10-16 2015-12-30 浪潮(北京)电子信息产业有限公司 一种文件处理方法、系统及文件处理端
CN107870927A (zh) * 2016-09-26 2018-04-03 上海泓智信息科技有限公司 文件评估方法和装置
CN113095055A (zh) * 2021-04-20 2021-07-09 山石网科通信技术股份有限公司 表格修改方法、装置、非易失性存储介质、及处理器

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1973054A1 (en) * 2007-03-20 2008-09-24 Sap Ag Workflow authorizations evaluation in multi-layered applications
US8230325B1 (en) * 2008-06-30 2012-07-24 Amazon Technologies, Inc. Structured document customizable comparison systems and methods
US7978721B2 (en) 2008-07-02 2011-07-12 Micron Technology Inc. Multi-serial interface stacked-die memory architecture
US8086913B2 (en) 2008-09-11 2011-12-27 Micron Technology, Inc. Methods, apparatus, and systems to repair memory
US20110093510A1 (en) * 2009-10-20 2011-04-21 Roche Diagnostics Operations, Inc. Methods and systems for serially transmitting records in xml format
US9123552B2 (en) 2010-03-30 2015-09-01 Micron Technology, Inc. Apparatuses enabling concurrent communication between an interface die and a plurality of dice stacks, interleaved conductive paths in stacked devices, and methods for forming and operating the same
FR2964484B1 (fr) * 2010-09-02 2015-09-18 Banque Accord Procede de recueil de donnees a caracteres evenementiel de formulaires electroniques
US10217158B2 (en) 2016-12-13 2019-02-26 Global Healthcare Exchange, Llc Multi-factor routing system for exchanging business transactions
US10217086B2 (en) 2016-12-13 2019-02-26 Golbal Healthcare Exchange, Llc Highly scalable event brokering and audit traceability system

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6859821B1 (en) * 1999-07-19 2005-02-22 Groove Networks, Inc. Method and apparatus for prioritizing data change requests and maintaining data consistency in a distributed computer system equipped for activity-based collaboration
US6643652B2 (en) * 2000-01-14 2003-11-04 Saba Software, Inc. Method and apparatus for managing data exchange among systems in a network
US6826726B2 (en) * 2000-08-18 2004-11-30 Vaultus Mobile Technologies, Inc. Remote document updating system using XML and DOM
FI20010536A (fi) * 2001-03-16 2002-09-17 Republica Jyvaeskylae Oy Menetelmä ja laitteisto tiedon käsittelemiseksi
US7437664B2 (en) * 2002-06-18 2008-10-14 Microsoft Corporation Comparing hierarchically-structured documents
GB2394804A (en) * 2002-10-31 2004-05-05 Hewlett Packard Co Method of Processing Data from a Submission Interface
JP2004198872A (ja) * 2002-12-20 2004-07-15 Sony Electronics Inc 端末装置およびサーバ
US7168035B1 (en) * 2003-06-11 2007-01-23 Microsoft Corporation Building a view on markup language data through a set of components
GB2413655A (en) * 2004-04-30 2005-11-02 Hewlett Packard Development Co Method and system for updating hierarchical data structures
US7281018B1 (en) * 2004-05-26 2007-10-09 Microsoft Corporation Form template data source change
CN100363928C (zh) * 2005-02-08 2008-01-23 中国电子技术标准化研究所 电子文档数据处理编辑器及电子文档数据编辑控制的方法
US7543228B2 (en) * 2005-06-27 2009-06-02 Microsoft Corporation Template for rendering an electronic form
US8429526B2 (en) * 2006-04-10 2013-04-23 Oracle International Corporation Efficient evaluation for diff of XML documents

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105205177A (zh) * 2015-10-16 2015-12-30 浪潮(北京)电子信息产业有限公司 一种文件处理方法、系统及文件处理端
CN107870927A (zh) * 2016-09-26 2018-04-03 上海泓智信息科技有限公司 文件评估方法和装置
CN107870927B (zh) * 2016-09-26 2021-08-13 博彦泓智科技(上海)有限公司 文件评估方法和装置
CN113095055A (zh) * 2021-04-20 2021-07-09 山石网科通信技术股份有限公司 表格修改方法、装置、非易失性存储介质、及处理器

Also Published As

Publication number Publication date
US9229921B2 (en) 2016-01-05
EP1903452A1 (en) 2008-03-26
US20080077853A1 (en) 2008-03-27
EP1903452B1 (en) 2012-08-22
CN101196899B (zh) 2011-09-28

Similar Documents

Publication Publication Date Title
CN101196899B (zh) 用于处理xml表格中的输入的方法和系统
US7325188B1 (en) Method and system for dynamically capturing HTML elements
CN1120432C (zh) 产生显示控制信息的方法和计算机
US7428582B2 (en) Semantic interface for publishing a web service to and discovering a web service from a web service registry
JP4097602B2 (ja) 情報解析方法及び装置
CN102713791A (zh) 收集用于协作文档开发的社群反馈
US20150254350A1 (en) Method for entity enrichment of digital content to enable advanced search functionality in content management systems
JP2008027043A (ja) ウェブサイト管理システム、ウェブサイト管理方法、ウェブサイト管理プログラムおよび該プログラムを記録した記録媒体
KR20140045452A (ko) 대화 스레드의 요약 기법
CN1940938A (zh) 用于内容观看器portlet的系统、方法和程序产品
US8589433B2 (en) Dynamic tagging
JP2002342317A (ja) 文書管理方法及び装置並びにその処理プログラム及びそれを格納した記憶媒体
JP2005190338A (ja) 情報抽出装置および情報抽出方法
US20160217297A1 (en) Dynamically linked content creation in a secure processing environment
JP2010067047A (ja) 特徴抽出方法及び装置
CN109840298A (zh) 大规模网络数据的多信息来源采集方法和系统
WO2008119609A1 (en) Promoting content from one content management system to another and associating a category with the content
JP4460620B2 (ja) 情報サービス提供方法およびサーバ
WO2003067470A1 (fr) Appareil de delivrance de documents, appareil de reception de documents, procede de delivrance de documents, programme de delivrance de documents et systeme de delivrance de documents
JP2008134906A (ja) 業務プロセス定義生成方法、装置及びプログラム
JP2006318371A (ja) データ不整合検出装置および検出方法
CN100456296C (zh) 一种多媒体文件搜索引擎的排序方法
US7941561B2 (en) System and method for communications over a computer network
US7657502B2 (en) Multimodal control device and multimodal control method
US20050086194A1 (en) Information reference apparatus, information reference system, information reference method, information reference program and computer readable information recording medium

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant