<?xml version="1.0" encoding="ISO-8859-1" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

	<xs:complexType name="clusterType">
		<xs:sequence>
			<xs:element name="attribute" type="attributeType"
				maxOccurs="30" minOccurs="0" />
			<xs:element name="command" type="commandType" maxOccurs="30" minOccurs="0" />
		</xs:sequence>

		<xs:attribute name="id" type="xs:string" />
		<xs:attribute name="name" type="xs:string" />
	</xs:complexType>

	<xs:complexType name="clientType">
		<xs:sequence>
			<xs:element name="clusterRef" type="clusterRefType"
				maxOccurs="30" minOccurs="0" />
		</xs:sequence>
		<xs:attribute name="id" type="xs:string" />
		<xs:attribute name="name" type="xs:string" />
	</xs:complexType>

	<xs:complexType name="serverType">
		<xs:sequence>
			<xs:element name="clusterRef" type="clusterRefType"
				maxOccurs="30" minOccurs="0" />
		</xs:sequence>
		<xs:attribute name="id" type="xs:string" />
		<xs:attribute name="name" type="xs:string" />
	</xs:complexType>

	<xs:complexType name="deviceType">
		<xs:sequence>
			<xs:element name="server" type="serverType" maxOccurs="30"
				minOccurs="0" />
			<xs:element name="client" type="clientType" maxOccurs="30"
				minOccurs="0" />
		</xs:sequence>
		<xs:attribute name="id" type="xs:string" />
		<xs:attribute name="name" type="xs:string" />
	</xs:complexType>



	<xs:complexType name="clusterRefType">
		<xs:attribute name="name" type="xs:string" />
		<xs:attribute name="mandatory" type="xs:string" />
	</xs:complexType>

	<xs:complexType name="rangeType">
		<xs:attribute name="from" type="xs:string" />
		<xs:attribute name="to" type="xs:string" />
	</xs:complexType>

	<xs:complexType name="attributeType">
		<xs:sequence>
			<xs:element name="Range" maxOccurs="30" minOccurs="0" />
		</xs:sequence>
		<xs:attribute name="id" type="xs:string" />
		<xs:attribute name="name" type="xs:string" />
		<xs:attribute name="type" type="xs:string" />
		<xs:attribute name="access" type="xs:string" />
		<xs:attribute name="default" type="xs:string" />
		<xs:attribute name="mandatory" type="xs:string" />
	</xs:complexType>

	<xs:complexType name="commandType">
		<xs:attribute name="id" type="xs:string" />
		<xs:attribute name="name" type="xs:string" />
		<xs:attribute name="mandatory" type="xs:string" />
		<xs:attribute name="payload" type="xs:string" />
	</xs:complexType>

	<xs:complexType name="profileType">
		<xs:sequence>
			<xs:element name="clusters" maxOccurs="1" minOccurs="1">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="cluster" type="clusterType"
							maxOccurs="30" minOccurs="0" />
					</xs:sequence>
				</xs:complexType>
			</xs:element >
			
			<xs:element name="device" type="deviceType" maxOccurs="30" minOccurs="0" />
		</xs:sequence>
		<xs:attribute name="id" type="xs:string" />
		<xs:attribute name="name" type="xs:string" />

	</xs:complexType>

	<xs:element name="profiles">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="profile" type="profileType" maxOccurs="30"
					minOccurs="0" />
			</xs:sequence>
		</xs:complexType>
	</xs:element>
</xs:schema>