| 1 | # ......................................................................
 | 
|---|
| 2 | 
 | 
|---|
| 3 | # DocBook CALS Table Model V4.5 ........................................
 | 
|---|
| 4 | 
 | 
|---|
| 5 | # File calstblx.mod ....................................................
 | 
|---|
| 6 | 
 | 
|---|
| 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
 | 
|---|
| 11 | # Standards (OASIS).
 | 
|---|
| 12 | # 
 | 
|---|
| 13 | # This DTD is based on the CALS Table Model
 | 
|---|
| 14 | # PUBLIC "-//USA-DOD//DTD Table Model 951010//EN"
 | 
|---|
| 15 | # 
 | 
|---|
| 16 | # $Id: calstblx.dtd 6340 2006-10-03 13:23:24Z nwalsh $
 | 
|---|
| 17 | # 
 | 
|---|
| 18 | # Permission to use, copy, modify and distribute the DocBook DTD
 | 
|---|
| 19 | # and its accompanying documentation for any purpose and without fee
 | 
|---|
| 20 | # is hereby granted in perpetuity, provided that the above copyright
 | 
|---|
| 21 | # notice and this paragraph appear in all copies.  The copyright
 | 
|---|
| 22 | # holders make no representation about the suitability of the DTD for
 | 
|---|
| 23 | # any purpose.  It is provided "as is" without expressed or implied
 | 
|---|
| 24 | # warranty.
 | 
|---|
| 25 | # 
 | 
|---|
| 26 | # If you modify the DocBook DTD in any way, except for declaring and
 | 
|---|
| 27 | # referencing additional sets of general entities and declaring
 | 
|---|
| 28 | # additional notations, label your DTD as a variant of DocBook.  See
 | 
|---|
| 29 | # the maintenance documentation for more information.
 | 
|---|
| 30 | # 
 | 
|---|
| 31 | # Please direct all questions, bug reports, or suggestions for
 | 
|---|
| 32 | # changes to the docbook@lists.oasis-open.org mailing list. For more
 | 
|---|
| 33 | # information, see http://www.oasis-open.org/docbook/.
 | 
|---|
| 34 | 
 | 
|---|
| 35 | # ......................................................................
 | 
|---|
| 36 | 
 | 
|---|
| 37 | # This module contains the definitions for the CALS Table Model
 | 
|---|
| 38 | # converted to XML. It has been modified slightly for use in the
 | 
|---|
| 39 | # combined HTML/CALS models supported by DocBook V4.5.
 | 
|---|
| 40 | 
 | 
|---|
| 41 | # These definitions are not directly related to the table model, but are
 | 
|---|
| 42 | # used in the default CALS table model and are usually defined elsewhere
 | 
|---|
| 43 | # (and prior to the inclusion of this table module) in a CALS DTD.
 | 
|---|
| 44 | 
 | 
|---|
| 45 | # no if zero(s),
 | 
|---|
| 46 | # yes if any other digits value
 | 
|---|
| 47 | 
 | 
|---|
| 48 | yesorno = string
 | 
|---|
| 49 | titles = title?
 | 
|---|
| 50 | # default for use in entry content
 | 
|---|
| 51 | 
 | 
|---|
| 52 | # The parameter entities as defined below provide the CALS table model
 | 
|---|
| 53 | # as published (as part of the Example DTD) in MIL-HDBK-28001.
 | 
|---|
| 54 | # 
 | 
|---|
| 55 | # These following declarations provide the CALS-compliant default definitions
 | 
|---|
| 56 | # for these entities.  However, these entities can and should be redefined
 | 
|---|
| 57 | # (by giving the appropriate parameter entity declaration(s) prior to the
 | 
|---|
| 58 | # reference to this Table Model declaration set entity) to fit the needs
 | 
|---|
| 59 | # of the current application.
 | 
|---|
| 60 | tbl.table-titles.mdl = titles
 | 
|---|
| 61 | tbl.table-main.mdl = tgroup+ | graphic+
 | 
|---|
| 62 | tbl.tgroup.mdl = colspec*, spanspec*, thead?, tfoot?, tbody
 | 
|---|
| 63 | tbl.tgroup.att = attribute tgroupstyle { text }?
 | 
|---|
| 64 | tbl.row.mdl = (entry | entrytbl)+
 | 
|---|
| 65 | tbl.entrytbl.mdl = colspec*, spanspec*, thead?, tbody
 | 
|---|
| 66 | # =====  Element and attribute declarations follow. =====
 | 
|---|
| 67 | 
 | 
|---|
| 68 | # doc:A formal table in a document.
 | 
|---|
| 69 | table = element table { table.attlist, tbl.table.mdl }
 | 
|---|
| 70 | table.attlist &=
 | 
|---|
| 71 |   attribute frame { tbl.frame.attval }?,
 | 
|---|
| 72 |   attribute colsep { yesorno }?,
 | 
|---|
| 73 |   attribute rowsep { yesorno }?,
 | 
|---|
| 74 |   tbl.table.att,
 | 
|---|
| 75 |   bodyatt,
 | 
|---|
| 76 |   secur
 | 
|---|
| 77 | # doc:A wrapper for the main content of a table, or part of a table.
 | 
|---|
| 78 | tgroup = element tgroup { tgroup.attlist, tbl.tgroup.mdl }
 | 
|---|
| 79 | tgroup.attlist &=
 | 
|---|
| 80 |   attribute cols { text },
 | 
|---|
| 81 |   tbl.tgroup.att,
 | 
|---|
| 82 |   attribute colsep { yesorno }?,
 | 
|---|
| 83 |   attribute rowsep { yesorno }?,
 | 
|---|
| 84 |   attribute align { "left" | "right" | "center" | "justify" | "char" }?,
 | 
