如何在xsd中定义简单/复杂类型包含另一个XML?

时间:2014-11-06 14:36:54

标签: xml xsd

在xsd中可能医疗详细信息可能包含另一个XML,而不是另一个复杂类型,但还有任何其他尚未定义的xml。

<xs:complexType name="personinfo">
  <xs:sequence>
    <xs:element name="firstname" type="xs:string"/>
    <xs:element name="lastname" type="xs:string"/>
    <xs:element name="medicalDetails" type="xs:medicalDetails"/>
  </xs:sequence>
</xs:complexType>

<xs:complexType name="fullpersoninfo">
  <xs:complexContent>
    <xs:extension base="personinfo">
      <xs:sequence>
        <xs:element name="address" type="xs:string"/>
        <xs:element name="city" type="xs:string"/>
        <xs:element name="country" type="xs:string"/>
      </xs:sequence>
    </xs:extension>
  </xs:complexContent>
</xs:complexType>

<xs:complexType name="medicalDetails">

<!--This type contain another XML  -->

</xs:complexType>

1 个答案:

答案 0 :(得分:1)

是的,您可以使用xs:any来允许任意内容,例如:

<xs:complexType name="medicalDetails">
    <xs:sequence>
      <xs:any minOccurs="0"/>
    </xs:sequence>
</xs:complexType>

Here's a link to more documentation

这意味着任何事情都可以归入medicalDetails