1 # ********************************************************************** |
1 # ********************************************************************** |
2 |
|
3 # ****** DTD LITTERATURE GENERALE XML NC V3.2 ****** |
2 # ****** DTD LITTERATURE GENERALE XML NC V3.2 ****** |
4 |
|
5 # ****** (c) Nord Compo (juin 1999) ****** |
3 # ****** (c) Nord Compo (juin 1999) ****** |
6 |
|
7 # ****** realisee par : GD ****** |
4 # ****** realisee par : GD ****** |
8 |
|
9 # ****** mise a jour par : GD (juillet 2000) ****** |
5 # ****** mise a jour par : GD (juillet 2000) ****** |
10 |
|
11 # ****** transformation en XML par : JMD (Aout 2000) ****** |
6 # ****** transformation en XML par : JMD (Aout 2000) ****** |
12 |
|
13 # ****** mise a jour XML par : GD (janvier 2001) ****** |
7 # ****** mise a jour XML par : GD (janvier 2001) ****** |
14 |
|
15 # ****** mise a jour de la version 2.1 ****** |
8 # ****** mise a jour de la version 2.1 ****** |
16 |
9 # ****** mise a jour : GD (juin 2007) ****** |
17 # ****** mise ‡ jour : GD (juin 2007) ****** |
|
18 |
|
19 # ****** mise a jour : GD septembre 2007 ****** |
10 # ****** mise a jour : GD septembre 2007 ****** |
20 |
|
21 # ****** mise a jour : GD octobre 2007 ****** |
11 # ****** mise a jour : GD octobre 2007 ****** |
22 |
|
23 # ****** mise a jour : GD novembre 2007 ****** |
12 # ****** mise a jour : GD novembre 2007 ****** |
24 |
|
25 # ****** mise a jour : GD janvier 2008 ****** |
13 # ****** mise a jour : GD janvier 2008 ****** |
26 |
|
27 # ****** mise a jour : PT mai 2009 ****** |
14 # ****** mise a jour : PT mai 2009 ****** |
28 |
|
29 # ****** mise a jour : PT octobre 2009 ****** |
15 # ****** mise a jour : PT octobre 2009 ****** |
30 |
|
31 # ********************************************************************** |
16 # ********************************************************************** |
32 |
17 # ****** Transformation RelaxNG Prismallia ****** |
33 # ****** Entites externes ****** |
18 # ********************************************************************** |
34 |
19 |
35 # ****** Entites internes ****** |
20 |
36 |
21 start = livre |
|
22 |
|
23 livre = element livre { livre.attributes, livre.content } |
|
24 |
|
25 livre.attributes = |
|
26 attribute compo { text }? |
|
27 & attribute saisie { text }? |
|
28 & attribute type { text }? |
|
29 |
|
30 livre.content = |
|
31 ident, |
|
32 (appcrit | pre)*, |
|
33 corps, |
|
34 (appcrit | appen)*, |
|
35 collec* |
|
36 |
|
37 |
|
38 # ============================================================================= |
|
39 # Elements Entete (pages de titre) |
|
40 # ============================================================================= |
|
41 |
|
42 # ~~~~~~ ident |
|
43 ident = element ident { ident.content } |
|
44 |
|
45 ident.content = |
|
46 (ftit |
|
47 | fstit |
|
48 | info |
|
49 | accro |
|
50 | collec |
|
51 | auteur |
|
52 | illustrateur |
|
53 | tit |
|
54 | stit |
|
55 | edit |
|
56 | copy |
|
57 | trad |
|
58 | ean |
|
59 | coned |
|
60 | type |
|
61 | ref |
|
62 | isbn |
|
63 | issn |
|
64 | modulus |
|
65 | fig |
|
66 | tableau |
|
67 | dedi |
|
68 | exer)+ |
|
69 |
|
70 # ~~~~~~ Faux titre ouvrage |
|
71 ftit = element ftit { (typo | br | appel | renv | renvlnk)* } |
|
72 |
|
73 # ~~~~~~ Accroche ouvrage |
|
74 accro = element accro { (typo | br | appel | renv | renvlnk)* } |
|
75 |
|
76 # ~~~~~~ Sous titre ouvrage |
|
77 fstit = element fstit { (typo | br | appel | renv | renvlnk)* } |
|
78 |
|
79 # ~~~~~~ Auteur(s) de l'ouvrage ou de citation ou exergue |
|
80 auteur = element auteur { (typo | appel)* } |
|
81 |
|
82 # ~~~~~~ Illustrateur |
|
83 illustrateur = element illustrateur { (typo | appel)* } |
|
84 |
|
85 # ~~~~~~ Surtitre |
|
86 surtit = element surtit {(typo | appel | br | renv | renvlnk)*} |
|
87 |
|
88 # ~~~~~~ Titre de l'ouvrage |
|
89 tit = element tit { (typo | appel | br | renv | renvlnk)* } |
|
90 |
|
91 # ~~~~~~ Sous-titre de l'ouvrage |
|
92 stit = element stit { (typo | appel | br | renv | renvlnk)* } |
|
93 |
|
94 # ~~~~~~ Sous-sous-titre |
|
95 sstit = element sstit { (typo | appel | br | renv | renvlnk)* } |
|
96 |
|
97 # ~~~~~~ Type d'ouvrage dans page de titre |
|
98 type = element type { (typo | br | appel)* } |
|
99 |
|
100 # ~~~~~~ Texte page de titre |
|
101 info = element info { (typo | br | appel)* } |
|
102 |
|
103 # ~~~~~~ page de collection |
|
104 collec = element collec { |
|
105 (tit | stit | cint | cint2 | cint3 | auteur | p | pbib | fig)* } |
|
106 |
|
107 # ~~~~~~ Intertitre dans page de collection |
|
108 cint = element cint { (typo | br | appel)* } |
|
109 cint2 = element cint2 { (typo | br | appel)* } |
|
110 cint3 = element cint3 { (typo | br | appel)* } |
|
111 |
|
112 # ~~~~~~ Traduction par |
|
113 trad = element trad { (typo | br | appel)* } |
|
114 |
|
115 # ~~~~~~ Editeur(s) |
|
116 edit = element edit { (typo | appel)* } |
|
117 |
|
118 # ~~~~~~ Copyright de l'ouvrage |
|
119 copy = element copy { (typo | br | appel)* } |
|
120 |
|
121 # ~~~~~~ References de l'ouvrage |
|
122 ref = element ref { (typo | br | appel)* } |
|
123 |
|
124 # ~~~~~~ ISBN, ISSN |
|
125 isbn = element isbn { (typo | appel)* } |
|
126 issn = element issn { (typo | appel)* } |
|
127 |
|
128 # ~~~~~~ Modulus |
|
129 modulus = element modulus { (typo | appel)* } |
|
130 |
|
131 # ~~~~~~ EAN 13 |
|
132 ean = element ean { xsd:token {pattern = "\d{13}"} } |
|
133 |
|
134 # ~~~~~~ Rang d'impression |
|
135 coned = element coned { text } |
|
136 |
|
137 # ~~~~~~ Dedicace |
|
138 dedi = element dedi { (typo | br | appel)* } |
|
139 |
|
140 # ~~~~~~ Exergue |
|
141 exer = element exer { p+, (source | auteur)* } |
|
142 |
|
143 # ~~~~~~ Source(s) citation, image, exergue |
|
144 source = element source { (typo | appel | p | br)* } |
|
145 |
|
146 |
|
147 # ============================================================================= |
|
148 # Elements preliminaire de l'ouvrage |
|
149 # ============================================================================= |
|
150 |
|
151 # ~~~~~~ pre |
|
152 pre = element pre { pre.attributes, pre.content } |
|
153 |
|
154 pre.attributes = |
|
155 attribute id { xsd:ID }? |
|
156 & attribute num { text }? |
|
157 & attribute type { "intro" | "prologue" | "pref" | "remer" | "avpro" | "biblio" |
|
158 | "bio" | "remarque" | "note" | "chrono" | "presentation" | "personnages" |
|
159 | "sommaire" | "tdm" | "autre" }? |
|
160 |
|
161 pre.content = |
|
162 apfi?, |
|
163 surtit?, |
|
164 (((tit, apfi?), |
|
165 ((stit, apfi?), (sstit, apfi?)?)?) |
|
166 | ((stit, apfi?), (sstit, apfi?)?))?, |
|
167 exer*, |
|
168 chapeau?, |
|
169 dev, |
|
170 (source | sign)*, |
|
171 collec*, |
|
172 defnotes?, |
|
173 apfi? |
|
174 |
|
175 # ~~~~ chapeau |
|
176 chapeau = element chapeau { let?, p+ } |
|
177 |
|
178 |
|
179 # ============================================================================= |
|
180 # Elements corps de l'ouvrage |
|
181 # ============================================================================= |
|
182 |
|
183 # ~~~~~~ corps |
|
184 corps = element corps { corps.content } |
|
185 |
|
186 corps.content = |
|
187 (vol+ |
|
188 | part+ |
|
189 | section+ |
|
190 | chap+ |
|
191 | dev) |
|
192 |
|
193 # ~~~~~~ vol |
|
194 vol = element vol { vol.attributes, vol.content } |
|
195 |
|
196 vol.attributes = |
|
197 attribute id { xsd:ID }? |
|
198 & attribute num { text }? |
|
199 |
|
200 vol.content = |
|
201 depart, |
|
202 (appcrit | pre)*, |
|
203 ((dev, part*) | part+), |
|
204 defnotes?, |
|
205 (appcrit | appen)* |
|
206 |
|
207 # ~~~~~~ part |
|
208 part = element part { part.attributes, part.content } |
|
209 |
|
210 part.attributes = |
|
211 attribute id { xsd:ID }? |
|
212 & attribute num { text }? |
|
213 |
|
214 part.content = |
|
215 depart, |
|
216 (appcrit | pre)*, |
|
217 ((dev, (section | chap)*) |
|
218 | (section | chap)+), |
|
219 defnotes?, |
|
220 (appcrit | appen)* |
|
221 |
|
222 # ~~~~~~ section |
|
223 section = element section { section.attributes, section.content } |
|
224 |
|
225 section.attributes = |
|
226 attribute id { xsd:ID }? |
|
227 & attribute num { text }? |
|
228 |
|
229 section.content = |
|
230 depart, |
|
231 (appcrit | pre)*, |
|
232 ((dev, chap*) | chap+), |
|
233 defnotes?, |
|
234 (appcrit | appen)* |
|
235 |
|
236 # ~~~~~~ chap |
|
237 chap = element chap { chap.attributes, chap.content } |
|
238 |
|
239 chap.attributes = |
|
240 attribute id { xsd:ID }? |
|
241 & attribute num { text }? |
|
242 |
|
243 chap.content = |
|
244 depart, |
|
245 (appcrit | pre)*, |
|
246 ((chapeau?, dev, schap*) | schap+), |
|
247 source?, |
|
248 defnotes?, |
|
249 (appcrit | appen)* |
|
250 |
|
251 # ~~~~~~ schap |
|
252 schap = element schap { schap.attributes, schap.content } |
|
253 |
|
254 schap.attributes = |
|
255 attribute id { xsd:ID }? |
|
256 & attribute num { text }? |
|
257 |
|
258 schap.content = |
|
259 depart, |
|
260 (appcrit | pre)*, |
|
261 chapeau?, |
|
262 dev, |
|
263 defnotes?, |
|
264 (appcrit | appen)* |
|
265 |
|
266 |
|
267 # ============================================================================= |
|
268 # Elements Developpement |
|
269 # ============================================================================= |
|
270 |
|
271 # ~~~~~~ dev |
|
272 dev = element dev { dev.content } |
|
273 |
|
274 dev.content = |
|
275 (((let?, (p | pbib)) |
|
276 | bl |
|
277 | sep |
|
278 | dialogue |
|
279 | theatre |
|
280 | \list |
|
281 | stroplg |
|
282 | cita |
|
283 | infratexte |
|
284 | lettre |
|
285 | fig |
|
286 | tableau |
|
287 | enc |
|
288 | sign) |
|
289 | (niv1 | niv2 | niv3 | niv4 | niv5))+, |
|
290 fin?, |
|
291 source? |
|
292 |
|
293 |
|
294 # ============================================================================= |
|
295 # Niveau d'intertitre et de Texte |
|
296 # ============================================================================= |
|
297 |
|
298 # ~~~~~~ niv1 |
|
299 niv1 = element niv1 { niv1.content } |
|
300 |
|
301 niv1.content = |
|
302 (n?, |
|
303 int?, |
|
304 sint?, |
|
305 exer*, |
|
306 (((let?, p) |
|
307 | pbib |
|
308 | bl |
|
309 | sep |
|
310 | \list |
|
311 | stroplg |
|
312 | cita |
|
313 | infratexte |
|
314 | lettre |
|
315 | fig |
|
316 | tableau |
|
317 | enc)+ |
|
318 | (niv2 | niv3 | niv4 | niv5)*)+), |
|
319 fin? |
|
320 |
|
321 # ~~~~~~ niv2 |
|
322 niv2 = element niv2 { niv2.content } |
|
323 |
|
324 niv2.content = |
|
325 (n?, |
|
326 int?, |
|
327 sint?, |
|
328 exer*, |
|
329 (((let?, p) |
|
330 | pbib |
|
331 | bl |
|
332 | sep |
|
333 | \list |
|
334 | stroplg |
|
335 | cita |
|
336 | infratexte |
|
337 | lettre |
|
338 | fig |
|
339 | tableau |
|
340 | enc)+ |
|
341 | (niv3 | niv4 | niv5)*)+), |
|
342 fin? |
|
343 |
|
344 # ~~~~~~ niv3 |
|
345 niv3 = element niv3 { niv3.content } |
|
346 |
|
347 niv3.content = |
|
348 (n?, |
|
349 int?, |
|
350 sint?, |
|
351 exer*, |
|
352 (((let?, p) |
|
353 | pbib |
|
354 | bl |
|
355 | sep |
|
356 | \list |
|
357 | stroplg |
|
358 | cita |
|
359 | infratexte |
|
360 | lettre |
|
361 | fig |
|
362 | tableau |
|
363 | enc)+ |
|
364 | (niv4 | niv5)*)+), |
|
365 fin? |
|
366 |
|
367 # ~~~~~~ niv4 |
|
368 niv4 = element niv4 { niv4.content } |
|
369 |
|
370 niv4.content = |
|
371 (n?, |
|
372 int?, |
|
373 sint?, |
|
374 exer*, |
|
375 (((let?, p) |
|
376 | pbib |
|
377 | bl |
|
378 | sep |
|
379 | \list |
|
380 | stroplg |
|
381 | cita |
|
382 | infratexte |
|
383 | lettre |
|
384 | fig |
|
385 | tableau |
|
386 | enc)+ |
|
387 | niv5)*), |
|
388 fin? |
|
389 |
|
390 # ~~~~~~ niv5 |
|
391 niv5 = element niv5 { niv5.content } |
|
392 |
|
393 niv5.content = |
|
394 (n?, |
|
395 int?, |
|
396 sint?, |
|
397 exer*, |
|
398 ((let?, p) |
|
399 | pbib |
|
400 | bl |
|
401 | sep |
|
402 | \list |
|
403 | stroplg |
|
404 | cita |
|
405 | infratexte |
|
406 | lettre |
|
407 | fig |
|
408 | tableau |
|
409 | enc)+), |
|
410 fin? |
|
411 |
|
412 # ~~~~~~ Numero de partie, Chapitre, sous-chapitre ou section |
|
413 n = element n { (typo | appel | br | renv | renvlnk)* } |
|
414 |
|
415 # ~~~~~~ Intertitre |
|
416 int = element int {(typo | br | appel | renv | renvlnk)* } |
|
417 |
|
418 # ~~~~~~ Sous intertitre |
|
419 sint = element sint { (typo | br | appel | renv | renvlnk)* } |
|
420 |
|
421 |
|
422 # ============================================================================= |
|
423 |
|
424 # Texte avec Exposant, Indice petites caps, ou souligne |
37 texte = text | sup | inf | pc | sl |
425 texte = text | sup | inf | pc | sl |
38 # Texte avec Exposant, Indice petites caps, ou souligne |
426 |
|
427 # Texte avec mise en forme (ital, gras, romain) |
39 typo = texte | i | b | r |
428 typo = texte | i | b | r |
40 # Texte avec mise en forme (ital, gras, romain) |
429 |
41 appel = |
430 appel = |
42 indx |
431 indx |
43 | indx2 |
432 | indx2 |
44 | indx3 |
433 | indx3 |
45 | apnb |
434 | apnb |
109 # Element souligne |
477 # Element souligne |
110 br = element br { attlist.br, empty } |
478 br = element br { attlist.br, empty } |
111 attlist.br &= empty |
479 attlist.br &= empty |
112 # Retour a la ligne dans un element titre |
480 # Retour a la ligne dans un element titre |
113 |
481 |
114 # ****** Elements Entete (pages de titre) ****** |
|
115 ident = |
|
116 element ident { |
|
117 attlist.ident, |
|
118 (ftit |
|
119 | fstit |
|
120 | info |
|
121 | accro |
|
122 | collec |
|
123 | auteur |
|
124 | illustrateur |
|
125 | tit |
|
126 | stit |
|
127 | edit |
|
128 | copy |
|
129 | trad |
|
130 | ean |
|
131 | coned |
|
132 | type |
|
133 | ref |
|
134 | isbn |
|
135 | issn |
|
136 | modulus |
|
137 | fig |
|
138 | tableau |
|
139 | dedi |
|
140 | exer)+ |
|
141 } |
|
142 attlist.ident &= empty |
|
143 # Element Entete ou pages de titre |
|
144 |
|
145 # Mai 2009 : ajout illustrateur |
|
146 ftit = |
|
147 element ftit { attlist.ftit, (typo | br | appel | renv | renvlnk)* } |
|
148 attlist.ftit &= empty |
|
149 # FAUX TITRE ouvrage |
|
150 accro = |
|
151 element accro { attlist.accro, (typo | br | appel | renv | renvlnk)* } |
|
152 attlist.accro &= empty |
|
153 # Accroche ouvrage |
|
154 fstit = |
|
155 element fstit { attlist.fstit, (typo | br | appel | renv | renvlnk)* } |
|
156 attlist.fstit &= empty |
|
157 # SOUS TITRE ouvrage |
|
158 auteur = element auteur { attlist.auteur, (typo | appel)* } |
|
159 attlist.auteur &= empty |
|
160 # Auteur(s) de l'ouvrage ou de citation ou exergue |
|
161 illustrateur = |
|
162 element illustrateur { attlist.illustrateur, (typo | appel)* } |
|
163 attlist.illustrateur &= empty |
|
164 # Mai 2009 : ajout element illustrateur |
|
165 surtit = |
|
166 element surtit { |
|
167 attlist.surtit, (typo | appel | br | renv | renvlnk)* |
|
168 } |
|
169 attlist.surtit &= empty |
|
170 # Mai 2009 : ajout element surtitre |
|
171 tit = element tit { attlist.tit, (typo | appel | br | renv | renvlnk)* } |
|
172 attlist.tit &= empty |
|
173 # Titre de l'ouvrage |
|
174 stit = |
|
175 element stit { attlist.stit, (typo | appel | br | renv | renvlnk)* } |
|
176 attlist.stit &= empty |
|
177 # Sous-titre de l'ouvrage |
|
178 sstit = |
|
179 element sstit { attlist.sstit, (typo | appel | br | renv | renvlnk)* } |
|
180 attlist.sstit &= empty |
|
181 # Mai 2009 : ajout Sous-sous-titre |
|
182 type = element type { attlist.type, (typo | br | appel)* } |
|
183 attlist.type &= empty |
|
184 # Type d'ouvrage dans page de titre |
|
185 info = element info { attlist.info, (typo | br | appel)* } |
|
186 attlist.info &= empty |
|
187 # Texte page de titre |
|
188 collec = |
|
189 element collec { |
|
190 attlist.collec, |
|
191 (tit | stit | cint | cint2 | cint3 | auteur | p | pbib | fig)* |
|
192 } |
|
193 attlist.collec &= empty |
|
194 # page de collection |
|
195 |
|
196 # Octobre 2009 : ajout ÈlÈment fig |
|
197 cint = element cint { attlist.cint, (typo | br | appel)* } |
|
198 attlist.cint &= empty |
|
199 # intertitre dans page de collection |
|
200 cint2 = element cint2 { attlist.cint2, (typo | br | appel)* } |
|
201 attlist.cint2 &= empty |
|
202 # intertitre dans page de collection |
|
203 cint3 = element cint3 { attlist.cint3, (typo | br | appel)* } |
|
204 attlist.cint3 &= empty |
|
205 # intertitre dans page de collection |
|
206 trad = element trad { attlist.trad, (typo | br | appel)* } |
|
207 attlist.trad &= empty |
|
208 # traduction par |
|
209 edit = element edit { attlist.edit, (typo | appel)* } |
|
210 attlist.edit &= empty |
|
211 # Editeur(s) |
|
212 copy = element copy { attlist.copy, (typo | br | appel)* } |
|
213 attlist.copy &= empty |
|
214 # Copyright de l'ouvrage |
|
215 ref = element ref { attlist.ref, (typo | br | appel)* } |
|
216 attlist.ref &= empty |
|
217 # References de l'ouvrage |
|
218 isbn = element isbn { attlist.isbn, (typo | appel)* } |
|
219 attlist.isbn &= empty |
|
220 # isbn |
|
221 issn = element issn { attlist.issn, (typo | appel)* } |
|
222 attlist.issn &= empty |
|
223 # issn |
|
224 modulus = element modulus { attlist.modulus, (typo | appel)* } |
|
225 attlist.modulus &= empty |
|
226 # modulus |
|
227 ean = element ean { attlist.ean, text } |
|
228 attlist.ean &= empty |
|
229 # EAN 13 |
|
230 coned = element coned { attlist.coned, text } |
|
231 attlist.coned &= empty |
|
232 # Rang d'impression |
|
233 dedi = element dedi { attlist.dedi, (typo | br | appel)* } |
|
234 attlist.dedi &= empty |
|
235 # Dedicace |
|
236 exer = element exer { attlist.exer, p+, (source | auteur)* } |
|
237 attlist.exer &= empty |
|
238 # Exergue |
|
239 source = element source { attlist.source, (typo | appel | p | br)* } |
|
240 attlist.source &= empty |
|
241 # Source(s) citation, image, exergue |
|
242 |
482 |
243 # ****** Elements paragraphe ****** |
483 # ****** Elements paragraphe ****** |
244 p = element p { attlist.p, (typo | appel | renv | renvlnk)* } |
484 p = element p { attlist.p, (typo | appel | renv | renvlnk)* } |
245 attlist.p &= |
485 attlist.p &= |
246 attribute align { |
486 attribute align { |
247 "centre" | "justif" | "gauche" | "droite" | "ssalinea" |
487 "centre" | "justif" | "gauche" | "droite" | "ssalinea" |
248 }? |
488 }? |
249 # Element paragraphe |
489 # Element paragraphe |
|
490 |
|
491 |
|
492 # Indentifiant et numero permettant de referencer les titres pour une gestion electronique |
|
493 |
|
494 # Mai 2009 : ajout type bio, personnages, sommaire, tdm |
|
495 |
|
496 # Mai 2009 : ajout appels de figure optionnels en dÈbut et en fin de prÈliminaire |
|
497 |
|
498 # Mai 2009 : ajout surtitre optionnel |
|
499 |
|
500 # Mai 2009 : ajout sous-soustitre optionnel |
|
501 |
|
502 # mai 2009 : ajout ÈlÈment chapeau ****** |
|
503 |
|
504 # mai 2009 : ajout appels de figure optionnels au niveau de titre et sous titre ****** |
|
505 |
|
506 # mai 2009 : ajout source optionnel ****** |
|
507 |
|
508 # dÈcembre 2009 : ajout collec optionnel en fin de pre, pour les titre du meme auteur d un pre bio****** |
|
509 sign = element sign { attlist.sign, (typo | appel | br)* } |
|
510 attlist.sign &= empty |
|
511 # Signature de la preface ou de l'intro, etc...** |
250 |
512 |
251 # ****** Elements paragraphe bibliographique ****** |
513 # ****** Elements paragraphe bibliographique ****** |
252 pbib = |
514 pbib = |
253 element pbib { |
515 element pbib { |
254 attlist.pbib, |
516 attlist.pbib, |
334 indx3 = element indx3 { attlist.indx3, (typo | appel)* } |
596 indx3 = element indx3 { attlist.indx3, (typo | appel)* } |
335 # Indexation |
597 # Indexation |
336 attlist.indx3 &= attribute LIBEL { text }? |
598 attlist.indx3 &= attribute LIBEL { text }? |
337 # Libelle dans l'index |
599 # Libelle dans l'index |
338 |
600 |
339 # ****** Elements corps de l'ouvrage ****** |
601 # ****** Elements Theatre ****** |
340 corps = |
602 theatre = element theatre { attlist.theatre, distrib*, acte+ } |
341 element corps { |
603 attlist.theatre &= empty |
342 attlist.corps, (vol+ | part+ | section+ | chap+ | dev) |
604 # Module d'enrichissement pour ouvrage de theatre... |
343 } |
605 distrib = element distrib { attlist.distrib, tit, role+, expos* } |
344 attlist.corps &= empty |
606 attlist.distrib &= empty |
345 # Corps de l'ouvrage |
607 # liste des personnage de la piece... |
346 |
608 role = element role { attlist.role, (pers | acteur)* } |
347 # ****** Elements preliminaire de l'ouvrage ****** |
609 attlist.role &= empty |
348 pre = |
610 # role du personnage |
349 element pre { |
611 expos = |
350 attlist.pre, |
612 element expos { attlist.expos, (typo | appel | renv | renvlnk)* } |
351 apfi?, |
613 attlist.expos &= empty |
352 surtit?, |
614 # exposition (ou se deroule la piece) |
353 (((tit, apfi?), |
615 acte = |
354 ((stit, apfi?), (sstit, apfi?)?)?) |
616 element acte { |
355 | ((stit, apfi?), (sstit, apfi?)?))?, |
617 attlist.acte, n?, tit?, stit?, (pers | didasc)*, scene+ |
356 exer*, |
618 } |
357 chapeau?, |
619 attlist.acte &= empty |
358 dev, |
620 # acte |
359 (source | sign)*, |
621 pers = |
360 collec*, |
622 element pers { |
361 defnotes?, |
623 attlist.pers, (typo | appel | renv | renvlnk | didasc)* |
362 apfi? |
624 } |
363 } |
625 attlist.pers &= empty |
364 # preliminaire : Intro, preface, Avertissement etc... |
626 # personnage(s) |
365 attlist.pre &= |
627 acteur = |
366 attribute id { xsd:ID }?, |
628 element acteur { |
367 attribute num { text }?, |
629 attlist.acteur, (typo | appel | renv | renvlnk | didasc)* |
|
630 } |
|
631 attlist.acteur &= empty |
|
632 # acteur(s) |
|
633 didasc = |
|
634 element didasc { attlist.didasc, (typo | appel | renv | renvlnk)* } |
|
635 attlist.didasc &= empty |
|
636 # didascalie |
|
637 scene = |
|
638 element scene { |
|
639 attlist.scene, n?, tit?, stit?, (pers | didasc)*, replique+ |
|
640 } |
|
641 attlist.scene &= empty |
|
642 # scene |
|
643 replique = |
|
644 element replique { |
|
645 attlist.replique, |
|
646 (pers+, (p | vers | didasc)*)+ |
|
647 } |
|
648 attlist.replique &= empty |
|
649 # replique |
|
650 vers = element vers { attlist.vers, (typo | appel | renv | renvlnk)* } |
|
651 attlist.vers &= |
|
652 attribute align { |
|
653 "centre" | "justif" | "gauche" | "droite" | "stichomythie" |
|
654 }?, |
|
655 attribute num { text }? |
|
656 # Attribut du vers (stichomytie pour les vers qui se suivent |
|
657 |
|
658 # vers |
|
659 bl = element bl { attlist.bl, empty } |
|
660 # Ligne de blanc |
|
661 attlist.bl &= attribute v { text } |
|
662 # Valeur de blanc |
|
663 sep = element sep { attlist.sep, empty } |
|
664 # Separateur |
|
665 attlist.sep &= |
368 attribute type { |
666 attribute type { |
369 "intro" |
667 "filet" | "frise" | "etoiles" | "etoile" | "logo" | "autre" |
370 | "prologue" |
668 }, |
371 | "pref" |
669 attribute src { text }? |
372 | "remer" |
670 # type de separateur |
373 | "avpro" |
671 |
374 | "biblio" |
672 # Mai 2009 : ajout scr : nom de l'image pour logo, cul de lampe... |
375 | "bio" |
|
376 | "remarque" |
|
377 | "note" |
|
378 | "chrono" |
|
379 | "presentation" |
|
380 | "personnages" |
|
381 | "sommaire" |
|
382 | "tdm" |
|
383 | "autre" |
|
384 }? |
|
385 # Type de preliminaire : introduction, prologue, preface, remerciements, avant propos , bibliographie, remarque, note, chronologie, presentation et autre |
|
386 |
|
387 # Indentifiant et numero permettant de referencer les titres pour une gestion electronique |
|
388 |
|
389 # Mai 2009 : ajout type bio, personnages, sommaire, tdm |
|
390 |
|
391 # Mai 2009 : ajout appels de figure optionnels en dÈbut et en fin de prÈliminaire |
|
392 |
|
393 # Mai 2009 : ajout surtitre optionnel |
|
394 |
|
395 # Mai 2009 : ajout sous-soustitre optionnel |
|
396 |
|
397 # mai 2009 : ajout ÈlÈment chapeau ****** |
|
398 |
|
399 # mai 2009 : ajout appels de figure optionnels au niveau de titre et sous titre ****** |
|
400 |
|
401 # mai 2009 : ajout source optionnel ****** |
|
402 |
|
403 # dÈcembre 2009 : ajout collec optionnel en fin de pre, pour les titre du meme auteur d un pre bio****** |
|
404 sign = element sign { attlist.sign, (typo | appel | br)* } |
|
405 attlist.sign &= empty |
|
406 # Signature de la preface ou de l'intro, etc...** |
|
407 |
|
408 # ****** Elements volume de l'ouvrage ****** |
|
409 vol = |
|
410 element vol { |
|
411 attlist.vol, |
|
412 depart, |
|
413 (appcrit | pre)*, |
|
414 ((dev, part*) | part+), |
|
415 defnotes?, |
|
416 (appcrit | appen)* |
|
417 } |
|
418 attlist.vol &= |
|
419 attribute id { xsd:ID }?, |
|
420 attribute num { text }? |
|
421 # Indentifiant et numero permettant de referencer les titres pour une gestion electronique |
|
422 |
|
423 # ****** Elements partie de l'ouvrage ****** |
|
424 part = |
|
425 element part { |
|
426 attlist.part, |
|
427 depart, |
|
428 (appcrit | pre)*, |
|
429 ((dev, (section | chap)*) |
|
430 | (section | chap)+), |
|
431 defnotes?, |
|
432 (appcrit | appen)* |
|
433 } |
|
434 attlist.part &= |
|
435 attribute id { xsd:ID }?, |
|
436 attribute num { text }? |
|
437 # Indentifiant et numero permettant de referencer les titres pour une gestion electronique |
|
438 |
|
439 # ****** Elements partie de l'ouvrage ****** |
|
440 section = |
|
441 element section { |
|
442 attlist.section, |
|
443 depart, |
|
444 (appcrit | pre)*, |
|
445 ((dev, chap*) | chap+), |
|
446 defnotes?, |
|
447 (appcrit | appen)* |
|
448 } |
|
449 attlist.section &= |
|
450 attribute id { xsd:ID }?, |
|
451 attribute num { text }? |
|
452 # Indentifiant et numero permettant de referencer les titres pour une gestion electronique |
|
453 n = element n { attlist.n, (typo | appel | br | renv | renvlnk)* } |
|
454 attlist.n &= empty |
|
455 # Numero de partie, Chapitre, sous-chapitre ou section |
|
456 |
|
457 # ****** Elements Chapitre de l'ouvrage ****** |
|
458 chap = |
|
459 element chap { |
|
460 attlist.chap, |
|
461 depart, |
|
462 (appcrit | pre)*, |
|
463 ((chapeau?, dev, schap*) | schap+), |
|
464 source?, |
|
465 defnotes?, |
|
466 (appcrit | appen)* |
|
467 } |
|
468 attlist.chap &= |
|
469 attribute id { xsd:ID }?, |
|
470 attribute num { text }? |
|
471 # Indentifiant et numero permettant de referencer les titres pour une gestion electronique |
|
472 |
|
473 # Chapitre |
|
474 |
|
475 # mai 2009 : ajout ÈlÈment chapeau ****** |
|
476 |
|
477 # mai 2009 : ajout ÈlÈment source ****** |
|
478 |
|
479 # ****** Elements Sous-chapitre ****** |
|
480 schap = |
|
481 element schap { |
|
482 attlist.schap, |
|
483 depart, |
|
484 (appcrit | pre)*, |
|
485 chapeau?, |
|
486 dev, |
|
487 defnotes?, |
|
488 (appcrit | appen)* |
|
489 } |
|
490 attlist.schap &= |
|
491 attribute id { xsd:ID }?, |
|
492 attribute num { text }? |
|
493 # Indentifiant et numero permettant de referencer les titres pour une gestion electronique |
|
494 |
|
495 # Sous-chapitre |
|
496 |
|
497 # mai 2009 : ajout ÈlÈment chapeau ****** |
|
498 |
673 |
499 # ****** Elements postliminaire de l'ouvrage ****** |
674 # ****** Elements postliminaire de l'ouvrage ****** |
500 appen = |
675 appen = |
501 element appen { |
676 element appen { |
502 attlist.appen, |
677 attlist.appen, |
647 |
822 |
648 # Section |
823 # Section |
649 |
824 |
650 # mai 2009 : ajout ÈlÈment chapeau****** |
825 # mai 2009 : ajout ÈlÈment chapeau****** |
651 |
826 |
652 # ****** Elements Developpement ****** |
|
653 dev = |
|
654 element dev { |
|
655 attlist.dev, |
|
656 (((let?, (p | pbib)) |
|
657 | bl |
|
658 | sep |
|
659 | dialogue |
|
660 | theatre |
|
661 | \list |
|
662 | stroplg |
|
663 | cita |
|
664 | infratexte |
|
665 | lettre |
|
666 | fig |
|
667 | tableau |
|
668 | enc |
|
669 | sign) |
|
670 | (niv1 | niv2 | niv3 | niv4 | niv5))+, |
|
671 fin?, |
|
672 source? |
|
673 } |
|
674 attlist.dev &= empty |
|
675 # mai 2009 : ajout source ****** |
|
676 |
|
677 # Developpement des chapitres, parties ou sections... |
|
678 chapeau = element chapeau { attlist.chapeau, let?, p+ } |
|
679 attlist.chapeau &= empty |
|
680 # mai 2009 : ajout ÈlÈment chapeau pour preliminaire, appendice, chapitre, sous chapitre, sect ****** |
|
681 |
|
682 # ****** Elements Theatre ****** |
|
683 theatre = element theatre { attlist.theatre, distrib*, acte+ } |
|
684 attlist.theatre &= empty |
|
685 # Module d'enrichissement pour ouvrage de theatre... |
|
686 distrib = element distrib { attlist.distrib, tit, role+, expos* } |
|
687 attlist.distrib &= empty |
|
688 # liste des personnage de la piece... |
|
689 role = element role { attlist.role, (pers | acteur)* } |
|
690 attlist.role &= empty |
|
691 # role du personnage |
|
692 expos = |
|
693 element expos { attlist.expos, (typo | appel | renv | renvlnk)* } |
|
694 attlist.expos &= empty |
|
695 # exposition (ou se deroule la piece) |
|
696 acte = |
|
697 element acte { |
|
698 attlist.acte, n?, tit?, stit?, (pers | didasc)*, scene+ |
|
699 } |
|
700 attlist.acte &= empty |
|
701 # acte |
|
702 pers = |
|
703 element pers { |
|
704 attlist.pers, (typo | appel | renv | renvlnk | didasc)* |
|
705 } |
|
706 attlist.pers &= empty |
|
707 # personnage(s) |
|
708 acteur = |
|
709 element acteur { |
|
710 attlist.acteur, (typo | appel | renv | renvlnk | didasc)* |
|
711 } |
|
712 attlist.acteur &= empty |
|
713 # acteur(s) |
|
714 didasc = |
|
715 element didasc { attlist.didasc, (typo | appel | renv | renvlnk)* } |
|
716 attlist.didasc &= empty |
|
717 # didascalie |
|
718 scene = |
|
719 element scene { |
|
720 attlist.scene, n?, tit?, stit?, (pers | didasc)*, replique+ |
|
721 } |
|
722 attlist.scene &= empty |
|
723 # scene |
|
724 replique = |
|
725 element replique { |
|
726 attlist.replique, |
|
727 (pers+, (p | vers | didasc)*)+ |
|
728 } |
|
729 attlist.replique &= empty |
|
730 # replique |
|
731 vers = element vers { attlist.vers, (typo | appel | renv | renvlnk)* } |
|
732 attlist.vers &= |
|
733 attribute align { |
|
734 "centre" | "justif" | "gauche" | "droite" | "stichomythie" |
|
735 }?, |
|
736 attribute num { text }? |
|
737 # Attribut du vers (stichomytie pour les vers qui se suivent |
|
738 |
|
739 # vers |
|
740 bl = element bl { attlist.bl, empty } |
|
741 # Ligne de blanc |
|
742 attlist.bl &= attribute v { text } |
|
743 # Valeur de blanc |
|
744 sep = element sep { attlist.sep, empty } |
|
745 # Separateur |
|
746 attlist.sep &= |
|
747 attribute type { |
|
748 "filet" | "frise" | "etoiles" | "etoile" | "logo" | "autre" |
|
749 }, |
|
750 attribute src { text }? |
|
751 # type de separateur |
|
752 |
|
753 # Mai 2009 : ajout scr : nom de l'image pour logo, cul de lampe... |
|
754 |
827 |
755 # ****** Element liste ****** |
828 # ****** Element liste ****** |
756 \list = element list { attlist.list, item+ } |
829 \list = element list { attlist.list, item+ } |
757 attlist.list &= |
830 attlist.list &= |
758 attribute type { |
831 attribute type { |