<?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="FindInterest" targetNamespace="http://hello.org/wsdl" xmlns:tns="http://hello.org/wsdl" 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>
      <xsd:import namespace="http://hello.org/wsdl" schemaLocation="FindInterest_Schema.xsd" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"/>
    </xsd:schema>
  </types>

  <message name="calculateInterest">
    <part name="parameters" element="tns:calculateInterest"/>
  </message>
  <message name="calculateInterestResponse">
    <part name="parameters" element="tns:calculateInterestResponse"/></message>
  <portType name="InterestIF">
    <operation name="calculateInterest">
      <input message="tns:calculateInterest"/>
      <output message="tns:calculateInterestResponse"/></operation></portType>
  <binding name="InterestIFBinding" type="tns:InterestIF">
    <operation name="calculateInterest">
      <input>
        <soap:body  use="literal" namespace="http://hello.org/wsdl"/></input>
      <output>
        <soap:body  use="literal" namespace="http://hello.org/wsdl"/></output>
      <soap:operation soapAction="urn:calculateInterest"/></operation>
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/></binding>
  <service name="FindInterest">
    <port name="InterestIFPort" binding="tns:InterestIFBinding">
      <soap:address location="REPLACE_WITH_ACTUAL_ADDRESS"/></port></service></definitions>
