xml - 在 xsd 中定义 xml,其中属性确定可能的内容

标签 xml xsd

如何在 xsd 中定义这样的东西?

<start>
    <request type="typeA">
        <elementOnlyFoundInA />
    </request>
    <request type="typeB">
        <elementOnlyFoundInB />
    </request>
</start>

我运行 xsd.exe 只是为了了解它的外观,但它似乎无法识别 type 的值与请求内容之间的关系。甚至可以在 xsd 文件中基于这样的属性定义内容吗?

最佳答案

XML Schema 目前不支持任何类似的东西——你不能使结构依赖于其他属性或元素的内容。

工作中的新 XML 模式版本可能会朝这个方向提供一些东西,但目前还远未被接受和实现。

如果您需要这种 XML 验证,您需要求助于 Schematron现在。

关于xml - 在 xsd 中定义 xml,其中属性确定可能的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2593325/

相关文章:

java - 验证 XSD 文件

android - 如何为 id 属性设置 XSD 限制

xsd - 有没有办法为 F# 类型生成 .xsd?

javascript - 在 XML 文档中搜索某个元素/属性值并返回该元素

java - 短信应用程序 - List_item 错误

java - JAXB 覆盖 package-info.java : What should be "namespace"?

java - 如何使用 XSL-FO/Apache FOP 在表行中重复相同的模板

python - 使用 lxml 更改文本值

c# - 使用 xsd.exe 反序列化 - 如何反序列化为对象,而不是数据集?

xml - xsd :sequence behavior inside a xsd:all? 的替代方案是什么