<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://titanportalws.gov/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" targetNamespace="http://titanportalws.gov/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:types>
    <s:schema elementFormDefault="qualified" targetNamespace="http://titanportalws.gov/">
      <s:element name="Login">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="UserName" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="Password" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="LoginResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="LoginResult" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="SubmitReport">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="LoginToken" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="XMLReport" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="SubmitReportResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="SubmitReportResult" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="SubmitNewReport">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="LoginToken" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="XMLReport" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="SubmitNewReportResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="SubmitNewReportResult" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="Logout">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="LoginToken" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="LogoutResponse">
        <s:complexType />
      </s:element>
      <s:element name="GetDocumentList">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="Token" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="MRN" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetDocumentListResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetDocumentListResult" type="tns:DocumentList" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="DocumentList">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="DocIdList" type="tns:ArrayOfString" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfString">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:element name="GetDocument">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="Token" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="DocId" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetDocumentResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetDocumentResult" type="tns:Document" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="Document">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="MimeType" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="FileName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="DocType" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="DocId" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="FileData" type="s:base64Binary" />
          <s:element minOccurs="0" maxOccurs="1" name="MRN" type="s:string" />
        </s:sequence>
      </s:complexType>
    </s:schema>
  </wsdl:types>
  <wsdl:message name="LoginSoapIn">
    <wsdl:part name="parameters" element="tns:Login" />
  </wsdl:message>
  <wsdl:message name="LoginSoapOut">
    <wsdl:part name="parameters" element="tns:LoginResponse" />
  </wsdl:message>
  <wsdl:message name="SubmitReportSoapIn">
    <wsdl:part name="parameters" element="tns:SubmitReport" />
  </wsdl:message>
  <wsdl:message name="SubmitReportSoapOut">
    <wsdl:part name="parameters" element="tns:SubmitReportResponse" />
  </wsdl:message>
  <wsdl:message name="SubmitNewReportSoapIn">
    <wsdl:part name="parameters" element="tns:SubmitNewReport" />
  </wsdl:message>
  <wsdl:message name="SubmitNewReportSoapOut">
    <wsdl:part name="parameters" element="tns:SubmitNewReportResponse" />
  </wsdl:message>
  <wsdl:message name="LogoutSoapIn">
    <wsdl:part name="parameters" element="tns:Logout" />
  </wsdl:message>
  <wsdl:message name="LogoutSoapOut">
    <wsdl:part name="parameters" element="tns:LogoutResponse" />
  </wsdl:message>
  <wsdl:message name="GetDocumentListSoapIn">
    <wsdl:part name="parameters" element="tns:GetDocumentList" />
  </wsdl:message>
  <wsdl:message name="GetDocumentListSoapOut">
    <wsdl:part name="parameters" element="tns:GetDocumentListResponse" />
  </wsdl:message>
  <wsdl:message name="GetDocumentSoapIn">
    <wsdl:part name="parameters" element="tns:GetDocument" />
  </wsdl:message>
  <wsdl:message name="GetDocumentSoapOut">
    <wsdl:part name="parameters" element="tns:GetDocumentResponse" />
  </wsdl:message>
  <wsdl:portType name="ServiceSoap">
    <wsdl:operation name="Login">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Returns a valid Login Token otherwise a description of the failure, (100 - Invalid Username, 101 - Invalid Password, 102 - Account Disabled)</wsdl:documentation>
      <wsdl:input message="tns:LoginSoapIn" />
      <wsdl:output message="tns:LoginSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="SubmitReport">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Submit an individual report.</wsdl:documentation>
      <wsdl:input message="tns:SubmitReportSoapIn" />
      <wsdl:output message="tns:SubmitReportSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="SubmitNewReport">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Submit an individual report with updated Rules.</wsdl:documentation>
      <wsdl:input message="tns:SubmitNewReportSoapIn" />
      <wsdl:output message="tns:SubmitNewReportSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="Logout">
      <wsdl:input message="tns:LogoutSoapIn" />
      <wsdl:output message="tns:LogoutSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="GetDocumentList">
      <wsdl:input message="tns:GetDocumentListSoapIn" />
      <wsdl:output message="tns:GetDocumentListSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="GetDocument">
      <wsdl:input message="tns:GetDocumentSoapIn" />
      <wsdl:output message="tns:GetDocumentSoapOut" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="ServiceSoap" type="tns:ServiceSoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="Login">
      <soap:operation soapAction="http://titanportalws.gov/Login" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="SubmitReport">
      <soap:operation soapAction="http://titanportalws.gov/SubmitReport" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="SubmitNewReport">
      <soap:operation soapAction="http://titanportalws.gov/SubmitNewReport" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="Logout">
      <soap:operation soapAction="http://titanportalws.gov/Logout" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetDocumentList">
      <soap:operation soapAction="http://titanportalws.gov/GetDocumentList" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetDocument">
      <soap:operation soapAction="http://titanportalws.gov/GetDocument" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="ServiceSoap12" type="tns:ServiceSoap">
    <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="Login">
      <soap12:operation soapAction="http://titanportalws.gov/Login" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="SubmitReport">
      <soap12:operation soapAction="http://titanportalws.gov/SubmitReport" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="SubmitNewReport">
      <soap12:operation soapAction="http://titanportalws.gov/SubmitNewReport" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="Logout">
      <soap12:operation soapAction="http://titanportalws.gov/Logout" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetDocumentList">
      <soap12:operation soapAction="http://titanportalws.gov/GetDocumentList" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetDocument">
      <soap12:operation soapAction="http://titanportalws.gov/GetDocument" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="Service">
    <wsdl:port name="ServiceSoap" binding="tns:ServiceSoap">
      <soap:address location="https://titanportal.safety.tn.gov/titanportalws.asmx" />
    </wsdl:port>
    <wsdl:port name="ServiceSoap12" binding="tns:ServiceSoap12">
      <soap12:address location="https://titanportal.safety.tn.gov/titanportalws.asmx" />
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>