我正在尝试XmlDocument
针对仅代表该片段的 XSD 验证一个片段。例如:
<!-- Validate entire message against message.xsd -->
<?xml version="1.0" encoding="utf-8" ?>
<Message>
<Header>
...
</Header>
<Body>
<!-- Validate this against body.xsd -->
...
</Body>
</Message>
整个消息根据开发人员提供的message.xsd模式进行验证。元素的内容根据<Body>
客户端提供的body.xsd模式进行验证。
body.xsd架构对、或元素一无所知。它只定义元素中应该包含的内容。<Message>
<Header>
<Body>
<Body>
我不知道如何根据 XML 模式片段验证 XML 片段。一切似乎都表明 XML 模式片段需要了解其祖先元素的所有信息。我有几条路径,但不知道如何实现它们。
- 以编程方式将body.xsd注入到message.xsd的适当节点中。
- 从中提取适当
XmlElement
的并基于此节点XmlDocument
创建一个新的。XmlDocument
- 与名称空间有关,我还不明白。
这个问题有哪些解决方案?