Data Types in the Enterprise Services Repository

Use

In ES Repository, Data Type is an object, containing the structure of data that defines the message. You use these messages when there is an exchange of data during web service communication (point-to-point) or in Integration Server communication. You define a data type using XML Schema Definition Language (XSDL).

In ES Repository, you can create freestyle, core, and aggregated data types.

Core and Aggregated Data Types

Core and aggregated data types are based on Core Components Technical Specification (CCTS) specification and are the basis for application-specific data types accepted across the businesses.

Free-style Data Types

Free-style data types are based on the primitive data types and they do not need any further parameters to define themselves.

Data Type Categories

XML schema has the following data type categories:

Category

Meaning

Examples

Built-In Type

Built-in data types are part of the XML schema language and have the prefix xsd . (They can also be subdivided into primitive and derived data types, but this is not important in the definition of data types). XML schema defines a value range for each built-in data type.

xsd:string

xsd:decimal

xsd:integer

Simple Type

Simple data types refine built-in data types, for example, by limiting the length of a string or by specifying a specific value range. Like built-in data types, they do not contain any further elements.

<simpleType    name=germanPhoneNumber    base=string>  <pattern value=?\d{4}?/?\d{6} /> </simpleType>

Complex Type

Data types that can contain further elements and attributes. Elements and attributes can in turn reference built-in, simple, complex, or global data types. This enables large complex data types to be structured using smaller complex data types.

<complexType name=person>  <element      name=firstname type=string />  <element      name=lastname      type=string /> </complexType>

Complex Type with SimpleContent

Complex types with simpleContent are data types with a root element that has a textual XSD type (for example, xsd:string), but that otherwise only have attributes and subelements.

 

Elements and Attributes

To describe data types in XML schema, you use elements and attributes:

Node Type

Use

Example Instance

Element

Create structured data types. Elements that have a type cannot contain subelements.

<myElem>   <f1> Value of f1 </f1>  <f2> Value of f2 </f2> </myElem>

Attribute

Add attributes to elements. Attributes cannot usually have subnodes.

<myElem myAttr =" AttributeValue ">#   Element Value #</myElem>

Facets

Facets enable you to restrict the value range of a data type in XML schema to a particular subset. This enables you to determine exactly which value is expected in a special case for a simple data type, an element, or an attribute.

Referencing of Data Types

You can structure data types in a nested way by referencing data types from a complex data type. However, you must ensure that the referencing and the referenced data type are shipped together, otherwise the data type definition is not complete.

Category

Can Be Referenced In

Built-In Type

All software component versions

Simple Type

The same software component version or a sub-software component version of the referencing freestyle data type.

Complex Type

The same software component version or a sub-software component versions of the referencing freestyle data type.

Core Data Type

The same software component version or a sub-software component version of the referencing aggregated data type

Aggregated Data Type

The same software component version or a sub-software component version of the referencing aggregated data type