Enforce a bit or value in enum items
authorDaniel Martin <consume.noise@gmail.com>
Sun, 18 Aug 2013 13:18:10 +0000 (15:18 +0200)
committerDaniel Martin <consume.noise@gmail.com>
Sun, 25 Aug 2013 09:22:20 +0000 (11:22 +0200)
Do not allow enum items without an explicit bit or value. The value of
an enum item is known when adding the enum to the xml specification.
There's no reason why this information shouldn't be where it belongs to.

Signed-off-by: Daniel Martin <consume.noise@gmail.com>
Reviewed-by: Ran Benita <ran234@gmail.com> (and tested)
Reviewed-by: Josh Triplett <josh@joshtriplett.org>
src/xcb.xsd

index 819495b..7a9c800 100644 (file)
@@ -353,7 +353,10 @@ authorization from the authors.
           <xsd:sequence minOccurs="1" maxOccurs="unbounded">
             <xsd:element name="item">
               <xsd:complexType>
-                <xsd:group ref="expression" minOccurs="0" maxOccurs="1" />
+                <xsd:choice minOccurs="1" maxOccurs="1">
+                  <xsd:element name="value" type="dec-or-hex-integer" />
+                  <xsd:element name="bit" type="xsd:integer" />
+                </xsd:choice>
                 <xsd:attribute name="name" type="xsd:string" use="required" />
               </xsd:complexType>
             </xsd:element>