제한 메커니즘을 사용한 단순 유형 파생
개요
제한 메커니즘을 사용하여 기존의 단순 유형에서 새 단순 유형을 파생할 때는 일반적으로 인스턴스 메시지의 해당 특성 또는 요소에 허용되는 값을 기본 단순 유형에 허용되는 값의 하위 집합으로 제한합니다. 예를 들어 문자열 유형을 여러 열거형 문자열 중 하나로 제한할 수 있습니다.
제한 메커니즘을 사용하여 새 단순 유형을 파생하는 포괄적인 방법을 보려면 W3C 웹 사이트를 참조하십시오. 이 웹 사이트 및 기타 웹 사이트에 대한 다양한 링크는 웹의 XSD 리소스를 참조하세요.
Field 요소 및 필드 특성
제한을 사용하여 간단한 형식을 파생하려면 스키마 트리에서 관련 필드 요소 노드 또는 필드 특성 노드를 선택한 다음, 속성 창 기본 데이터 형식 속성의 드롭다운 목록에서 간단한 형식을 선택합니다. 이 속성에 대한 값을 선택하면 파생된 값이 자동으로 기본값에서 형식 파생의 기본값인 Restriction으로 변경됩니다. 또한 제한이라는 완전히 새로운 속성 범주를 속성 창 사용할 수 있게 됩니다.
선택한 기본 데이터 유형에 따라 이 새 범주에 여러 속성을 설정할 수 있습니다. 예를 들어 기본 데이터 형식이 숫자인 경우 MaxFacet Type 속성(MaxFacet 값이 설정된 경우), MaxFacet Value, MinFacet Type(MinFacet Value가 설정된 경우) 및 MinFacet 값은 허용되는 값의 포함 또는 배타적 범위를 정의하는 데 사용할 수 있습니다. 기본 데이터 형식이 문자열 형식인 경우 문자열의 길이를 제한하는 데 Length, Maximum Length 및 Minimum Length 속성을 사용할 수 있습니다.
필드 노드의 다양한 제한 속성에 대한 자세한 내용은 UI 지침 및 개발자 API 네임스페이스 참조의 필드 요소 노드 속성을 참조하세요.
먼저 필드 요소 노드 또는 필드 특성 노드를 데이터 형식에서 기본 데이터 형식으로 변경하고(따라서 단순 형식 파생 프로세스를 시작함) Derived By 속성을 제한으로 설정하고 허용된 문자열 값에 대한 열거형 기반 제한을 제공하는 경우 XSD 보기에서 해당 조각에서 다음과 같은 변경 내용을 관찰할 수 있습니다.
이전에는 WestCoastStates라는 필드 요소 노드를 새로 삽입했습니다.
<xs:element name="ContainingRecord"> <xs:complexType> <xs:sequence> <xs:element name="WestCoastStates" type="xs:string" /> </xs:sequence> </xs:complexType> </xs:element>
기본 데이터 형식 속성을 "xs:string"으로 설정하고 파생 기본값인 Derived By 속성에 대한 제한을 그대로 둡니다.
<xs:element name="ContainingRecord"> <xs:complexType> <xs:sequence> <xs:element name="WestCoastStates" > <xs:simpleType> <xs:restriction base="xs:string" /> </xs:simpleType> </xs:element> </xs:sequence> </xs:complexType> </xs:element>
제한 범주의 열거형 속성을 대륙 미국 서해안에 있는 3개 주의 이름으로 설정한 후
<xs:element name="ContainingRecord"> <xs:complexType> <xs:sequence> <xs:element name="WestCoastStates"> <xs:simpleType> <xs:restriction base="xs:string" /> <xs:enumeration value="Washington" /> <xs:enumeration value="Oregon" /> <xs:enumeration value="California" /> </xs:restriction> </xs:simpleType> </xs:element> </xs:sequence> </xs:complexType> </xs:element>