【问题标题】:conditional simple/comple types in XSDXSD 中的条件简单/复杂类型
【发布时间】:2016-10-03 01:59:10
【问题描述】:

我想为以下 xml 创建架构定义:

价格节点可能有简单的数值:

<price>1000000</price>

或价格节点可能有唯一daily

<price>
  <daily>500</daily>
</price>

或价格节点可能有唯一weekly

<price>
  <weekly>4000</>weekly> 
</price>

有可能吗?如果是这样,如何使用 XSD 定义 price 元素?

【问题讨论】:

    标签: xml xsd schema


    【解决方案1】:

    在 XSD 中,您不能同时允许简单和复杂的内容,除非您愿意通过 mixed="true" 混合元素和文本。您可以然后使用 XSD 1.1 断言来排除两者同时出现。

    但是,你在这里逆流而上。相反,更改您的 XML 设计,使 dailyweekly 传达的信息成为属性而不是元素:

    <price> 1000000 </price>
    <price frequency="daily">500</price>
    <price frequency="weekly">4000</price>
    

    那么为price 定义XSD 就没有问题了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-11
      相关资源
      最近更新 更多