<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://www.iicmva.com/CoverageVerification/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" targetNamespace="http://www.iicmva.com/CoverageVerification/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:types>
    <s:schema elementFormDefault="qualified" targetNamespace="http://www.iicmva.com/CoverageVerification/">
      <s:element name="CoverageRequest">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="RequestorInformation" type="tns:RequestorInformationModule" />
            <s:element minOccurs="0" maxOccurs="1" name="Detail" type="tns:CoverageRequestDetail" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="RequestorInformationModule">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Individual" type="tns:IndividualBlock2" />
          <s:element minOccurs="0" maxOccurs="1" name="Organization" type="tns:OrganizationBlock3" />
          <s:element minOccurs="0" maxOccurs="1" name="ReasonDetails" type="tns:DocumentDetailBlock2" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="IndividualBlock2">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="ParsedName" type="tns:IndividualNameComponent2" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="IndividualNameComponent2">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Prefix" type="tns:NameText2" />
          <s:element minOccurs="0" maxOccurs="1" name="GivenName" type="tns:NameText4" />
          <s:element minOccurs="0" maxOccurs="1" name="MiddleName" type="tns:NameText5" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="Surname" type="tns:NameText6" />
          <s:element minOccurs="0" maxOccurs="1" name="Suffix" type="tns:NameText2" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="NameText2">
        <s:simpleContent>
          <s:extension base="s:string" />
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="NameText4">
        <s:simpleContent>
          <s:extension base="s:string" />
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="NameText5">
        <s:simpleContent>
          <s:extension base="s:string" />
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="NameText6">
        <s:simpleContent>
          <s:extension base="s:string" />
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="OrganizationBlock3">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Name" type="tns:NameText1" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="NameText1">
        <s:simpleContent>
          <s:extension base="s:string" />
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="DocumentDetailBlock2">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="ReasonCode" type="tns:ReasonCode1" />
          <s:element minOccurs="0" maxOccurs="1" name="TrackingNumber" type="tns:ResourceIdentifier12" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ReasonCode1">
        <s:simpleContent>
          <s:extension base="s:token">
            <s:attribute name="ListAgencyIdentifier" type="s:string" />
            <s:attribute name="ListAgencyNameText" type="s:string" />
            <s:attribute name="ListNameText" type="s:string" />
            <s:attribute name="ListIdentifier" type="s:string" />
            <s:attribute name="ListSchemeURI" type="s:string" />
            <s:attribute name="ListURI" type="s:string" />
            <s:attribute name="ListVersionIdentifier" type="s:string" />
            <s:attribute name="NameText" type="s:string" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="ResourceIdentifier12">
        <s:simpleContent>
          <s:extension base="s:token">
            <s:attribute name="IdSchemeAgencyIdentifier" type="s:string" />
            <s:attribute name="IdSchemeAgencyNameText" type="s:string" />
            <s:attribute name="IdSchemeIdentifier" type="s:string" />
            <s:attribute name="IdSchemeNameText" type="s:string" />
            <s:attribute name="IdSchemeURI" type="s:string" />
            <s:attribute name="IdSchemeVersionIdentifier" type="s:string" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="CoverageRequestDetail">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="PolicyInformation" type="tns:CoveragePolicyRequestModule" />
          <s:element minOccurs="0" maxOccurs="1" name="InsuredInformation" type="tns:InsuredModule" />
          <s:element minOccurs="0" maxOccurs="1" name="VehicleInformation" type="tns:RiskInformationModule" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="CoveragePolicyRequestModule">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="OrganizationDetails" type="tns:OrganizationBlock4" />
          <s:element minOccurs="0" maxOccurs="1" name="PolicyDetails" type="tns:DocumentDetailBlock3" />
          <s:element minOccurs="0" maxOccurs="1" name="BodilyInjuryCoverage" type="tns:AmountBlock1" />
          <s:element minOccurs="0" maxOccurs="1" name="PropertyDamageCoverage" type="tns:AmountBlock1" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="OrganizationBlock4">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="NAIC" type="tns:PartyIdentifier18" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="PartyIdentifier18">
        <s:simpleContent>
          <s:extension base="s:token">
            <s:attribute name="IdSchemeAgencyIdentifier" type="s:string" />
            <s:attribute name="IdSchemeAgencyNameText" type="s:string" />
            <s:attribute name="IdSchemeIdentifier" type="s:string" />
            <s:attribute name="IdSchemeNameText" type="s:string" />
            <s:attribute name="IdSchemeURI" type="s:string" />
            <s:attribute name="IdSchemeVersionIdentifier" type="s:string" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="DocumentDetailBlock3">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="VerificationDate" type="tns:DateTime1" />
          <s:element minOccurs="0" maxOccurs="1" name="UniqueKey" type="tns:ResourceIdentifier12" />
          <s:element minOccurs="0" maxOccurs="1" name="PolicyState" type="tns:ResourceIdentifier14" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="DateTime1">
        <s:simpleContent>
          <s:extension base="s:dateTime">
            <s:attribute name="FormatText" type="s:string" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="ResourceIdentifier14">
        <s:simpleContent>
          <s:extension base="s:token">
            <s:attribute name="IdSchemeAgencyIdentifier" type="s:string" />
            <s:attribute name="IdSchemeAgencyNameText" type="s:string" />
            <s:attribute name="IdSchemeIdentifier" type="s:string" />
            <s:attribute name="IdSchemeNameText" type="s:string" />
            <s:attribute name="IdSchemeURI" type="s:string" />
            <s:attribute name="IdSchemeVersionIdentifier" type="s:string" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="AmountBlock1">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="TypeofLimit" type="tns:ResourceCode9" />
          <s:element minOccurs="0" maxOccurs="1" name="CoverageAmount" type="tns:Amount1" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ResourceCode9">
        <s:simpleContent>
          <s:extension base="s:token">
            <s:attribute name="ListAgencyIdentifier" type="s:string" />
            <s:attribute name="ListAgencyNameText" type="s:string" />
            <s:attribute name="ListNameText" type="s:string" />
            <s:attribute name="ListIdentifier" type="s:string" />
            <s:attribute name="ListSchemeURI" type="s:string" />
            <s:attribute name="ListURI" type="s:string" />
            <s:attribute name="ListVersionIdentifier" type="s:string" />
            <s:attribute name="NameText" type="s:string" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="Amount1">
        <s:simpleContent>
          <s:extension base="s:decimal">
            <s:attribute name="currencyidentifier" type="s:string" />
            <s:attribute name="CurrencyCodeListVersionIdentifier" type="s:string" />
            <s:attribute name="CurrencyCodeList" type="s:string" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="InsuredModule">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="PrimaryNameInformation" type="tns:IndividualBlock3" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="AdditionalNamesInformation" type="tns:IndividualBlock3" />
          <s:element minOccurs="0" maxOccurs="1" name="Address" type="tns:AddresslBlock1" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="IndividualBlock3">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="ParsedName" type="tns:IndividualNameComponent2" />
          <s:element minOccurs="0" maxOccurs="1" name="Name" type="tns:NameText1" />
          <s:element minOccurs="0" maxOccurs="1" name="SocialSecurityNumber" type="tns:PartyIdentifier9" />
          <s:element minOccurs="0" maxOccurs="1" name="DriversLicense" type="tns:PartyIdentifier8" />
          <s:element minOccurs="0" maxOccurs="1" name="FEIN" type="tns:PartyIdentifier8" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="PartyIdentifier9">
        <s:simpleContent>
          <s:extension base="s:token">
            <s:attribute name="IdSchemeAgencyIdentifier" type="s:string" />
            <s:attribute name="IdSchemeAgencyNameText" type="s:string" />
            <s:attribute name="IdSchemeIdentifier" type="s:string" />
            <s:attribute name="IdSchemeNameText" type="s:string" />
            <s:attribute name="IdSchemeURI" type="s:string" />
            <s:attribute name="IdSchemeVersionIdentifier" type="s:string" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="PartyIdentifier8">
        <s:simpleContent>
          <s:extension base="s:token">
            <s:attribute name="IdSchemeAgencyIdentifier" type="s:string" />
            <s:attribute name="IdSchemeAgencyNameText" type="s:string" />
            <s:attribute name="IdSchemeIdentifier" type="s:string" />
            <s:attribute name="IdSchemeNameText" type="s:string" />
            <s:attribute name="IdSchemeURI" type="s:string" />
            <s:attribute name="IdSchemeVersionIdentifier" type="s:string" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="AddresslBlock1">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="StreetAddress" type="tns:LocationText9" />
          <s:element minOccurs="0" maxOccurs="1" name="SubsiteAddress" type="tns:SubsiteAddressComponent1" />
          <s:element minOccurs="0" maxOccurs="1" name="City" type="tns:LocationText1" />
          <s:element minOccurs="0" maxOccurs="1" name="CountrySubdivision" type="tns:LocationCode2" />
          <s:element minOccurs="0" maxOccurs="1" name="PostalCode" type="tns:LocationIdentifier1" />
          <s:element minOccurs="0" maxOccurs="1" name="Country" type="tns:LocationCode3" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="LocationText9">
        <s:simpleContent>
          <s:extension base="s:string" />
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="SubsiteAddressComponent1">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Apartment" type="tns:LocationText2" />
          <s:element minOccurs="0" maxOccurs="1" name="Building" type="tns:LocationText7" />
          <s:element minOccurs="0" maxOccurs="1" name="Department" type="tns:LocationText7" />
          <s:element minOccurs="0" maxOccurs="1" name="Floor" type="tns:LocationText2" />
          <s:element minOccurs="0" maxOccurs="1" name="Room" type="tns:LocationText2" />
          <s:element minOccurs="0" maxOccurs="1" name="Suite" type="tns:LocationText2" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="LocationText2">
        <s:simpleContent>
          <s:extension base="s:string" />
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="LocationText7">
        <s:simpleContent>
          <s:extension base="s:string" />
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="LocationText1">
        <s:simpleContent>
          <s:extension base="s:string" />
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="LocationCode2">
        <s:simpleContent>
          <s:extension base="s:token">
            <s:attribute name="ListAgencyIdentifier" type="s:string" />
            <s:attribute name="ListAgencyNameText" type="s:string" />
            <s:attribute name="ListNameText" type="s:string" />
            <s:attribute name="ListIdentifier" type="s:string" />
            <s:attribute name="ListSchemeURI" type="s:string" />
            <s:attribute name="ListURI" type="s:string" />
            <s:attribute name="ListVersionIdentifier" type="s:string" />
            <s:attribute name="NameText" type="s:string" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="LocationIdentifier1">
        <s:simpleContent>
          <s:extension base="s:token">
            <s:attribute name="IdSchemeAgencyIdentifier" type="s:string" />
            <s:attribute name="IdSchemeAgencyNameText" type="s:string" />
            <s:attribute name="IdSchemeIdentifier" type="s:string" />
            <s:attribute name="IdSchemeNameText" type="s:string" />
            <s:attribute name="IdSchemeURI" type="s:string" />
            <s:attribute name="IdSchemeVersionIdentifier" type="s:string" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="LocationCode3">
        <s:simpleContent>
          <s:extension base="s:token">
            <s:attribute name="ListAgencyIdentifier" type="s:string" />
            <s:attribute name="ListAgencyNameText" type="s:string" />
            <s:attribute name="ListNameText" type="s:string" />
            <s:attribute name="ListIdentifier" type="s:string" />
            <s:attribute name="ListSchemeURI" type="s:string" />
            <s:attribute name="ListURI" type="s:string" />
            <s:attribute name="ListVersionIdentifier" type="s:string" />
            <s:attribute name="NameText" type="s:string" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="RiskInformationModule">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="VehicleDetails" type="tns:ResourceIdentificationBlock1" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ResourceIdentificationBlock1">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="VIN" type="tns:ResourceIdentifier11" />
          <s:element minOccurs="0" maxOccurs="1" name="Make" type="tns:ResourceIdentifier12" />
          <s:element minOccurs="0" maxOccurs="1" name="Model" type="tns:ResourceIdentifier12" />
          <s:element minOccurs="0" maxOccurs="1" name="Year" type="tns:DateTimeText2" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ResourceIdentifier11">
        <s:simpleContent>
          <s:extension base="s:token">
            <s:attribute name="IdSchemeAgencyIdentifier" type="s:string" />
            <s:attribute name="IdSchemeAgencyNameText" type="s:string" />
            <s:attribute name="IdSchemeIdentifier" type="s:string" />
            <s:attribute name="IdSchemeNameText" type="s:string" />
            <s:attribute name="IdSchemeURI" type="s:string" />
            <s:attribute name="IdSchemeVersionIdentifier" type="s:string" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="DateTimeText2">
        <s:simpleContent>
          <s:extension base="s:string" />
        </s:simpleContent>
      </s:complexType>
      <s:element name="CoverageResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="unbounded" name="Detail" type="tns:CoverageResponseDetail" />
            <s:element minOccurs="0" maxOccurs="1" name="RequestorInformation" type="tns:RequestorInformationModule" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="CoverageResponseDetail">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="PolicyInformation" type="tns:CoveragePolicyResponseModule" />
          <s:element minOccurs="0" maxOccurs="1" name="InsuredInformation" type="tns:InsuredModule" />
          <s:element minOccurs="0" maxOccurs="1" name="VehicleInformation" type="tns:RiskInformationModule" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="CoveragePolicyResponseModule">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="CoverageStatus" type="tns:StatusInformationBlock4" />
          <s:element minOccurs="0" maxOccurs="1" name="OrganizationDetails" type="tns:OrganizationBlock4" />
          <s:element minOccurs="0" maxOccurs="1" name="PolicyDetails" type="tns:DocumentDetailBlock3" />
          <s:element minOccurs="0" maxOccurs="1" name="BodilyInjuryCoverage" type="tns:AmountBlock1" />
          <s:element minOccurs="0" maxOccurs="1" name="PropertyDamageCoverage" type="tns:AmountBlock1" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="StatusInformationBlock4">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="ResponseDetails" type="tns:ParsedStatusComponent3" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ParsedStatusComponent3">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="ResponseCode" type="tns:EventCode7" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="UnconfirmedReasonCode" type="tns:EventCode8" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="EventCode7">
        <s:simpleContent>
          <s:extension base="s:token">
            <s:attribute name="ListAgencyIdentifier" type="s:string" />
            <s:attribute name="ListAgencyNameText" type="s:string" />
            <s:attribute name="ListNameText" type="s:string" />
            <s:attribute name="ListIdentifier" type="s:string" />
            <s:attribute name="ListSchemeURI" type="s:string" />
            <s:attribute name="ListURI" type="s:string" />
            <s:attribute name="ListVersionIdentifier" type="s:string" />
            <s:attribute name="NameText" type="s:string" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="EventCode8">
        <s:simpleContent>
          <s:extension base="s:token">
            <s:attribute name="ListAgencyIdentifier" type="s:string" />
            <s:attribute name="ListAgencyNameText" type="s:string" />
            <s:attribute name="ListNameText" type="s:string" />
            <s:attribute name="ListIdentifier" type="s:string" />
            <s:attribute name="ListSchemeURI" type="s:string" />
            <s:attribute name="ListURI" type="s:string" />
            <s:attribute name="ListVersionIdentifier" type="s:string" />
            <s:attribute name="NameText" type="s:string" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
    </s:schema>
  </wsdl:types>
  <wsdl:message name="VerifyInsuranceSoapIn">
    <wsdl:part name="parameters" element="tns:CoverageRequest" />
  </wsdl:message>
  <wsdl:message name="VerifyInsuranceSoapOut">
    <wsdl:part name="parameters" element="tns:CoverageResponse" />
  </wsdl:message>
  <wsdl:portType name="VerifyServiceSoap">
    <wsdl:operation name="VerifyInsurance">
      <wsdl:input message="tns:VerifyInsuranceSoapIn" />
      <wsdl:output message="tns:VerifyInsuranceSoapOut" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="VerifyServiceSoap" type="tns:VerifyServiceSoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
    <wsdl:operation name="VerifyInsurance">
      <soap:operation soapAction="http://tempuri.org/VerifyInsurance" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="VerifyService">
    <documentation xmlns="http://schemas.xmlsoap.org/wsdl/" />
    <wsdl:port name="VerifyServiceSoap" binding="tns:VerifyServiceSoap">
      <soap:address location="http://localhost/path/VerifyService.asmx" />
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>