Table of Contents

Search

  1. Preface
  2. Web Services
  3. SOAP Web Services
  4. WSDL Data Object
  5. Schema Object
  6. How to Create a SOAP Web Service
  7. Operation Mappings
  8. Parsing Web Service SOAP Messages
  9. Generating Web Service SOAP Messages
  10. Web Service Consumer Transformation
  11. REST Web Services
  12. How to Create a REST Web Service
  13. REST Web Service Consumer Transformation
  14. REST and SOAP Web Service Administration
  15. Datatype Compatibility

Web Services Guide

Web Services Guide

Parsing anyType Elements

Parsing anyType Elements

The anyType element represents a choice of all global types in a WSDL or schema. When you map nodes to ports in the Developer tool, you choose which types to appear in the SOAP message for the anyType element. You must replace an anyType element in the SOAP message with a complex type or xs:string. Create groups of ports for each type that you choose.
You must choose a type to map data to output ports. If the WSDL or schema does not contain a global type, the Developer tool replaces the anyType element with xs:string.
To choose an element type in the Operation area, click
Choose
in the
Type
column for the anyType element. A list of available complex types and xs:string appears.
When you replace an anyType element with derived types, the Data Integration Service populates elements for one type at a time. The SOAP message does not contain data for the base type and the derived type at the same time.

Derived Types Example

The WSDL contains an anyType element. You replace the element with AddressType and a derived type called USAddressType. The SOAP message hierarchy has the following groups:
Address:AddressType (base type) Address: AddressType Street City Address:USAddressType (derived type) Street City State ZipCode
The SOAP message contains the following data:
<address xsi: type ="AddressType"> <street>1002 Mission St.</street> <city>san jose</city> </address> <address xsi:type="USAddressType"> <street>234 Fremont Blvd</street> <city>Fremont</city> <zip>94556</zip> <state>CA</state> </address>
The Data Integration Service returns one row for xsi: AddressType:
Street
City
1002 Mission St.
San Jose
The Data Integration Service returns one row for the derived type xsi: USAddressType:
Street
City
State
Zip
234 Fremont Blvd.
Sunnyvale
CA
94556
The Data Integration Service does not populate the AddressType if the type is xsi: USAddressType.