2

最初の要素は特定のタイプであり、次の要素は任意の順序でいくつかの要素になることを定義したいと思います。このような:

<node>
<!-- always at first -->
<node-data>
...
</node-data>

<!-- other nodes in any order-->
<node3></node3>
<node1></node1>
<node2></node2>
</node>

<xsd:sequence>すべてのノードを強制的に整理するため、使用できません。

ご協力いただきありがとうございます。私の英語でごめんなさい。

4

1 に答える 1

2

開始時の適切なレイアウトは次のようになります。

<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="node">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="node-data"/>
        <xs:choice minOccurs="0" maxOccurs="unbounded">         
          <xs:element name="node3" />
          <xs:element name="node1" />
          <xs:element name="node2" />
        </xs:choice>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

次に、タイプを絞り込んだり、選択肢の下にノードを追加したりできます。ワイルドカードをサポートする場合は、を使用するxs:any必要があります。

于 2012-04-04T17:18:28.457 に答える