버전 2.1에서 메시지 세트 이주

버전 2.1에서 버전 6.0으로 메시지 세트를 이주하려면 mqsimigratemsgsets 명령을 사용하십시오. 버전 5.0에서 버전 6.0으로 이주할 때는 이 명령을 사용할 필요가 없습니다.

mqsimigratemsgsets 명령의 조건

버전 2.1에서 메시지 세트 파일을 내보내고 WebSphere Message Broker 버전 6.0으로 들여오는 사이에 수동으로 메시지 세트 파일을 수정하면 오류(보고서에서 경고 및 오류 메시지 BIP0141, BIP0142BIP0157BIP0163으로 표시)가 발생하므로 수동으로 수정하지 마십시오.

각 새 메시지 정의 파일 .mxsd는 주석이 있는 XML 스키마 모델이며, 메시지 세트의 각 아티팩트(artifact)는 다시 작성되고 이 새 모델에 기존 등록 정보를 보유합니다. 이 때 다음과 같은 경우는 제외됩니다.
  • WebSphere Message Broker 버전 6.0 모델의 이름버전 2.1 모델의 ID입니다. 버전 2.1의 접두부가 이 요소가 실제로 로컬임을 표시하는 방법인 것 처럼, 오브젝트가 접두부가 있는 ID를 갖는 요소이면 접두부가 제거됩니다.
  • 레이블, 간단한 설명자세한 설명실행 기록WebSphere Message Broker 버전 6.0의 단일 문서 등록 정보로 병합됩니다.
  • 각 복합 유형은 WebSphere Message Broker 버전 6.0에서 xsd:complexType 및 연관된 xsd:group이 됩니다.
    이 방법으로 작성된 xsd:complexType은 로컬 또는 전역일 수 있습니다. 디폴트는 로컬이지만 다음 조건 중 하나가 해당되는 경우 전역이 됩니다.
    • 복합 유형이 참조되지 않습니다.
    • 복합 유형에 버전 2.1 MRM 기본 유형이 있습니다.
    • 복합 유형이 둘 이상의 요소에서 참조됩니다.
    • 메시지는 복합 유형에 근거합니다.
    • -g 매개변수가 지정되었습니다.
    이 방법으로 작성된 xsd:group은 로컬 또는 전역일 수 있습니다. 디폴트는 로컬이지만 다음 조건이 해당되는 경우 전역이 됩니다.
    • 복합 유형이 다른 복합 유형에 직접 임베드됩니다.
    • 복합 유형에 버전 2.1 MRM 기본 유형이 있습니다.
    • 복합 유형에는 버전 2.1 유형 작성 단순 비정렬 세트버전 2.1 유형 컨텐츠 닫기가 있습니다.
    단순 비정렬 세트의 유형 작성은 WebSphere Message Broker 버전 6.0의 모델에서 삭제됩니다.
    • 유형 컨텐츠 닫기이면 작성이 모두로 바뀌고 BIP0191 경고 메시지를 발행합니다.
    • 그렇지 않으면, 작성이 비정렬 세트로 바뀌고 BIP0192 경고 메시지를 발행합니다.
    • 공백의 유형 작성은 비어 있는 순서로 바뀌며 BIP0193 경고 메시지를 발행합니다.

  • 최소 발생 또는 최대 발생이 1이 아닌 임베드된 메시지는 발생이 1로 정정되며 BIP0162 경고 메시지를 발행합니다.
  • 각 요소는 xsd:element가 됩니다. 이 방법으로 작성된 xsd:element는 지정된 순서로 적용된 다음 기준에 따라 로컬 또는 전역일 수 있습니다.
    1. 요소를 참조하지 않는 경우 전역입니다.
    2. 요소가 접두부가 있는 ID이며 정확히 하나인 복합 유형의 구성원인 경우 로컬입니다.
    3. 요소가 접두부가 있는 ID이며 -pl 매개변수가 지정된 경우 로컬입니다.
    4. 요소가 버전 2.1 MRM 기본 유형을 가진 복합 유형인 경우 로컬입니다.
    5. 요소가 둘 이상의 복합 유형 구성원인 경우 전역입니다.
    6. -g 매개변수가 지정된 경우 전역입니다.
    7. 그렇지 않으면, 요소는 로컬입니다.
    이 방법으로 작성된 xsd:element 유형은 다음 중 하나입니다.
  • 요소에 속하는 값 제한조건은 다음과 같이 처리됩니다.
    • 디폴트 제한조건은 xsd:element의 디폴트 속성을 설정합니다.
    • 널(null) 허용 제한조건은 xsd:element의 널값 허용 속성을 설정합니다.
    • 날짜 템플리트 제한조건은 xsd:elementxsd:simpleType을 변경합니다. (RM 단순 유형을 스키마 단순 유형으로 맵핑 참조)
    • 다른 모든 것은 xsd:facets의 응용프로그램으로 xsd:elementxsd:simpleType을 제한합니다.

    참조되지 않은 값 제한조건은 제거되며 BIP0158, BIP0159 또는 BIP0160 경고 메시지를 발행합니다.

    잘못된 xsd:facet을 작성하도록 하는 값 제한조건은 이주되지 않으며 BIP0165 경고 메시지를 제공합니다.
    주: 상응하는 xsd:facet이 없기 때문에 유형 STRING의 요소에서만 값 제한조건 MinInclusiveMaxInclusive를 문서의 목적으로 숨겨진 주석으로 대신 들여옵니다.
  • 요소 규정자는 제거되며 한 번만 BIP0167 경고 메시지를 발행합니다.
  • 각 메시지는 메시지 연관된 전역 xsd:element가 됩니다.
  • 요소 규정자를 사용한 메시지는 규정을 제거하며 BIP0166 경고 메시지를 발행합니다.
  • 버전 2.1에서 중복되는 몇몇 물리적 형식 등록 정보는 새 모델에서 제거됩니다. 이 등록 정보 중 하나가 디폴트가 아닌 값으로 발견되는 경우, BIP0164(또는 기타 더 특정한) 경고 메시지가 발행됩니다.
  • TDS 메시지 세트 등록 정보 세기 창 디폴트 값은 버전 2.1에서 항상 53으로 설정되었습니다. 메시징 표준 SWIFT의 경우, 이 설정이 올바르지 않으므로 SWIFT의 디폴트만 80으로 변경됩니다. 이것은 들여온 모델에서 반영됩니다.

