<?xml version="1.0" encoding="UTF-8"?>
<!--
   XML data type definitions for OMA RESTful Network API for Messaging
   Version: 1.0 (1.0)
   Date: 01 Dec 2015

   FILE INFORMATION

      OMA Permanent Document
         File: OMA-SUP-XSD_rest_netapi_messaging-V1_0-20151201-C
         Type: Text-Schema Description

      Public Reachable Information
         Path: http://www.openmobilealliance.org/tech/profiles
         Name: rest_netapi_messaging-v1_0.xsd

   NORMATIVE INFORMATION

      Information about this file can be found in the specification

         OMA-TS-REST_NetAPI_Messaging-V1_0

         This is available at http://www.openmobilealliance.org/

         Send comments to technical-comments@mail.openmobilealliance.org

   CHANGE HISTORY 
   
   10052011 File created based on OMA-SUP-XSD_rest_messaging-V1_1-20110111-C,
               see contribution OMA-ARC-2011-0192-INP_Messaging_baseline_changes_XSD
   01062011 Changed according to OMA-ARC-REST-NetAPI-2011-0022-INP_XSD_Template_application 
   28062011 Changed according to OMA-ARC-REST-NetAPI-2011-0118R01-CR_Messaging_XSD_Update_According_to_0079R02
   24082011 Changed according to OMA-ARC-REST-NetAPI-2011-0196-CR_Messaging_resourceURL_xsd
   24082011 Changed according to OMA-ARC-REST-NetAPI-2011-0273-CR_Messaging_XSD_prep_for_CONR
   18102011 Changed according to OMA-ARC-REST-NetAPI-2011-0297-CR_Messaging_XSD_bug_align_with_CR295_for_CONR
   28102011 Changed according to OMA-ARC-REST-NetAPI-2011-0406-CR_Messaging_XSD_CONR_resolution
   18012012 Changed according to OMA-ARC-REST-NetAPI-2012-0019-CR_Messaging_XSD_validation_error
   31012012 Status changed to Candidate by TP, TP Ref # OMA-TP-2012-0018-INP_REST_NetAPI_Messaging_1_0_ERP_and_ETR_for_Candidate_Approval
   02102012 Status changed to Draft according to OMA-ARC-REST-NetAPI-2012-0265-CR_Messaging_XSD_support_for_Flash_SMS
   22022013 Changed according to OMA-ARC-REST-NetAPI-2013-0022R01-CR_XSD_InboundVMMessage
   12032013 Changed according to OMA-ARC-REST-NetAPI-2013-0026-CR_Messaging_XSD_adding_OutboundMessage
   09072013 Status changed to Candidate by TP, TP Ref # OMA-TP-2013-0211-INP_REST_NetAPI_Messaging_V1_0_ERP_for_Candidate_re_approval
   13082014 Incorporated CR OMA-ARC-REST-NetAPI-2014-0059-CR_MMS_XSD_adding_support_for_dateTimeStamp
   18122014 Incorporated CR OMA-ARC-REST-NetAPI-2014-0057R02-CR_MMS_XSD_support_for_Displayed_message_status
   01122015 Status changed to Candidate by TP, TP Ref # OMA-TP-2015-0199-INP_REST_NetAPI_Messaging_V1_0_ERP_for_Candidate_re_approval

   LEGAL DISCLAIMER

   Use of this document is subject to all of the terms and conditions
   of the Use Agreement located at
   http://www.openmobilealliance.org/UseAgreement.html,
   provided, however, that section (d) under "Documents - Terms 
   of Use" which states, "no modifications are made to such 
   Documents" does not apply to your use.

   The Open Mobile Alliance authorizes you to copy this document, 
   provided that you retain all copyright and other proprietary  
   notices contained in the original materials on any copies of the 
   materials and  that you comply strictly with these terms. This 
   copyright permission does not constitute an endorsement of the 
   products or services. The Open Mobile Alliance assumes no 
   responsibility for errors or omissions in this document.


   Each Open Mobile Alliance member has agreed to use reasonable
   endeavors to inform the Open Mobile Alliance in a timely manner of
   Essential IPR as it becomes aware that the Essential IPR is related
   to the prepared or published specification.  However, the members
   do not have an obligation to conduct IPR searches.  The declared
   Essential IPR is publicly available to members and non-members of
   the Open Mobile Alliance and may be found on the "OMA IPR
   Declarations" list at http://www.openmobilealliance.org/ipr.html.
   The Open Mobile Alliance has not conducted an independent IPR review
   of this document and the information contained herein, and makes no
   representations or warranties regarding third party IPR, including
   without limitation patents, copyrights or trade secret rights.  This
   document may contain inventions for which you must obtain licenses
   from third parties before making, using or selling the inventions.
   Defined terms above are set forth in the schedule to the Open Mobile
   Alliance Application Form.

   NO REPRESENTATIONS OR WARRANTIES (WHETHER EXPRESS OR IMPLIED) ARE
   MADE BY THE OPEN MOBILE ALLIANCE OR ANY OPEN MOBILE ALLIANCE MEMBER
   OR ITS AFFILIATES REGARDING ANY OF THE IPR'S REPRESENTED ON THE "OMA
   IPR DECLARATIONS" LIST, INCLUDING, BUT NOT LIMITED TO THE ACCURACY,
   COMPLETENESS, VALIDITY OR RELEVANCE OF THE INFORMATION OR WHETHER OR
   NOT SUCH RIGHTS ARE ESSENTIAL OR NON-ESSENTIAL.

   THE OPEN MOBILE ALLIANCE IS NOT LIABLE FOR AND HEREBY DISCLAIMS ANY
   DIRECT, INDIRECT, PUNITIVE, SPECIAL, INCIDENTAL, CONSEQUENTIAL, OR
   EXEMPLARY DAMAGES ARISING OUT OF OR IN CONNECTION WITH THE USE OF
   DOCUMENTS AND THE INFORMATION CONTAINED IN THE DOCUMENTS.

   Copyright 2015 Open Mobile Alliance Ltd.  All Rights Reserved.
   Used with the permission of the Open Mobile Alliance Ltd. under the
   terms set forth above. 
