comps.xml is now pushed automatically
Daniel Veillard
veillard at redhat.com
Thu Nov 23 18:15:03 UTC 2006
On Thu, Nov 23, 2006 at 05:16:13PM +0000, Paul Nasrat wrote:
> On Thu, 2006-11-23 at 16:01 +0100, Nicolas Mailhot wrote:
> > Le Jeu 23 novembre 2006 15:26, Christian Iseli a écrit :
> > > Hi folks,
> > >
> > > Better late than never, I'd like to announce that the FE comps.xml.in
> > > files are now pushed automatically along when there is a package
> > > sign/push to the repo.
> >
> > BTW do we have an authoritative DTD or schema for the comps.xml file
> > somewhere? Would it be worthwile to create one (in relax-ng or XML schema)
> > ? I'me pretty sick of using --novalid in XML tools.
>
> No we don't. I want to split some of the stuff out into it's own files
> - eg categories really only apply to display within tools so it's not
> the right place. yum/rpm repodata supports arbitrary metadata now so
> I'd like to break things up.
>
> Schemas for comps.xml as current and also repomd as generated by
> createrepo would be welcome.
A few years ago I created a Relax-NG schemas for comps.xml, it's certainly
way out of date but may be used as a starting point,
Daniel
--
Red Hat Virtualization group http://redhat.com/virtualization/
Daniel Veillard | virtualization library http://libvirt.org/
veillard at redhat.com | libxml GNOME XML XSLT toolkit http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/
-------------- next part --------------
<grammar xmlns="http://relaxng.org/ns/structure/1.0">
<start>
<ref name="comps"/>
</start>
<define name="package-name">
<text/>
</define>
<define name="group-name">
<text/>
</define>
<define name="lang">
<text/>
</define>
<define name="description-text">
<text/>
</define>
<define name="comps">
<element name="comps">
<oneOrMore>
<ref name="group"/>
</oneOrMore>
<ref name="grouphierarchy"/>
<oneOrMore>
<ref name="package"/>
</oneOrMore>
</element>
</define>
<define name="group">
<element name="group">
<element name="id">
<ref name="group-name"/>
</element>
<interleave>
<ref name="names"/>
<optional>
<element name="default">
<choice>
<value>true</value>
<value>false</value>
</choice>
</element>
</optional>
<optional>
<ref name="descriptions"/>
</optional>
<optional>
<element name="uservisible">
<choice>
<value>true</value>
<value>false</value>
</choice>
</element>
</optional>
<optional>
<element name="langonly">
<ref name="lang"/>
</element>
</optional>
</interleave>
<optional>
<element name="grouplist">
<zeroOrMore>
<element name="groupreq">
<ref name="group-name"/>
</element>
</zeroOrMore>
<zeroOrMore>
<element name="metapkg">
<attribute name="type">
<choice>
<value>default</value>
<!-- <value>mandatory</value> ?? -->
<value>optional</value>
</choice>
</attribute>
<ref name="package-name"/>
</element>
</zeroOrMore>
</element>
</optional>
<optional>
<element name="packagelist">
<oneOrMore>
<element name="packagereq">
<attribute name="type">
<choice>
<value>default</value>
<value>mandatory</value>
<value>optional</value>
</choice>
</attribute>
<optional>
<attribute name="requires">
<ref name="package-name"/>
</attribute>
</optional>
<ref name="package-name"/>
</element>
</oneOrMore>
</element>
</optional>
</element>
</define>
<define name="grouphierarchy">
<element name="grouphierarchy">
<oneOrMore>
<ref name="category"/>
</oneOrMore>
</element>
</define>
<define name="category">
<element name="category">
<ref name="names"/>
<optional>
<element name="subcategories">
<oneOrMore>
<element name="subcategory">
<ref name="package-name"/>
</element>
</oneOrMore>
</element>
</optional>
</element>
</define>
<define name="package">
<element name="package">
<element name="name">
<ref name="package-name"/>
</element>
<element name="dependencylist">
<zeroOrMore>
<element name="dependency">
<ref name="package-name"/>
</element>
</zeroOrMore>
</element>
</element>
</define>
<define name="names">
<element name="name">
<ref name="description-text"/>
</element>
<zeroOrMore>
<element name="name">
<attribute name="xml:lang">
<ref name="lang"/>
</attribute>
<ref name="description-text"/>
</element>
</zeroOrMore>
</define>
<define name="descriptions">
<element name="description">
<ref name="description-text"/>
</element>
<zeroOrMore>
<element name="description">
<attribute name="xml:lang">
<ref name="lang"/>
</attribute>
<ref name="description-text"/>
</element>
</zeroOrMore>
</define>
</grammar>
More information about the fedora-extras-list
mailing list