如何在XSD中重用多个元素的复杂类型?

时间:2017-03-20 02:36:20

标签: xml xsd xsd-validation xml-validation

我完全无法找到任何相关信息,可能是因为我没有使用术语。我想要做的是创建一个我已经拥有的货币模板元素,并在两个不同名称下的两个地方使用它(即。currentBalancemaxBalance)。

此模板的当前格式为:

<xsd:element name="currency">
    <xsd:complexType>
        <xsd:simpleContent>
            <xsd:extension base="xsd:double">
                <xsd:attribute ref="currencyCode" />
            </xsd:extension>
        </xsd:simpleContent>
    </xsd:complexType>
</xsd:element>

1 个答案:

答案 0 :(得分:6)

只需全局定义并命名您想要使用的复杂类型,

  <xsd:complexType name="currency">
    <xsd:simpleContent>
      <xsd:extension base="xsd:double">
        <xsd:attribute ref="currencyCode" />
      </xsd:extension>
    </xsd:simpleContent>
  </xsd:complexType>

然后在需要的地方引用它:

  <xsd:element name="currentBalance" type="currency"/>
  <xsd:element name="maxBalance" type="currency"/>