Steve hanson suman kalia smh@uk ibm com kalia@ca ibm com
This presentation is the property of its rightful owner.
Sponsored Links
1 / 10

Steve Hanson Suman Kalia [email protected] [email protected] PowerPoint PPT Presentation

  • Uploaded on
  • Presentation posted in: General

Describing non-XML data using XML Schema in IBM WebSphere Business Integration Brokers. Steve Hanson Suman Kalia [email protected] [email protected] Agenda. Broker Overview Message Parsing Message Modeling

Download Presentation

Steve Hanson Suman Kalia [email protected] [email protected]

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript

Describing non-XML data using XML Schema in IBM WebSphere Business Integration Brokers

Steve Hanson Suman Kalia

[email protected] [email protected]


  • Broker Overview

  • Message Parsing

  • Message Modeling

  • The Message Model

  • XML Schema Annotations

  • Background History

  • Further Reading

Broker Overview

WebSphere Business Integration Message Broker (WBI-MB) enables information packaged as messages to flow between different business applications, ranging from large legacy systems through to unmanned devices.A message may be transformed on its way through the broker by a message flow.

Message Parsing

<Person age=’32’ height=‘172’>

<Name>Joe Bloggs</Name>




Element age

Element height

Element Name

struct {

int height;

int age;

char Name[48];

} Person;

172 32 Joe Bloggs

On input, the broker receives a message bitstream and parses it into a logical message tree (similar to an SDO datagraph). On output, the broker serializes a message tree into a message bitstream. The parser and serializer understand the structure of the message because it has been modeled by the user in a message set.

Message Modeling

A message set contains one or more message models. A message model is created using an Eclipse-based toolkit, either by an importer or by hand using a specialized editor. When complete, the message set is generated into a dictionary form for use by the message broker runtime. It may also be generated into other formats for consumption by other applications.

The Message Model

  • A message model comprises a Logical Model and one or more Physical Models

  • The Logical Model is XML Schema with some minor extensions

    • Describes the logical structure of the message

  • The Physical Model uses the OMG Common Application Metamodel (CAM)

    • CAMincludes COBOL, C, PL/1, TypeDescriptor, TDLang models

    • Specifically, Physical Model extends CAM TypeDescriptor

    • Describes the physical layout of the message ‘on the wire’

    • A Physical Model has a name

  • A message model is serialized in a .mxsd file

    • This is an XML Schema .xsd file

    • With additional constructs for the Physical Model

  • The constructs used arexsd:appinfo style xsd:annotations

    • Values of Physical Model properties

    • Names of model objects to enable reconstitution of model

  • Physical Model is sparse for scalability

    • Typically only non-default property values are serialized

Example Annotation – xsd:string

Identifies owner

of appinfo

Name of

Physical model

Enables model

to be reconstituted

Mix of TD & our

own properties

<xsd:element name="Location" type="xsd:string">


<xsd:appinfo source="WMQI_APPINFO">



addrUnit="byte" alignment="byte" attributeInBit="false"

bigEndian="false" characterSize="1" contentSize="32"

encodingNull="NullPadFill" encodingNullValue=""

lengthUnits="Bytes" lengthEncoding="fixedLength"

offset="0" paddingCharacter="SPACE" size="32"







Example Annotation – xsd:int

Identifies owner

of appinfo

Name of

Physical model

Enables model

to be reconstituted

Mix of TD & our

own properties

<xsd:element name=“Duration" type="xsd:int">


<xsd:appinfo source="WMQI_APPINFO">



addrUnit="byte" alignment="word" attributeInBit="false"

base="2" baseInAddr="8" baseUnits="3

baseWidth="1" bigEndian="false"

contentSize="4" offset="320"

signCoding="twosComplement" signed="true" size="4"






Background History

  • Development work on broker started in 1998

  • Original logical & physical message models were proprietary

  • First release of broker (MQSI V2) in 1Q 2000

  • Work started in 2000 on new standards based message model

  • First shipped in broker (WBI-MB V5) in 2Q 2003

Further Reading

  • Message Broker Toolkit on-line help


  • OMG “UML for Enterprise Application Integration”

    • Includes CAM


  • Login