Index: /DCWoRMS/trunk/src/test/DEBBTranslator/xml/DEBBComponentTranslator.xsl
===================================================================
--- /DCWoRMS/trunk/src/test/DEBBTranslator/xml/DEBBComponentTranslator.xsl	(revision 600)
+++ /DCWoRMS/trunk/src/test/DEBBTranslator/xml/DEBBComponentTranslator.xsl	(revision 601)
@@ -33,8 +33,11 @@
 				<xsl:apply-templates select="CoolingDevice" />
 			</xsl:if>
-			<xsl:call-template name="BasicDEBBPhysicalElementData" />
+			<xsl:call-template name="BasicDEBBPhysicalElementParameters" />
 			<xsl:if test="Baseboard">
 				<xsl:apply-templates select="Baseboard" />
 			</xsl:if>
+			<xsl:if test="Sensor">
+				<xsl:apply-templates select="Sensor" />
+			</xsl:if>			
 			<xsl:if test="Processor">
 				<xsl:apply-templates select="Processor" />
@@ -43,5 +46,4 @@
 				<xsl:apply-templates select="PowerSupply" />
 			</xsl:if>
-			
 		</xsl:element>
 	</xsl:template>
@@ -50,31 +52,61 @@
 		<xsl:element name="parameter">
 			<xsl:attribute name="name">Baseboard</xsl:attribute>
-			<!-- Don't call BasicDEBBPhysicalElementData, because parameter cannot 
-				contain parameters. Must be parameter containing properties. -->
-			<!-- <xsl:call-template name="BasicDEBBPhysicalElementData" /> -->
-			<xsl:if test="Manufacturer">
+			<!-- Don't call BasicDEBBPhysicalElementParameters, because parameter 
+				cannot contain parameters. Must be parameter containing properties. -->
+			<xsl:call-template name="BasicDEBBPhysicalElementProperties" />
+		</xsl:element>
+	</xsl:template>
+
+	<xsl:template match="Sensor">
+		<xsl:element name="parameter">
+			<xsl:attribute name="name">Sensor</xsl:attribute>
+			<xsl:element name="property">
+				<xsl:attribute name="name">Class</xsl:attribute>
+				<xsl:element name="value">
+					<xsl:value-of select="Class" />
+				</xsl:element>
+			</xsl:element>
+			<xsl:element name="property">
+				<xsl:attribute name="name">Unit</xsl:attribute>
+				<xsl:element name="value">
+					<xsl:value-of select="Unit" />
+				</xsl:element>
+			</xsl:element>
+			<xsl:if test="MinValue">
 				<xsl:element name="property">
-					<xsl:attribute name="name">Manufacturer</xsl:attribute>
-					<xsl:element name="value">
-						<xsl:value-of select="Manufacturer" />
-					</xsl:element>
-				</xsl:element>
-			</xsl:if>
-			<xsl:if test="Product">
+					<xsl:attribute name="name">MinValue</xsl:attribute>
+					<xsl:element name="value">
+						<xsl:value-of select="MinValue" />
+					</xsl:element>
+				</xsl:element>
+			</xsl:if>
+			<xsl:if test="MaxValue">
 				<xsl:element name="property">
-					<xsl:attribute name="name">Product</xsl:attribute>
-					<xsl:element name="value">
-						<xsl:value-of select="Product" />
-					</xsl:element>
-				</xsl:element>
-			</xsl:if>
-			<xsl:if test="MaxPower">
+					<xsl:attribute name="name">MaxValue</xsl:attribute>
+					<xsl:element name="value">
+						<xsl:value-of select="MaxValue" />
+					</xsl:element>
+				</xsl:element>
+			</xsl:if>
+			<xsl:if test="Factor">
 				<xsl:element name="property">
-					<xsl:attribute name="name">MaxPower</xsl:attribute>
-					<xsl:element name="value">
-						<xsl:value-of select="MaxPower" />
-					</xsl:element>
-				</xsl:element>
-			</xsl:if>
+					<xsl:attribute name="name">Factor</xsl:attribute>
+					<xsl:element name="value">
+						<xsl:value-of select="Factor" />
+					</xsl:element>
+				</xsl:element>
+			</xsl:if>
+			<xsl:if test="Accuracy">
+				<xsl:element name="property">
+					<xsl:attribute name="name">Accuracy</xsl:attribute>
+					<xsl:element name="value">
+						<xsl:value-of select="Accuracy" />
+					</xsl:element>
+				</xsl:element>
+			</xsl:if>
+
+			<!-- Don't call BasicDEBBPhysicalElementParameters, because parameter 
+				cannot contain parameters. Must be parameter containing properties. -->
+			<xsl:call-template name="BasicDEBBPhysicalElementProperties" />
 		</xsl:element>
 	</xsl:template>
