스키마 포함, 재정의로
스키마 포함 또는 네임스페이스
가져오기를 사용하여 XML 스키마 또는
WSDL 문서에 기본 문서의 다른 XML 스키마를 포함할 수 있습니다.
이 태스크 정보
- 스키마 포함
- <xsd:include schemaLocation="myTypes.xsd"/>와 같이 include 요소를 사용하여
다른 XML 스키마 단편을 기본 XML 스키마 또는 WSDL에 포함할 수 있습니다.
- 재정의를 사용하여 스키마 포함
- XML 스키마 스펙에서는 현재 XML 스키마 또는 WSDL의
다른 XML 스키마 단편에 포함된 정의를 재정의할 수 있습니다. 예를 들어,
XML 스키마 단편 myTypes.xsd는
PurchaseOrderType이라고 하는 복합 유형을 정의합니다. PurchaseOrder.xsd라고 하는
다른 XML 스키마는 redefine 요소를 사용하여
XML 스키마 단편 myTypes.xsd를 포함하고,
복합 유형인 PurchaseOrderType을 재정의합니다.
- <xsd:redefine schemaLocation="myTypes.xsd"/>와 같이 redefine 요소를
사용하여 다른 XML 스키마 단편을 기본 XML 스키마
또는 WSDL에 포함할 수 있습니다.
- 네임스페이스 가져오기
- <xs:import namespace="http://acme.com/ns/example
schemaLocation="mySchema.xsd" /> 와 같이 import 요소를 사용하여
현재 문서에 네임스페이스를 포함할 수 있습니다.
문서 추가 대화 상자를
사용하여 기본 XML 스키마 또는 WSDL을 프로젝트에
추가하거나 업로드하면, 다음 프로시저에 표시된 것처럼 포함된 XML 스키마를
프로젝트에 위치시키도록 요청하는 프롬프트가 표시됩니다. 기본 XML 스키마
또는 WSDL 문서를 프로젝트 탭에
표시하여 프로젝트에 사용하려면 먼저 포함된 모든 XML 스키마를
찾아야 합니다.
프로시저
- XML 스키마 또는 WSDL 문서를 현재 프로젝트에
업로드하십시오. XML 스키마 또는 WSDL 문서에 다른 XML 스키마가
포함되어 있으면 그림 1에
표시된 것처럼 포함된 모든 XML 스키마가 나열된
포함된 XML 스키마 업로드 대화 상자가
자동으로 표시됩니다.
그림 1. 포함된 XML 스키마 포함
포함된 XML 스키마를 자동으로
찾지 못하면 이전 그림의 commonTypes.xsd XML 스키마에 표시된 것처럼
포함된 XML 스키마 업로드 대화 상자에서
XML 스키마 옆에 체크 표시 아이콘(
)이 표시됩니다.
기본 XML 스키마 또는 WSDL이 로컬 파일 시스템에 있으면, Studio는 동일한 디렉토리에서
포함된 XML 스키마를 검색하여 자동으로 찾습니다.
예를 들어 C:\temp 디렉토리에서 mySchema.xsd를 업로드하고
mySchema.xsd에 XML 스키마 commonTypes.xsd가 포함되어 있으면,
Studio가 C:\temp 디렉토리에서
XML 스키마 commonTypes.xsd를 자동으로 찾습니다. 포함된 XML 스키마를 자동으로
찾지 못하면 그림 1에서 poTypes.xsd XML 스키마에 대해
표시된 것처럼 포함된 XML 스키마 업로드 대화 상자에서
XML 스키마 옆에 경고 아이콘(
)이 표시됩니다.
- 다음 단계를 반복하여 검색되지 않은 모든 XML 스키마를
찾으십시오.
- 포함된 XML 스키마 업로드 대화 상자에서
XML 스키마를 선택하십시오. 그림 2에 표시된 것처럼
표에서 XML 스키마가 강조표시됩니다.
그림 2. XML 스키마 업로드
- Locate를 클릭하십시오. 선택한 XML 스키마 찾기
대화 상자가 나타납니다.
- Location 필드에서,
외부 웹 위치 또는 파일 시스템의 포함된 XML 스키마의
위치를 지정하십시오.
- 확인을 클릭하십시오. XML 스키마가 검색되면
Uploading Included XML Schemas 대화 상자에서
XML 스키마 옆에 체크 표시 아이콘
이 표시됩니다.
- Store all the includes in the
same project node as the main document 선택란이 기본으로 선택됩니다.
이 선택란이 선택되어 있으면 포함된 XML 스키마 및 기본 XML 스키마
또는 WSDL이 단일 프로젝트 노드로 업로드됩니다. 이 선택란이
지워져 있으면 포함된 모든 XML 스키마 및 기본 XML 스키마 또는
WSDL이 Project 탭에 별도로 모두 표시됩니다. 포함된 모든 XML 스키마를 찾았음을 나타내는
체크 표시 아이콘이 나열된 모든 XML 스키마 옆에 표시됩니다.
- 확인을 클릭하십시오.
예
Store all the includes in the same project
node as the main document 선택란이 선택되어 있으면,
그림 3에 표시된 것처럼
기본 XML 스키마 또는 WSDL만
Project 탭에 표시됩니다.
그림 3. 예제
선택란이 선택되어 있으면 포함된 XML
스키마가 프로젝트에 업로드되지만 Project 탭에 표시되지
않기 때문에 포함된 XML 스키마 포함에 설명된 대로
프로젝트에서 이러한 XML 스키마를 개별적으로 업데이트할 수
없습니다.
Store
all the includes in the same project node as the main document 선택란이 지워져 있으면,
기본 XML 스키마 또는 WSDL이 표시되고 포함된
모든 XML 스키마가 프로젝트에 업로드되어
Project 탭에 표시됩니다(
그림 4 참조).
그림 4. 예제
선택란이 지워져 있으면,
포함된 XML 스키마 포함에 설명된 대로
포함된 모든 XML 스키마를 개별적으로 업데이트할 수 있습니다.
참고: 가능하면
항상 이 선택란을 선택한 상태에서 기본 XML 스키마 또는 WSDL을 단일 프로젝트
노드로 로드하여 XML 스키마 간에 발생할 수 있는
종속성 충돌을 줄이십시오. 예를 들어,
Store all the includes in the
same project node as the main document 선택란이
지워진 상태에서 기본
myTypes.xsd 파일을 프로젝트에 업로드하면
다음과 같은 XSD 파일도 업로드되어
Project 탭에 표시됩니다.
- commonTypes.xsd
- poTypes.xsd
commonTypes.xsd 파일에 정의된
유형을 포함하고 사용한 myTypesTwo.xsd라고 하는 세 번째 XSD 파일을 작성하여
업로드한 후, commonTypes.xsd 파일에 정의된
유형의 이름을 변경하여 Studio 외부에 있는 myTypes.xsd에 사용한 후 이 파일의
새 버전을 업로드하는 경우, 프로젝트에서 myTypesTwo.xsd 파일이
해당 유형의 원래 이름을 계속 참조하므로 올바르지 않습니다.