Announcement

Collapse
No announcement yet.

Optionale Elemente max. einmal erlauben

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Optionale Elemente max. einmal erlauben

    Hallo,

    ich hab ein Schemata-Problem bzw. weiss nicht, ob sowas überhaupt machbar ist, hab mich schon blöd gesucht ...

    In einem Element <name> - sollen mehrere Untertags zur Verfügung stehen. Jedes dieser Tags ist optional, darf aber maximal nur einmal vorkommen. Momentan habe ich sowas:

    <xs:element name="name">
    <xs:complexType>
    <xs:sequence maxOccurs="unbounded">
    <xs:choice>
    <xs:element name="eins" type="xs:string"/>
    <xs:element name="zwei" type="xs:string"/>
    <xs:element name="drei" type="xs:string"/>
    </xs:choice>
    </xs:sequence>
    </xs:complexType>
    </xs:element>

    Das klappt so weit auch ganz gut, bis halt auf das Problem, dass die ienzelnen Unter-Elemente "eins", "zwei" und "drei" auch mehrfach vorkommen können. Genau das will ich verhindern, *wenn* also das optionale Element "eins" vorkommt, dann darf es nur einmal vorkommen.

    Geht sowas? Mit maxOccurs und minOccurs hab ichs nicht hinbekommen ....


    .... danke für jeden Tip!

  • #2
    Probiere es mit:
    Code:
    <xs:element name="name">
      <xs:complexType>
        <xs:all>
          <xs:element name="eins" type="xs:string" minOccurs="0" maxOccurs="1"/>
          <xs:element name="zwei" type="xs:string" minOccurs="0" maxOccurs="1"/>
          <xs:element name="drei" type="xs:string" minOccurs="0" maxOccurs="1"/>
        </xs:all>
      </xs:complexType>
    </xs:element>

    Comment


    • #3
      Dankeschön!

      Comment

      Working...
      X