XML 구문 분석기 및 널(null) 값

이 토픽에서는 XML 구문 분석기가 명시적 널을 핸들링하는 방법을 설명합니다.

XML 도메인에는 메시지 비트스트림에 대한 널(null) 값 개념이 없습니다. 이는 XML 메시지에 XML 구문 분석기에 의해 메시지 트리에 명시적 널(null) 값이 작성되도록 하는 일련의 바이트가 없음을 의미합니다. 구문 분석기가 명시적 널(null) 값으로 메시지 트리 필드를 작성하지 않지만, 이 형식의 필드를 작성한 메시지 플로우 내에 ESQL을 코드화할 수 있습니다.

XML 구문 분석기가 메시지 트리로부터 새 메시지 비트스트림을 구성하는 경우, 명시적 널(null) 값을 발견할 수 있으며 이를 핸들링할 수 있어야 합니다. 이러한 상황에서 명시적 널(null) 값은 "기록할 문자가 없는 것"으로 간주되며, 필드가 빈 태그로 작성됩니다.

XML 도메인에는 출력 XML 메시지에 XML 빈 태그를 작성하도록 하는 여러 값이 있습니다.

XML 메시지에서 이러한 필드가 빈 태그로 작성되면, 이후에 XML 메시지가 구문 분석되면 이 세 가지 경우를 구분할 수 없습니다. XML에서 빈 태그가 구문 분석될 때, 값이 없는 XML 메시지 트리 필드가 작성됩니다. 이 필드는 명시적 널(null) 값을 포함하는 메시지 트리 필드와 다르며, 길이가 0인 문자열을 포함하는 메시지 트리 필드와도 다릅니다.

XML 구문 분석기가 서로 다른 세 메시지 트리 필드 값을 메시지 비트스트림의 같은 결과로 해석하지만, 다른 메시지 트리 조작이 이를 구분할 수 있습니다. XML 구문 분석기가 명시적 널(null) 및 길이가 0인 문자열을 포함하는 필드를 작성하지는 않지만, 메시지 플로우에서 이를 수행하는 조작을 수행할 수 있습니다.

따라서 메시지 플로우가 XML 도메인에서 메시지를 처리 중이면, ESQL또는 Java에서 명시적 널(null) 값, 길이가 0인 문자열 및 값이 없는 메시지 트리 필드를 구분해야 합니다. ESQL을 코드화하여 요소 값을 조회하는 경우 명시적 널(null) 값을 포함하는 필드도 널(null)로 간주되지 않습니다.

XML 기록 프로세스는 이러한 조건을 처리할 수 있지만, ESQL 내의 다른 조작은 이 조건을 널(null) 값으로 취급하지 않습니다. XML 도메인에는 널(null)에 대한 개념이 없으므로, 구분 분석기가 명시적 널(null) 값을 포함하는 필드를 작성하지 않습니다. XML 도메인은 문자 기반 도메인이므로, 필드 값을 조회할 때 결과를 문자 필드로 리턴합니다. 명시적 널(null) 값으로 XML 메시지 트리 필드를 작성하는 경우, 이 필드는 메시지 트리 필드의 값을 가져오는 ESQL에 대한 널(null) 값으로 간주되지 않습니다.

리턴되는 값은 필드 컨텐츠의 문자 표현이며, 이 경우에는 문자열 'NULL'입니다. 예를 들면, IS NULL과 이러한 비교를 수행하면, TRUE 값으로 평가되지 않습니다. 이 메시지 트리 필드를 다른 메시지 트리로 복사하면, 대상 메시지 트리 필드가 문자열 'NULL'로 채워집니다.

관련 개념
ESQL 개요
논리적 트리 구조
상관 이름
관련 태스크
메시지 플로우 설계
ESQL 개발
Java 개발
메시지 본문 컨텐츠 가공
XML 도메인에서 메시지 가공
관련 참조
내장 노드
XML 구조
주의사항 | 등록상표 | 다운로드 | 라이브러리 | 지원 | 피드백
Copyright IBM Corporation 1999, 2006 마지막 갱신 날짜: 2006/08/21
ac00605_