About this task
You can use any of the following types of resources in
a
message map:
These resources can be defined in the same project as
the map or in a different one. When a resource is defined in a
different project to the map, the project where the map is defined
must reference it.
XML schema
models and DFDL data models
When you
define your message model by using a global XML schema or a DFDL
model, consider the following rules:
- You can have the map and any schema definitions that are used
in the map in the same project. The project can be a static
library project, a shared library project, or an application
project.
- You can have any schema definition that is used in the map in
a static library project and the map in an application project.
- You can have any schema definition that is used in the map in
a shared library project and the map in a different shared library
project.
Note: The XML schema files that are defined in
the application project cannot access XML schema files that
are defined in a shared library.
- You can have any schema definition that is used in the map in
a shared library and the map in an application project.
- You can have any schema definition that is used in the map in
a static library project and the map in an integration project.
User-defined models
When
you use user-defined elements in your message model and you define
these elements by using a global XML schema, consider the following
rules:
- You can have the map and any schema definitions that are used
in the map in the same project. The project can be a static
library project, a shared library project, or an application
project.
- You can have any schema definition that is used in the map in
a static library project and the map in an application project.
- You can have any schema definition that is used in the map in
a shared library project and the map in a different shared library
project.
- You cannot have the schema definitions that are used in the map
in a shared library and the map in an application project. The Graphical
Data Mapping editor reports error CWMSL209E if
you break this rule.
- You can have any schema definition that is used in the map in
a static library project and the map in an integration project.
Submaps
When
you use
submaps in a
message map, consider the following
rules:
- You can have the map and submap in the same project. The project
can be a static library project, a shared library project, or
an application project.
- You can have a submap that is used in the map in a static library
project and the map in an application project.
- You cannot have a submap that is used in the map in a shared library
and the map in an application project. The Graphical
Data Mapping editor reports error CWMSL209E if
you break this rule.
- You can have a submap that is used in the map in a static library
project and the map in an integration project.
Java code
When
you define transformations in your map that use Java code, you
can define a map in a static library project, a shared library project,
an application project, or an integration project. You can define
the Java code in one or
more Java projects. Your map
project must reference these Java projects.
Note: When
the map uses Java code available
in a shared library, you must create the map in the shared library
project where the Java code
is available.
ESQL
routines
When you define transformations
in your map that use ESQL code, consider the following rules:
- You can have the map and the ESQL code that is used in the map
in the same project. The project can be a static library project,
a shared library project, an application project, or an integration
project.
- You can have the ESQL code in a static library project and the
map in an application project, that references this static library.
- You can have the ESQL code in a shared library project and the
map in a different shared library project that has a reference
to it.
Note: - When you store ESQL files in a shared library, you must place
the ESQL files inside a schema that is not the default empty
schema.
- Each shared library can have one or more ESQL files in one or
more ESQL schemas.
- The schema in a shared library must be unique:
- An application or a shared library cannot reference two
shared libraries that have ESQL in the same schema.
- An application with ESQL in schema A cannot reference
a shared library with any ESQL in schema A.
- You can have the ESQL code in a static library project and the
map in an integration project.
Choose one of the following project structures based
on the resources that are used in the map if you want to update
a map without redeploying your application: