XML-схема: элемент с атрибутами, содержащими только текст?


у меня возникли трудности с поиском этого. Как бы я определил элемент в файле схемы XML для XML, который выглядит следующим образом:

<option value="test">sometext</option>

Я не могу понять, как определить элемент, который имеет тип xs:string а также имеет атрибут.

вот что я получил до сих пор:

<xs:element name="option">
    <xs:complexType>
        <xs:attribute name="value" type="xs:string" />
    </xs:complexType>
</xs:element>
3 120

3 ответа:

попробовать

  <xs:element name="option" type="AttrElement" />

  <xs:complexType name="AttrElement">
    <xs:simpleContent>
      <xs:extension base="xs:string">
        <xs:attribute name="value" type="xs:string">
        </xs:attribute>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>

... или встроенный эквивалент:

<xs:element name="option">
  <xs:complexType>
    <xs:simpleContent>
      <xs:extension base="xs:string">
        <xs:attribute name="value" type="xs:string" />
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
</xs:element>

Я знаю, что это не то же самое, но это работает для меня:

<xsd:element name="option">
    <xsd:complexType mixed="true">
        <xsd:attribute name="value" use="optional" type="xsd:string"/>
    </xsd:complexType>
</xsd:element>