home *** CD-ROM | disk | FTP | other *** search
- <?xml version="1.0" encoding="UTF-8"?>
- <grammar xmlns:yum="http://linux.duke.edu/metadata/common" ns="http://novell.com/package/metadata/suse/patch" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
- <include href="suse-primary.rng">
- <start>
- <ref name="element-patch"/>
- </start>
- <!-- patches use localized summary and description fields -->
- <define name="element-summary">
- <oneOrMore>
- <element name="summary">
- <ref name="localized-string"/>
- </element>
- </oneOrMore>
- </define>
- <define name="element-description">
- <oneOrMore>
- <element name="description">
- <ref name="localized-string"/>
- </element>
- </oneOrMore>
- </define>
- <define name="element-license-to-confirm">
- <element name="license-to-confirm">
- <ref name="localized-string"/>
- </element>
- </define>
- <!-- packages in patches have an additional rpmfiles element -->
- <define name="element-package">
- <element name="yum:package">
- <interleave>
- <ref name="package"/>
- <ref name="element-pkgfiles"/>
- <optional>
- <element name="license-to-confirm">
- <ref name="localized-string"/>
- </element>
- </optional>
- </interleave>
- </element>
- </define>
- </include>
- <define name="element-patch">
- <element name="patch">
- <ref name="patch"/>
- </element>
- </define>
- <define name="patch">
- <attribute name="patchid"/>
- <attribute name="timestamp">
- <data type="nonNegativeInteger"/>
- </attribute>
- <attribute name="engine"/>
- <ref name="element-name"/>
- <ref name="element-summary"/>
- <ref name="element-description"/>
- <zeroOrMore>
- <ref name="element-license-to-confirm"/>
- </zeroOrMore>
- <ref name="element-version"/>
- <zeroOrMore>
- <choice>
- <ref name="element-provides"/>
- <ref name="element-conflicts"/>
- <ref name="element-obsoletes"/>
- <ref name="element-requires"/>
- <ref name="element-freshens"/>
- <ref name="element-recommends"/>
- <ref name="element-suggests"/>
- <ref name="element-supplements"/>
- <ref name="element-enhances"/>
- </choice>
- </zeroOrMore>
- <ref name="element-category"/>
- <optional>
- <element name="reboot-needed">
- <empty/>
- </element>
- </optional>
- <optional>
- <element name="package-manager">
- <empty/>
- </element>
- </optional>
- <optional>
- <ref name="element-update-script"/>
- </optional>
- <oneOrMore>
- <element name="atoms">
- <oneOrMore>
- <choice>
- <ref name="element-package"/>
- <ref name="element-script"/>
- <ref name="element-message"/>
- </choice>
- </oneOrMore>
- </element>
- </oneOrMore>
- </define>
- <!-- shortcut since all atoms have the same dependency section -->
- <define name="dependency-block">
- <zeroOrMore>
- <choice>
- <ref name="element-provides"/>
- <ref name="element-conflicts"/>
- <ref name="element-obsoletes"/>
- <ref name="element-requires"/>
- <ref name="element-freshens"/>
- <ref name="element-recommends"/>
- <ref name="element-suggests"/>
- <ref name="element-supplements"/>
- <ref name="element-enhances"/>
- </choice>
- </zeroOrMore>
- </define>
- <define name="element-category">
- <element name="category">
- <choice>
- <value>youfix</value>
- <value>security</value>
- <value>recommended</value>
- <value>bonus</value>
- <value>beta</value>
- </choice>
- </element>
- </define>
- <define name="element-update-script">
- <element name="update-script">
- <text/>
- </element>
- </define>
- <define name="element-script">
- <element name="script">
- <ref name="element-name"/>
- <ref name="element-version"/>
- <optional>
- <element name="do">
- <data type="string"/>
- </element>
- </optional>
- <optional>
- <element name="undo">
- <data type="string"/>
- </element>
- </optional>
- <optional>
- <element name="do-location">
- <optional>
- <attribute name="xml:base">
- <data type="anyURI"/>
- </attribute>
- </optional>
- <attribute name="href">
- <data type="anyURI"/>
- </attribute>
- <empty/>
- </element>
- </optional>
- <optional>
- <element name="do-checksum">
- <attribute name="type">
- <choice>
- <value>md5</value>
- <value>sha</value>
- </choice>
- </attribute>
- <text/>
- </element>
- </optional>
- <optional>
- <element name="undo-location">
- <optional>
- <attribute name="xml:base">
- <data type="anyURI"/>
- </attribute>
- </optional>
- <attribute name="href">
- <data type="anyURI"/>
- </attribute>
- <empty/>
- </element>
- </optional>
- <optional>
- <element name="undo-checksum">
- <attribute name="type">
- <choice>
- <value>md5</value>
- <value>sha</value>
- </choice>
- </attribute>
- <text/>
- </element>
- </optional>
- <ref name="dependency-block"/>
- </element>
- </define>
- <define name="element-message">
- <element name="message">
- <ref name="element-name"/>
- <ref name="element-version"/>
- <oneOrMore>
- <element name="text">
- <ref name="localized-string"/>
- </element>
- </oneOrMore>
- <ref name="dependency-block"/>
- </element>
- </define>
- <define name="element-pkgfiles">
- <element name="pkgfiles">
- <zeroOrMore>
- <choice>
- <ref name="element-deltarpm"/>
- <ref name="element-patchrpm"/>
- <ref name="element-plainrpm"/>
- </choice>
- </zeroOrMore>
- </element>
- </define>
- <define name="element-plainrpm">
- <element name="plainrpm">
- <ref name="shared-rpmfile-attributes"/>
- </element>
- </define>
- <define name="element-patchrpm">
- <element name="patchrpm">
- <ref name="shared-rpmfile-attributes"/>
- <element name="location">
- <optional>
- <attribute name="xml:base">
- <data type="anyURI"/>
- </attribute>
- </optional>
- <attribute name="href">
- <data type="anyURI"/>
- </attribute>
- <empty/>
- </element>
- <element name="checksum">
- <attribute name="type">
- <choice>
- <value>md5</value>
- <value>sha</value>
- </choice>
- </attribute>
- <text/>
- </element>
- <ref name="element-time"/>
- <ref name="element-size"/>
- <oneOrMore>
- <ref name="element-base-version"/>
- </oneOrMore>
- </element>
- </define>
- <define name="element-deltarpm">
- <element name="deltarpm">
- <ref name="shared-rpmfile-attributes"/>
- <element name="location">
- <optional>
- <attribute name="xml:base">
- <data type="anyURI"/>
- </attribute>
- </optional>
- <attribute name="href">
- <data type="anyURI"/>
- </attribute>
- <empty/>
- </element>
- <element name="checksum">
- <attribute name="type">
- <choice>
- <value>md5</value>
- <value>sha</value>
- </choice>
- </attribute>
- <text/>
- </element>
- <ref name="element-time"/>
- <ref name="element-size"/>
- <ref name="element-delta-base-version"/>
- </element>
- </define>
- <define name="shared-rpmfile-attributes">
- <attribute name="arch">
- <ref name="arch"/>
- </attribute>
- <attribute name="filename"/>
- <attribute name="downloadsize"/>
- <optional>
- <attribute name="md5sum"/>
- </optional>
- <optional>
- <attribute name="buildtime"/>
- </optional>
- </define>
- <define name="element-base-version">
- <element name="base-version">
- <ref name="version"/>
- </element>
- </define>
- <define name="element-delta-base-version">
- <element name="base-version">
- <ref name="version"/>
- <attribute name="md5sum"/>
- <attribute name="buildtime"/>
- <attribute name="sequence_info"/>
- </element>
- </define>
- </grammar>
-