|---|
| 85 |   attribute char { text }?,
 | 
|---|
| 86 |   attribute charoff { text }?,
 | 
|---|
| 87 |   secur
 | 
|---|
| 88 | # doc:Specifications for a column in a table.
 | 
|---|
| 89 | colspec = element colspec { colspec.attlist, empty }
 | 
|---|
| 90 | colspec.attlist &=
 | 
|---|
| 91 |   attribute colnum { text }?,
 | 
|---|
| 92 |   attribute colname { text }?,
 | 
|---|
| 93 |   attribute colwidth { text }?,
 | 
|---|
| 94 |   attribute colsep { yesorno }?,
 | 
|---|
| 95 |   attribute rowsep { yesorno }?,
 | 
|---|
| 96 |   attribute align { "left" | "right" | "center" | "justify" | "char" }?,
 | 
|---|
| 97 |   attribute char { text }?,
 | 
|---|
| 98 |   attribute charoff { text }?
 | 
|---|
| 99 | # doc:Formatting information for a spanned column in a table.
 | 
|---|
| 100 | spanspec = element spanspec { spanspec.attlist, empty }
 | 
|---|
| 101 | spanspec.attlist &=
 | 
|---|
| 102 |   attribute namest { text },
 | 
|---|
| 103 |   attribute nameend { text },
 | 
|---|
| 104 |   attribute spanname { text },
 | 
|---|
| 105 |   attribute colsep { yesorno }?,
 | 
|---|
| 106 |   attribute rowsep { yesorno }?,
 | 
|---|
| 107 |   attribute align { "left" | "right" | "center" | "justify" | "char" }?,
 | 
|---|
| 108 |   attribute char { text }?,
 | 
|---|
| 109 |   attribute charoff { text }?
 | 
|---|
| 110 | # doc:A table header consisting of one or more rows.
 | 
|---|
| 111 | thead = element thead { thead.attlist, tbl.hdft.mdl }
 | 
|---|
| 112 | thead.attlist &=
 | 
|---|
| 113 |   attribute valign { "top" | "middle" | "bottom" }?,
 | 
|---|
| 114 |   secur
 | 
|---|
| 115 | # doc:A table footer consisting of one or more rows.
 | 
|---|
| 116 | tfoot = element tfoot { tfoot.attlist, tbl.hdft.mdl }
 | 
|---|
| 117 | tfoot.attlist &=
 | 
|---|
| 118 |   attribute valign { "top" | "middle" | "bottom" }?,
 | 
|---|
| 119 |   secur
 | 
|---|
| 120 | # doc:A wrapper for the rows of a table or informal table.
 | 
|---|
| 121 | tbody = element tbody { tbody.attlist, tbl.tbody.mdl }
 | 
|---|
| 122 | tbody.attlist &=
 | 
|---|
| 123 |   attribute valign { "top" | "middle" | "bottom" }?,
 | 
|---|
| 124 |   secur
 | 
|---|
| 125 | # doc:A row in a table.
 | 
|---|
| 126 | row = element row { row.attlist, tbl.row.mdl }
 | 
|---|
| 127 | row.attlist &=
 | 
|---|
| 128 |   attribute rowsep { yesorno }?,
 | 
|---|
| 129 |   attribute valign { "top" | "middle" | "bottom" }?,
 | 
|---|
| 130 |   secur
 | 
|---|
| 131 | # doc:A subtable appearing in place of an Entry in a table.
 | 
|---|
| 132 | entrytbl = element entrytbl { entrytbl.attlist, tbl.entrytbl.mdl }
 | 
|---|
| 133 | entrytbl.attlist &=
 | 
|---|
| 134 |   attribute cols { text },
 | 
|---|
| 135 |   tbl.tgroup.att,
 | 
|---|
| 136 |   attribute colname { text }?,
 | 
|---|
| 137 |   attribute spanname { text }?,
 | 
|---|
| 138 |   attribute namest { text }?,
 | 
|---|
| 139 |   attribute nameend { text }?,
 | 
|---|
| 140 |   attribute colsep { yesorno }?,
 | 
|---|
| 141 |   attribute rowsep { yesorno }?,
 | 
|---|
| 142 |   attribute align { "left" | "right" | "center" | "justify" | "char" }?,
 | 
|---|
| 143 |   attribute char { text }?,
 | 
|---|
| 144 |   attribute charoff { text }?,
 | 
|---|
| 145 |   secur
 | 
|---|
| 146 | # doc:A cell in a table.
 | 
|---|
| 147 | entry = element entry { entry.attlist, tbl.entry.mdl* }
 | 
|---|
| 148 | entry.attlist &=
 | 
|---|
| 149 |   attribute colname { text }?,
 | 
|---|
| 150 |   attribute namest { text }?,
 | 
|---|
| 151 |   attribute nameend { text }?,
 | 
|---|
| 152 |   attribute spanname { text }?,
 | 
|---|
| 153 |   attribute morerows { text }?,
 | 
|---|
| 154 |   attribute colsep { yesorno }?,
 | 
|---|
| 155 |   attribute rowsep { yesorno }?,
 | 
|---|
| 156 |   attribute align { "left" | "right" | "center" | "justify" | "char" }?,
 | 
|---|
| 157 |   attribute char { text }?,
 | 
|---|
| 158 |   attribute charoff { text }?,
 | 
|---|
| 159 |   attribute rotate { yesorno }?,
 | 
|---|
| 160 |   attribute valign { "top" | "middle" | "bottom" }?,
 | 
|---|
| 161 |   secur
 | 
|---|
| 162 | # End of DocBook CALS Table Model V4.5 .................................
 | 
|---|
| 163 | 
 | 
|---|
| 164 | # ......................................................................
 | 
|---|