Fix 43670, 44501 - Fix how HDGF deals with trailing data in the list of chunk headers
[poi.git] / src / documentation / content / xdocs / dtd / document-v13.mod
blob4c60b803bc7c95b69f2155d32e96d7ab2c1914bf
1 <!--
2 Copyright 2002-2004 The Apache Software Foundation
4 Licensed under the Apache License, Version 2.0 (the "License");
5 you may not use this file except in compliance with the License.
6 You may obtain a copy of the License at
8 http://www.apache.org/licenses/LICENSE-2.0
10 Unless required by applicable law or agreed to in writing, software
11 distributed under the License is distributed on an "AS IS" BASIS,
12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
15 -->
16 <!-- ===================================================================
18 Apache Common Documentation elements (Version 1.2)
20 PURPOSE:
21 This DTD was developed to create a simple yet powerful document
22 type for software documentation for use with the Apache projects.
24 TYPICAL INVOCATION:
26 <!ENTITY % document PUBLIC
27 "-//APACHE//ENTITIES Documentation Vxy//EN"
28 "document-vxy.mod">
29 %document;
31 where
33 x := major version
34 y := minor version
36 NOTES:
38 FIXME:
40 CHANGE HISTORY:
41 [Version 1.0]
42 20020608 Initial version. (SN)
44 ==================================================================== -->
45 <!-- =============================================================== -->
46 <!-- Useful entities for increased DTD readability -->
47 <!-- =============================================================== -->
48 <!ENTITY % text "#PCDATA">
49 <!-- Entities referred to later on are defined up front -->
50 <!ENTITY % markup "strong|em|code|sub|sup">
51 <!ENTITY % special-inline "br|img|icon|acronym">
52 <!ENTITY % links "link|jump|fork">
53 <!ENTITY % paragraphs "p|source|note|warning|fixme">
54 <!ENTITY % tables "table">
55 <!ENTITY % lists "ol|ul|dl">
56 <!ENTITY % special-blocks "figure|anchor">
57 <!-- =============================================================== -->
58 <!-- Entities for general XML compliance -->
59 <!-- =============================================================== -->
60 <!-- Common attributes
61 Every element has an ID attribute (sometimes required,
62 but usually optional) for links. %common.att;
63 is for common attributes where the ID is optional, and
64 %common-idreq.att; is for common attributes where the
65 ID is required.
66 -->
67 <!ENTITY % common.att 'id ID #IMPLIED
68 class NMTOKEN #IMPLIED
69 xml:lang NMTOKEN #IMPLIED'>
70 <!ENTITY % common-idreq.att 'id ID #REQUIRED
71 class NMTOKEN #IMPLIED
72 xml:lang NMTOKEN #IMPLIED'>
73 <!-- xml:space attribute ===============================================
74 Indicates that the element contains white space
75 that the formatter or other application should retain,
76 as appropriate to its function.
77 ==================================================================== -->
78 <!ENTITY % xmlspace.att 'xml:space (default|preserve) #FIXED "preserve"'>
79 <!-- def attribute =====================================================
80 Points to the element where the relevant definition can be
81 found, using the IDREF mechanism. %def.att; is for optional
82 def attributes, and %def-req.att; is for required def
83 attributes.
84 ==================================================================== -->
85 <!ENTITY % def.att 'def IDREF #IMPLIED'>
86 <!ENTITY % def-req.att 'def IDREF #REQUIRED'>
87 <!-- ref attribute =====================================================
88 Points to the element where more information can be found,
89 using the IDREF mechanism. %ref.att; is for optional
90 ref attributes, and %ref-req.att; is for required ref
91 attributes.
92 ================================================================== -->
93 <!ENTITY % ref.att 'ref IDREF #IMPLIED'>
94 <!ENTITY % ref-req.att 'ref IDREF #REQUIRED'>
95 <!-- =============================================================== -->
96 <!-- Entities for general usage -->
97 <!-- =============================================================== -->
98 <!-- Key attribute =====================================================
99 Optionally provides a sorting or indexing key, for cases when
100 the element content is inappropriate for this purpose.
101 ==================================================================== -->
102 <!ENTITY % key.att 'key CDATA #IMPLIED'>
103 <!-- Title attributes ==================================================
104 Indicates that the element requires to have a title attribute.
105 ==================================================================== -->
106 <!ENTITY % title.att 'title CDATA #REQUIRED'>
107 <!-- Name attributes ==================================================
108 Indicates that the element requires to have a name attribute.
109 ==================================================================== -->
110 <!ENTITY % name.att 'name CDATA #REQUIRED'>
111 <!-- Email attributes ==================================================
112 Indicates that the element requires to have an email attribute.
113 ==================================================================== -->
114 <!ENTITY % email.att 'email CDATA #REQUIRED'>
115 <!-- Link attributes ===================================================
116 Indicates that the element requires to have hyperlink attributes.
117 ==================================================================== -->
118 <!ENTITY % link.att 'href CDATA #REQUIRED
119 role CDATA #IMPLIED
120 title CDATA #IMPLIED '>
121 <!-- =============================================================== -->
122 <!-- General definitions -->
123 <!-- =============================================================== -->
124 <!-- A person is a general unparsed human entity -->
125 <!ELEMENT person EMPTY>
126 <!ATTLIST person
127 %common.att;
128 %name.att;
129 %email.att;
131 <!-- =============================================================== -->
132 <!-- Content definitions -->
133 <!-- =============================================================== -->
134 <!ENTITY % local.inline "">
135 <!ENTITY % link-content.mix "%text;|%markup;|%special-inline; %local.inline;">
136 <!ENTITY % content.mix "%link-content.mix;|%links;">
137 <!-- ==================================================== -->
138 <!-- Phrase Markup -->
139 <!-- ==================================================== -->
140 <!-- Strong (typically bold) -->
141 <!ELEMENT strong (%content.mix;)*>
142 <!ATTLIST strong
143 %common.att;
145 <!-- Emphasis (typically italic) -->
146 <!ELEMENT em (%content.mix;)*>
147 <!ATTLIST em
148 %common.att;
150 <!-- Code (typically monospaced) -->
151 <!ELEMENT code (%text;)>
152 <!ATTLIST code
153 %common.att;
155 <!-- Superscript (typically smaller and higher) -->
156 <!ELEMENT sup (%text;)>
157 <!ATTLIST sup
158 %common.att;
160 <!-- Subscript (typically smaller and lower) -->
161 <!ELEMENT sub (%text;)>
162 <!ATTLIST sub
163 %common.att;
165 <!-- ==================================================== -->
166 <!-- Hypertextual Links -->
167 <!-- ==================================================== -->
168 <!-- hyperlink (equivalent of <a ...>) -->
169 <!ELEMENT link (%link-content.mix;)*>
170 <!ATTLIST link
171 %common.att;
172 %link.att;
174 <!-- windows-replacing link (equivalent of <a ... target="_top">) -->
175 <!ELEMENT jump (%link-content.mix;)*>
176 <!ATTLIST jump
177 %common.att;
178 %link.att;
180 <!-- window-forking link (equivalent of <a ... target="_blank">) -->
181 <!ELEMENT fork (%link-content.mix;)*>
182 <!ATTLIST fork
183 %common.att;
184 %link.att;
187 <!-- ==================================================== -->
188 <!-- Specials -->
189 <!-- ==================================================== -->
190 <!-- Breakline Object (typically forces line break) -->
191 <!ELEMENT br EMPTY>
192 <!ATTLIST br
193 %common.att;
195 <!-- Image Object (typically an inlined image) -->
196 <!ELEMENT img EMPTY>
197 <!ATTLIST img
198 src CDATA #REQUIRED
199 alt CDATA #REQUIRED
200 height CDATA #IMPLIED
201 width CDATA #IMPLIED
202 usemap CDATA #IMPLIED
203 ismap (ismap) #IMPLIED
204 %common.att;
206 <!-- Image Icon (typically an inlined image placed as graphical item) -->
207 <!ELEMENT icon EMPTY>
208 <!ATTLIST icon
209 src CDATA #REQUIRED
210 alt CDATA #REQUIRED
211 height CDATA #IMPLIED
212 width CDATA #IMPLIED
213 %common.att;
215 <!-- Acronym (in modern browsers, will have rollover text) -->
216 <!ELEMENT acronym (%text;)*>
217 <!ATTLIST acronym
218 title CDATA #REQUIRED
219 %common.att;
222 <!-- =============================================================== -->
223 <!-- Blocks definitions -->
224 <!-- =============================================================== -->
225 <!ENTITY % local.blocks "">
226 <!ENTITY % blocks "%paragraphs;|%tables;|%lists;|%special-blocks; %local.blocks;">
228 <!-- Flow mixes block and inline -->
229 <!ENTITY % flow "%content.mix;|%blocks;">
231 <!-- ==================================================== -->
232 <!-- Paragraphs -->
233 <!-- ==================================================== -->
234 <!-- Text Paragraph (normally vertically space delimited. Space can be preserved.) -->
235 <!ELEMENT p (%content.mix;)*>
236 <!ATTLIST p
237 %common.att;
238 xml:space (default|preserve) #IMPLIED
240 <!-- Source Paragraph (normally space is preserved) -->
241 <!ELEMENT source (%content.mix;)*>
242 <!ATTLIST source
243 %common.att;
244 %xmlspace.att;
246 <!-- Note Paragraph (normally shown encapsulated) -->
247 <!ELEMENT note (%content.mix;)*>
248 <!ATTLIST note
249 label CDATA #IMPLIED
250 %common.att;
252 <!-- Warning Paragraph (normally shown with eye-catching colors) -->
253 <!ELEMENT warning (%content.mix;)*>
254 <!ATTLIST warning
255 label CDATA #IMPLIED
256 %common.att;
258 <!-- Fixme Paragraph (normally not shown) -->
259 <!ELEMENT fixme (%content.mix;)*>
260 <!ATTLIST fixme
261 author CDATA #REQUIRED
262 %common.att;
264 <!-- ==================================================== -->
265 <!-- Tables -->
266 <!-- ==================================================== -->
267 <!-- Attributes that indicate the spanning of the table cell -->
268 <!ENTITY % cell.span 'colspan CDATA "1"
269 rowspan CDATA "1"'>
270 <!-- Table element -->
271 <!ELEMENT table (caption?, tr+)>
272 <!ATTLIST table
273 %common.att;
275 <!-- The table title -->
276 <!ELEMENT caption (%content.mix;)*>
277 <!ATTLIST caption
278 %common.att;
280 <!-- The table row element -->
281 <!ELEMENT tr (th | td)+>
282 <!ATTLIST tr
283 %common.att;
285 <!-- The table row header element -->
286 <!ELEMENT th (%flow;)*>
287 <!ATTLIST th
288 %common.att;
289 %cell.span;
291 <!-- The table row description element -->
292 <!ELEMENT td (%flow;)*>
293 <!ATTLIST td
294 %common.att;
295 %cell.span;
297 <!-- ==================================================== -->
298 <!-- Lists -->
299 <!-- ==================================================== -->
300 <!-- List item -->
301 <!ELEMENT li (%flow;)*>
302 <!ATTLIST li
303 %common.att;
305 <!-- Unordered list (typically bulleted) -->
306 <!ELEMENT ul (li | %lists;)+>
307 <!-- spacing attribute:
308 Use "normal" to get normal vertical spacing for items;
309 use "compact" to get less spacing. The default is dependent
310 on the stylesheet. -->
311 <!ATTLIST ul
312 %common.att;
313 spacing (normal | compact) #IMPLIED
315 <!-- Ordered list (typically numbered) -->
316 <!ELEMENT ol (li | %lists;)+>
317 <!-- spacing attribute:
318 Use "normal" to get normal vertical spacing for items;
319 use "compact" to get less spacing. The default is dependent
320 on the stylesheet. -->
321 <!ATTLIST ol
322 %common.att;
323 spacing (normal | compact) #IMPLIED
325 <!-- Definition list (typically two-column) -->
326 <!ELEMENT dl (dt, dd)+>
327 <!ATTLIST dl
328 %common.att;
330 <!-- Definition term -->
331 <!ELEMENT dt (%content.mix;)*>
332 <!ATTLIST dt
333 %common.att;
335 <!-- Definition description -->
336 <!ELEMENT dd (%flow; )*>
337 <!ATTLIST dd
338 %common.att;
340 <!-- ==================================================== -->
341 <!-- Special Blocks -->
342 <!-- ==================================================== -->
343 <!-- Image Block (typically a separated and centered image) -->
344 <!ELEMENT figure EMPTY>
345 <!ATTLIST figure
346 src CDATA #REQUIRED
347 alt CDATA #REQUIRED
348 height CDATA #IMPLIED
349 width CDATA #IMPLIED
350 usemap CDATA #IMPLIED
351 ismap (ismap) #IMPLIED
352 align CDATA #IMPLIED
353 %common.att;
355 <!-- anchor point (equivalent of <a name="...">, typically not rendered) -->
356 <!ELEMENT anchor EMPTY>
357 <!ATTLIST anchor
358 %common-idreq.att;
360 <!-- =============================================================== -->
361 <!-- Document -->
362 <!-- =============================================================== -->
363 <!ELEMENT document (header, body, footer?)>
364 <!ATTLIST document
365 %common.att;
367 <!-- ==================================================== -->
368 <!-- Header -->
369 <!-- ==================================================== -->
370 <!ENTITY % local.headers "">
371 <!ELEMENT header (title, subtitle?, version?, type?, authors?,
372 notice*, abstract? %local.headers;)>
373 <!ATTLIST header
374 %common.att;
376 <!ELEMENT title (%text; | %markup; | %links; | %special-inline;)*>
377 <!ATTLIST title
378 %common.att;
380 <!ELEMENT subtitle (%text; | %markup;)*>
381 <!ATTLIST subtitle
382 %common.att;
384 <!ELEMENT version (%text;)>
385 <!ATTLIST version
386 %common.att;
387 major CDATA #IMPLIED
388 minor CDATA #IMPLIED
389 fix CDATA #IMPLIED
390 tag CDATA #IMPLIED
392 <!ELEMENT type (%text;)>
393 <!ATTLIST type
394 %common.att;
396 <!ELEMENT authors (person+)>
397 <!ATTLIST authors
398 %common.att;
400 <!ELEMENT notice (%content.mix;)*>
401 <!ATTLIST notice
402 %common.att;
404 <!ELEMENT abstract (%content.mix;)*>
405 <!ATTLIST abstract
406 %common.att;
408 <!-- ==================================================== -->
409 <!-- Body -->
410 <!-- ==================================================== -->
411 <!ENTITY % local.sections "">
412 <!ENTITY % sections "section %local.sections;">
413 <!ELEMENT body (%sections; | %blocks;)+>
414 <!ATTLIST body
415 %common.att;
417 <!ELEMENT section (title, (%sections; | %blocks;)*)>
418 <!ATTLIST section
419 %common.att;
421 <!-- ==================================================== -->
422 <!-- Footer -->
423 <!-- ==================================================== -->
424 <!ENTITY % local.footers "">
425 <!ELEMENT footer (legal %local.footers;)>
426 <!ELEMENT legal (%content.mix;)*>
427 <!ATTLIST legal
428 %common.att;
430 <!-- =============================================================== -->
431 <!-- End of DTD -->
432 <!-- =============================================================== -->