我正在寻找一种在 XSD 文件中定义 XML 架构的方法,然后使用所述架构来验证存储在字符串中的 XML。我希望能够使用 JavaScript 来完成这一切,因为我不想在 JS 环境中使用 C/C++ 函数。
我一直在研究一些处理 XML 的 JS 包,但没有找到一个可以根据 XML 模式验证 XMl 的包,除了 DOMparser() 之外。问题是我不能使用布尔属性(没有值的属性),我真的很希望能够这样做。我发现其他 XML 解析器允许布尔属性,但不针对架构进行验证。
有谁知道任何纯JS方法来处理这个问题吗?
我研究过的 XML 解析器:
据我所知,这些都没有办法验证 XML 模式。这个问题的有效答案可能是向我展示一种使用这些包中的任何一个来执行此操作的方法,或另一个执行此操作的包。
Java 脚本不存在使用 XSD 对客户端 XML 验证的直接支持。我能找到的最好的客户端是这个用于 java 脚本的第三方库:xmljs。还有一个展示其用法的演示:demo.
对于复杂且更强大的验证,我建议在服务器端进行,使用 Node.js 库(例如 libxmljs)或其他语言的支持,例如 Java 库 Xerces 或 C# 中的 XmlSchemaSet 类。