<?xml version="1.0" encoding="UTF-8"?>
<!--

    Copyright (c) 2017, 2018 Oracle and/or its affiliates. All rights reserved.

    This program and the accompanying materials are made available under the
    terms of the Eclipse Public License v. 2.0, which is available at
    http://www.eclipse.org/legal/epl-2.0.

    This Source Code may also be made available under the following Secondary
    Licenses when the conditions for such availability set forth in the
    Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
    version 2 with the GNU Classpath Exception, which is available at
    https://www.gnu.org/software/classpath/license.html.

    SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0

-->

<definitions name="AddNumbers"  targetNamespace="http://duke.org" xmlns:tns="http://duke.org"
    xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
	<types>
            <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://duke.org">

                <complexType name="addNumbersResponse">
                    <sequence>
                        <element name="return" type="xsd:int" />
                    </sequence>
                </complexType>
                <element name="addNumbersResponse" type="tns:addNumbersResponse" />

                <complexType name="addNumbers">
                    <sequence>
                        <element name="arg0" type="xsd:int" />
                        <element name="arg1" type="xsd:int" />
                    </sequence>
                </complexType>
                <element name="addNumbers" type="tns:addNumbers" />
            </xsd:schema>
	</types>
	<message name="addNumbers">
            <part name="parameters" element="tns:addNumbers" />
	</message>
	<message name="addNumbersResponse">
            <part name="result" element="tns:addNumbersResponse" />
	</message>
	<portType name="AddNumbersPortType">
            <operation name="addNumbers">
                <input message="tns:addNumbers" name="add"/>
                <output message="tns:addNumbersResponse" name="addResponse"/>
            </operation>
	</portType>
	<binding name="AddNumbersBinding" type="tns:AddNumbersPortType">
            <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
            <operation name="addNumbers">
                <soap:operation soapAction="" />
                <input>
                    <soap:body use="literal" />
                </input>
                <output>
                    <soap:body use="literal" />
                </output>
            </operation>
	</binding>
	<service name="AddNumbersService">
            <port name="AddNumbersPortType" binding="tns:AddNumbersBinding">
                <soap:address location="REPLACE_WITH_ACTUAL_URL" />
            </port>
	</service>
</definitions>
