<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSPY v5 rel. 4 U (http://www.xmlspy.com) by Balagopal Nair (SeaChange International) -->
<xs:schema xmlns="http://www.cablelabs.com/2006-05-05/ADI2" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.cablelabs.com/2006-05-05/ADI2" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<!--Abstract types-->
	<xs:simpleType name="ProviderAssetIDType">
		<xs:restriction base="xs:string">
			<xs:minLength value="20"/>
			<xs:maxLength value="20"/>
			<xs:pattern value="[a-zA-Z]{4}\d{16}"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="ProviderIDType">
		<xs:restriction base="xs:string">
			<xs:maxLength value="20"/>
			<xs:pattern value="[a-zA-Z]+[a-zA-Z0-9]*([\.\-]?[a-zA-Z0-9]+)*(\.[a-zA-Z]{2,3})+"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="AssetLifetimeType">
		<xs:attribute name="startDateTime" type="xs:dateTime" use="required">
			<xs:annotation>
				<xs:documentation>Date and time when the Asset begins its life.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="endDateTime" type="xs:dateTime" use="required">
			<xs:annotation>
				<xs:documentation>Date and time when the Asset ends its life.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
	</xs:complexType>
	<xs:complexType name="ContactType">
		<xs:attribute name="firstName" type="xs:string" use="optional"/>
		<xs:attribute name="lastName" type="xs:string" use="optional"/>
		<xs:attribute name="department" type="xs:string" use="optional"/>
		<xs:attribute name="phone" type="xs:string" use="required"/>
		<xs:attribute name="email" type="xs:string" use="required"/>
	</xs:complexType>
	<xs:complexType name="AssetType">
		<xs:sequence>
			<xs:element name="AssetLifetime" type="AssetLifetimeType"/>
		</xs:sequence>
		<xs:attribute name="providerID" type="ProviderIDType" use="required"/>
		<xs:attribute name="assetID" type="ProviderAssetIDType" use="required"/>
		<xs:attribute name="updateNum" type="xs:int" use="required"/>
		<xs:attribute name="groupAsset" type="xs:string" use="optional"/>
		<xs:attribute name="assetAckTo" type="xs:anyURI" use="optional"/>
	</xs:complexType>
	<xs:complexType name="AssetIDType">
		<xs:sequence>
			<xs:element name="providerID" type="ProviderIDType"/>
			<xs:element name="assetID" type="ProviderAssetIDType"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="ReferenceType">
		<xs:attribute name="providerID" type="xs:string" use="required"/>
		<xs:attribute name="assetID" type="xs:string" use="required"/>
		<xs:attribute name="amsValidate" type="xs:boolean" use="optional" default="false"/>
	</xs:complexType>
	<!--Common elements-->
	<xs:element name="AssetReference">
		<xs:complexType>
			<xs:complexContent>
				<xs:extension base="ReferenceType">
					<xs:attribute name="type" type="xs:string" use="optional"/>
				</xs:extension>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>
	<xs:element name="ContentRef" type="ReferenceType"/>
</xs:schema>
