B.5 Mapping of UML Interfaces to WSDL

29.198-013GPPOpen Service Access (OSA) Application Programming Interface (API)Part 1: OverviewRelease 9TS

B.5.1 Mapping of UML Operations to WSDL message element

An UML Operation contains the following attributes:

Interface

Operation Name

Module Name

Return Type

Parameter

Name

Type

This type would then map to the following WSDL message construct:

<message name="Module_Name.Interface_Name.OperationName">

<part name="parameters"

element="xsd1:Module_Name.Interface_Name.OperationName"/>

</message>

<message name="Module_Name.Interface_Name.OperationNameResponse">

<part name="parameters"

element="xsd1:Module_Name.Interface_Name.OperationNameResult"/>

</message>

This approach is conformant with the wrapped document literal style recommended by the WS-I (http://www.ws-i.org/).

B.5.2 Mapping of Exception to WSDL message element

An UML Exception has the following attributes:

  • Module
  • Name

This type would then map to the following XML Schema Construct:

<message name=”Module_Name.Exception_Name”>

<part name=”exception”

element=”xsd1: Module_Name.Exception_Name”/>

</message>

B.5.4 Mapping of Interface Class to WSDL portType and binding elements

A UML Interface contains the following attributes:

Interface Name

Module (i.e. component)

Operations

Name

Parameters

      • Name
  • Exceptions
      • Name

This type would then map to the following WSDL portType element:

<portType name="ModuleName.InterfaceName">

<operation

name="Operation-Name"

<input message="Operation-Name"/>

<output message="Operation-NameResponse"/>

<fault name=” Module.Operation-Exception-Name”

message=” Module.Operation–Exception–Name” />

</operation>

</portType>

This type would also then map into the following WSDL binding element:

<binding

name="Module.Interface-NameSOAPBinding"

type="Module.Interface-Name">

<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>

<operation name="Operation-Name">

<soap:operation style=”document”"/>

<input>

<soap:body use="literal"/>

</input>

<output>

<soap:body use="literal"/>

</output>

<fault name=”Module.Exception-Name>

<soap:fault name=”Module.Operation-Exception-Name” use="literal"/>

</fault>

… additional fault elements

</operation>

… additional operation elements

</binding>

B.5.5 Mapping of UML Interfaces to WSDL service element

A UML Interface contains the following attributes:

Interface Name

Module

This type would then map to the following WSDL service element:

<service name="InterfaceName">

<port binding="Module.InterfaceNameSOAPBinding" name="InterfaceName">

<soap:address location="http://{Service Address}"/>

</port>

… additional port elements

</service>

</definitions>

Annex C (informative):
Java™ Realisation API