用于规范化模式对比的系统和方法技术方案

技术编号:16388444 阅读:25 留言:0更新日期:2017-10-16 08:50
公开了用于生成规范化模式对比文件的系统、方法和介质。一种方法包括由处理设备接收用于XML文档的可扩展标记语言(XML)模式。所述XML模式包括内容模型以及一个或多个内模式结构,并且所述内容模型是一致性XML实例文件内所允许的一个或多个XML元素和XML属性的规范。所述方法进一步包括:处理所述XML模式以解析并移除所述一个或多个内模式结构;通过标识一个或多个XML元素和XML属性中的每一个的定义来确定标准化结构以获得多个定义;提供采用规范化模式对比语法的所述标准化结构;按字母顺序来安排所述多个定义中的每一个以获得经安排的多个定义;消除存在于所述经安排的多个定义中的任何冗余定义;以及生成包含所述经安排的多个定义的规范化模式对比文件。

【技术实现步骤摘要】
【国外来华专利技术】用于规范化模式对比的系统和方法相关申请的交叉引用本申请要求2014年11月6日提交的题为“SYSTEMSANDMETHODSFORNORMALIZEDSCHEMACOMPARISON(用于规范化模式对比的系统和方法)”的美国临时专利申请序列号62/076,053的权益,所述申请的全部公开内容通过引用结合在此。
本说明书总体上涉及用于对数据进行对比的方法、系统和介质,并且更具体地涉及生成规范化模式(normalizedschema)对比文件以用于对符合相关联的XML模式的XML文件中所允许的结构进行对比。
技术介绍
目前,可以采用一种或多种不同的模式语言来创建可扩展标记语言(XML)模式。尽管这些模式可以对XML文档施加相同的约束,但它们可以使用不同的语法(syntax)来实现这些约束。使用跨不同模式语言的不同语法或采用相同模式语言的不同语法使得难以利用自动区别工具对模式进行彼此对比。相应地,存在对规范化模式对比文件的需要,所述规范化模式对比文件在将来自多个XML模式的可允许XML结构与一致性XML实例文件进行对比时被用作自动区别工具的参考,而不管每种XML模式中所使用的语法或模式语言如何。
技术实现思路
在一个实施例中,一种生成规范化模式对比文件的方法包括通过处理设备来接收用于XML文档的XML模式。所述XML模式包括内容模型以及一个或多个内模式结构,并且所述内容模型是一致性XML实例文件内所允许的一个或多个XML元素和XML属性的规范。所述方法进一步包括:由处理设备来处理所述XML模式以解析并移除所述一个或多个内模式结构;由处理设备通过标识一个或多个XML元素和XML属性中的每一个的定义来确定标准化结构以获得多个定义;由处理设备来提供采用规范化模式对比语法的所述标准化结构;由处理设备按字母顺序来安排所述多个定义中的每一个以获得经安排的多个定义;由处理设备来消除存在于所述经安排的多个定义中的任何冗余定义;以及由处理设备来生成包含所述经安排的多个定义的规范化模式对比文件。在另一个实施例中,一种用于生成规范化模式对比文件的系统可以包括处理设备以及非瞬态处理器可读存储介质。所述非瞬态处理器可读存储介质包括一个或多个编程指令,当所述一个或多个编程指令被执行时使得所述处理设备接收用于XML文档的XML模式。所述XML模式包括内容模型以及一个或多个内模式结构。所述内容模型是一致性XML实例文件内所允许的一个或多个XML元素和XML属性的规范。所述非瞬态处理器可读存储介质进一步包括一个或多个编程指令,所述一个或多个编程指令当被执行时使得处理设备处理所述XML模式以解析并移除所述一个或多个内模式结构;通过标识一个或多个XML元素和XML属性中的每一个的定义来确定标准化结构以获得多个定义;提供采用规范化模式对比语法的所述标准化结构;按字母顺序来安排所述多个定义中的每一个以获得经安排的多个定义;消除存在于所述经安排的多个定义中的任何冗余定义;以及生成包含所述经安排的多个定义的规范化模式对比文件。在又另一个实施例中,一种用于生成规范化模式对比文件的非瞬态处理器可读存储介质包括用于执行以下进程的一个或多个编程指令:接收用于XML文档的XML模式。所述XML模式包括内容模型以及一个或多个内模式结构,并且所述内容模型是一致性XML实例文件内所允许的一个或多个XML元素和XML属性的规范。所述非瞬态处理器可读存储介质进一步包括用于执行以下进程的一个或多个编程指令:处理所述XML模式以解析并移除所述一个或多个内模式结构;通过标识一个或多个XML元素和XML属性中的每一个的定义来确定标准化结构以获得多个定义;提供采用规范化模式对比语法的所述标准化结构;按字母顺序来安排所述多个定义中的每一个以获得经安排的多个定义;消除存在于所述经安排的多个定义中的任何冗余定义;以及生成包含所述经安排的多个定义的规范化模式对比文件。鉴于以下具体描述结合附图将更完整地理解由在此描述的实施例提供的这些和附加特征。附图说明附图中阐明的实施例在本质上是说明性的且示例性的并且并不旨在限制由权利要求书限定的主题。当结合以下附图阅读时,能够理解说明性实施例的以下详细描述,其中,相同的结构用相同的参考标号指示,并且在附图中:图1A描绘了根据本文所示出和所描述的一个或多个实施例的说明性XSD模式;图1B描绘了根据本文所示出和所描述的一个或多个实施例的说明性RNG模式;图2示意性地描绘了根据本文所示出和所描述的一个或多个实施例的针对用于规范化XML模式的系统的说明性计算网络;图3示意性地描绘了来自图2的服务器计算设备,进一步展示了根据本文所示出和所描述的一个或多个实施例可以用于提供数据的硬件和软件;图4示意性地描绘了根据本文所示出和所描述的一个或多个实施例的通过查询用于元素和属性的XML模式内容模型而生成规范化模式对比文件的说明性方法的流程图;图5A描绘了根据本文所示出和所描述的一个或多个实施例的可以规范化到单个文件中的说明性模式模块;以及图5B描绘了根据本文所示出和所描述的一个或多个实施例的已经被规范化的单个文件。具体实施方式本文所描述的方法、系统和存储介质涉及生成规范化模式对比文件,所述规范化模式对比文件可由自动区别工具用来将如由一个或多个相关联XML模式所定义的XML实例文件中所产生的可允许结构进行对比。无论用于每个XML模式所使用的模式语言如何,并且无论用在特定模式中用于结构化XML模式的语法如何,都可以完成这种对比。本文所描述的方法、系统和存储介质被配置成用于忽视所有内模式结构并且仅关注由每个XML模式所定义的元素的所产生的定义。也就是说,本文所描述的方法、系统和存储介质可以用于辨别以第一种方式定义XML文档元素的第一模式与以第二种方式定义相同XML文档元素的第二模式是否相同。这些方法、系统和存储介质提供优势,因为它们不要求对第一和第二XML模式进行逐行对比,逐行对比将是耗时的并且可能无法辨别由第一和第二XML模式施加的约束是相同的。XML模式是用于表达有关XML文档的约束的语言。XML是标记语言,所述标记语言定义用于以人可读和机器(特别是计算设备)可读的格式来编码电子文档的一组规则。如此,由于XML文档整体上涉及编码电子文档以供计算机使用,因此XML文档(并因此XML模式)必然植根于计算机和计算机技术中。也就是说,使用XML模式来编码XML文档将不会存在于计算机技术之外。XML模式可以用于例如提供词汇中元素和属性的列表,用于将类型(例如,整数、字符串和/或类似物、或者特定定义如“衬衫_尺寸”、“玻璃_颜色”或类似物)与在文档中找到的值进行关联,用于约束元素和属性可能出现的位置以及可能出现在那些元素内部的内容(例如,指定章节标题出现在章节内部和/或章节必须包括章节标题,随后是一个或多个文本段落),用于提供人可读的和机器可处理的文档资料,以及用于给出对一个或多个文档的形式描述。存在XML模式以帮助定义基于XML的语言,并且因此定义定制的XML数据。然而,广泛应用若干不同模式语言,如例如,文档类型定义(DTS)、Relax-NG(RNG)、Schematron以及万维网联盟(W3C)XSD。不同的XML模式可以描述相同的、类似的或完全不同的XML数据结构。由本文档来自技高网...
用于规范化模式对比的系统和方法

