Initial commit
[profile/ivi/docbook-dtds.git] / 4.5-sgml / htmltblx.mod
1 <!-- ...................................................................... -->
2 <!-- DocBook XML HTML Table Module V4.5 ................................... -->
3 <!-- File htmltblx.mod .................................................... -->
4
5 <!-- Copyright 2003-2006 ArborText, Inc., Norman Walsh, Sun Microsystems,
6      Inc., and the Organization for the Advancement of Structured Information
7      Standards (OASIS).
8
9      $Id: htmltblx.mod 6340 2006-10-03 13:23:24Z nwalsh $
10
11      Permission to use, copy, modify and distribute the DocBook XML DTD
12      and its accompanying documentation for any purpose and without fee
13      is hereby granted in perpetuity, provided that the above copyright
14      notice and this paragraph appear in all copies.  The copyright
15      holders make no representation about the suitability of the DTD for
16      any purpose.  It is provided "as is" without expressed or implied
17      warranty.
18
19      If you modify the DocBook XML DTD in any way, except for declaring and
20      referencing additional sets of general entities and declaring
21      additional notations, label your DTD as a variant of DocBook.  See
22      the maintenance documentation for more information.
23
24      Please direct all questions, bug reports, or suggestions for
25      changes to the docbook@lists.oasis-open.org mailing list. For more
26      information, see http://www.oasis-open.org/docbook/.
27 -->
28
29 <!-- ...................................................................... -->
30
31 <!-- This module contains the definitions for elements that are
32      isomorphic to the HTML elements. One could argue we should
33      instead have based ourselves on the XHTML Table Module, but the
34      HTML one is more like what browsers are likely to accept today
35      and users are likely to use.
36
37      This module has been developed for use with the DocBook V4.5
38      "union table model" in which elements and attlists common to both
39      models are defined (as the union) in the CALS table module by
40      setting various parameter entities appropriately in this file.
41
42      In DTD driver files referring to this module, please use an entity
43      declaration that uses the public identifier shown below:
44
45      <!ENTITY % htmltbl PUBLIC
46      "-//OASIS//ELEMENTS DocBook XML HTML Tables V4.5//EN"
47      "htmltblx.mod">
48      %htmltbl;
49
50      See the documentation for detailed information on the parameter
51      entity and module scheme used in DocBook, customizing DocBook and
52      planning for interchange, and changes made since the last release
53      of DocBook.
54 -->
55
56 <!--======================= XHTML Tables =======================================-->
57
58 <!ENTITY % html.coreattrs
59  "%common.attrib;
60   class       CDATA          #IMPLIED
61   style       CDATA          #IMPLIED
62   title       CDATA         #IMPLIED"
63   >
64
65 <!-- Does not contain lang or dir because they are in %common.attribs -->
66 <![%sgml.features;[
67 <!ENTITY % i18n "">
68 ]]>
69 <!ENTITY % i18n
70  "xml:lang    NMTOKEN        #IMPLIED"
71   >
72
73 <!ENTITY % events
74  "onclick     CDATA       #IMPLIED
75   ondblclick  CDATA       #IMPLIED
76   onmousedown CDATA       #IMPLIED
77   onmouseup   CDATA       #IMPLIED
78   onmouseover CDATA       #IMPLIED
79   onmousemove CDATA       #IMPLIED
80   onmouseout  CDATA       #IMPLIED
81   onkeypress  CDATA       #IMPLIED
82   onkeydown   CDATA       #IMPLIED
83   onkeyup     CDATA       #IMPLIED"
84   >
85
86 <!ENTITY % attrs "%html.coreattrs; %i18n; %events;">
87
88 <!ENTITY % cellhalign
89   "align      (left|center|right|justify|char) #IMPLIED
90    char       CDATA    #IMPLIED
91    charoff    CDATA       #IMPLIED"
92   >
93
94 <!ENTITY % cellvalign
95   "valign     (top|middle|bottom|baseline) #IMPLIED"
96   >
97
98 <!--doc:A group of columns in an HTML table.-->
99 <!ELEMENT colgroup %ho; (col)*>
100 <!--doc:Specifications for a column in an HTML table.-->
101 <!ELEMENT col %ho; EMPTY>
102 <!--doc:A row in an HTML table.-->
103 <!ELEMENT tr %ho;  (th|td)+>
104 <!--doc:A table header entry in an HTML table.-->
105 <!ELEMENT th %ho;  (%para.char.mix; | %tabentry.mix; | table | informaltable)*>
106 <!--doc:A table ntry in an HTML table.-->
107 <!ELEMENT td %ho;  (%para.char.mix; | %tabentry.mix; | table | informaltable)*>
108
109 <!ATTLIST colgroup
110   %attrs;
111   span        CDATA       "1"
112   width       CDATA  #IMPLIED
113   %cellhalign;
114   %cellvalign;
115   >
116
117 <!ATTLIST col
118   %attrs;
119   span        CDATA       "1"
120   width       CDATA  #IMPLIED
121   %cellhalign;
122   %cellvalign;
123   >
124
125 <!ATTLIST tr
126   %attrs;
127   %cellhalign;
128   %cellvalign;
129   bgcolor     CDATA        #IMPLIED
130   >
131
132 <!ATTLIST th
133   %attrs;
134   abbr        CDATA         #IMPLIED
135   axis        CDATA          #IMPLIED
136   headers     IDREFS         #IMPLIED
137   scope       (row|col|rowgroup|colgroup)   #IMPLIED
138   rowspan     CDATA       "1"
139   colspan     CDATA       "1"
140   %cellhalign;
141   %cellvalign;
142   nowrap      (nowrap)       #IMPLIED
143   bgcolor     CDATA         #IMPLIED
144   width       CDATA       #IMPLIED
145   height      CDATA       #IMPLIED
146   >
147
148 <!ATTLIST td
149   %attrs;
150   abbr        CDATA         #IMPLIED
151   axis        CDATA          #IMPLIED
152   headers     IDREFS         #IMPLIED
153   scope       (row|col|rowgroup|colgroup)   #IMPLIED
154   rowspan     CDATA       "1"
155   colspan     CDATA       "1"
156   %cellhalign;
157   %cellvalign;
158   nowrap      (nowrap)       #IMPLIED
159   bgcolor     CDATA         #IMPLIED
160   width       CDATA       #IMPLIED
161   height      CDATA       #IMPLIED
162   >
163
164 <!-- ====================================================== -->
165 <!--        Set up to read in the CALS model configured to
166             merge with the XHTML table model                -->
167 <!-- ====================================================== -->
168
169 <!ENTITY % tables.role.attrib "%role.attrib;">
170
171 <!-- Add label and role attributes to table and informaltable -->
172 <!ENTITY % bodyatt "
173                 floatstyle      CDATA                   #IMPLIED
174                 rowheader       (firstcol|norowheader)  #IMPLIED
175                 %label.attrib;"
176 >
177
178 <!-- Add common attributes to Table, TGroup, TBody, THead, TFoot, Row, 
179      EntryTbl, and Entry (and InformalTable element). -->
180
181 <!ENTITY % secur "
182         %common.attrib;
183         class       CDATA          #IMPLIED
184         style       CDATA          #IMPLIED
185         title       CDATA         #IMPLIED
186         %i18n;
187         %events;
188         %tables.role.attrib;">
189
190 <!ENTITY % common.table.attribs
191         "%bodyatt;
192         %secur;">
193
194 <!-- Content model for Table (that also allows HTML tables) -->
195 <!ENTITY % tbl.table.mdl
196         "((blockinfo?,
197            (%formalobject.title.content;),
198            (%ndxterm.class;)*,
199            textobject*,
200            (graphic+|mediaobject+|tgroup+))
201          |(caption, (col*|colgroup*), thead?, tfoot?, (tbody+|tr+)))">
202
203 <!ENTITY % informal.tbl.table.mdl
204         "(textobject*,
205           (graphic+|mediaobject+|tgroup+))
206          | ((col*|colgroup*), thead?, tfoot?, (tbody+|tr+))">
207
208 <!-- Attributes for Table (including HTML ones) -->
209
210 <!-- N.B. rules = (none | groups | rows | cols | all) but it can't be spec'd -->
211 <!-- that way because 'all' already occurs in a different enumeration in -->
212 <!-- CALS tables (frame). -->
213
214 <!ENTITY % tbl.table.att        '
215     tabstyle    CDATA           #IMPLIED
216     tocentry    %yesorno.attvals;       #IMPLIED
217     shortentry  %yesorno.attvals;       #IMPLIED
218     orient      (port|land)     #IMPLIED
219     pgwide      %yesorno.attvals;       #IMPLIED 
220     summary     CDATA          #IMPLIED
221     width       CDATA        #IMPLIED
222     border      CDATA        #IMPLIED
223     rules       CDATA           #IMPLIED
224     cellspacing CDATA        #IMPLIED
225     cellpadding CDATA        #IMPLIED
226     align       (left|center|right)   #IMPLIED
227     bgcolor     CDATA         #IMPLIED
228 '>
229
230 <!ENTITY % tbl.frame.attval "void|above|below|hsides|lhs|rhs|vsides|box|border|
231 top|bottom|topbot|all|sides|none">
232
233 <!-- Allow either objects or inlines; beware of REs between elements. -->
234 <!ENTITY % tbl.entry.mdl "%para.char.mix; | %tabentry.mix;">
235
236 <!-- thead, tfoot, and tbody are defined in both table models,
237      so we set up parameter entities to define union models for them
238  -->
239
240 <!ENTITY % tbl.hdft.mdl        "(tr+|(colspec*,row+))">
241 <!ENTITY % tbl.tbody.mdl       "(tr+|row+)">
242 <!ENTITY % tbl.valign.attval   "top|middle|bottom|baseline">
243
244 <!-- End of DocBook XML HTML Table Module V4.5 ............................ -->
245 <!-- ...................................................................... -->