mqsimigratemsgsets 명령으로 작성되는 사항

발견된 각 .mrp 파일의 경우, 새 메시지 세트 프로젝트는 버전 2.1의 메시지 세트 이름과 레벨에서 도출된 이름으로 작성됩니다. 유틸리티는 1 이외의 모든 레벨 값의 메시지 세트 이름에 접미부를 추가하여 이를 수행합니다. 이 프로세스는 일대일 맵핑을 복원하며 이름이 부여된 하나의 메시지 세트만을 브로커가 찾을 수 있게 합니다.

예를 들면, 이름이 SWIFT이며 레벨이 1인 버전 2.1 메시지 세트는 버전 6.0에서 메시지 세트 이름이 SWIFT로 이주하는 반면, 이름이 SWIFT이며 레벨이 2인 버전 2.1 메시지 세트는 버전 6.0에서 SWIFT_2로 이주합니다.

메시지 세트 폴더 및 연관된 messageSet.mset 파일은 새 프로젝트에서 작성됩니다. 다음은 메시지 세트 컨텐츠에 적용됩니다.
  • 메시지 세트 폴더 이름은 새 프로젝트와 동일합니다.
  • 메시지 세트 ID는 원래 버전 2.1 메시지 세트의 ID입니다.
  • 네임스페이스가 지원되지 않도록 지정하는 메시지 세트가 작성됩니다.
  • 새 메시지 세트에서 모든 물리적 형식 계층이 다시 작성됩니다.
  • COBOL 언어 바인딩 계층이 제거되며 BIP0174 경고 메시지를 발행합니다.
  • C 언어 바인딩 계층이 제거되며 BIP0173 경고 메시지를 발행합니다.
  • 완료 상태는 BIP0170 경고 메시지를 제공하며 제거됩니다.
  • 모든 기본 정보는 BIP0172 경고 메시지를 제공하며 제거됩니다.
  • 모든 보류 시간 소인은 BIP0169 경고 메시지를 제공하며 제거됩니다. 버전 2.1 내보내기 조작이 메시지 세트를 보류하므로 항상 이 메시지를 수신함에 유의하십시오.
.mrp 파일에서 발생한 각 메시지 범주는 새 .category 파일을 작성하는 결과를 가져옵니다. 참고:
  • 각 트랜잭션은 동일한 메시지 범주로 바뀌며, 트랜잭션의 모든 메시지를 포함합니다.
  • 각 트랜잭션 범주는 동일한 메시지 범주로 바뀌며, 트랜잭션 범주가 참조하는 모든 트랜잭션의 모든 메시지를 포함합니다.

단일 메시지 정의 .mxsd 파일이 메시지 세트와 동일한 이름을 가진 메시지 세트에서 작성되며 -part 매개변수가 있는 경우를 제외하고 디폴트(notarget) 네임스페이스에서 작성됩니다.

-part가 지정되는 경우, 다중 .mxsd 파일이 작성될 수 있습니다.
  • 파일에서 메시지, 요소 및 복합 유형의 수는 1000을 초과하며,
  • .mrp 파일은 완전 해제 서브세트로 파티션될 수 있습니다.

