[发明专利]基于XML Schema验证XML文档的方法有效
| 申请号: | 201810762652.7 | 申请日: | 2018-07-12 |
| 公开(公告)号: | CN108959095B | 公开(公告)日: | 2021-11-23 |
| 发明(设计)人: | 吴家菊;纪斌;刘振吉;杨永辉;陈泉根;程铮;颜运强;蒙立荣;马永起;李龚亮;秦英;彭婉怡 | 申请(专利权)人: | 中国工程物理研究院计算机应用研究所 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F11/07 |
| 代理公司: | 北京远大卓悦知识产权代理有限公司 11369 | 代理人: | 贾晓燕 |
| 地址: | 621999 四*** | 国省代码: | 四川;51 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 xml schema 验证 文档 方法 | ||
1.一种基于XML Schema验证XML文档的方法,其特征在于,包括:
S1,Java语言实现DOM编程接口,解析XML文档以获取相应的解析文档DOMdoc;
S2,对解析文档DOMdoc进行完整性校验,以判断其是否存在语法错误;
S3,输出错误信息;
S4,定义错误位置追踪函数;
其中,所述追踪函数依据鼠标点击位置确定错误信息,并在DOMdoc中找到该条错误信息对应的节点,并以不同于其他节点的方式显示该节点,具体实施方式取决于DOMdoc文档的显示方式;
在S1中,还需要定义错误类Error以及相关变量;
其中,相关变量的定义包括:
一个用于保存错误信息的String类型变量content,其初始值被配置为空字符串;
另一个用于保存为XML文档中存在的语法错误创建的ArrayListError类型的变量errors;
所述Error的建立包括:
定义一个Node类型变量,一个int类型变量;
在Error中定义构造函数以及对应的两个传入参数,其中一个传入参数为Node类型,以DOMdoc中存在语法错误的节点相对应,另一个传入参数为int类型,以与content变量表示的字符串长度相对应;
在构造函数中为Node类型变量及int类型变量定义相关的赋值语句。
2.如权利要求1所述的基于XML Schema验证XML文档的方法,其特征在于,在S1中,所述XML文档的解析方式被配置为采用DOM(Document Object Model)方式进行解析,且所述解析文档类型为Document类型;
对解析文档DOMdoc进行拷贝以得到克隆后的解析文档docClone;
所述docClone通过DOMdoc调用cloneNode(true)方法以获取。
3.如权利要求1所述的基于XML Schema验证XML文档的方法,其特征在于,在S2中还需要定义错误处理类handleError,以通过所述handleError实现DOMErrorHandler接口,并在handleError中定义错误处理函数;
获取docClone的DOMConfiguration对象,并为该对象设置相关参数;
其中,错误处理函数的定义过程包括:
S21,在错误处理函数有一个DOMError类型的传入参数err;
S22,定义一个DOMLocator类型的变量loc,并将err调用getLocation()方法获取的值赋值给loc;
S23,将语法错误实例化为Error对象,并保存在errors变量中,以备进行错误信息追踪;
S24,判断语法错误类型;
S25,更新错误信息,以备将错误信息输出。
4.如权利要求3所述的基于XML Schema验证XML文档的方法,其特征在于,在S23中,将语法错误实例化Error对象的过程包括:
S231,依据docClone文档的语法错误节点在DOMdoc中找到对应节点node;
S232,调用Error类的构造函数并将node和content.length()作为传入参数,获取Error对象;
在S24中,语法错误包括DOMError.SERITY_WARNING,DOMError.SERITY_ERROR,DOMError.SERITY_FATAL_ERROR三种类型,err通过调用getSerivity()方法以获取当前语法错误类型,并依据错误类型更新content;
且在S24中,err通过调用getMessage方法获取错误信息,并将错误信息更新到content。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国工程物理研究院计算机应用研究所,未经中国工程物理研究院计算机应用研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810762652.7/1.html,转载请声明来源钻瓜专利网。





