summaryrefslogtreecommitdiff
path: root/schema/interface_definition.rng
diff options
context:
space:
mode:
Diffstat (limited to 'schema/interface_definition.rng')
-rw-r--r--schema/interface_definition.rng18
1 files changed, 18 insertions, 0 deletions
diff --git a/schema/interface_definition.rng b/schema/interface_definition.rng
index 195ef27f4..bfd8d376f 100644
--- a/schema/interface_definition.rng
+++ b/schema/interface_definition.rng
@@ -29,10 +29,22 @@
<start>
<element name="interfaceDefinition">
<zeroOrMore>
+ <ref name="syntaxVersion"/>
+ </zeroOrMore>
+ <zeroOrMore>
<ref name="node"/>
</zeroOrMore>
</element>
</start>
+ <!-- interfaceDefinition may contain syntax version attribute lists. -->
+ <define name="syntaxVersion">
+ <element name="syntaxVersion">
+ <interleave>
+ <ref name="componentAttr"/>
+ <ref name="versionAttr"/>
+ </interleave>
+ </element>
+ </define>
<!--
node tag may contain node, leafNode, or tagNode tags
Those are intermediate configuration nodes that may only contain
@@ -184,6 +196,12 @@
</interleave>
</element>
</define>
+ <define name="componentAttr">
+ <attribute name="component"/>
+ </define>
+ <define name="versionAttr">
+ <attribute name="version"/>
+ </define>
<!-- All nodes must have "name" attribute -->
<define name="nodeNameAttr">
<attribute name="name"/>