-->

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
   xmlns:common="urn:oma:xml:rest:netapi:common:1"
   xmlns="urn:oma:xml:rest:netapi:messaging:1"
   targetNamespace="urn:oma:xml:rest:netapi:messaging:1" version="1.0">
   
   <xsd:annotation>
      <xsd:documentation>
         This schema defines the XML data types for the RESTful Network API for Messaging
      </xsd:documentation>
   </xsd:annotation>
   
   <xsd:import namespace="urn:oma:xml:rest:netapi:common:1" schemaLocation="http://www.openmobilealliance.org/tech/profiles/rest_netapi_common-v1_0.xsd" />
   
   <xsd:complexType name="OutboundMessageRequest">
      <xsd:sequence>
         <xsd:element name="address" type="xsd:anyURI" maxOccurs="unbounded" minOccurs="1" />
         <xsd:element name="senderAddress" type="xsd:anyURI" maxOccurs="1" minOccurs="1" />
         <xsd:element name="senderName" type="xsd:string" maxOccurs="1" minOccurs="0" />
         <xsd:element name="charging" type="common:ChargingInformation" maxOccurs="1" minOccurs="0" />
         <xsd:element name="receiptRequest" type="common:CallbackReference" maxOccurs="1" minOccurs="0" />
         <xsd:element name="reportRequest" type="DeliveryStatus" maxOccurs="unbounded" minOccurs="0" />
         <xsd:choice>
            <xsd:element name="outboundSMSTextMessage" type="OutboundSMSTextMessage" />
            <xsd:element name="outboundSMSBinaryMessage" type="OutboundSMSBinaryMessage" />
            <xsd:element name="outboundSMSLogoMessage" type="OutboundSMSLogoMessage" />
            <xsd:element name="outboundSMSRingToneMessage" type="OutboundSMSRingToneMessage" />
            <xsd:element name="outboundSMSFlashMessage" type="OutboundSMSFlashMessage"/>
            <xsd:element name="outboundWAPMessage" type="OutboundWAPMessage" />
            <xsd:element name="outboundMMSMessage" type="OutboundMMSMessage" />
            <xsd:element name="outboundIMMessage" type="OutboundIMMessage" />
            <xsd:element name="outboundMessage" type="OutboundMessage" />
         </xsd:choice>
         <xsd:element name="clientCorrelator" type="xsd:string" maxOccurs="1" minOccurs="0" />
         <xsd:element name="resourceURL" type="xsd:anyURI" maxOccurs="1" minOccurs="0" />
         <xsd:element name="link" type="common:Link" maxOccurs="unbounded" minOccurs="0" />
         <xsd:element name="deliveryInfoList" type="DeliveryInfoList" maxOccurs="1" minOccurs="0" />
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:complexType name="DeliveryInfo">
      <xsd:sequence>
         <xsd:element name="address" type="xsd:anyURI" maxOccurs="1" minOccurs="1" />
         <xsd:element name="deliveryStatus" type="DeliveryStatus" maxOccurs="1" minOccurs="1" />
         <xsd:element name="description" type="xsd:string" maxOccurs="1" minOccurs="0" />
         <xsd:element name="link" type="common:Link" maxOccurs="unbounded" minOccurs="0" />
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:element name="inboundMessage" type="InboundMessage" />
   
   <xsd:element name="inboundMessageList" type="InboundMessageList" />
   
   <xsd:element name="deliveryReceiptSubscription" type="DeliveryReceiptSubscription" />
   
   <xsd:complexType name="DeliveryReceiptSubscription">
      <xsd:sequence>
         <xsd:element name="callbackReference" type="common:CallbackReference" maxOccurs="1" minOccurs="1" />
         <xsd:element name="filterCriteria" type="xsd:string" maxOccurs="1" minOccurs="1" />
         <xsd:element name="clientCorrelator" type="xsd:string" maxOccurs="1" minOccurs="0" />
         <xsd:element name="resourceURL" type="xsd:anyURI" maxOccurs="1" minOccurs="0" />
         <xsd:element name="link" type="common:Link" maxOccurs="unbounded" minOccurs="0" />
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:element name="deliveryInfoNotification" type="DeliveryInfoNotification" />
   
   <xsd:complexType name="DeliveryInfoNotification">
      <xsd:sequence>
         <xsd:element name="callbackData" type="xsd:string" maxOccurs="1" minOccurs="0" />
         <xsd:element name="deliveryInfo" type="DeliveryInfo" maxOccurs="unbounded" minOccurs="1" />
         <xsd:element name="link" type="common:Link" maxOccurs="unbounded" minOccurs="0" />
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:element name="deliveryInfoList" type="DeliveryInfoList" />
   
   <xsd:complexType name="DeliveryInfoList">
      <xsd:sequence>
         <xsd:element name="resourceURL" type="xsd:anyURI" maxOccurs="1" minOccurs="1" />
         <xsd:element name="link" type="common:Link" maxOccurs="unbounded" minOccurs="0" />
         <xsd:element name="deliveryInfo" type="DeliveryInfo" maxOccurs="unbounded" minOccurs="1" />
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:complexType name="OutboundSMSRingToneMessage">
      <xsd:sequence>
         <xsd:element name="ringTone" type="xsd:string" maxOccurs="1" minOccurs="1" />
         <xsd:element name="smsFormat" type="SmsFormat" maxOccurs="1" minOccurs="1" />
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:complexType name="OutboundSMSLogoMessage">
      <xsd:sequence>
         <xsd:element name="image" type="xsd:base64Binary" maxOccurs="1" minOccurs="1" />
         <xsd:element name="smsFormat" type="SmsFormat" maxOccurs="1" minOccurs="1" />
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:complexType name="OutboundSMSTextMessage">
      <xsd:sequence>
         <xsd:element name="message" type="xsd:string" maxOccurs="1" minOccurs="1" />
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:complexType name="OutboundSMSBinaryMessage">
      <xsd:sequence>
         <xsd:element name="message" type="xsd:base64Binary" maxOccurs="1" minOccurs="1" />
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:complexType name="OutboundSMSFlashMessage">
      <xsd:sequence>
         <xsd:element name="flashMessage" type="xsd:string" maxOccurs="1" minOccurs="1"/>
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:complexType name="OutboundWAPMessage">
      <xsd:sequence>
         <xsd:element name="contentType" type="WAPContent" maxOccurs="1" minOccurs="1" />
         <xsd:element name="targetURL" type="xsd:anyURI" maxOccurs="1" minOccurs="1" />
         <xsd:choice minOccurs="0" maxOccurs="1">
            <xsd:element name="serviceLoadingAction" type="ServiceLoadingAction" minOccurs="1" maxOccurs="1"/>
            <xsd:element name="serviceIndicationAction" type="ServiceIndicationAction" minOccurs="1" maxOccurs="1"/>
         </xsd:choice>
         <xsd:element name="text" type="xsd:string" minOccurs="0" maxOccurs="1"/>
         <xsd:element name="created" type="xsd:dateTimeStamp" minOccurs="0" maxOccurs="1"/>
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:complexType name="OutboundMMSMessage">
      <xsd:sequence>
         <xsd:element name="subject" type="xsd:string" maxOccurs="1" minOccurs="0" />
         <xsd:element name="priority" type="MessagePriority" maxOccurs="1" minOccurs="0" />
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:complexType name="OutboundIMMessage">
      <xsd:sequence>
         <xsd:element name="subject" type="xsd:string" maxOccurs="1" minOccurs="0" />
         <xsd:element name="imFormat" type="IMFormat" maxOccurs="1" minOccurs="0" />
         <xsd:element name="bodyText" type="xsd:string" maxOccurs="1" minOccurs="0" />
      </xsd:sequence>
   </xsd:complexType>

  <xsd:complexType name="OutboundMessage">
      <xsd:sequence>
         <xsd:element name="subject" type="xsd:string" maxOccurs="1" minOccurs="0" />
         <xsd:element name="priority" type="MessagePriority" maxOccurs="1" minOccurs="0" />
         <xsd:element name="message" type="xsd:string" maxOccurs="1" minOccurs="0" />
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:element name="outboundMessageRequest" type="OutboundMessageRequest" />
   
   <xsd:element name="outboundMessageRequestList" type="OutboundMessageRequestList" />
   
   <xsd:complexType name="OutboundMessageRequestList">
      <xsd:sequence>
         <xsd:element name="outboundMessageRequest" type="OutboundMessageRequest" maxOccurs="unbounded" minOccurs="0" />
         <xsd:element name="resourceURL" type="xsd:anyURI" maxOccurs="1" minOccurs="1" />
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:element name="inboundMessageRetrieveAndDeleteRequest" type="InboundMessageRetrieveAndDeleteRequest" />
   
   <xsd:complexType name="InboundMessageRetrieveAndDeleteRequest">
      <xsd:sequence>
         <xsd:element name="retrievalOrder" type="RetrievalOrder" maxOccurs="1" minOccurs="0" />
         <xsd:element name="priority" type="MessagePriority" maxOccurs="1" minOccurs="0" />
         <xsd:element name="maxBatchSize" type="xsd:int" maxOccurs="1" minOccurs="0" />
         <xsd:element name="useAttachmentURLs" type="xsd:boolean" maxOccurs="1" minOccurs="1" />
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:element name="subscription" type="Subscription" />
   
   <xsd:element name="subscriptionList" type="SubscriptionList" />
   
   <xsd:complexType name="Subscription">
      <xsd:sequence>
         <xsd:element name="callbackReference" type="common:CallbackReference" maxOccurs="1" minOccurs="1" />
         <xsd:element name="destinationAddress" type="xsd:anyURI" maxOccurs="unbounded" minOccurs="1" />
         <xsd:element name="criteria" type="xsd:string" maxOccurs="1" minOccurs="0" />
         <xsd:element name="clientCorrelator" type="xsd:string" maxOccurs="1" minOccurs="0" />
         <xsd:element name="resourceURL" type="xsd:anyURI" maxOccurs="1" minOccurs="0" />
         <xsd:element name="link" type="common:Link" maxOccurs="unbounded" minOccurs="0" />
         <xsd:element name="useAttachmentURLs" type="xsd:boolean" maxOccurs="1" minOccurs="0" />
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:complexType name="SubscriptionList">
      <xsd:sequence>
         <xsd:element name="subscription" type="Subscription" maxOccurs="unbounded" minOccurs="0" />
         <xsd:element name="resourceURL" type="xsd:anyURI" maxOccurs="1" minOccurs="1" />
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:complexType name="InboundSMSTextMessage">
      <xsd:sequence>
         <xsd:element name="message" type="xsd:string" maxOccurs="1" minOccurs="1" />
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:complexType name="InboundMMSMessage">
      <xsd:sequence>
         <xsd:element name="subject" type="xsd:string" maxOccurs="1" minOccurs="0" />
         <xsd:element name="priority" type="MessagePriority" maxOccurs="1" minOccurs="0" />
         <xsd:element name="attachment" type="AttachmentInfo" maxOccurs="unbounded" minOccurs="0" />
         <xsd:element name="bodyText" type="xsd:string" maxOccurs="1" minOccurs="0" />
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:complexType name="InboundMessage">
      <xsd:sequence>
         <xsd:element name="destinationAddress" type="xsd:anyURI" maxOccurs="1" minOccurs="1" />
         <xsd:element name="senderAddress" type="xsd:anyURI" maxOccurs="1" minOccurs="1" />
         <xsd:element name="dateTime" type="xsd:dateTimeStamp" maxOccurs="1" minOccurs="0" />
         <xsd:element name="resourceURL" type="xsd:anyURI" maxOccurs="1" minOccurs="0" />
         <xsd:element name="link" type="common:Link" maxOccurs="unbounded" minOccurs="0" />
         <xsd:element name="messageId" type="xsd:string" maxOccurs="1" minOccurs="0" />
         <xsd:element name="reportRequest" type="DeliveryStatus" maxOccurs="unbounded" minOccurs="0" />
         <xsd:choice>
            <xsd:element name="inboundSMSTextMessage" type="InboundSMSTextMessage" />
            <xsd:element name="inboundMMSMessage" type="InboundMMSMessage" />
            <xsd:element name="inboundIMMessage" type="InboundIMMessage" />
            <xsd:element name="inboundVMMessage" type="InboundVMMessage" />
         </xsd:choice>
     </xsd:sequence>
   </xsd:complexType>
   
   <xsd:complexType name="InboundMessageList">
      <xsd:sequence>
         <xsd:element name="inboundMessage" type="InboundMessage" maxOccurs="unbounded" minOccurs="0" />
         <xsd:element name="totalNumberOfPendingMessages" type="xsd:int" maxOccurs="1" minOccurs="0" />
         <xsd:element name="numberOfMessagesInThisBatch" type="xsd:int" maxOccurs="1" minOccurs="0" />
         <xsd:element name="resourceURL" type="xsd:anyURI" maxOccurs="1" minOccurs="1" />
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:complexType name="InboundIMMessage">
      <xsd:sequence>
         <xsd:element name="subject" type="xsd:string" maxOccurs="1" minOccurs="0" />
         <xsd:element name="priority" type="MessagePriority" maxOccurs="1" minOccurs="0" />
         <xsd:element name="attachment" type="AttachmentInfo" maxOccurs="unbounded" minOccurs="0" />
         <xsd:element name="imFormat" type="IMFormat" maxOccurs="1" minOccurs="0" />
         <xsd:element name="bodyText" type="xsd:string" maxOccurs="1" minOccurs="0" />
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="InboundVMMessage">
      <xsd:sequence>
         <xsd:element name="subject" type="xsd:string" maxOccurs="1" minOccurs="0" />
         <xsd:element name="duration" type="xsd:int" maxOccurs="1" minOccurs="0" />
         <xsd:element name="numberOfFaxPages" type="xsd:int" maxOccurs="1" minOccurs="0" />
         <xsd:element name="voiceTranscript" type="xsd:string" maxOccurs="1" minOccurs="0" />
         <xsd:element name="priority" type="MessagePriority" maxOccurs="1" minOccurs="0" />
         <xsd:element name="attachment" type="AttachmentInfo" maxOccurs="unbounded" minOccurs="0" />
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:complexType name="InboundMessageNotification">
      <xsd:sequence>
         <xsd:element name="callbackData" type="xsd:string" maxOccurs="1" minOccurs="0" />
         <xsd:element name="inboundMessage" type="InboundMessage" maxOccurs="1" minOccurs="1" />
         <xsd:element name="link" type="common:Link" maxOccurs="unbounded" minOccurs="0" />
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:element name="inboundMessageNotification" type="InboundMessageNotification" />
   
   <xsd:complexType name="DeliveryReceiptSubscriptionList">
      <xsd:sequence>
         <xsd:element name="resourceURL" type="xsd:anyURI" maxOccurs="1" minOccurs="1" />
         <xsd:element name=" link" type="common:Link" maxOccurs="unbounded" minOccurs="0" />
         <xsd:element name="deliveryReceiptSubscription" type="DeliveryReceiptSubscription" maxOccurs="unbounded" minOccurs="0" />
      </xsd:sequence>
   </xsd:complexType>
   
   <xsd:element name="deliveryReceiptSubscriptionList" type="DeliveryReceiptSubscriptionList" />
   
   <xsd:complexType name="AttachmentInfo">
   	  <xsd:sequence>
   	  	<xsd:element name="contentType" type="xsd:string" maxOccurs="1" minOccurs="1"/>
   	  	<xsd:element name="size" type="xsd:unsignedLong" maxOccurs="1" minOccurs="0"/>
   	  	<xsd:element name="link" type="common:Link" maxOccurs="1" minOccurs="1"/>
   	  </xsd:sequence>
   </xsd:complexType>

   <xsd:simpleType name="MessagePriority">
      <xsd:restriction base="xsd:string">
         <xsd:enumeration value="Default" />
         <xsd:enumeration value="Low" />
         <xsd:enumeration value="Normal" />
         <xsd:enumeration value="High" />
      </xsd:restriction>
   </xsd:simpleType>
   
   <xsd:simpleType name="DeliveryStatus">
      <xsd:restriction base="xsd:string">
         <xsd:enumeration value="DeliveredToTerminal" />
         <xsd:enumeration value="DeliveryUncertain" />
         <xsd:enumeration value="DeliveryImpossible" />
         <xsd:enumeration value="DeliveredToNetwork" />
         <xsd:enumeration value="MessageWaiting" />
         <xsd:enumeration value="DeliveryNotificationNotSupported" />
         <xsd:enumeration value="Displayed" />
      </xsd:restriction>
   </xsd:simpleType>
   
   <xsd:simpleType name="SmsFormat">
      <xsd:restriction base="xsd:string">
         <xsd:enumeration value="Ems" />
         <xsd:enumeration value="SmartMessaging" />
      </xsd:restriction>
   </xsd:simpleType>
   
   <xsd:simpleType name="IMFormat">
      <xsd:restriction base="xsd:string">
         <xsd:enumeration value="IM" />
         <xsd:enumeration value="IMPagerMode" />
         <xsd:enumeration value="IMLargeMode" />
         <xsd:enumeration value="IMFileTransfer" />
      </xsd:restriction>
   </xsd:simpleType>

   <xsd:simpleType name="WAPContent">
      <xsd:restriction base="xsd:string">
         <xsd:enumeration value="ServiceIndication" />
         <xsd:enumeration value="ServiceLoading" />
      </xsd:restriction>
   </xsd:simpleType>  

   <xsd:simpleType name="RetrievalOrder">
      <xsd:restriction base="xsd:string">
         <xsd:enumeration value="OldestFirst" />
         <xsd:enumeration value="NewestFirst" />
      </xsd:restriction>
   </xsd:simpleType>
     
   <xsd:simpleType name="ServiceIndicationAction">
      <xsd:restriction base="xsd:string">
         <xsd:enumeration value="SignalNone" />
         <xsd:enumeration value="SignalLow" />
         <xsd:enumeration value="SignalMedium" />
         <xsd:enumeration value="SignalHigh" />
         <xsd:enumeration value="Delete" />
      </xsd:restriction>
   </xsd:simpleType>
   
   <xsd:simpleType name="ServiceLoadingAction">
      <xsd:restriction base="xsd:string">
         <xsd:enumeration value="ExecuteLow" />
         <xsd:enumeration value="ExecuteHigh" />
         <xsd:enumeration value="Cache" />
      </xsd:restriction>
   </xsd:simpleType>
   
   <xsd:complexType name="MessageStatusReport">
      <xsd:sequence>
         <xsd:element name="status" type="DeliveryStatus" maxOccurs="1" minOccurs="1" />
      </xsd:sequence>
   </xsd:complexType>
 
   <xsd:element name="messageStatusReport" type="MessageStatusReport" />

</xsd:schema>