버전 2.1에서 모든 요소 및 복합 유형은 전역입니다. 버전 6.0에서 xsd:elementsxsd:complex types는 전역 또는 로컬일 수 있습니다. 버전 2.1 메시지 세트를 이주할 때, 버전 2.1에서 전역이었던 많은 요소 및 복합 유형이 위에 명시된 규칙에 따라 버전 6.0의 로컬 xsd:elementsxsd:complex types로 변환되었음을 알 수 있습니다.

다음 두 가지 이유로 인해 이러한 작동을 대체하려고 할 수 있습니다.
  • 모든 오브젝트가 전역으로 사용되는 메시지 세트의 버전 2.1 조직을 선호합니다. -g 매개변수를 지정하면 실질적으로 사용할 수 있는 한 이 구성이 보유됩니다.
  • 정의 열기 값과 함께 복합 유형 유형 컨텐츠를 사용합니다.

이는 복합 유형의 올바른 컨텐츠가 유형 작성 등록 정보 규칙에 따라 메시지 세트의 오브젝트가 될 수 있음을 의미합니다. 이 경우, 대개 복합 유형은 명확한 컨텐츠로 모델화되지 않았습니다.

이로 인해 mqsimigratemsgsets 명령이 특정 요소를 전역이 아닌 로컬 요소로 올바르지 않게 설정합니다. 정의 열기를 사용하고 이주 후 이전에 발생하지 않았던 런타임 유효성 검증 오류 BIP5372E가 발생하는 경우, mqsimigratemsgsets 명령을 -g 매개변수와 함께 재실행하십시오.

접두부 ID

버전 2.1에서 접두부가 있는 ID는 요소가 로컬임을 표시하기 위한 것입니다. 그러나 접두부가 있는 ID를 갖는 요소가 실제로 둘 이상의 복합 유형에 사용되어 전역이 되는 것이 가능합니다. 그런 경우, 전역 xsd:element는 선행 규칙에 따라 작성됩니다. 이 경우 접두부 ID를 잘못 사용하는 것이므로 BIP0195 경고 메시지도 발행되며, 중복된 전역 xsd:elements가 작성될 수 있습니다. 예를 들면, A^X 및 B^X 둘다 두 번 이상 사용되어, 이름이 X인 두 개의 전역 xsd:elements가 됩니다.

중복 작성될 경우, -pl 매개변수를 지정하여 mqsimigratemsgsets 명령을 다시 실행하십시오. 이에 따라 접두부 ID가 있는 모든 참조 요소가 로컬 xsd:elements로 작성됩니다.

임베드된 단순 유형

스키마 모델은 이 구성으로 대처할 수 없으므로, 복합 유형에서 임베드된 단순 유형은 특수한 처리를 필요로 합니다. 임베드된 단순 유형이 무시되면, 포함되어 있는 xsd:complex 유형의 mixed 속성을 이용하여 이를 바꾸십시오.

임베드된 단순 유형은 하위 요소 간에 산재된 데이터 값을 포함한 복합 유형 요소를 모델화하기 위해 기본적으로 도입되었습니다. 이러한 각 데이터 값은 값의 위치 표시기로 역할하고 단순 유형을 제공한 임베드된 단순 유형으로 명시적으로 모델화되었습니다.

XML 스키마에서, 똑같은 것은 없습니다. 가장 근접한 것은 xsd:complexType의 혼합 속성입니다. 그러나 이것은 하위 요소 사이나 앞에 텍스트를 표시할 수 있다는 것만 나타냅니다. 텍스트의 위치나 데이터 유형에 대해서는 아무 것도 암시하지 않습니다.

이 의미를 보유하기 위해, 임베드된 단순 유형이라는 스키마 확장이 소개됩니다. 이것은 적절한 단순 유형으로 이름이 지정되지 않은 로컬 xsd:element입니다. 유형 자체는 실제 근본적인 xsd:simple 유형의 제한이며, 특수한 이름(commencing ComIbmMrm_Anon)을 갖습니다.

MRM 기본 유형이 있는 복합 유형

이 상황은 BIP0161 경고 메시지를 생성하며 스키마 모델이 이 복합 구성으로 대처할 수 없으므로 특별한 조치가 필요합니다. 복합 요소가 무시되므로 아래 1에 설명된 대로 전역 xsd:complexType을 참조하는 정상 요소의 사용으로 복합 요소의 사용을 바꾸고 혼합 속성을 이용하십시오.

그러한 복합 유형은 하위 요소는 물론 데이터 값을 포함하는 복합 XML 요소를 모델화하기 위해 기본적으로 소개되었습니다. 그러므로 그러한 복합 유형의 요소는 모두 정상 복합 요소와 같이 복합 컨텐츠를 갖지만, 기본 요소(MRM 기본 유형 정보)와 같은 값을 갖기도 합니다.