【技术保护点】
一种生成规范化模式对比文件的方法,所述方法包括:由处理设备来接收用于XML文档的可扩展标记语言XML模式,其中,所述XML模式包括内容模型以及一个或多个内模式结构,所述内容模型是一致性XML实例文件内所允许的一个或多个XML元素和XML属性的规范;由所述处理设备来处理所述XML模式以解析并移除所述一个或多个内模式结构;由所述处理设备通过标识一个或多个XML元素和XML属性中的每一个的定义来确定标准化结构以获得多个定义;由所述处理设备来提供采用规范化模式对比语法的所述标准化结构;由所述处理设备按字母顺序来安排所述多个定义中的每一个以获得经安排的多个定义;由所述处理设备来消除存在于所述经安排的多个定义中的任何冗余定义;以及由所述处理设备来生成包含所述经安排的多个定义的规范化模式对比文件。

【技术特征摘要】
【国外来华专利技术】2014.11.06 US 62/076,0531.一种生成规范化模式对比文件的方法,所述方法包括:由处理设备来接收用于XML文档的可扩展标记语言XML模式,其中,所述XML模式包括内容模型以及一个或多个内模式结构,所述内容模型是一致性XML实例文件内所允许的一个或多个XML元素和XML属性的规范;由所述处理设备来处理所述XML模式以解析并移除所述一个或多个内模式结构;由所述处理设备通过标识一个或多个XML元素和XML属性中的每一个的定义来确定标准化结构以获得多个定义;由所述处理设备来提供采用规范化模式对比语法的所述标准化结构;由所述处理设备按字母顺序来安排所述多个定义中的每一个以获得经安排的多个定义;由所述处理设备来消除存在于所述经安排的多个定义中的任何冗余定义;以及由所述处理设备来生成包含所述经安排的多个定义的规范化模式对比文件。2.如权利要求1所述的方法,进一步包括:由所述处理设备来将所述规范化模式对比文件输出至储存库。3.如权利要求2所述的方法,其中,输出所述规范化模式对比文件包括将所述规范化模式对比文件输出,所述规范化模式对比文件采用由自动区别工具可读的格式。4.如权利要求1所述的方法,其中,所述XML模式进一步包括多个模式模块,所述多个模式模块中的每一个提供所述XML模式的结构元素的一个或多个定义。5.如权利要求4所述的方法,进一步包括:在处理之前,由所述处理设备来将所述XML模式规范化为单个模式模块。6.如权利要求5所述的方法,其中,规范化包括:将包含在所述多个模式模块中的每一个模式模块内的多个定义组合到单个文件中,并且移除与所述模式模块中的至少一个的包含或导入相关的语法。7.如权利要求1所述的方法,其中,所述一个或多个内模式结构包括分组、样式、类型以及参考中的至少一个。8.如权利要求1所述的方法,其中,标识所述一个或多个XML元素和XML属性中的每一个的所述定义包括:由所述处理设备基于元素的指定数据类型、限制和扩展,元素属性的数据类型和其他限制和扩展,以及元素的子元素和文本内容的基数、次序性和/或其他限制和扩展中的一个或多个来定义一个或多个元素中的每一个。9.如权利要求1所述的方法,其中,所述XML模式是采用选自文档类型定义DTS、Relax-NG、Schematron以及W3CXSD中的模式语言写成。10.一种用于生成规范化模式对比文件的系统,所述系统包括:处理设备;以及非瞬态处理器可读存储介质,所述非瞬态处理器可读存储介质包括一个或多个编程指令,当所述一个或多个编程指令被执行时使得所述处理设备:接收用于XML文档的可扩展标记语言XML模式,其中,所述XML模式包括内容模型以及一个或多个内模式结构,所述内容模型是一致性XML实例文件内所允许的一个或多个XML元素和XML属性的规范;处...

【专利技术属性】
技术研发人员:S·巴蒂德斯J·卢卡巴赫M·哈米斯
申请(专利权)人:里德爱思唯尔股份有限公司雷克萨斯尼克萨斯分公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1