The Enterprise Services Repository differentiates between the following:
● Independent repository objects. These objects are visible in the navigation tree and are assigned to a namespace.
● Objects assigned beneath the independent repository objects, for example a connection in an integration scenario.
During the design process you must always reference repository objects that are already available. Note the following general restrictions:
● You can only reference independent repository objects (or parts of independent objects, for example, messages in an external definition).
● Whether you can reference or not depends on the software component that the referencing repository object is located in (see below)
You can set object references to objects of an underlying software component version (see: Underlying Software Component Versions).
● Whether referenced objects are copied when you copy an object depends on the type of object reference.
The reason behind these last two restrictions is that you must be able to ensure that all the repository objects of one product are delivered together.
You create each referencing object in the context of a software component version. It is identified by using the software component version, the namespace, and the technical name.
Operations of service interfaces reference (fault) message types, message types reference data types, and data types can in turn reference other data types. You can only reference interface objects in the same software component version or in a sub software component version. This ensures that objects for a service interface are always in one shipment unit.
Data types can reference other data types.