]> git.rkrishnan.org Git - .emacs.d.git/blob - emacs/nxhtml/etc/schema/genshi.rnc
remove toolbar and menubar
[.emacs.d.git] / emacs / nxhtml / etc / schema / genshi.rnc
1 default namespace = "http://genshi.edgewall.org/"\r
2 namespace py = "http://genshi.edgewall.org/"\r
3 \r
4 include "xinclude.rnc"\r
5 \r
6 # There's no way to just match the text part against a Genshi Python expression\r
7 # See: http://relaxng.org/compact-tutorial-20030326.html#id2814737\r
8 python.expression = text\r
9 \r
10 genshi.expr-type = xsd:string { minLength = "1" }\r
11 genshi.xpath-type = xsd:anyURI\r
12 \r
13 genshi.attrib =\r
14    attribute py:if { genshi.expr-type }?,\r
15    attribute py:choose { text }?,\r
16    attribute py:when { genshi.expr-type }?,\r
17    attribute py:otherwise { text }?,\r
18    attribute py:for { genshi.expr-type }?,\r
19    attribute py:def { genshi.expr-type }?,\r
20    attribute py:match { genshi.xpath-type}?,\r
21    attribute py:with { genshi.expr-type }?,\r
22    attribute py:attrs { genshi.expr-type }?,\r
23    attribute py:content { text }?,\r
24    attribute py:replace { genshi.expr-type }?,\r
25    attribute py:strip { text }?\r
26 \r
27 genshi.if.attlist  = attribute test { genshi.expr-type }\r
28 genshi.choose.attlist = attribute test { text }\r
29 genshi.when.attlist = attribute test { genshi.expr-type }\r
30 genshi.for.attlist = attribute each { genshi.expr-type }\r
31 genshi.def.attlist = attribute function { genshi.expr-type }\r
32 genshi.with.attlist = attribute vars { genshi.expr-type }\r
33 genshi.replace.attlist = attribute value { genshi.expr-type }\r
34 genshi.match.attlist =\r
35    attribute path { genshi.xpath-type },\r
36    attribute buffer { "true" | "false" }?,\r
37    attribute once { "true" | "false" }?,\r
38    attribute recursive { "true" | "false" }?\r
39 \r
40 genshi.choose =\r
41    element py:choose { genshi.choose.attlist,\r
42       genshi.model\r
43    }\r
44 genshi.when =\r
45    element py:when { genshi.when.attlist,\r
46       genshi.model\r
47    }\r
48 genshi.otherwise =\r
49    element py:otherwise {\r
50       genshi.model\r
51    }\r
52 genshi.if =\r
53    element py:if { genshi.if.attlist,\r
54       genshi.model\r
55    }\r
56 genshi.for =\r
57    element py:for { genshi.for.attlist,\r
58       genshi.model\r
59    }\r
60 genshi.def =\r
61    element py:def { genshi.def.attlist,\r
62       genshi.model\r
63    }\r
64 genshi.with =\r
65    element py:with { genshi.with.attlist,\r
66       genshi.model\r
67    }\r
68 genshi.match =\r
69    element py:match { genshi.match.attlist,\r
70       genshi.model\r
71    }\r
72 genshi.replace =\r
73    element py:replace { genshi.replace.attlist,\r
74       genshi.model\r
75    }\r
76 \r
77 genshi.allowed.children = text\r
78 \r
79 genshi.class = genshi.if | genshi.choose | genshi.when | genshi.otherwise\r
80  | genshi.for | genshi.def | genshi.with | genshi.match | genshi.replace\r
81  | python.expression\r
82  | xi.include\r
83 \r
84 genshi.model = genshi.class* | genshi.allowed.children*