@@ -83,5 +115,5 @@
 		<xsl:element name="computingResource">
 			<xsl:attribute name="class">Processor</xsl:attribute>
-			<xsl:call-template name="BasicDEBBPhysicalElementData" />
+			<xsl:call-template name="BasicDEBBPhysicalElementParameters" />
 			<xsl:element name="parameter">
 				<xsl:attribute name="name">MaxClockSpeed</xsl:attribute>
@@ -96,4 +128,5 @@
 						<xsl:element name="powerStates">
 							<xsl:apply-templates select="PState" />
+							<xsl:apply-templates select="CState" />
 						</xsl:element>
 					</xsl:element>
@@ -105,33 +138,43 @@
 	<xsl:template match="PState">
 		<xsl:element name="powerState">
-			<xsl:element name="name">
-				<xsl:value-of select="State" />
+			<xsl:call-template name="BasicStateParameters" />
+			<!-- Voltage & Frequency -->
+			<xsl:element name="parameter">
+				<xsl:attribute name="name">Voltage</xsl:attribute>
+				<xsl:element name="value">
+					<xsl:value-of select="Voltage" />
+				</xsl:element>
+			</xsl:element>
+			<xsl:element name="parameter">
+				<xsl:attribute name="name">Frequency</xsl:attribute>
+				<xsl:element name="value">
+					<xsl:value-of select="Frequency" />
+				</xsl:element>
+			</xsl:element>
+		</xsl:element>
+	</xsl:template>
+
+	<xsl:template match="CState">
+		<xsl:element name="powerState">
+			<xsl:call-template name="BasicStateParameters" />
+		</xsl:element>
+	</xsl:template>
+
+	<xsl:template name="BasicStateParameters">
+		<xsl:element name="name">
+			<xsl:value-of select="State" />
+		</xsl:element>
+		<xsl:element name="powerUsage">
+			<xsl:value-of select="PowerUsage" />
+		</xsl:element>
+		<xsl:element name="transition">
+			<xsl:element name="to">
+				<xsl:value-of select="Transition/ToState" />
 			</xsl:element>
 			<xsl:element name="powerUsage">
-				<xsl:value-of select="PowerUsage" />
-			</xsl:element>
-			<xsl:element name="transition">
-				<xsl:element name="to">
-					<xsl:value-of select="Transition/ToState" />
-				</xsl:element>
-				<xsl:element name="powerUsage">
-					<xsl:value-of select="Transition/PowerUsage" />
-				</xsl:element>
-				<xsl:element name="time">
-					<xsl:value-of select="Transition/Time" />
-				</xsl:element>
-			</xsl:element>
-			<!-- Voltage & Frequency -->
-			<xsl:element name="parameter">
-				<xsl:attribute name="name">Voltage</xsl:attribute>
-				<xsl:element name="value">
-					<xsl:value-of select="Voltage" />
-				</xsl:element>
-			</xsl:element>
-			<xsl:element name="parameter">
-				<xsl:attribute name="name">Frequency</xsl:attribute>
-				<xsl:element name="value">
-					<xsl:value-of select="Frequency" />
-				</xsl:element>
+				<xsl:value-of select="Transition/PowerUsage" />
+			</xsl:element>
+			<xsl:element name="time">
+				<xsl:value-of select="Transition/Time" />
 			</xsl:element>
 		</xsl:element>
@@ -141,34 +184,10 @@
 		<xsl:element name="parameter">
 			<xsl:attribute name="name">PowerSupply</xsl:attribute>
