Powered By

Free XML Skins for Blogger

Powered by Blogger

Wednesday, August 6, 2008

External Definitions in SAP XI

Use

There is a series of standard schema for describing the message structure at runtime. WSDL (Web Service Description Language), XSD (XML Schema Definition Language), or DTDs (Document Type Definitions) are often used to describe message schema. If a description of the message structure already exists in one of the above formats, you can use it in the Integration Repository by importing it as an external definition rather than re-entering it manually using the data type editor.

See also: Messages.

Integration

An external definition enables you to import a local WSDL, XSD, or DTD file to the Integration Repository and specify which parts of the schema to extract as the description for a message. You can use these extracted message schema as:

Output or input messages in message interfaces

Source or target structures for message mappings

In the Integration Builder, assigned message schema are labeled as This graphic is explained in the accompanying text External Message. As when structuring message interfaces, message schema have the same meaning as message types.

For technical reasons, proxy generation and the respective editors in the Integration Builder do not support the entire language range of XML schema and WSDL. For an overview of which language elements are supported, see the Excel spreadsheet in the SAP Service Marketplace at service.sap.com/xi ® Media Library ® Documentation: SAP XI 3.0 (SP11) – Supported XML Schema and WSDL (EN).

Prerequisites

The document to be imported must conform to the WSDL, XSD, or DTD standard.

Features

Extraction of Message Schema

If the file is not already in WSDL format, the Integration Builder converts imported external definitions to a WSDL definition more suitable for further use. During this procedure, the Integration Builder identifies the definitions that describe the message structure. Depending on the imported format, you can define the mode for this procedure before import:

Modes for Importing External Definitions

External Format

Selection Options in Messages List Box

Meaning

WSDL

Do Not Extract Messages

Definition imported without conversion, to enable central access to the external definition.

All Message Definitions Contained

All message definitions extracted in WSDL. If the message definition contains more than one part, all parts are grouped together using a superordinate part.

Using RPC Style

See: Import for WSDL Documents in rpc-Style Format

XSD

Do Not Extract Messages

See above.

All Elements Contained

All element definitions interpreted as message schema.

All Unreferenced Elements

Only those element definitions that are not referenced by another element are interpreted as message schema.

DTD

Do Not Extract Messages

See above.

Message from DOCTYPE

DOCTYPE tag interpreted as message schema.

Message from First ELEMENT

First ELEMENT tag interpreted as message schema.

References

WSDL, XSD, and DTD documents can all reference each other. The Integration Builder recognizes these references automatically if you specify the source for each imported document. An example of such a reference is a URL that is referenced by other documents. The External References tab page lists the references found in the document and marks the referenced documents that have been imported to the Integration Repository. It is only possible to reference external definitions with the same namespace.

Activities

...

Create an external definition (see: Creating a New Object).

1. In the Category list field, choose whether you want to import a WSDL, XSD, or DTD document. This setting determines which selection options are available to you in the Mode list field.

2. In the Mode list field, choose which parts of the document you want to interpret as a message schema (see above).

3. Use the file dialog to choose a file to upload to the Integration Repository. Due to technical reasons, the Integration Builder can only note the file name and not the file directory path.

4. Once you have selected the file, use the tab pages to call up the following information:

Imported Document: Your file in text format.

Messages: The message schema that have been extracted using the selected mode.

WSDL: The result of the conversion to WSDL.

External References: Overview of the references used in the imported document. This will show any other imported documents that have been recognized.

5. If you want other external definitions to be able to reference your imported document, specify the unique ID for the document in the Source input field (as a rule, you can copy this from the document). This could be a URL, for example. In this way the Integration Builder can assign documents that reference each other to each other.

Example

You want to import an XSD document myMessage to the Integration Repository; this document references three other XSD documents myStr1, myStr2, and myStr3 by using the statement. One option is to first import myMessage. The External References tab page then shows that three documents are referenced and that these documents are not yet in the Integration Repository. Next, create further external definitions for myStr1, myStr2, and myStr3 in the same namespace and specify the source for each of these documents. If the source is not contained in the document itself, you will find it in the referencing document. If you refresh the display of the external definition for myMessage, the External References tab page shows that the documents have been found in the Integration Repository. You can then navigate to the other referenced external definitions in the Integration Repository by double clicking.

No comments:

Archives