summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiego 'Flameeyes' Pettenò <flameeyes@gmail.com>2007-11-21 22:43:57 +0100
committerDiego 'Flameeyes' Pettenò <flameeyes@gmail.com>2007-11-21 22:43:57 +0100
commitfb953092500af901e36070608d755bbe82c3b495 (patch)
treeeceedb4ed82f96490516a6e3106c407157161ee5
parentAdd some sort of licence. (diff)
downloadnxml-gentoo-schemas-fb953092500af901e36070608d755bbe82c3b495.tar.gz
nxml-gentoo-schemas-fb953092500af901e36070608d755bbe82c3b495.tar.bz2
nxml-gentoo-schemas-fb953092500af901e36070608d755bbe82c3b495.zip
Update .rnc files for all DTDs and add new files that are now deps.
-rw-r--r--book.rnc282
-rw-r--r--common.rnc121
-rw-r--r--funnychars.rnc164
-rw-r--r--glsa.rnc12
-rw-r--r--guide.rnc293
-rw-r--r--project.rnc121
-rw-r--r--userinfo.rnc54
7 files changed, 335 insertions, 712 deletions
diff --git a/book.rnc b/book.rnc
index b69d824..38335b9 100644
--- a/book.rnc
+++ b/book.rnc
@@ -1,161 +1,4 @@
-namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"
-
-inline.class =
- sup | sub | b | brite | c | e | path | img | br | mail | uri | keyval
-pre.class = comment | i | keyword | ident | const | stmt | var | keyval
-block.class =
- figure | fig | note | impo | warn | pre | p | table | ul | ol | dl
-# VULGAR FRACTION ONE HALF
-
-# VULGAR FRACTION ONE HALF
-
-# VULGAR FRACTION ONE QUARTER
-
-# VULGAR FRACTION THREE QUARTERS
-
-#
-
-#
-
-#
-
-#
-
-# SUPERSCRIPT ONE
-
-# SUPERSCRIPT TWO
-
-# SUPERSCRIPT THREE
-
-# PLUS SIGN
-
-# PLUS-MINUS SIGN
-
-# LESS-THAN SIGN
-
-# EQUALS SIGN
-
-# GREATER-THAN SIGN
-
-# DIVISION SIGN
-
-# MULTIPLICATION SIGN
-
-# CURRENCY SIGN
-
-# POUND SIGN
-
-# DOLLAR SIGN
-
-# CENT SIGN
-
-# YEN SIGN
-
-# NUMBER SIGN
-
-# PERCENT SIGN
-
-# AMPERSAND
-
-# ASTERISK OPERATOR
-
-# COMMERCIAL AT
-
-# LEFT SQUARE BRACKET
-
-# REVERSE SOLIDUS
-
-# RIGHT SQUARE BRACKET
-
-# LEFT CURLY BRACKET
-
-# HORIZONTAL BAR
-
-# VERTICAL LINE
-
-# RIGHT CURLY BRACKET
-
-# MICRO SIGN
-
-# OHM SIGN
-
-# DEGREE SIGN
-
-# MASCULINE ORDINAL INDICATOR
-
-# FEMININE ORDINAL INDICATOR
-
-# SECTION SIGN
-
-# PILCROW SIGN
-
-# MIDDLE DOT
-
-# LEFTWARDS DOUBLE ARROW
-
-# RIGHTWARDS DOUBLE ARROW
-
-# UPWARDS ARROW
-
-# DOWNWARDS ARROW
-
-# COPYRIGHT SIGN
-
-# REG TRADE MARK SIGN
-
-# TRADE MARK SIGN
-
-# BROKEN BAR
-
-# NOT SIGN
-
-#
-
-# EXCLAMATION MARK
-
-# INVERTED EXCLAMATION MARK
-
-# QUOTATION MARK
-
-# APOSTROPHE
-
-# LEFT PARENTHESIS
-
-# RIGHT PARENTHESIS
-
-# COMMA
-
-# LOW LINE
-
-#
-
-# FULL STOP
-
-# SOLIDUS
-
-# COLON
-
-# SEMICOLON
-
-# QUESTION MARK
-
-# INVERTED QUESTION MARK
-
-# LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
-
-# RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
-
-#
-
-# RIGHT SINGLE QUOTATION MARK
-
-#
-
-# RIGHT DOUBLE QUOTATION MARK
-
-# NO-BREAK SPACE
-
-# SOFT HYPHEN
+include "common.rnc"
book =
element book {
book.attlist,
@@ -169,141 +12,42 @@ book =
part+
}
book.attlist &=
- attribute link { text },
+ attribute link { text }?,
attribute disclaimer {
"articles" | "oldbook" | "draft" | "obsolete"
}?,
attribute lang { text }?
-title = element title { title.attlist, text }
-title.attlist &= empty
-values = element values { values.attlist, key+ }
-values.attlist &= empty
-key = element key { key.attlist, text }
-key.attlist &= attribute id { text }?
-author = element author { author.attlist, (text | mail)* }
-author.attlist &= attribute title { text }?
-abstract = element abstract { abstract.attlist, text }
-abstract.attlist &= empty
-license = element license { license.attlist, empty }
-license.attlist &= empty
-version = element version { version.attlist, text }
-version.attlist &= empty
-date = element date { date.attlist, text }
-date.attlist &= empty
part = element part { part.attlist, title, abstract, chapter+ }
part.attlist &= attribute id { text }?
chapter =
element chapter { chapter.attlist, title, abstract?, \include }
chapter.attlist &= attribute id { text }?
-section = element section { section.attlist, title, body*, subsection* }
-section.attlist &=
- attribute id { text }?,
- attribute test { text }?
sections =
element sections {
sections.attlist, abstract?, version, date, section+
}
sections.attlist &= empty
+section =
+ element section { section.attlist, title, (body+ | subsection+) }
+section.attlist &=
+ attribute id { text }?,
+ attribute test { text }?
subsection = element subsection { subsection.attlist, title?, body+ }
subsection.attlist &=
attribute id { text }?,
attribute test { text }?
-body = element body { body.attlist, block.class* }
+body = element body { body.attlist, block.class+ }
body.attlist &= attribute test { text }?
-figure = element figure { figure.attlist, empty }
-figure.attlist &=
- attribute caption { text }?,
- attribute short { text }?,
- attribute link { text }
-fig = element fig { fig.attlist, empty }
-fig.attlist &=
- attribute short { text }?,
- attribute linkto { text }?,
- attribute link { text }
-img = element img { img.attlist, empty }
-img.attlist &= attribute src { text }
-br = element br { br.attlist, text }
-br.attlist &= empty
-note = element note { note.attlist, (text | inline.class)* }
note.attlist &= attribute test { text }?
-impo = element impo { impo.attlist, (text | inline.class)* }
impo.attlist &= attribute test { text }?
-warn = element warn { warn.attlist, (text | inline.class)* }
warn.attlist &= attribute test { text }?
-pre = element pre { pre.attlist, (text | pre.class)* }
-pre.attlist &=
- attribute caption { text },
- attribute test { text }?
-p = element p { p.attlist, (text | inline.class)* }
-p.attlist &=
- attribute by { text }?,
- attribute test { text }?
-table = element table { table.attlist, tcolumn*, tr+ }
+pre.attlist &= attribute test { text }?
+p.attlist &= attribute test { text }?
table.attlist &= attribute test { text }?
-tcolumn = element tcolumn { tcolumn.attlist, empty }
-tcolumn.attlist &= attribute width { text }
-tr = element tr { tr.attlist, (th | ti)+ }
-tr.attlist &=
- attribute id { text }?,
- attribute test { text }?
-th = element th { th.attlist, (text | inline.class)* }
-th.attlist &=
- attribute colspan { text }?,
- attribute rowspan { text }?
-ti = element ti { ti.attlist, (text | inline.class)* }
-ti.attlist &=
- attribute colspan { text }?,
- attribute rowspan { text }?,
- [ a:defaultValue = "left" ]
- attribute align { "left" | "center" | "right" }?
-dl = element dl { dl.attlist, (dt | dd)+ }
-dl.attlist &= empty
-dt = element dt { dt.attlist, (text | inline.class)* }
-dt.attlist &= empty
-dd = element dd { dd.attlist, (text | inline.class | ul | ol)* }
-dd.attlist &= empty
-ul = element ul { ul.attlist, li+ }
+tr.attlist &= attribute test { text }?
ul.attlist &= attribute test { text }?
-ol = element ol { ol.attlist, li+ }
ol.attlist &= attribute test { text }?
-li = element li { li.attlist, (text | inline.class | ul | ol)* }
li.attlist &= attribute test { text }?
-# STYLE TAGS
-sup = element sup { sup.attlist, (text | inline.class)* }
-sup.attlist &= empty
-sub = element sub { sub.attlist, (text | inline.class)* }
-sub.attlist &= empty
-b = element b { b.attlist, (text | inline.class)* }
-b.attlist &= empty
-brite = element brite { brite.attlist, (text | inline.class)* }
-brite.attlist &= empty
-c = element c { c.attlist, (text | inline.class)* }
-c.attlist &= empty
-e = element e { e.attlist, (text | inline.class)* }
-e.attlist &= empty
-path = element path { path.attlist, (text | inline.class)* }
-path.attlist &= empty
-comment = element comment { comment.attlist, (text | pre.class | b)* }
-comment.attlist &= empty
-i = element i { i.attlist, (text | pre.class)* }
-i.attlist &= empty
-keyword = element keyword { keyword.attlist, (text | pre.class)* }
-keyword.attlist &= empty
-ident = element ident { ident.attlist, (text | pre.class)* }
-ident.attlist &= empty
-const = element const { const.attlist, (text | pre.class)* }
-const.attlist &= empty
-stmt = element stmt { stmt.attlist, (text | pre.class)* }
-stmt.attlist &= empty
-var = element var { var.attlist, (text | pre.class)* }
-var.attlist &= empty
-keyval = element keyval { keyval.attlist, empty }
-keyval.attlist &= attribute id { text }
-# LINK TAGS
-mail = element mail { mail.attlist, text* }
-mail.attlist &= attribute link { text }
-uri = element uri { uri.attlist, (text | img)* }
-uri.attlist &= attribute link { text }?
-\include = element include { include.attlist, text }
+\include = element include { include.attlist, empty }
include.attlist &= attribute href { text }
-start = book | sections
+start = glepindex | book | sections | summary
diff --git a/common.rnc b/common.rnc
new file mode 100644
index 0000000..597731f
--- /dev/null
+++ b/common.rnc
@@ -0,0 +1,121 @@
+# Import funny characters
+
+namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"
+
+inline.class =
+ sup | sub | b | brite | c | e | path | img | br | mail | uri | keyval
+pre.class =
+ comment | i | keyword | ident | const | stmt | var | keyval | uri
+lists.class = ul | ol | dl
+ti.class = inline.class | lists.class | fig
+block.class =
+ figure | fig | note | impo | warn | pre | p | table | lists.class
+title = element title { title.attlist, text }
+title.attlist &= empty
+values = element values { values.attlist, key+ }
+values.attlist &= empty
+key = element key { key.attlist, text }
+key.attlist &= attribute id { text }?
+author = element author { author.attlist, (text | mail)* }
+author.attlist &= attribute title { text }?
+mail = element mail { mail.attlist, text }
+mail.attlist &= attribute link { text }?
+uri = element uri { uri.attlist, (text | img)* }
+uri.attlist &= attribute link { text }?
+date = element date { date.attlist, text }
+date.attlist &= empty
+abstract = element abstract { abstract.attlist, text }
+abstract.attlist &= empty
+summary = element summary { summary.attlist, text }
+summary.attlist &= empty
+license = element license { license.attlist, empty }
+license.attlist &= empty
+version = element version { version.attlist, text }
+version.attlist &= empty
+figure = element figure { figure.attlist, empty }
+figure.attlist &=
+ attribute caption { text }?,
+ attribute short { text }?,
+ attribute link { text }
+fig = element fig { fig.attlist, empty }
+fig.attlist &=
+ attribute short { text }?,
+ attribute linkto { text }?,
+ attribute link { text }
+img = element img { img.attlist, empty }
+img.attlist &= attribute src { text }
+br = element br { br.attlist, empty }
+br.attlist &= empty
+note = element note { note.attlist, (text | inline.class)* }
+note.attlist &= empty
+impo = element impo { impo.attlist, (text | inline.class)* }
+impo.attlist &= empty
+warn = element warn { warn.attlist, (text | inline.class)* }
+warn.attlist &= empty
+pre = element pre { pre.attlist, (text | pre.class)* }
+pre.attlist &= attribute caption { text }
+comment = element comment { comment.attlist, (text | pre.class | b)* }
+comment.attlist &= empty
+i = element i { i.attlist, (text | pre.class)* }
+i.attlist &= empty
+keyword = element keyword { keyword.attlist, (text | pre.class)* }
+keyword.attlist &= empty
+ident = element ident { ident.attlist, (text | pre.class)* }
+ident.attlist &= empty
+const = element const { const.attlist, (text | pre.class)* }
+const.attlist &= empty
+stmt = element stmt { stmt.attlist, (text | pre.class)* }
+stmt.attlist &= empty
+var = element var { var.attlist, (text | pre.class)* }
+var.attlist &= empty
+glepindex = element glepindex { glepindex.attlist, empty }
+glepindex.attlist &=
+ attribute status { text }?,
+ [ a:defaultValue = "/proj/en/glep/gleps.xml" ]
+ attribute index { text }?
+p = element p { p.attlist, (text | inline.class)* }
+p.attlist &= attribute by { text }?
+table = element table { table.attlist, tcolumn*, tr+ }
+table.attlist &= empty
+tcolumn = element tcolumn { tcolumn.attlist, empty }
+tcolumn.attlist &= attribute width { text }
+tr = element tr { tr.attlist, (th | ti)+ }
+tr.attlist &= attribute id { text }?
+th = element th { th.attlist, (text | inline.class)* }
+th.attlist &=
+ attribute colspan { text }?,
+ attribute rowspan { text }?
+ti = element ti { ti.attlist, (text | ti.class)* }
+ti.attlist &=
+ attribute colspan { text }?,
+ attribute rowspan { text }?,
+ [ a:defaultValue = "left" ]
+ attribute align { "left" | "center" | "right" }?
+dl = element dl { dl.attlist, (dt | dd)+ }
+dl.attlist &= empty
+dt = element dt { dt.attlist, (text | inline.class)* }
+dt.attlist &= empty
+dd = element dd { dd.attlist, (text | inline.class | ul | ol)* }
+dd.attlist &= empty
+ul = element ul { ul.attlist, li+ }
+ul.attlist &= empty
+ol = element ol { ol.attlist, li+ }
+ol.attlist &= empty
+li = element li { li.attlist, (text | inline.class | ul | ol)* }
+li.attlist &= empty
+sup = element sup { sup.attlist, (text | inline.class)* }
+sup.attlist &= empty
+sub = element sub { sub.attlist, (text | inline.class)* }
+sub.attlist &= empty
+b = element b { b.attlist, (text | inline.class)* }
+b.attlist &= empty
+brite = element brite { brite.attlist, (text | inline.class)* }
+brite.attlist &= empty
+c = element c { c.attlist, (text | inline.class)* }
+c.attlist &= empty
+e = element e { e.attlist, (text | inline.class)* }
+e.attlist &= empty
+path = element path { path.attlist, (text | inline.class)* }
+path.attlist &= empty
+keyval = element keyval { keyval.attlist, empty }
+keyval.attlist &= attribute id { text }
diff --git a/funnychars.rnc b/funnychars.rnc
new file mode 100644
index 0000000..a76b2cd
--- /dev/null
+++ b/funnychars.rnc
@@ -0,0 +1,164 @@
+
+# VULGAR FRACTION ONE HALF
+
+# VULGAR FRACTION ONE HALF
+
+# VULGAR FRACTION ONE QUARTER
+
+# VULGAR FRACTION THREE QUARTERS
+
+#
+
+#
+
+#
+
+#
+
+# SUPERSCRIPT ONE
+
+# SUPERSCRIPT TWO
+
+# SUPERSCRIPT THREE
+
+# PLUS SIGN
+
+# PLUS-MINUS SIGN
+
+# LESS-THAN SIGN
+
+# EQUALS SIGN
+
+# GREATER-THAN SIGN
+
+# DIVISION SIGN
+
+# MULTIPLICATION SIGN
+
+# CURRENCY SIGN
+
+# POUND SIGN
+
+# DOLLAR SIGN
+
+# CENT SIGN
+
+# YEN SIGN
+
+# NUMBER SIGN
+
+# PERCENT SIGN
+
+# AMPERSAND
+
+# ASTERISK OPERATOR
+
+# COMMERCIAL AT
+
+# LEFT SQUARE BRACKET
+
+# REVERSE SOLIDUS
+
+# RIGHT SQUARE BRACKET
+
+# LEFT CURLY BRACKET
+
+# HORIZONTAL BAR
+
+# VERTICAL LINE
+
+# RIGHT CURLY BRACKET
+
+# MICRO SIGN
+
+# OHM SIGN
+
+# DEGREE SIGN
+
+# MASCULINE ORDINAL INDICATOR
+
+# FEMININE ORDINAL INDICATOR
+
+# SECTION SIGN
+
+# PILCROW SIGN
+
+# MIDDLE DOT
+
+# LEFTWARDS DOUBLE ARROW
+
+# RIGHTWARDS DOUBLE ARROW
+
+# UPWARDS ARROW
+
+# DOWNWARDS ARROW
+
+# COPYRIGHT SIGN
+
+# REG TRADE MARK SIGN
+
+# TRADE MARK SIGN
+
+# BROKEN BAR
+
+# NOT SIGN
+
+#
+
+# EXCLAMATION MARK
+
+# INVERTED EXCLAMATION MARK
+
+# QUOTATION MARK
+
+# APOSTROPHE
+
+# LEFT PARENTHESIS
+
+# RIGHT PARENTHESIS
+
+# COMMA
+
+# LOW LINE
+
+#
+
+# FULL STOP
+
+# SOLIDUS
+
+# COLON
+
+# SEMICOLON
+
+# QUESTION MARK
+
+# INVERTED QUESTION MARK
+
+# LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
+
+# RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
+
+#
+
+# RIGHT SINGLE QUOTATION MARK
+
+#
+
+# RIGHT DOUBLE QUOTATION MARK
+
+# NO-BREAK SPACE
+
+# SOFT HYPHEN
+
+# CIRCONFLEXEd a
+
+# UMLAUTED e
+
+# ACUTEd e
+
+# CIRCONFLEXEd i
+
+# CIRCONFLEXEd u
+
+# GRAVEd u
diff --git a/glsa.rnc b/glsa.rnc
index e69a360..3ca92a0 100644
--- a/glsa.rnc
+++ b/glsa.rnc
@@ -1,4 +1,4 @@
-# $Header: /var/cvsroot/gentoo-x86/app-emacs/nxml-gentoo-schemas/files/glsa.rnc,v 1.1 2007/07/25 09:45:50 opfer Exp $
+# $Header: /var/cvsroot/gentoo/xml/htdocs/dtd/glsa.dtd,v 1.16 2007/11/05 00:54:20 robbat2 Exp $
glsa =
element glsa {
@@ -179,7 +179,7 @@ attlist.mail &= attribute link { text }
# links or addresses
#
# Example: <p>Please update your system</p>
-p = element p { attlist.p, (text | uri | mail | b | u | i | br)* }
+p = element p { attlist.p, (text | mail | uri | b | i | br)* }
attlist.p &= empty
# Element: code
# Description: The code element contains text that should preserve whitespace
@@ -199,7 +199,7 @@ attlist.background &= empty
# Description: Provides a description about the security issue
# The description element contains only "<p>"s.
description =
- element description { attlist.description, (p | ul | ol)* }
+ element description { attlist.description, (p | ul | ol | code)* }
attlist.description &= empty
# Element: impact
# Description: Provides information about the impact that the security issue
@@ -257,12 +257,6 @@ attlist.li &= empty
# Example: <b>this is bold</b>
b = element b { attlist.b, text }
attlist.b &= empty
-# Element: u
-# Description: Underlined text
-#
-# Example: <u>this is underlined</u>
-u = element u { attlist.u, text }
-attlist.u &= empty
# Element: i
# Description: Input text (blue)
#
diff --git a/guide.rnc b/guide.rnc
index c8c84c1..f19206d 100644
--- a/guide.rnc
+++ b/guide.rnc
@@ -1,173 +1,6 @@
namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"
-inline.class =
- sup | sub | b | brite | c | e | path | img | br | mail | uri
-pre.class = comment | i | keyword | ident | const | stmt | var
-block.class =
- figure | fig | note | impo | warn | pre | p | table | ul | ol | dl
-# VULGAR FRACTION ONE HALF
-
-# VULGAR FRACTION ONE HALF
-
-# VULGAR FRACTION ONE QUARTER
-
-# VULGAR FRACTION THREE QUARTERS
-
-#
-
-#
-
-#
-
-#
-
-# SUPERSCRIPT ONE
-
-# SUPERSCRIPT TWO
-
-# SUPERSCRIPT THREE
-
-# PLUS SIGN
-
-# PLUS-MINUS SIGN
-
-# LESS-THAN SIGN
-
-# EQUALS SIGN
-
-# GREATER-THAN SIGN
-
-# DIVISION SIGN
-
-# MULTIPLICATION SIGN
-
-# CURRENCY SIGN
-
-# POUND SIGN
-
-# DOLLAR SIGN
-
-# CENT SIGN
-
-# YEN SIGN
-
-# NUMBER SIGN
-
-# PERCENT SIGN
-
-# AMPERSAND
-
-# ASTERISK OPERATOR
-
-# COMMERCIAL AT
-
-# LEFT SQUARE BRACKET
-
-# REVERSE SOLIDUS
-
-# RIGHT SQUARE BRACKET
-
-# LEFT CURLY BRACKET
-
-# HORIZONTAL BAR
-
-# VERTICAL LINE
-
-# RIGHT CURLY BRACKET
-
-# MICRO SIGN
-
-# OHM SIGN
-
-# DEGREE SIGN
-
-# MASCULINE ORDINAL INDICATOR
-
-# FEMININE ORDINAL INDICATOR
-
-# SECTION SIGN
-
-# PILCROW SIGN
-
-# MIDDLE DOT
-
-# LEFTWARDS DOUBLE ARROW
-
-# RIGHTWARDS DOUBLE ARROW
-
-# UPWARDS ARROW
-
-# DOWNWARDS ARROW
-
-# COPYRIGHT SIGN
-
-# REG TRADE MARK SIGN
-
-# TRADE MARK SIGN
-
-# BROKEN BAR
-
-# NOT SIGN
-
-#
-
-# EXCLAMATION MARK
-
-# INVERTED EXCLAMATION MARK
-
-# QUOTATION MARK
-
-# APOSTROPHE
-
-# LEFT PARENTHESIS
-
-# RIGHT PARENTHESIS
-
-# COMMA
-
-# LOW LINE
-
-#
-
-# FULL STOP
-
-# SOLIDUS
-
-# COLON
-
-# SEMICOLON
-
-# QUESTION MARK
-
-# INVERTED QUESTION MARK
-
-# LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
-
-# RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
-
-#
-
-# RIGHT SINGLE QUOTATION MARK
-
-#
-
-# RIGHT DOUBLE QUOTATION MARK
-
-# NO-BREAK SPACE
-
-# SOFT HYPHEN
-
-# CIRCONFLEXEd a
-
-# UMLAUTED e
-
-# ACUTEd e
-
-# CIRCONFLEXEd i
-
-# CIRCONFLEXEd u
-
-# GRAVEd u
+include "common.rnc"
mainpage =
element mainpage {
mainpage.attlist,
@@ -195,6 +28,7 @@ guide =
license?,
version,
date,
+ faqindex?,
chapter+
}
guide.attlist &=
@@ -212,126 +46,23 @@ news.attlist &=
attribute category {
"gentoo" | "main" | "ibm" | "linux" | "moo" | "nvidia"
}
-title = element title { title.attlist, text* }
-title.attlist &= empty
subtitle = element subtitle { subtitle.attlist, text }
subtitle.attlist &= empty
-poster = element poster { poster.attlist, text* }
+poster = element poster { poster.attlist, text }
poster.attlist &= empty
-author = element author { author.attlist, (text | mail)* }
-author.attlist &= attribute title { text }?
-abstract = element abstract { abstract.attlist, text }
-abstract.attlist &= empty
-summary = element summary { summary.attlist, text }
-summary.attlist &= empty
-license = element license { license.attlist, empty }
-license.attlist &= empty
-glepindex = element glepindex { glepindex.attlist, empty }
-glepindex.attlist &=
- attribute status { text }?,
- [ a:defaultValue = "/proj/en/glep/gleps.xml" ]
- attribute index { text }?
-glsaindex = element glsaindex { glsaindex.attlist, empty }
-glsaindex.attlist &= empty
-glsa-latest = element glsa-latest { glsa-latest.attlist, empty }
-glsa-latest.attlist &= empty
-version = element version { version.attlist, text }
-version.attlist &= empty
-date = element date { date.attlist, text }
-date.attlist &= empty
+faqindex = element faqindex { faqindex.attlist, title, section? }
+faqindex.attlist &= empty
chapter = element chapter { chapter.attlist, title, section+ }
chapter.attlist &= attribute id { text }?
-section = element section { section.attlist, title?, body }
+section = element section { section.attlist, title?, body+ }
section.attlist &= attribute id { text }?
body =
element body {
- body.attlist, (block.class | glsa-latest | glsaindex | glepindex)*
+ body.attlist, (block.class | glsa-latest | glsaindex | glepindex)+
}
body.attlist &= empty
-figure = element figure { figure.attlist, empty }
-figure.attlist &=
- attribute caption { text }?,
- attribute short { text }?,
- attribute link { text }
-fig = element fig { fig.attlist, empty }
-fig.attlist &=
- attribute short { text }?,
- attribute linkto { text }?,
- attribute link { text }
-img = element img { img.attlist, empty }
-img.attlist &= attribute src { text }
-br = element br { br.attlist, text }
-br.attlist &= empty
-note = element note { note.attlist, (text | inline.class)* }
-note.attlist &= empty
-impo = element impo { impo.attlist, (text | inline.class)* }
-impo.attlist &= empty
-warn = element warn { warn.attlist, (text | inline.class)* }
-warn.attlist &= empty
-pre = element pre { pre.attlist, (text | pre.class)* }
-pre.attlist &= attribute caption { text }
-p = element p { p.attlist, (text | inline.class)* }
-p.attlist &= attribute by { text }?
-table = element table { table.attlist, tcolumn*, tr+ }
-table.attlist &= empty
-tcolumn = element tcolumn { tcolumn.attlist, empty }
-tcolumn.attlist &= attribute width { text }
-tr = element tr { tr.attlist, (th | ti)+ }
-tr.attlist &= attribute id { text }?
-th = element th { th.attlist, (text | inline.class)* }
-th.attlist &=
- attribute colspan { text }?,
- attribute rowspan { text }?
-ti = element ti { ti.attlist, (text | inline.class | block.class)* }
-ti.attlist &=
- attribute colspan { text }?,
- attribute rowspan { text }?,
- [ a:defaultValue = "left" ]
- attribute align { "left" | "center" | "right" }?
-dl = element dl { dl.attlist, (dt | dd)+ }
-dl.attlist &= empty
-dt = element dt { dt.attlist, (text | inline.class)* }
-dt.attlist &= empty
-dd = element dd { dd.attlist, (text | inline.class | ul | ol)* }
-dd.attlist &= empty
-ul = element ul { ul.attlist, li+ }
-ul.attlist &= empty
-ol = element ol { ol.attlist, li+ }
-ol.attlist &= empty
-li = element li { li.attlist, (text | inline.class | ul | ol)* }
-li.attlist &= empty
-# STYLE TAGS
-sup = element sup { sup.attlist, (text | inline.class)* }
-sup.attlist &= empty
-sub = element sub { sub.attlist, (text | inline.class)* }
-sub.attlist &= empty
-b = element b { b.attlist, (text | inline.class)* }
-b.attlist &= empty
-brite = element brite { brite.attlist, (text | inline.class)* }
-brite.attlist &= empty
-c = element c { c.attlist, (text | inline.class)* }
-c.attlist &= empty
-e = element e { e.attlist, (text | inline.class)* }
-e.attlist &= empty
-path = element path { path.attlist, (text | inline.class)* }
-path.attlist &= empty
-comment = element comment { comment.attlist, (text | pre.class | b)* }
-comment.attlist &= empty
-i = element i { i.attlist, (text | pre.class)* }
-i.attlist &= empty
-keyword = element keyword { keyword.attlist, (text | pre.class)* }
-keyword.attlist &= empty
-ident = element ident { ident.attlist, (text | pre.class)* }
-ident.attlist &= empty
-const = element const { const.attlist, (text | pre.class)* }
-const.attlist &= empty
-stmt = element stmt { stmt.attlist, (text | pre.class)* }
-stmt.attlist &= empty
-var = element var { var.attlist, (text | pre.class)* }
-var.attlist &= empty
-# LINK TAGS
-mail = element mail { mail.attlist, text* }
-mail.attlist &= attribute link { text }?
-uri = element uri { uri.attlist, (text | img)* }
-uri.attlist &= attribute link { text }?
-start = news | mainpage | guide
+glsaindex = element glsaindex { glsaindex.attlist, empty }
+glsaindex.attlist &= empty
+glsa-latest = element glsa-latest { glsa-latest.attlist, empty }
+glsa-latest.attlist &= empty
+start = news | mainpage | values | guide
diff --git a/project.rnc b/project.rnc
index b48108c..885c951 100644
--- a/project.rnc
+++ b/project.rnc
@@ -1,101 +1,9 @@
-# import certain parts of guide.dtd
-
namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"
-style.class = b | box | brite | c | comment | e | i | path
-link.class = uri | mail
-logic.class =
- figure
- | fig
- | img
- | br
- | note
- | impo
- | warn
- | pre
- | p
- | table
- | ul
- | ol
- | glepindex
-all.class = logic.class | style.class | link.class
-# allow for custom sections
-title = element title { title.attlist, (text | style.class)* }
-title.attlist &= empty
-chapter = element chapter { chapter.attlist, title, section+ }
-chapter.attlist &= empty
-section = element section { section.attlist, title?, body }
-section.attlist &= empty
-body = element body { body.attlist, all.class* }
+include "common.rnc"
+body.class = block.class | glepindex
+body = element body { body.attlist, body.class* }
body.attlist &= empty
-# allow for layout etc. in some cases so define the classes
-figure = element figure { figure.attlist, empty }
-figure.attlist &=
- attribute caption { text }?,
- attribute short { text }?,
- attribute link { text }
-fig = element fig { fig.attlist, empty }
-fig.attlist &=
- attribute short { text }?,
- attribute linkto { text }?,
- attribute link { text }
-img = element img { img.attlist, empty }
-img.attlist &= attribute src { text }
-br = element br { br.attlist, text }
-br.attlist &= empty
-note = element note { note.attlist, (text | all.class)* }
-note.attlist &= empty
-impo = element impo { impo.attlist, (text | all.class)* }
-impo.attlist &= empty
-warn = element warn { warn.attlist, (text | all.class)* }
-warn.attlist &= empty
-pre = element pre { pre.attlist, (text | all.class)* }
-pre.attlist &= attribute caption { text }
-p = element p { p.attlist, (text | all.class)* }
-p.attlist &= empty
-table = element table { table.attlist, tcolumn*, tr+ }
-table.attlist &= empty
-tcolumn = element tcolumn { tcolumn.attlist, empty }
-tcolumn.attlist &= attribute width { text }
-tr = element tr { tr.attlist, (th | ti)+ }
-tr.attlist &= empty
-th = element th { th.attlist, (text | all.class)* }
-th.attlist &= empty
-ti = element ti { ti.attlist, (text | all.class)* }
-ti.attlist &= empty
-ul = element ul { ul.attlist, li+ }
-ul.attlist &= empty
-ol = element ol { ol.attlist, li+ }
-ol.attlist &= empty
-li = element li { li.attlist, (text | all.class)* }
-li.attlist &= empty
-b = element b { b.attlist, (text | style.class | link.class)* }
-b.attlist &= empty
-brite =
- element brite { brite.attlist, (text | style.class | link.class)* }
-brite.attlist &= empty
-c = element c { c.attlist, (text | style.class | link.class)* }
-c.attlist &= empty
-comment =
- element comment {
- comment.attlist, (text | style.class | link.class)*
- }
-comment.attlist &= empty
-e = element e { e.attlist, (text | style.class | link.class)* }
-e.attlist &= empty
-i = element i { i.attlist, (text | style.class | link.class)* }
-i.attlist &= empty
-path = element path { path.attlist, (text | style.class | link.class)* }
-path.attlist &= empty
-mail = element mail { mail.attlist, (text | style.class)* }
-mail.attlist &= attribute link { text }
-uri = element uri { uri.attlist, (text | style.class)* }
-uri.attlist &= attribute link { text }?
-glepindex = element glepindex { glepindex.attlist, empty }
-glepindex.attlist &=
- attribute status { text }?,
- [ a:defaultValue = "/proj/en/glep/gleps.xml" ]
- attribute index { text }?
project =
element project {
project.attlist,
@@ -121,18 +29,12 @@ name = element name { name.attlist, text }
name.attlist &= empty
longname = element longname { longname.attlist, text }
longname.attlist &= empty
-date = element date { date.attlist, text }
-date.attlist &= empty
-author = element author { author.attlist, (text | mail)* }
-author.attlist &= attribute title { text }?
description = element description { description.attlist, text }
description.attlist &= empty
longdescription =
- element longdescription {
- longdescription.attlist, (text | all.class)*
- }
+ element longdescription { longdescription.attlist, body.class* }
longdescription.attlist &= empty
-goals = element goals { goals.attlist, (text | all.class)* }
+goals = element goals { goals.attlist, body.class* }
goals.attlist &= empty
dev = element dev { dev.attlist, text }
dev.attlist &=
@@ -146,16 +48,20 @@ subproject.attlist &=
[ a:defaultValue = "no" ] attribute inheritmembers { "yes" | "no" }?,
[ a:defaultValue = "no" ] attribute inheritresources { "yes" | "no" }?
extraproject =
- element extraproject { extraproject.attlist, (text | all.class)* }
+ element extraproject { extraproject.attlist, (text | inline.class)* }
extraproject.attlist &=
attribute name { text },
attribute lead { text }?,
attribute link { text }?
plannedproject =
- element plannedproject { plannedproject.attlist, (text | all.class)* }
+ element plannedproject {
+ plannedproject.attlist, (text | inline.class)*
+ }
plannedproject.attlist &= attribute name { text }
extrachapter =
element extrachapter { extrachapter.attlist, title, section+ }
+section = element section { section.attlist, title?, body+ }
+section.attlist &= empty
extrachapter.attlist &=
[ a:defaultValue = "bottom" ]
attribute position {
@@ -189,7 +95,7 @@ startdate.attlist &= empty
enddate = element enddate { enddate.attlist, text }
enddate.attlist &= empty
reference =
- element reference { reference.attlist, (text | bug | link.class)* }
+ element reference { reference.attlist, (text | bug | mail | uri)* }
reference.attlist &= empty
bug = element bug { bug.attlist, text }
bug.attlist &= attribute no { text }
@@ -199,5 +105,4 @@ milestone.attlist &=
[ a:defaultValue = "no" ] attribute finished { "yes" | "no" }?
depends = element depends { depends.attlist, text }
depends.attlist &= attribute ref { xsd:IDREF }
-box |= notAllowed
-start = project | chapter
+start = project | abstract | license | summary | version | values
diff --git a/userinfo.rnc b/userinfo.rnc
index 75968df..fa3492c 100644
--- a/userinfo.rnc
+++ b/userinfo.rnc
@@ -1,19 +1,17 @@
-namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"
-
-userlist = element userlist { attlist.userlist, user* }
+userlist = element userlist { attlist.userlist, user+ }
attlist.userlist &= empty
user =
element user {
attlist.user,
realname,
pgpkey,
+ alias*,
email+,
joined,
- birthday,
+ retired?,
status?,
roles?,
- location?,
- address*
+ location?
}
attlist.user &= attribute username { xsd:ID }
realname = element realname { attlist.realname, firstname, familyname }
@@ -24,49 +22,15 @@ familyname = element familyname { attlist.familyname, text }
attlist.familyname &= attribute sort { text }?
pgpkey = element pgpkey { attlist.pgpkey, text }
attlist.pgpkey &= empty
-pgpfingerprint = element pgpfingerprint { attlist.pgpfingerprint, text }
-attlist.pgpfingerprint &= empty
+alias = element alias { attlist.alias, text }
+attlist.alias &= empty
email = element email { attlist.email, text }
-attlist.email &=
- attribute role { "primary" | "alias" | "secondary" | "gentoo" }
-# all dates should be DD MMMM YYYY - eg '15 October 2006'
+attlist.email &= empty
+# all dates should be YYYY-MM-DD - eg '2006-11-22'
joined = element joined { attlist.joined, text }
attlist.joined &= empty
retired = element retired { attlist.retired, text }
attlist.retired &= empty
-birthday = element birthday { attlist.birthday, text }
-attlist.birthday &= empty
-address =
- element address {
- attlist.address,
- street,
- number,
- suffix?,
- zipcode,
- city,
- state?,
- country,
- formatted?
- }
-attlist.address &=
- attribute role { "main" | "work" | "secondary" | "home" }
-street = element street { attlist.street, text }
-attlist.street &= empty
-number = element number { attlist.number, text }
-attlist.number &= empty
-suffix = element suffix { attlist.suffix, text }
-attlist.suffix &= empty
-zipcode = element zipcode { attlist.zipcode, text }
-attlist.zipcode &= empty
-city = element city { attlist.city, text }
-attlist.city &= empty
-state = element state { attlist.state, text }
-attlist.state &= empty
-country = element country { attlist.country, text }
-attlist.country &= attribute fullname { text }?
-formatted = element formatted { attlist.formatted, text }
-attlist.formatted &=
- [ a:defaultValue = "preserve" ] attribute xml:space { "preserve" }?
status = element status { attlist.status, text }
attlist.status &= empty
roles = element roles { attlist.roles, text }
@@ -77,4 +41,4 @@ location = element location { attlist.location, text }
attlist.location &=
attribute latitude { text }?,
attribute longitude { text }?
-start = retired | userlist | pgpfingerprint
+start = userlist