<?xml version="1.0" encoding="UTF-8"?>
<!--
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements. See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership. The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License. You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied. See the License for the
 * specific language governing permissions and limitations
 * under the License.
-->
<definitions name="BaseService" targetNamespace="http://schemas.apache.org/tests" 
    xmlns="http://schemas.xmlsoap.org/wsdl/" 
    xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" 
    xmlns:corba="http://cxf.apache.org/bindings/corba" 
    xmlns:ns1="http://schemas.apache.org/tests/corba/typemap/" 
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" 
    xmlns:tns="http://schemas.apache.org/tests" 
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <types>
        <schema targetNamespace="http://schemas.apache.org/tests" 
            xmlns="http://www.w3.org/2001/XMLSchema" 
            xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
            <complexType name="SOAPStruct">
                <all>
                    <element name="varFloat" type="float"/>
                    <element name="varInt" type="int"/>
                    <element name="varString" type="string"/>
                </all>
            </complexType>
        </schema>
    </types>
    <message name="echoStruct">
        <part name="inputStruct" type="tns:SOAPStruct"/>
    </message>
    <message name="echoStructResponse">
        <part name="return" type="tns:SOAPStruct"/>
    </message>
    <portType name="BasePortType">
        <operation name="echoStruct">
            <input message="tns:echoStruct" name="echoStruct"/>
            <output message="tns:echoStructResponse" name="echoStructResponse"/>
        </operation>
    </portType>
    <binding name="BaseCORBABinding" type="tns:BasePortType">
        <corba:binding repositoryID="IDL:BasePortType:1.0"/>
        <operation name="echoStruct">
            <corba:operation name="echoStruct">
                <corba:param idltype="ns1:SOAPStruct" mode="in" name="inputStruct"/>
                <corba:return idltype="ns1:SOAPStruct" name="return"/>
            </corba:operation>
            <input name="echoStruct"/>
            <output name="echoStructResponse"/>
        </operation>
    </binding>
    <corba:typeMapping targetNamespace="http://schemas.apache.org/tests/corba/typemap/">
        <corba:struct name="SOAPStruct" repositoryID="IDL:SOAPStruct:1.0" 
            type="tns:SOAPStruct">
            <corba:member idltype="corba:float" name="varFloat"/>
            <corba:member idltype="corba:long" name="varInt"/>
            <corba:member idltype="corba:string" name="varString"/>
        </corba:struct>
    </corba:typeMapping>
</definitions>
