67 lines
2.8 KiB
Text
67 lines
2.8 KiB
Text
|
default namespace = "http://www.w3.org/1999/xhtml"
|
||
|
|
||
|
include "genshi.rnc"
|
||
|
include "xhtml-loader.rnc" {
|
||
|
start = html | head | head.content | body | frameset | frame | noframes |
|
||
|
Block.class | Inline.class | Table.class | Form.extra.class | genshi.class
|
||
|
html = element html { html.attlist, (genshi.model | (head, (body | frameset | genshi.model))) }
|
||
|
frameset =
|
||
|
element frameset {
|
||
|
frameset.attlist,
|
||
|
(((frameset | frame)+ & noframes?) | genshi.model)
|
||
|
}
|
||
|
noframes = element noframes { noframes.attlist, (body | genshi.model) }
|
||
|
title = element title { title.attlist, (text | genshi.model)* }
|
||
|
script = element script { script.attlist, (text | genshi.model)* }
|
||
|
style = element style { style.attlist, (text | genshi.model)* }
|
||
|
dl = element dl { dl.attlist, ((dt | dd)+ | genshi.model) }
|
||
|
ol = element ol { ol.attlist, (li+ | genshi.model) }
|
||
|
ul = element ul { ul.attlist, (li+ | genshi.model) }
|
||
|
dir = element dir { dir.attlist, (li.noblock+ | genshi.model) }
|
||
|
menu = element menu { menu.attlist, (li.noblock+ | genshi.model) }
|
||
|
select = element select { select.attlist, ((option | optgroup)+ | genshi.model) }
|
||
|
option =
|
||
|
element option {
|
||
|
Common.attrib,
|
||
|
attribute selected { "selected" }?,
|
||
|
attribute value { text }?,
|
||
|
(text | genshi.model)*
|
||
|
}
|
||
|
textarea = element textarea { textarea.attlist, (text & genshi.model)* }
|
||
|
optgroup = element optgroup { optgroup.attlist, (option+ | genshi.model) }
|
||
|
table =
|
||
|
element table {
|
||
|
table.attlist,
|
||
|
(caption? | genshi.model),
|
||
|
(col* | colgroup* | genshi.model),
|
||
|
(((thead? | genshi.model),
|
||
|
(tfoot? | genshi.model),
|
||
|
(tbody+ | genshi.model)) | (tr+ | genshi.model))
|
||
|
}
|
||
|
colgroup = element colgroup { colgroup.attlist, (col* | genshi.model) }
|
||
|
tr = element tr { tr.attlist, ((th | td)+ | genshi.model) }
|
||
|
tbody = element tbody { tbody.attlist, (tr+ | genshi.model) }
|
||
|
thead = element thead { thead.attlist, (tr+ | genshi.model) }
|
||
|
tfoot = element tfoot { tfoot.attlist, (tr+ | genshi.model) }
|
||
|
}
|
||
|
|
||
|
Table.class = caption | colgroup | col | tbody | thead | tfoot | th | tr | td
|
||
|
Form.extra.class = option | optgroup | legend
|
||
|
|
||
|
Block.class |= genshi.class
|
||
|
Inline.class |= genshi.class
|
||
|
head.content &= genshi.class
|
||
|
|
||
|
Core.attrib &= genshi.attrib
|
||
|
html.attlist &= genshi.attrib
|
||
|
head.attlist &= genshi.attrib
|
||
|
title.attlist &= genshi.attrib
|
||
|
base.attlist &= genshi.attrib
|
||
|
meta.attlist &= genshi.attrib
|
||
|
script.attlist &= genshi.attrib
|
||
|
param.attlist &= genshi.attrib
|
||
|
Edit.attrib &= genshi.attrib
|
||
|
|
||
|
genshi.allowed.children |= html | head | head.content | body | frameset | frame
|
||
|
| noframes | Inline.class | Block.class | Table.class | Form.extra.class
|