如何校验 XML
- 粘贴 XML、打开文件,或通过 URL 加载。输入时会自动检查文档。
- 阅读错误信息:其中会指出问题所在,并给出行号和列号。点击校验即可直接跳转到出错位置。
- 修正该行。当结果显示XML 格式正确时,就可以格式化、压缩、复制或下载文档了。
常见 XML 错误及解决方法
| 错误 | 错误写法 | 正确写法 |
|---|---|---|
| 结束标签不匹配 | <b><i>text</b></i> | <b><i>text</i></b> |
| 元素未闭合 | <item>Pen | <item>Pen</item> |
| 名称大小写不一致 | <Item>…</item> | <Item>…</Item> |
| 未转义的 & 符号 | Tom & Jerry | Tom & Jerry |
| 未转义的小于号 | a < b | a < b |
| 属性值没加引号 | <p id=5> | <p id="5"> |
| 属性重复 | <p id="1" id="2"> | <p id="1"> |
| 根元素不止一个 | <a/><b/> | <root><a/><b/></root> |
| 使用了 HTML 实体 | |   |
| XML 声明不在开头 | <?xml …?> 前面有空行 | <?xml …?> 位于文件最开头 |
| 注释中出现双连字符 | <!-- a -- b --> | <!-- a - b --> |
格式良好的 XML 与有效的 XML
格式良好(well-formed)的文档遵守 XML 1.0 规范的语法规则:只有一个根元素,标签正确嵌套并闭合,属性值带引号,特殊字符已转义。任何 XML 解析器都会拒绝格式不正确的文档。
有效(valid)的文档不仅格式良好,还符合某个 Schema——即规定允许使用哪些元素和属性的 DTD 或 XSD。本页面检查的是格式是否良好。如需按 Schema 校验,请使用支持 Schema 的工具,例如 xmllint --noout --schema schema.xsd file.xml。
常见问题
能按 XSD 或 DTD 校验 XML 吗?
不能。本工具检查的是格式是否良好,也就是所有 XML 解析器都要求的语法。文档中可以包含 DOCTYPE,但不会将 XML 与 DTD 或 XSD Schema 进行比对。
为什么只显示一个错误?
XML 规范把所有格式错误都视为致命错误,而且一个错误(比如缺少结束标签)往往会在后面引发一连串误导性的报错。修正第一个错误后,文档的其余部分会立即接着检查。
可以检查 sitemap、RSS 订阅源或 SVG 文件吗?
可以。任何基于 XML 的格式都可以检查格式是否良好。对于 sitemap,Sitemap 检测工具还会额外检查 sitemap 协议规则。
我的 XML 会被上传吗?
不会。校验在你的浏览器中进行。只有通过 URL 加载的文件才会经由我们的服务器获取。