home *** CD-ROM | disk | FTP | other *** search
/ PC World 2002 September / PCWorld_2002-09_cd.bin / Software / TemaCD / versaverter / data / unitdata.xsd < prev    next >
Extensible Markup Language  |  2001-06-04  |  7KB  |  151 lines

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- edited with XML Spy v3.5 NT (http://www.xmlspy.com) by Scott Baker (PawPrint.net) -->
  3. <!--Unit Data Schema
  4.      Copyright 1999-2001 PawPrint.net-->
  5. <xsd:schema xmlns:xsd="http://www.w3.org/2000/10/XMLSchema" xmlns="vv" xmlns:vv="unitdata.xsd" targetNamespace="unitdata.xsd" elementFormDefault="qualified" version="1.0.0.0">
  6.   <xsd:complexType name="UnitType">
  7.     <xsd:sequence>
  8.       <xsd:element ref="vv:symbol" maxOccurs="unbounded"/>
  9.       <xsd:element ref="vv:name" maxOccurs="unbounded"/>
  10.       <xsd:element ref="vv:convert-from"/>
  11.       <xsd:element ref="vv:convert-to" minOccurs="0"/>
  12.       <xsd:element ref="vv:description" minOccurs="0"/>
  13.     </xsd:sequence>
  14.     <xsd:attribute name="type" use="default" value="factor">
  15.       <xsd:simpleType>
  16.         <xsd:restriction base="xsd:NMTOKEN">
  17.           <xsd:enumeration value="factor"/>
  18.           <xsd:enumeration value="formula"/>
  19.           <xsd:enumeration value="add"/>
  20.         </xsd:restriction>
  21.       </xsd:simpleType>
  22.     </xsd:attribute>
  23.     <xsd:attribute name="hidden" type="xsd:boolean" use="default" value="false"/>
  24.   </xsd:complexType>
  25.   <xsd:element name="unitdata">
  26.     <xsd:annotation>
  27.       <xsd:documentation id="USE-unitdata" xml:lang="en">Contains a set of unit data</xsd:documentation>
  28.     </xsd:annotation>
  29.     <xsd:complexType>
  30.       <xsd:sequence>
  31.         <xsd:element ref="vv:version"/>
  32.         <xsd:element ref="vv:source"/>
  33.         <xsd:element ref="vv:description"/>
  34.         <xsd:element ref="vv:class" maxOccurs="unbounded"/>
  35.       </xsd:sequence>
  36.     </xsd:complexType>
  37.   </xsd:element>
  38.   <xsd:element name="version" type="xsd:string" default="1.0.0.0" nullable="false">
  39.     <xsd:annotation>
  40.       <xsd:documentation xml:lang="en" id="USE-version">Identifies the version of this unit dataset</xsd:documentation>
  41.     </xsd:annotation>
  42.   </xsd:element>
  43.   <xsd:element name="source" type="xsd:string">
  44.     <xsd:annotation>
  45.       <xsd:documentation xml:lang="en" id="USE-source">Identifies the source of this unit dataset</xsd:documentation>
  46.     </xsd:annotation>
  47.   </xsd:element>
  48.   <xsd:element name="class">
  49.     <xsd:annotation>
  50.       <xsd:appinfo>A Base Unit class contains many units</xsd:appinfo>
  51.       <xsd:documentation xml:lang="en" id="USE-class">A Class corresponds to a SI grouping of Units such as Length or Mass etc...</xsd:documentation>
  52.       <xsd:documentation xml:lang="en" id="ATTRIBUTE-class-type">Type: Indicates the type of this class {normal, special, user}</xsd:documentation>
  53.       <xsd:documentation xml:lang="en" id="ATTRIBUTE-class-name">The SI name of the base unit of this unit class</xsd:documentation>
  54.       <xsd:documentation xml:lang="en" id="ATTRIBUTE-class-hidden">indicates if this unit class is hidden {true|false}</xsd:documentation>
  55.       <xsd:documentation xml:lang="en" id="ATTRIBUTE-class-id">A unique identifier for this class</xsd:documentation>
  56.     </xsd:annotation>
  57.     <xsd:complexType>
  58.       <xsd:sequence>
  59.         <xsd:element ref="vv:description"/>
  60.         <xsd:element ref="vv:baseunit"/>
  61.         <xsd:element ref="vv:unit" maxOccurs="unbounded"/>
  62.       </xsd:sequence>
  63.       <xsd:attribute name="type" use="default" value="normal">
  64.         <xsd:simpleType>
  65.           <xsd:restriction base="xsd:NMTOKEN">
  66.             <xsd:enumeration value="normal"/>
  67.             <xsd:enumeration value="special"/>
  68.             <xsd:enumeration value="user"/>
  69.           </xsd:restriction>
  70.         </xsd:simpleType>
  71.       </xsd:attribute>
  72.       <xsd:attribute name="name" type="xsd:string" use="required"/>
  73.       <xsd:attribute name="id" type="xsd:string" use="required"/>
  74.       <xsd:attribute name="hidden" use="default" value="False">
  75.         <xsd:simpleType>
  76.           <xsd:restriction base="xsd:boolean">
  77.             <xsd:whiteSpace value="collapse"/>
  78.           </xsd:restriction>
  79.         </xsd:simpleType>
  80.       </xsd:attribute>
  81.     </xsd:complexType>
  82.   </xsd:element>
  83.   <xsd:element name="description" nullable="false">
  84.     <xsd:annotation>
  85.       <xsd:documentation xml:lang="en" id="USE-description">Provides a description for this data</xsd:documentation>
  86.     </xsd:annotation>
  87.     <xsd:complexType>
  88.       <xsd:simpleContent>
  89.         <xsd:extension base="xsd:string">
  90.           <xsd:attribute name="lang" type="xsd:language" use="default" value="en"/>
  91.         </xsd:extension>
  92.       </xsd:simpleContent>
  93.     </xsd:complexType>
  94.   </xsd:element>
  95.   <xsd:element name="convert-from" type="xsd:string" nullable="false">
  96.     <xsd:annotation>
  97.       <xsd:documentation xml:lang="en" id="USE-from">Either the factor or formula used to convert from the base uint to this unit</xsd:documentation>
  98.     </xsd:annotation>
  99.   </xsd:element>
  100.   <xsd:element name="name" nullable="false">
  101.     <xsd:annotation>
  102.       <xsd:documentation id="USE-name" xml:lang="en">The SI name of the unit</xsd:documentation>
  103.     </xsd:annotation>
  104.     <xsd:complexType>
  105.       <xsd:simpleContent>
  106.         <xsd:extension base="xsd:string">
  107.           <xsd:attribute name="lang" use="default" value="en">
  108.             <xsd:simpleType>
  109.               <xsd:restriction base="xsd:language">
  110.                 <xsd:enumeration value="SI"/>
  111.                 <xsd:enumeration value="common"/>
  112.                 <xsd:enumeration value="historical"/>
  113.               </xsd:restriction>
  114.             </xsd:simpleType>
  115.           </xsd:attribute>
  116.           <xsd:attribute name="type" type="xsd:NMTOKEN" use="default" value="SI"/>
  117.         </xsd:extension>
  118.       </xsd:simpleContent>
  119.     </xsd:complexType>
  120.   </xsd:element>
  121.   <xsd:element name="symbol" nullable="true">
  122.     <xsd:annotation>
  123.       <xsd:documentation xml:lang="en" id="USE-symbol">The SI standard symbol for this unit where applicable</xsd:documentation>
  124.     </xsd:annotation>
  125.     <xsd:complexType>
  126.       <xsd:simpleContent>
  127.         <xsd:extension base="xsd:string">
  128.           <xsd:attribute name="type" type="xsd:string" use="default" value="SI"/>
  129.         </xsd:extension>
  130.       </xsd:simpleContent>
  131.     </xsd:complexType>
  132.   </xsd:element>
  133.   <xsd:element name="convert-to" type="xsd:string">
  134.     <xsd:annotation>
  135.       <xsd:documentation xml:lang="en" id="USE-to">The factor or formula used to convert from this unit back TO the base unit of the unit's class</xsd:documentation>
  136.     </xsd:annotation>
  137.   </xsd:element>
  138.   <xsd:element name="baseunit" type="vv:UnitType">
  139.     <xsd:annotation>
  140.       <xsd:documentation xml:lang="en" id="USE-baseunit">Contains a single unit definition to define the base (reference) unit for a unit class</xsd:documentation>
  141.       <xsd:documentation xml:lang="en" id="ATTRIBUTE-baseunit-hidden">indicates if this unit is hidden {true|false}</xsd:documentation>
  142.     </xsd:annotation>
  143.   </xsd:element>
  144.   <xsd:element name="unit" type="vv:UnitType">
  145.     <xsd:annotation>
  146.       <xsd:documentation xml:lang="en" id="USE-unit">Contains a single unit definition within the current class</xsd:documentation>
  147.       <xsd:documentation xml:lang="en" id="ATTRIBUTE-unit-hidden">indicates if this unit is hidden {true|false}</xsd:documentation>
  148.     </xsd:annotation>
  149.   </xsd:element>
  150. </xsd:schema>
  151.