2.5.3. 확장으로 유형 정의
대부분의 주요 코딩 언어와 마찬가지로 XML 스키마를 사용하면 다른 데이터 형식에서 일부 요소를 상속하는 데이터 형식을 만들 수 있습니다. 이를 확장 기능으로 유형을 정의라고 합니다. 예를 들어, planet
이라는 새 요소를 추가하여 예 2.4. “복잡한 유형” 에 정의된 personalInfo
구조를 확장하는anInfo라는 새 유형을 만들 수 있습니다.
확장으로 정의된 유형에는 네 가지 부분이 있습니다.
-
형식 이름은
complexType
요소의name
특성으로 정의됩니다. complexContent
요소는 새 형식에 둘 이상의 요소를 갖도록 지정합니다.참고복잡한 형식에 새 특성만 추가하는 경우
간단한Content
요소를 사용할 수 있습니다.-
기본 형식이라고 하는 새 형식을 파생 되는 형식은 확장 요소의 기본 특성에 지정됩니다.The type from which the new type is derived, called the
base
type, is specified in the base attribute of theextension
element. -
새 유형의 요소 및 특성은 일반 복잡한 유형의 경우와 동일하게
확장
요소에 정의됩니다.
예를 들어, 외계인Info
는 예 2.13. “확장 기능으로 정의된 유형” 과 같이 정의됩니다.
예 2.13. 확장 기능으로 정의된 유형
<complexType name="alienInfo"> <complexContent> <extension base="xsd1:personalInfo"> <sequence> <element name="planet" type="xsd:string"/> </sequence> </extension> </complexContent> </complexType>