﻿<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            targetNamespace="http://www.openmobilealliance.com/oma-dcd/1.0"
            xmlns:dcd="http://www.openmobilealliance.com/oma-dcd/1.0"
            xmlns:bcast="urn:oma:xml:bcast:sg:fragments:1.0"
            elementFormDefault="qualified">
	<xsd:import namespace="urn:oma:xml:bcast:sg:fragments:1.0"
                schemaLocation="http://www.openmobilealliance.org/tech/profiles/bcast_sg_fragments-v1_0.xsd" />

	<!--
FILE INFORMATION

Description
   This schema provices the XML Schema for the DCD enabler

Version: 1.0 (1.0.3)
Date:    12 June 2009

OMA Permanent Document
   File: OMA-SUP-XSD_DCD-V1_0-20090612-C
   Type: Text
   
Public Reachable Information
   Path: http://www.openmobilealliance.org/Technical/schemas.aspx
   Name: dcd_xsd-v1_0.xsd

NORMATIVE INFORMATION

Information about this file can be found in the latest revision of the specification
OMA-TS-DCD_Semantics-V1_0 available at
   http://www.openmobilealliance.org/

Send comments to technical-comments@mail.openmobilealliance.org
	
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

You may use this document or any part of the document for internal
or educational purposes only, provided you do not modify, edit or
take out of context the information in this document in any manner.
Information contained in this document may be used, at your sole
risk, for any purposes.

