source: BOOK/schema/clfs/0.1/rng/clfs.rng@ f8e1743

Last change on this file since f8e1743 was 3f2c36d, checked in by Joe Ciccone <jciccone@…>, 14 years ago

Add an inline element of c:emphasis.

  • Property mode set to 100644
File size: 9.3 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<grammar xmlns:c="http://schema.cross-lfs.org/book" xmlns="http://relaxng.org/ns/structure/1.0">
3 <!-- We are building around the DocBook Schema -->
4 <include href="docbook.rng">
5 <define name="sect1">
6 <choice>
7 <element name="sect1">
8 <ref name="sect1.attlist"/>
9 <optional>
10 <ref name="sect1info"/>
11 </optional>
12 <ref name="sect.title.content"/>
13 <zeroOrMore>
14 <ref name="nav.class"/>
15 </zeroOrMore>
16 <choice>
17 <group>
18 <oneOrMore>
19 <ref name="divcomponent.mix"/>
20 </oneOrMore>
21 <choice>
22 <zeroOrMore>
23 <ref name="refentry.class"/>
24 </zeroOrMore>
25 <zeroOrMore>
26 <ref name="sect2"/>
27 </zeroOrMore>
28 <zeroOrMore>
29 <ref name="simplesect"/>
30 </zeroOrMore>
31 </choice>
32 </group>
33 <oneOrMore>
34 <ref name="refentry.class"/>
35 </oneOrMore>
36 <oneOrMore>
37 <ref name="sect2"/>
38 </oneOrMore>
39 <oneOrMore>
40 <ref name="simplesect"/>
41 </oneOrMore>
42 </choice>
43 <zeroOrMore>
44 <ref name="nav.class"/>
45 </zeroOrMore>
46 </element>
47 <ref name="clfs.sect.package"/>
48 </choice>
49 </define>
50 </include>
51 <!-- Common Attributes -->
52 <define name="xml.attrib.base">
53 <optional>
54 <attribute name="xml:base"/>
55 </optional>
56 </define>
57 <define name="xml.attrib.id">
58 <attribute name="id"/>
59 </define>
60 <!-- Extend the standard profiling attributes -->
61 <define name="local.effectivity.attrib" combine="interleave">
62 <ref name="clfs.attrib.arch"/>
63 <ref name="clfs.attrib.bits"/>
64 <ref name="clfs.attrib.multilib"/>
65 </define>
66 <!-- Profiling Attributes -->
67 <define name="clfs.attrib.arch">
68 <optional>
69 <attribute name="c:arch"/>
70 </optional>
71 </define>
72 <define name="clfs.attrib.bits">
73 <optional>
74 <attribute name="c:bits"/>
75 </optional>
76 </define>
77 <define name="clfs.attrib.multilib">
78 <optional>
79 <attribute name="c:multilib">
80 <choice>
81 <value>true</value>
82 <value>false</value>
83 </choice>
84 </attribute>
85 </optional>
86 </define>
87 <define name="clfs.attrib.r">
88 <optional>
89 <attribute name="c:r"/>
90 </optional>
91 </define>
92 <!-- Inline Elements -->
93 <define name="clfs.inline">
94 <zeroOrMore>
95 <choice>
96 <ref name="clfs.inline.emphasis"/>
97 <ref name="clfs.inline.literal"/>
98 <ref name="clfs.inline.replaceable"/>
99 <ref name="clfs.inline.application"/>
100 <ref name="clfs.inline.dirname"/>
101 <ref name="clfs.inline.filename"/>
102 <ref name="clfs.inline.command"/>
103 <text/>
104 </choice>
105 </zeroOrMore>
106 </define>
107 <define name="clfs.inline.common.attrib">
108 <ref name="clfs.attrib.arch"/>
109 <ref name="clfs.attrib.bits"/>
110 <ref name="clfs.attrib.multilib"/>
111 </define>
112 <define name="clfs.inline.emphasis">
113 <element name="c:emphasis">
114 <ref name="clfs.inline.common.attrib"/>
115 <ref name="clfs.inline"/>
116 </element>
117 </define>
118 <define name="clfs.inline.literal">
119 <element name="c:literal">
120 <ref name="clfs.inline.common.attrib"/>
121 <ref name="clfs.inline"/>
122 </element>
123 </define>
124 <define name="clfs.inline.replaceable">
125 <element name="c:replaceable">
126 <ref name="clfs.inline.common.attrib"/>
127 <ref name="clfs.inline"/>
128 </element>
129 </define>
130 <define name="clfs.inline.application">
131 <element name="c:application">
132 <ref name="clfs.inline.common.attrib"/>
133 <ref name="clfs.inline"/>
134 </element>
135 </define>
136 <define name="clfs.inline.dirname">
137 <element name="c:dirname">
138 <ref name="clfs.inline.common.attrib"/>
139 <ref name="clfs.inline"/>
140 </element>
141 </define>
142 <define name="clfs.inline.filename">
143 <element name="c:filename">
144 <ref name="clfs.inline.common.attrib"/>
145 <ref name="clfs.inline"/>
146 </element>
147 </define>
148 <define name="clfs.inline.command">
149 <element name="c:command">
150 <ref name="clfs.inline.common.attrib"/>
151 <ref name="clfs.inline"/>
152 </element>
153 </define>
154 <!-- Block Elements -->
155 <define name="clfs.package.para">
156 <element name="c:para">
157 <ref name="xml.attrib.base"/>
158 <ref name="clfs.attrib.arch"/>
159 <ref name="clfs.attrib.bits"/>
160 <ref name="clfs.attrib.multilib"/>
161 <ref name="clfs.attrib.r"/>
162 <ref name="clfs.inline"/>
163 </element>
164 </define>
165 <define name="clfs.package.note">
166 <element name="c:note">
167 <ref name="xml.attrib.base"/>
168 <ref name="clfs.attrib.arch"/>
169 <ref name="clfs.attrib.bits"/>
170 <ref name="clfs.attrib.multilib"/>
171 <ref name="clfs.attrib.r"/>
172 <zeroOrMore>
173 <choice>
174 <ref name="clfs.package.para"/>
175 <ref name="clfs.package.command"/>
176 </choice>
177 </zeroOrMore>
178 </element>
179 </define>
180 <define name="clfs.package.warning">
181 <element name="c:note">
182 <ref name="xml.attrib.base"/>
183 <ref name="clfs.attrib.arch"/>
184 <ref name="clfs.attrib.bits"/>
185 <ref name="clfs.attrib.multilib"/>
186 <ref name="clfs.attrib.r"/>
187 <zeroOrMore>
188 <choice>
189 <ref name="clfs.package.para"/>
190 <ref name="clfs.package.command"/>
191 </choice>
192 </zeroOrMore>
193 </element>
194 </define>
195 <define name="clfs.package.command">
196 <element name="c:command">
197 <ref name="xml.attrib.base"/>
198 <ref name="clfs.attrib.arch"/>
199 <ref name="clfs.attrib.bits"/>
200 <ref name="clfs.attrib.multilib"/>
201 <ref name="clfs.attrib.r"/>
202 <optional>
203 <attribute name="c:nodump">
204 <choice>
205 <value>true</value>
206 <value>false</value>
207 </choice>
208 </attribute>
209 </optional>
210 <oneOrMore>
211 <choice>
212 <element name="c:literal">
213 <text/>
214 </element>
215 <text/>
216 </choice>
217 </oneOrMore>
218 </element>
219 </define>
220 <define name="clfs.package.title">
221 <element name="c:title">
222 <ref name="xml.attrib.base"/>
223 <text/>
224 </element>
225 </define>
226 <define name="clfs.package.version">
227 <element name="c:version">
228 <ref name="xml.attrib.base"/>
229 <text/>
230 </element>
231 </define>
232 <define name="clfs.package.variant">
233 <optional>
234 <element name="c:variant">
235 <ref name="xml.attrib.base"/>
236 <text/>
237 </element>
238 </optional>
239 </define>
240 <define name="clfs.package.description">
241 <element name="c:description">
242 <ref name="xml.attrib.base"/>
243 <ref name="clfs.inline"/>
244 </element>
245 </define>
246 <!-- The Package -->
247 <define name="clfs.sect.package">
248 <element name="c:package">
249 <ref name="xml.attrib.base"/>
250 <ref name="xml.attrib.id"/>
251 <ref name="clfs.attrib.arch"/>
252 <ref name="clfs.attrib.bits"/>
253 <ref name="clfs.attrib.multilib"/>
254 <attribute name="c:multibuild">
255 <choice>
256 <value>true</value>
257 <value>false</value>
258 </choice>
259 </attribute>
260 <ref name="clfs.package.title"/>
261 <ref name="clfs.package.version"/>
262 <ref name="clfs.package.variant"/>
263 <ref name="clfs.package.description"/>
264 <optional>
265 <element name="c:install">
266 <oneOrMore>
267 <choice>
268 <ref name="clfs.package.para"/>
269 <ref name="clfs.package.command"/>
270 <ref name="clfs.package.note"/>
271 <ref name="clfs.package.warning"/>
272 </choice>
273 </oneOrMore>
274 </element>
275 </optional>
276 <optional>
277 <element name="c:config">
278 <oneOrMore>
279 <choice>
280 <ref name="clfs.package.para"/>
281 <ref name="clfs.package.command"/>
282 <ref name="clfs.package.note"/>
283 <ref name="clfs.package.warning"/>
284 </choice>
285 </oneOrMore>
286 </element>
287 </optional>
288 <optional>
289 <element name="c:contents">
290 <choice>
291 <attribute name="c:ref"/>
292 <group>
293 <zeroOrMore>
294 <element name="c:program">
295 <element name="c:name">
296 <text/>
297 </element>
298 <element name="c:description">
299 <ref name="clfs.inline"/>
300 </element>
301 </element>
302 </zeroOrMore>
303 <zeroOrMore>
304 <element name="c:library">
305 <element name="c:name">
306 <text/>
307 </element>
308 <element name="c:description">
309 <ref name="clfs.inline"/>
310 </element>
311 </element>
312 </zeroOrMore>
313 <zeroOrMore>
314 <element name="c:directory">
315 <element name="c:name">
316 <text/>
317 </element>
318 <element name="c:description">
319 <ref name="clfs.inline"/>
320 </element>
321 </element>
322 </zeroOrMore>
323 </group>
324 </choice>
325 </element>
326 </optional>
327 </element>
328 </define>
329</grammar>
Note: See TracBrowser for help on using the repository browser.