2011-08-17 4 views
1
에서 같은 이름의 속성

이 다음 XML에 대한 XSD를 작성 가능 : 추가 관점 다른 스키마에XSD : 다른 스키마

<list add:type="single" view:type="multi"/> 

를? 그런 다음 스키마 이름을 사용하여 필수 속성 값을 필터링합니다.

답변

1

세 가지 스키마 문서를 사용합니다.

  • 스키마 문서 1은 add의 네임 스페이스에 대한 targetNamespace를 가지며 "type"이라는 전역 속성을 선언합니다.
  • 스키마 문서 2는 view의 네임 스페이스에 대한 targetNamespace를 가지며 "type"이라는 전역 속성을 선언합니다.
  • 스키마 문서 3은 두 개의 네임 스페이스를 가져옵니다. 또한 "add : type"및 "view : type"에 대한 속성 참조를 사용하여 정의 된 두 개의 속성이있는 complexType을 선언합니다. 요소 "목록"은 해당 유형입니다. xmlns : add = "..."및 xmlns : view = "..."네임 스페이스 선언을 특성 정의의 범위에 포함시켜야합니다.

기본적으로 다른 네임 스페이스의 요소 나 특성을 원할 때마다 해당 네임 스페이스의 targetNamespace를 가진 다른 스키마 문서가 있습니다. 거기에서 그 네임 스페이스에 대한 요소 나 속성이 전역 적으로 선언됩니다. 그런 다음 다른 스키마 문서에서 이러한 속성 또는 요소를 사용하려면 1) 네임 스페이스 가져 오기 (xs : import) 2) 네임 스페이스에 대한 ns 접두사 선언 3) ref = "nsprefix : attr_or_elem_name"을 사용하여 참조 속성 또는 요소

+0

고맙습니다. 정말 감사드립니다. 나는 문자 그대로 이것을 막으려 고 막 다른 골목에 올랐다. – andriys

관련 문제