dbhier.rnc 38 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468
  1. # ......................................................................
  2. # DocBook document hierarchy module V4.2 ...............................
  3. # File dbhierx.mod .....................................................
  4. # Copyright 1992-2002 HaL Computer Systems, Inc.,
  5. # O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
  6. # Corporation, Norman Walsh, Sun Microsystems, Inc., and the
  7. # Organization for the Advancement of Structured Information
  8. # Standards (OASIS).
  9. #
  10. # $Id: dbhier.rnc,v 1.1 2003/08/30 04:19:27 jjc Exp $
  11. #
  12. # Permission to use, copy, modify and distribute the DocBook DTD
  13. # and its accompanying documentation for any purpose and without fee
  14. # is hereby granted in perpetuity, provided that the above copyright
  15. # notice and this paragraph appear in all copies. The copyright
  16. # holders make no representation about the suitability of the DTD for
  17. # any purpose. It is provided "as is" without expressed or implied
  18. # warranty.
  19. #
  20. # If you modify the DocBook DTD in any way, except for declaring and
  21. # referencing additional sets of general entities and declaring
  22. # additional notations, label your DTD as a variant of DocBook. See
  23. # the maintenance documentation for more information.
  24. #
  25. # Please direct all questions, bug reports, or suggestions for
  26. # changes to the docbook@lists.oasis-open.org mailing list. For more
  27. # information, see http://www.oasis-open.org/docbook/.
  28. # ......................................................................
  29. # This module contains the definitions for the overall document
  30. # hierarchies of DocBook documents. It covers computer documentation
  31. # manuals and manual fragments, as well as reference entries (such as
  32. # man pages) and technical journals or anthologies containing
  33. # articles.
  34. #
  35. # This module depends on the DocBook information pool module. All
  36. # elements and entities referenced but not defined here are assumed
  37. # to be defined in the information pool module.
  38. #
  39. # In DTD driver files referring to this module, please use an entity
  40. # declaration that uses the public identifier shown below:
  41. #
  42. # <!ENTITY % dbhier PUBLIC
  43. # "-//OASIS//ELEMENTS DocBook Document Hierarchy V4.2//EN"
  44. # "dbhierx.mod">
  45. # %dbhier;
  46. #
  47. # See the documentation for detailed information on the parameter
  48. # entity and module scheme used in DocBook, customizing DocBook and
  49. # planning for interchange, and changes made since the last release
  50. # of DocBook.
  51. # ......................................................................
  52. # Entities for module inclusions .......................................
  53. # ......................................................................
  54. # Entities for element classes .........................................
  55. local.appendix.class = notAllowed
  56. appendix.class = appendix | local.appendix.class
  57. local.article.class = notAllowed
  58. article.class = article | local.article.class
  59. local.book.class = notAllowed
  60. book.class = book | local.book.class
  61. local.chapter.class = notAllowed
  62. chapter.class = chapter | local.chapter.class
  63. local.index.class = notAllowed
  64. index.class = index | setindex | local.index.class
  65. local.refentry.class = notAllowed
  66. refentry.class = refentry | local.refentry.class
  67. local.section.class = notAllowed
  68. section.class = section | local.section.class
  69. local.nav.class = notAllowed
  70. nav.class =
  71. toc | lot | index | glossary | bibliography | local.nav.class
  72. # Redeclaration placeholder ............................................
  73. # For redeclaring entities that are declared after this point while
  74. # retaining their references to the entities that are declared before
  75. # this point
  76. # ......................................................................
  77. # Entities for element mixtures ........................................
  78. # The DocBook TC may produce an official forms module for DocBook.
  79. # This PE provides the hook by which it can be inserted into the DTD.
  80. forms.hook = notAllowed
  81. local.divcomponent.mix = notAllowed
  82. divcomponent.mix =
  83. list.class
  84. | admon.class
  85. | linespecific.class
  86. | synop.class
  87. | para.class
  88. | informal.class
  89. | formal.class
  90. | compound.class
  91. | genobj.class
  92. | descobj.class
  93. | ndxterm.class
  94. | beginpage
  95. | forms.hook
  96. | local.divcomponent.mix
  97. local.refcomponent.mix = notAllowed
  98. refcomponent.mix =
  99. list.class
  100. | admon.class
  101. | linespecific.class
  102. | synop.class
  103. | para.class
  104. | informal.class
  105. | formal.class
  106. | compound.class
  107. | genobj.class
  108. | descobj.class
  109. | ndxterm.class
  110. | beginpage
  111. | local.refcomponent.mix
  112. local.indexdivcomponent.mix = notAllowed
  113. indexdivcomponent.mix =
  114. itemizedlist
  115. | orderedlist
  116. | variablelist
  117. | simplelist
  118. | linespecific.class
  119. | synop.class
  120. | para.class
  121. | informal.class
  122. | anchor
  123. | remark
  124. | link.char.class
  125. | beginpage
  126. | local.indexdivcomponent.mix
  127. local.refname.char.mix = notAllowed
  128. refname.char.mix = text | tech.char.class | local.refname.char.mix
  129. local.partcontent.mix = notAllowed
  130. partcontent.mix =
  131. appendix.class
  132. | chapter.class
  133. | nav.class
  134. | article.class
  135. | preface
  136. | refentry.class
  137. | reference
  138. | local.partcontent.mix
  139. local.refinline.char.mix = notAllowed
  140. refinline.char.mix =
  141. text
  142. | xref.char.class
  143. | gen.char.class
  144. | link.char.class
  145. | tech.char.class
  146. | base.char.class
  147. | docinfo.char.class
  148. | other.char.class
  149. | ndxterm.class
  150. | beginpage
  151. | local.refinline.char.mix
  152. local.refclass.char.mix = notAllowed
  153. refclass.char.mix = text | application | local.refclass.char.mix
  154. # Redeclaration placeholder 2 ..........................................
  155. # For redeclaring entities that are declared after this point while
  156. # retaining their references to the entities that are declared before
  157. # this point
  158. # ......................................................................
  159. # Entities for content models ..........................................
  160. div.title.content = title, subtitle?, titleabbrev?
  161. bookcomponent.title.content = title, subtitle?, titleabbrev?
  162. sect.title.content = title, subtitle?, titleabbrev?
  163. refsect.title.content = title, subtitle?, titleabbrev?
  164. bookcomponent.content =
  165. (divcomponent.mix+,
  166. (sect1* | refentry.class* | simplesect* | section.class*))
  167. | (sect1+ | refentry.class+ | simplesect+ | section.class+)
  168. # ......................................................................
  169. # Set and SetInfo ......................................................
  170. local.set.attrib = empty
  171. set.role.attrib = role.attrib
  172. set =
  173. element set {
  174. set.attlist,
  175. div.title.content?,
  176. setinfo?,
  177. toc?,
  178. book.class+,
  179. setindex?
  180. }
  181. # end of set.element
  182. # FPI: SGML formal public identifier
  183. set.attlist &=
  184. attribute fpi { text }?,
  185. status.attrib,
  186. common.attrib,
  187. set.role.attrib,
  188. local.set.attrib
  189. # end of set.attlist
  190. # end of set.module
  191. local.setinfo.attrib = empty
  192. setinfo.role.attrib = role.attrib
  193. setinfo = element setinfo { setinfo.attlist, info.class+ }
  194. # end of setinfo.element
  195. # Contents: IDs of the ToC, Books, and SetIndex that comprise
  196. # the set, in the order of their appearance
  197. setinfo.attlist &=
  198. attribute contents { xsd:IDREFS }?,
  199. common.attrib,
  200. setinfo.role.attrib,
  201. local.setinfo.attrib
  202. # end of setinfo.attlist
  203. # end of setinfo.module
  204. # end of set.content.module
  205. # ......................................................................
  206. # Book and BookInfo ....................................................
  207. local.book.attrib = empty
  208. book.role.attrib = role.attrib
  209. book =
  210. element book {
  211. book.attlist,
  212. div.title.content?,
  213. bookinfo?,
  214. (dedication
  215. | toc
  216. | lot
  217. | glossary
  218. | bibliography
  219. | preface
  220. | chapter.class
  221. | reference
  222. | part
  223. | article.class
  224. | appendix.class
  225. | index.class
  226. | colophon)*
  227. }
  228. # end of book.element
  229. # FPI: SGML formal public identifier
  230. book.attlist &=
  231. attribute fpi { text }?,
  232. label.attrib,
  233. status.attrib,
  234. common.attrib,
  235. book.role.attrib,
  236. local.book.attrib
  237. # end of book.attlist
  238. # end of book.module
  239. local.bookinfo.attrib = empty
  240. bookinfo.role.attrib = role.attrib
  241. bookinfo = element bookinfo { bookinfo.attlist, info.class+ }
  242. # end of bookinfo.element
  243. # Contents: IDs of the ToC, LoTs, Prefaces, Parts, Chapters,
  244. # Appendixes, References, GLossary, Bibliography, and indexes
  245. # comprising the Book, in the order of their appearance
  246. bookinfo.attlist &=
  247. attribute contents { xsd:IDREFS }?,
  248. common.attrib,
  249. bookinfo.role.attrib,
  250. local.bookinfo.attrib
  251. # end of bookinfo.attlist
  252. # end of bookinfo.module
  253. # end of book.content.module
  254. # ......................................................................
  255. # Dedication, ToC, and LoT .............................................
  256. local.dedication.attrib = empty
  257. dedication.role.attrib = role.attrib
  258. dedication =
  259. element dedication {
  260. dedication.attlist, sect.title.content?, legalnotice.mix+
  261. }
  262. # end of dedication.element
  263. dedication.attlist &=
  264. status.attrib,
  265. common.attrib,
  266. dedication.role.attrib,
  267. local.dedication.attrib
  268. # end of dedication.attlist
  269. # end of dedication.module
  270. local.colophon.attrib = empty
  271. colophon.role.attrib = role.attrib
  272. colophon =
  273. element colophon {
  274. colophon.attlist, sect.title.content?, textobject.mix+
  275. }
  276. # end of colophon.element
  277. colophon.attlist &=
  278. status.attrib,
  279. common.attrib,
  280. colophon.role.attrib,
  281. local.colophon.attrib
  282. # end of colophon.attlist
  283. # end of colophon.module
  284. local.toc.attrib = empty
  285. toc.role.attrib = role.attrib
  286. toc =
  287. element toc {
  288. toc.attlist,
  289. beginpage?,
  290. bookcomponent.title.content?,
  291. tocfront*,
  292. (tocpart | tocchap)*,
  293. tocback*
  294. }
  295. # end of toc.element
  296. toc.attlist &=
  297. pagenum.attrib, common.attrib, toc.role.attrib, local.toc.attrib
  298. # end of toc.attlist
  299. # end of toc.module
  300. local.tocfront.attrib = empty
  301. tocfront.role.attrib = role.attrib
  302. tocfront = element tocfront { tocfront.attlist, para.char.mix* }
  303. # end of tocfront.element
  304. # to element that this entry represents
  305. tocfront.attlist &=
  306. label.attrib,
  307. linkend.attrib,
  308. pagenum.attrib,
  309. common.attrib,
  310. tocfront.role.attrib,
  311. local.tocfront.attrib
  312. # end of tocfront.attlist
  313. # end of tocfront.module
  314. local.tocentry.attrib = empty
  315. tocentry.role.attrib = role.attrib
  316. tocentry = element tocentry { tocentry.attlist, para.char.mix* }
  317. # end of tocentry.element
  318. # to element that this entry represents
  319. tocentry.attlist &=
  320. linkend.attrib,
  321. pagenum.attrib,
  322. common.attrib,
  323. tocentry.role.attrib,
  324. local.tocentry.attrib
  325. # end of tocentry.attlist
  326. # end of tocentry.module
  327. local.tocpart.attrib = empty
  328. tocpart.role.attrib = role.attrib
  329. tocpart = element tocpart { tocpart.attlist, tocentry+, tocchap* }
  330. # end of tocpart.element
  331. tocpart.attlist &=
  332. common.attrib, tocpart.role.attrib, local.tocpart.attrib
  333. # end of tocpart.attlist
  334. # end of tocpart.module
  335. local.tocchap.attrib = empty
  336. tocchap.role.attrib = role.attrib
  337. tocchap = element tocchap { tocchap.attlist, tocentry+, toclevel1* }
  338. # end of tocchap.element
  339. tocchap.attlist &=
  340. label.attrib, common.attrib, tocchap.role.attrib, local.tocchap.attrib
  341. # end of tocchap.attlist
  342. # end of tocchap.module
  343. local.toclevel1.attrib = empty
  344. toclevel1.role.attrib = role.attrib
  345. toclevel1 =
  346. element toclevel1 { toclevel1.attlist, tocentry+, toclevel2* }
  347. # end of toclevel1.element
  348. toclevel1.attlist &=
  349. common.attrib, toclevel1.role.attrib, local.toclevel1.attrib
  350. # end of toclevel1.attlist
  351. # end of toclevel1.module
  352. local.toclevel2.attrib = empty
  353. toclevel2.role.attrib = role.attrib
  354. toclevel2 =
  355. element toclevel2 { toclevel2.attlist, tocentry+, toclevel3* }
  356. # end of toclevel2.element
  357. toclevel2.attlist &=
  358. common.attrib, toclevel2.role.attrib, local.toclevel2.attrib
  359. # end of toclevel2.attlist
  360. # end of toclevel2.module
  361. local.toclevel3.attrib = empty
  362. toclevel3.role.attrib = role.attrib
  363. toclevel3 =
  364. element toclevel3 { toclevel3.attlist, tocentry+, toclevel4* }
  365. # end of toclevel3.element
  366. toclevel3.attlist &=
  367. common.attrib, toclevel3.role.attrib, local.toclevel3.attrib
  368. # end of toclevel3.attlist
  369. # end of toclevel3.module
  370. local.toclevel4.attrib = empty
  371. toclevel4.role.attrib = role.attrib
  372. toclevel4 =
  373. element toclevel4 { toclevel4.attlist, tocentry+, toclevel5* }
  374. # end of toclevel4.element
  375. toclevel4.attlist &=
  376. common.attrib, toclevel4.role.attrib, local.toclevel4.attrib
  377. # end of toclevel4.attlist
  378. # end of toclevel4.module
  379. local.toclevel5.attrib = empty
  380. toclevel5.role.attrib = role.attrib
  381. toclevel5 = element toclevel5 { toclevel5.attlist, tocentry+ }
  382. # end of toclevel5.element
  383. toclevel5.attlist &=
  384. common.attrib, toclevel5.role.attrib, local.toclevel5.attrib
  385. # end of toclevel5.attlist
  386. # end of toclevel5.module
  387. local.tocback.attrib = empty
  388. tocback.role.attrib = role.attrib
  389. tocback = element tocback { tocback.attlist, para.char.mix* }
  390. # end of tocback.element
  391. # to element that this entry represents
  392. tocback.attlist &=
  393. label.attrib,
  394. linkend.attrib,
  395. pagenum.attrib,
  396. common.attrib,
  397. tocback.role.attrib,
  398. local.tocback.attrib
  399. # end of tocback.attlist
  400. # end of tocback.module
  401. # end of toc.content.module
  402. local.lot.attrib = empty
  403. lot.role.attrib = role.attrib
  404. lot =
  405. element lot {
  406. lot.attlist, beginpage?, bookcomponent.title.content?, lotentry*
  407. }
  408. # end of lot.element
  409. lot.attlist &=
  410. label.attrib, common.attrib, lot.role.attrib, local.lot.attrib
  411. # end of lot.attlist
  412. # end of lot.module
  413. local.lotentry.attrib = empty
  414. lotentry.role.attrib = role.attrib
  415. lotentry = element lotentry { lotentry.attlist, para.char.mix* }
  416. # end of lotentry.element
  417. # SrcCredit: Information about the source of the entry,
  418. # as for a list of illustrations
  419. # linkend: to element that this entry represents
  420. lotentry.attlist &=
  421. linkend.attrib,
  422. pagenum.attrib,
  423. attribute srccredit { text }?,
  424. common.attrib,
  425. lotentry.role.attrib,
  426. local.lotentry.attrib
  427. # end of lotentry.attlist
  428. # end of lotentry.module
  429. # end of lot.content.module
  430. # ......................................................................
  431. # Appendix, Chapter, Part, Preface, Reference, PartIntro ...............
  432. local.appendix.attrib = empty
  433. appendix.role.attrib = role.attrib
  434. appendix =
  435. element appendix {
  436. appendix.attlist,
  437. beginpage?,
  438. appendixinfo?,
  439. bookcomponent.title.content,
  440. nav.class*,
  441. tocchap?,
  442. bookcomponent.content,
  443. nav.class*
  444. }
  445. # end of appendix.element
  446. appendix.attlist &=
  447. label.attrib,
  448. status.attrib,
  449. common.attrib,
  450. appendix.role.attrib,
  451. local.appendix.attrib
  452. # end of appendix.attlist
  453. # end of appendix.module
  454. local.chapter.attrib = empty
  455. chapter.role.attrib = role.attrib
  456. chapter =
  457. element chapter {
  458. chapter.attlist,
  459. beginpage?,
  460. chapterinfo?,
  461. bookcomponent.title.content,
  462. nav.class*,
  463. tocchap?,
  464. bookcomponent.content,
  465. nav.class*
  466. }
  467. # end of chapter.element
  468. chapter.attlist &=
  469. label.attrib,
  470. status.attrib,
  471. common.attrib,
  472. chapter.role.attrib,
  473. local.chapter.attrib
  474. # end of chapter.attlist
  475. # end of chapter.module
  476. # Note that Part was to have its content model reduced in V4.2. This
  477. # change will not be made after all.
  478. local.part.attrib = empty
  479. part.role.attrib = role.attrib
  480. part =
  481. element part {
  482. part.attlist,
  483. beginpage?,
  484. partinfo?,
  485. bookcomponent.title.content,
  486. partintro?,
  487. partcontent.mix+
  488. }
  489. # end of part.element
  490. part.attlist &=
  491. label.attrib,
  492. status.attrib,
  493. common.attrib,
  494. part.role.attrib,
  495. local.part.attrib
  496. # end of part.attlist
  497. # ELEMENT PartIntro (defined below)
  498. # end of part.module
  499. local.preface.attrib = empty
  500. preface.role.attrib = role.attrib
  501. preface =
  502. element preface {
  503. preface.attlist,
  504. beginpage?,
  505. prefaceinfo?,
  506. bookcomponent.title.content,
  507. nav.class*,
  508. tocchap?,
  509. bookcomponent.content,
  510. nav.class*
  511. }
  512. # end of preface.element
  513. preface.attlist &=
  514. status.attrib,
  515. common.attrib,
  516. preface.role.attrib,
  517. local.preface.attrib
  518. # end of preface.attlist
  519. # end of preface.module
  520. local.reference.attrib = empty
  521. reference.role.attrib = role.attrib
  522. reference =
  523. element reference {
  524. reference.attlist,
  525. beginpage?,
  526. referenceinfo?,
  527. bookcomponent.title.content,
  528. partintro?,
  529. refentry.class+
  530. }
  531. # end of reference.element
  532. reference.attlist &=
  533. label.attrib,
  534. status.attrib,
  535. common.attrib,
  536. reference.role.attrib,
  537. local.reference.attrib
  538. # end of reference.attlist
  539. # ELEMENT PartIntro (defined below)
  540. # end of reference.module
  541. local.partintro.attrib = empty
  542. partintro.role.attrib = role.attrib
  543. partintro =
  544. element partintro {
  545. partintro.attlist, div.title.content?, bookcomponent.content
  546. }
  547. # end of partintro.element
  548. partintro.attlist &=
  549. label.attrib,
  550. common.attrib,
  551. partintro.role.attrib,
  552. local.partintro.attrib
  553. # end of partintro.attlist
  554. # end of partintro.module
  555. # ......................................................................
  556. # Other Info elements ..................................................
  557. local.appendixinfo.attrib = empty
  558. appendixinfo.role.attrib = role.attrib
  559. appendixinfo =
  560. element appendixinfo { appendixinfo.attlist, info.class+ }
  561. # end of appendixinfo.element
  562. appendixinfo.attlist &=
  563. common.attrib, appendixinfo.role.attrib, local.appendixinfo.attrib
  564. # end of appendixinfo.attlist
  565. # end of appendixinfo.module
  566. local.bibliographyinfo.attrib = empty
  567. bibliographyinfo.role.attrib = role.attrib
  568. bibliographyinfo =
  569. element bibliographyinfo { bibliographyinfo.attlist, info.class+ }
  570. # end of bibliographyinfo.element
  571. bibliographyinfo.attlist &=
  572. common.attrib,
  573. bibliographyinfo.role.attrib,
  574. local.bibliographyinfo.attrib
  575. # end of bibliographyinfo.attlist
  576. # end of bibliographyinfo.module
  577. local.chapterinfo.attrib = empty
  578. chapterinfo.role.attrib = role.attrib
  579. chapterinfo = element chapterinfo { chapterinfo.attlist, info.class+ }
  580. # end of chapterinfo.element
  581. chapterinfo.attlist &=
  582. common.attrib, chapterinfo.role.attrib, local.chapterinfo.attrib
  583. # end of chapterinfo.attlist
  584. # end of chapterinfo.module
  585. local.glossaryinfo.attrib = empty
  586. glossaryinfo.role.attrib = role.attrib
  587. glossaryinfo =
  588. element glossaryinfo { glossaryinfo.attlist, info.class+ }
  589. # end of glossaryinfo.element
  590. glossaryinfo.attlist &=
  591. common.attrib, glossaryinfo.role.attrib, local.glossaryinfo.attrib
  592. # end of glossaryinfo.attlist
  593. # end of glossaryinfo.module
  594. local.indexinfo.attrib = empty
  595. indexinfo.role.attrib = role.attrib
  596. indexinfo = element indexinfo { indexinfo.attlist, info.class+ }
  597. # end of indexinfo.element
  598. indexinfo.attlist &=
  599. common.attrib, indexinfo.role.attrib, local.indexinfo.attrib
  600. # end of indexinfo.attlist
  601. # end of indexinfo.module
  602. local.setindexinfo.attrib = empty
  603. setindexinfo.role.attrib = role.attrib
  604. setindexinfo =
  605. element setindexinfo { setindexinfo.attlist, info.class+ }
  606. # end of setindexinfo.element
  607. setindexinfo.attlist &=
  608. common.attrib, setindexinfo.role.attrib, local.setindexinfo.attrib
  609. # end of setindexinfo.attlist
  610. # end of setindexinfo.module
  611. local.partinfo.attrib = empty
  612. partinfo.role.attrib = role.attrib
  613. partinfo = element partinfo { partinfo.attlist, info.class+ }
  614. # end of partinfo.element
  615. partinfo.attlist &=
  616. common.attrib, partinfo.role.attrib, local.partinfo.attrib
  617. # end of partinfo.attlist
  618. # end of partinfo.module
  619. local.prefaceinfo.attrib = empty
  620. prefaceinfo.role.attrib = role.attrib
  621. prefaceinfo = element prefaceinfo { prefaceinfo.attlist, info.class+ }
  622. # end of prefaceinfo.element
  623. prefaceinfo.attlist &=
  624. common.attrib, prefaceinfo.role.attrib, local.prefaceinfo.attrib
  625. # end of prefaceinfo.attlist
  626. # end of prefaceinfo.module
  627. local.refentryinfo.attrib = empty
  628. refentryinfo.role.attrib = role.attrib
  629. refentryinfo =
  630. element refentryinfo { refentryinfo.attlist, info.class+ }
  631. # end of refentryinfo.element
  632. refentryinfo.attlist &=
  633. common.attrib, refentryinfo.role.attrib, local.refentryinfo.attrib
  634. # end of refentryinfo.attlist
  635. # end of refentryinfo.module
  636. local.refsectioninfo.attrib = empty
  637. refsectioninfo.role.attrib = role.attrib
  638. refsectioninfo =
  639. element refsectioninfo { refsectioninfo.attlist, info.class+ }
  640. # end of refsectioninfo.element
  641. refsectioninfo.attlist &=
  642. common.attrib, refsectioninfo.role.attrib, local.refsectioninfo.attrib
  643. # end of refsectioninfo.attlist
  644. # end of refsectioninfo.module
  645. local.refsect1info.attrib = empty
  646. refsect1info.role.attrib = role.attrib
  647. refsect1info =
  648. element refsect1info { refsect1info.attlist, info.class+ }
  649. # end of refsect1info.element
  650. refsect1info.attlist &=
  651. common.attrib, refsect1info.role.attrib, local.refsect1info.attrib
  652. # end of refsect1info.attlist
  653. # end of refsect1info.module
  654. local.refsect2info.attrib = empty
  655. refsect2info.role.attrib = role.attrib
  656. refsect2info =
  657. element refsect2info { refsect2info.attlist, info.class+ }
  658. # end of refsect2info.element
  659. refsect2info.attlist &=
  660. common.attrib, refsect2info.role.attrib, local.refsect2info.attrib
  661. # end of refsect2info.attlist
  662. # end of refsect2info.module
  663. local.refsect3info.attrib = empty
  664. refsect3info.role.attrib = role.attrib
  665. refsect3info =
  666. element refsect3info { refsect3info.attlist, info.class+ }
  667. # end of refsect3info.element
  668. refsect3info.attlist &=
  669. common.attrib, refsect3info.role.attrib, local.refsect3info.attrib
  670. # end of refsect3info.attlist
  671. # end of refsect3info.module
  672. local.refsynopsisdivinfo.attrib = empty
  673. refsynopsisdivinfo.role.attrib = role.attrib
  674. refsynopsisdivinfo =
  675. element refsynopsisdivinfo { refsynopsisdivinfo.attlist, info.class+ }
  676. # end of refsynopsisdivinfo.element
  677. refsynopsisdivinfo.attlist &=
  678. common.attrib,
  679. refsynopsisdivinfo.role.attrib,
  680. local.refsynopsisdivinfo.attrib
  681. # end of refsynopsisdivinfo.attlist
  682. # end of refsynopsisdivinfo.module
  683. local.referenceinfo.attrib = empty
  684. referenceinfo.role.attrib = role.attrib
  685. referenceinfo =
  686. element referenceinfo { referenceinfo.attlist, info.class+ }
  687. # end of referenceinfo.element
  688. referenceinfo.attlist &=
  689. common.attrib, referenceinfo.role.attrib, local.referenceinfo.attrib
  690. # end of referenceinfo.attlist
  691. # end of referenceinfo.module
  692. local.sect1info.attrib = empty
  693. sect1info.role.attrib = role.attrib
  694. sect1info = element sect1info { sect1info.attlist, info.class+ }
  695. # end of sect1info.element
  696. sect1info.attlist &=
  697. common.attrib, sect1info.role.attrib, local.sect1info.attrib
  698. # end of sect1info.attlist
  699. local.sect2info.attrib = empty
  700. sect2info.role.attrib = role.attrib
  701. sect2info = element sect2info { sect2info.attlist, info.class+ }
  702. # end of sect2info.element
  703. sect2info.attlist &=
  704. common.attrib, sect2info.role.attrib, local.sect2info.attrib
  705. # end of sect2info.attlist
  706. local.sect3info.attrib = empty
  707. sect3info.role.attrib = role.attrib
  708. sect3info = element sect3info { sect3info.attlist, info.class+ }
  709. # end of sect3info.element
  710. sect3info.attlist &=
  711. common.attrib, sect3info.role.attrib, local.sect3info.attrib
  712. # end of sect3info.attlist
  713. local.sect4info.attrib = empty
  714. sect4info.role.attrib = role.attrib
  715. sect4info = element sect4info { sect4info.attlist, info.class+ }
  716. # end of sect4info.element
  717. sect4info.attlist &=
  718. common.attrib, sect4info.role.attrib, local.sect4info.attrib
  719. # end of sect4info.attlist
  720. local.sect5info.attrib = empty
  721. sect5info.role.attrib = role.attrib
  722. sect5info = element sect5info { sect5info.attlist, info.class+ }
  723. # end of sect5info.element
  724. sect5info.attlist &=
  725. common.attrib, sect5info.role.attrib, local.sect5info.attrib
  726. # end of sect5info.attlist
  727. # ......................................................................
  728. # Section (parallel to Sect*) .........................................
  729. local.section.attrib = empty
  730. section.role.attrib = role.attrib
  731. section =
  732. element section {
  733. section.attlist,
  734. sectioninfo?,
  735. sect.title.content,
  736. nav.class*,
  737. ((divcomponent.mix+,
  738. (refentry.class* | section.class* | simplesect*))
  739. | refentry.class+
  740. | section.class+
  741. | simplesect+),
  742. nav.class*
  743. }
  744. # end of section.element
  745. section.attlist &=
  746. label.attrib,
  747. status.attrib,
  748. common.attrib,
  749. section.role.attrib,
  750. local.section.attrib
  751. # end of section.attlist
  752. # end of section.module
  753. sectioninfo.role.attrib = role.attrib
  754. local.sectioninfo.attrib = empty
  755. sectioninfo = element sectioninfo { sectioninfo.attlist, info.class+ }
  756. # end of sectioninfo.element
  757. sectioninfo.attlist &=
  758. common.attrib, sectioninfo.role.attrib, local.sectioninfo.attrib
  759. # end of sectioninfo.attlist
  760. # end of sectioninfo.module
  761. # end of section.content.module
  762. # ......................................................................
  763. # Sect1, Sect2, Sect3, Sect4, Sect5 ....................................
  764. local.sect1.attrib = empty
  765. sect1.role.attrib = role.attrib
  766. sect1 =
  767. element sect1 {
  768. sect1.attlist,
  769. sect1info?,
  770. sect.title.content,
  771. nav.class*,
  772. ((divcomponent.mix+, (refentry.class* | sect2* | simplesect*))
  773. | refentry.class+
  774. | sect2+
  775. | simplesect+),
  776. nav.class*
  777. }
  778. # end of sect1.element
  779. # Renderas: Indicates the format in which the heading should
  780. # appear
  781. sect1.attlist &=
  782. attribute renderas { "sect2" | "sect3" | "sect4" | "sect5" }?,
  783. label.attrib,
  784. status.attrib,
  785. common.attrib,
  786. sect1.role.attrib,
  787. local.sect1.attrib
  788. # end of sect1.attlist
  789. # end of sect1.module
  790. local.sect2.attrib = empty
  791. sect2.role.attrib = role.attrib
  792. sect2 =
  793. element sect2 {
  794. sect2.attlist,
  795. sect2info?,
  796. sect.title.content,
  797. nav.class*,
  798. ((divcomponent.mix+, (refentry.class* | sect3* | simplesect*))
  799. | refentry.class+
  800. | sect3+
  801. | simplesect+),
  802. nav.class*
  803. }
  804. # end of sect2.element
  805. # Renderas: Indicates the format in which the heading should
  806. # appear
  807. sect2.attlist &=
  808. attribute renderas { "sect1" | "sect3" | "sect4" | "sect5" }?,
  809. label.attrib,
  810. status.attrib,
  811. common.attrib,
  812. sect2.role.attrib,
  813. local.sect2.attrib
  814. # end of sect2.attlist
  815. # end of sect2.module
  816. local.sect3.attrib = empty
  817. sect3.role.attrib = role.attrib
  818. sect3 =
  819. element sect3 {
  820. sect3.attlist,
  821. sect3info?,
  822. sect.title.content,
  823. nav.class*,
  824. ((divcomponent.mix+, (refentry.class* | sect4* | simplesect*))
  825. | refentry.class+
  826. | sect4+
  827. | simplesect+),
  828. nav.class*
  829. }
  830. # end of sect3.element
  831. # Renderas: Indicates the format in which the heading should
  832. # appear
  833. sect3.attlist &=
  834. attribute renderas { "sect1" | "sect2" | "sect4" | "sect5" }?,
  835. label.attrib,
  836. status.attrib,
  837. common.attrib,
  838. sect3.role.attrib,
  839. local.sect3.attrib
  840. # end of sect3.attlist
  841. # end of sect3.module
  842. local.sect4.attrib = empty
  843. sect4.role.attrib = role.attrib
  844. sect4 =
  845. element sect4 {
  846. sect4.attlist,
  847. sect4info?,
  848. sect.title.content,
  849. nav.class*,
  850. ((divcomponent.mix+, (refentry.class* | sect5* | simplesect*))
  851. | refentry.class+
  852. | sect5+
  853. | simplesect+),
  854. nav.class*
  855. }
  856. # end of sect4.element
  857. # Renderas: Indicates the format in which the heading should
  858. # appear
  859. sect4.attlist &=
  860. attribute renderas { "sect1" | "sect2" | "sect3" | "sect5" }?,
  861. label.attrib,
  862. status.attrib,
  863. common.attrib,
  864. sect4.role.attrib,
  865. local.sect4.attrib
  866. # end of sect4.attlist
  867. # end of sect4.module
  868. local.sect5.attrib = empty
  869. sect5.role.attrib = role.attrib
  870. sect5 =
  871. element sect5 {
  872. sect5.attlist,
  873. sect5info?,
  874. sect.title.content,
  875. nav.class*,
  876. ((divcomponent.mix+, (refentry.class* | simplesect*))
  877. | refentry.class+
  878. | simplesect+),
  879. nav.class*
  880. }
  881. # end of sect5.element
  882. # Renderas: Indicates the format in which the heading should
  883. # appear
  884. sect5.attlist &=
  885. attribute renderas { "sect1" | "sect2" | "sect3" | "sect4" }?,
  886. label.attrib,
  887. status.attrib,
  888. common.attrib,
  889. sect5.role.attrib,
  890. local.sect5.attrib
  891. # end of sect5.attlist
  892. # end of sect5.module
  893. local.simplesect.attrib = empty
  894. simplesect.role.attrib = role.attrib
  895. simplesect =
  896. element simplesect {
  897. simplesect.attlist, sect.title.content, divcomponent.mix+
  898. }
  899. # end of simplesect.element
  900. simplesect.attlist &=
  901. common.attrib, simplesect.role.attrib, local.simplesect.attrib
  902. # end of simplesect.attlist
  903. # end of simplesect.module
  904. # ......................................................................
  905. # Bibliography .........................................................
  906. local.bibliography.attrib = empty
  907. bibliography.role.attrib = role.attrib
  908. bibliography =
  909. element bibliography {
  910. bibliography.attlist,
  911. bibliographyinfo?,
  912. bookcomponent.title.content?,
  913. component.mix*,
  914. (bibliodiv+ | (biblioentry | bibliomixed)+)
  915. }
  916. # end of bibliography.element
  917. bibliography.attlist &=
  918. status.attrib,
  919. common.attrib,
  920. bibliography.role.attrib,
  921. local.bibliography.attrib
  922. # end of bibliography.attlist
  923. # end of bibliography.module
  924. local.bibliodiv.attrib = empty
  925. bibliodiv.role.attrib = role.attrib
  926. bibliodiv =
  927. element bibliodiv {
  928. bibliodiv.attlist,
  929. sect.title.content?,
  930. component.mix*,
  931. (biblioentry | bibliomixed)+
  932. }
  933. # end of bibliodiv.element
  934. bibliodiv.attlist &=
  935. status.attrib,
  936. common.attrib,
  937. bibliodiv.role.attrib,
  938. local.bibliodiv.attrib
  939. # end of bibliodiv.attlist
  940. # end of bibliodiv.module
  941. # end of bibliography.content.module
  942. # ......................................................................
  943. # Glossary .............................................................
  944. local.glossary.attrib = empty
  945. glossary.role.attrib = role.attrib
  946. glossary =
  947. element glossary {
  948. glossary.attlist,
  949. glossaryinfo?,
  950. bookcomponent.title.content?,
  951. component.mix*,
  952. (glossdiv+ | glossentry+),
  953. bibliography?
  954. }
  955. # end of glossary.element
  956. glossary.attlist &=
  957. status.attrib,
  958. common.attrib,
  959. glossary.role.attrib,
  960. local.glossary.attrib
  961. # end of glossary.attlist
  962. # end of glossary.module
  963. local.glossdiv.attrib = empty
  964. glossdiv.role.attrib = role.attrib
  965. glossdiv =
  966. element glossdiv {
  967. glossdiv.attlist, sect.title.content, component.mix*, glossentry+
  968. }
  969. # end of glossdiv.element
  970. glossdiv.attlist &=
  971. status.attrib,
  972. common.attrib,
  973. glossdiv.role.attrib,
  974. local.glossdiv.attrib
  975. # end of glossdiv.attlist
  976. # end of glossdiv.module
  977. # end of glossary.content.module
  978. # ......................................................................
  979. # Index and SetIndex ...................................................
  980. local.indexes.attrib = empty
  981. indexes.role.attrib = role.attrib
  982. index =
  983. element index {
  984. index.attlist,
  985. indexinfo?,
  986. bookcomponent.title.content?,
  987. component.mix*,
  988. (indexdiv* | indexentry*)
  989. }
  990. # end of index.element
  991. index.attlist &=
  992. common.attrib, indexes.role.attrib, local.indexes.attrib
  993. # end of index.attlist
  994. setindex =
  995. element setindex {
  996. setindex.attlist,
  997. setindexinfo?,
  998. bookcomponent.title.content?,
  999. component.mix*,
  1000. (indexdiv* | indexentry*)
  1001. }
  1002. # end of setindex.element
  1003. setindex.attlist &=
  1004. common.attrib, indexes.role.attrib, local.indexes.attrib
  1005. # end of setindex.attlist
  1006. # end of indexes.module
  1007. # SegmentedList in this content is useful for marking up permuted
  1008. # indices.
  1009. local.indexdiv.attrib = empty
  1010. indexdiv.role.attrib = role.attrib
  1011. indexdiv =
  1012. element indexdiv {
  1013. indexdiv.attlist,
  1014. sect.title.content?,
  1015. (indexdivcomponent.mix*, (indexentry+ | segmentedlist))
  1016. }
  1017. # end of indexdiv.element
  1018. indexdiv.attlist &=
  1019. common.attrib, indexdiv.role.attrib, local.indexdiv.attrib
  1020. # end of indexdiv.attlist
  1021. # end of indexdiv.module
  1022. # Index entries appear in the index, not the text.
  1023. local.indexentry.attrib = empty
  1024. indexentry.role.attrib = role.attrib
  1025. indexentry =
  1026. element indexentry {
  1027. indexentry.attlist,
  1028. primaryie,
  1029. (seeie | seealsoie)*,
  1030. (secondaryie, (seeie | seealsoie | tertiaryie)*)*
  1031. }
  1032. # end of indexentry.element
  1033. indexentry.attlist &=
  1034. common.attrib, indexentry.role.attrib, local.indexentry.attrib
  1035. # end of indexentry.attlist
  1036. # end of indexentry.module
  1037. local.primsecterie.attrib = empty
  1038. primsecterie.role.attrib = role.attrib
  1039. primaryie = element primaryie { primaryie.attlist, ndxterm.char.mix* }
  1040. # end of primaryie.element
  1041. # to IndexTerms that these entries represent
  1042. primaryie.attlist &=
  1043. linkends.attrib,
  1044. common.attrib,
  1045. primsecterie.role.attrib,
  1046. local.primsecterie.attrib
  1047. # end of primaryie.attlist
  1048. secondaryie =
  1049. element secondaryie { secondaryie.attlist, ndxterm.char.mix* }
  1050. # end of secondaryie.element
  1051. # to IndexTerms that these entries represent
  1052. secondaryie.attlist &=
  1053. linkends.attrib,
  1054. common.attrib,
  1055. primsecterie.role.attrib,
  1056. local.primsecterie.attrib
  1057. # end of secondaryie.attlist
  1058. tertiaryie =
  1059. element tertiaryie { tertiaryie.attlist, ndxterm.char.mix* }
  1060. # end of tertiaryie.element
  1061. # to IndexTerms that these entries represent
  1062. tertiaryie.attlist &=
  1063. linkends.attrib,
  1064. common.attrib,
  1065. primsecterie.role.attrib,
  1066. local.primsecterie.attrib
  1067. # end of tertiaryie.attlist
  1068. # end of primsecterie.module
  1069. local.seeie.attrib = empty
  1070. seeie.role.attrib = role.attrib
  1071. seeie = element seeie { seeie.attlist, ndxterm.char.mix* }
  1072. # end of seeie.element
  1073. # to IndexEntry to look up
  1074. seeie.attlist &=
  1075. linkend.attrib, common.attrib, seeie.role.attrib, local.seeie.attrib
  1076. # end of seeie.attlist
  1077. # end of seeie.module
  1078. local.seealsoie.attrib = empty
  1079. seealsoie.role.attrib = role.attrib
  1080. seealsoie = element seealsoie { seealsoie.attlist, ndxterm.char.mix* }
  1081. # end of seealsoie.element
  1082. # to related IndexEntries
  1083. seealsoie.attlist &=
  1084. linkends.attrib,
  1085. common.attrib,
  1086. seealsoie.role.attrib,
  1087. local.seealsoie.attrib
  1088. # end of seealsoie.attlist
  1089. # end of seealsoie.module
  1090. # end of index.content.module
  1091. # ......................................................................
  1092. # RefEntry .............................................................
  1093. local.refentry.attrib = empty
  1094. refentry.role.attrib = role.attrib
  1095. refentry =
  1096. element refentry {
  1097. refentry.attlist,
  1098. beginpage?,
  1099. ndxterm.class*,
  1100. refentryinfo?,
  1101. refmeta?,
  1102. (remark | link.char.class)*,
  1103. refnamediv,
  1104. refsynopsisdiv?,
  1105. (refsect1+ | refsection+)
  1106. }
  1107. # end of refentry.element
  1108. refentry.attlist &=
  1109. status.attrib,
  1110. common.attrib,
  1111. refentry.role.attrib,
  1112. local.refentry.attrib
  1113. # end of refentry.attlist
  1114. # end of refentry.module
  1115. local.refmeta.attrib = empty
  1116. refmeta.role.attrib = role.attrib
  1117. refmeta =
  1118. element refmeta {
  1119. refmeta.attlist,
  1120. ndxterm.class*,
  1121. refentrytitle,
  1122. manvolnum?,
  1123. refmiscinfo*,
  1124. ndxterm.class*
  1125. }
  1126. # end of refmeta.element
  1127. refmeta.attlist &=
  1128. common.attrib, refmeta.role.attrib, local.refmeta.attrib
  1129. # end of refmeta.attlist
  1130. # end of refmeta.module
  1131. local.refmiscinfo.attrib = empty
  1132. refmiscinfo.role.attrib = role.attrib
  1133. refmiscinfo =
  1134. element refmiscinfo { refmiscinfo.attlist, docinfo.char.mix* }
  1135. # end of refmiscinfo.element
  1136. # Class: Freely assignable parameter; no default
  1137. refmiscinfo.attlist &=
  1138. attribute class { text }?,
  1139. common.attrib,
  1140. refmiscinfo.role.attrib,
  1141. local.refmiscinfo.attrib
  1142. # end of refmiscinfo.attlist
  1143. # end of refmiscinfo.module
  1144. local.refnamediv.attrib = empty
  1145. refnamediv.role.attrib = role.attrib
  1146. refnamediv =
  1147. element refnamediv {
  1148. refnamediv.attlist,
  1149. refdescriptor?,
  1150. refname+,
  1151. refpurpose,
  1152. refclass*,
  1153. (remark | link.char.class)*
  1154. }
  1155. # end of refnamediv.element
  1156. refnamediv.attlist &=
  1157. common.attrib, refnamediv.role.attrib, local.refnamediv.attrib
  1158. # end of refnamediv.attlist
  1159. # end of refnamediv.module
  1160. local.refdescriptor.attrib = empty
  1161. refdescriptor.role.attrib = role.attrib
  1162. refdescriptor =
  1163. element refdescriptor { refdescriptor.attlist, refname.char.mix* }
  1164. # end of refdescriptor.element
  1165. refdescriptor.attlist &=
  1166. common.attrib, refdescriptor.role.attrib, local.refdescriptor.attrib
  1167. # end of refdescriptor.attlist
  1168. # end of refdescriptor.module
  1169. local.refname.attrib = empty
  1170. refname.role.attrib = role.attrib
  1171. refname = element refname { refname.attlist, refname.char.mix* }
  1172. # end of refname.element
  1173. refname.attlist &=
  1174. common.attrib, refname.role.attrib, local.refname.attrib
  1175. # end of refname.attlist
  1176. # end of refname.module
  1177. local.refpurpose.attrib = empty
  1178. refpurpose.role.attrib = role.attrib
  1179. refpurpose =
  1180. element refpurpose { refpurpose.attlist, refinline.char.mix* }
  1181. # end of refpurpose.element
  1182. refpurpose.attlist &=
  1183. common.attrib, refpurpose.role.attrib, local.refpurpose.attrib
  1184. # end of refpurpose.attlist
  1185. # end of refpurpose.module
  1186. local.refclass.attrib = empty
  1187. refclass.role.attrib = role.attrib
  1188. refclass = element refclass { refclass.attlist, refclass.char.mix* }
  1189. # end of refclass.element
  1190. refclass.attlist &=
  1191. common.attrib, refclass.role.attrib, local.refclass.attrib
  1192. # end of refclass.attlist
  1193. # end of refclass.module
  1194. local.refsynopsisdiv.attrib = empty
  1195. refsynopsisdiv.role.attrib = role.attrib
  1196. refsynopsisdiv =
  1197. element refsynopsisdiv {
  1198. refsynopsisdiv.attlist,
  1199. refsynopsisdivinfo?,
  1200. refsect.title.content?,
  1201. ((refcomponent.mix+, refsect2*) | refsect2+)
  1202. }
  1203. # end of refsynopsisdiv.element
  1204. refsynopsisdiv.attlist &=
  1205. common.attrib, refsynopsisdiv.role.attrib, local.refsynopsisdiv.attrib
  1206. # end of refsynopsisdiv.attlist
  1207. # end of refsynopsisdiv.module
  1208. local.refsection.attrib = empty
  1209. refsection.role.attrib = role.attrib
  1210. refsection =
  1211. element refsection {
  1212. refsection.attlist,
  1213. refsectioninfo?,
  1214. refsect.title.content,
  1215. ((refcomponent.mix+, refsection*) | refsection+)
  1216. }
  1217. # end of refsection.element
  1218. refsection.attlist &=
  1219. status.attrib,
  1220. common.attrib,
  1221. refsection.role.attrib,
  1222. local.refsection.attrib
  1223. # end of refsection.attlist
  1224. # end of refsection.module
  1225. local.refsect1.attrib = empty
  1226. refsect1.role.attrib = role.attrib
  1227. refsect1 =
  1228. element refsect1 {
  1229. refsect1.attlist,
  1230. refsect1info?,
  1231. refsect.title.content,
  1232. ((refcomponent.mix+, refsect2*) | refsect2+)
  1233. }
  1234. # end of refsect1.element
  1235. refsect1.attlist &=
  1236. status.attrib,
  1237. common.attrib,
  1238. refsect1.role.attrib,
  1239. local.refsect1.attrib
  1240. # end of refsect1.attlist
  1241. # end of refsect1.module
  1242. local.refsect2.attrib = empty
  1243. refsect2.role.attrib = role.attrib
  1244. refsect2 =
  1245. element refsect2 {
  1246. refsect2.attlist,
  1247. refsect2info?,
  1248. refsect.title.content,
  1249. ((refcomponent.mix+, refsect3*) | refsect3+)
  1250. }
  1251. # end of refsect2.element
  1252. refsect2.attlist &=
  1253. status.attrib,
  1254. common.attrib,
  1255. refsect2.role.attrib,
  1256. local.refsect2.attrib
  1257. # end of refsect2.attlist
  1258. # end of refsect2.module
  1259. local.refsect3.attrib = empty
  1260. refsect3.role.attrib = role.attrib
  1261. refsect3 =
  1262. element refsect3 {
  1263. refsect3.attlist,
  1264. refsect3info?,
  1265. refsect.title.content,
  1266. refcomponent.mix+
  1267. }
  1268. # end of refsect3.element
  1269. refsect3.attlist &=
  1270. status.attrib,
  1271. common.attrib,
  1272. refsect3.role.attrib,
  1273. local.refsect3.attrib
  1274. # end of refsect3.attlist
  1275. # end of refsect3.module
  1276. # end of refentry.content.module
  1277. # ......................................................................
  1278. # Article ..............................................................
  1279. # An Article is a chapter-level, stand-alone document that is often,
  1280. # but need not be, collected into a Book.
  1281. local.article.attrib = empty
  1282. article.role.attrib = role.attrib
  1283. article =
  1284. element article {
  1285. article.attlist,
  1286. div.title.content?,
  1287. articleinfo?,
  1288. tocchap?,
  1289. lot*,
  1290. bookcomponent.content,
  1291. (nav.class | appendix.class | ackno)*
  1292. }
  1293. # end of article.element
  1294. # Class: Indicates the type of a particular article;
  1295. # all articles have the same structure and general purpose.
  1296. # No default.
  1297. # ParentBook: ID of the enclosing Book
  1298. article.attlist &=
  1299. attribute class {
  1300. "journalarticle"
  1301. | "productsheet"
  1302. | "whitepaper"
  1303. | "techreport"
  1304. | "specification"
  1305. | "faq"
  1306. }?,
  1307. attribute parentbook { xsd:IDREF }?,
  1308. status.attrib,
  1309. common.attrib,
  1310. article.role.attrib,
  1311. local.article.attrib
  1312. # end of article.attlist
  1313. # end of article.module
  1314. # End of DocBook document hierarchy module V4.2 ........................
  1315. # ......................................................................