[发明专利]将XML Schema文档转换为Java代码的方法有效
申请号: | 201810193944.3 | 申请日: | 2018-03-09 |
公开(公告)号: | CN108519964B | 公开(公告)日: | 2022-03-04 |
发明(设计)人: | 吴家菊;纪斌;刘振吉;刘慧君 | 申请(专利权)人: | 中国工程物理研究院计算机应用研究所 |
主分类号: | G06F16/84 | 分类号: | G06F16/84;G06F8/30 |
代理公司: | 北京远大卓悦知识产权代理有限公司 11369 | 代理人: | 卞静静 |
地址: | 621999 四*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | xml schema 文档 转换 java 代码 方法 | ||
本发明公开了一种将XML Schema文档转换为Java代码的方法,包括:S1,建立与XML Schema标准定义的30种元素、12种限定元素相对应的Java类,并依据元素、限定元素之间的嵌套关系建立Java类之间的引用关系;S2,解析单元用Java语言实现DOM编程接口以获取解析器实例,用其解析XML Schema文档以获取对应的解析文档以及解析文档的第一个元素n;S3,以n为根元素,按照深度优先遍历次序依次为解析文档中每个元素创建对应Java对象,以实现XML Schema文档到Java代码的转换。采用本发明,可以将XML Schema文档中的所有内容转化为Java代码,并将元素之间的嵌套关系用Java语言完整的表示。基于本发明,可以开发一系列XML相关软件,例如XML编辑软件、XML验证软件。
技术领域
本发明涉及一种在软件设计情况下使用的方法。更具体地说,本发明涉及一种用在软件设计情况下的将XML Schema文档转换为Java代码的方法。
背景技术
XML(eXtensible Markup Language)是一种数据描述和交换的通用格式,并已在Internet上和企业内部得到了广泛应用。由于XML的通用性和可交换性,在武器装备综合保障领域XML被广泛用于描述综合保障数据。XML Schema是W3C推荐使用的标准,是XML应用的基础。XML Schema文档用来设计、约束和验证XML文档。XML Schema文档本身是一个XML文档,它符合XML语法结构。由于XML语法的复杂性,一般人员很难使用文本编辑器编写格式正确的XML文档,并且编写的XML文档也无法使用XML Schema对其进行验证。
当前国外有众多商业化的XML编辑软件,此类软件技术成熟,功能强大,能有效支持XML文档的编辑和验证。但武器装备综合保障数据具有高度保密性,因此不能将XML编辑软件集成到综合保障系统中。设计开发一个自主可控、功能强大的XML编辑软件能有效武器装备综合保障数据的编写效率,提高武器装备综合保障水平。如何XML Schema完整的用编程语言表示是XML编辑软件开发的基础也是最重要的部分,直接关系着XML编辑软件后续开发能否正常进行,本发明在此应用背景下产生。
而现有的专利技术,只能实现对XML中对象或内容的部分抽取,无法实现将其转换成直接的Java代码,以供其它软件进行识别、编辑、设计或使用。
发明内容
本发明的一个目的是解决至少上述问题和/或缺陷,并提供至少后面将说明的优点。
本发明还有一个目的是提供一种将XML Schema文档转换为Java代码的方法,采用本发明能够将任何格式正确的XML Schema文档完整地转化为Java对象,并能够依据XMLSchema文档中元素之间的嵌套关系建立Java对象之间的关系,实现XML Schema文档到Java代码的翻译,为其它软件的深度开发设计、应用、修改、编译等提供基础,即基于本发明可以开发XML编辑软件、XML验证软件等一系列XML相关的软件。
为了实现根据本发明的这些目的和其它优点,提供了一种将XML Schema文档转换为Java代码的方法,包括:
S1,建立与XML Schema标准定义的30种元素、12种限定元素相对应的Java类,并依据元素、限定元素之间的嵌套关系建立Java类之间的引用关系;
S2,解析单元用Java语言实现DOM编程接口以获取解析器实例,并基于解析器实例对待转换的XML Schema文档进行解析,以获取对应的解析文档以及解析文档的第一个元素n;
S3,对象创建单元接收第一个元素n,获取元素n对应的本地名称,基于本地名称调用对应的Java类构造函数,为n创建相应的Java对象,并以n为根元素,按照深度优先遍历次序依次为解析文档中每个元素创建对应Java对象,以实现XML Schema文档到Java代码的转换。
优选的是,其中,在S1中Java类的建立包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国工程物理研究院计算机应用研究所,未经中国工程物理研究院计算机应用研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810193944.3/2.html,转载请声明来源钻瓜专利网。