summaryrefslogtreecommitdiff
blob: 5373e73976000ec0456d4f5f93439903fbaa117e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
# 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 &= attribute version { text }?
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 &= 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 }?
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 }?
body.attlist &= 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+ }
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 }?,
  [ a:defaultValue = "left" ]
  attribute align { "left" | "center" | "right" }?
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 &= 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 }?
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 }
section.attlist &=
  attribute id { text }?,
  attribute test { text }?
included =
  element included {
    included.attlist, version, date, (chapter | section | body)+
  }
included.attlist &= empty
\include = element include { include.attlist, empty }
include.attlist &= attribute href { text }