RDMessage.xsd 68.9 KB
Newer Older
         <xsd:element name="point" type="GA_Point"/>
         <xsd:element name="pointWithUnCertainty" type="GA_PointWithUnCertainty"/>
         <xsd:element name="polygon" type="GA_Polygon"/>
         <xsd:any namespace="##other" processContents="lax"/>
      </xsd:choice>
   </xsd:complexType>

   <xsd:complexType name="Location">
      <xsd:sequence>
         <xsd:element name="e164_Number" minOccurs="0">
            <xsd:simpleType>
               <xsd:restriction base="xsd:hexBinary">
                  <xsd:minLength value="1"/>
                  <xsd:maxLength value="25"/>
               </xsd:restriction>
            </xsd:simpleType>
         </xsd:element>
         <xsd:element name="globalCellID" minOccurs="0">
            <xsd:simpleType>
               <xsd:restriction base="xsd:hexBinary">
                  <xsd:minLength value="5"/>
                  <xsd:maxLength value="7"/>
               </xsd:restriction>
            </xsd:simpleType>
         </xsd:element>
         <xsd:element name="rAI" minOccurs="0">
            <xsd:simpleType>
               <xsd:restriction base="xsd:hexBinary">
                  <xsd:length value="6"/>
               </xsd:restriction>
            </xsd:simpleType>
         </xsd:element>
         <xsd:element name="gsmLocation" minOccurs="0" type="GSMLocation"/>
         <xsd:element name="umtsLocation" minOccurs="0" type="UMTSLocation"/>
         <xsd:element name="sAI" minOccurs="0">
            <xsd:simpleType>
               <xsd:restriction base="xsd:hexBinary">
                  <xsd:length value="7"/>
               </xsd:restriction>
            </xsd:simpleType>
         </xsd:element>
         <xsd:element name="oldRAI" minOccurs="0">
            <xsd:simpleType>
               <xsd:restriction base="xsd:hexBinary">
                  <xsd:length value="6"/>
               </xsd:restriction>
            </xsd:simpleType>
         </xsd:element>
         <xsd:element name="postalLocation" minOccurs="0" type="AddressInformation"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="TelephonyNetworkElement">
      <xsd:sequence>
         <xsd:element name="telephonyNetworkID" minOccurs="0" type="TelephonyNetworkID"/>
         <xsd:element name="cellInformation" minOccurs="0" type="Location"/>
		 <xsd:element name="validity" minOccurs="0" type="TimeSpan"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="TelephonyRecord">
      <xsd:choice>
         <xsd:element name="telephonySubscriber" type="TelephonySubscriber"/>
         <xsd:element name="telephonyBillingDetails" type="TelephonyBillingDetails"/>
         <xsd:element name="telephonyServiceUsage" type="TelephonyServiceUsage"/>
         <xsd:element name="telephonyDevice" type="TelephonyDevice"/>
         <xsd:element name="telephonyNetworkElement" type="TelephonyNetworkElement"/>
         <xsd:any namespace="##other" processContents="lax"/>
      </xsd:choice>
   </xsd:complexType>

   <xsd:complexType name="MsgStore">
      <xsd:sequence>
         <xsd:element name="validity" minOccurs="0" type="TimeSpan"/>
         <xsd:element name="msgStoreID" minOccurs="0" type="MsgStoreID"/>
         <xsd:element name="aliases" minOccurs="0">
            <xsd:complexType>
               <xsd:sequence minOccurs="0" maxOccurs="unbounded">
                  <xsd:element name="MsgAddress" type="MsgAddress"/>
               </xsd:sequence>
            </xsd:complexType>
         <xsd:element name="providerID" minOccurs="0" type="MsgProviderID"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="MsgSubscriber">
      <xsd:sequence>
         <xsd:element name="validity" minOccurs="0" type="TimeSpan"/>
         <xsd:element name="subscriberID" minOccurs="0" type="MsgSubscriberID"/>
         <xsd:element name="msgStores" minOccurs="0">
            <xsd:complexType>
               <xsd:sequence minOccurs="0" maxOccurs="unbounded">
                  <xsd:element name="MsgStore" type="MsgStore"/>
               </xsd:sequence>
            </xsd:complexType>
         </xsd:element>
         <xsd:element name="subscriber" minOccurs="0" type="GenericSubscriberInfo"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:simpleType name="MessageID">
      <xsd:restriction base="xsd:string"/>
   </xsd:simpleType>
   
   <xsd:complexType name="MsgTransmission">
      <xsd:sequence>
         <xsd:element name="dateTime" minOccurs="0" type="GeneralizedTime"/>
         <xsd:element name="subscriberID" minOccurs="0" type="MsgSubscriberID"/>
         <xsd:element name="senderAddress" minOccurs="0" type="MsgAddress"/>
         <xsd:element name="recipients" minOccurs="0">
            <xsd:complexType>
               <xsd:sequence minOccurs="0" maxOccurs="unbounded">
                  <xsd:element name="MsgAddress" type="MsgAddress"/>
               </xsd:sequence>
            </xsd:complexType>
         </xsd:element>
         <xsd:element name="msgStores" minOccurs="0">
            <xsd:complexType>
               <xsd:sequence minOccurs="0" maxOccurs="unbounded">
                  <xsd:element name="MsgStoreID" type="MsgStoreID"/>
               </xsd:sequence>
            </xsd:complexType>
         </xsd:element>
         <xsd:element name="deliveryStatus" minOccurs="0">
            <xsd:complexType>
               <xsd:choice>
                  <xsd:element name="unknown" type="NULL" minOccurs="0"/>
				  <xsd:element name="succeeded" type="NULL" minOccurs="0"/>
				  <xsd:element name="failed" type="NULL" minOccurs="0"/>
				  <xsd:element name="retried" type="NULL" minOccurs="0"/>
               </xsd:choice>
            </xsd:complexType>
         </xsd:element>
         <xsd:element name="protocol" minOccurs="0">
            <xsd:complexType>
               <xsd:choice>
                  <xsd:element name="smtp" type="NULL" minOccurs="0"/>
				  <xsd:element name="x400" type="NULL" minOccurs="0"/>
               </xsd:choice>
            </xsd:complexType>
         </xsd:element>
         <xsd:element name="clientID" minOccurs="0" type="IPAddress"/>
         <xsd:element name="serverID" minOccurs="0" type="IPAddress"/>
		 <xsd:element name="messageID" minOccurs="0" type="MessageID"/>
		 <xsd:element name="sourceServerName" minOccurs="0" type="xsd:string"/>
		 <xsd:element name="destinationServerName" minOccurs="0" type="xsd:string"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="MsgStoreOperation">
      <xsd:sequence>
         <xsd:element name="dateTime" minOccurs="0" type="GeneralizedTime"/>
		 <xsd:element name="subscriberID" minOccurs="0" type="MsgSubscriberID"/>
		 <xsd:element name="msgStore" minOccurs="0" type="MsgStoreID"/>
         <xsd:element name="operation" minOccurs="0">
            <xsd:complexType>
               <xsd:choice>
                  <xsd:element name="connect" type="NULL" minOccurs="0"/>
				  <xsd:element name="disconnect" type="NULL" minOccurs="0"/>
				  <xsd:element name="retrieveMsg" type="NULL" minOccurs="0"/>
				  <xsd:element name="partialretrieveMsg" type="NULL" minOccurs="0"/>
				  <xsd:element name="deleteMsg" type="NULL" minOccurs="0"/>
				  <xsd:element name="addMsg" type="NULL" minOccurs="0"/>
				  <xsd:element name="editMsg" type="NULL" minOccurs="0"/>
               </xsd:choice>
            </xsd:complexType>
         </xsd:element>
         <xsd:element name="senderAddress" minOccurs="0" type="MsgAddress"/>
         <xsd:element name="recipients" minOccurs="0">
            <xsd:complexType>
               <xsd:sequence minOccurs="0" maxOccurs="unbounded">
                  <xsd:element name="MsgAddress" type="MsgAddress"/>
               </xsd:sequence>
            </xsd:complexType>
         </xsd:element>         
         <xsd:element name="protocol" minOccurs="0">
            <xsd:complexType>
               <xsd:choice>
                  <xsd:element name="pop" type="NULL" minOccurs="0"/>
				  <xsd:element name="imap" type="NULL" minOccurs="0"/>
				  <xsd:element name="webmail" type="NULL" minOccurs="0"/>
               </xsd:choice>
            </xsd:complexType>
         </xsd:element>
		 <xsd:element name="clientID" minOccurs="0" type="IPAddress"/>
		 <xsd:element name="serverID" minOccurs="0" type="IPAddress"/>
		 <xsd:element name="messageID" minOccurs="0" type="MessageID"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="MsgServiceUsage">
      <xsd:choice>
         <xsd:element name="msgTransmission" type="MsgTransmission"/>
         <xsd:element name="msgStoreOperation" type="MsgStoreOperation"/>
         <xsd:any namespace="##other" processContents="lax"/>
      </xsd:choice>
   </xsd:complexType>

   <xsd:complexType name="MessageRecord">
      <xsd:choice>
         <xsd:element name="msgSubscriber" type="MsgSubscriber"/>
         <xsd:element name="msgServiceUsage" type="MsgServiceUsage"/>
         <xsd:any namespace="##other" processContents="lax"/>
      </xsd:choice>
   </xsd:complexType>

   <xsd:complexType name="NAServiceSubscription">
      <xsd:sequence>
         <xsd:element name="validity" minOccurs="0" type="TimeSpan"/>
         <xsd:element name="naServiceID" minOccurs="0" type="xsd:string"/>
         <xsd:element name="naProviderID" minOccurs="0" type="NAProviderID"/>
         <xsd:element name="naAuthID" minOccurs="0" type="NAAuthID"/>
         <xsd:element name="options" minOccurs="0" type="xsd:string"/>
		 <xsd:element name="installationAddress" minOccurs="0" type="AddressInformation"/>
		 <xsd:element name="fixIpAddress" minOccurs="0" type="IPAddress"/>
		 <xsd:element name="imsi" minOccurs="0" type="IMSI"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:complexType name="NASubscriber">
      <xsd:sequence>
         <xsd:element name="validity" minOccurs="0" type="TimeSpan"/>
         <xsd:element name="subscriberID" minOccurs="0" type="NaSubscriberID"/>
         <xsd:element name="naSubscriptions" minOccurs="0">
            <xsd:complexType>
               <xsd:sequence minOccurs="0" maxOccurs="unbounded">
                  <xsd:element name="NAServiceSubscription" type="NAServiceSubscription"/>
               </xsd:sequence>
            </xsd:complexType>
         </xsd:element>
         <xsd:element name="allocatedDeviceIDs" minOccurs="0">
            <xsd:complexType>
               <xsd:sequence minOccurs="0" maxOccurs="unbounded">
                  <xsd:element name="NADeviceId" type="NADeviceId"/>
               </xsd:sequence>
            </xsd:complexType>
         </xsd:element>
         <xsd:element name="subscriber" minOccurs="0" type="GenericSubscriberInfo"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="NAAssignedAddress">
      <xsd:sequence>
         <xsd:element name="addressSetOrRangeOrMask" minOccurs="0" type="IPAddressSetOrRangeOrMask"/>
         <xsd:element name="portNumber" minOccurs="0" type="xsd:integer"/>
         <xsd:element name="addressType" minOccurs="0">
            <xsd:complexType>
               <xsd:choice>
                  <xsd:element name="unknown" type="NULL" minOccurs="0"/>
				  <xsd:element name="internal" type="NULL" minOccurs="0"/>
				  <xsd:element name="external" type="NULL" minOccurs="0"/>
               </xsd:choice>
            </xsd:complexType>
         </xsd:element>
         <xsd:element name="assignedTime" minOccurs="0" type="TimeSpan"/>
		 <xsd:element name="destinationAddress" minOccurs="0" type="IPAddress"/>
		 <xsd:element name="destinationPort" minOccurs="0" type="xsd:integer"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="DialUpInformation">
      <xsd:sequence>
         <xsd:element name="diallingNumber" minOccurs="0" type="PartyNumber"/>
         <xsd:element name="dialledNumber" minOccurs="0" type="PartyNumber"/>
         <xsd:element name="callback" minOccurs="0" type="PartyNumber"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="GPRSEvent">
      <xsd:choice>
         <xsd:element name="pDPContextActivation" type="NULL" minOccurs="0"/>
         <xsd:element name="pDPContextDeactivation" type="NULL" minOccurs="0"/>
         <xsd:element name="gPRSAttach" type="NULL" minOccurs="0"/>
         <xsd:element name="gPRSDetach" type="NULL" minOccurs="0"/>
         <xsd:element name="locationInfoUpdate" type="NULL" minOccurs="0"/>
         <xsd:element name="pDPContextModification" type="NULL" minOccurs="0"/>
		 <xsd:element name="servingSystem" type="NULL" minOccurs="0"/>
      </xsd:choice>
   </xsd:complexType>
   
   <xsd:complexType name="GprsInformation">
      <xsd:sequence>
         <xsd:element name="iMSI" minOccurs="0" type="IMSI"/>
         <xsd:element name="mSISDN" minOccurs="0" type="PartyNumber"/>
         <xsd:element name="sgsnAddress" minOccurs="0">
            <xsd:complexType>
               <xsd:sequence minOccurs="0" maxOccurs="unbounded">
                  <xsd:element name="IPAddress" type="IPAddress"/>
               </xsd:sequence>
            </xsd:complexType>
         </xsd:element>
         <xsd:element name="ggsnAddress" minOccurs="0" type="IPAddress"/>
         <xsd:element name="pDP_address_allocated" minOccurs="0" type="IPAddress"/>
         <xsd:element name="aPN" minOccurs="0" type="xsd:string"/>
         <xsd:element name="pDP_type" minOccurs="0">
            <xsd:simpleType>
               <xsd:restriction base="xsd:hexBinary">
                  <xsd:length value="2"/>
               </xsd:restriction>
            </xsd:simpleType>
         </xsd:element>
         <xsd:element name="gPRSEvent" minOccurs="0" type="GPRSEvent"/>		 
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="NAServiceUsage">
      <xsd:sequence>
         <xsd:element name="naAccessTime" minOccurs="0" type="GeneralizedTime"/>
         <xsd:element name="naAuthID" minOccurs="0" type="NAAuthID"/>
         <xsd:element name="nwAccessType" minOccurs="0" type="NwAccessType"/>
         <xsd:element name="naStatus" minOccurs="0">
            <xsd:complexType>
               <xsd:choice>
                  <xsd:element name="unknown" type="NULL" minOccurs="0"/>
				  <xsd:element name="succeeded" type="NULL" minOccurs="0"/>
				  <xsd:element name="failed" type="NULL" minOccurs="0"/>
				  <xsd:element name="rejected" type="NULL" minOccurs="0"/>
               </xsd:choice>
            </xsd:complexType>
         </xsd:element>
         <xsd:element name="interval" minOccurs="0" type="TimeSpan"/>
         <xsd:element name="naDeviceId" minOccurs="0" type="NADeviceId"/>
         <xsd:element name="naNwElementID" minOccurs="0" type="NANwElementID"/>
         <xsd:element name="naAssignedAddress" minOccurs="0">
            <xsd:complexType>
               <xsd:sequence minOccurs="0" maxOccurs="unbounded">
                  <xsd:element name="NAAssignedAddress" type="NAAssignedAddress"/>
               </xsd:sequence>
            </xsd:complexType>
         </xsd:element>
		 <xsd:element name="location" minOccurs="0" type="Location"/>
         <xsd:element name="dialUpInformation" minOccurs="0" type="DialUpInformation"/>
         <xsd:element name="gprsInformation" minOccurs="0" type="GprsInformation"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="NADevice">
      <xsd:sequence>
         <xsd:element name="naDeviceId" minOccurs="0" type="NADeviceId"/>
         <xsd:element name="description" minOccurs="0" type="xsd:string"/>
         <xsd:element name="location" minOccurs="0" type="Location"/>
         <xsd:element name="macAddress" minOccurs="0">
            <xsd:simpleType>
               <xsd:restriction base="xsd:hexBinary">
                  <xsd:length value="6"/>
               </xsd:restriction>
            </xsd:simpleType>
         </xsd:element>
         <xsd:element name="dslID" minOccurs="0" type="xsd:string"/>
         <xsd:element name="imei" minOccurs="0" type="IMEI"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="NANwElement">
      <xsd:sequence>
         <xsd:element name="validity" minOccurs="0" type="TimeSpan"/>
         <xsd:element name="naNwElementID" minOccurs="0" type="NANwElementID"/>
         <xsd:element name="naProviderID" minOccurs="0" type="NAProviderID"/>
         <xsd:element name="supportedAccessTypes" minOccurs="0">
            <xsd:complexType>
               <xsd:sequence minOccurs="0" maxOccurs="unbounded">
                  <xsd:element name="NwAccessType" type="NwAccessType"/>
               </xsd:sequence>
            </xsd:complexType>
         </xsd:element>
         <xsd:element name="location" minOccurs="0" type="Location"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="NABillingDetails">
      <xsd:sequence>
         <xsd:element name="subscriberID" minOccurs="0" type="NaSubscriberID"/>
		 <xsd:element name="serviceID" minOccurs="0" type="xsd:string"/>
         <xsd:element name="billingAddress" minOccurs="0" type="ContactDetails"/>
		 <xsd:element name="billingIdentifier" minOccurs="0" type="BillingIdentifier"/>
         <xsd:element name="billingRecords" minOccurs="0">
            <xsd:complexType>
               <xsd:sequence minOccurs="0" maxOccurs="unbounded">
                  <xsd:element name="BillingRecords" type="BillingRecords"/>
               </xsd:sequence>
            </xsd:complexType>
         </xsd:element>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="NetworkAccessRecord">
      <xsd:choice>
         <xsd:element name="naSubscriber" type="NASubscriber"/>
         <xsd:element name="naServiceUsage" type="NAServiceUsage"/>
         <xsd:element name="naDevice" type="NADevice"/>
         <xsd:element name="naNetworkElement" type="NANwElement"/>
         <xsd:element name="naBillingDetails" type="NABillingDetails"/>
         <xsd:any namespace="##other" processContents="lax"/>
      </xsd:choice>
   </xsd:complexType>

   <xsd:complexType name="RetainedDataRecord">
      <xsd:choice>
         <xsd:element name="telephonyRecord" type="TelephonyRecord"/>
         <xsd:element name="messageRecord" type="MessageRecord"/>
         <xsd:element name="networkAccess" type="NetworkAccessRecord"/>
         <xsd:any namespace="##other" processContents="lax"/>
      </xsd:choice>
   </xsd:complexType>

   <xsd:complexType name="RequestConstraints">
      <xsd:sequence>
         <xsd:element name="equals" minOccurs="0" type="RetainedDataRecord"/>
         <xsd:element name="notEqualTo" minOccurs="0" type="RetainedDataRecord"/>
         <xsd:element name="lessThan" minOccurs="0" type="RetainedDataRecord"/>
         <xsd:element name="lessThanOrEqualTo" minOccurs="0" type="RetainedDataRecord"/>
         <xsd:element name="greaterThan" minOccurs="0" type="RetainedDataRecord"/>
         <xsd:element name="greaterThanOrEqualTo" minOccurs="0" type="RetainedDataRecord"/>
         <xsd:element name="startsWith" minOccurs="0" type="RetainedDataRecord"/>
         <xsd:element name="endsWith" minOccurs="0" type="RetainedDataRecord"/>
         <xsd:element name="isAMemberOf" minOccurs="0">
            <xsd:complexType>
               <xsd:sequence minOccurs="0" maxOccurs="unbounded">
                  <xsd:element name="RetainedDataRecord" type="RetainedDataRecord"/>
               </xsd:sequence>
            </xsd:complexType>
         </xsd:element>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="RequestMessage">
      <xsd:sequence>
         <xsd:element name="requestPriority" type="RequestPriority"/>
         <xsd:element name="requestParameters" type="RequestConstraints"/>
         <xsd:element name="deliveryPointHIB" minOccurs="0" type="DeliveryPointHIB"/>
		 <xsd:element name="maxHits" minOccurs="0" type="xsd:integer"/>
         <xsd:element name="nationalRequestParameters" minOccurs="0" type="NationalRequestParameters"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="RequestAcknowledgement">
      <xsd:sequence>
         <xsd:element name="suggestedCompletionTime" minOccurs="0" type="GeneralizedTime"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="FurtherInformation">
      <xsd:sequence>
         <xsd:element name="information" type="xsd:string"/>
         <xsd:element name="contactInformation" minOccurs="0" type="xsd:string"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="NULL" final="#all" />

   <xsd:complexType name="ResponseStatus">
      <xsd:choice>
         <xsd:element name="responseComplete" type="NULL"/>
         <xsd:element name="responseIncomplete" type="NULL"/>
         <xsd:element name="responseUnavailable" type="NULL"/>
         <xsd:element name="responseFailed" type="FurtherInformation"/>
         <xsd:any namespace="##other" processContents="lax"/>
      </xsd:choice>
   </xsd:complexType>

   <xsd:complexType name="AdditionalInformation">
      <xsd:sequence>
         <xsd:element name="contactInformation" minOccurs="0" type="xsd:string"/>
         <xsd:element name="otherInformation" minOccurs="0" type="xsd:string"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="ResponseRecord">
      <xsd:sequence>
         <xsd:element name="recordNumber" type="xsd:integer"/>
         <xsd:element name="recordPayload" type="RetainedDataRecord"/>
         <xsd:element name="additionalInformation" minOccurs="0" type="AdditionalInformation"/>
         <xsd:element name="nationalRecordPayload" minOccurs="0" type="NationalRecordPayload"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="ResponseMessage">
      <xsd:sequence>
         <xsd:element name="responseStatus" type="ResponseStatus"/>
         <xsd:element name="responsePayload" minOccurs="0">
            <xsd:complexType>
               <xsd:sequence minOccurs="0" maxOccurs="unbounded">
                  <xsd:element name="ResponseRecord" type="ResponseRecord"/>
               </xsd:sequence>
            </xsd:complexType>
         </xsd:element>
         <xsd:element name="nationalResponsePayload" minOccurs="0" type="NationalResponsePayload"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="GetStatusMessage">
      <xsd:sequence>
         <xsd:element name="requestNumbers">
            <xsd:complexType>
               <xsd:sequence minOccurs="0" maxOccurs="unbounded">
                  <xsd:element name="RequestNumber" type="RequestNumber"/>
               </xsd:sequence>
            </xsd:complexType>
         </xsd:element>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="RequestStatus">
      <xsd:choice>
         <xsd:element name="ready" type="NULL"/>
         <xsd:element name="incompleteResultsReady" type="NULL"/>
         <xsd:element name="failureResponseReady" type="NULL"/>
         <xsd:element name="notReady" type="NULL"/>
         <xsd:element name="error" type="FurtherInformation"/>
         <xsd:element name="inDelivery" type="NULL"/>
         <xsd:element name="invalidRequestID" type="NULL"/>
         <xsd:any namespace="##other" processContents="lax"/>
      </xsd:choice>
   </xsd:complexType>

   <xsd:complexType name="StatusResponse">
      <xsd:sequence>
         <xsd:element name="requestNumber" type="RequestNumber"/>
         <xsd:element name="requestStatus" type="RequestStatus"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="StatusMessage">
      <xsd:sequence>
         <xsd:element name="statusResponse">
            <xsd:complexType>
               <xsd:sequence minOccurs="0" maxOccurs="unbounded">
                  <xsd:element name="StatusResponse" type="StatusResponse"/>
               </xsd:sequence>
            </xsd:complexType>
         </xsd:element>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="RetainedDataPayload">
      <xsd:choice>
         <xsd:element name="requestMessage" type="RequestMessage"/>
         <xsd:element name="requestAcknowledgement" type="RequestAcknowledgement"/>
         <xsd:element name="responseMessage" type="ResponseMessage"/>
         <xsd:element name="responseAcknowledgement" type="ResponseAcknowledgement"/>
         <xsd:element name="errorMessage" type="FurtherInformation"/>
         <xsd:element name="cancelMessage" type="CancelMessage"/>
         <xsd:element name="cancelAcknowledgement" type="CancelAcknowledgement"/>
         <xsd:element name="getstatusMessage" type="GetStatusMessage"/>
         <xsd:element name="statusMessage" type="StatusMessage"/>
         <xsd:element name="getResultsMessage" type="GetResultsMessage"/>
         <xsd:any namespace="##other" processContents="lax"/>
      </xsd:choice>
   </xsd:complexType>

</xsd:schema>