다음을 통해 공유


XSD 기반 PIP 가져오기

RosettaNet.org에서 제공되는 대부분의 PIP는 DTD 기반이지만 최신 PIP는 XSD 기반입니다. 다음 절차에서는 XSD 기반 PIP를 가져오는 방법에 대해 설명합니다.

XSD 기반 PIP를 가져오려면

  1. GS1 RosettaNet 웹 사이트 또는 CIDX 웹 사이트에서 XSD 기반 PIP .zip 파일을 다운로드합니다.

  2. .zip 파일에서 파일을 추출합니다. 필요한 파일은 XML 폴더의 하위 폴더에 있습니다.

  3. Visual Studio를 엽니다. 새 BizTalk 프로젝트를 만듭니다.

  4. Windows 탐색기를 열고 1단계에서 추출된 XML 폴더로 이동합니다. XML 폴더 아래에 있는 첫 번째 폴더를 선택하고 Visual Studio의 솔루션 탐색기로 끌어서 프로젝트에 넣습니다. 프로젝트에 동일한 폴더 구조를 만들어서 XML 폴더의 각 하위 폴더에 대해 반복합니다.

    참고

    PIP7c7 PIP의 경우 이러한 폴더는 Domain, Interchange, System, Universal 폴더를 포함합니다. 이 PIP의 경우 프로젝트는 Domain, Interchange, System, Universal 폴더와 해당 콘텐츠를 포함해야 합니다.

  5. System 폴더에 .xsd 파일이 있는 경우 솔루션 탐색기에서 선택하고 “.System” 문자열을 포함하지 않도록 속성 페이지에 나열된 네임스페이스를 변경합니다. 예를 들어 PIP7c7 PIP의 경우 "PIP7c7._System"으로 네임스페이스를 변경할 수 있습니다. System 폴더의 각.xsd 파일 대해 반복합니다. 네임스페이스를 변경하지 않으면 다음 오류 또는 유사한 오류가 발생하게 됩니다.

    The type or namespace name 'SerializableAttribute' does not exist in the class or namespace 'PIP7C7.System'.
    
  6. 모든 .xsd 파일을 검토하여 스키마> TypeName 및 루트 노드 TypeName이 동일하지 않은지 확인<합니다. 예를 들어 PIP7C7 PIP의 경우 유니버설 폴더의 PartnerIdentification.xsd에는 스키마>(솔루션 탐색기 PartnerIdentification.xsd가 선택된 경우) 및 PartnerIdentification 루트 노드 모두<에 대한 TypeName 'PartnerIdentification'이 있습니다. 이 문제를 해결하려면 솔루션 탐색기에서 PartnerIdentification.xsd를 선택한 다음 속성 페이지에서 TypeName 속성을 변경하여 PartnerIdentification 루트 노드와 동일한 TypeName을 포함하지 않도록 합니다. 예를 들어 "_PartnerIdentification"으로 TypeName을 변경합니다. 이 단계를 수행하지 않으면 프로젝트를 빌드하려고 할 때 다음 오류가 발생합니다.

    Node "<Schema>" - This schema file has a TypeName that collides with the RootNode TypeName of one of its root Nodes. Make sure that they are different.
    

    참고

    오류 목록의 파일 열에 이 문제가 있는 파일이 표시됩니다.

  7. 프로젝트를 빌드한 후 배포합니다.