ACC SHELL
<?xml version="1.0" encoding="UTF-8"?>
<grammar xmlns:susedata="http://linux.duke.edu/metadata/susedata" xmlns="http://relaxng.org/ns/structure/1.0">
<include href="common-inc.rng"/>
<define name="ns.susedata">
<element name="susedata:susedata">
<attribute name="packages">
<ref name="private.nonnegative"/>
</attribute>
<zeroOrMore>
<element name="susedata:package">
<attribute name="pkgid"/>
<attribute name="name"/>
<attribute name="arch">
<ref name="private.archenum"/>
</attribute>
<element name="susedata:version">
<ref name="private.evr"/>
</element>
<optional>
<element name="susedata:eula">
<text/>
</element>
</optional>
<optional>
<element name="susedata:keyword">
<text/>
</element>
</optional>
</element>
</zeroOrMore>
</element>
</define>
<define name="plain.susedata">
<element name="susedata">
<attribute name="packages">
<ref name="private.nonnegative"/>
</attribute>
<zeroOrMore>
<element name="package">
<attribute name="pkgid"/>
<attribute name="name"/>
<attribute name="arch">
<ref name="private.archenum"/>
</attribute>
<element name="version">
<ref name="private.evr"/>
</element>
<optional>
<element name="eula">
<text/>
</element>
</optional>
<optional>
<element name="keyword">
<text/>
</element>
</optional>
</element>
</zeroOrMore>
</element>
</define>
<!-- Unfortunately there are some susedata files without namespaces in the wild -->
<start>
<choice>
<ref name="ns.susedata"/>
<ref name="plain.susedata"/>
</choice>
</start>
</grammar>
ACC SHELL 2018