노드-계층 구조 수준 비교
BizTalk 맵 편집기를 사용하면 링크 속성을 구성하여 컴파일러가 소스 스키마와 대상 스키마 간에 노드 계층 구조를 비교하는 방법을 제어할 수 있습니다. 소스 스키마의 필드에서 대상 스키마의 필드로 연결되는 링크를 만들면 BizTalk 맵 편집기에서 자동으로 컴파일러 링크를 추가합니다. 이러한 컴파일러 링크는 선택한 비교 모드에 따라 달라집니다.
표시된 그리드 페이지에서 링크를 선택하면 Visual Studio 속성 창 표시되는 속성 중 하나가 대상 링크 속성입니다. 맵에서 각 링크에 대해 다음 값 중 하나를 선택할 수 있습니다.
링크 결합. 대상 스키마 노드의 부모 레코드에 모든 소스 계층 구조를 결합하려면 이 값을 사용합니다.
위에서 아래로 링크 비교. 스키마의 위에서 아래로 노드 수준을 비교하려면 이 값을 사용합니다.
아래에서 위로 링크 비교. 스키마의 아래에서 위로 노드 수준을 비교하려면 이 값을 사용합니다.
링크 결합
이 모드에서는 모든 소스 계층 구조가 대상 노드의 부모 레코드에 결합됩니다. 전자의 경우 소스 스키마가 대상 스키마보다 더 복잡하고, 후자의 경우는 대상 스키마가 더 복잡합니다.
링크 결합
링크 결합, 후자
위에서 아래로 링크 비교
이 모드는 위에서 아래로 수준별로 비교합니다. 전자의 경우 소스 스키마가 대상 스키마보다 더 복잡하고, 후자의 경우는 대상 스키마가 더 복잡합니다.
위에서 아래로 비교
위에서 아래로 비교, 후자
아래에서 위로 링크 비교
이 모드는 아래에서 위로 수준별로 비교합니다. 전자의 경우 소스 스키마가 대상 스키마보다 더 복잡하고, 후자의 경우는 대상 스키마가 더 복잡합니다.
아래에서 위로 비교
아래에서 위로 비교, 후자
BizTalk 맵 편집기의 링크 유형 처리 방법
대상 링크 속성을 서로 다른 링크의 다른 값으로 설정할 수 있으므로 BizTalk 매퍼는 충돌할 수 있는 경우 다른 설정을 resolve 방법이 필요합니다.
예를 들어 평면 컴파일러 지시문, 하향식 컴파일러 지시문 및 대상 스키마의 필드 노드에서 필드 노드로의 링크에 대해 상향식 컴파일러 지시문을 사용하고 이러한 노드가 동일한 부모 Record 노드를 공유하는 경우 BizTalk Mapper는 충돌하는 하향식 및 하향식 컴파일러 지시문을 무시하고 모든 링크를 평면 컴파일러 지시문으로 설정된 것처럼 처리합니다.
다음 표에서는 BizTalk Mapper가 동일한 Record 노드 내의 링크에 대한 대상 링크 속성 설정에 따라 대상 스키마의 동일한 Record 노드에 있는 필드 노드에 대한 링크를 처리하는 방법을 보여 줍니다.
평면화(flatten) | 하향식 | 상향식 | 결과 |
---|---|---|---|
0개 이상 | 1개 이상 | 1개 이상 | BizTalk 맵 편집기는 결합 컴파일러 지시문으로 설정된 것처럼 모든 링크를 처리합니다. |
1개 이상 | 1개 이상 | 0 | BizTalk 맵 편집기는 하향식 컴파일러 지시문으로 설정된 것처럼 모든 링크를 처리합니다. |
1개 이상 | 0 | 1개 이상 | BizTalk 맵 편집기는 상향식 컴파일러 지시문으로 설정된 것처럼 모든 링크를 처리합니다. |
하향식 및 상향식 컴파일러 지시문은 결합 컴파일러 지시문보다 우선적으로 적용되지만 둘 다 있는 경우 서로를 취소할 수 있습니다.