XML 스키마에서, 똑같은 것은 없습니다. 가장 근접한 것은 혼합 속성 xsd:complexType의 사용입니다. 그러나 이것은 하위 요소 사이(또는 바로 앞)에 텍스트를 표시할 수 있음을 알려줄 뿐입니다. 텍스트의 위치나 데이터 유형에 대해서는 아무 것도 암시하지 않습니다.

XML 스키마에 똑같은 것이 없으므로 다음 단계가 수행되었습니다.
  1. 전역 xsd:complexType 및 전역 xsd:group이 보통 방식으로 작성되었습니다. xsd:complexType은 추가적으로 혼합 속성 세트를 가지며 해당 컨텐츠는 단지 전역 xsd:group에 대한 참조입니다. 이것은 복합 컨텐츠를 모델화하지만, MRM 기본 유형 정보를 잃습니다.
  2. 특정 스키마 확장인 복합 요소가 소개됩니다. 이것은 복합 요소 및 기본 요소를 합한 것입니다. 스키마 규정으로 익명의 복합 유형과 다음과 같은 해당 유형의 컨텐츠를 가진 요소로 구현됩니다.
    • 적절한 단순 유형의 로컬 xsd:element(MRM 기본 유형 정보를 모델화하기 위해). 단순 유형은 실제 근본적인 xsd:simple 유형의 제한이며, 특수한 이름(commencing ComIbmMrm_BaseValue)을 갖습니다.
    • 위의 1에서 작성된 전역 xsd:group에 대한 그룹 참조.

복합 유형을 참조한 각 요소의 복합 요소가 작성됩니다. 이것은 요소 자체가 다른 복합 유형의 구성원인 경우에만 수행됨을 참고하십시오.

MRM 기본 유형 정보는 메시지에서 활동적으로 사용되지 않을 때에만 잃게 되기 때문에 이 두 가지를 결합하면 메시지에서 그러한 복합 유형의 의미있는 사용이 보존됨을 의미합니다.

선행 절에서 설명된 상황으로 작성된 특정 데이터 유형, ComIbmMrmmqsimigratemsgsets 명령으로 작성된 각 메시지 정의 파일에 포함된 .wmq21.mxsd라는 XML 스키마에 정의됩니다.

RM 단순 유형을 스키마 단순 유형으로 맵핑

단순 유형 맵핑은 다음과 같습니다.
MRM 유형 스키마 유형
BINARY xsd:hexBinary
BOOLEAN xsd:boolean
DECIMAL xsd:decimal
DATETIME xsd:dateTime(다음 표 참조)
FLOAT xsd:float
INTEGER xsd:int
STRING xsd:string
DATETIME 유형의 경우, 다음과 같이 단순 유형 맵핑은 잠재적으로 날짜 템플리트 값 제한조건으로 변경됩니다.
MRM DATETIME 날짜 템플리트 스키마 유형
CCYY-MM-DDThh:mm:ss.s xsd:DateTime
CCYY-MM-DD xsd:date
CCYY-MM xsd:gYearMonth
CCYY xsd:gYear
--MM-DD xsd:gMonthDay
--MM xsd:gMonth
---DD xsd:gDay
Thh:mm:ss.s xsd:time

날짜 템플리트가 선행 목록에 없는 경우, 날짜 템플리트가 시간 구성요소를 갖는지 여부에 따라 DATETIME은 xsd:time 또는 xsd:dateTime 중 하나로 맵핑되며 BIP0175 경고 메시지를 발행합니다. 그러나 이 맵핑은 들여오기(import) 이후에 작업 목록에 오류를 표시할 수 있습니다.

관련된 요소에 버전 2.1 디폴트 값, 최소값 포함, 최대값 포함 또는 나열 값 제한조건이 있는 경우, 이에 대한 값은 xsd:time이나 xsd:dateTime의 사전적 공백과 일치하지 않으므로 유효성 검증에 실패합니다. 이것은 편집기를 사용하여 수동으로 수정해야 합니다.

값이 완전히 지정되지 않은 디폴트 값, 최소값 포함, 최대값 포함 또는 나열 제한조건을 제공하는 모든 버전 2.1 DATETIME 유형에도 동일한 작업 목록 오류가 표시됩니다. 예를 들면, 날짜 템플리트 CCYY-MM, 나열 2003은 런타임에 2003-01로 해석되도록 버전 2.1에서 허용되었습니다. 그러나 새 모델에서 값은 단순 유형의 어휘 공백과 일치해야 하므로 -01을 포함해야 합니다.

관련 태스크
메시지 세트 이주
주의사항 | 등록상표 | 다운로드 | 라이브러리 | 지원 | 피드백
Copyright IBM Corporation 1999, 2006 마지막 갱신 날짜: 2006/08/21
ad15750_