blob: 58426511c0ac9777322d6e6cdc15613d824b79e9 [file] [log] [blame]
Zane Shelleyabc51c22020-11-09 21:35:35 -06001<?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>