Zane Shelley | abc51c2 | 2020-11-09 21:35:35 -0600 | [diff] [blame] | 1 | <?xml version="1.0" encoding="UTF-8"?> |
| 2 | <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" |
| 3 | elementFormDefault="unqualified"> |
| 4 | |
| 5 | <!-- Root element: chip --> |
| 6 | <xsd:element name="chip"> |
| 7 | <xsd:complexType> |
| 8 | <xsd:sequence> |
| 9 | <xsd:element name="attn_tree" type="attn_tree" |
| 10 | minOccurs="1" maxOccurs="255"/> |
| 11 | </xsd:sequence> |
| 12 | <xsd:attribute name="name" type="name_type" use="required"/> |
| 13 | <xsd:attribute name="model_ec" type="model_ec_type" use="required"/> |
| 14 | </xsd:complexType> |
| 15 | </xsd:element> |
| 16 | |
| 17 | <!-- Element: chip/attn_tree --> |
| 18 | <xsd:complexType name="attn_tree"> |
| 19 | <xsd:attribute name="attn_type" type="attn_type_enum" use="required"/> |
| 20 | <xsd:attribute name="root_node" type="name_type" use="required"/> |
| 21 | <xsd:attribute name="node_inst" type="inst_type" use="required"/> |
| 22 | </xsd:complexType> |
| 23 | |
| 24 | <!-- Names must be alphanumeric or underscores, no spaces or other symbols |
| 25 | allowed. --> |
| 26 | <xsd:simpleType name="name_type"> |
| 27 | <xsd:restriction base="xsd:string"> |
| 28 | <xsd:pattern value="[a-zA-Z0-9_]+"/> |
| 29 | </xsd:restriction> |
| 30 | </xsd:simpleType> |
| 31 | |
| 32 | <!-- A comma separated list of names (see name_type for name definition). --> |
| 33 | <xsd:simpleType name="model_ec_type"> |
| 34 | <xsd:restriction base="xsd:string"> |
| 35 | <xsd:pattern value="[a-zA-Z0-9_]+(,[a-zA-Z0-9_]+)*"/> |
| 36 | </xsd:restriction> |
| 37 | </xsd:simpleType> |
| 38 | |
| 39 | <!-- Instance values are integers from 0-255. --> |
| 40 | <xsd:simpleType name="inst_type"> |
| 41 | <xsd:restriction base="xsd:integer"> |
| 42 | <xsd:minInclusive value="0"/> |
| 43 | <xsd:maxInclusive value="255"/> |
| 44 | </xsd:restriction> |
| 45 | </xsd:simpleType> |
| 46 | |
| 47 | <!-- Attention type enum. --> |
| 48 | <xsd:simpleType name="attn_type_enum"> |
| 49 | <xsd:restriction base="xsd:string"> |
| 50 | <xsd:enumeration value="CS"/> |
| 51 | <xsd:enumeration value="RE"/> |
| 52 | <xsd:enumeration value="UCS"/> |
| 53 | <xsd:enumeration value="SPA"/> |
| 54 | <xsd:enumeration value="HA"/> |
| 55 | </xsd:restriction> |
| 56 | </xsd:simpleType> |
| 57 | |
| 58 | </xsd:schema> |