1 # ......................................................................
3 # DocBook document hierarchy module V4.2 ...............................
5 # File dbhierx.mod .....................................................
7 # Copyright 1992-2002 HaL Computer Systems, Inc.,
8 # O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
9 # Corporation, Norman Walsh, Sun Microsystems, Inc., and the
10 # Organization for the Advancement of Structured Information
13 # $Id: dbhier.rnc,v 1.1 2003/08/30 04:19:27 jjc Exp $
15 # Permission to use, copy, modify and distribute the DocBook DTD
16 # and its accompanying documentation for any purpose and without fee
17 # is hereby granted in perpetuity, provided that the above copyright
18 # notice and this paragraph appear in all copies. The copyright
19 # holders make no representation about the suitability of the DTD for
20 # any purpose. It is provided "as is" without expressed or implied
23 # If you modify the DocBook DTD in any way, except for declaring and
24 # referencing additional sets of general entities and declaring
25 # additional notations, label your DTD as a variant of DocBook. See
26 # the maintenance documentation for more information.
28 # Please direct all questions, bug reports, or suggestions for
29 # changes to the docbook@lists.oasis-open.org mailing list. For more
30 # information, see http://www.oasis-open.org/docbook/.
32 # ......................................................................
34 # This module contains the definitions for the overall document
35 # hierarchies of DocBook documents. It covers computer documentation
36 # manuals and manual fragments, as well as reference entries (such as
37 # man pages) and technical journals or anthologies containing
40 # This module depends on the DocBook information pool module. All
41 # elements and entities referenced but not defined here are assumed
42 # to be defined in the information pool module.
44 # In DTD driver files referring to this module, please use an entity
45 # declaration that uses the public identifier shown below:
47 # <!ENTITY % dbhier PUBLIC
48 # "-//OASIS//ELEMENTS DocBook Document Hierarchy V4.2//EN"
52 # See the documentation for detailed information on the parameter
53 # entity and module scheme used in DocBook, customizing DocBook and
54 # planning for interchange, and changes made since the last release
57 # ......................................................................
59 # Entities for module inclusions .......................................
61 # ......................................................................
63 # Entities for element classes .........................................
65 local.appendix.class = notAllowed
66 appendix.class = appendix | local.appendix.class
67 local.article.class = notAllowed
68 article.class = article | local.article.class
69 local.book.class = notAllowed
70 book.class = book | local.book.class
71 local.chapter.class = notAllowed
72 chapter.class = chapter | local.chapter.class
73 local.index.class = notAllowed
74 index.class = index | setindex | local.index.class
75 local.refentry.class = notAllowed
76 refentry.class = refentry | local.refentry.class
77 local.section.class = notAllowed
78 section.class = section | local.section.class
79 local.nav.class = notAllowed
81 toc | lot | index | glossary | bibliography | local.nav.class
82 # Redeclaration placeholder ............................................
84 # For redeclaring entities that are declared after this point while
85 # retaining their references to the entities that are declared before
88 # ......................................................................
90 # Entities for element mixtures ........................................
92 # The DocBook TC may produce an official forms module for DocBook.
94 # This PE provides the hook by which it can be inserted into the DTD.
95 forms.hook = notAllowed
96 local.divcomponent.mix = notAllowed
111 | local.divcomponent.mix
112 local.refcomponent.mix = notAllowed
126 | local.refcomponent.mix
127 local.indexdivcomponent.mix = notAllowed
128 indexdivcomponent.mix =
141 | local.indexdivcomponent.mix
142 local.refname.char.mix = notAllowed
143 refname.char.mix = text | tech.char.class | local.refname.char.mix
144 local.partcontent.mix = notAllowed
153 | local.partcontent.mix
154 local.refinline.char.mix = notAllowed
166 | local.refinline.char.mix
167 local.refclass.char.mix = notAllowed
168 refclass.char.mix = text | application | local.refclass.char.mix
169 # Redeclaration placeholder 2 ..........................................
171 # For redeclaring entities that are declared after this point while
172 # retaining their references to the entities that are declared before
175 # ......................................................................
177 # Entities for content models ..........................................
178 div.title.content = title, subtitle?, titleabbrev?
179 bookcomponent.title.content = title, subtitle?, titleabbrev?
180 sect.title.content = title, subtitle?, titleabbrev?
181 refsect.title.content = title, subtitle?, titleabbrev?
182 bookcomponent.content =
184 (sect1* | refentry.class* | simplesect* | section.class*))
185 | (sect1+ | refentry.class+ | simplesect+ | section.class+)
186 # ......................................................................
188 # Set and SetInfo ......................................................
189 local.set.attrib = empty
190 set.role.attrib = role.attrib
202 # FPI: SGML formal public identifier
204 attribute fpi { text }?,
212 local.setinfo.attrib = empty
213 setinfo.role.attrib = role.attrib
214 setinfo = element setinfo { setinfo.attlist, info.class+ }
215 # end of setinfo.element
217 # Contents: IDs of the ToC, Books, and SetIndex that comprise
218 # the set, in the order of their appearance
220 attribute contents { xsd:IDREFS }?,
224 # end of setinfo.attlist
226 # end of setinfo.module
228 # end of set.content.module
230 # ......................................................................
232 # Book and BookInfo ....................................................
233 local.book.attrib = empty
234 book.role.attrib = role.attrib
254 # end of book.element
256 # FPI: SGML formal public identifier
258 attribute fpi { text }?,
264 # end of book.attlist
267 local.bookinfo.attrib = empty
268 bookinfo.role.attrib = role.attrib
269 bookinfo = element bookinfo { bookinfo.attlist, info.class+ }
270 # end of bookinfo.element
272 # Contents: IDs of the ToC, LoTs, Prefaces, Parts, Chapters,
273 # Appendixes, References, GLossary, Bibliography, and indexes
274 # comprising the Book, in the order of their appearance
276 attribute contents { xsd:IDREFS }?,
278 bookinfo.role.attrib,
279 local.bookinfo.attrib
280 # end of bookinfo.attlist
282 # end of bookinfo.module
284 # end of book.content.module
286 # ......................................................................
288 # Dedication, ToC, and LoT .............................................
289 local.dedication.attrib = empty
290 dedication.role.attrib = role.attrib
293 dedication.attlist, sect.title.content?, legalnotice.mix+
295 # end of dedication.element
296 dedication.attlist &=
299 dedication.role.attrib,
300 local.dedication.attrib
301 # end of dedication.attlist
303 # end of dedication.module
304 local.colophon.attrib = empty
305 colophon.role.attrib = role.attrib
308 colophon.attlist, sect.title.content?, textobject.mix+
310 # end of colophon.element
314 colophon.role.attrib,
315 local.colophon.attrib
316 # end of colophon.attlist
318 # end of colophon.module
319 local.toc.attrib = empty
320 toc.role.attrib = role.attrib
325 bookcomponent.title.content?,
327 (tocpart | tocchap)*,
332 pagenum.attrib, common.attrib, toc.role.attrib, local.toc.attrib
336 local.tocfront.attrib = empty
337 tocfront.role.attrib = role.attrib
338 tocfront = element tocfront { tocfront.attlist, para.char.mix* }
339 # end of tocfront.element
341 # to element that this entry represents
347 tocfront.role.attrib,
348 local.tocfront.attrib
349 # end of tocfront.attlist
351 # end of tocfront.module
352 local.tocentry.attrib = empty
353 tocentry.role.attrib = role.attrib
354 tocentry = element tocentry { tocentry.attlist, para.char.mix* }
355 # end of tocentry.element
357 # to element that this entry represents
362 tocentry.role.attrib,
363 local.tocentry.attrib
364 # end of tocentry.attlist
366 # end of tocentry.module
367 local.tocpart.attrib = empty
368 tocpart.role.attrib = role.attrib
369 tocpart = element tocpart { tocpart.attlist, tocentry+, tocchap* }
370 # end of tocpart.element
372 common.attrib, tocpart.role.attrib, local.tocpart.attrib
373 # end of tocpart.attlist
375 # end of tocpart.module
376 local.tocchap.attrib = empty
377 tocchap.role.attrib = role.attrib
378 tocchap = element tocchap { tocchap.attlist, tocentry+, toclevel1* }
379 # end of tocchap.element
381 label.attrib, common.attrib, tocchap.role.attrib, local.tocchap.attrib
382 # end of tocchap.attlist
384 # end of tocchap.module
385 local.toclevel1.attrib = empty
386 toclevel1.role.attrib = role.attrib
388 element toclevel1 { toclevel1.attlist, tocentry+, toclevel2* }
389 # end of toclevel1.element
391 common.attrib, toclevel1.role.attrib, local.toclevel1.attrib
392 # end of toclevel1.attlist
394 # end of toclevel1.module
395 local.toclevel2.attrib = empty
396 toclevel2.role.attrib = role.attrib
398 element toclevel2 { toclevel2.attlist, tocentry+, toclevel3* }
399 # end of toclevel2.element
401 common.attrib, toclevel2.role.attrib, local.toclevel2.attrib
402 # end of toclevel2.attlist
404 # end of toclevel2.module
405 local.toclevel3.attrib = empty
406 toclevel3.role.attrib = role.attrib
408 element toclevel3 { toclevel3.attlist, tocentry+, toclevel4* }
409 # end of toclevel3.element
411 common.attrib, toclevel3.role.attrib, local.toclevel3.attrib
412 # end of toclevel3.attlist
414 # end of toclevel3.module
415 local.toclevel4.attrib = empty
416 toclevel4.role.attrib = role.attrib
418 element toclevel4 { toclevel4.attlist, tocentry+, toclevel5* }
419 # end of toclevel4.element
421 common.attrib, toclevel4.role.attrib, local.toclevel4.attrib
422 # end of toclevel4.attlist
424 # end of toclevel4.module
425 local.toclevel5.attrib = empty
426 toclevel5.role.attrib = role.attrib
427 toclevel5 = element toclevel5 { toclevel5.attlist, tocentry+ }
428 # end of toclevel5.element
430 common.attrib, toclevel5.role.attrib, local.toclevel5.attrib
431 # end of toclevel5.attlist
433 # end of toclevel5.module
434 local.tocback.attrib = empty
435 tocback.role.attrib = role.attrib
436 tocback = element tocback { tocback.attlist, para.char.mix* }
437 # end of tocback.element
439 # to element that this entry represents
447 # end of tocback.attlist
449 # end of tocback.module
451 # end of toc.content.module
452 local.lot.attrib = empty
453 lot.role.attrib = role.attrib
456 lot.attlist, beginpage?, bookcomponent.title.content?, lotentry*
460 label.attrib, common.attrib, lot.role.attrib, local.lot.attrib
464 local.lotentry.attrib = empty
465 lotentry.role.attrib = role.attrib
466 lotentry = element lotentry { lotentry.attlist, para.char.mix* }
467 # end of lotentry.element
469 # SrcCredit: Information about the source of the entry,
470 # as for a list of illustrations
472 # linkend: to element that this entry represents
476 attribute srccredit { text }?,
478 lotentry.role.attrib,
479 local.lotentry.attrib
480 # end of lotentry.attlist
482 # end of lotentry.module
484 # end of lot.content.module
486 # ......................................................................
488 # Appendix, Chapter, Part, Preface, Reference, PartIntro ...............
489 local.appendix.attrib = empty
490 appendix.role.attrib = role.attrib
496 bookcomponent.title.content,
499 bookcomponent.content,
502 # end of appendix.element
507 appendix.role.attrib,
508 local.appendix.attrib
509 # end of appendix.attlist
511 # end of appendix.module
512 local.chapter.attrib = empty
513 chapter.role.attrib = role.attrib
519 bookcomponent.title.content,
522 bookcomponent.content,
525 # end of chapter.element
532 # end of chapter.attlist
534 # end of chapter.module
536 # Note that Part was to have its content model reduced in V4.2. This
537 # change will not be made after all.
538 local.part.attrib = empty
539 part.role.attrib = role.attrib
545 bookcomponent.title.content,
549 # end of part.element
556 # end of part.attlist
558 # ELEMENT PartIntro (defined below)
561 local.preface.attrib = empty
562 preface.role.attrib = role.attrib
568 bookcomponent.title.content,
571 bookcomponent.content,
574 # end of preface.element
580 # end of preface.attlist
582 # end of preface.module
583 local.reference.attrib = empty
584 reference.role.attrib = role.attrib
590 bookcomponent.title.content,
594 # end of reference.element
599 reference.role.attrib,
600 local.reference.attrib
601 # end of reference.attlist
603 # ELEMENT PartIntro (defined below)
605 # end of reference.module
606 local.partintro.attrib = empty
607 partintro.role.attrib = role.attrib
610 partintro.attlist, div.title.content?, bookcomponent.content
612 # end of partintro.element
616 partintro.role.attrib,
617 local.partintro.attrib
618 # end of partintro.attlist
620 # end of partintro.module
622 # ......................................................................
624 # Other Info elements ..................................................
625 local.appendixinfo.attrib = empty
626 appendixinfo.role.attrib = role.attrib
628 element appendixinfo { appendixinfo.attlist, info.class+ }
629 # end of appendixinfo.element
630 appendixinfo.attlist &=
631 common.attrib, appendixinfo.role.attrib, local.appendixinfo.attrib
632 # end of appendixinfo.attlist
634 # end of appendixinfo.module
635 local.bibliographyinfo.attrib = empty
636 bibliographyinfo.role.attrib = role.attrib
638 element bibliographyinfo { bibliographyinfo.attlist, info.class+ }
639 # end of bibliographyinfo.element
640 bibliographyinfo.attlist &=
642 bibliographyinfo.role.attrib,
643 local.bibliographyinfo.attrib
644 # end of bibliographyinfo.attlist
646 # end of bibliographyinfo.module
647 local.chapterinfo.attrib = empty
648 chapterinfo.role.attrib = role.attrib
649 chapterinfo = element chapterinfo { chapterinfo.attlist, info.class+ }
650 # end of chapterinfo.element
651 chapterinfo.attlist &=
652 common.attrib, chapterinfo.role.attrib, local.chapterinfo.attrib
653 # end of chapterinfo.attlist
655 # end of chapterinfo.module
656 local.glossaryinfo.attrib = empty
657 glossaryinfo.role.attrib = role.attrib
659 element glossaryinfo { glossaryinfo.attlist, info.class+ }
660 # end of glossaryinfo.element
661 glossaryinfo.attlist &=
662 common.attrib, glossaryinfo.role.attrib, local.glossaryinfo.attrib
663 # end of glossaryinfo.attlist
665 # end of glossaryinfo.module
666 local.indexinfo.attrib = empty
667 indexinfo.role.attrib = role.attrib
668 indexinfo = element indexinfo { indexinfo.attlist, info.class+ }
669 # end of indexinfo.element
671 common.attrib, indexinfo.role.attrib, local.indexinfo.attrib
672 # end of indexinfo.attlist
674 # end of indexinfo.module
675 local.setindexinfo.attrib = empty
676 setindexinfo.role.attrib = role.attrib
678 element setindexinfo { setindexinfo.attlist, info.class+ }
679 # end of setindexinfo.element
680 setindexinfo.attlist &=
681 common.attrib, setindexinfo.role.attrib, local.setindexinfo.attrib
682 # end of setindexinfo.attlist
684 # end of setindexinfo.module
685 local.partinfo.attrib = empty
686 partinfo.role.attrib = role.attrib
687 partinfo = element partinfo { partinfo.attlist, info.class+ }
688 # end of partinfo.element
690 common.attrib, partinfo.role.attrib, local.partinfo.attrib
691 # end of partinfo.attlist
693 # end of partinfo.module
694 local.prefaceinfo.attrib = empty
695 prefaceinfo.role.attrib = role.attrib
696 prefaceinfo = element prefaceinfo { prefaceinfo.attlist, info.class+ }
697 # end of prefaceinfo.element
698 prefaceinfo.attlist &=
699 common.attrib, prefaceinfo.role.attrib, local.prefaceinfo.attrib
700 # end of prefaceinfo.attlist
702 # end of prefaceinfo.module
703 local.refentryinfo.attrib = empty
704 refentryinfo.role.attrib = role.attrib
706 element refentryinfo { refentryinfo.attlist, info.class+ }
707 # end of refentryinfo.element
708 refentryinfo.attlist &=
709 common.attrib, refentryinfo.role.attrib, local.refentryinfo.attrib
710 # end of refentryinfo.attlist
712 # end of refentryinfo.module
713 local.refsectioninfo.attrib = empty
714 refsectioninfo.role.attrib = role.attrib
716 element refsectioninfo { refsectioninfo.attlist, info.class+ }
717 # end of refsectioninfo.element
718 refsectioninfo.attlist &=
719 common.attrib, refsectioninfo.role.attrib, local.refsectioninfo.attrib
720 # end of refsectioninfo.attlist
722 # end of refsectioninfo.module
723 local.refsect1info.attrib = empty
724 refsect1info.role.attrib = role.attrib
726 element refsect1info { refsect1info.attlist, info.class+ }
727 # end of refsect1info.element
728 refsect1info.attlist &=
729 common.attrib, refsect1info.role.attrib, local.refsect1info.attrib
730 # end of refsect1info.attlist
732 # end of refsect1info.module
733 local.refsect2info.attrib = empty
734 refsect2info.role.attrib = role.attrib
736 element refsect2info { refsect2info.attlist, info.class+ }
737 # end of refsect2info.element
738 refsect2info.attlist &=
739 common.attrib, refsect2info.role.attrib, local.refsect2info.attrib
740 # end of refsect2info.attlist
742 # end of refsect2info.module
743 local.refsect3info.attrib = empty
744 refsect3info.role.attrib = role.attrib
746 element refsect3info { refsect3info.attlist, info.class+ }
747 # end of refsect3info.element
748 refsect3info.attlist &=
749 common.attrib, refsect3info.role.attrib, local.refsect3info.attrib
750 # end of refsect3info.attlist
752 # end of refsect3info.module
753 local.refsynopsisdivinfo.attrib = empty
754 refsynopsisdivinfo.role.attrib = role.attrib
756 element refsynopsisdivinfo { refsynopsisdivinfo.attlist, info.class+ }
757 # end of refsynopsisdivinfo.element
758 refsynopsisdivinfo.attlist &=
760 refsynopsisdivinfo.role.attrib,
761 local.refsynopsisdivinfo.attrib
762 # end of refsynopsisdivinfo.attlist
764 # end of refsynopsisdivinfo.module
765 local.referenceinfo.attrib = empty
766 referenceinfo.role.attrib = role.attrib
768 element referenceinfo { referenceinfo.attlist, info.class+ }
769 # end of referenceinfo.element
770 referenceinfo.attlist &=
771 common.attrib, referenceinfo.role.attrib, local.referenceinfo.attrib
772 # end of referenceinfo.attlist
774 # end of referenceinfo.module
775 local.sect1info.attrib = empty
776 sect1info.role.attrib = role.attrib
777 sect1info = element sect1info { sect1info.attlist, info.class+ }
778 # end of sect1info.element
780 common.attrib, sect1info.role.attrib, local.sect1info.attrib
781 # end of sect1info.attlist
782 local.sect2info.attrib = empty
783 sect2info.role.attrib = role.attrib
784 sect2info = element sect2info { sect2info.attlist, info.class+ }
785 # end of sect2info.element
787 common.attrib, sect2info.role.attrib, local.sect2info.attrib
788 # end of sect2info.attlist
789 local.sect3info.attrib = empty
790 sect3info.role.attrib = role.attrib
791 sect3info = element sect3info { sect3info.attlist, info.class+ }
792 # end of sect3info.element
794 common.attrib, sect3info.role.attrib, local.sect3info.attrib
795 # end of sect3info.attlist
796 local.sect4info.attrib = empty
797 sect4info.role.attrib = role.attrib
798 sect4info = element sect4info { sect4info.attlist, info.class+ }
799 # end of sect4info.element
801 common.attrib, sect4info.role.attrib, local.sect4info.attrib
802 # end of sect4info.attlist
803 local.sect5info.attrib = empty
804 sect5info.role.attrib = role.attrib
805 sect5info = element sect5info { sect5info.attlist, info.class+ }
806 # end of sect5info.element
808 common.attrib, sect5info.role.attrib, local.sect5info.attrib
809 # end of sect5info.attlist
811 # ......................................................................
813 # Section (parallel to Sect*) .........................................
814 local.section.attrib = empty
815 section.role.attrib = role.attrib
823 (refentry.class* | section.class* | simplesect*))
829 # end of section.element
836 # end of section.attlist
838 # end of section.module
839 sectioninfo.role.attrib = role.attrib
840 local.sectioninfo.attrib = empty
841 sectioninfo = element sectioninfo { sectioninfo.attlist, info.class+ }
842 # end of sectioninfo.element
843 sectioninfo.attlist &=
844 common.attrib, sectioninfo.role.attrib, local.sectioninfo.attrib
845 # end of sectioninfo.attlist
847 # end of sectioninfo.module
849 # end of section.content.module
851 # ......................................................................
853 # Sect1, Sect2, Sect3, Sect4, Sect5 ....................................
854 local.sect1.attrib = empty
855 sect1.role.attrib = role.attrib
862 ((divcomponent.mix+, (refentry.class* | sect2* | simplesect*))
868 # end of sect1.element
870 # Renderas: Indicates the format in which the heading should
873 attribute renderas { "sect2" | "sect3" | "sect4" | "sect5" }?,
879 # end of sect1.attlist
881 # end of sect1.module
882 local.sect2.attrib = empty
883 sect2.role.attrib = role.attrib
890 ((divcomponent.mix+, (refentry.class* | sect3* | simplesect*))
896 # end of sect2.element
898 # Renderas: Indicates the format in which the heading should
901 attribute renderas { "sect1" | "sect3" | "sect4" | "sect5" }?,
907 # end of sect2.attlist
909 # end of sect2.module
910 local.sect3.attrib = empty
911 sect3.role.attrib = role.attrib
918 ((divcomponent.mix+, (refentry.class* | sect4* | simplesect*))
924 # end of sect3.element
926 # Renderas: Indicates the format in which the heading should
929 attribute renderas { "sect1" | "sect2" | "sect4" | "sect5" }?,
935 # end of sect3.attlist
937 # end of sect3.module
938 local.sect4.attrib = empty
939 sect4.role.attrib = role.attrib
946 ((divcomponent.mix+, (refentry.class* | sect5* | simplesect*))
952 # end of sect4.element
954 # Renderas: Indicates the format in which the heading should
957 attribute renderas { "sect1" | "sect2" | "sect3" | "sect5" }?,
963 # end of sect4.attlist
965 # end of sect4.module
966 local.sect5.attrib = empty
967 sect5.role.attrib = role.attrib
974 ((divcomponent.mix+, (refentry.class* | simplesect*))
979 # end of sect5.element
981 # Renderas: Indicates the format in which the heading should
984 attribute renderas { "sect1" | "sect2" | "sect3" | "sect4" }?,
990 # end of sect5.attlist
992 # end of sect5.module
993 local.simplesect.attrib = empty
994 simplesect.role.attrib = role.attrib
997 simplesect.attlist, sect.title.content, divcomponent.mix+
999 # end of simplesect.element
1000 simplesect.attlist &=
1001 common.attrib, simplesect.role.attrib, local.simplesect.attrib
1002 # end of simplesect.attlist
1004 # end of simplesect.module
1006 # ......................................................................
1008 # Bibliography .........................................................
1009 local.bibliography.attrib = empty
1010 bibliography.role.attrib = role.attrib
1012 element bibliography {
1013 bibliography.attlist,
1015 bookcomponent.title.content?,
1017 (bibliodiv+ | (biblioentry | bibliomixed)+)
1019 # end of bibliography.element
1020 bibliography.attlist &=
1023 bibliography.role.attrib,
1024 local.bibliography.attrib
1025 # end of bibliography.attlist
1027 # end of bibliography.module
1028 local.bibliodiv.attrib = empty
1029 bibliodiv.role.attrib = role.attrib
1033 sect.title.content?,
1035 (biblioentry | bibliomixed)+
1037 # end of bibliodiv.element
1038 bibliodiv.attlist &=
1041 bibliodiv.role.attrib,
1042 local.bibliodiv.attrib
1043 # end of bibliodiv.attlist
1045 # end of bibliodiv.module
1047 # end of bibliography.content.module
1049 # ......................................................................
1051 # Glossary .............................................................
1052 local.glossary.attrib = empty
1053 glossary.role.attrib = role.attrib
1058 bookcomponent.title.content?,
1060 (glossdiv+ | glossentry+),
1063 # end of glossary.element
1067 glossary.role.attrib,
1068 local.glossary.attrib
1069 # end of glossary.attlist
1071 # end of glossary.module
1072 local.glossdiv.attrib = empty
1073 glossdiv.role.attrib = role.attrib
1076 glossdiv.attlist, sect.title.content, component.mix*, glossentry+
1078 # end of glossdiv.element
1082 glossdiv.role.attrib,
1083 local.glossdiv.attrib
1084 # end of glossdiv.attlist
1086 # end of glossdiv.module
1088 # end of glossary.content.module
1090 # ......................................................................
1092 # Index and SetIndex ...................................................
1093 local.indexes.attrib = empty
1094 indexes.role.attrib = role.attrib
1099 bookcomponent.title.content?,
1101 (indexdiv* | indexentry*)
1103 # end of index.element
1105 common.attrib, indexes.role.attrib, local.indexes.attrib
1106 # end of index.attlist
1111 bookcomponent.title.content?,
1113 (indexdiv* | indexentry*)
1115 # end of setindex.element
1117 common.attrib, indexes.role.attrib, local.indexes.attrib
1118 # end of setindex.attlist
1120 # end of indexes.module
1122 # SegmentedList in this content is useful for marking up permuted
1124 local.indexdiv.attrib = empty
1125 indexdiv.role.attrib = role.attrib
1129 sect.title.content?,
1130 (indexdivcomponent.mix*, (indexentry+ | segmentedlist))
1132 # end of indexdiv.element
1134 common.attrib, indexdiv.role.attrib, local.indexdiv.attrib
1135 # end of indexdiv.attlist
1137 # end of indexdiv.module
1139 # Index entries appear in the index, not the text.
1140 local.indexentry.attrib = empty
1141 indexentry.role.attrib = role.attrib
1143 element indexentry {
1146 (seeie | seealsoie)*,
1147 (secondaryie, (seeie | seealsoie | tertiaryie)*)*
1149 # end of indexentry.element
1150 indexentry.attlist &=
1151 common.attrib, indexentry.role.attrib, local.indexentry.attrib
1152 # end of indexentry.attlist
1154 # end of indexentry.module
1155 local.primsecterie.attrib = empty
1156 primsecterie.role.attrib = role.attrib
1157 primaryie = element primaryie { primaryie.attlist, ndxterm.char.mix* }
1158 # end of primaryie.element
1160 # to IndexTerms that these entries represent
1161 primaryie.attlist &=
1164 primsecterie.role.attrib,
1165 local.primsecterie.attrib
1166 # end of primaryie.attlist
1168 element secondaryie { secondaryie.attlist, ndxterm.char.mix* }
1169 # end of secondaryie.element
1171 # to IndexTerms that these entries represent
1172 secondaryie.attlist &=
1175 primsecterie.role.attrib,
1176 local.primsecterie.attrib
1177 # end of secondaryie.attlist
1179 element tertiaryie { tertiaryie.attlist, ndxterm.char.mix* }
1180 # end of tertiaryie.element
1182 # to IndexTerms that these entries represent
1183 tertiaryie.attlist &=
1186 primsecterie.role.attrib,
1187 local.primsecterie.attrib
1188 # end of tertiaryie.attlist
1190 # end of primsecterie.module
1191 local.seeie.attrib = empty
1192 seeie.role.attrib = role.attrib
1193 seeie = element seeie { seeie.attlist, ndxterm.char.mix* }
1194 # end of seeie.element
1196 # to IndexEntry to look up
1198 linkend.attrib, common.attrib, seeie.role.attrib, local.seeie.attrib
1199 # end of seeie.attlist
1201 # end of seeie.module
1202 local.seealsoie.attrib = empty
1203 seealsoie.role.attrib = role.attrib
1204 seealsoie = element seealsoie { seealsoie.attlist, ndxterm.char.mix* }
1205 # end of seealsoie.element
1207 # to related IndexEntries
1208 seealsoie.attlist &=
1211 seealsoie.role.attrib,
1212 local.seealsoie.attrib
1213 # end of seealsoie.attlist
1215 # end of seealsoie.module
1217 # end of index.content.module
1219 # ......................................................................
1221 # RefEntry .............................................................
1222 local.refentry.attrib = empty
1223 refentry.role.attrib = role.attrib
1231 (remark | link.char.class)*,
1234 (refsect1+ | refsection+)
1236 # end of refentry.element
1240 refentry.role.attrib,
1241 local.refentry.attrib
1242 # end of refentry.attlist
1244 # end of refentry.module
1245 local.refmeta.attrib = empty
1246 refmeta.role.attrib = role.attrib
1256 # end of refmeta.element
1258 common.attrib, refmeta.role.attrib, local.refmeta.attrib
1259 # end of refmeta.attlist
1261 # end of refmeta.module
1262 local.refmiscinfo.attrib = empty
1263 refmiscinfo.role.attrib = role.attrib
1265 element refmiscinfo { refmiscinfo.attlist, docinfo.char.mix* }
1266 # end of refmiscinfo.element
1268 # Class: Freely assignable parameter; no default
1269 refmiscinfo.attlist &=
1270 attribute class { text }?,
1272 refmiscinfo.role.attrib,
1273 local.refmiscinfo.attrib
1274 # end of refmiscinfo.attlist
1276 # end of refmiscinfo.module
1277 local.refnamediv.attrib = empty
1278 refnamediv.role.attrib = role.attrib
1280 element refnamediv {
1286 (remark | link.char.class)*
1288 # end of refnamediv.element
1289 refnamediv.attlist &=
1290 common.attrib, refnamediv.role.attrib, local.refnamediv.attrib
1291 # end of refnamediv.attlist
1293 # end of refnamediv.module
1294 local.refdescriptor.attrib = empty
1295 refdescriptor.role.attrib = role.attrib
1297 element refdescriptor { refdescriptor.attlist, refname.char.mix* }
1298 # end of refdescriptor.element
1299 refdescriptor.attlist &=
1300 common.attrib, refdescriptor.role.attrib, local.refdescriptor.attrib
1301 # end of refdescriptor.attlist
1303 # end of refdescriptor.module
1304 local.refname.attrib = empty
1305 refname.role.attrib = role.attrib
1306 refname = element refname { refname.attlist, refname.char.mix* }
1307 # end of refname.element
1309 common.attrib, refname.role.attrib, local.refname.attrib
1310 # end of refname.attlist
1312 # end of refname.module
1313 local.refpurpose.attrib = empty
1314 refpurpose.role.attrib = role.attrib
1316 element refpurpose { refpurpose.attlist, refinline.char.mix* }
1317 # end of refpurpose.element
1318 refpurpose.attlist &=
1319 common.attrib, refpurpose.role.attrib, local.refpurpose.attrib
1320 # end of refpurpose.attlist
1322 # end of refpurpose.module
1323 local.refclass.attrib = empty
1324 refclass.role.attrib = role.attrib
1325 refclass = element refclass { refclass.attlist, refclass.char.mix* }
1326 # end of refclass.element
1328 common.attrib, refclass.role.attrib, local.refclass.attrib
1329 # end of refclass.attlist
1331 # end of refclass.module
1332 local.refsynopsisdiv.attrib = empty
1333 refsynopsisdiv.role.attrib = role.attrib
1335 element refsynopsisdiv {
1336 refsynopsisdiv.attlist,
1337 refsynopsisdivinfo?,
1338 refsect.title.content?,
1339 ((refcomponent.mix+, refsect2*) | refsect2+)
1341 # end of refsynopsisdiv.element
1342 refsynopsisdiv.attlist &=
1343 common.attrib, refsynopsisdiv.role.attrib, local.refsynopsisdiv.attrib
1344 # end of refsynopsisdiv.attlist
1346 # end of refsynopsisdiv.module
1347 local.refsection.attrib = empty
1348 refsection.role.attrib = role.attrib
1350 element refsection {
1353 refsect.title.content,
1354 ((refcomponent.mix+, refsection*) | refsection+)
1356 # end of refsection.element
1357 refsection.attlist &=
1360 refsection.role.attrib,
1361 local.refsection.attrib
1362 # end of refsection.attlist
1364 # end of refsection.module
1365 local.refsect1.attrib = empty
1366 refsect1.role.attrib = role.attrib
1371 refsect.title.content,
1372 ((refcomponent.mix+, refsect2*) | refsect2+)
1374 # end of refsect1.element
1378 refsect1.role.attrib,
1379 local.refsect1.attrib
1380 # end of refsect1.attlist
1382 # end of refsect1.module
1383 local.refsect2.attrib = empty
1384 refsect2.role.attrib = role.attrib
1389 refsect.title.content,
1390 ((refcomponent.mix+, refsect3*) | refsect3+)
1392 # end of refsect2.element
1396 refsect2.role.attrib,
1397 local.refsect2.attrib
1398 # end of refsect2.attlist
1400 # end of refsect2.module
1401 local.refsect3.attrib = empty
1402 refsect3.role.attrib = role.attrib
1407 refsect.title.content,
1410 # end of refsect3.element
1414 refsect3.role.attrib,
1415 local.refsect3.attrib
1416 # end of refsect3.attlist
1418 # end of refsect3.module
1420 # end of refentry.content.module
1422 # ......................................................................
1424 # Article ..............................................................
1426 # An Article is a chapter-level, stand-alone document that is often,
1427 # but need not be, collected into a Book.
1428 local.article.attrib = empty
1429 article.role.attrib = role.attrib
1437 bookcomponent.content,
1438 (nav.class | appendix.class | ackno)*
1440 # end of article.element
1442 # Class: Indicates the type of a particular article;
1443 # all articles have the same structure and general purpose.
1446 # ParentBook: ID of the enclosing Book
1456 attribute parentbook { xsd:IDREF }?,
1459 article.role.attrib,
1460 local.article.attrib
1461 # end of article.attlist
1463 # end of article.module
1465 # End of DocBook document hierarchy module V4.2 ........................
1467 # ......................................................................