diff options
Diffstat (limited to 'metadata.rnc')
-rw-r--r-- | metadata.rnc | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/metadata.rnc b/metadata.rnc index 7a23cca..b7944d9 100644 --- a/metadata.rnc +++ b/metadata.rnc @@ -11,22 +11,26 @@ attlist.catmetadata &= pkgmetadata = element pkgmetadata { attlist.pkgmetadata, - (herd - | maintainer + (maintainer | natural-name | longdescription + | slots | use | upstream)* } attlist.pkgmetadata &= [ a:defaultValue = "" ] attribute pkgname { text }? -# One tag for each herd this package is assigned to. -herd = element herd { attlist.herd, text } # One tag for each maintainer of a package, multiple allowed maintainer = element maintainer { attlist.maintainer, email, (description | name)* } +# type attribute determines whether the maintainer is a person or a project. +# Unknown is added to handle <maintainer/>s in <upstream/>s. Using it (or no +# explicit type) for Gentoo maintainers is prohibited. +attlist.maintainer &= + [ a:defaultValue = "unknown" ] + attribute type { "person" | "project" | "unknown" }? # Natural name for package, example: LibreOffice (for app-office/libreoffice) natural-name = element natural-name { attlist.natural-name, text } attlist.natural-name &= empty @@ -35,6 +39,15 @@ longdescription = element longdescription { attlist.longdescription, (text | pkg | cat)* } +# A description of the packages SLOTs +slots = element slots { attlist.slots, slot*, subslots? } +# A particular SLOT +slot = element slot { attlist.slot, text* } +# name attribute holds the name of the SLOT, for sub-SLOTS use the subslots element +attlist.slot &= attribute name { text } +# The meaning of sub-SLOTs for the whole package +subslots = element subslots { attlist.subslots, text* } +attlist.subslots &= empty # The changelog of the package # Please note that #PCDATA is mentioned only for the upstream changelog @@ -112,6 +125,7 @@ attlist.remote-id &= | "freecode" | "freshmeat" | "github" + | "gitlab" | "gitorious" | "google-code" | "launchpad" @@ -139,6 +153,7 @@ attlist.cat &= empty attlist.description &= [ a:defaultValue = "C" ] attribute lang { text }? attlist.longdescription &= [ a:defaultValue = "C" ] attribute lang { text }? +attlist.slots &= [ a:defaultValue = "C" ] attribute lang { text }? attlist.use &= [ a:defaultValue = "C" ] attribute lang { text }? # The restrict attribute, this attribute specifies restrictions on # the applicability of tags on versions. The format of this attribute is @@ -148,7 +163,6 @@ attlist.use &= [ a:defaultValue = "C" ] attribute lang { text }? # # For required tags, there must be either an unrestricted version, or a # version that is default restricted. -attlist.herd &= attribute restrict { text }? attlist.maintainer &= attribute restrict { text }? attlist.longdescription &= attribute restrict { text }? attlist.flag &= attribute restrict { text }? |