<h:div class="summary">A scientific unit.</h:div> <h:div class="description"> <h:p>A scientific unit. Units are of the following types:</h:p> <h:ul> <h:li>SI Units. These may be one of the seven fundamental types (e.g. meter) or may be derived (e.g. joule). An SI unit is identifiable because it has no parentSI attribute and will have a unitType attribute. 2005-122-17 - this may be obsolete; PMR</h:li> <h:li>nonSI Units. These will normally have a parent SI unit (e.g. calorie has joule as an SI parent).</h:li> <h:li>Constructed units. These use a syntax of the form: <h:pre><unit id="g.s-1" name="gram per second" unitType="myUnitType:massPerTime"> <unit units="units:g" power="1"/> <unit units="siUnits:s" power="-1"/> </unit></h:pre>This defines a new unit (g.s-1) which is composed from two existing units (units:g and siUnits:s) to create a new unit. The conversion to SI is computed from the two child units and may be added as a 'multiplierToSI' attribute. Only siUnits or units with 'multiplierToSI' can be used as child units; 'constantToSI cannot be used yet. If the new unit points to a unitType then the dimension can be checked. Thus if the published dimension of massPerTime does not agree with mass.length-1 an error is throwable. Alternatively a new unitType can be added as a child.</h:li> </h:ul> <h:p>The relationship of a unit to its SI parent is potentially complex and inconsistencies may arise. The following are available: <h:ul> <h:li>parentSI. This points to the ID of a parent SI unit. If this ID is the same as the current unit the implication is that this is an SI unit.</h:li> <h:li>isSI. a boolean indicating whether the current unit is SI.</h:li> <h:li>multiplierToSI and constantToSI. If these are 1.0 and 0.0 (or missing) the implication is that this unit is SI. However this is fragile as units can be defined without these attributes and a unit could coincidentally have no numeric differences but not be an SI unit.</h:li> </h:ul> </h:p> </h:div> <h:div class="example" href="unit1.xml"/> <h:div class="curation">2003:04-09 Description or parentSI attribute enhanced.</h:div> <h:div class="curation">2006:03-21 Added metadata and metadataList to content.</h:div> |
QName | Type | Fixed | Default | Use | Inheritable | Annotation | |
---|---|---|---|---|---|---|---|
constantToSI | xsd:double | optional |
|
||||
id | idType | optional |
|
||||
isSI | xsd:boolean | optional |
|
||||
multiplierToData | xsd:double | 1.0 | optional |
|
|||
multiplierToSI | xsd:double | optional |
|
||||
name | xsd:string | optional |
|
||||
parentSI | namespaceRefType | optional |
|
||||
power | xsd:double | optional |
|
||||
symbol | xsd:string | optional |
|
||||
title | xsd:string | optional |
|
||||
unitType | xsd:string | optional |
|
||||
units | unitsType | optional |
|
||||
Wildcard: ANY attribute from ANY namespace OTHER than 'http://www.xml-cml.org/schema' |
<xsd:element name="unit" id="el.unit" substitutionGroup="anyCml"> <xsd:annotation> <xsd:documentation> <h:div class="summary">A scientific unit.</h:div> <h:div class="description"> <h:p>A scientific unit. Units are of the following types:</h:p> <h:ul> <h:li>SI Units. These may be one of the seven fundamental types (e.g. meter) or may be derived (e.g. joule). An SI unit is identifiable because it has no parentSI attribute and will have a unitType attribute. 2005-122-17 - this may be obsolete; PMR</h:li> <h:li>nonSI Units. These will normally have a parent SI unit (e.g. calorie has joule as an SI parent).</h:li> <h:li>Constructed units. These use a syntax of the form: <h:pre><unit id="g.s-1" name="gram per second" unitType="myUnitType:massPerTime"> <unit units="units:g" power="1"/> <unit units="siUnits:s" power="-1"/> </unit></h:pre>This defines a new unit (g.s-1) which is composed from two existing units (units:g and siUnits:s) to create a new unit. The conversion to SI is computed from the two child units and may be added as a 'multiplierToSI' attribute. Only siUnits or units with 'multiplierToSI' can be used as child units; 'constantToSI cannot be used yet. If the new unit points to a unitType then the dimension can be checked. Thus if the published dimension of massPerTime does not agree with mass.length-1 an error is throwable. Alternatively a new unitType can be added as a child.</h:li> </h:ul> <h:p>The relationship of a unit to its SI parent is potentially complex and inconsistencies may arise. The following are available: <h:ul> <h:li>parentSI. This points to the ID of a parent SI unit. If this ID is the same as the current unit the implication is that this is an SI unit.</h:li> <h:li>isSI. a boolean indicating whether the current unit is SI.</h:li> <h:li>multiplierToSI and constantToSI. If these are 1.0 and 0.0 (or missing) the implication is that this unit is SI. However this is fragile as units can be defined without these attributes and a unit could coincidentally have no numeric differences but not be an SI unit.</h:li> </h:ul> </h:p> </h:div> <h:div class="example" href="unit1.xml"/> <h:div class="curation">2003:04-09 Description or parentSI attribute enhanced.</h:div> <h:div class="curation">2006:03-21 Added metadata and metadataList to content.</h:div> </xsd:documentation> </xsd:annotation> <xsd:complexType> <xsd:choice minOccurs="0" maxOccurs="unbounded"> <xsd:element ref="anyCml"/> <xsd:any namespace="##other" processContents="lax"/> <xsd:any namespace="##local" processContents="lax"/> </xsd:choice> <xsd:attributeGroup ref="id"/> <xsd:attributeGroup ref="units"> <xsd:annotation> <xsd:documentation> <h:div class="summary">Reference to a unit.</h:div> <h:div class="description"> <h:p>This is used for the identification of child units when new units are composed from existing ones. Athough the syntax looks unusual it takes advantage of the tools for resolving units. See above for syntax.</h:p> </h:div> </xsd:documentation> </xsd:annotation> </xsd:attributeGroup> <xsd:attributeGroup ref="title"/> <xsd:attributeGroup ref="symbol"> <xsd:annotation> <xsd:documentation> <h:div class="summary">Symbol for the unit.</h:div> <h:div class="description"> <h:p>This may be used for typographical display but NOT for identification as there is considerable variation in use.</h:p> </h:div> <h:div class="curation">2006-01-29: PMR. Added attribute.</h:div> </xsd:documentation> </xsd:annotation> </xsd:attributeGroup> <xsd:attributeGroup ref="name"/> <xsd:attributeGroup ref="parentSI"/> <xsd:attributeGroup ref="isSI"/> <xsd:attributeGroup ref="unitType"/> <xsd:attributeGroup ref="multiplierToData"/> <xsd:attributeGroup ref="multiplierToSI"/> <xsd:attributeGroup ref="constantToSI"/> <xsd:attributeGroup ref="power"> <xsd:annotation> <xsd:documentation> <h:div class="summary">Power of unit used to create new one.</h:div> <h:div class="description"> <h:p>Only allowed on child units</h:p> </h:div> </xsd:documentation> </xsd:annotation> </xsd:attributeGroup> <xsd:anyAttribute namespace="##other" processContents="lax"/> </xsd:complexType> </xsd:element> |