<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:dmp:idp:mediastreaming:domain:extensions:2008" 
		xmlns:dmp-msdx="urn:dmp:idp:mediastreaming:domain:extensions:2008" 
		xmlns="http://www.w3.org/2001/XMLSchema" 
		xmlns:rel-sx="urn:mpeg:mpeg21:2003:01-REL-SX-NS" 
		xmlns:msd="urn:mpeg:maf:schema:mediastreaming:domain:2007" 
		xmlns:msdp="urn:mpeg:maf:schema:mediastreaming:domainprotocol:2007" 
		xmlns:msbp="urn:mpeg:maf:schema:mediastreaming:baseprotocol:2007" 
		xmlns:sx="urn:mpeg:mpeg21:2003:01-REL-SX-NS" 
		elementFormDefault="qualified" attributeFormDefault="unqualified">
	<import namespace="urn:mpeg:maf:schema:mediastreaming:domain:2007" schemaLocation="http://www.dmpf.org/schemas/msd.xsd"/>
	<import namespace="urn:mpeg:maf:schema:mediastreaming:domainprotocol:2007" schemaLocation="http://www.dmpf.org/schemas/msdp.xsd"/>
	<import namespace="urn:mpeg:maf:schema:mediastreaming:baseprotocol:2007" schemaLocation="http://www.dmpf.org/schemas/msbp.xsd"/>
	<import namespace="urn:mpeg:mpeg21:2003:01-REL-R-NS" schemaLocation="http://www.dmpf.org/schemas/rel-r.xsd"/>
	<import namespace="urn:mpeg:mpeg21:2003:01-REL-SX-NS" schemaLocation="http://www.dmpf.org/schemas/rel-sx.xsd"/>
	<!-- **************************************************************** -->
	<!--                        DomainPublicInfo                                 -->
	<!-- **************************************************************** -->
	<element name="DomainPublicInfo" type="dmp-msdx:DomainPublicInfoType"/>
	<complexType name="DomainPublicInfoType">
		<complexContent>
			<extension base="msd:DomainBaseType">
				<sequence>
					<element ref="msd:DomainID"/>
					<choice minOccurs="0" maxOccurs="2">
						<element ref="dmp-msdx:UserInfo"/>
						<element ref="dmp-msdx:DeviceInfo"/>
					</choice>
					<element ref="msd:DomainKey"/>
					<element name="Registration" type="dateTime"/>
					<element ref="msd:Expiration"/>
				</sequence>
			</extension>
		</complexContent>
	</complexType>
	<!-- **************************************************************** -->
	<!--                             UserInfo                                         -->
	<!-- **************************************************************** -->
	<element name="UserInfo" type="dmp-msdx:UserInfoType"/>
	<complexType name="UserInfoType">
		<complexContent>
			<extension base="msd:DomainBaseType">
				<sequence>
					<element ref="msd:UserIDList"/>
					<element ref="msd:MaximumNumberOfUsers" minOccurs="0"/>
					<element ref="msd:MaximumFrequencyOfUpdateUser" minOccurs="0"/>
				</sequence>
			</extension>
		</complexContent>
	</complexType>
	<!-- **************************************************************** -->
	<!--                             DeviceInfo                                         -->
	<!-- **************************************************************** -->
	<element name="DeviceInfo" type="dmp-msdx:DeviceInfoType"/>
	<complexType name="DeviceInfoType">
		<complexContent>
			<extension base="msd:DomainBaseType">
				<sequence>
					<element ref="msd:DeviceIDList"/>
					<element ref="msd:MaximumNumberOfDevices" minOccurs="0"/>
					<element ref="msd:MaximumFrequencyOfUpdateDevice" minOccurs="0"/>
				</sequence>
			</extension>
		</complexContent>
	</complexType>
	<!-- **************************************************************** -->
	<!--                        DomainManageInfo                                -->
	<!-- **************************************************************** -->
	<element name="DomainManageInfo" type="dmp-msdx:DomainManageInfoType"/>
	<complexType name="DomainManageInfoType">
		<complexContent>
			<extension base="msd:DomainManageInfoType">
				<sequence>
					<element ref="dmp-msdx:RelatedDomainInfo" minOccurs="0"/>
				</sequence>
			</extension>
		</complexContent>
	</complexType>
	<!-- **************************************************************** -->
	<!--                        RelatedDomainInfo                                -->
	<!-- **************************************************************** -->
	<element name="RelatedDomainInfo" type="dmp-msdx:RelatedDomainInfoType"/>
	<complexType name="RelatedDomainInfoType">
		<sequence>
			<element ref="dmp-msdx:ParentDomainInfoList" minOccurs="0"/>
			<element ref="dmp-msdx:ChildDomainInfoList" minOccurs="0"/>
		</sequence>
	</complexType>
	<!-- **************************************************************** -->
	<!--                        ParentDomainInfoList                                -->
	<!-- **************************************************************** -->
	<element name="ParentDomainInfoList" type="dmp-msdx:ParentDomainInfoListType"/>
	<complexType name="ParentDomainInfoListType">
		<sequence maxOccurs="unbounded">
			<element ref="dmp-msdx:ParentDomainInfo"/>
		</sequence>
	</complexType>
	<!-- **************************************************************** -->
	<!--                        ChildDomainInfoList                                -->
	<!-- **************************************************************** -->
	<element name="ChildDomainInfoList" type="dmp-msdx:ChildDomainInfoListType"/>
	<complexType name="ChildDomainInfoListType">
		<sequence maxOccurs="unbounded">
			<element ref="dmp-msdx:ChildDomainInfo"/>
		</sequence>
	</complexType>
	<!-- **************************************************************** -->
	<!--                        ParentDomainInfo                                -->
	<!-- **************************************************************** -->
	<element name="ParentDomainInfo" type="dmp-msdx:ParentDomainInfoType"/>
	<complexType name="ParentDomainInfoType">
		<complexContent>
			<extension base="msd:DomainBaseType">
				<sequence>
					<element ref="msd:DomainID"/>
					<element ref="msd:DomainKey"/>
					<element ref="msd:DomainMembershipCredentials" minOccurs="0"/>
					<element name="Expiration" type="rel-sx:ValidityTimeMetered"/>
					<element ref="msd:MaximumFrequencyOfUpdateDevice" minOccurs="0"/>
					<element ref="msd:MaximumFrequencyOfUpdateUser" minOccurs="0"/>
					<element name="GrandParentDomainInfoList" type="dmp-msdx:ParentDomainInfoListType" minOccurs="0"/>
				</sequence>
			</extension>
		</complexContent>
	</complexType>
	<!-- **************************************************************** -->
	<!--                        ChildDomainInfo                                -->
	<!-- **************************************************************** -->
	<element name="ChildDomainInfo" type="dmp-msdx:ChildDomainInfoType"/>
	<complexType name="ChildDomainInfoType">
		<complexContent>
			<extension base="msd:DomainBaseType">
				<sequence>
					<element ref="msd:DomainID"/>
					<sequence>
						<element ref="msd:DeviceIDList" minOccurs="0"/>
						<element ref="msd:UserIDList" minOccurs="0"/>
					</sequence>
					<element name="Expiration" type="rel-sx:ValidityTimeMetered"/>
					<element ref="dmp-msdx:ChildDomainInfoList" minOccurs="0"/>
				</sequence>
			</extension>
		</complexContent>
	</complexType>
</schema>
