<!--
 Copyright 2006 The Apache Software Foundation.
 
 Licensed 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.
 -->
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
                  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                  xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing">
    <soapenv:Header xmlns:fabrikam="http://example.com/fabrikam" xmlns:axis2="http://ws.apache.org/namespaces/axis2">
        <wsa:MessageID soapenv:mustUnderstand="0">
            uuid:920C5190-0B8F-11D9-8CED-F22EDEEBF7E5</wsa:MessageID>
        <wsa:To soapenv:mustUnderstand="0">http://localhost:8081/axis/services/BankPort</wsa:To>
        <wsa:From soapenv:mustUnderstand="0">
            <wsa:Address>
                http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:Address>
        </wsa:From>
        <axis2:ParamOne wsa:IsReferenceParameter='true'>123456789</axis2:ParamOne>
        <axis2:ParamTwo wsa:IsReferenceParameter='true'>ABCDEFG</axis2:ParamTwo>
        <wsa:ReplyTo>
            <wsa:Address>http://example.com/fabrikam/acct</wsa:Address>
            <wsa:ReferenceParameters>
                <fabrikam:CustomerKey>123456789</fabrikam:CustomerKey>
                <fabrikam:ShoppingCart>ABCDEFG</fabrikam:ShoppingCart>
            </wsa:ReferenceParameters>
        </wsa:ReplyTo>
        <wsa:FaultTo>
            <wsa:Address>http://example.com/fabrikam/fault</wsa:Address>
        </wsa:FaultTo>
    </soapenv:Header>
    <soapenv:Body>
        <ns1:getBalance soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
                        xmlns:ns1="http://localhost:8081/axis/services/BankPort">
            <accountNo href="#id0"/>
        </ns1:getBalance>
        <multiRef id="id0" soapenc:root="0"
                  soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
                  xsi:type="xsd:int" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
            1001</multiRef>
    </soapenv:Body>
</soapenv:Envelope>
