You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Appasamy Thirugnana <at...@sapient.com> on 2009/11/11 07:22:17 UTC

WSDL and XSD Design | Which design is perfect

Hi,

      I have a WSDL defining fault as given below

1.            ....
            ....
           <wsdl:message name="InvalidPINInfo">
                <wsdl:part name="parameter" element="error:errorFault"/>
           </wsdl:message>
             .....

 <wsdl:portType name="TravelAccount">
       <wsdl:operation name="RegisterUser">
             <wsdl:input message="tns:RegisterUserRequest"/>
             <wsdl:output message="tns:RegisterUserResponse"/>
             <wsdl:fault name="InvalidPINInfo" message="tns:InvalidPINInfo"/>
        </wsdl:operation>

....



2. I got suggestion from one of the forums to change "InvalidPINInfo" as follows to minimize changes in WSDL in future if fault definition needs to changed

           <wsdl:message name="InvalidPINInfo">
                <wsdl:part name="parameter" element="account:InvalidPINInfo"/>
           </wsdl:message>

      and then define in one of the XSDs as follows(Indirect mapping), so future change only needs XSD changes

            <xs:element name="InvalidPINInfo" type="error:errorFault"/>

Questions:
1. So always WSDL design needs to be taken care that it should not change often?
2. Even if it is XSD change it is a Service contract change.Not only WSDL. Is it right?

Thanks,
Appasamy