source: BOOK/schema/clfs/0.1/rng/clfs.rng@ 8cd07b0

Last change on this file since 8cd07b0 was f14f7c2, checked in by Joe Ciccone <jciccone@…>, 14 years ago

Revert "Remove the test part."

This reverts commit 69fa5e6b525bc9edb1de06af31f3e6f14fe4180a.

  • Property mode set to 100644
File size: 7.5 KB
RevLine 
[eef46e9]1<?xml version="1.0" encoding="UTF-8"?>
[4fe47e3]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>
[5c560cb]47 <ref name="clfs.sect.package"/>
[4fe47e3]48 </choice>
49 </define>
50 </include>
51 <!-- Extend the standard profiling attributes -->
52 <define name="local.effectivity.attrib" combine="interleave">
53 <ref name="clfs.attrib.arch"/>
54 <ref name="clfs.attrib.bits"/>
55 <ref name="clfs.attrib.multilib"/>
56 </define>
[5c560cb]57 <!-- Profiling Attributes -->
[4fe47e3]58 <define name="clfs.attrib.arch">
59 <optional>
60 <attribute name="c:arch"/>
61 </optional>
62 </define>
63 <define name="clfs.attrib.bits">
64 <optional>
65 <attribute name="c:bits"/>
66 </optional>
67 </define>
68 <define name="clfs.attrib.multilib">
69 <optional>
70 <attribute name="c:multilib">
71 <choice>
72 <value>true</value>
73 <value>false</value>
74 </choice>
75 </attribute>
76 </optional>
77 </define>
[5c560cb]78 <!-- Inline Elements -->
79 <define name="clfs.inline">
[9db1668]80 <zeroOrMore>
[4fe47e3]81 <choice>
[9db1668]82 <ref name="clfs.inline.literal"/>
83 <ref name="clfs.inline.replaceable"/>
84 <ref name="clfs.inline.application"/>
[5c560cb]85 <ref name="clfs.inline.dirname"/>
86 <ref name="clfs.inline.filename"/>
87 <ref name="clfs.inline.command"/>
88 <text/>
[4fe47e3]89 </choice>
[9db1668]90 </zeroOrMore>
[4fe47e3]91 </define>
[9db1668]92 <define name="clfs.inline.common.attrib">
93 <ref name="clfs.attrib.arch"/>
94 <ref name="clfs.attrib.bits"/>
95 <ref name="clfs.attrib.multilib"/>
96 </define>
97 <define name="clfs.inline.literal">
98 <element name="c:literal">
99 <ref name="clfs.inline.common.attrib"/>
100 <ref name="clfs.inline"/>
101 </element>
102 </define>
103 <define name="clfs.inline.replaceable">
104 <element name="c:replaceable">
105 <ref name="clfs.inline.common.attrib"/>
106 <ref name="clfs.inline"/>
107 </element>
108 </define>
109 <define name="clfs.inline.application">
110 <element name="c:application">
111 <ref name="clfs.inline.common.attrib"/>
[5c560cb]112 <ref name="clfs.inline"/>
113 </element>
114 </define>
115 <define name="clfs.inline.dirname">
116 <element name="c:dirname">
[9db1668]117 <ref name="clfs.inline.common.attrib"/>
[5c560cb]118 <ref name="clfs.inline"/>
119 </element>
120 </define>
121 <define name="clfs.inline.filename">
122 <element name="c:filename">
[9db1668]123 <ref name="clfs.inline.common.attrib"/>
[5c560cb]124 <ref name="clfs.inline"/>
125 </element>
126 </define>
127 <define name="clfs.inline.command">
128 <element name="c:command">
[9db1668]129 <ref name="clfs.inline.common.attrib"/>
[5c560cb]130 <ref name="clfs.inline"/>
131 </element>
132 </define>
133 <!-- Block Elements -->
[f59c2ec]134 <define name="clfs.package.para">
[5c560cb]135 <element name="c:para">
[f59c2ec]136 <ref name="clfs.attrib.arch"/>
137 <ref name="clfs.attrib.bits"/>
138 <ref name="clfs.attrib.multilib"/>
[5c560cb]139 <ref name="clfs.inline"/>
140 </element>
141 </define>
[f59c2ec]142 <define name="clfs.package.note">
[5c560cb]143 <element name="c:note">
[f59c2ec]144 <ref name="clfs.attrib.arch"/>
145 <ref name="clfs.attrib.bits"/>
146 <ref name="clfs.attrib.multilib"/>
[5c560cb]147 <zeroOrMore>
[babec4b]148 <choice>
149 <ref name="clfs.package.para"/>
150 <ref name="clfs.package.command"/>
151 </choice>
152 </zeroOrMore>
153 </element>
154 </define>
155 <define name="clfs.package.warning">
156 <element name="c:note">
157 <ref name="clfs.attrib.arch"/>
158 <ref name="clfs.attrib.bits"/>
159 <ref name="clfs.attrib.multilib"/>
160 <zeroOrMore>
161 <choice>
162 <ref name="clfs.package.para"/>
163 <ref name="clfs.package.command"/>
164 </choice>
[5c560cb]165 </zeroOrMore>
166 </element>
167 </define>
[f59c2ec]168 <define name="clfs.package.command">
[5c560cb]169 <element name="c:command">
[4fe47e3]170 <ref name="clfs.attrib.arch"/>
171 <ref name="clfs.attrib.bits"/>
172 <ref name="clfs.attrib.multilib"/>
[5c560cb]173 <optional>
174 <attribute name="c:nodump">
175 <choice>
176 <value>true</value>
177 <value>false</value>
178 </choice>
179 </attribute>
180 </optional>
181 <oneOrMore>
182 <choice>
183 <element name="c:literal">
184 <text/>
185 </element>
186 <text/>
187 </choice>
188 </oneOrMore>
[4fe47e3]189 </element>
190 </define>
[5c560cb]191 <!-- The Package -->
192 <define name="clfs.sect.package">
193 <element name="c:package">
194 <attribute name="id"/>
195 <ref name="clfs.attrib.arch"/>
196 <ref name="clfs.attrib.bits"/>
197 <ref name="clfs.attrib.multilib"/>
198 <attribute name="c:multibuild">
199 <choice>
200 <value>true</value>
201 <value>false</value>
202 </choice>
203 </attribute>
204 <element name="c:title">
205 <text/>
206 </element>
207 <element name="c:version">
208 <text/>
[4fe47e3]209 </element>
[5c560cb]210 <element name="c:description">
211 <ref name="clfs.inline"/>
212 </element>
213 <oneOrMore>
214 <element name="c:install">
215 <oneOrMore>
216 <choice>
[f59c2ec]217 <ref name="clfs.package.para"/>
218 <ref name="clfs.package.command"/>
219 <ref name="clfs.package.note"/>
[babec4b]220 <ref name="clfs.package.warning"/>
[5c560cb]221 </choice>
222 </oneOrMore>
223 </element>
224 </oneOrMore>
[4f597816]225 <optional>
226 <element name="c:contents">
227 <choice>
228 <attribute name="c:ref"/>
229 <group>
230 <zeroOrMore>
[1d86c775]231 <element name="c:program">
[4f597816]232 <element name="c:name">
233 <text/>
234 </element>
235 <element name="c:description">
236 <ref name="clfs.inline"/>
237 </element>
238 </element>
239 </zeroOrMore>
240 <zeroOrMore>
[1d86c775]241 <element name="c:library">
[4f597816]242 <element name="c:name">
243 <text/>
244 </element>
245 <element name="c:description">
246 <ref name="clfs.inline"/>
247 </element>
248 </element>
249 </zeroOrMore>
250 <zeroOrMore>
251 <element name="c:directory">
252 <element name="c:name">
253 <text/>
254 </element>
255 <element name="c:description">
256 <ref name="clfs.inline"/>
257 </element>
258 </element>
259 </zeroOrMore>
260 </group>
261 </choice>
262 </element>
263 </optional>
[4fe47e3]264 </element>
265 </define>
[eef46e9]266</grammar>
Note: See TracBrowser for help on using the repository browser.