다음을 통해 공유


다른 스키마를 사용하는 스키마

개요

스키마가 커지고 복잡해지거나 다른 유형의 인스턴스 메시지를 나타내는 스키마들이 공통된 부분을 갖게 되면 더 작은 스키마들을 거래 업체와 교환하려는 인스턴스 메시지의 구조를 정의하는 스키마로 결합하는 것이 유용할 수 있습니다. 예를 들어 선적 주소를 표시해야 하는 여러 메시지 유형이 있을 수 있습니다. 선적 주소의 구조를 단일 스키마에 정의한 후 Order, Invoice 및 Shipping Notice 메시지 스키마 등을 정의하는 다른 스키마 내에 해당 스키마를 사용할 수 있습니다.

가져오기, 포함 및 재정의

XSD(XML 스키마 정의) 언어는 BizTalk 편집기가 지원하는 여러 스키마를 함께 사용할 수 있도록 연관된 세 가지 메커니즘을 제공합니다. 다음 표는 XSD로 정의된 이러한 메커니즘의 특징을 요약하여 보여 줍니다.

다중 스키마 메커니즘 사용 시나리오
가져오기 - 가져온 스키마에 정의된 형식에 액세스하고 사용합니다.
- 가져온 스키마의 형식을 있는 그대로 사용하거나 새 형식을 파생해야 합니다. 형식 수정이 허용되지 않습니다.
- 다른 네임스페이스에 정의된 형식을 사용하기 위한 메커니즘을 제공합니다. 실제로 가져온 스키마의 대상 네임스페이스는 가져오는 스키마의 대상 네임스페이스와 달라야 합니다.
- import 요소와 해당 네임스페이스schemaLocation 특성을 사용하여 다른 스키마를 참조합니다.
포함 - 포함된 스키마에 정의된 형식에 액세스하고 사용합니다.
- 포함된 스키마의 형식을 있는 그대로 사용하거나 해당 스키마에서 새 형식을 파생해야 합니다. 형식 수정이 허용되지 않습니다.
- 포함된 스키마는 포함 스키마와 동일한 대상 네임스페이스에 있어야 합니다. 또는 포함된 스키마의 대상 네임스페이스는 비어 있어야 합니다.
- include 요소와 해당 schemaLocation 특성을 사용하여 다른 스키마를 참조합니다.
재정의 - 다시 정의된 스키마에 정의된 형식에 액세스하고 사용합니다.
- 다시 정의된 스키마의 형식을 있는 그대로 사용하거나, 새 형식을 파생하거나, 수정을 지정할 수 있습니다.
- 다시 정의된 스키마는 재정의 스키마와 동일한 대상 네임스페이스에 있어야 합니다. 그렇지 않으면 다시 정의된 스키마의 대상 네임스페이스가 비어 있어야 합니다.
- 재정 의 요소와 해당 schemaLocation 특성을 사용하여 다른 스키마를 참조합니다. 모든 형식 재정의는 재정 의 요소로 지정됩니다. 참고: 재정의 메커니즘을 사용하는 것은 고급 XSD 개념이며 사용해야 하는 방법과 시기를 충분히 이해한 후에만 사용해야 합니다.

참고

가져오기, 포함 및 재정의 메커니즘 간의 차이점과 유사성에 대한 자세한 내용은 웹의 XSD 리소스에 나열된 참조를 참조하세요.

중요 세부 정보

한 스키마(Schema1)에 정의된 유형을 다른 스키마(Schema2)에서 사용하려면 Schema2에서 Schema1을 참조해야 합니다. 이렇게 하려면 Schema2에서 스키마 노드의 Imports 속성을 사용합니다. 가져오기 속성 필드에서 줄임표(...) 단추를 클릭하면 가져오기 대화 상자가 열립니다. 새 스키마 가져오기 드롭다운 목록에서 XSD 가져오기, XSD 포함 또는 XSD 재정의를 선택합니다. 그런 다음 추가 를 클릭하여 BizTalk 형식 선택 대화 상자를 열고 BizTalk 프로젝트 내에서 스키 마1을 찾습니다.

이러한 단계에 대한 자세한 지침은 다른 스키마를 사용하는 스키마 만들기를 참조하세요.

가져오기 대화 상자를 사용하여 다른 스키마를 가져오거나 포함하거나 다시 정의하면 적절한 특성 및 특성 값을 포함하여 하나 이상의 XSD 요소 가져오기, 포함재정의가 스키마의 XSD 표현에 추가됩니다. 또한 import 요소의 경우 다른 스키마의 네임스페이스에 대한 접두사 선언이 스키마 요소에 추가됩니다.

가져온/포함/다시 정의된 스키마의 모든 전역 형식(예: ComplexTypes, SimpleTypes, 요소 그룹, 특성 그룹)은 이전 스키마를 가져오거나 포함하거나 다시 정의한 스키마 내에서 자동으로 사용할 수 있습니다. 예를 들어 가져온/포함/다시 정의된 스키마에 정의된 전역 ComplexType은 스키마를 포함하거나 다시 정의하여 가져오는 모든 Record 노드에 대한 데이터 구조 형식 속성의 드롭다운 목록에 추가됩니다. 이 속성에 대한 자세한 내용은 UI 지침 및 개발자 API 네임스페이스 참조를 참조하세요.

참고 항목

스키마 정보
다른 스키마를 사용하는 스키마 만들기
다른 노드 또는 형식에 대한 참조 만들기