我正在使用 XML 模式并尝试生成使用它的简单有效文档。
架构 XSD 由 W3C 提供,所以我无法想象它实际上有什么问题。但是xmllint
在命令行以及任何数量的免费赠品在线验证器上都会抱怨实际的 XSD(不是我的测试文档):
The QName value '{http://www.w3.org/XML/1998/namespace}id' does not resolve to a(n) attribute declaration.
请注意,它无法解析id
类型/名称,这是基本的 XML 内容。我不是 XML 大师,所以我可能在这里遗漏了一些关于名称空间/链接的明显内容。这对我的测试文档来说不是问题,因为即使是简单的测试文档在 XSD 编译位中也会失败。
这是 XSD 文件。这是一个简单的测试文档:
<?xml version="1.0" encoding="UTF-8"?>
<ink xmlns="http://www.w3.org/2003/InkML"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.w3.org/TR/2011/REC-InkML-20110920/inkml.xsd">
</ink>
但尽我所能,我无法获得xmllint
或任何在线验证器甚至无法通过 XSD 解析/编译阶段,因为 XML id 类型在某种程度上是不稳定的。
我对 XML 的理解在这里不正确吗?我问的是 SO(相对于另一个站点),因为最终这是关于理解 XML 规范和依赖项以编写和验证文档。我欢迎做正确事情的代码片段,不管是什么正确的事情。
想法?谢谢。