Limitations

Table 48 describes WSDL ODA support for various combinations of attributes style, use, and part definitions using type and element.


Table 48. WSDL ODA limitations

Style/Use/Parts defined using Description
rpc/encoded/type Supported
rpc/encoded/element Supported
rpc/literal/type Supported
rpc/literal/element Supported
doc/encoded/type Not supported
doc/encoded/element Not supported
doc/literal/type Supported
doc/literal/element Supported

The WSDL ODA can retrieve WSDL files that are completely self-contained (in one file) or are separated into an implementation file containing the service element, an interface file containing all the other WSDL elements including types, messages, portTypes, and bindings, and one or more files for the schemas. The WSDL ODA is not able to successfully retrieve WSDL files that have more than one interface file, for example, with messages and portTypes in one file and bindings in another file.

Schema in the WSDL document must be self-contained in terms of namespace prefixes. You cannot use a namespace prefix that is defined in the <definitions>/<types> element of the WSDL document in the <schema> element that is a child of the <types> element. You need to re-define the namespace prefix on the <schema> element if it is to be used in the sub-elements of the <schema> element. The following is an example of a schema that is not self-contained:

<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:NS="NS">
    <types>
         <schema xmlns="http://www.w3.org/1999/XMLSchema">
        <element name="NSElem" type="NS:NSType"/>
         </schema>
   </types>
</definitions>

Namespace prefix NS is defined on the <definitions> element and is used without re-definition on the <schema> element. Hence the WSDL ODA will throw an error. To work around this limitation, re-define the namespace prefix NS on the <schema> element as shown below:

<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:NS="NS">
    <types>
         <schema xmlns="http://www.w3.org/1999/XMLSchema" xmlns:NS="NS">
        <element name="NSElem" type="NS:NSType"/>
         </schema>
   </types>
</definitions>

Copyright IBM Corp. 1997, 2004