<?xml version = "1.0" encoding = "UTF-8"?>
<!--
    IPR, License and Distribution Notices
    This machine readable file is derived from IMS specification IMS Tools Interoperability Guidelines Version 1.0   
    found at http://www.imsglobal.org/ti/ and the original IMS schema binding or code base 
    http://www.imsglobal.org/ti/tiv1p0/imsti_guidev1p0.html.
    
    Recipients of this document are requested to submit, with their comments, notification of any relevant patent 
    claims or other intellectual property rights of which they may be aware that might be infringed by the schema 
    binding contained in this document.
    
    IMS takes no position regarding the validity or scope of any intellectual property or other rights that might be 
    claimed to pertain to the implementation or use of the technology described in this document or the extent to 
    which any license under such rights might or might not be available; neither does it represent that it has made 
    any effort to identify any such rights. Information on IMS’s procedures with respect to rights in IMS specifications 
    can be found at the IMS Intellectual Property Rights web page: http://www.imsglobal.org/ipr/imsipr_policyFinal.pdf.
    
    Copyright © IMS Global Learning Consortium 1999-2007. All Rights Reserved.
    
    License Notice for Users
    Users of products or services that include this document are hereby granted a worldwide, royalty-free, 
    non-exclusive license to use this document.
    
    Distribution Notice for Developers
    Developers of products or services that provide distribution of this document as is or with modifications are 
    required to register with the IMS community on the IMS website as described in the following two paragraphs:
    
    - If you wish to distribute this document as is, with no modifications, you are hereby granted permission to copy, 
    display and distribute the contents of this document in any medium for any purpose without fee or royalty provided 
    that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you 
    make and you complete a valid license registration with IMS and receive an email from IMS granting the license. 
    To register, follow the instructions on the IMS website: http://www.imsglobal.org/specificationdownload.cfm. Once 
    registered you are granted permission to transfer unlimited distribution rights of this document for the purposes 
    of third-party or other distribution of your product or service that incorporates this document as long as this IPR, 
    License and Distribution notice remains in place in its entirety.
    
    - If you wish to create and distribute a derived work from this document, you are hereby granted permission to copy, 
    display and distribute the contents of the derived work in any medium for any purpose without fee or royalty provided 
    that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you 
    make and you complete a valid profile registration with IMS and receive an email from IMS granting the license. To 
    register, follow the instructions on the IMS website: http://www.imsglobal.org/profile/. Once registered you are 
    granted permission to transfer unlimited distribution rights of the derived work for the purposes of third-party or 
    other distribution of your product or service that incorporates the derived work as long as this IPR, License and 
    Distribution notice remains in place in its entirety.
    
    The limited permissions granted above are perpetual and will not be revoked by IMS or its successors or assigns.
    
    THIS SPECIFICATION IS BEING OFFERED WITHOUT ANY WARRANTY WHATSOEVER, AND IN PARTICULAR, 
    ANY WARRANTY OF NONINFRINGEMENT IS EXPRESSLY DISCLAIMED. ANY USE OF THIS SPECIFICATION 
    SHALL BE MADE ENTIRELY AT THE IMPLEMENTER’S OWN RISK, AND NEITHER THE CONSORTIUM, NOR 
    ANY OF ITS MEMBERS OR SUBMITTERS, SHALL HAVE ANY LIABILITY WHATSOEVER TO ANY IMPLEMENTER 
    OR THIRD PARTY FOR ANY DAMAGES OF ANY NATURE WHATSOEVER, DIRECTLY OR INDIRECTLY, ARISING 
    FROM THE USE OF THIS SPECIFICATION.