-			<!-- Don't call BasicDEBBPhysicalElementData, because parameter cannot 
-				contain parameters. Must be parameter containing properties. -->
-			<!-- <xsl:call-template name="BasicDEBBPhysicalElementData" /> -->
-			<xsl:if test="Manufacturer">
-				<xsl:element name="property">
-					<xsl:attribute name="name">Manufacturer</xsl:attribute>
-					<xsl:element name="value">
-						<xsl:value-of select="Manufacturer" />
-					</xsl:element>
-				</xsl:element>
-			</xsl:if>
-			<xsl:if test="Product">
-				<xsl:element name="property">
-					<xsl:attribute name="name">Product</xsl:attribute>
-					<xsl:element name="value">
-						<xsl:value-of select="Product" />
-					</xsl:element>
-				</xsl:element>
-			</xsl:if>
-			<xsl:if test="MaxPower">
-				<xsl:element name="property">
-					<xsl:attribute name="name">MaxPower</xsl:attribute>
-					<xsl:element name="value">
-						<xsl:value-of select="MaxPower" />
-					</xsl:element>
-				</xsl:element>
-			</xsl:if>
-		</xsl:element>
-	</xsl:template>
-	
+			<!-- Don't call BasicDEBBPhysicalElementParameters, because parameter 
+				cannot contain parameters. Must be parameter containing properties. -->
+			<xsl:call-template name="BasicDEBBPhysicalElementProperties" />
+		</xsl:element>
+	</xsl:template>
+
 	<xsl:template match="Memory">
 		<xsl:element name="resourceUnit">
@@ -177,16 +196,15 @@
 				<xsl:value-of select="Capacity" />
 			</xsl:element>
-			<xsl:call-template name="BasicDEBBPhysicalElementData" />
+			<xsl:call-template name="BasicDEBBPhysicalElementParameters" />
 		</xsl:element>
 	</xsl:template>
 
 	<xsl:template match="Storage">
-		<!-- TODO: Not finished -->
 		<xsl:element name="resourceUnit">
 			<xsl:attribute name="class">Storage</xsl:attribute>
-			<xsl:attribute name="type"><xsl:value-of select="Class"/></xsl:attribute>
+			<xsl:attribute name="type"><xsl:value-of select="Class" /></xsl:attribute>
 			<xsl:element name="amount">
 				<xsl:attribute name="unit">MB</xsl:attribute>
-				<xsl:value-of select="Capacity"/>
+				<xsl:value-of select="Capacity" />
 			</xsl:element>
 			<xsl:element name="parameter">
@@ -196,6 +214,6 @@
 				</xsl:element>
 			</xsl:element>
-			
-			 <xsl:call-template name="BasicDEBBPhysicalElementData" /> 
+
+			<xsl:call-template name="BasicDEBBPhysicalElementParameters" />
 		</xsl:element>
 	</xsl:template>
@@ -245,5 +263,5 @@
 					</xsl:element>
 				</xsl:if>
-				<xsl:call-template name="BasicDEBBPhysicalElementData" />
+				<xsl:call-template name="BasicDEBBPhysicalElementParameters" />
 			</xsl:element>
 		</xsl:element>
@@ -297,5 +315,5 @@
 
 	<!-- Template for transforming basic parameters of all devices of any type -->
-	<xsl:template name="BasicDEBBPhysicalElementData">
+	<xsl:template name="BasicDEBBPhysicalElementParameters">
 		<xsl:if test="Manufacturer">
 			<xsl:element name="parameter">
@@ -323,3 +341,30 @@
 		</xsl:if>
 	</xsl:template>
+
+	<xsl:template name="BasicDEBBPhysicalElementProperties">
+		<xsl:if test="Manufacturer">
+			<xsl:element name="property">
+				<xsl:attribute name="name">Manufacturer</xsl:attribute>
+				<xsl:element name="value">
+					<xsl:value-of select="Manufacturer" />
+				</xsl:element>
+			</xsl:element>
+		</xsl:if>
+		<xsl:if test="Product">
+			<xsl:element name="property">
+				<xsl:attribute name="name">Product</xsl:attribute>
+				<xsl:element name="value">
+					<xsl:value-of select="Product" />
+				</xsl:element>
+			</xsl:element>
+		</xsl:if>
+		<xsl:if test="MaxPower">
+			<xsl:element name="property">
+				<xsl:attribute name="name">MaxPower</xsl:attribute>
+				<xsl:element name="value">
+					<xsl:value-of select="MaxPower" />
+				</xsl:element>
+			</xsl:element>
+		</xsl:if>
+	</xsl:template>
 </xsl:stylesheet>
