当前位置: 首页 > news >正文

使用XMLSpy校验xml是否合法

# 背景说明
近期大部分地区都在做或将要做数据迁移,基本所有产品的迁移工具底层都依赖了XSD文件对迁移的结构化数据对应XML文件进行初步校验,但有些XSD的问题提示不太容易理解,正好N年前我做XX数据上报时用过XMLSpy可以直接校验每个xml是否合法,在这里分享给大家。

# 前置条件
 - 有问题的xml(必须是具体的xml,如“0206_05532022020607xxxx.xml”)
 - 问题xml对应的完整xsd(必须是问题xml对应的xsd,如“0206_刑事xxxx案件_all.xsd”;注意必须是完整的,合并过的xsd,否则可能不能正确解析,如“0206_刑事xxxx案件.xsd”里面引用了好几个其他的xsd,最终经过merge才整合成了“0206_刑事xxxx案件_all.xsd”)

# 使用方法
 - 打开问题xml(如“0206_05532022020607xxxx.xml”)
 - 修改xml顶部的“xsi:schemaLocation="http://EDI.court.gov.cn/2016 0206_刑事抗诉再审审查案件_all.xsd"” 元素,一个是删除前半段“/2016/data”中的“/data”,另一个是将后半段的xsd改成具体的xsd(一般merge后的末尾会加_all)
 - 将修改后的xml和xsd放在同一目录(理论上xml中写xsd的绝对路径也行,但一般放相同目录比较省事儿)
 - 打开“XMLSpy.exe”
 - 将修改后的xml拖到XMLSpy窗口中(或者用XMLSpy单独打开也行)
 - 点击XMLSpy上方“XML”-“验证”按钮(或者打开后默认会有校验,右下角可以点击重新验证)
 - 根据XMLSpy定位的问题位置进行问题定位

 
# 补充说明
 - 也可以用XMLSpy直接打开整合后的XSD,并点击顶部“DTD/Schema”-“生成样例XML文件”,生成一份符合XSD规范的XML样例,然后比较问题XML位置的差异

相关文章:

  • 强化学习中关键超参数的详细说明
  • vue2 开发一个实习管理系统电脑端-前端静态网站练习
  • 基于知识库的客户服务工具
  • Kubernetes学习笔记-环境变量的使用
  • 使用 Vue 3 开发桌面端应用的框架性能对比
  • 图神经网络(GNN)基本概念与核心原理
  • Qt中的全局函数讲解集合(全)
  • IM云端搜索全面升级,独家能力拓展更多“社交连接”玩法
  • Windows server 2019中百度网盘登录中安全验证窗口空白
  • 华为IP(5)
  • AtCoder Beginner Contest 242 G - Range Pairing Query (莫队)
  • JS 中call、apply 和 bind使用方法和场景
  • Ascend C常见问题案例:含有Matmul高层API的算子精度问题
  • 【音视频】视频解码实战
  • Linux一个系统程序——进度条
  • 【基础篇】prometheus页面UI功能详解
  • C# 类(Class)教程
  • web 开发中,前端部署更新后,该怎么通知用户刷新
  • Java EE 计算机的操作系统
  • Python爬虫课程实验指导书
  • 北京公园使用指南
  • 美乌总统梵蒂冈会谈,外交部:望有关各方继续通过对话谈判解决危机
  • 五一期间上海景观照明开启重大活动模式,外滩不展演光影秀
  • 修订占比近30%收录25万条目,第三版《英汉大词典》来了
  • 准85后青海海北州副州长、州公安局局长李贤荣赴山东临沂挂职
  • 核电开闸!国常会核准10台新机组,拉动超2000亿投资,新项目花落谁家?