-->
<wsdl:definitions name="TIRLaunchSyncServices" targetNamespace="http://www.imsglobal.org/services/ti/wsdl/sync/TIRLaunchService_v1p0"
    xmlns:tns="http://www.imsglobal.org/services/ti/wsdl/sync/TIRLaunchService_v1p0"
    xmlns:soap11="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
    xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <wsdl:documentation>
        WSDL File Information
        ---------------------
        Services:     TIRLaunch (Synchronous Communications)
        Author:       Prashant Nayak, Bruce Barton, Colin Smythe
        Date:         28th February, 2006
        Version:      1.0
        Status:       Final Release
        Description:  The Tools Interoperability Launch Service.

        History:      Version 1.0: This is the first formal release of this service.

        WSDL Binding: This WSDL Binding is based upon the IMS General Web Services Base Profile v1.0
                      The IMS GWS Basic Profile is derived from the WS-I Basic Profile v1.1.  This
                      profile uses: WSDL 1.1, SOAP 1.1, HTTP 1.1 and XML 1.0.  Extension profiles to
                      the IMS GWS Base Profile are available but ae not supported using this tool version.

         UML Source File Information
        ---------------------------
        Choreography:     Sync
        Transport:        SOAPv1.1

        Source XSLT File Information
        ----------------------------
        XSL Generator:    UMLtoXSDTransformv0p7.xsl
        XSLT Processor:   Xalan
        Release:          1.0 Beta 1
        Date:             30th November, 2005

        Auto-generation Tool
        --------------------
        This WSDL/XSD was auto-generated using the IMS WSDL/XSD auto-generation tool.  While every attempt
        has been made to ensure that this tool auto-generates the XSDs correctly, users should be aware
        that this is an experimental tool.  Permission is given to make use of this tool.  IMS makes no
        claim on the materials created by third party users of this tool.  Details on how to use this tool
        are contained in the IMS document: "IMS General Web Services: WSDL/XSD Binding Auto-generation"
        available at the IMS web-site.
        Tool Copyright:  2005 (c) IMS Global Learning Consortium Inc.  All Rights Reserved.
    </wsdl:documentation>
    <wsdl:types>
        <xs:schema xmlns="http://www.w3.org/2001/XMLSchema"
            targetNamespace="http://www.imsglobal.org/services/ti/wsdl/sync/TIRLaunchService_v1p0"
            xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            version="IMS TIL 1.0"
            elementFormDefault="qualified"
            attributeFormDefault="unqualified">

        <!-- Generate Global Attributes ***********************************************************************  -->

        <!-- =====================================  -->

        <!-- Generate Namespaced extension Group  *************************************************************  -->

        <!-- =====================================  -->

        <!-- Generate the enumerated simpleType declarations **************************************************  -->

            <xs:simpleType name="imsx_CodeMajor.Type">
                <xs:restriction base="xs:string">
                    <xs:enumeration value="success"/>
                    <xs:enumeration value="processing"/>
                    <xs:enumeration value="failure"/>
                    <xs:enumeration value="unsupported"/>
                </xs:restriction>
            </xs:simpleType>

            <xs:simpleType name="imsx_Severity.Type">
                <xs:restriction base="xs:string">
                    <xs:enumeration value="status"/>
                    <xs:enumeration value="warning"/>
                    <xs:enumeration value="error"/>
                </xs:restriction>
            </xs:simpleType>

            <xs:element name="imsx_codeMajor" type="tns:imsx_CodeMajor.Type"/>

            <xs:element name="imsx_severity" type="tns:imsx_Severity.Type"/>

        <!-- =====================================  -->

        <!-- Generate the simpleType elements based IMS data-types  *******************************************  -->

            <xs:element name="DisplayResponseAction" type="xs:string"/>

            <xs:element name="PerformRedirectAction" type="xs:string"/>

            <xs:element name="Ancillary" type="xs:string"/>

            <xs:element name="ProxyToolName" type="xs:string"/>

            <xs:element name="ProxyToolDescription" type="xs:string"/>

            <xs:element name="ServiceName" type="xs:string"/>

            <xs:element name="ServiceLocation" type="xs:string"/>

            <xs:element name="ServiceProfileName" type="xs:string"/>

            <xs:element name="major" type="xs:string"/>

            <xs:element name="minor" type="xs:string"/>

            <xs:element name="LaunchIdentifier" type="xs:string"/>

            <xs:element name="Role" type="xs:string"/>

            <xs:element name="LaunchType" type="xs:string"/>

            <xs:element name="Name" type="xs:string"/>

            <xs:element name="ContextDescription" type="xs:string"/>

            <xs:element name="SourceName" type="xs:string"/>

            <xs:element name="SourceID" type="xs:string"/>

            <xs:element name="Userid" type="xs:string"/>

            <xs:element name="FirstName" type="xs:string"/>

            <xs:element name="LastName" type="xs:string"/>

            <xs:element name="imsx_messageRefIdentifier" type="xs:string"/>

            <xs:element name="imsx_operationRefIdentifier" type="xs:string"/>

            <xs:element name="imsx_description" type="xs:string"/>

            <xs:element name="imsx_codeMinorFieldName" type="xs:string"/>

            <xs:element name="imsx_codeMinorFieldValue" type="xs:string"/>

            <xs:element name="imsx_version" type="xs:string"/>

            <xs:element name="imsx_messageIdentifier" type="xs:string"/>

            <xs:element name="MAC" type="xs:string"/>

        <!-- =====================================  -->

        <!-- Generate the data-type elements ******************************************************************  -->

            <xs:complexType name="CoreSettings.Type">
                <xs:annotation>
                    <xs:documentation>
                    </xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element ref="tns:ProxyTool" minOccurs = "1" maxOccurs = "1"/>
                    <xs:element ref="tns:TIR" minOccurs = "1" maxOccurs = "1"/>
                </xs:sequence>
            </xs:complexType>

            <xs:complexType name="LaunchDirective.Type">
                <xs:annotation>
                    <xs:documentation>
                    </xs:documentation>
                </xs:annotation>
                <xs:choice>
                    <xs:element ref="tns:DisplayResponseAction" minOccurs = "1" maxOccurs = "1"/>
                    <xs:element ref="tns:PerformRedirectAction" minOccurs = "1" maxOccurs = "1"/>
                </xs:choice>
            </xs:complexType>

            <xs:complexType name="ContextualSettings.Type">
                <xs:annotation>
                    <xs:documentation>
                    </xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element ref="tns:LaunchProfile" minOccurs = "1" maxOccurs = "1"/>
                    <xs:element ref="tns:DeliveryContextProfile" minOccurs = "0" maxOccurs = "1"/>
                    <xs:element ref="tns:AcclipProfile" minOccurs = "0" maxOccurs = "1"/>
                    <xs:element ref="tns:UserProfile" minOccurs = "0" maxOccurs = "1"/>
                </xs:sequence>
            </xs:complexType>

            <xs:complexType name="ToolSettings.Type">
                <xs:annotation>
                    <xs:documentation>
                    </xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element ref="tns:Ancillary" minOccurs = "0" maxOccurs = "1"/>
                </xs:sequence>
            </xs:complexType>

            <xs:complexType name="ProxyTool.Type">
                <xs:annotation>
                    <xs:documentation>
                    </xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element ref="tns:ProxyToolName" minOccurs = "1" maxOccurs = "1"/>
                    <xs:element ref="tns:ProxyToolVersion" minOccurs = "1" maxOccurs = "1"/>
                    <xs:element ref="tns:IMSTIVersion" minOccurs = "1" maxOccurs = "1"/>
                    <xs:element ref="tns:ProxyToolDescription" minOccurs = "1" maxOccurs = "1"/>
                </xs:sequence>
            </xs:complexType>

            <xs:complexType name="TIR.Type">
                <xs:annotation>
                    <xs:documentation>
                    </xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element ref="tns:LaunchService" minOccurs = "0" maxOccurs = "1"/>
                    <xs:element ref="tns:OutcomeService" minOccurs = "0" maxOccurs = "1"/>
                </xs:sequence>
            </xs:complexType>

            <xs:complexType name="TIRServiceLocator.Type">
                <xs:annotation>
                    <xs:documentation>
                    </xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element ref="tns:ServiceName" minOccurs = "1" maxOccurs = "1"/>
                    <xs:element ref="tns:ServiceLocation" minOccurs = "1" maxOccurs = "1"/>
                    <xs:element ref="tns:ServiceProfileName" minOccurs = "1" maxOccurs = "1"/>
                </xs:sequence>
            </xs:complexType>

            <xs:complexType name="Version.Type">
                <xs:annotation>
                    <xs:documentation>
                    </xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element ref="tns:major" minOccurs = "1" maxOccurs = "1"/>
                    <xs:element ref="tns:minor" minOccurs = "1" maxOccurs = "1"/>
                </xs:sequence>
            </xs:complexType>

            <xs:complexType name="AcclipProfile.Type">
                <xs:annotation>
                    <xs:documentation>
                    </xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element ref="tns:Ancillary" minOccurs = "1" maxOccurs = "1"/>
                </xs:sequence>
            </xs:complexType>

            <xs:complexType name="LaunchProfile.Type">
                <xs:annotation>
                    <xs:documentation>
                    </xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element ref="tns:LaunchIdentifier" minOccurs = "1" maxOccurs = "1"/>
                    <xs:element ref="tns:Role" minOccurs = "1" maxOccurs = "1"/>
                    <xs:element ref="tns:LaunchType" minOccurs = "1" maxOccurs = "1"/>
                </xs:sequence>
            </xs:complexType>

            <xs:complexType name="DeliveryContextProfile.Type">
                <xs:annotation>
                    <xs:documentation>
                    </xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element ref="tns:IMSSourcedid" minOccurs = "1" maxOccurs = "1"/>
                    <xs:element ref="tns:Name" minOccurs = "1" maxOccurs = "1"/>
                    <xs:element ref="tns:ContextDescription" minOccurs = "1" maxOccurs = "1"/>
                    <xs:element ref="tns:Ancillary" minOccurs = "0" maxOccurs = "1"/>
                </xs:sequence>
            </xs:complexType>

            <xs:complexType name="Sourcedid.Type">
                <xs:annotation>
                    <xs:documentation>
                    </xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element ref="tns:SourceName" minOccurs = "1" maxOccurs = "1"/>
                    <xs:element ref="tns:SourceID" minOccurs = "1" maxOccurs = "1"/>
                </xs:sequence>
            </xs:complexType>

            <xs:complexType name="UserProfile.Type" abstract="true">
                <xs:annotation>
                    <xs:documentation>
                    </xs:documentation>
                </xs:annotation>
                <xs:sequence>
                </xs:sequence>
            </xs:complexType>

            <xs:complexType name="SimpleUserProfile.Type">
                <xs:annotation>
                    <xs:documentation>
                    </xs:documentation>
                </xs:annotation>
                <xs:complexContent>
                    <xs:extension base="tns:UserProfile.Type">
                        <xs:sequence>
                            <xs:element ref="tns:IMSSourcedid" minOccurs = "1" maxOccurs = "1"/>
                            <xs:element ref="tns:Userid" minOccurs = "1" maxOccurs = "1"/>
                            <xs:element ref="tns:FirstName" minOccurs = "1" maxOccurs = "1"/>
                            <xs:element ref="tns:LastName" minOccurs = "1" maxOccurs = "1"/>
                            <xs:element ref="tns:Ancillary" minOccurs = "0" maxOccurs = "1"/>
                        </xs:sequence>
                    </xs:extension>
                </xs:complexContent>
            </xs:complexType>

            <xs:complexType name="imsx_StatusInfo.Type">
                <xs:annotation>
                    <xs:documentation>
                    </xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element ref="tns:imsx_codeMajor" minOccurs = "1" maxOccurs = "1"/>
                    <xs:element ref="tns:imsx_severity" minOccurs = "1" maxOccurs = "1"/>
                    <xs:element ref="tns:imsx_messageRefIdentifier" minOccurs = "1" maxOccurs = "1"/>
                    <xs:element ref="tns:imsx_operationRefIdentifier" minOccurs = "0" maxOccurs = "unbounded"/>
                    <xs:element ref="tns:imsx_description" minOccurs = "0" maxOccurs = "1"/>
                    <xs:element ref="tns:imsx_codeMinor" minOccurs = "0" maxOccurs = "1"/>
                </xs:sequence>
            </xs:complexType>

            <xs:complexType name="imsx_CodeMinor.Type">
                <xs:annotation>
                    <xs:documentation>
                    </xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element ref="tns:imsx_codeMinorField" minOccurs = "1" maxOccurs = "unbounded"/>
                </xs:sequence>
            </xs:complexType>

            <xs:complexType name="imsx_CodeMinorField.Type">
                <xs:annotation>
                    <xs:documentation>
                    </xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element ref="tns:imsx_codeMinorFieldName" minOccurs = "1" maxOccurs = "1"/>
                    <xs:element ref="tns:imsx_codeMinorFieldValue" minOccurs = "1" maxOccurs = "1"/>
                </xs:sequence>
            </xs:complexType>

            <xs:complexType name="imsx_RequestHeaderInfo.Type">
                <xs:annotation>
                    <xs:documentation>
                    </xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element ref="tns:imsx_version" minOccurs = "0" maxOccurs = "1"/>
                    <xs:element ref="tns:imsx_messageIdentifier" minOccurs = "1" maxOccurs = "1"/>
                    <xs:element ref="tns:SecurityProfile" minOccurs = "0" maxOccurs = "1"/>
                </xs:sequence>
            </xs:complexType>

            <xs:complexType name="imsx_ResponseHeaderInfo.Type">
                <xs:annotation>
                    <xs:documentation>
                    </xs:documentation>
                </xs:annotation>
                <xs:sequence>
                    <xs:element ref="tns:imsx_version" minOccurs = "0" maxOccurs = "1"/>
                    <xs:element ref="tns:imsx_messageIdentifier" minOccurs = "1" maxOccurs = "1"/>
                    <xs:element ref="tns:imsx_statusInfo" minOccurs = "1" maxOccurs = "1"/>
                    <xs:element ref="tns:SecurityProfile" minOccurs = "0" maxOccurs = "1"/>
                </xs:sequence>
            </xs:complexType>

            <xs:complexType name="SharedSecretSecurityProfile.Type">
                <xs:annotation>
                    <xs:documentation>
                        There is a SOAPHeader extension that is required by the service.
                    </xs:documentation>
                </xs:annotation>
                <xs:complexContent>
                    <xs:extension base="tns:SecurityProfile.Type">
                        <xs:sequence>
                            <xs:element ref="tns:MAC" minOccurs = "1" maxOccurs = "1"/>
                        </xs:sequence>
                    </xs:extension>
                </xs:complexContent>
            </xs:complexType>

            <xs:complexType name="SecurityProfile.Type" abstract="true">
                <xs:annotation>
                    <xs:documentation>
                    </xs:documentation>
                </xs:annotation>
                <xs:sequence>
                </xs:sequence>
            </xs:complexType>

        <!-- =====================================  -->

        <!-- Generate the derived data-type elements **********************************************************  -->

        <!-- =====================================  -->

        <!-- Declaration of the elements **********************************************************************  -->

            <xs:element name="ProxyTool" type="tns:ProxyTool.Type"/>

            <xs:element name="TIR" type="tns:TIR.Type"/>

            <xs:element name="LaunchProfile" type="tns:LaunchProfile.Type"/>

            <xs:element name="DeliveryContextProfile" type="tns:DeliveryContextProfile.Type"/>

            <xs:element name="AcclipProfile" type="tns:AcclipProfile.Type"/>

            <xs:element name="UserProfile" type="tns:UserProfile.Type"/>

            <xs:element name="ProxyToolVersion" type="tns:Version.Type"/>

            <xs:element name="IMSTIVersion" type="tns:Version.Type"/>

            <xs:element name="LaunchService" type="tns:TIRServiceLocator.Type"/>

            <xs:element name="OutcomeService" type="tns:TIRServiceLocator.Type"/>

            <xs:element name="IMSSourcedid" type="tns:Sourcedid.Type"/>

            <xs:element name="imsx_codeMinor" type="tns:imsx_CodeMinor.Type"/>

            <xs:element name="imsx_codeMinorField" type="tns:imsx_CodeMinorField.Type"/>

            <xs:element name="SecurityProfile" type="tns:SecurityProfile.Type"/>

            <xs:element name="imsx_statusInfo" type="tns:imsx_StatusInfo.Type"/>

        <!-- =====================================  -->

        <!-- Declaration of the message parameter elements ****************************************************  -->

            <xs:element name="CoreSettings" type="tns:CoreSettings.Type"/>

            <xs:element name="ContextualSettings" type="tns:ContextualSettings.Type"/>

            <xs:element name="ToolSettings" type="tns:ToolSettings.Type"/>

            <xs:element name="LaunchDirective" type="tns:LaunchDirective.Type"/>

        <!-- =====================================  -->

        <!-- Declaration of the message body elements *********************************************************  -->

            <xs:element name="ProxyToolLaunchRequest">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element ref="tns:CoreSettings"/>
                        <xs:element ref="tns:ContextualSettings"/>
                        <xs:element ref="tns:ToolSettings"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>

            <xs:element name="ProxyToolLaunchResponse">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element ref="tns:LaunchDirective" minOccurs="0" maxOccurs="1"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>

        <!-- =====================================  -->

        <!-- Declaration of the root element(s) ***************************************************************  -->

            <xs:element name="imsx_syncRequestHeaderInfo" type="tns:imsx_RequestHeaderInfo.Type"/>
            <xs:element name="imsx_syncResponseHeaderInfo" type="tns:imsx_ResponseHeaderInfo.Type"/>

        <!-- =====================================  -->

        </xs:schema>
    </wsdl:types>
    <wsdl:message name="ProxyToolLaunchRequest">
        <wsdl:part name="Parameters" element="tns:ProxyToolLaunchRequest"/>
        <wsdl:part name="HeaderInfoParameters" element="tns:imsx_syncRequestHeaderInfo"/>
    </wsdl:message>
    <wsdl:message name="ProxyToolLaunchResponse">
        <wsdl:part name="Response" element="tns:ProxyToolLaunchResponse"/>
        <wsdl:part name="HeaderInfoResponse" element="tns:imsx_syncResponseHeaderInfo"/>
    </wsdl:message>
    <wsdl:portType name="TIRLaunchServiceSyncPortType">
        <wsdl:documentation>
            PortType Description
            --------------------
            This is the TIR Launch Service port.  There are two main components:
            
            1) ProxyTool Host - this performs all the functions related to the launch of the
            ProxyTool, including generating the relevant ProxyTool launch message and utilizing
            appropriate security profile;
            
            2) Tool - exposed as a web service that accepts launch messages from the LMS TIR,
            understands the security profile used therein and responds back to the LMS TIR using
            the ProxyTool core protocol as to the status of the launch.
        </wsdl:documentation>
        <wsdl:operation name="ProxyToolLaunch">
            <wsdl:input message="tns:ProxyToolLaunchRequest"/>
            <wsdl:output message="tns:ProxyToolLaunchResponse"/>
        </wsdl:operation>
    </wsdl:portType>
    <wsdl:binding name="TIRLaunchServiceSyncSoapBinding" type="tns:TIRLaunchServiceSyncPortType">
        <soap11:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
        <wsdl:operation name="ProxyToolLaunch">
            <soap11:operation soapAction="http://www.imsglobal.org/soap/ti/ProxyToolLaunch" style="document"/>
            <wsdl:input>
                <soap11:body use="literal" parts="Parameters"/>
                <soap11:header message="tns:ProxyToolLaunchRequest" part="HeaderInfoParameters" use="literal" wsdl:required="true"/>
            </wsdl:input>
            <wsdl:output>
                <soap11:body use="literal" parts="Response"/>
                <soap11:header message="tns:ProxyToolLaunchResponse" part="HeaderInfoResponse" use="literal" wsdl:required="true"/>
            </wsdl:output>
        </wsdl:operation>
    </wsdl:binding>
    <wsdl:service name="TIRLaunchSyncService">
        <wsdl:port name="TIRLaunchServiceSyncSoapPort" binding="tns:TIRLaunchServiceSyncSoapBinding">
            <soap11:address location="http://someschool.edu/TIRLaunchServiceSyncSoap/"/>
        </wsdl:port>
    </wsdl:service>
</wsdl:definitions>
