브로커 스키마는 내부에서 정의된 자원 이름의 고유성에 대한 범위를 정의하는 기호 공간입니다. 자원은 메시지 플로우, ESQL 파일 및 맵핑 파일입니다.
브로커 스키마는 프로젝트 소스 디렉토리부터 플로우 이름까지 상대 경로로 정의됩니다. 메시지 플로우 프로젝트를 처음 작성할 때, 프로젝트 내에 (디폴트)라는 디폴트 브로커 스키마가 작성됩니다.
새 브로커 스키마를 작성하여 같은 메시지 플로우 프로젝트 내에 다른 기호 공간을 제공할 수 있습니다. 브로커 스키마는 프로젝트 내에서 폴더 또는 서브디렉토리로 구현되고 프로젝트 내에서 조직을 제공합니다. 또한 프로젝트 참조를 사용하여 응용프로그램 suite와 연결된 모든 자원에 대한 유효 범위를 제공하는 기호 공간을 작성하기 위해 다중 프로젝트 사이에서 단위 브로커 스키마 유효 범위를 전개할 수 있습니다.
브로커 스키마 이름은 유니코드 문자 뒤에 0개 이상의 유니코드 문자나 숫자 및 밑줄로 시작되는 문자열이어야 합니다. Stock.Common과 같이 마침표를 사용하여 이름에 구조를 제공할 수 있습니다. 디렉토리는 프로젝트 디렉토리에 작성되어 스키마를 나타내며, 스키마가 마침표를 사용하여 구조화되는 경우, 추가 서브디렉토리가 정의됩니다. 예를 들면, 브로커 스키마 Stock.Common은 메시지 플로우 프로젝트 디렉토리 내의 Stock 디렉토리에 Common 디렉토리를 생성합니다.
프로젝트 내의 디폴트 브로커 스키마에 자원(예: 메시지 플로우)을 작성하면, 해당 자원과 연관된 파일이 프로젝트를 나타내는 디렉토리에 작성됩니다. 자원을 다른 브로커 스키마에 작성하면, 파일이 스키마 디렉토리에 작성됩니다.
예를 들면, 메시지 플로우 프로젝트 Project1에 Update 메시지 플로우를 작성하면, 연관된 파일이 Project1 디렉토리에 저장됩니다. 프로젝트 Project1 내의 Stock.Common 브로커 스키마에 다른 메시지 플로우를 작성하면, 연관된 파일이 Project1\Stock\Common 디렉토리에 작성됩니다.
각 브로커 스키마는 고유 이름 범위를 나타내므로, 두 개의 브로커 스키마에서 같은 이름을 공유하는 두 개의 메시지 플로우를 작성할 수 있습니다. 브로커 스키마는 이러한 두 개의 메시지 플로우가 별개의 자원으로 인식되도록 합니다. 두 메시지 플로우의 이름은 같지만 고유한 것으로 간주됩니다.
메시지 플로우를 한 프로젝트에서 다른 프로젝트로 이동하는 경우, 브로커 스키마를 보존하면 원래 프로젝트 내의 메시지 플로우를 계속 사용할 수 있습니다. 그럴 경우, 대상 프로젝트를 추가하여 원래 프로젝트의 종속 프로젝트 목록을 갱신해야 합니다. 그러나, 브로커 스키마를 보존하지 않으면, 플로우가 스키마 이름이 완전한 메시지 플로우 이름의 부분이 되므로, 플로우가 다른 플로우가 되어 다른 프로젝트가 인식하지 못합니다. 이 조치로 인해 링크가 중단되므로 수동으로 해결해야 합니다. 메시지 플로우 이동 후 오류 해결에 대한 추가 정보는 메시지 플로우 이동을 참조하십시오.
파일 시스템에서 연결된 파일을 이동시켜 자원을 이동하지 마십시오. 모든 참조가 새로운 조직을 올바르게 반영하도록 하려면 자원을 이동시킬 때 Workbench를 사용해야 합니다.
다음 유효 범위와 재사용 조건은 브로커 스키마에서 함수, 프로시저 및 상수를 작성할 때 적용됩니다.
프로시저는 매핑 파일에서는 사용할 수 없습니다.
함수 또는 프로시저를 전역으로 재사용하려면 다음을 수행하십시오.
경로를 정의하려면, 함수를 코딩한 것과 마찬가지로 동일한 ESQL 파일에 PATH문을 코딩하십시오. 그러나 MODULE 내에 코딩해서는 안 됩니다.