一种XML信息获取方法和系统技术方案

技术编号:5995619 阅读:195 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供了一种XML信息获取方法和系统,所述方法包括:按照预先定义的语法规则编写XML文档,所述预先定义的语法规则定义了XML元素中包括复用属性和/或被复用属性;获取所述XML文档;解析出所述XML文档中所有包含被复用属性的XML被复用元素和包含复用属性的XML复用元素;按照复用规则和XML被复用元素信息将所述XML复用元素信息填充完整;获取所述解析出的XML各个元素信息,所述XML各个元素信息包括XML被复用元素信息和所述补充完整的XML复用元素信息。本发明专利技术无需反复编写大量含有重复内容的XML文档,因此无需重复解析相同的内容的过程,从而解决了影响系统性能的问题,并提高了工作效率。

【技术实现步骤摘要】

本专利技术涉及软件
,更具体的说是涉及一种XML信息获取方法和系统
技术介绍
XML (Extensible Markup Language,可扩展标记语言)是一套定义语法标记的规则,这些标记将文档分成许多部件并对这些部件加以标识。它也是元标记语言,即定义 了用于定义其他与特定领域有关的、语义的和结构化的标记语言的句法语言,它在软件 开发领域占据着不可或缺的重要地位。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复用元素信息,包括解析出所述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文档;解析模块,用于解析出所述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元素信息以便于进行后续根据XML元素信息的相应操 作。通过复用关系,实现了 XML元素的复用,无需反复编写大量含有重复内容的XML 文档,因此在获取XML信息时无需重复解析相同的内容的过程,减少了工作量,从而解 决了影响系统性能的问题,并且提高了工作效率,降低了出错率,使开发和维护工作更 加灵活敏捷。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或 现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅 是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还 可以根据提供的附图获得其他的附图。图1为本专利技术一种XML信息获取方法实施例1的流程图;图2为本专利技术一种XML信息获取方法实施例2的流程图;图3为本专利技术一种XML信息获取系统实施例1的结构示意图;图4为本专利技术一种XML信息获取系统实施例2的结构示意图。具体实施例方式下面将结合本专利技术实施例中本文档来自技高网...

【技术保护点】
一种XML信息获取方法,其特征在于,按照预先定义的语法规则编写XML文档,所述预先定义的语法规则定义了XML元素中包括复用属性和/或被复用属性,所述方法包括:获取所述XML文档;解析出所述XML文档中所有包含被复用属性的XML被复用元素信息和包含复用属性的XML复用元素信息;按照复用规则和XML被复用元素信息将所述XML复用元素信息填充完整;获取所述解析出的XML各个元素信息,所述XML各个元素信息包括XML被复用元素信息和所述补充完整的XML复用元素信息。

【技术特征摘要】

【专利技术属性】
技术研发人员:刘博丁医尹田田
申请(专利权)人:中国农业银行股份有限公司
类型:发明
国别省市:11

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

1