source: BOOK/schema/clfs/0.1/rng/clfs.rnc@ 5c8e74d

Last change on this file since 5c8e74d 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: 4.3 KB
Line 
1
2namespace c = "http://schema.cross-lfs.org/book"
3
4# We are building around the DocBook Schema
5include "../../../docbook/4.5/rng/docbook.rnc" {
6 sect1 = (
7 element sect1 {
8 sect1.attlist,
9 sect1info?,
10 sect.title.content,
11 nav.class*,
12 ((divcomponent.mix+, (refentry.class* | sect2* | simplesect*))
13 | refentry.class+
14 | sect2+
15 | simplesect+),
16 nav.class*
17 } | clfs.sect.package )
18}
19
20# Common Attributes
21xml.attrib.base =
22 attribute xml:base {
23 text
24 }?
25xml.attrib.id =
26 attribute id {
27 text
28 }
29
30# Extend the standard profiling attributes
31local.effectivity.attrib &=
32 clfs.attrib.arch,
33 clfs.attrib.bits,
34 clfs.attrib.multilib
35
36# Profiling Attributes
37clfs.attrib.arch = attribute c:arch { text }?
38clfs.attrib.bits = attribute c:bits { text }?
39clfs.attrib.multilib = attribute c:multilib { "true" | "false" }?
40
41clfs.attrib.r = attribute c:r { text }?
42
43# Inline Elements
44
45clfs.inline =
46 (clfs.inline.emphasis |
47 clfs.inline.literal |
48 clfs.inline.replaceable |
49 clfs.inline.application |
50 clfs.inline.dirname |
51 clfs.inline.filename |
52 clfs.inline.command |
53 text)*
54
55clfs.inline.common.attrib =
56 clfs.attrib.arch,
57 clfs.attrib.bits,
58 clfs.attrib.multilib
59
60clfs.inline.emphasis =
61 element c:emphasis {
62 clfs.inline.common.attrib,
63 clfs.inline
64 }
65
66clfs.inline.literal =
67 element c:literal {
68 clfs.inline.common.attrib,
69 clfs.inline
70 }
71clfs.inline.replaceable =
72 element c:replaceable {
73 clfs.inline.common.attrib,
74 clfs.inline
75 }
76clfs.inline.application =
77 element c:application {
78 clfs.inline.common.attrib,
79 clfs.inline
80 }
81clfs.inline.dirname =
82 element c:dirname {
83 clfs.inline.common.attrib,
84 clfs.inline
85 }
86clfs.inline.filename =
87 element c:filename {
88 clfs.inline.common.attrib,
89 clfs.inline
90 }
91clfs.inline.command =
92 element c:command {
93 clfs.inline.common.attrib,
94 clfs.inline
95 }
96
97# Block Elements
98
99clfs.package.para =
100 element c:para {
101 xml.attrib.base,
102 clfs.attrib.arch,
103 clfs.attrib.bits,
104 clfs.attrib.multilib,
105 clfs.attrib.r,
106 clfs.inline
107 }
108
109clfs.package.note =
110 element c:note {
111 xml.attrib.base,
112 clfs.attrib.arch,
113 clfs.attrib.bits,
114 clfs.attrib.multilib,
115 clfs.attrib.r,
116 (clfs.package.para | clfs.package.command)*
117 }
118
119clfs.package.warning =
120 element c:note {
121 xml.attrib.base,
122 clfs.attrib.arch,
123 clfs.attrib.bits,
124 clfs.attrib.multilib,
125 clfs.attrib.r,
126 (clfs.package.para | clfs.package.command)*
127 }
128
129clfs.package.command =
130 element c:command {
131 xml.attrib.base,
132 clfs.attrib.arch,
133 clfs.attrib.bits,
134 clfs.attrib.multilib,
135 clfs.attrib.r,
136 attribute c:nodump {
137 "true" | "false"
138 }?,
139 (element c:literal { text } | text)+
140 }
141
142clfs.package.title =
143 element c:title {
144 xml.attrib.base,
145 text
146 }
147
148clfs.package.version =
149 element c:version {
150 xml.attrib.base,
151 text
152 }
153
154clfs.package.variant =
155 element c:variant {
156 xml.attrib.base,
157 text
158 }?
159
160clfs.package.description =
161 element c:description {
162 xml.attrib.base,
163 clfs.inline
164 }
165
166# The Package
167clfs.sect.package =
168 element c:package {
169 xml.attrib.base,
170 xml.attrib.id,
171 clfs.attrib.arch,
172 clfs.attrib.bits,
173 clfs.attrib.multilib,
174 attribute c:multibuild {
175 "true" | "false"
176 },
177
178 clfs.package.title,
179 clfs.package.version,
180 clfs.package.variant,
181 clfs.package.description,
182
183 element c:install {
184 (clfs.package.para |
185 clfs.package.command |
186 clfs.package.note |
187 clfs.package.warning)+
188 }?,
189
190 element c:config {
191 (clfs.package.para |
192 clfs.package.command |
193 clfs.package.note |
194 clfs.package.warning)+
195 }?,
196
197 element c:contents {
198 attribute c:ref {
199 text
200 } | (
201 element c:program {
202 element c:name {
203 text
204 },
205 element c:description {
206 clfs.inline
207 }
208 }*,
209 element c:library {
210 element c:name {
211 text
212 },
213 element c:description {
214 clfs.inline
215 }
216 }*,
217 element c:directory {
218 element c:name {
219 text
220 },
221 element c:description {
222 clfs.inline
223 }
224 }*
225 )
226 }?
227 }
Note: See TracBrowser for help on using the repository browser.