You may not use this document in any other manner without the prior
written permission of the Open Mobile Alliance.  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 2008 Open Mobile Alliance Ltd.  All Rights Reserved.
Used with the permission of the Open Mobile Alliance Ltd. under the
terms set forth above.
-->


	<!--
        =============================
            Referenced Simple Types
        =============================
    -->

	<!-- Session ID -->
	<xsd:simpleType name="Session-ID">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Message ID -->
	<xsd:simpleType name="Message-ID">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Single Application ID -->
	<xsd:simpleType name="Application-ID">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Comma separated string of Application IDs -->
	<xsd:simpleType name="Application-IDs">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Channel Discovery Information -->
	<xsd:simpleType name="Channel-Discovery-Information">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Comma separated string of Channel IDs -->
	<xsd:simpleType name="Channel-IDs">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Single Channel ID -->
	<xsd:simpleType name="Channel-ID">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- List of Channels -->
	<xsd:simpleType name="ChannelList">
		<xsd:list itemType="xsd:string"/>
	</xsd:simpleType>

	<!-- List of strings -->
	<xsd:simpleType name="ListType">
		<xsd:list itemType="xsd:string" />
	</xsd:simpleType>

	<!-- List of Interfaces -->
	<!-- Restriction of values
            DCD-1/HTTP
            DCD-1/HTTPS
            DCD-2/Point-To-Point
            DCD-2/Broadcast
            -->
	<xsd:simpleType name="InterfaceType">
		<xsd:list>
			<xsd:simpleType>
				<xsd:restriction base="xsd:string">
					<xsd:pattern value="((\s)*([Dd][Cc][Dd]-[1]/[Hh][Tt][Tt][Pp]|[Dd][Cc][Dd]-[1]/[Hh][Tt][Tt][Pp][Ss]|[Dd][Cc][Dd]-[2]/[Pp][Oo][Ii][Nn][Tt]-[Tt][Oo]-[Pp][Oo][Ii][Nn][Tt]|[Dd][Cc][Dd]-[2]/[Bb][Rr][Oo][Aa][Dd][Cc][Aa][Ss][Tt])(\s)*(,)*(\s)*)+"/>
				</xsd:restriction>
			</xsd:simpleType>
		</xsd:list>
	</xsd:simpleType>


	<!-- Single Subscription ID -->
	<xsd:simpleType name="Subscription-ID">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Comma separated string of Subscription IDs -->
	<xsd:simpleType name="Subscription-IDs">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Single Subscriber Info -->
	<xsd:simpleType name="Subscriber-Info">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Comma separated string of Subscriber Infos -->
	<xsd:simpleType name="Subscriber-Infos">
		<xsd:list itemType="xsd:string" />
	</xsd:simpleType>

	<!-- Content Address -->
	<xsd:simpleType name="Content-Address">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Comma separated string of Content Addresses -->
	<xsd:simpleType name="Content-Addresses">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Comma separated string of Content IDs -->
	<xsd:simpleType name="Content-IDs">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Single Content ID -->
	<xsd:simpleType name="Content-ID">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Reason -->
	<xsd:simpleType name="Reason">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Device ID-->
	<xsd:simpleType name="Device-ID">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Version -->
	<xsd:simpleType name="Version">
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="(\d)+.(\d)+"/>
		</xsd:restriction>
	</xsd:simpleType>

	<!-- Submit Address -->
	<xsd:simpleType name="Submit-Address">
		<xsd:restriction base="xsd:anyURI"/>
	</xsd:simpleType>

	<!-- Submit Package -->
	<xsd:simpleType name="Submit-Package">
		<xsd:restriction base="xsd:hexBinary"/>
	</xsd:simpleType>

	<!-- DCD Content Reference -->
	<xsd:simpleType name="DCD-Content-Reference">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Channel Reference -->
	<xsd:simpleType name="Channel-Reference">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Action -->
	<xsd:simpleType name="Action">
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="(add|remove)"/>
		</xsd:restriction>
	</xsd:simpleType>

	<!-- Selected Purchase Option -->
	<xsd:simpleType name="Selected-Purchase-Option">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- possible values of auth-method attribute -->
	<xsd:simpleType name="Auth-Method-Type">
		<xsd:restriction base="xsd:token">
			<xsd:enumeration value="none"/>
			<xsd:enumeration value="digest-user"/>
			<xsd:enumeration value="digest-gba"/>
			<xsd:enumeration value="x509"/>
		</xsd:restriction>
	</xsd:simpleType>

	<!-- Error Severity -->
	<xsd:simpleType name="Error-Severity">
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="(warn|fail)"/>
		</xsd:restriction>
	</xsd:simpleType>

	<!-- Error Code -->
	<xsd:simpleType name="Error-Code">
		<xsd:restriction base="xsd:integer" />
	</xsd:simpleType>

	<!-- Error Description -->
	<xsd:simpleType name="Error-Description">
		<xsd:restriction base="xsd:string" />
	</xsd:simpleType>

	<!-- Errored Parameter -->
	<xsd:simpleType name="Errored-Parameter">
		<xsd:restriction base="xsd:string" />
	</xsd:simpleType>

	<!-- Reserved Storage -->
	<xsd:simpleType name="Reserved-Storage">
		<xsd:restriction base="xsd:integer"/>
	</xsd:simpleType>

	<!-- Free Storage -->
	<xsd:simpleType name="Free-Storage">
		<xsd:restriction base="xsd:integer"/>
	</xsd:simpleType>

	<!-- Roaming Status -->
	<xsd:simpleType name="Roaming-Status">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="unknown" />
			<xsd:enumeration value="home" />
			<xsd:enumeration value="roam" />
			<xsd:enumeration value="international" />
		</xsd:restriction>
	</xsd:simpleType>

	<!-- Available Bearers -->
	<xsd:simpleType name="Available-Bearers">
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="((\s)*([Uu][Nn][Kk][Nn][Oo][Ww][Nn]|[Ee][Dd][Gg][Ee]|[Cc][Dd][Mm][Aa]2000|[Gg][Aa][Nn]|[Ww][Ii][Mm][Aa][Xx]|[Uu][Mm][Tt][Ss]|[Ll][Tt][Ee]|802.11|[Cc][Bb][Ss]|[Bb][Cc][Aa][Ss][Tt])(\s)*(,)*(\s)*)+"/>
		</xsd:restriction>
	</xsd:simpleType>

	<!-- Preferred Bearers -->
	<xsd:simpleType name="Preferred-Bearers">
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="((\s)*([Uu][Nn][Kk][Nn][Oo][Ww][Nn]|[Ee][Dd][Gg][Ee]|[Cc][Dd][Mm][Aa]2000|[Gg][Aa][Nn]|[Ww][Ii][Mm][Aa][Xx]|[Uu][Mm][Tt][Ss]|[Ll][Tt][Ee]|802.11|[Cc][Bb][Ss]|[Bb][Cc][Aa][Ss][Tt])(\s)*(,)*(\s)*)+"/>
		</xsd:restriction>
	</xsd:simpleType>

	<!-- Report Frequency -->
	<xsd:simpleType name="Report-Frequency">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Roaming Status Report -->
	<xsd:simpleType name="Roaming-Status-Report">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="on-demand"/>
			<xsd:enumeration value="any-change"/>
			<xsd:enumeration value="home"/>
			<xsd:enumeration value="roam"/>
			<xsd:enumeration value="international"/>
		</xsd:restriction>
	</xsd:simpleType>

	<!-- Available Bearers Report -->
	<xsd:simpleType name="Available-Bearers-Report">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="on-demand"/>
			<xsd:enumeration value="any-change"/>
			<xsd:enumeration value="EDGE"/>
			<xsd:enumeration value="UMTS"/>
			<xsd:enumeration value="CDMA2000"/>
			<xsd:enumeration value="GAN"/>
			<xsd:enumeration value="WiMAX"/>
			<xsd:enumeration value="LTE"/>
			<xsd:enumeration value="802.11"/>
			<xsd:enumeration value="CBS"/>
			<xsd:enumeration value="BCAST"/>
		</xsd:restriction>
	</xsd:simpleType>

	<!-- Preferred Bearers Report -->
	<xsd:simpleType name="Preferred-Bearers-Report">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="on-demand"/>
			<xsd:enumeration value="any-change"/>
		</xsd:restriction>
	</xsd:simpleType>

	<!-- Reserved Storage Report -->
	<xsd:simpleType name="Reserved-Storage-Report-Type">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="on-demand" />
			<xsd:enumeration value="any-change" />
		</xsd:restriction>
	</xsd:simpleType>

	<!-- Free Storage Report -->
	<xsd:simpleType name="Free-Storage-Report-Type">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="on-demand" />
			<xsd:enumeration value="exhausted" />
		</xsd:restriction>
	</xsd:simpleType>

	<!-- Opaque Content -->
	<xsd:simpleType name="DCD-Content">
		<xsd:restriction base="xsd:hexBinary"/>
	</xsd:simpleType>

	<!-- Broadcast Service ID-->
	<xsd:simpleType name="Broadcast-Service-ID">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Delivery Endpoint Info -->
	<xsd:simpleType name="Delivery-Endpoint-Info">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Policy ID -->
	<xsd:simpleType name="Policy-ID">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Channel ID Filter -->
	<xsd:simpleType name="Channel-ID-Filter">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Content ID Filter -->
	<xsd:simpleType name="Content-ID-Filter">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Content Type Filter -->
	<xsd:simpleType name="Content-Type-Filter">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- MIME Type Filter -->
	<xsd:simpleType name="Mime-Type-Filter">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Tracking Schedule -->
	<xsd:simpleType name="Tracking-Schedule">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Reporting Schedule -->
	<xsd:simpleType name="Reporting-Schedule">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Timestamp -->
	<xsd:simpleType name="Timestamp">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Usage Count -->
	<xsd:simpleType name="Usage-Count">
		<xsd:restriction base="xsd:integer"/>
	</xsd:simpleType>

	<!-- Usage Report Server Address -->
	<xsd:simpleType name="Usage-Report-Server-Address">
		<xsd:restriction base="xsd:anyURI"/>
	</xsd:simpleType>

	<!-- Push Publication Address -->
	<xsd:simpleType name="Push-Publication-Address">
		<xsd:restriction base="xsd:anyURI"/>
	</xsd:simpleType>

	<!-- DCD-3 Connection Profile Name -->
	<xsd:simpleType name="Dcd-3-Connection-Profile-Name">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Adaptation Capability Type -->
	<xsd:simpleType name="Adaptation-Capability-Type">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>

	<!-- Subscription Declined -->
	<xsd:simpleType name="Subscription-Declined-Type">
		<xsd:restriction base="xsd:boolean" />
	</xsd:simpleType>

	<!-- Error Source -->
	<xsd:simpleType name="Error-Source">
		<xsd:restriction base="xsd:integer">
			<xsd:enumeration value="0" />
			<xsd:enumeration value="1" />
			<xsd:enumeration value="2" />
			<xsd:enumeration value="3" />
		</xsd:restriction>
	</xsd:simpleType>

	<!-- Session Ttime-to-live -->
	<xsd:simpleType name="Session-TTL">
		<xsd:restriction base="xsd:integer" />
	</xsd:simpleType>

	<!-- Bytes Received -->
	<xsd:simpleType name="Bytes-Received">
		<xsd:restriction base="xsd:integer" />
	</xsd:simpleType>

	<!-- Network Preferences -->
	<xsd:simpleType name="Network-Preferences">
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="((\s)*([Ww][Ii][Mm][Aa][Xx]|[Uu][Mm][Tt][Ss]|[Ee][Dd][Gg][Ee]|[Cc][Dd][Mm][Aa]2000|[Gg][Aa][Nn]|[Ll][Tt][Ee]|802.11|[Cc][Bb][Ss]|[Bb][Cc][Aa][Ss][Tt])(\s)*(,)*(\s)*)+"/>
		</xsd:restriction>
	</xsd:simpleType>

	<!-- Channel Icon Image -->
	<xsd:simpleType name="Channel-Icon-Image-Type">
		<xsd:restriction base="xsd:base64Binary"/>
	</xsd:simpleType>

	<!-- Channel Icon URI -->
	<xsd:simpleType name="Channel-Icon-URI-Type">
		<xsd:restriction base="xsd:anyURI"/>
	</xsd:simpleType>

	<!--     
        ================================
            Complex Types for Metadata
        ================================
    -->
	<xsd:complexType name="DECA-Content-Metadata">
		<xsd:attribute name="Content-Updated" type="xsd:dateTime" use="optional" />
		<xsd:attribute name="Content-ID" type="xsd:anyURI " use="required" />
		<xsd:attribute name="Channel-ID" type="dcd:ListType" use="optional" />
		<xsd:attribute name="Mime-Type" type="xsd:string" use="required" />
		<xsd:attribute name="Content-Types" type="dcd:ListType"  use="optional"/>
		<xsd:attribute name="Content-Length" type="xsd:integer" use="required" />
		<xsd:attribute name="Content-Name" type="xsd:string" use="optional" />
		<xsd:attribute name="Replaces-Content-ID" type="xsd:anyURI" use="optional" />
		<xsd:attribute name="Content-Price" type="xsd:string" use="optional" />
		<xsd:attribute name="Emergency-Content" type="xsd:boolean" use="optional"  default="false"/>
		<xsd:attribute name="Content-Address" type="xsd:anyURI" use="optional" />
		<xsd:attribute name="Content-Storage-Location" type="xsd:string" use="optional" />
		<xsd:attribute name="Parental-Rating" type="xsd:string" use="optional" />
		<xsd:attribute name="Content-Expiration" type="xsd:string" use="optional" />
	</xsd:complexType>
	<xsd:complexType name="DS-Content-Metadata">
		<xsd:sequence>
			<xsd:element name="Deliver-Per-Location" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Deliver-Per-Presence" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Deliver-Per-Xdms" type="xsd:string" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
		<xsd:attribute name="Content-ID" type="xsd:anyURI" use="required" />
		<xsd:attribute name="Channel-ID" type="dcd:ListType" use="optional" />
		<xsd:attribute name="Mime-Type" type="xsd:string" use="required" />
		<xsd:attribute name="Content-Length" type="xsd:integer" use="required" />
		<xsd:attribute name="Content-Types" type="dcd:ListType"  use="optional"/>
		<xsd:attribute name="Replaces-Content-ID" type="xsd:anyURI" use="optional" />
		<xsd:attribute name="Content-Delivery-Notification" type="xsd:boolean" use="optional" default="false" />
		<!--
                1 – Low
                2 – Medium (*)
                3 – High
                4 – Emergency 
            -->
		<xsd:attribute name="Delivery-Priority" use="optional" default="2 – Medium">
			<xsd:simpleType>
				<xsd:restriction base="xsd:string">
					<xsd:enumeration value="1 – Low"/>
					<xsd:enumeration value="2 – Medium"/>
					<xsd:enumeration value="3 – High"/>
				</xsd:restriction>
			</xsd:simpleType>
		</xsd:attribute>
		<xsd:attribute name="Content-Expiration" type="xsd:string" use="optional" />
		<xsd:attribute name="Aux-Content-Link" type="xsd:anyURI" use="optional" />
		<xsd:attribute name="Content-Block-ID" type="xsd:string" use="optional" />
		<xsd:attribute name="Parental-Rating" type="xsd:string" use="optional" />
		<xsd:attribute name="Deliver-To" type="xsd:string" use="optional" />
		<xsd:attribute name="Deliver-At" type="xsd:dateTime" use="optional" />
		<xsd:attribute name="Delivery-Spread" type="xsd:string" use="optional" />
		<xsd:attribute name="Deliver-When-Roaming" type="xsd:boolean" use="optional" default="false" />
		<xsd:attribute name="Network-Preferences" type="dcd:Network-Preferences" use="optional" />
	</xsd:complexType>
	<xsd:complexType name="DC-Content-Metadata">
		<xsd:attribute name="Content-ID" type="xsd:anyURI" use="required" />
		<xsd:attribute name="Channel-ID" type="dcd:ListType" use="optional" />
		<xsd:attribute name="Mime-Type" type="xsd:string" use="required" />
		<xsd:attribute name="Content-Length" type="xsd:integer" use="required" />
		<xsd:attribute name="Content-Types" type="dcd:ListType" use="optional"/>
		<xsd:attribute name="Content-Name" type="xsd:string" use="optional" />
		<xsd:attribute name="Replaces-Content-ID" type="xsd:anyURI" use="optional" />
		<xsd:attribute name="Content-Delivery-Notification" type="xsd:boolean" use="optional" default="false" />
		<!--
                1 – Low
                2 – Medium (*)
                3 – High
                4 – Emergency 
            -->
		<xsd:attribute name="Delivery-Priority" use="optional" default="2 – Medium">
			<xsd:simpleType>
				<xsd:restriction base="xsd:string">
					<xsd:enumeration value="1 – Low"/>
					<xsd:enumeration value="2 – Medium"/>
					<xsd:enumeration value="3 – High"/>
				</xsd:restriction>
			</xsd:simpleType>
		</xsd:attribute>
		<xsd:attribute name="Emergency-Content" type="xsd:boolean" use="optional"  default="false"/>
		<xsd:attribute name="Content-Expiration" type="xsd:string" use="optional" />
		<xsd:attribute name="Aux-Content-Link" type="xsd:anyURI" use="optional" />
		<xsd:attribute name="Content-Updated" type="xsd:dateTime" use="optional" />
		<xsd:attribute name="Content-Price" type="xsd:string" use="optional" />
		<xsd:attribute name="Content-Encoding" type="xsd:string" use="optional" />
		<xsd:attribute name="Content-Address" type="xsd:anyURI" use="optional" />
		<xsd:attribute name="Content-Storage-Location" type="xsd:string" use="optional" />
		<xsd:attribute name="Parental-Rating" type="xsd:string" use="optional" />
	</xsd:complexType>
	<xsd:complexType name="Application-Profile-Type">
		<xsd:sequence>
			<xsd:element name="Dcd-3-Connection-Profile" type="dcd:Dcd-3-Connection-Profile-Type" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Dcd-Channel-Selection-Metadata" type="dcd:Channel-Selection-Metadata-Type" minOccurs="0" maxOccurs="unbounded" />
		</xsd:sequence>
		<xsd:attribute name="Application-ID" type="xsd:string"/>
		<xsd:attribute name="Application-Description" type="xsd:string" use="optional" />
		<xsd:attribute name="Channel-Discovery-Notification" type="xsd:boolean" use="optional" default="true" />
		<xsd:attribute name="Dcd-3-Connection-Profile-Name" type="xsd:string" use="optional" />
	</xsd:complexType>
	<xsd:complexType name="General-Channel-Metadata-Type">
		<xsd:sequence>
			<xsd:element name="Adaptation-Capability" type="dcd:Adaptation-Capability-Type" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Channel-Icon" type="dcd:Channel-Icon-Type" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
		<xsd:attribute name="Updated" type="xsd:dateTime" use="required" />
		<xsd:attribute name="Channel-ID" type="xsd:string" use="required" />
		<xsd:attribute name="Storage-Reservation" type="xsd:integer" use="optional" />
		<xsd:attribute name="Channel-Name" type="xsd:string" use="optional" />
		<xsd:attribute name="Channel-Description" type="xsd:string" use="optional" />
		<xsd:attribute name="Genre" type="xsd:string" use="optional" />
		<xsd:attribute name="Parental-Rating" type="xsd:string" use="optional" />
		<xsd:attribute name="Content-Expiration" type="xsd:integer" use="optional" />
		<xsd:attribute name="Content-Protection" type="xsd:string" use="optional" />
		<xsd:attribute name="Matching-Applications" type="xsd:string" use="optional"/>
		<xsd:attribute name="Mime-Types" type="xsd:string" use="optional"/>
		<xsd:attribute name="Content-Types" type="xsd:string" use="optional"/>
		<xsd:attribute name="Subscription-Required" type="xsd:boolean" use="optional"/>
	</xsd:complexType>
	<xsd:complexType name="Channel-Selection-Metadata-Type">
		<xsd:attribute name="Mime-Types" type="xsd:string" use="optional"/>
		<xsd:attribute name="Content-Types" type="xsd:string" use="optional"/>
	</xsd:complexType>

	<!--     
        ===========================================
           Referenced Complex Types for Metadata
        ===========================================
    -->
	<!-- DCD-3 Connection Profile -->
	<xsd:complexType name="Dcd-3-Connection-Profile-Type">
		<xsd:sequence>
			<xsd:element name="Data-Connection-Details" type="dcd:Data-Connection-Details-Type " minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Broadcast-Profile" type="dcd:Broadcast-Profile-Type" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
		<xsd:attribute name="Dcd-Server-Address" type="xsd:anyURI" use="optional"/>
		<xsd:attribute name="Proxy" type="xsd:string" use="optional"/>
	</xsd:complexType>

	<!-- Charging Metadata -->
	<xsd:complexType name="Charging-Metadata-Type">
		<xsd:sequence>
			<xsd:element name="Charging-Rules" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Purchase-Options" type="dcd:Purchase-Options-Type" minOccurs="0" maxOccurs="unbounded"/>
		</xsd:sequence>
	</xsd:complexType>

	<!-- Channel-Icon can be IMAGE or URI-->
	<xsd:complexType name="Channel-Icon-Type">
		<xsd:sequence>
			<xsd:choice>
				<xsd:element name="Channel-Icon-Image" type="dcd:Channel-Icon-Image-Type" minOccurs="0" maxOccurs="1" />
				<xsd:element name="Channel-Icon-URI" type="dcd:Channel-Icon-URI-Type" minOccurs="0" maxOccurs="1" />
			</xsd:choice>
		</xsd:sequence>
		<xsd:attribute name="Mime-Type" type="xsd:string" use="optional" />
	</xsd:complexType>

	<!-- Purchase Options -->
	<xsd:complexType name="Purchase-Options-Type">
		<xsd:sequence>
			<xsd:element name="Price" type="dcd:Price-Type" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
		<xsd:attribute name="Purchase-Option-Id" type="xsd:string" use="required"/>
		<xsd:attribute name="Cost-Information" type="xsd:string" use="optional"/>
	</xsd:complexType>

	<!-- Price -->
	<xsd:complexType name="Price-Type">
		<xsd:attribute name="Amount" type="xsd:float" use="required"/>
		<xsd:attribute name="Currency" type="xsd:integer" use="required"/>
	</xsd:complexType>

	<!-- DCD-1 Connection Profile -->
	<xsd:complexType name="Dcd-1-Connection-Profile-Type">
		<xsd:sequence>
			<xsd:element name="Data-Connection-Details" type="dcd:Data-Connection-Details-Type" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
		<xsd:attribute name="DCD-Server-Address" type="xsd:anyURI" use="required"/>
		<xsd:attribute name="Proxy" type="xsd:string" use="optional"/>
	</xsd:complexType>

	<!-- DCD-2 Broadcast Profile -->
	<xsd:complexType name="Dcd-2-broadcast-profile-Type">
		<xsd:sequence>
			<xsd:element name="Bcast-Access-Info" type="dcd:Bcast-Access-Info-Type" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
		<xsd:attribute name="Cell-Broadcast-Message-ID" type="xsd:integer" use="optional"/>
	</xsd:complexType>

	<!-- Publication Schedule -->
	<xsd:complexType name="Publication-Schedule-Type">
		<xsd:attribute name="Publication-Start-Date" type="xsd:date" use="optional"/>
		<xsd:attribute name="Publication-Start-Time" type="xsd:time" use="optional"/>
		<xsd:attribute name="Polling-Interval" type="xsd:integer" use="optional"/>
		<xsd:attribute name="Publication-End-Date" type="xsd:date" use="optional"/>
		<xsd:attribute name="Publication-End-Time" type="xsd:time" use="optional"/>
	</xsd:complexType>

	<!-- Channel Publication Metadata -->
	<xsd:complexType name="Channel-Publication-Metadata-Type">
		<xsd:sequence>
			<xsd:element name="Publication-Schedule" type="dcd:Publication-Schedule-Type" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="Push-Schedule" type="dcd:Push-Schedule-Type" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="Channel-Personalization" type="dcd:Channel-Personalization-Type" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Channel-Subscription" type="dcd:Channel-Subscription-Type" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
		<xsd:attribute name="Channel-Availability-Start" type="xsd:dateTime" use="required"/>
		<xsd:attribute name="Channel-Availability-End" type="xsd:dateTime" use="optional"/>
		<xsd:attribute name="Publication-Methods" type="dcd:ListType" use="required"/>
		<xsd:attribute name="Pull-Publication-Address" type="xsd:anyURI" use="optional"/>
	</xsd:complexType>

	<!-- Delivery Preferences Metadata -->
	<xsd:complexType name="Delivery-Preferences-Metadata-Type">
		<xsd:sequence>
			<xsd:element name="Dcd-1-Connection-Profile" type="dcd:Dcd-1-Connection-Profile-Type" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Dcd-2-broadcast-profile" type="dcd:Dcd-2-broadcast-profile-Type" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Pull-Schedule" type="dcd:Pull-Schedule-Type" minOccurs="0" maxOccurs="unbounded"/>
		</xsd:sequence>
		<xsd:attribute name="Channel-ID" type="xsd:string" use="required" />
		<xsd:attribute name="Network-Preferences" type="dcd:Network-Preferences" use="optional" />
		<xsd:attribute name="Dcd-Interface" type="dcd:InterfaceType" use="optional" />
		<xsd:attribute name="Deliver-When-Roaming" type="xsd:boolean" use="optional" default="false" />
		<xsd:attribute name="Suspend-Allowed" type="xsd:boolean" use="optional" default="true" />
		<xsd:attribute name="On-Demand-Pull-Allowed" type="xsd:boolean" use="optional" default="true" />
		<xsd:attribute name="Update-Upon-Expiration-Allowed" type="xsd:boolean" use="optional" default="false" />
		<xsd:attribute name="Dcd-1-Connection-Profile-Name" type="xsd:string" use="optional" />
		<xsd:attribute name="Dcd-2-Broadcast-Profile-Name" type="xsd:string" use="optional" />
	</xsd:complexType>

	<!-- Delivery Personalization Metadata -->
	<xsd:complexType name="Delivery-Personalization-Metadata-Type">
		<xsd:sequence>
			<xsd:element name="Dcd-2-broadcast-profile" type="dcd:Dcd-2-broadcast-profile-Type" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
		<xsd:attribute name="Channel-ID" type="xsd:string" use="required" />
		<xsd:attribute name="Content-Availability-Notification" type="xsd:boolean" use="optional" />
		<xsd:attribute name="Dcd-Provided-Storage-Size" type="xsd:integer" use="optional" />
		<xsd:attribute name="Content-Storage-Location" type="xsd:string" use="optional" />
		<xsd:attribute name="Deliver-When-Roaming" type="xsd:boolean" use="optional" default="false" />
		<xsd:attribute name="Network-Preferences" type="dcd:Network-Preferences" use="optional" />
		<xsd:attribute name="Dcd-2-Broadcast-Profile-Name" type="xsd:string" use="optional" />
		<xsd:attribute name="Update-Upon-Expiration" type="xsd:boolean" use="optional" default="false" />
	</xsd:complexType>

	<!-- Channel Subscription -->
	<xsd:complexType name="Channel-Subscription-Type">
		<xsd:attribute name="CP-Subscription-Manager-Address" type="xsd:anyURI" use="optional"/>
		<xsd:attribute name="Notify-On-Subscription-Change" type="xsd:boolean" use="optional" default="false" />
		<xsd:attribute name="Proxied-Subscription" type="xsd:boolean" use="optional" default="true" />
	</xsd:complexType>

	<!-- Channel Personalization -->
	<xsd:complexType name="Channel-Personalization-Type">
		<xsd:sequence>
			<xsd:element name="Deliver-Per-Location" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="Deliver-Per-Presence" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="Deliver-Per-Xdms" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
		</xsd:sequence>
	</xsd:complexType>

	<!-- Data Connection Details -->
	<xsd:complexType name="Data-Connection-Details-Type">
		<xsd:attribute name="Apn" type="xsd:string" use="optional" />
		<xsd:attribute name="Auth-Method" type="dcd:Auth-Method-Type" use="optional" />
		<xsd:attribute name="Auth-Username" type="xsd:string" use="optional" />
		<xsd:attribute name="Auth-Password" type="xsd:string" use="optional" />
	</xsd:complexType>

	<!-- Bcast Access Info -->
	<xsd:complexType name="Bcast-Access-Info-Type">
		<xsd:choice>
			<xsd:element name="Service-Fragment-Reference" type="xsd:anyURI" />
			<xsd:element name="Access-Fragment" type="bcast:AccessType" maxOccurs="unbounded"/>
			<xsd:element name="Sdp-Description" type="xsd:string" maxOccurs="unbounded"/>
		</xsd:choice>
	</xsd:complexType>

	<!-- Pull Schedule -->
	<xsd:complexType name="Pull-Schedule-Type">
		<xsd:attribute name="Pull-Start-Date" type="xsd:date" use="optional" />
		<xsd:attribute name="Pull-Start-Time" type="xsd:time" use="optional" />
		<xsd:attribute name="Pull-Interval" type="xsd:integer" use="optional" />
		<xsd:attribute name="Pull-End-Date" type="xsd:date" use="optional" />
		<xsd:attribute name="Pull-End-Time" type="xsd:time" use="optional" />
	</xsd:complexType>

	<!-- Push Schedule -->
	<xsd:complexType name="Push-Schedule-Type">
		<xsd:attribute name="Push-Start-Date" type="xsd:date" use="optional" />
		<xsd:attribute name="Push-Start-Time" type="xsd:time" use="optional" />
		<xsd:attribute name="Push-Interval" type="xsd:integer" use="optional" />
		<xsd:attribute name="Push-End-Date" type="xsd:date" use="optional" />
		<xsd:attribute name="Push-End-Time" type="xsd:time" use="optional" />
	</xsd:complexType>

	<!--
        =============================
            DCD Messages
        =============================  
    -->
	<xsd:element name="dcd">
		<xsd:complexType>
			<xsd:choice>
				<xsd:element name="Message-Type" type="xsd:string" />
				<xsd:element name="ApplicationDeregistrationResponse" type="dcd:ApplicationDeregistrationResponse" />
				<xsd:element name="ApplicationDeregistrationNotification" type="dcd:ApplicationDeregistrationNotification" />
				<xsd:element name="ApplicationDeregistrationRequest" type="dcd:ApplicationDeregistrationRequest" />
				<xsd:element name="ApplicationDeregistrationConfirmation" type="dcd:ApplicationDeregistrationConfirmation" />
				<xsd:element name="ApplicationRegistrationRequest_overCAR" type="dcd:ApplicationRegistrationRequest_overCAR" />
				<xsd:element name="ApplicationRegistrationRequest_overDCD3" type="dcd:ApplicationRegistrationRequest_overDCD3" />
				<xsd:element name="ApplicationRegistrationResponse_overCAR" type="dcd:ApplicationRegistrationResponse_overCAR"/>
				<xsd:element name="ApplicationRegistrationResponse_overDCD3" type="dcd:ApplicationRegistrationResponse_overDCD3" />
				<xsd:element name="ChannelDeregistrationConfirmation" type="dcd:ChannelDeregistrationConfirmation"/>
				<xsd:element name="ChannelDeregistrationNotification" type="dcd:ChannelDeregistrationNotification"/>
				<xsd:element name="ChannelDeregistrationRequest" type="dcd:ChannelDeregistrationRequest" />
				<xsd:element name="ChannelDeregistrationResponse" type="dcd:ChannelDeregistrationResponse" />
				<xsd:element name="ChannelDiscoveryConfirmation" type="dcd:ChannelDiscoveryConfirmation" />
				<xsd:element name="ChannelDiscoveryInfo_overCADE" type="dcd:ChannelDiscoveryInfo_overCADE" />
				<xsd:element name="ChannelDiscoveryInfo_overDCD3" type="dcd:ChannelDiscoveryInfo_overDCD3" />
				<xsd:element name="ChannelDiscoveryNotification" type="dcd:ChannelDiscoveryNotification" />
				<xsd:element name="ChannelDiscoveryRequest_overCADE" type="dcd:ChannelDiscoveryRequest_overCADE" />
				<xsd:element name="ChannelDiscoveryRequest_overDCD3" type="dcd:ChannelDiscoveryRequest_overDCD3" />
				<xsd:element name="ChannelDiscoveryResponse" type="dcd:ChannelDiscoveryResponse"/>
				<xsd:element name="ChannelRegistrationRequest" type="dcd:ChannelRegistrationRequest" />
				<xsd:element name="ChannelRegistrationResponse" type="dcd:ChannelRegistrationResponse" />
				<xsd:element name="ChannelResumeNotification_overDCD3" type="dcd:ChannelResumeNotification_overDCD3" />
				<xsd:element name="ChannelResumeNotification_overCADE" type="dcd:ChannelResumeNotification_overCADE" />
				<xsd:element name="ChannelResumeNotification_overCPDE" type="dcd:ChannelResumeNotification_overCPDE" />
				<xsd:element name="ChannelResumeRequest_overCADE" type="dcd:ChannelResumeRequest_overCADE" />
				<xsd:element name="ChannelResumeRequest_overCPDE" type="dcd:ChannelResumeRequest_overCPDE" />
				<xsd:element name="ChannelResumeRequest_overDCD3" type="dcd:ChannelResumeRequest_overDCD3" />
				<xsd:element name="ChannelResumeResponse_overCPDE" type="dcd:ChannelResumeResponse_overCPDE" />
				<xsd:element name="ChannelResumeResponse_overDCD3" type="dcd:ChannelResumeResponse_overDCD3" />
				<xsd:element name="ChannelResumeResponse_overCADE" type="dcd:ChannelResumeResponse_overCADE" />
				<xsd:element name="ChannelSubscriptionNotification_overDCD3" type="dcd:ChannelSubscriptionNotification_overDCD3" />
				<xsd:element name="ChannelResumeConfirmation" type="dcd:ChannelResumeConfirmation" />
				<xsd:element name="ChannelSubscriptionRequest" type="dcd:ChannelSubscriptionRequest" />
				<xsd:element name="ChannelSubscriptionResponse" type="dcd:ChannelSubscriptionResponse" />
				<xsd:element name="ChannelSubscriptionNotificationResponse_overDCD3" type="dcd:ChannelSubscriptionNotificationResponse_overDCD3" />
				<xsd:element name="ChannelSuspendNotification_overDCD3" type="dcd:ChannelSuspendNotification_overDCD3" />
				<xsd:element name="ChannelSuspendNotification_overCPDE" type="dcd:ChannelSuspendNotification_overCPDE" />
				<xsd:element name="ChannelSuspendNotification_overCADE" type="dcd:ChannelSuspendNotification_overCADE" />
				<xsd:element name="ChannelSuspendRequest_overCADE" type="dcd:ChannelSuspendRequest_overCADE" />
				<xsd:element name="ChannelSuspendRequest_overCPDE" type="dcd:ChannelSuspendRequest_overCPDE" />
				<xsd:element name="ChannelSuspendRequest_overDCD3" type="dcd:ChannelSuspendRequest_overDCD3" />
				<xsd:element name="ChannelSuspendResponse_overDCD3" type="dcd:ChannelSuspendResponse_overDCD3" />
				<xsd:element name="ChannelSuspendResponse_overCADE" type="dcd:ChannelSuspendResponse_overCADE" />
				<xsd:element name="ChannelSuspendResponse_overCPDE" type="dcd:ChannelSuspendResponse_overCPDE" />
				<xsd:element name="ChannelUnsubscriptionRequest" type="dcd:ChannelUnsubscriptionRequest" />
				<xsd:element name="ChannelUnsubscriptionResponse" type="dcd:ChannelUnsubscriptionResponse" />
				<xsd:element name="ChannelUnsubscriptionNotification_overDCD3" type="dcd:ChannelUnsubscriptionNotification_overDCD3" />
				<xsd:element name="UnsubscriptionNotification_overCAR" type="dcd:UnsubscriptionNotification_overCAR" />
				<xsd:element name="ChannelUnsubscriptionConfirmation" type="dcd:ChannelUnsubscriptionConfirmation" />
				<xsd:element name="ClientActivationRequest_overDCD3" type="dcd:ClientActivationRequest_overDCD3" />
				<xsd:element name="ClientActivationResponse_overDCD3" type="dcd:ClientActivationResponse_overDCD3" />
				<xsd:element name="ClientDeactivationNotification" type="dcd:ClientDeactivationNotification" />
				<xsd:element name="ClientDeactivationRequest" type="dcd:ClientDeactivationRequest" />
				<xsd:element name="ClientDeactivationResponse" type="dcd:ClientDeactivationResponse" />
				<xsd:element name="Content" type="dcd:Content" />
				<xsd:element name="ContentDeliveryConfirmation_overDCD1" type="dcd:ContentDeliveryConfirmation_overDCD1" />
				<xsd:element name="ContentRequest" type="dcd:ContentRequest" />
				<xsd:element name="ContentSubmitRequest_overCADE" type="dcd:ContentSubmitRequest_overCADE" />
				<xsd:element name="ContentSubmitRequest_overDCD1" type="dcd:ContentSubmitRequest_overDCD1" />
				<xsd:element name="ContentSubmitConfirmation_overDCD1" type= "dcd:ContentSubmitConfirmation_overDCD1 " />
				<xsd:element name="ContentSubmitConfirmation_overCADE" type="dcd:ContentSubmitConfirmation_overCADE" />
				<xsd:element name="ContentUpdateNotification_overDCD2" type="dcd:ContentUpdateNotification_overDCD2" />
				<xsd:element name="ContentUpdatePush_overDCD2" type="dcd:ContentUpdatePush_overDCD2" />
				<xsd:element name="ContentUpdateRequest_overCPDE" type="dcd:ContentUpdateRequest_overCPDE" />
				<xsd:element name="ContentUpdateRequest_overDCD1" type="dcd:ContentUpdateRequest_overDCD1" />
				<xsd:element name="ContentUpdateResponse_overCPDE" type="dcd:ContentUpdateResponse_overCPDE" />
				<xsd:element name="ContentUpdateResponse_overDCD1" type="dcd:ContentUpdateResponse_overDCD1" />
				<xsd:element name="ContentUpdate_overCPDE" type="dcd:ContentUpdate_overCPDE" />
				<xsd:element name="ContextualInformationUpload" type="dcd:ContextualInformationUpload" />
				<xsd:element name="ContextualInformationUploadRequest" type="dcd:ContextualInformationUploadRequest" />
				<xsd:element name="ConectionProfileUpdate" type="dcd:ConnectionProfileUpdate" />
				<xsd:element name="ConectionProfileConfirmation" type="dcd:ConnectionProfileConfirmation" />
				<xsd:element name="RequestForChannelRegistration" type="dcd:RequestForChannelRegistration" />
				<xsd:element name="RequestForClientActivation" type="dcd:RequestForClientActivation" />
				<xsd:element name="RequestForUsageTrackingReport" type="dcd:RequestForUsageTrackingReport" />
				<xsd:element name="RequestForUsageReport" type="dcd:RequestForUsageReport" />
				<xsd:element name="ContentRepairRequest" type="dcd:ContentRepairRequest" />
				<xsd:element name="ContentRepairResponse" type="dcd:ContentRepairResponse" />
				<xsd:element name="ChannelMetadataUpdate_overDCD3" type="dcd:ChannelMetadataUpdate_overDCD3" />
				<xsd:element name="ChannelMetadataUpdateConfirmation" type="dcd:ChannelMetadataUpdateConfirmation" />
				<xsd:element name="ChannelMetadataUpdate_overCAR" type="dcd:ChannelMetadataUpdate_overCAR" />
				<xsd:element name="SubscriptionNotification_overCPR" type="dcd:SubscriptionNotification_overCPR" />
				<xsd:element name="SubscriptionNotificationResponse_overCPR" type="dcd:SubscriptionNotificationResponse_overCPR" />
				<xsd:element name="SubscriptionRequest_overCAR" type="dcd:SubscriptionRequest_overCAR" />
				<xsd:element name="SubscriptionRequest_overCPR" type="dcd:SubscriptionRequest_overCPR" />
				<xsd:element name="SubscriptionResponse_overCAR" type="dcd:SubscriptionResponse_overCAR" />
				<xsd:element name="SubscriptionResponse_overCPR" type="dcd:SubscriptionResponse_overCPR" />
				<xsd:element name="SubscriptionUpdate" type="dcd:SubscriptionUpdate" />
				<xsd:element name="SubscriptionUpdateRequest" type="dcd:SubscriptionUpdateRequest" />
				<xsd:element name="SubscriptionUpdateResponse" type="dcd:SubscriptionUpdateResponse" />
				<xsd:element name="SubscriptionValidationRequest" type="dcd:SubscriptionValidationRequest" />
				<xsd:element name="SubscriptionValidationResponse" type="dcd:SubscriptionValidationResponse" />
				<xsd:element name="UnsubscriptionNotification_overCPR" type="dcd:UnsubscriptionNotification_overCPR" />
				<xsd:element name="UnsubscriptionRequest" type="dcd:UnsubscriptionRequest" />
				<xsd:element name="UnsubscriptionResponse" type="dcd:UnsubscriptionResponse" />
				<xsd:element name="UsageTrackingReport" type="dcd:UsageTrackingReport" />
				<xsd:element name="ErrorNotification_overDCD1" type="dcd:ErrorNotification_overDCD1" />
				<xsd:element name="ErrorNotification_overDCD3" type="dcd:ErrorNotification_overDCD3" />
				<xsd:element name="ErrorNotification_overCPR" type="dcd:ErrorNotification_overCPR" />
				<xsd:element name="ErrorNotification_overCPDE" type="dcd:ErrorNotification_overCPDE" />
				<xsd:element name="ErrorNotification_overCAR" type="dcd:ErrorNotification_overCAR" />
				<xsd:element name="ErrorNotification_overCADE" type="dcd:ErrorNotification_overCADE" />
			</xsd:choice>
		</xsd:complexType>
	</xsd:element>
	<!--
        ================================
            Complex Types for Messages
        ================================
    -->
	<xsd:complexType name="ApplicationDeregistrationConfirmation">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ApplicationDeregistrationRequest">
		<xsd:sequence>
			<xsd:element name="Application-ID" type="dcd:Application-ID"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ApplicationDeregistrationNotification">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:element name="Application-ID" type="dcd:Application-ID"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ApplicationDeregistrationResponse">
	</xsd:complexType>
	<xsd:complexType name="ApplicationRegistrationRequest_overCAR">
		<xsd:sequence>
			<xsd:element name="Application-Profile" type="dcd:Application-Profile-Type" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ApplicationRegistrationRequest_overDCD3">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:element name="Application-Profile" type="dcd:Application-Profile-Type" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ApplicationRegistrationResponse_overCAR">
		<xsd:sequence>
			<xsd:element name="Channel-Discovery-Information" type="dcd:Channel-Discovery-Information" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ApplicationRegistrationResponse_overDCD3">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:element name="Channel-Guide" type="dcd:Channel-Guide-Reg-Req-DCD3"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelDeregistrationConfirmation">
	</xsd:complexType>
	<xsd:complexType name="ChannelDeregistrationNotification">
		<xsd:sequence>
			<xsd:element name="Channel-IDs" type="dcd:Channel-IDs" />
			<xsd:element name="Reason" type="dcd:Reason" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelDeregistrationRequest">
		<xsd:sequence>
			<xsd:element name="Channel-ID" type="dcd:Channel-ID" />
			<xsd:element name="Reason" type="dcd:Reason" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelDeregistrationResponse">
	</xsd:complexType>
	<xsd:complexType name="ChannelDiscoveryConfirmation">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelDiscoveryInfo_overCADE">
		<xsd:sequence>
			<xsd:element name="Channels-Added" type="dcd:Channel-Guide" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Channels-Removed" type="dcd:ChannelList" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Channels-Updated" type="dcd:Channel-Guide" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelDiscoveryInfo_overDCD3">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Broadcast-Service-ID" type="dcd:Broadcast-Service-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Message-ID" type="dcd:Message-ID"/>
			<xsd:element name="Channels-Added" type="dcd:Channel-Guide" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Channels-Removed" type="dcd:ChannelList" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Channels-Updated" type="dcd:Channel-Guide" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelDiscoveryNotification">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Broadcast-Service-ID" type="dcd:Broadcast-Service-ID" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelDiscoveryRequest_overCADE">
		<xsd:sequence>
			<xsd:element name="Application-ID" type="dcd:Application-ID" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelDiscoveryRequest_overDCD3">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelDiscoveryResponse">
		<xsd:sequence>
			<xsd:element name="Channel-Guide" type="dcd:Channel-Guide"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelRegistrationRequest">
		<xsd:sequence>
			<xsd:element name="Channel-Metadata" type="dcd:Channel-Metadata-Reg-Req-CPR" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelRegistrationResponse">
		<xsd:sequence>
			<xsd:element name="Channel-ID" type="dcd:Channel-ID" />
			<xsd:element name="Push-Publication-Address" type="dcd:Push-Publication-Address" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelResumeConfirmation">
	</xsd:complexType>
	<xsd:complexType name="ChannelResumeNotification_overDCD3">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Broadcast-Service-ID" type="dcd:Broadcast-Service-ID" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:element name="Channel-IDs" type="dcd:Channel-IDs" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelResumeNotification_overCADE">
		<xsd:sequence>
			<xsd:element name="Channel-IDs" type="dcd:Channel-IDs" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelResumeNotification_overCPDE">
		<xsd:sequence>
			<xsd:element name="Channel-IDs" type="dcd:Channel-IDs" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelResumeRequest_overCADE">
		<xsd:sequence>
			<xsd:element name="Channel-IDs" type="dcd:Channel-IDs" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelResumeRequest_overCPDE">
		<xsd:sequence>
			<xsd:element name="Channel-IDs" type="dcd:Channel-IDs" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelResumeRequest_overDCD3">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:element name="Channel-IDs" type="dcd:Channel-IDs" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelResumeResponse_overCPDE">
	</xsd:complexType>
	<xsd:complexType name="ChannelResumeResponse_overDCD3">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelResumeResponse_overCADE">
	</xsd:complexType>
	<xsd:complexType name="ChannelSubscriptionNotification_overDCD3">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:element name="Application-ID" type="dcd:Application-ID"/>
			<xsd:element name="Subscription-ID" type="dcd:Subscription-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Channel-Metadata" type="dcd:Channel-Metadata-Sub-Notif" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelSubscriptionRequest">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:element name="Selected-Purchase-Option" type="dcd:Selected-Purchase-Option" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Subscription-IDs" type="dcd:Subscription-IDs" minOccurs="0" maxOccurs="1" />
			<!-- Channel-Metadata or Content-Address -->
			<xsd:choice>
				<xsd:element name="Channel-Metadata" type="dcd:Delivery-Personalization-Metadata-Type" />
				<xsd:element name="Content-Address" type="dcd:Content-Address" />
			</xsd:choice>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelSubscriptionNotificationResponse_overDCD3">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:choice>
				<xsd:element name="Subscription-Declined" type="dcd:Subscription-Declined-Type " minOccurs="0" maxOccurs="1" />
				<xsd:sequence>
					<xsd:element name="Selected-Purchase-Option" type="dcd:Selected-Purchase-Option" minOccurs="0" maxOccurs="1" />
					<xsd:element name="Channel-Metadata" type="dcd:Delivery-Personalization-Metadata-Type" minOccurs="0" maxOccurs="1" />
				</xsd:sequence>
			</xsd:choice>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelSubscriptionResponse">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:element name="Channel-Metadata" type="dcd:Delivery-Preferences-Metadata-Type" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelSuspendNotification_overDCD3">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Broadcast-Service-ID" type="dcd:Broadcast-Service-ID" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:element name="Channel-IDs" type="dcd:Channel-IDs" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelSuspendNotification_overCPDE">
		<xsd:sequence>
			<xsd:element name="Channel-IDs" type="dcd:Channel-IDs" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelSuspendNotification_overCADE">
		<xsd:sequence>
			<xsd:element name="Channel-IDs" type="dcd:Channel-IDs" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelSuspendRequest_overCADE">
		<xsd:sequence>
			<xsd:element name="Channel-IDs" type="dcd:Channel-IDs" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelSuspendRequest_overCPDE">
		<xsd:sequence>
			<xsd:element name="Channel-IDs" type="dcd:Channel-IDs" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelSuspendRequest_overDCD3">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:element name="Channel-IDs" type="dcd:Channel-IDs" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelSuspendResponse_overDCD3">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelSuspendResponse_overCPDE">
	</xsd:complexType>
	<xsd:complexType name="ChannelSuspendResponse_overCADE">
	</xsd:complexType>
	<xsd:complexType name="ChannelUnsubscriptionRequest">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:element name="Channel-ID" type="dcd:Channel-ID" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelUnsubscriptionResponse">
		<xsd:sequence>
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelUnsubscriptionNotification_overDCD3">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" minOccurs="0" maxOccurs="1"  />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:element name="Channel-ID" type="dcd:Channel-ID" />
			<xsd:element name="Reason" type="dcd:Reason" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelUnsubscriptionConfirmation">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" minOccurs="0" maxOccurs="1"  />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="UnsubscriptionNotification_overCAR">
		<xsd:sequence>
			<xsd:element name="Channel-ID" type="dcd:Channel-ID" />
			<xsd:element name="Reason" type="dcd:Reason" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ClientActivationRequest_overDCD3">
		<xsd:sequence>
			<xsd:element name="Device-ID" type="dcd:Device-ID" minOccurs= "0" maxOccurs= "1" />
			<xsd:element name="Version" type="dcd:Version" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ClientActivationResponse_overDCD3">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Broadcast-Service-ID" type="dcd:Broadcast-Service-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Session-TTL" type="dcd:Session-TTL" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ClientDeactivationNotification">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Broadcast-Service-ID" type="dcd:Broadcast-Service-ID"   minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Reason" type="dcd:Reason" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ClientDeactivationRequest">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ClientDeactivationResponse">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Content">
		<xsd:sequence>
			<xsd:element name="Content-Metadata" type="dcd:DECA-Content-Metadata" />
			<xsd:element name="Content" type="dcd:DCD-Content" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ContentDeliveryConfirmation_overDCD1">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:element name="Content-Confirmation" type="dcd:Content-Confirmation-Type" maxOccurs="unbounded" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ContentRequest">
		<xsd:sequence>
			<xsd:element name="Application-ID" type="dcd:Application-ID"/>
			<xsd:element name="Channel-IDs" type="dcd:Channel-IDs" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Content-ID" type="dcd:Content-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Content-Address" type="dcd:Content-Address" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ContentSubmitRequest_overCADE">
		<xsd:sequence>
			<xsd:element name="Application-ID" type="dcd:Application-ID"/>
			<xsd:element name="Channel-ID" type="dcd:Channel-ID" />
			<xsd:element name="Submit-Address" type="dcd:Submit-Address" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Submit-Package" type="dcd:Submit-Package" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ContentSubmitRequest_overDCD1">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:element name="Channel-ID" type="dcd:Channel-ID" />
			<xsd:element name="Submit-Address" type="dcd:Submit-Address" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Submit-Package" type="dcd:Submit-Package" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ContentUpdateNotification_overDCD2">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Broadcast-Service-ID" type="dcd:Broadcast-Service-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" minOccurs="0" maxOccurs="1" />
			<xsd:choice>
				<xsd:element name="DCD-Content-Reference" type="dcd:DCD-Content-Reference" />
				<xsd:element name="Content-Metadata" type="dcd:DC-Content-Metadata" maxOccurs="unbounded" />
			</xsd:choice>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ContentUpdatePush_overDCD2">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Broadcast-Service-ID" type="dcd:Broadcast-Service-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Channel-ID" type="dcd:Channel-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Content-Package" type="dcd:Client-Package" maxOccurs="unbounded"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ContentUpdateRequest_overCPDE">
		<xsd:sequence>
			<xsd:element name="Channel-ID" type="dcd:Channel-ID" />
			<xsd:element name="Subscription-IDs" type="dcd:Subscription-IDs" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Submit-Package" type="dcd:Submit-Package" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ContentUpdateRequest_overDCD1">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Session-ID" />
			<xsd:element name="Channel-IDs" type="dcd:Channel-IDs" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Content-IDs" type="dcd:Content-IDs" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Content-Addresses" type="dcd:Content-Addresses" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ContentUpdateResponse_overCPDE">
		<xsd:sequence>
			<xsd:element name="Content-Package" type="dcd:Server-Package" maxOccurs="unbounded"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ContentUpdateResponse_overDCD1">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:element name="Channel-ID" type="dcd:Channel-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Content-Package" type="dcd:Client-Package" maxOccurs="unbounded"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ContentSubmitConfirmation_overDCD1">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ContentSubmitConfirmation_overCADE">
	</xsd:complexType>
	<xsd:complexType name="ContentUpdate_overCPDE">
		<xsd:sequence>
			<xsd:element name="Content-Package" type="dcd:Server-Package" maxOccurs="unbounded"/>
			<xsd:element name="Channel-ID" type="dcd:Channel-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Subscription-IDs" type="dcd:Subscription-IDs" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ContextualInformationUpload">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:element name="Contextual-Information" type="dcd:Contextual-Information"  />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ContextualInformationUploadRequest">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Broadcast-Service-ID" type="dcd:Broadcast-Service-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Report-Policy" type="dcd:Report-Policy-CI-Type"  minOccurs="0" maxOccurs="1"  />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ConnectionProfileUpdate">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:element name="Dcd-3-Connection-Profile-Name " type="dcd:Dcd-3-Connection-Profile-Name" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Dcd-3-Connection-Profile" type="dcd:Dcd-3-Connection-Profile-Type"  minOccurs="0" maxOccurs="1"  />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ConnectionProfileConfirmation">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID"/>
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="RequestForChannelRegistration">
		<xsd:sequence>
			<xsd:element name="Channel-Reference" type="dcd:Channel-Reference" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="RequestForClientActivation">
	</xsd:complexType>
	<xsd:complexType name="RequestForUsageTrackingReport">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Broadcast-Service-ID" type="dcd:Broadcast-Service-ID" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:element name="Application-ID" type="dcd:Application-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Usage-Report-Server-Address" type="dcd:Usage-Report-Server-Address" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Report-Policy" type="dcd:Report-Policy-UT-Type" minOccurs="0" maxOccurs="unbounded"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="RequestForUsageReport">
		<xsd:sequence>
			<xsd:element name="Channel-IDs" type="dcd:Channel-IDs" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Content-IDs" type="dcd:Content-IDs" minOccurs="0" maxOccurs="1"/>
			<xsd:choice>
				<xsd:element name="Subscriber-Infos" type="dcd:Subscriber-Infos" minOccurs="0" maxOccurs="1" />
				<xsd:element name="Subscription-IDs" type="dcd:Subscription-IDs" minOccurs="0" maxOccurs="1" />
			</xsd:choice>
			<xsd:element name="Application-IDs" type="dcd:Application-IDs" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ContentRepairRequest">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:choice>
				<xsd:element name="Failed-Message-ID" type="dcd:Message-ID"/>
				<xsd:sequence>
					<xsd:element name="Failed-Content-ID" type="dcd:Content-ID"/>
					<xsd:element name="Channel-ID" type="dcd:Channel-ID"/>
				</xsd:sequence>
			</xsd:choice>
			<xsd:element name="Bytes-Received" type="dcd:Bytes-Received" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ContentRepairResponse">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:element name="Content-Package" type="dcd:Client-Package"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelMetadataUpdate_overDCD3">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Broadcast-Service-ID" type="dcd:Broadcast-Service-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:element name="Channel-Metadata" type=" dcd:Channel-Metadata-Sub-Notif" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelMetadataUpdateConfirmation">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ChannelMetadataUpdate_overCAR">
		<xsd:sequence>
			<xsd:element name="Channel-Metadata" type=" dcd:Channel-Metadata-Valid-Update" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="SubscriptionNotification_overCPR">
		<xsd:sequence>
			<xsd:element name="Delivery-Endpoint-Info" type="dcd:Delivery-Endpoint-Info" />
			<xsd:element name="Channel-Metadata" type="dcd:Channel-Metadata-Sub-Notif" />
			<xsd:element name="Subscription-ID" type="dcd:Subscription-ID" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="SubscriptionNotificationResponse_overCPR">
		<xsd:sequence>
			<xsd:choice>
				<xsd:element name="Subscription-Declined" type="dcd:Subscription-Declined-Type" />
				<xsd:sequence>
					<xsd:element name="Channel-Metadata" type="dcd:Delivery-Personalization-Metadata-Type" minOccurs="0" maxOccurs="1"/>
					<xsd:element name="Selected-Purchase-Option" type="dcd:Selected-Purchase-Option" minOccurs="0" maxOccurs="1"/>
				</xsd:sequence>
			</xsd:choice>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="SubscriptionRequest_overCAR">
		<xsd:sequence>
			<xsd:element name="Application-ID" type="dcd:Application-ID" />
			<!-- Channel-Metadata or Content-Address -->
			<xsd:choice>
				<xsd:sequence>
					<xsd:element name="Channel-Metadata" type="dcd:Delivery-Personalization-Metadata-Type" />
					<xsd:element name="Selected-Purchase-Option" type="dcd:Selected-Purchase-Option" minOccurs="0" maxOccurs="1"/>
				</xsd:sequence>
				<xsd:element name="Content-Address" type="dcd:Content-Address" />
			</xsd:choice>
			<xsd:element name="Subscription-ID" type="dcd:Subscription-ID" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="SubscriptionRequest_overCPR">
		<xsd:sequence>
			<xsd:element name="Channel-Metadata" type="dcd:General-Channel-Metadata-Type" />
			<xsd:element name="Subscriber-Info" type="dcd:Subscriber-Info" />
			<xsd:element name="Selected-Purchase-Option-ID" type="dcd:Selected-Purchase-Option" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Subscription-ID" type="dcd:Subscription-ID" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="SubscriptionResponse_overCAR">
		<xsd:sequence>
			<xsd:element name="Channel-Metadata" type="dcd:General-Channel-Metadata-Type" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="SubscriptionResponse_overCPR">
		<xsd:sequence>
			<xsd:element name="Channel-Metadata" type="dcd:Delivery-Preferences-Metadata-Type" minOccurs="0" maxOccurs="1"  />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="SubscriptionUpdate">
		<xsd:sequence>
			<xsd:element name="Subscriber-Info" type="dcd:Subscriber-Info" />
			<xsd:element name="Channel-ID" type="dcd:Channel-ID" />
			<xsd:element name="Subscription-ID" type="dcd:Subscription-ID" />
			<xsd:element name="Action" type="dcd:Action" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="SubscriptionUpdateRequest">
		<xsd:sequence>
			<xsd:element name="Application-ID" type="dcd:Application-ID"/>
			<xsd:element name="Channel-Metadata" type="dcd:Delivery-Personalization-Metadata-Type" />
			<xsd:element name="Subscription-ID" type="dcd:Subscription-ID" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="SubscriptionUpdateResponse">
	</xsd:complexType>
	<xsd:complexType name="SubscriptionValidationRequest">
		<xsd:sequence>
			<xsd:element name="Subscription-ID" type="dcd:Subscription-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Channel-Metadata" type="dcd:Channel-Metadata-Valid-Update" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="SubscriptionValidationResponse">
		<xsd:sequence>
			<xsd:choice>
				<xsd:element name="Subscription-Declined" type="dcd:Subscription-Declined-Type " minOccurs="0" maxOccurs="1" />
				<xsd:sequence>
					<xsd:element name="Channel-Metadata" type="dcd:Delivery-Personalization-Metadata-Type" />
					<xsd:element name="Selected-Purchase-Option" type="dcd:Selected-Purchase-Option" minOccurs="0" maxOccurs="1"/>
				</xsd:sequence>
			</xsd:choice>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="UnsubscriptionNotification_overCPR">
		<xsd:sequence>
			<xsd:element name="Subscriber-Info" type="dcd:Subscriber-Info" />
			<xsd:element name="Channel-ID" type="dcd:Channel-ID" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="UnsubscriptionRequest">
		<xsd:sequence>
			<xsd:element name="Application-ID" type="dcd:Application-ID" />
			<xsd:element name="Channel-ID" type="dcd:Channel-ID" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="UnsubscriptionResponse">
		<xsd:sequence>
			<xsd:element name="Channel-ID" type="dcd:Channel-ID" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="UsageTrackingReport">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" />
			<xsd:element name="Application-ID" type="dcd:Application-ID" />
			<xsd:element name="Report-Data" type="dcd:Report-Data-Type" maxOccurs="unbounded"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="UsageReport">
		<xsd:sequence>
			<xsd:element name="Report-Data" type="dcd:Report-Data-Type" maxOccurs="unbounded"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ErrorNotification_overDCD1">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Message-ID" type="dcd:Message-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Error-Severity" type="dcd:Error-Severity" />
			<xsd:element name="Error-Source" type="dcd:Error-Source" />
			<xsd:element name="Error-Code" type="dcd:Error-Code" />
			<xsd:element name="Error-Description" type="dcd:Error-Description" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Errored-Parameter" type="dcd:Errored-Parameter" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ErrorNotification_overDCD3">
		<xsd:sequence>
			<xsd:element name="Session-ID" type="dcd:Session-ID" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Message-ID" type="dcd:Message-ID" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Error-Severity" type="dcd:Error-Severity" />
			<xsd:element name="Error-Source" type="dcd:Error-Source" />
			<xsd:element name="Error-Code" type="dcd:Error-Code" />
			<xsd:element name="Error-Description" type="dcd:Error-Description" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Errored-Parameter" type="dcd:Errored-Parameter" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ErrorNotification_overCPR">
		<xsd:sequence>
			<xsd:element name="Error-Source" type="dcd:Error-Source" />
			<xsd:element name="Error-Code" type="dcd:Error-Code" />
			<xsd:element name="Error-Description" type="dcd:Error-Description" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Errored-Parameter" type="dcd:Errored-Parameter" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ErrorNotification_overCPDE">
		<xsd:sequence>
			<xsd:element name="Error-Source" type="dcd:Error-Source" />
			<xsd:element name="Error-Code" type="dcd:Error-Code" />
			<xsd:element name="Error-Description" type="dcd:Error-Description" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Errored-Parameter" type="dcd:Errored-Parameter" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ErrorNotification_overCAR">
		<xsd:sequence>
			<xsd:element name="Error-Source" type="dcd:Error-Source" />
			<xsd:element name="Error-Code" type="dcd:Error-Code" />
			<xsd:element name="Error-Description" type="dcd:Error-Description" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Errored-Parameter" type="dcd:Errored-Parameter" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ErrorNotification_overCADE">
		<xsd:sequence>
			<xsd:element name="Error-Source" type="dcd:Error-Source" />
			<xsd:element name="Error-Code" type="dcd:Error-Code" />
			<xsd:element name="Error-Description" type="dcd:Error-Description" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Errored-Parameter" type="dcd:Errored-Parameter" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>

	<!--
        =================================
            Referenced Complex Types
        =================================
    -->

	<!-- Channel Metdata Subset for  DCD-CPR ChannelRegistrationRequest -->
	<xsd:complexType name="Channel-Metadata-Reg-Req-CPR">
		<xsd:sequence>
			<xsd:element name="General-Channel-Metadata" type="dcd:General-Channel-Metadata-Type" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Charging-Metadata" type="dcd:Charging-Metadata-Type" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Delivery-Preferences-Metadata" type="dcd:Delivery-Preferences-Metadata-Type" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Channel-Publication-Metadata" type="dcd:Channel-Publication-Metadata-Type"/>
		</xsd:sequence>
	</xsd:complexType>

	<!-- Channel Metdata Subset for  DCD-CPR SubscriptionNotification, DCD-3 ChannelSubscriptionNotification, DCD-3 ChannelMetadataUpdate -->
	<xsd:complexType name="Channel-Metadata-Sub-Notif">
		<xsd:sequence>
			<xsd:element name="General-Channel-Metadata" type="dcd:General-Channel-Metadata-Type"/>
			<xsd:element name="Charging-Metadata" type="dcd:Charging-Metadata-Type" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Delivery-Preferences-Metadata" type="dcd:Delivery-Preferences-Metadata-Type" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>

	<!-- Channel Metdata Subset for  DCD-CAR SubscriptionValidationRequest, DCD-CAR ChannelMetadataUpdate -->
	<xsd:complexType name="Channel-Metadata-Valid-Update">
		<xsd:sequence>
			<xsd:element name="General-Channel-Metadata" type="dcd:General-Channel-Metadata-Type" />
			<xsd:element name="Charging-Metadata" type="dcd:Charging-Metadata-Type" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>

	<!-- Broadcast Profile -->
	<xsd:complexType name="Broadcast-Profile-Type">
		<xsd:sequence>
			<xsd:element name="Bcast-Access-Info" type="dcd:Bcast-Access-Info-Type" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
		<xsd:attribute name="Cell-Broadcast-Message-ID" type="xsd:integer" use="optional"/>
		<xsd:attribute name="Broadcast-Service-ID" type="xsd:string" use="optional"/>
		<xsd:attribute name="response-spread" type="xsd:integer" use="optional"/>
	</xsd:complexType>

	<!-- Channel Guide -->
	<xsd:complexType name="Channel-Guide">
		<xsd:sequence maxOccurs="unbounded">
			<xsd:element name="Channel-Metadata" type="dcd:General-Channel-Metadata-Type"/>
			<xsd:element name="Charging-Metadata" type="dcd:Charging-Metadata-Type" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>

	<!-- Channel Guide for DCD-3 ApplicationRegistrationResponse -->
	<xsd:complexType name="Channel-Guide-Reg-Req-DCD3">
		<xsd:sequence maxOccurs="unbounded">
			<xsd:element name="Channel-Metadata" type="dcd:General-Channel-Metadata-Type"/>
			<xsd:element name="Charging-Metadata" type="dcd:Charging-Metadata-Type" minOccurs="0" maxOccurs="1" />
			<xsd:element name="Delivery-Preferences-Metadata" type="dcd:Delivery-Preferences-Metadata-Type" minOccurs="0" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>

	<!-- Content Confirmation -->
	<xsd:complexType name="Content-Confirmation-Type">
		<xsd:sequence>
			<xsd:element name="Content-ID" type="dcd:Content-ID" />
		</xsd:sequence>
		<xsd:attribute name="Status" type="xsd:boolean" use="required" />
	</xsd:complexType>

	<!-- Report Policy for Usage Tracking -->
	<xsd:complexType name="Report-Policy-UT-Type">
		<xsd:sequence>
			<xsd:element name="Policy-ID" type="dcd:Policy-ID"/>
			<xsd:element name="Channel-ID-Filter" type="dcd:Channel-ID-Filter" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Content-ID-Filter" type="dcd:Content-ID-Filter" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Content-Type-Filter" type="dcd:Content-Type-Filter" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Mime-Type-Filter" type="dcd:Mime-Type-Filter" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Tracking-Schedule" type="dcd:Tracking-Schedule" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Reporting-Schedule" type="dcd:Reporting-Schedule" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>

	<!-- Report Policy for Contextual Information-->
	<xsd:complexType name="Report-Policy-CI-Type">
		<xsd:sequence>
			<xsd:element name="Report-Frequency" type="dcd:Report-Frequency" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Storage-Report-Policy" type="dcd:Storage-Report-Policy-Type"  minOccurs="0" maxOccurs="unbounded" />
			<xsd:element name="Roaming-Status-Report" type="dcd:Roaming-Status-Report" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Available-Bearers-Report"  type="dcd:Available-Bearers-Report" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Preferred-Bearers-Report" type="dcd:Preferred-Bearers-Report" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>

	<!-- Report Data -->
	<xsd:complexType name="Report-Data-Type">
		<xsd:sequence>
			<xsd:element name="Policy-ID" type="dcd:Policy-ID" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Content-Usage" type="dcd:Content-Usage-Type" maxOccurs="unbounded"/>
			<xsd:any namespace="##other" processContents="lax" />
		</xsd:sequence>
	</xsd:complexType>

	<!-- Content Usage -->
	<xsd:complexType name="Content-Usage-Type">
		<xsd:sequence>
			<xsd:element name="Content-ID" type="dcd:Content-ID" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Channel-ID" type="dcd:Channel-ID"  minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Subscription-ID" type="dcd:Subscription-ID"  minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Application-ID" type="dcd:Application-ID"  minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Timestamp"  type="dcd:Timestamp"   minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Usage-Count"  type="dcd:Usage-Count"  />
		</xsd:sequence>
	</xsd:complexType>

	<!-- Server Package -->
	<xsd:complexType name="Server-Package">
		<xsd:sequence>
			<xsd:element name="DS-CNT-Metadata" type="dcd:DS-Content-Metadata" />
			<xsd:element name="Client-Package" type="dcd:Client-Package"/>
		</xsd:sequence>
	</xsd:complexType>

	<!-- Client Package -->
	<xsd:complexType name="Client-Package">
		<xsd:sequence>
			<xsd:element name="DC-CNT-Metadata" type="dcd:DC-Content-Metadata" />
			<xsd:element name="Content" type="dcd:DCD-Content" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Contextual-Information">
		<xsd:sequence>
			<xsd:element name="Storage-Report" type="dcd:Storage-Report-Type" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="Roaming-Status" type="dcd:Roaming-Status" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Available-Bearers" type="dcd:Available-Bearers" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Preferred-Bearers" type="dcd:Preferred-Bearers" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Storage-Report-Policy-Type">
		<xsd:sequence>
			<xsd:element name="Channel-ID" type="dcd:Channel-ID"/>
			<xsd:element name="Reserved-Storage-Report" type="dcd:Reserved-Storage-Report-Type" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Free-Storage-Report" type="dcd:Free-Storage-Report-Type" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Storage-Report-Type">
		<xsd:sequence>
			<xsd:element name="Channel-ID" type="dcd:Channel-ID"/>
			<xsd:element name="Reserved-Storage" type="dcd:Reserved-Storage" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Free-Storage" type="dcd:Free-Storage" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
</xsd:schema>
