XSD 혼합 내용을 포함한 복합 타입

혼합 복합 유형은 속성, 요소 및 텍스트를 포함할 수 있습니다.

혼합 내용을 가진 복합 유형

XML 요소, "letter"은 텍스트와 다른 요소를 포함합니다:

<letter>
존경하는 미스터.<name>John Smith</name>.
주문 번호 <orderid>1032</orderid>
2001-07-13에 발송될 예정입니다 <shipdate>2001-07-13</shipdate>.
</letter>

아래의 schema는 이 "letter" 요소를 정의합니다:

<xs:element name="letter">
  <xs:complexType mixed="true">
    <xs:sequence>
      <xs:element name="name" type="xs:string"/>
      <xs:element name="orderid" type="xs:positiveInteger"/>
      <xs:element name="shipdate" type="xs:date"/>
    </xs:sequence>
  </xs:complexType>
</xs:element>

비고:문자 데이터가 "letter"의 자식 요소 사이에 나타날 수 있도록 하려면, mixed 속성이 "true"으로 설정되어야 합니다. <xs:sequence> 태그 (name, orderid, shipdate)는 정의된 요소가 "letter" 요소 내부에서 차례로 나타나야 한다는 것을 의미합니다.

우리는 complexType 요소에 이름을 부여하고, "letter" 요소의 type 속성이 이 complexType의 이름을 참조하도록 할 수 있습니다. (이 방법으로 여러 요소가 동일한 복합 유형을 참조할 수 있습니다):

<xs:element name="letter" type="lettertype"/>
<xs:complexType name="lettertype" mixed="true">
  <xs:sequence>
    <xs:element name="name" type="xs:string"/>
    <xs:element name="orderid" type="xs:positiveInteger"/>
    <xs:element name="shipdate" type="xs:date"/>
  </xs:sequence>
</xs:complexType>