Designer > What is a Correlation Set > WSDL Syntax and Example for Property Names and Aliases
  

WSDL Syntax and Example for Property Names and Aliases

Use a Process Developer wizard to automatically create variable properties and property aliases. (This is described in Adding Variable Properties and Property Aliases). The wizard generates WSDL code, as the following examples show.
The WSDL syntax for a property name is:
<wsdl:definitions name="NCName"
xmlns:vprop="http://docs.oasis-open.org/wsbpel/2.0/varprop">
<vprop:property name="NCName"
type="QName"?
element="QName"?/>
...
</wsdl:definitions>
The WSDL syntax for a property alias is:
<wsdl:definitions name="NCName"
xmlns:vprop="http://docs.oasis-open.org/wsbpel/2.0/varprop">
<vprop:propertyAlias propertyName="QName"
messageType="QName"?
part="NCName"?
type="QName"?
element="QName"?>
<vprop:query queryLanguage="anyURI"?>?
queryContent
</vprop:query>
</vprop:propertyAlias>
...
</wsdl:definitions>
Property and Property Alias Example
Consider the following message definition:
<wsdl:definitions name="messages"
targetNamespace="http://example.com/taxMessages.wsdl"
xmlns:txtyp="http://example.com/taxTypes.xsd"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<!-- define a WSDL application message -->
<wsdl:message name="taxpayerInfoMsg">
<wsdl:part name="identification"
element="txtyp:taxPayerInfoElem" />
</wsdl:message>
...
</wsdl:definitions>
The following WSDL fragment shows the definition of a property and its location in a particular field of the message:
<wsdl:definitions name="properties"
targetNamespace="http://example.com/properties.wsdl"
xmlns:tns="http://example.com/properties.wsdl"
xmlns:txtyp="http://example.com/taxTypes.xsd"
xmlns:txmsg="http://example.com/taxMessages.wsdl" ...>
<!-- define a correlation property -->
<vprop:property name="taxpayerNumber" type="txtyp:SSN" />
...
<vprop:propertyAlias propertyName="tns:taxpayerNumber"
messageType="txmsg:taxpayerInfoMsg"
part="identification">
<vprop:query>txtyp:socialsecnumber</vprop:query>
</vprop:propertyAlias>
<vprop:propertyAlias propertyName="tns:taxpayerNumber"
element="txtyp:taxPayerInfoElem">
<vprop:query>txtyp:socialsecnumber</vprop:query>
</vprop:propertyAlias>
</wsdl:definitions>
The first <vprop:propertyAlias> defines a named property tns:taxpayerNumber as an alias for a location in the identification part of the message type txmsg:taxpayerInfoMsg.
The second <vprop:propertyAlias> provides a second definition for the same named property tns:taxpayerNumber but this time as an alias for a location inside of the element txtyp:taxPayerInfoElem.
The presence of both aliases means that it is possible to retrieve the social security number from both a variable holding a message of messageType txmsg:taxpayerInfo as well as an element defined using txtyp:taxPayerInfoElem.