Un esquema del intermediario es un espacio de símbolos que define el ámbito de exclusividad de los nombres de recursos definidos en el mismo. Los recursos son flujos de mensajes, archivos ESQL y archivos de correlación.
El esquema del intermediario se define como la vía de acceso relativa del directorio origen del proyecto al nombre de flujo. Cuando crea en primer lugar un proyecto de flujo de mensajes, se crea un esquema de intermediario por omisión denominado (default) en el proyecto.
Puede crear nuevos esquemas de intermediario para proporcionar espacios de símbolos diferentes en el mismo proyecto de flujo de mensajes. Un esquema de intermediario se implementa como una carpeta, o subdirectorio, dentro del proyecto y permite organizar el proyecto. También puede utilizar las preferencias de proyecto para distribuir el ámbito de un esquema de intermediario individual entre varios proyectos y así crear un espacio de símbolos de aplicaciones que proporcione un ámbito para todos los recursos asociados a una suite de aplicaciones.
Un nombre de esquema de intermediario debe ser una serie de caracteres que comience por un carácter Unicode seguido de uno o más caracteres Unicode o dígitos y el signo de subrayado. Puede utilizar el punto para proporcionar una estructura al nombre, por ejemplo, Stock.Common. Se crea un directorio en el directorio del proyecto para representar el esquema y si el esquema se estructura con puntos se definen más subdirectorios. Por ejemplo, el esquema de intermediario Stock.Common genera un directorio Common en un directorio Stock contenido en el directorio del proyecto del flujo de mensajes.
Si crea un recurso (por ejemplo, un flujo de mensajes) en el esquema de intermediario por omisión contenido en un proyecto, se crearán el o los archivos asociados a dicho recursos en el directorio que representa el proyecto. Si crea un recurso en otro esquema de intermediario, se crearán los archivos en el directorio del esquema.
Por ejemplo, si crea un flujo de mensajes Update en el esquema por omisión del proyecto de flujo de mensajes Project1, sus archivos asociados se almacenan en el directorio Project1. Si crea otro flujo de mensajes en el esquema de intermediario Stock.Common contenido en el proyecto Project1, se crean sus archivos asociados en el directorio Project1\Stock\Common.
Debido a que cada esquema de intermediario representa un ámbito de nombres exclusivo, puede crear dos flujos de mensajes que compartan el mismo nombre en dos esquemas de intermediario. Los esquemas de intermediario garantizan que estos dos flujos de mensajes se reconozcan como recursos diferentes. A pesar de que tengan los mismos nombres, se considera que los dos flujos de mensajes son exclusivos.
Si traslada un flujo de mensajes de un proyecto a otro, puede continuar utilizando el flujo de mensajes del proyecto original si conserva el esquema de intermediario. Si lo hace, debe actualizar la lista de proyectos que dependen del proyecto original añadiendo el proyecto de destino. No obstante, si no conserva el esquema de intermediario, el flujo pasa a ser un flujo diferente porque el nombre del esquema forma parte del nombre del flujo de mensajes totalmente calificado y ya no lo reconocen otros proyectos. Esta acción da como resultado que haya enlaces rotos que deberá corregir manualmente. Si desea obtener más información acerca de cómo corregir los errores después de mover un flujo de mensajes, consulte Mover un flujo de mensajes.
No mueva los recursos trasladando sus archivos asociados del sistema de archivos. Para mover los recursos debe utilizar el entorno de trabajo y así se asegurará de que se hayan corregido todas las referencias de modo que reflejen la nueva organización.
Se aplican las condiciones siguientes de ámbito y reutilización cuando crea funciones, procedimientos y constantes en un esquema de intermediario:
Los procedimientos no se pueden utilizar en archivos de correlación.
Si desea reutilizar funciones o procedimientos globalmente:
Si opta por definir la vía de acceso, codifique la sentencia PATH en el mismo archivo ESQL en que se ha codificado la función pero no lo incluya en ningún MODULE.