<전체 XML 스키마 참조
정의 및 사용
확장 요소는 기존 형 simpleType 또는 complexType에 요소를 확장한다.
요소 정보
- Parent elements: simpleContent를, complexContent
통사론
<extension
id=ID
base=QName
any attributes
>
(annotation?,((group|all|choice|sequence)?,
((attribute|attributeGroup)*,anyAttribute?)))
</extension>
(α-기호 요소는 0 또는 1 시간이 발생할 수 있음을 선언하고, * 기호 요소가 상기 확장 요소 내에 0 번 이상 발생할 수 있음을 선언)
속성 | 기술 |
---|---|
id | 선택 과목. 요소의 고유 ID를 지정 |
base | 필요합니다. 의 이름을 지정하는 기본 데이터 형, 형 simpleType 요소 또는 complexType에 소자 |
any attributes | 선택 과목. 비 스키마 네임 스페이스와 다른 속성을 지정합니다 |
예 1
다음 예는 속성을 추가하여 기존 형 simpleType 확장 :
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:simpleType name="size">
<xs:restriction base="xs:string">
<xs:enumeration value="small" />
<xs:enumeration value="medium" />
<xs:enumeration value="large" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="jeans">
<xs:simpleContent>
<xs:extension base="size">
<xs:attribute name="sex">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="male" />
<xs:enumeration value="female" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:schema>
예 2
다음의 예는 세 가지 요소를 추가하여 기존 complexType에 요소를 확장 :
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="employee" type="fullpersoninfo"/>
<xs:complexType name="personinfo">
<xs:sequence>
<xs:element name="firstname" type="xs:string"/>
<xs:element name="lastname" type="xs:string"/>
</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:schema>
<전체 XML 스키마 참조