Add new character elements to DTD
[project-aon.git] / en / xml / gamebook.dtd
1 <!-- ============================================================= -->
2 <!--             Gamebook Document Type Definition v0.13           -->
3 <!-- ============================================================= -->
4 <!--
5
6 This DTD was designed around XML 1.0.
7
8 This gamebook DTD is aimed primarily at the books under development by 
9 Project Aon (https://www.projectaon.org/). Future versions may be of 
10 more general utility.
11
12 Change Log:
13
14 14 December 2019 (version 0.14)
15  * added more fractional character elements
16  * added "lte" and "gte" character elements
17
18 13 November 2012 (version 0.13.3)
19  * added the "puzzle" and "deadend" elements
20
21 24 May 2011 (version 0.13.2)
22  * added the "relationship" attribute to the "creator" and "contributor"
23    elements
24
25 23 May 2011 (version 0.13.1)
26  * added the "sort-name" attribute to the "creator" and "contributor"
27    elements
28
29 5 November 2010 (version 0.13.0)
30  * changed the "is" attribute on the "when" element to "value"
31
32 25 October 2010 (version 0.12.7)
33  * Made the "signpost" element mixed content
34
35 13 September 2010 (version 0.12.6)
36  * Added the "poetry" element
37
38 30 July 2010 (version 0.12.5)
39  * Added the "originalwidth", "posx", and "posy" attributes to the
40    "instance" element
41
42 28 July 2010 (version 0.12.4)
43  * Added the "choose", "when", and "otherwise" elements
44
45 1 April 2009 (version 0.12.3)
46  * Added the "start" attribute to ordered lists.
47  * Added the "value" attribute to list items.
48
49 19 December 2006 (version 0.12.2)
50  * Added the "line" element to the inline elements list.
51
52 19 December 2006 (version 0.12.1)
53  * Upgraded the table model to included "caption", "colgroup", "thead",
54    "tfoot", and "tbdoy" elements and the cell scoping attributes
55    "rowspan", "colspan", "axis", and "scope".
56  * Deprecated the "br" element in favor of the "line" element.
57
58 25 March 2006 (version 0.12.0)
59  * Added "illref", "illustrations" and "illgroup". Still backwards
60    compatible.
61
62 26 December 2005 (version 0.11.4)
63  * Added link.attributes and the optional "series" attribute to
64    "bookref", and fleshed out the "bookref" and "footref"
65    descriptions.
66
67 5 December 2005 (version 0.11.3)
68  * Corrected ATTLISTs of character elements
69  * Added "ch.apos", "ch.frac116", and "ch.plus" elements
70
71 9 April 2005 (version 0.11.2)
72  * Added the following inline elements: "bookref", "footref".
73  * Added the character elements to replace the use of character
74    entities (except in attributes). These allow a processor (e.g.
75    a XSL transformation) to decide how characters should be
76    represented, not this DTD.
77
78 18 April 2003 (version 0.11.1)
79  * Added the following inline elements: "onomatopoeia", "spell",
80    "item".
81
82 27 January 2003 (version 0.11.0)
83  * Moved the optional "footnotes" element between the "meta" and 
84    "data" elements.
85
86 10 January 2003 (version 0.10.4)
87  * Removed the "inline.content" entity from the declaration of the
88    contents of the "blockquote" element. This will break some existing
89    documents.
90
91 7 January 2003 (version 0.10.3)
92  * Made the "src", "width", and "height" attributes of the "instance"
93    element IMPLIED.
94
95 4 January 2003 (version 0.10.2)
96  * Moved the specialized character entity definitions into module
97    files.
98 x
99 5 October 2002 (version 0.10.1)
100  * Added the "lellips" and "minus" entities and changed the definition
101    of the "emdash" entity.
102
103 5 September 2002 (version 0.10.0)
104  * Added the "quote" element.
105
106 31 August 2002 (version 0.9.1)
107  * Added the "xml:lang" attribute to the "core.attributes" entity.
108    Although this could be used for most elements, it is primarily
109    aimed at the "foreign" element.
110
111 6 July 2002 (version 0.9)
112  * Replaced the "caption" element and the "illustrator" attribute with
113    the use of the "meta" element.
114  * Renamed the "illustration-instance" element to simply "instance".
115  * Removed the "character-attribute" element.
116  * Added the "typ" element for typographical markup.
117  * Removed the "shortname" attribute.
118
119 1 June 2002 (version 0.8.3)
120  * Removed the "marker" attribute from the "footnote" element.
121
122 29 April 2002 (vesion 0.8.2)
123  * Changed the content of the "enemy" element from "#PCDATA" to 
124    "%inline.content;".
125
126 4 April 2002 (version 0.8.1)
127  * Added the "thinspace" entity
128
129 3 April 2002 (version 0.8.0)
130  * Added the "thought" element.
131  * Added the "foreign" element.
132
133 15 March 2002 (version 0.7.0)
134  * Changed the name of the "illustration-set" element to "illustration"
135    and changed the name of the "illustration" element to
136    "illustration-instance".
137  * Made many minor changes to bring the DTD up to current practice.
138
139 11 May 2001 (version 0.6.0)
140  * Removed the "publication-date" element.
141
142 5 May 2001 (version 0.5.0)
143  * Added facilities for transformation to LaTeX - mainly appropriate 
144    character escapes.
145  * Added the "marker" attribute to the "footnote" element.
146
147 1 May 2001 (version 0.4.0)
148
149  * Added the "link" element to the set of allowable "meta" elements.
150    Although not a Dublin Core meta-data element, it's functionality
151    adds a lot to the document.
152
153 30 April 2001 (version 0.3.0)
154
155  * Changed the basic orgranization of the sections by allowing them to
156    have their own meta section instead of a "section-title" element.
157  * Changed the name of the "section-data" element to simply "data".
158
159 17 April 2001 (version 0.2.0)
160
161  * Changed some of the block and inline elements in order to make them 
162    more useful.
163
164 14 April 2001 (version 0.1.0)
165
166  * First revision
167                                                                    -->
168 <!-- ============================================================= -->
169
170 <!-- ============================================================= -->
171 <!--                      Table of Contents                        -->
172 <!-- ============================================================= -->
173
174 <!--
175
176   I. Entities
177      A. General Entities
178      B. Character Entities
179  II. Hierarchical Elements
180 III. Block Elements
181  IV. Inline Elements
182   V. Character Elements
183
184  VI. Appendices
185      A. Valid Document Example
186
187 -->
188
189 <!-- ============================================================= -->
190 <!--                           Entities                            -->
191 <!-- ============================================================= -->
192
193 <!-- ::::::::::::::::::::: General Entities :::::::::::::::::::::: -->
194
195 <!ENTITY % character.content "ch.apos | ch.nbsp | ch.iexcl | ch.cent | ch.pound | ch.curren | ch.yen | ch.brvbar | ch.sect | ch.uml | ch.copy | ch.ordf | ch.laquo | ch.not | ch.shy | ch.reg | ch.macr | ch.deg | ch.plusmn | ch.sup2 | ch.sup3 | ch.acute | ch.micro | ch.para | ch.middot | ch.cedil | ch.sup1 | ch.ordm | ch.raquo | ch.frac14 | ch.frac12 | ch.frac34 | ch.frac13 | ch.frac23 | ch.frac15 | ch.frac25 | ch.frac35 | ch.frac45 | ch.frac16 | ch.frac56 | ch.frac17 | ch.frac18 | ch.frac38 | ch.frac58 | ch.frac78 | ch.frac19 | ch.frac110 | ch.iquest | ch.Agrave | ch.Aacute | ch.Acirc | ch.Atilde | ch.Auml | ch.Aring | ch.AElig | ch.Ccedil | ch.Egrave | ch.Eacute | ch.Ecirc | ch.Euml | ch.Igrave | ch.Iacute | ch.Icirc | ch.Iuml | ch.ETH | ch.Ntilde | ch.Ograve | ch.Oacute | ch.Ocirc | ch.Otilde | ch.Ouml | ch.times | ch.Oslash | ch.Ugrave | ch.Uacute | ch.Ucirc | ch.Uuml | ch.Yacute | ch.THORN | ch.szlig | ch.agrave | ch.aacute | ch.acirc | ch.atilde | ch.auml | ch.aring | ch.aelig | ch.ccedil | ch.egrave | ch.eacute | ch.ecirc | ch.euml | ch.igrave | ch.iacute | ch.icirc | ch.iuml | ch.eth | ch.ntilde | ch.ograve | ch.oacute | ch.ocirc | ch.otilde | ch.ouml | ch.divide | ch.oslash | ch.ugrave | ch.uacute | ch.ucirc | ch.uuml | ch.yacute | ch.thorn | ch.yuml | ch.ampersand | ch.lsquot | ch.rsquot | ch.ldquot | ch.rdquot | ch.minus | ch.endash | ch.emdash | ch.ellips | ch.lellips | ch.blankline | ch.percent | ch.thinspace | ch.frac116 | ch.plus | ch.lte | ch.gte">
196
197 <!ENTITY % inline.content "#PCDATA | a | bookref | footref | em | strong | thought | foreign | quote | cite | code | line | br | typ | onomatopoeia | spell | item | %character.content;">
198
199 <!ENTITY % block.content "p | ul | ol | dl | table | blockquote | illustration | combat | choice | puzzle | deadend | hr | illref | poetry">
200
201 <!ENTITY % mixed.content "choose | signpost">
202
203 <!ENTITY % core.attributes "
204          class CDATA #IMPLIED
205          xml:lang CDATA #IMPLIED
206 ">
207
208 <!ENTITY % link.attributes "
209          idref IDREF #IMPLIED
210          id    ID    #IMPLIED
211 ">
212
213 <!ENTITY % cell.align.attributes "
214          align  ( left | center | right | justify | char ) #IMPLIED
215          char   CDATA                                      #IMPLIED
216          valign ( top | middle | bottom | baseline )       #IMPLIED
217 ">
218
219 <!ENTITY % cell.scope.attributes "
220          rowspan CDATA                               #IMPLIED
221          colspan CDATA                               #IMPLIED
222          axis    CDATA                               #IMPLIED
223          scope   ( row | col | rowgroup | colgroup ) #IMPLIED
224 ">
225
226 <!-- :::::::::::::::::::: Character Entities ::::::::::::::::::::: -->
227
228 <!ENTITY lt     "&#38;#60;"><!-- left angle bracket -->
229 <!ENTITY gt     "&#62;">    <!-- right angle bracket -->
230 <!ENTITY amp    "&#38;#38;"><!-- ampersand -->
231 <!ENTITY apos   "&#39;">    <!-- apostrophe = single quotation mark -->
232 <!ENTITY quot   "&#34;">    <!-- double quotation mark -->
233
234 <!--
235
236 It is the responsibility of the document to define relevant character 
237 entities in its internal subset. See also Character Elements below.
238
239 -->
240
241 <!-- ============================================================= -->
242 <!--                     Hierarchical Elements                     -->
243 <!-- ============================================================= -->
244
245
246 <!ELEMENT gamebook ( meta, section+ )>
247 <!ATTLIST gamebook
248           version  CDATA #REQUIRED
249           xml:lang CDATA #IMPLIED
250 >
251 <!--
252
253 The "version" attribute represents the revision number of the gamebook 
254 DTD. This allows gamebook processors to make decisions about the 
255 suitability of the data.
256
257 The "xml:lang" attribute specifies the primary language of the 
258 document. The data should conform to the IETF RFC1766.
259
260  https://www.ietf.org/rfc/rfc1766.txt
261
262 Examples:
263
264  <gamebook version="0.12" xml:lang="en-UK">
265   <meta . . .> . . . </meta>
266   <section . . .> . . . </section>
267   . . .
268  </gamebook>
269
270  <gamebook version="0.12" > . . . </gamebook>
271
272 -->
273
274 <!-- :::::::::::::::::::::::: meta Element ::::::::::::::::::::::: -->
275 <!--
276
277 The children of the meta element are designed to directly translate to
278 the Dublin Core Element Set v1.1. For a description of each Dublin
279 Core element, visit the following URL:
280
281  (https://dublincore.org/documents/1999/07/02/dces/)
282
283 Although many Dublin Core elements will probably never have any real 
284 relevance to gamebooks, all are included for completeness's sake.
285
286 [editor: add dc: namespace to isolate dublin core elements
287   https://dublincore.org/documents/2001/10/26/dcmi-namespace/ ]
288
289 Note: The "link" element doesn't correspond directly to any Dublin
290 Core element. It has been added here for required functionality.
291 -->
292
293 <!ELEMENT meta ( title | creator | subject | description | publisher | contributor | date | type | format | identifier | source | language | relation | coverage | rights | link)*>
294 <!--
295
296 The "meta" element represents underlying information about the 
297 document. It should contain any number of the Dublin Core 1.1 
298 elements.
299
300 Example:
301
302  <meta>
303   <title . . .> . . . </title>
304   <creator . . .> . . . </creator>
305   . . .
306  </meta>
307
308 -->
309
310 <!ELEMENT title ( %inline.content; | %mixed.content; )*>
311 <!ATTLIST title
312           %core.attributes;
313 >
314
315 <!ELEMENT creator ( %inline.content; | %block.content; | %mixed.content; )*>
316 <!ATTLIST creator
317           %core.attributes;
318           relationship CDATA #IMPLIED
319           sort-name    CDATA #IMPLIED
320 >
321 <!--
322
323 The "relationship" optional attribute defines the relationship of the creator
324 denoted by this element to the document. While the list of possible values is
325 not constrained by the DTD, the normative list is defined by the MARC Code List
326 for Relators <https://www.loc.gov/marc/relators/>.
327
328 The "sort-name" optional attribute contains the a name to be used for sorting.
329
330 Example:
331
332  <creator relationship="aut" sort-name="Dever, Joe">Joe Dever</creator>
333
334 -->
335
336 <!ELEMENT subject ( %inline.content; | %block.content; | %mixed.content; )*>
337 <!ATTLIST subject
338           %core.attributes;
339 >
340
341 <!ELEMENT description ( %inline.content; | %block.content; | %mixed.content; )*>
342 <!ATTLIST description
343           %core.attributes;
344 >
345
346 <!ELEMENT publisher ( %inline.content; | %block.content; | %mixed.content; )*>
347 <!ATTLIST publisher
348           %core.attributes;
349 >
350
351 <!ELEMENT contributor ( %inline.content; | %block.content; | %mixed.content; )*>
352 <!ATTLIST contributor
353           %core.attributes;
354           relationship CDATA #IMPLIED
355           sort-name    CDATA #IMPLIED
356 >
357 <!--
358
359 The "relationship" optional attribute defines the relationship of the creator
360 denoted by this element to the document. While the list of possible values is
361 not constrained by the DTD, the normative list is defined by the MARC Code List
362 for Relators <https://www.loc.gov/marc/relators/>.
363
364 The "sort-name" optional attribute contains the a name to be used for sorting.
365
366 Example:
367
368  <contributor sort-name="Smith, Reader">Reader Smith</contributor>
369
370 -->
371
372 <!ELEMENT date ( year, month, day )>
373 <!ATTLIST date
374           %core.attributes;
375 >
376 <!--
377
378 The "date" element has been extended beyond the specification made in 
379 the Dublin Core. It should contain "year", "month" and "day" elements.
380
381 Example:
382
383  <date>
384   <year . . .> . . . </year>
385   <month . . .> . . . </month>
386   <day . . .> . . . </day>
387  </date>
388
389 -->
390
391 <!ELEMENT year ( #PCDATA )>
392 <!--
393
394 The year should be specified in full digit numeric format.
395
396 Example:
397
398  <year>2001</year>
399
400 -->
401
402 <!ELEMENT month ( #PCDATA )>
403 <!--
404
405 The month should be specified in numeric format with January as "1", 
406 February as "2", etc.
407
408 Example:
409
410  <month>4</month>
411
412 -->
413
414 <!ELEMENT day ( #PCDATA )>
415 <!--
416
417 The "day" element specifies the day of the month in numeric format.
418
419 Example:
420
421  <day>14</day>
422
423 -->
424
425 <!ELEMENT type ( %inline.content; | %mixed.content; )*>
426 <!ATTLIST type
427           %core.attributes;
428 >
429
430 <!ELEMENT format ( %inline.content; | %mixed.content; )*>
431 <!ATTLIST format
432           %core.attributes;
433 >
434
435 <!ELEMENT identifier ( %inline.content; | %mixed.content; )*>
436 <!ATTLIST identifier
437           %core.attributes;
438 >
439
440 <!ELEMENT source ( %inline.content; | %mixed.content; )*>
441 <!ATTLIST source
442           %core.attributes;
443 >
444
445 <!ELEMENT language ( %inline.content; | %mixed.content; )*>
446 <!ATTLIST language
447           %core.attributes;
448 >
449
450 <!ELEMENT relation ( %inline.content; | %mixed.content; )*>
451 <!ATTLIST relation
452           %core.attributes;
453 >
454
455 <!ELEMENT coverage ( %inline.content; | %block.content; | %mixed.content; )*>
456 <!ATTLIST coverage
457           %core.attributes;
458 >
459
460 <!ELEMENT rights ( %inline.content; | %block.content; | %mixed.content; )*>
461 <!ATTLIST rights
462           %core.attributes;
463 >
464
465 <!ELEMENT link EMPTY>
466 <!ATTLIST link
467           %core.attributes;
468           %link.attributes;
469           idrefs IDREFS #IMPLIED>
470 <!--
471
472 The "link" element has been added to the Dublin Core elements to 
473 represent relationships to other parts of the document. The "idrefs" 
474 attribute has been added to allow relationships that are held with 
475 more than one part of the document.
476
477 Examples:
478
479  <link class="next" idref="dedicate" />
480
481  <link class="friends" idrefs="dedicate cmbtrulz" />
482
483 -->
484
485 <!-- ::::::::::::::::::::: section Element ::::::::::::::::::::::: -->
486
487 <!ELEMENT section ( meta, footnotes?, illustrations?, data )>
488 <!ATTLIST section
489           %core.attributes;
490           %link.attributes;
491 >
492 <!--
493
494 The "section" element represents one hierarchical level of data. 
495 Section elements can be nested (inside the "data" element) in 
496 order to create more complex data representations.
497
498 A "section" element can used as a linking element. The most useful way 
499 to utilize this is to make it a named anchor and thus the target of a 
500 "choice" or "puzzle" element.
501
502 Examples:
503
504  <section>
505   <meta><title . . .> . . . </title></meta>
506   <data . . .> . . . </data>
507   <footnotes . . .> . . . </footnotes>
508  </section>
509
510  <section id="title">
511   <meta><title . . .> . . . </title></meta>
512   <data . . .>
513    . . .
514    <section id="dedication">
515     <meta><title . . .> . . . </title></meta>
516     <data . . .> . . . </data>
517    </section>
518    . . .
519   </data>
520  </section>
521
522 -->
523
524 <!ELEMENT data ( %block.content; | %mixed.content; | section )*>
525 <!ATTLIST data
526           %core.attributes;
527 >
528 <!--
529
530 The "data" element contains the main data contained within 
531 a section. Note that a nested section structure can be created by 
532 including a "section" element within the content of the "data" 
533 element.
534
535 Examples:
536
537  <data>
538   <p . . .> . . . </p>
539   <combat . . .> . . . </combat>
540   . . .
541  </data>
542
543  <data>
544   <section . . .> . . . </section>
545  </data>
546
547 -->
548
549 <!ELEMENT illustrations ( illustration | illgroup )*>
550 <!ATTLIST illustrations
551           %core.attributes;
552 >
553 <!--
554
555 The "illustrations" element represents a collection of illustrations.
556 The illustrations, or illustration groups, should be listed in the
557 order they appear in the book.
558
559 Example:
560
561  <illustrations>
562   <illustration . . . />
563   <illgroup . . .>. . .</illgroup>
564   . . .
565  </illustrations>
566
567 -->
568
569 <!ELEMENT illgroup ( illustration )*>
570 <!ATTLIST illgroup
571           %core.attributes;
572           %link.attributes;
573 >
574
575 <!--
576
577 The "illgroup" element represents a group of illustrations contained
578 within one section. It is used when individual links to the each
579 illustration from the illustrations index are not wanted.
580
581 Example:
582
583  <illgroup idref=". . .">
584   <illustration . . . />
585   <illustration . . . />
586   . . . 
587  </illgroup>
588
589  <illgroup idref=". . ." class="hidden">
590   <illustration . . . />
591   <illustration . . . />
592   . . . 
593  </illgroup>
594
595 -->
596
597 <!ELEMENT footnotes ( footnote )*>
598 <!ATTLIST footnotes
599           %core.attributes;
600 >
601 <!--
602
603 The "footnotes" element represents the collection of extra-textual 
604 information contained within "footnote" elements.
605
606 Example:
607
608  <footnotes>
609   <footnote . . .> . . . </footnote>
610   <footnote . . .> . . . </footnote>
611   . . .
612  </footnotes> 
613
614 -->
615
616 <!ELEMENT footnote ( %block.content; | %mixed.content; )*>
617 <!ATTLIST footnote
618           %core.attributes;
619           %link.attributes;
620 >
621 <!--
622
623 The "footnote" element contains extra-textual information. It can be 
624 used as a linking element and can thus be used to refer back to a 
625 named anchor within the document.
626
627 Example:
628
629  <data . . .>
630   <p . . .>This paragraph requires an appropriate footnote
631    <a id="reference" idref="footnote-reference" . . ./>.
632   </p>
633   . . .
634  </data>
635  <footnotes . . .>
636   <footnote id="footnote-reference" idref="reference">
637    <p . . .>This is the appropriate footnote.</p>
638   </footnote>
639   . . .
640  </footnotes>
641
642 -->
643
644 <!-- ============================================================= -->
645 <!--                        Block Elements                         -->
646 <!-- ============================================================= -->
647
648 <!-- :::::::::::::::::::::::::: Lists :::::::::::::::::::::::::::: -->
649
650 <!ELEMENT ul ( li )*>
651 <!ATTLIST ul
652           %core.attributes;
653 >
654 <!--
655
656 The "ul" represents an unordered list.
657
658 Example:
659
660  <ul>
661   <li . . .> . . . </li>
662   <li . . .> . . . </li>
663   . . .
664  </ul>
665
666 -->
667
668 <!ELEMENT ol ( li )*>
669 <!ATTLIST ol
670           %core.attributes;
671           start CDATA #IMPLIED
672 >
673 <!--
674
675 The "ol" element represents an ordered list.
676
677 Example:
678
679  <ol>
680   <li . . .> . . . First Item . . . </li>
681   <li . . .> . . . Second Item . . . </li>
682   . . .
683  </ol>
684
685 The "start" attribute can be used to start a list from a number 
686 greater than 1.
687
688 Example:
689
690  <ol start="4"> . . . </ol>
691
692 -->
693
694 <!ELEMENT li ( %inline.content; | %block.content; | %mixed.content; )*>
695 <!ATTLIST li
696           %core.attributes;
697           value CDATA #IMPLIED
698 >
699 <!--
700
701 The "li" element is a generic list item used within both ordered and 
702 unordered lists (i.e. "ol" and "ul" elements).
703
704 Examples:
705
706  <ul . . .>
707   . . .
708   <li>list item</li>
709   <li>another list item</li>
710   . . .
711  </ul>
712
713  <ol . . .>
714   <li>first list item</li>
715   <li>second list item</li>
716   . . .
717  </ol>
718
719 The "value" attribute can be used to restart numbering in ordered lists. It has no meaning when used in unordered lists.
720
721  <ol>
722   <li>this item is numbered 1</li>
723   <li>this item is numbered 2</li>
724   <li value="10">this item is numbered 10</li>
725   <li>this item is numbered 11</li>
726  </ol>
727
728 -->
729
730 <!ELEMENT dl ( dt, dd? )*>
731 <!ATTLIST dl
732           %core.attributes;
733 >
734 <!--
735
736 The "dl" element represents a list of terms and their definitions.
737
738 Example:
739
740  <dl>
741   <dt . . .> . . . First Term . . . </dt>
742    <dd . . .> . . . First Term's Definition . . . </dd>
743    . . .
744   <dt . . .> . . . Second Term . . . </dt>
745    <dd . . .> . . . Second Term's Definition . . . </dd>
746   <dt . . .> . . . Third Term with No Definition . . . </dt>
747  </dl>
748
749 -->
750
751 <!ELEMENT dt ( %inline.content; | %mixed.content; )*>
752 <!ATTLIST dt
753           %core.attributes;
754 >
755 <!--
756
757 The "dt" element represents a definition term within a definition 
758 list. It should be immediately followed by its definitions contained 
759 within "dd" elements.
760
761 Example:
762
763  <dl . . .>
764   . . .
765   <dt>Definition Term</dt>
766    <dd . . .> . . . Definition . . . </dd>
767   . . .
768  </dl>
769
770 -->
771
772 <!ELEMENT dd ( %inline.content; | %block.content; | %mixed.content; )*>
773 <!ATTLIST dd
774           %core.attributes;
775 >
776 <!--
777
778 The "dd" element contains a definition.
779
780 Example:
781
782  <dt . . .> . . . Term to be defined . . . </dt>
783   <dd>Definition of the term.</dd>
784
785 -->
786
787 <!-- :::::::::::::::::::::::::: Tables ::::::::::::::::::::::::::: -->
788
789 <!ELEMENT table ( caption?, colgroup*, thead?, tfoot?, ( tr+ | tbody+ ))>
790 <!ATTLIST table
791           summary CDATA #IMPLIED
792           %core.attributes;
793 >
794 <!--
795
796 The "table" element represents tabular data. It's data is organized 
797 within rows.
798
799 Example:
800
801  <table>
802   <tr . . .> . . . </tr>
803   <tr . . .> . . . </tr>
804   . . .
805  </table>
806
807 -->
808
809 <!ELEMENT caption ( %inline.content; | %mixed.content; )*>
810 <!ATTLIST caption
811           %core.attributes;
812 >
813 <!--
814
815 The "caption" element contains a brief description of the data
816 contained in the table and the structure of the table.
817
818 Example:
819
820  <table>
821   <caption>Random Number Table</caption>
822   . . .
823  </table>
824
825 -->
826
827 <!ELEMENT colgroup EMPTY>
828 <!ATTLIST colgroup
829           span CDATA #REQUIRED
830 >
831 <!--
832
833 The "colgroup" element explicitly groups several columns of tabular data
834 together. The "span" attribute specifies the number of columns to be
835 grouped. This is primarily useful for non-visual user agents.
836
837 Example:
838
839  <table>
840   . . .
841   <colgroup span="1"/>
842   <colgroup span="13"/>
843   . . .
844  </table>
845
846 -->
847
848 <!ELEMENT thead ( tr+ )>
849 <!ATTLIST thead
850           %core.attributes;
851 >
852 <!--
853
854 The "thead" element contains rows of data designated as the table
855 header. It creates a rowgroup for the purposes of the "scope"
856 attribute in the "th" and "td" elements.
857
858 Example:
859
860  <table>
861   . . .
862   <thead>
863    <tr . . .> . . . </tr>
864    . . .
865   </thead>
866   . . .
867  </table>
868
869 -->
870
871 <!ELEMENT tfoot ( tr+ )>
872 <!ATTLIST tfoot
873           %core.attributes;
874 >
875 <!--
876
877 The "tfoot" element contains rows of data designated as the table
878 footer. It creates a rowgroup for the purposes of the "scope"
879 attribute in the "th" and "td" elements.
880
881 Example:
882
883  <table>
884   . . .
885   <tfoot>
886    <tr . . .> . . . </tr>
887    . . .
888   </tfoot>
889   . . .
890  </table>
891
892 -->
893
894 <!ELEMENT tbody ( tr+ )>
895 <!ATTLIST tbody
896           %core.attributes;
897 >
898 <!--
899
900 The "tbody" element contains rows of data designated as the part
901 of the main table data. More than one "tbody" element is allowed per
902 "table" element. It creates a rowgroup for the purposes of the "scope"
903 attribute in the "th" and "td" elements.
904
905 Example:
906
907  <table>
908   . . .
909   <tfoot>
910    <tr . . .> . . . </tr>
911    . . .
912   </tfoot>
913   . . .
914  </table>
915
916 -->
917
918 <!ELEMENT tr ( th | td )*>
919 <!ATTLIST tr
920           %core.attributes;
921 >
922 <!--
923
924 The "tr" element contains a collection of "th" and "td" elements that 
925 represent one row of a "table".
926
927 Example:
928
929  <table . . .>
930   . . .
931   <tr>
932    <th . . .> . . . </th>
933    <td . . .> . . . </td>
934    . . .
935   </tr>
936   . . .
937  </table>
938
939 -->
940
941 <!ELEMENT th ( %inline.content; | %mixed.content; )*>
942 <!ATTLIST th
943           %core.attributes;
944           %cell.align.attributes;
945           %cell.scope.attributes;
946 >
947 <!--
948
949 The "th" contains a table header used to label a particular row or 
950 column of tabular data.
951
952 The "scope" attribute specifies to what extent the data of this header
953 applies. The "axis" attribute is a comma-separated list of categories
954 to which the element belongs.
955
956 Example:
957
958  <tr . . .>
959   . . .
960   <th>Row Label</th>
961   <td . . .> . . . </td>
962   <td . . .> . . . </td>
963   . . .
964  </tr>
965
966 -->
967
968 <!ELEMENT td ( %inline.content; | %mixed.content; )*>
969 <!ATTLIST td
970           %core.attributes;
971           %cell.align.attributes;
972           %cell.scope.attributes;
973 >
974 <!--
975
976 The "td" element contains one cell of tabular data.
977
978 The "scope" attribute may be used in conjunction with a "td" element to
979 specify that though its data isn't considered header data, it functions
980 as a label for the data. For example, a character's name is a label for a row
981 of the character's statistics, but it is not a header.
982
983 Example:
984
985  <tr . . .>
986   . . .
987   <td>Cell data</td>
988   . . .
989  </tr>
990
991 -->
992
993 <!-- :::::::::::::::::::::: Miscellaneous :::::::::::::::::::::::: -->
994
995 <!ELEMENT p ( %inline.content; | %mixed.content; )*>
996 <!ATTLIST p
997           %core.attributes;
998 >
999 <!--
1000
1001 The "p" element contains a paragraph.
1002
1003 Example:
1004
1005  <p>This is a (short) paragraph.</p>
1006
1007 -->
1008
1009 <!ELEMENT blockquote ( %block.content; | %mixed.content; )*>
1010 <!ATTLIST blockquote
1011           %core.attributes;
1012 >
1013 <!--
1014
1015 The "blockquote" element contains a lengthy quotation which isn't 
1016 contained within a paragraph.
1017
1018 Example:
1019
1020  <blockquote>
1021   <p>There was once a Kai monk from Sommerlund . . .</p>
1022  </blockquote>
1023
1024 -->
1025
1026 <!ELEMENT poetry ( line+ )*>
1027 <!ATTLIST poetry
1028           %core.attributes;
1029 >
1030 <!--
1031
1032 The "poetry" element contains a poem that is organized into a
1033 sequence of lines contained in "line" elements.
1034
1035 Example:
1036
1037  <poetry>
1038   <line>When the full moon shines o<ch.apos/>er the temple deep,</line>
1039   <line>A sacrifice will stir from sleep</line>
1040   <line>The legions of a long forgotten lord.</line>
1041   <line>When a fair royal maid on the altar dies,</line>
1042   <line>The dead of Maakengorge shall rise</line>
1043   <line>To claim their long-awaited reward.</line>
1044  </poetry>
1045
1046 -->
1047
1048 <!ELEMENT combat ( enemy, enemy-attribute+ )>
1049 <!ATTLIST combat
1050           %core.attributes;
1051 >
1052 <!--
1053
1054 The "combat" element contains one combat represented by the enemy's 
1055 name and attributes.
1056
1057 Example:
1058
1059  <combat>
1060   <enemy . . .> . . . </enemy>
1061   <enemy-attribute . . .> . . . </enemy-attribute>
1062   <enemy-attribute . . .> . . . </enemy-attribute>
1063   . . .
1064  </combat>
1065
1066 -->
1067
1068 <!ELEMENT enemy ( %inline.content; | %mixed.content; )*>
1069 <!ATTLIST enemy
1070           %core.attributes;
1071 >
1072 <!--
1073
1074 The "enemy" element contains an enemy's name.
1075
1076 Example:
1077
1078  <combat . . .>
1079   . . .
1080   <enemy>12-foot Giak</enemy>
1081   . . .
1082  </combat>
1083
1084 -->
1085
1086 <!ELEMENT enemy-attribute ( #PCDATA )*>
1087 <!ATTLIST enemy-attribute
1088           %core.attributes;
1089 >
1090 <!--
1091
1092 The "enemy-attribute" element contains one particular attribute which 
1093 describes an enemy.
1094
1095 Example:
1096
1097  <combat . . .>
1098   . . .
1099   <enemy-attribute>30</enemy-attribute>
1100   . . .
1101  </combat>
1102
1103 -->
1104
1105 <!ELEMENT choice ( %inline.content; | %mixed.content; | link-text )*>
1106 <!ATTLIST choice
1107           %core.attributes;
1108           %link.attributes;
1109 >
1110 <!--
1111
1112 The "choice" element contains the text describing a choice presented 
1113 within a section. It's a linking element and therefore can link to 
1114 the place to which the choice leads.
1115
1116 The choice element can contain "link-text" elements which suggest text 
1117 that should be used by the user agent to represent the hyperlink.
1118
1119 Example:
1120
1121  <section id="section12" . . .> . . . </section>
1122  . . .
1123  <choice idref="section12">If you would like to fight the 12-foot Giak, 
1124   <link-text . . .> . . . turn to 12. . . . </link-text>
1125  </choice>
1126
1127 -->
1128
1129 <!ELEMENT link-text ( %inline.content; | %mixed.content; )*>
1130 <!ATTLIST link-text
1131           %core.attributes;
1132 >
1133 <!--
1134
1135 The "link-text" element contains text which is suggested for use by 
1136 hypertext user interfaces to represent one end of a hyperlink.
1137
1138 Example:
1139
1140  <choice . . .>
1141   . . .
1142   <link-text>the unfortunately ubiquitous "Click Here!"</link-text>
1143   . . .
1144  </choice>
1145
1146 -->
1147
1148 <!ELEMENT puzzle ( %inline.content; | %mixed.content; )*>
1149 <!ATTLIST puzzle
1150           %core.attributes;
1151           %link.attributes;
1152           idrefs IDREFS #IMPLIED
1153 >
1154 <!--
1155
1156 The "puzzle" element contains the text describing the action of
1157 proceeding to the section that is the answer for a puzzle or riddle
1158 presented elsewhere within the section. It's a linking element and
1159 therefore can link to the place to which the correct answer to the
1160 puzzle leads. In the case that the puzzle has multiple solutions, use a
1161 space separated list of IDs in the "idrefs" attribute. This link
1162 information should not generally be presented to the reader.
1163
1164 Examples:
1165
1166  <section id="section12" . . .> . . . </section>
1167  . . .
1168  <puzzle idref="section12">If you know the answer to her riddle, turn to
1169  the entry of that number.</puzzle>
1170
1171
1172  <section id="section23" . . .> . . . </section>
1173  . . .
1174  <section id="section350" . . .> . . . </section>
1175  . . .
1176  <puzzle idrefs="section23 section350">If you know only one of the two
1177  correct numbers that you need to open the lock, turn to the entry of
1178  that number.</puzzle>
1179
1180 -->
1181
1182 <!ELEMENT deadend ( %inline.content; | %mixed.content; )*>
1183 <!ATTLIST deadend
1184           %core.attributes;
1185 >
1186 <!--
1187
1188 The "deadend" element contains the text describing the fact that an
1189 adventure has come to an end (e.g. the character has died).
1190
1191 Example:
1192
1193  <deadend>Tragically, your life ends here.</deadend>
1194
1195 -->
1196
1197 <!ELEMENT illustration ( meta?, instance+ )>
1198 <!ATTLIST illustration
1199           %core.attributes;
1200           %link.attributes;
1201 >
1202
1203 <!--
1204
1205 The "illustration" element contains a set of alternate 
1206 representations of a particular illustration.
1207
1208 Example:
1209
1210  <illustration>
1211   <meta> . . . </meta>
1212   <instance . . .> . . . </instance>
1213   <instance . . .> . . . </instance>
1214   . . .
1215  </illustration>
1216
1217 -->
1218
1219 <!ELEMENT instance ( %inline.content; | %block.content; | %mixed.content; )*>
1220 <!ATTLIST instance
1221           %core.attributes;
1222           src         CDATA #IMPLIED
1223           width       CDATA #IMPLIED
1224           height      CDATA #IMPLIED
1225           mime-type   CDATA #IMPLIED
1226           originalwidth CDATA #IMPLIED
1227           posx        CDATA #IMPLIED
1228           posy        CDATA #IMPLIED
1229 >
1230 <!--
1231
1232 The "instance" element describes one instance of an illustration.
1233
1234 The "src" attribute is a URL for the data file for the illustration.
1235
1236 The "width" and "height" attributes contain the dimensions of the 
1237 illustration.
1238
1239 The "mime-type" attribute can contain an appropriate label for the 
1240 format of the illustration file (e.g. "image/png" or "image/jpeg").
1241
1242 The "originalwidth" attribute contains the width of the illustration
1243 as it appears in the printed books. It is given including a unit
1244 (e.g. "54mm").
1245
1246 The "posx" and "posx" attributes are hints for the positioning of the
1247 illustration when the PDF is generated.
1248
1249 The "instance" element can contain block or inline content that
1250 is intended to replace graphical illustrations.
1251
1252 Example:
1253
1254  <illustration . . .>
1255   . . .
1256   <instance src="17.gif" width="386" height="532" type="image/gif" />
1257   <instance src="" width="" height="" type="text" >
1258    [content here]
1259   </instance>
1260   <instance class="pdf" src="sword.pdf" originalwidth="54mm" />
1261   . . .
1262  </illustration>
1263
1264 -->
1265
1266 <!ELEMENT illref EMPTY>
1267 <!ATTLIST illref
1268           %core.attributes;
1269           %link.attributes;
1270 >
1271
1272 <!--
1273
1274 The "illref" element is used to mark the location of an illustration.
1275 The actual illustration is declared elsewhere.
1276
1277 Since the placement of a particular illustration may depend on the
1278 output format, one "illref" is required for each format.
1279
1280 Example:
1281
1282   <illref idref="ill2" class="html"/>
1283   <illref idref="ill2" class="pdf"/>
1284
1285 -->
1286
1287 <!ELEMENT signpost ( %inline.content; | %block.content; | %mixed.content; )*>
1288 <!ATTLIST signpost
1289           %core.attributes;
1290 >
1291 <!--
1292
1293 The "signpost" element contains the text of a sign or message that
1294 should be presented offset from surrounding text.
1295
1296 Example:
1297
1298  <signpost>RENDALIM'S LABORATORY</signpost>
1299
1300 -->
1301
1302 <!ELEMENT hr EMPTY>
1303 <!ATTLIST hr
1304           %core.attributes;
1305 >
1306 <!--
1307
1308 The "hr" element designates a horizontal rule. Since this is a 
1309 presentational tag, it should be used sparingly in cases where new
1310 logical divisions of the text begin which aren't given a unique 
1311 title.
1312
1313 Example:
1314
1315  <hr />
1316
1317 --> 
1318
1319 <!ELEMENT choose ( when+, otherwise? )>
1320 <!ATTLIST choose
1321           %core.attributes;
1322           test CDATA #REQUIRED
1323 >
1324 <!ELEMENT when ( %inline.content; | %block.content; | %mixed.content; )*>
1325 <!ATTLIST when
1326           %core.attributes;
1327           value CDATA #IMPLIED
1328 >
1329 <!ELEMENT otherwise ( %inline.content; | %block.content; | %mixed.content; )*>
1330 <!ATTLIST otherwise
1331           %core.attributes;
1332 >
1333 <!--
1334
1335 The "choose", "when", and "otherwise" elements work together to provide a
1336 simple way to include content based on conditions. The value to be tested
1337 is specified in the "choose" element with the "test" attribute. Only the first
1338 "when" element whose "value" attribute matches the value of the test is included. If none pass, the "otherwise" element is included.
1339
1340 Example:
1341
1342  <choose test="linkable">
1343   . . .
1344   <when value="true">included if linkable is true</when>
1345   <when value="false">included if linkable is false</when>
1346   <when value="3">included if linkable is 3</when>
1347   <otherwise>included if linkable is none of the above</otherwise>
1348  </ul>
1349
1350 -->
1351
1352 <!-- ============================================================= -->
1353 <!--                       Inline Elements                         -->
1354 <!-- ============================================================= -->
1355
1356 <!ELEMENT a ( %inline.content; | %mixed.content; )*>
1357 <!ATTLIST a
1358           %core.attributes;
1359           %link.attributes;
1360           href CDATA #IMPLIED
1361 >
1362 <!--
1363
1364 The "a" element is used to contain inline content that should be a 
1365 hypertext anchor. The "a" element should not contain another linking
1366 element (e.g. "a", "bookref", "footref").
1367
1368 The "href" attribute is added to allow a reference outside of the 
1369 document itself.
1370
1371 Example:
1372
1373  <p . . .>
1374   . . .
1375   <a idref="section12" id="foo">Section 12</a>
1376   . . .
1377  </p>
1378
1379 -->
1380
1381 <!ELEMENT bookref ( %inline.content; | %mixed.content; )*>
1382 <!ATTLIST bookref
1383           %core.attributes;
1384           %link.attributes;
1385           series  CDATA #IMPLIED
1386           book    CDATA #REQUIRED
1387           section CDATA #IMPLIED
1388 >
1389 <!--
1390
1391 The "bookref" element is used to contain inline content that should be a 
1392 hypertext anchor to another book.
1393
1394 The "series" attribute is a tag that denotes the series of the book that
1395 the link points to. The attribute may be left out if the book is part of
1396 the same series as the one containing the link.
1397
1398 The "book" attribute is a tag that denotes the book that the link points
1399 to. This is not necessarily a URL.
1400
1401 The "section" attribute is a tag indicating which section to link to.
1402 This is not necessarily a URL. The attribute may be left out if no
1403 particular section is referred to.
1404
1405 Example:
1406
1407  <p . . .>
1408   . . .
1409   <bookref series="lw" book="11tpot" section="sect33">
1410    The Prisoners of Time: Section 33
1411   </bookref>
1412   . . .
1413  </p>
1414
1415  <p . . .>
1416   . . .
1417   <bookref book="04wotw">Book 4</bookref>
1418   . . .
1419  </p>
1420
1421 -->
1422
1423 <!ELEMENT footref ( %inline.content; | %mixed.content; )*>
1424 <!ATTLIST footref
1425           %core.attributes;
1426           %link.attributes;
1427 >
1428 <!--
1429
1430 The "footref" element is used to indicate the position of a reference
1431 to a "footnote" element. It should normally not contain any text.
1432
1433 Example:
1434
1435  <p . . .>
1436   . . .
1437   You lose 3EP.<footref id="footref1" idref="footnote1"/>
1438   . . .
1439  </p>
1440
1441 -->
1442
1443 <!ELEMENT em ( %inline.content; | %mixed.content; )*>
1444 <!ATTLIST em
1445           %core.attributes;
1446 >
1447 <!--
1448
1449 The "em" element contains text that should be emphasized. Although not 
1450 part of the DTD and therefore not guaranteed or required to be so, the 
1451 text should be typeset with an italic font.
1452
1453  <p . . .>
1454   . . .
1455   <em>You are being attacked!</em>
1456   . . .
1457  </p>
1458
1459 -->
1460
1461 <!ELEMENT strong ( %inline.content; | %mixed.content; )*>
1462 <!ATTLIST strong
1463           %core.attributes;
1464 >
1465 <!--
1466
1467 The "strong" element contains text that should be emphasized. Although 
1468 not part of the DTD and therefore not guaranteed or required to be so, 
1469 the text should be typeset with a bold font weight.
1470
1471  <p . . .>
1472   . . .
1473   <strong>If</strong> you have the Talisman of Supreme Obscurity,
1474   . . .
1475  </p>
1476
1477 -->
1478
1479 <!ELEMENT thought ( %inline.content; | %mixed.content; )*>
1480 <!ATTLIST thought
1481           %core.attributes;
1482 >
1483 <!--
1484
1485 The "thought" element contains text that is the character's thoughts or is 
1486 an overheard thought. Although not part of the DTD and therefore not 
1487 guaranteed or required to be so, the text should be typeset with an italic
1488 font face.
1489
1490  <p . . .>
1491   . . .
1492   Lone Wolf heard the words <thought>Die Northlander!</strong> echo in
1493   his mind,
1494   . . .
1495  </p>
1496
1497 -->
1498
1499 <!ELEMENT foreign ( %inline.content; | %mixed.content; )*>
1500 <!ATTLIST foreign
1501           %core.attributes;
1502 >
1503 <!--
1504
1505 The "foreign" element contains a phrase in a non-native language.
1506 Although not part of the DTD and therefore not guaranteed or required 
1507 to be so, the text should be typeset with an italic font face.
1508
1509  <p . . .>
1510   . . .
1511   The Giak horde attacked <foreign>en masse</foreign>.
1512   . . .
1513  </p>
1514
1515 -->
1516
1517 <!ELEMENT quote ( %inline.content; | %mixed.content; )*>
1518 <!ATTLIST quote
1519           %core.attributes;
1520 >
1521 <!--
1522
1523 The "quote" element contains an inline quotation.
1524
1525 Example:
1526
1527  <p . . .>The Giak yelped <quote . . .>Oww!</quote></p>
1528
1529 -->
1530
1531 <!ELEMENT cite ( %inline.content; | %mixed.content; )*>
1532 <!ATTLIST cite
1533           %core.attributes;
1534 >
1535 <!--
1536
1537 The "cite" element contains the title of a sited resource.
1538
1539 Example:
1540
1541  <p . . .>
1542   . . .
1543   <cite>Flight from the Dark</cite>
1544   . . .
1545  </p>
1546
1547 -->
1548
1549 <!ELEMENT code ( %inline.content; | %mixed.content; )*>
1550 <!ATTLIST code
1551           %core.attributes;
1552 >
1553 <!--
1554
1555 The "code" element contains data that should be interpreted as literal 
1556 input to a computer (e.g. email addresses and URIs).
1557
1558 Example:
1559
1560  <code>https://www.projectaon.org/</code>
1561
1562 -->
1563
1564 <!ELEMENT line ( %inline.content; | %mixed.content; )*>
1565 <!ATTLIST line
1566           %core.attributes;
1567 >
1568 <!--
1569
1570 The "line" element contains one logical line of data in, for example,
1571 a poem. Its use should be confined to documents such as poems that
1572 require a particular line structure.
1573
1574 Example:
1575
1576  <line>When the full moon rises o'er the temple deep,</line>
1577  <line>A sacrifice will stir from sleep</line>
1578  <line>The legions of a long forgotten lord.</line>
1579
1580 -->
1581
1582 <!ELEMENT br EMPTY>
1583 <!ATTLIST br
1584           %core.attributes;
1585 >
1586 <!--
1587
1588 The "br" indicates a required line break. Its use is deprecated in favor
1589 of the "line" element.
1590
1591 Example:
1592
1593  <blockquote . . .>
1594   . . .
1595   There once was a Kai monk from Sommerlund<br />
1596   Who always wore a pink cummerbund<br />
1597   . . .
1598  </blockquote>
1599
1600 -->
1601
1602 <!ELEMENT typ ( #PCDATA )>
1603 <!ATTLIST typ
1604           %core.attributes;
1605 >
1606 <!--
1607
1608 The "typ" element is used to denote purely typographical markup. For
1609 example, bold font face, italics, and smaller font are purely of
1610 typographical concern. Take care to not use this in place of logical
1611 markup such as the "em" element when it is more appropriate.
1612
1613 Example:
1614
1615 The <typ class="bold">Project Aon</a> volunteers.
1616
1617 -->
1618
1619 <!ELEMENT onomatopoeia ( #PCDATA )>
1620 <!ATTLIST onomatopoeia
1621           %core.attributes;
1622 >
1623 <!--
1624
1625 The "onomatopoeia" element is used to denote words that imitate a
1626 sound (e.g., "whoosh", "bang").
1627
1628 Example:
1629
1630 The <onomatopoeia>clang</onomatopoeia> of the bell is deafening.
1631
1632 -->
1633
1634 <!ELEMENT spell ( #PCDATA )>
1635 <!ATTLIST spell
1636           %core.attributes;
1637 >
1638 <!--
1639
1640 The "spell" element contains the name of a magic spell.
1641
1642 Example:
1643
1644 Having had no success with his female peers, the acolyte learned the
1645 forbidden <spell>Attract Opposite Gender</spell> spell.
1646
1647 -->
1648
1649 <!ELEMENT item ( #PCDATA )>
1650 <!ATTLIST item
1651           %core.attributes;
1652 >
1653 <!--
1654
1655 The "item" element contains the name of an item that the reader can
1656 pick up or interact with.
1657
1658 Example:
1659
1660 Her <item>Sword</a> lay just out of reach.
1661
1662 -->
1663
1664 <!-- ============================================================= -->
1665 <!--                      Character Elements                       -->
1666 <!-- ============================================================= -->
1667 <!--
1668
1669 The character elments provide a hook to specify a character without
1670 specifying the exact representation in target formats. The exact 
1671 representation used is the responsibility of the processor (e.g XSLT
1672 stylesheet.
1673
1674 Portions Copyright International Organization for Standardization 1986 
1675 Permission to copy in any form is granted for use with conforming SGML 
1676 systems and applications as defined in ISO 8879, provided this notice 
1677 is included in all copies.
1678
1679 -->
1680
1681 <!-- no-break space = non-breaking space, U+00A0 ISOnum -->
1682 <!ELEMENT ch.apos EMPTY><!ATTLIST ch.apos %core.attributes;>
1683
1684 <!-- no-break space = non-breaking space, U+00A0 ISOnum -->
1685 <!ELEMENT ch.nbsp EMPTY><!ATTLIST ch.nbsp %core.attributes;>
1686
1687 <!-- inverted exclamation mark, U+00A1 ISOnum -->
1688 <!ELEMENT ch.iexcl EMPTY><!ATTLIST ch.iexcl %core.attributes;>
1689
1690 <!-- cent sign, U+00A2 ISOnum -->
1691 <!ELEMENT ch.cent EMPTY><!ATTLIST ch.cent %core.attributes;>
1692
1693 <!-- pound sign, U+00A3 ISOnum -->
1694 <!ELEMENT ch.pound EMPTY><!ATTLIST ch.pound %core.attributes;>
1695
1696 <!-- currency sign, U+00A4 ISOnum -->
1697 <!ELEMENT ch.curren EMPTY><!ATTLIST ch.curren %core.attributes;>
1698
1699 <!-- yen sign = yuan sign, U+00A5 ISOnum -->
1700 <!ELEMENT ch.yen EMPTY><!ATTLIST ch.yen %core.attributes;>
1701
1702 <!-- broken bar = broken vertical bar, U+00A6 ISOnum -->
1703 <!ELEMENT ch.brvbar EMPTY><!ATTLIST ch.brvbar %core.attributes;>
1704
1705 <!-- section sign, U+00A7 ISOnum -->
1706 <!ELEMENT ch.sect EMPTY><!ATTLIST ch.sect %core.attributes;>
1707
1708 <!-- diaeresis = spacing diaeresis, U+00A8 ISOdia -->
1709 <!ELEMENT ch.uml EMPTY><!ATTLIST ch.uml %core.attributes;>
1710
1711 <!-- copyright sign, U+00A9 ISOnum -->
1712 <!ELEMENT ch.copy EMPTY><!ATTLIST ch.copy %core.attributes;>
1713
1714 <!-- feminine ordinal indicator, U+00AA ISOnum -->
1715 <!ELEMENT ch.ordf EMPTY><!ATTLIST ch.ordf %core.attributes;>
1716
1717 <!-- left-pointing double angle quotation mark = left pointing guillemet, U+00AB ISOnum -->
1718 <!ELEMENT ch.laquo EMPTY><!ATTLIST ch.laquo %core.attributes;>
1719
1720 <!-- not sign, U+00AC ISOnum -->
1721 <!ELEMENT ch.not EMPTY><!ATTLIST ch.not %core.attributes;>
1722
1723 <!-- soft hyphen = discretionary hyphen, U+00AD ISOnum -->
1724 <!ELEMENT ch.shy EMPTY><!ATTLIST ch.shy %core.attributes;>
1725
1726 <!-- registered sign = registered trade mark sign, U+00AE ISOnum -->
1727 <!ELEMENT ch.reg EMPTY><!ATTLIST ch.reg %core.attributes;>
1728
1729 <!-- macron = spacing macron = overline = APL overbar, U+00AF ISOdia -->
1730 <!ELEMENT ch.macr EMPTY><!ATTLIST ch.macr %core.attributes;>
1731
1732 <!-- degree sign, U+00B0 ISOnum -->
1733 <!ELEMENT ch.deg EMPTY><!ATTLIST ch.deg %core.attributes;>
1734
1735 <!-- plus-minus sign = plus-or-minus sign, U+00B1 ISOnum -->
1736 <!ELEMENT ch.plusmn EMPTY><!ATTLIST ch.plusmn %core.attributes;>
1737
1738 <!-- superscript two = superscript digit two = squared, U+00B2 ISOnum -->
1739 <!ELEMENT ch.sup2 EMPTY><!ATTLIST ch.sup2 %core.attributes;>
1740
1741 <!-- superscript three = superscript digit three = cubed, U+00B3 ISOnum -->
1742 <!ELEMENT ch.sup3 EMPTY><!ATTLIST ch.sup3 %core.attributes;>
1743
1744 <!-- acute accent = spacing acute, U+00B4 ISOdia -->
1745 <!ELEMENT ch.acute EMPTY><!ATTLIST ch.acute %core.attributes;>
1746
1747 <!-- micro sign, U+00B5 ISOnum -->
1748 <!ELEMENT ch.micro EMPTY><!ATTLIST ch.micro %core.attributes;>
1749
1750 <!-- pilcrow sign  = paragraph sign, U+00B6 ISOnum -->
1751 <!ELEMENT ch.para EMPTY><!ATTLIST ch.para %core.attributes;>
1752
1753 <!-- middle dot = Georgian comma = Greek middle dot, U+00B7 ISOnum -->
1754 <!ELEMENT ch.middot EMPTY><!ATTLIST ch.middot %core.attributes;>
1755
1756 <!-- cedilla = spacing cedilla, U+00B8 ISOdia -->
1757 <!ELEMENT ch.cedil EMPTY><!ATTLIST ch.cedil %core.attributes;>
1758
1759 <!-- superscript one = superscript digit one, U+00B9 ISOnum -->
1760 <!ELEMENT ch.sup1 EMPTY><!ATTLIST ch.sup1 %core.attributes;>
1761
1762 <!-- masculine ordinal indicator, U+00BA ISOnum -->
1763 <!ELEMENT ch.ordm EMPTY><!ATTLIST ch.ordm %core.attributes;>
1764
1765 <!-- right-pointing double angle quotation mark = right pointing guillemet, U+00BB ISOnum -->
1766 <!ELEMENT ch.raquo EMPTY><!ATTLIST ch.raquo %core.attributes;>
1767
1768 <!-- vulgar fraction one quarter = fraction one quarter, U+00BC ISOnum -->
1769 <!ELEMENT ch.frac14 EMPTY><!ATTLIST ch.frac14 %core.attributes;>
1770
1771 <!-- vulgar fraction one half = fraction one half, U+00BD ISOnum -->
1772 <!ELEMENT ch.frac12 EMPTY><!ATTLIST ch.frac12 %core.attributes;>
1773
1774 <!-- vulgar fraction three quarters = fraction three quarters, U+00BE ISOnum -->
1775 <!ELEMENT ch.frac34 EMPTY><!ATTLIST ch.frac34 %core.attributes;>
1776
1777 <!-- vulgar fraction 1/3, U+2153 ISOnum -->
1778 <!ELEMENT ch.frac13 EMPTY><!ATTLIST ch.frac13 %core.attributes;>
1779
1780 <!-- vulgar fraction 2/3, U+2154 ISOnum -->
1781 <!ELEMENT ch.frac23 EMPTY><!ATTLIST ch.frac23 %core.attributes;>
1782
1783 <!-- vulgar fraction 1/5, U+2155 ISOnum -->
1784 <!ELEMENT ch.frac15 EMPTY><!ATTLIST ch.frac15 %core.attributes;>
1785
1786 <!-- vulgar fraction 2/5, U+2156 ISOnum -->
1787 <!ELEMENT ch.frac25 EMPTY><!ATTLIST ch.frac25 %core.attributes;>
1788
1789 <!-- vulgar fraction 3/5, U+2157 ISOnum -->
1790 <!ELEMENT ch.frac35 EMPTY><!ATTLIST ch.frac35 %core.attributes;>
1791
1792 <!-- vulgar fraction 4/5, U+2158 ISOnum -->
1793 <!ELEMENT ch.frac45 EMPTY><!ATTLIST ch.frac45 %core.attributes;>
1794
1795 <!-- vulgar fraction 1/6, U+2159 ISOnum -->
1796 <!ELEMENT ch.frac16 EMPTY><!ATTLIST ch.frac16 %core.attributes;>
1797
1798 <!-- vulgar fraction 5/6, U+215A ISOnum -->
1799 <!ELEMENT ch.frac56 EMPTY><!ATTLIST ch.frac56 %core.attributes;>
1800
1801 <!-- vulgar fraction 1/7, U+2150 ISOnum -->
1802 <!ELEMENT ch.frac17 EMPTY><!ATTLIST ch.frac17 %core.attributes;>
1803
1804 <!-- vulgar fraction 1/8, U+215B ISOnum -->
1805 <!ELEMENT ch.frac18 EMPTY><!ATTLIST ch.frac18 %core.attributes;>
1806
1807 <!-- vulgar fraction 3/8, U+215C ISOnum -->
1808 <!ELEMENT ch.frac38 EMPTY><!ATTLIST ch.frac38 %core.attributes;>
1809
1810 <!-- vulgar fraction 5/8, U+215D ISOnum -->
1811 <!ELEMENT ch.frac58 EMPTY><!ATTLIST ch.frac58 %core.attributes;>
1812
1813 <!-- vulgar fraction 7/8, U+215E ISOnum -->
1814 <!ELEMENT ch.frac78 EMPTY><!ATTLIST ch.frac78 %core.attributes;>
1815
1816 <!-- vulgar fraction 1/9, U+2151 ISOnum -->
1817 <!ELEMENT ch.frac19 EMPTY><!ATTLIST ch.frac19 %core.attributes;>
1818
1819 <!-- vulgar fraction 1/10, U+2152 ISO num -->
1820 <!ELEMENT ch.frac110 EMPTY><!ATTLIST ch.frac110 %core.attributes;>
1821
1822 <!-- inverted question mark = turned question mark, U+00BF ISOnum -->
1823 <!ELEMENT ch.iquest EMPTY><!ATTLIST ch.iquest %core.attributes;>
1824
1825 <!-- latin capital letter A with grave = latin capital letter A grave, U+00C0 ISOlat1 -->
1826 <!ELEMENT ch.Agrave EMPTY><!ATTLIST ch.Agrave %core.attributes;>
1827
1828 <!-- latin capital letter A with acute, U+00C1 ISOlat1 -->
1829 <!ELEMENT ch.Aacute EMPTY><!ATTLIST ch.Aacute %core.attributes;>
1830
1831 <!-- latin capital letter A with circumflex, U+00C2 ISOlat1 -->
1832 <!ELEMENT ch.Acirc EMPTY><!ATTLIST ch.Acirc %core.attributes;>
1833
1834 <!-- latin capital letter A with tilde, U+00C3 ISOlat1 -->
1835 <!ELEMENT ch.Atilde EMPTY><!ATTLIST ch.Atilde %core.attributes;>
1836
1837 <!-- latin capital letter A with diaeresis, U+00C4 ISOlat1 -->
1838 <!ELEMENT ch.Auml EMPTY><!ATTLIST ch.Auml %core.attributes;>
1839
1840 <!-- latin capital letter A with ring above = latin capital letter A ring, U+00C5 ISOlat1 -->
1841 <!ELEMENT ch.Aring EMPTY><!ATTLIST ch.Aring %core.attributes;>
1842
1843 <!-- latin capital letter AE = latin capital ligature AE, U+00C6 ISOlat1 -->
1844 <!ELEMENT ch.AElig EMPTY><!ATTLIST ch.AElig %core.attributes;>
1845
1846 <!-- latin capital letter C with cedilla, U+00C7 ISOlat1 -->
1847 <!ELEMENT ch.Ccedil EMPTY><!ATTLIST ch.Ccedil %core.attributes;>
1848
1849 <!-- latin capital letter E with grave, U+00C8 ISOlat1 -->
1850 <!ELEMENT ch.Egrave EMPTY><!ATTLIST ch.Egrave %core.attributes;>
1851
1852 <!-- latin capital letter E with acute, U+00C9 ISOlat1 -->
1853 <!ELEMENT ch.Eacute EMPTY><!ATTLIST ch.Eacute %core.attributes;>
1854
1855 <!-- latin capital letter E with circumflex, U+00CA ISOlat1 -->
1856 <!ELEMENT ch.Ecirc EMPTY><!ATTLIST ch.Ecirc %core.attributes;>
1857
1858 <!-- latin capital letter E with diaeresis, U+00CB ISOlat1 -->
1859 <!ELEMENT ch.Euml EMPTY><!ATTLIST ch.Euml %core.attributes;>
1860
1861 <!-- latin capital letter I with grave, U+00CC ISOlat1 -->
1862 <!ELEMENT ch.Igrave EMPTY><!ATTLIST ch.Igrave %core.attributes;>
1863
1864 <!-- latin capital letter I with acute, U+00CD ISOlat1 -->
1865 <!ELEMENT ch.Iacute EMPTY><!ATTLIST ch.Iacute %core.attributes;>
1866
1867 <!-- latin capital letter I with circumflex, U+00CE ISOlat1 -->
1868 <!ELEMENT ch.Icirc EMPTY><!ATTLIST ch.Icirc %core.attributes;>
1869
1870 <!-- latin capital letter I with diaeresis, U+00CF ISOlat1 -->
1871 <!ELEMENT ch.Iuml EMPTY><!ATTLIST ch.Iuml %core.attributes;>
1872
1873 <!-- latin capital letter ETH, U+00D0 ISOlat1 -->
1874 <!ELEMENT ch.ETH EMPTY><!ATTLIST ch.ETH %core.attributes;>
1875
1876 <!-- latin capital letter N with tilde, U+00D1 ISOlat1 -->
1877 <!ELEMENT ch.Ntilde EMPTY><!ATTLIST ch.Ntilde %core.attributes;>
1878
1879 <!-- latin capital letter O with grave, U+00D2 ISOlat1 -->
1880 <!ELEMENT ch.Ograve EMPTY><!ATTLIST ch.Ograve %core.attributes;>
1881
1882 <!-- latin capital letter O with acute, U+00D3 ISOlat1 -->
1883 <!ELEMENT ch.Oacute EMPTY><!ATTLIST ch.Oacute %core.attributes;>
1884
1885 <!-- latin capital letter O with circumflex, U+00D4 ISOlat1 -->
1886 <!ELEMENT ch.Ocirc EMPTY><!ATTLIST ch.Ocirc %core.attributes;>
1887
1888 <!-- latin capital letter O with tilde, U+00D5 ISOlat1 -->
1889 <!ELEMENT ch.Otilde EMPTY><!ATTLIST ch.Otilde %core.attributes;>
1890
1891 <!-- latin capital letter O with diaeresis, U+00D6 ISOlat1 -->
1892 <!ELEMENT ch.Ouml EMPTY><!ATTLIST ch.Ouml %core.attributes;>
1893
1894 <!-- multiplication sign, U+00D7 ISOnum -->
1895 <!ELEMENT ch.times EMPTY><!ATTLIST ch.times %core.attributes;>
1896
1897 <!-- latin capital letter O with stroke = latin capital letter O slash, U+00D8 ISOlat1 -->
1898 <!ELEMENT ch.Oslash EMPTY><!ATTLIST ch.Oslash %core.attributes;>
1899
1900 <!-- latin capital letter U with grave, U+00D9 ISOlat1 -->
1901 <!ELEMENT ch.Ugrave EMPTY><!ATTLIST ch.Ugrave %core.attributes;>
1902
1903 <!-- latin capital letter U with acute, U+00DA ISOlat1 -->
1904 <!ELEMENT ch.Uacute EMPTY><!ATTLIST ch.Uacute %core.attributes;>
1905
1906 <!-- latin capital letter U with circumflex, U+00DB ISOlat1 -->
1907 <!ELEMENT ch.Ucirc EMPTY><!ATTLIST ch.Ucirc %core.attributes;>
1908
1909 <!-- latin capital letter U with diaeresis, U+00DC ISOlat1 -->
1910 <!ELEMENT ch.Uuml EMPTY><!ATTLIST ch.Uuml %core.attributes;>
1911
1912 <!-- latin capital letter Y with acute, U+00DD ISOlat1 -->
1913 <!ELEMENT ch.Yacute EMPTY><!ATTLIST ch.Yacute %core.attributes;>
1914
1915 <!-- latin capital letter THORN, U+00DE ISOlat1 -->
1916 <!ELEMENT ch.THORN EMPTY><!ATTLIST ch.THORN %core.attributes;>
1917
1918 <!-- latin small letter sharp s = ess-zed, U+00DF ISOlat1 -->
1919 <!ELEMENT ch.szlig EMPTY><!ATTLIST ch.szlig %core.attributes;>
1920
1921 <!-- latin small letter a with grave = latin small letter a grave, U+00E0 ISOlat1 -->
1922 <!ELEMENT ch.agrave EMPTY><!ATTLIST ch.agrave %core.attributes;>
1923
1924 <!-- latin small letter a with acute, U+00E1 ISOlat1 -->
1925 <!ELEMENT ch.aacute EMPTY><!ATTLIST ch.aacute %core.attributes;>
1926
1927 <!-- latin small letter a with circumflex, U+00E2 ISOlat1 -->
1928 <!ELEMENT ch.acirc EMPTY><!ATTLIST ch.acirc %core.attributes;>
1929
1930 <!-- latin small letter a with tilde, U+00E3 ISOlat1 -->
1931 <!ELEMENT ch.atilde EMPTY><!ATTLIST ch.atilde %core.attributes;>
1932
1933 <!-- latin small letter a with diaeresis, U+00E4 ISOlat1 -->
1934 <!ELEMENT ch.auml EMPTY><!ATTLIST ch.auml %core.attributes;>
1935
1936 <!-- latin small letter a with ring above = latin small letter a ring, U+00E5 ISOlat1 -->
1937 <!ELEMENT ch.aring EMPTY><!ATTLIST ch.aring %core.attributes;>
1938
1939 <!-- latin small letter ae = latin small ligature ae, U+00E6 ISOlat1 -->
1940 <!ELEMENT ch.aelig EMPTY><!ATTLIST ch.aelig %core.attributes;>
1941
1942 <!-- latin small letter c with cedilla, U+00E7 ISOlat1 -->
1943 <!ELEMENT ch.ccedil EMPTY><!ATTLIST ch.ccedil %core.attributes;>
1944
1945 <!-- latin small letter e with grave, U+00E8 ISOlat1 -->
1946 <!ELEMENT ch.egrave EMPTY><!ATTLIST ch.egrave %core.attributes;>
1947
1948 <!-- latin small letter e with acute, U+00E9 ISOlat1 -->
1949 <!ELEMENT ch.eacute EMPTY><!ATTLIST ch.eacute %core.attributes;>
1950
1951 <!-- latin small letter e with circumflex, U+00EA ISOlat1 -->
1952 <!ELEMENT ch.ecirc EMPTY><!ATTLIST ch.ecirc %core.attributes;>
1953
1954 <!-- latin small letter e with diaeresis, U+00EB ISOlat1 -->
1955 <!ELEMENT ch.euml EMPTY><!ATTLIST ch.euml %core.attributes;>
1956
1957 <!-- latin small letter i with grave, U+00EC ISOlat1 -->
1958 <!ELEMENT ch.igrave EMPTY><!ATTLIST ch.igrave %core.attributes;>
1959
1960 <!-- latin small letter i with acute, U+00ED ISOlat1 -->
1961 <!ELEMENT ch.iacute EMPTY><!ATTLIST ch.iacute %core.attributes;>
1962
1963 <!-- latin small letter i with circumflex, U+00EE ISOlat1 -->
1964 <!ELEMENT ch.icirc EMPTY><!ATTLIST ch.icirc %core.attributes;>
1965
1966 <!-- latin small letter i with diaeresis, U+00EF ISOlat1 -->
1967 <!ELEMENT ch.iuml EMPTY><!ATTLIST ch.iuml %core.attributes;>
1968
1969 <!-- latin small letter eth, U+00F0 ISOlat1 -->
1970 <!ELEMENT ch.eth EMPTY><!ATTLIST ch.eth %core.attributes;>
1971
1972 <!-- latin small letter n with tilde, U+00F1 ISOlat1 -->
1973 <!ELEMENT ch.ntilde EMPTY><!ATTLIST ch.ntilde %core.attributes;>
1974
1975 <!-- latin small letter o with grave, U+00F2 ISOlat1 -->
1976 <!ELEMENT ch.ograve EMPTY><!ATTLIST ch.ograve %core.attributes;>
1977
1978 <!-- latin small letter o with acute, U+00F3 ISOlat1 -->
1979 <!ELEMENT ch.oacute EMPTY><!ATTLIST ch.oacute %core.attributes;>
1980
1981 <!-- latin small letter o with circumflex, U+00F4 ISOlat1 -->
1982 <!ELEMENT ch.ocirc EMPTY><!ATTLIST ch.ocirc %core.attributes;>
1983
1984 <!-- latin small letter o with tilde, U+00F5 ISOlat1 -->
1985 <!ELEMENT ch.otilde EMPTY><!ATTLIST ch.otilde %core.attributes;>
1986
1987 <!-- latin small letter o with diaeresis, U+00F6 ISOlat1 -->
1988 <!ELEMENT ch.ouml EMPTY><!ATTLIST ch.ouml %core.attributes;>
1989
1990 <!-- division sign, U+00F7 ISOnum -->
1991 <!ELEMENT ch.divide EMPTY><!ATTLIST ch.divide %core.attributes;>
1992
1993 <!-- latin small letter o with stroke, = latin small letter o slash, U+00F8 ISOlat1 -->
1994 <!ELEMENT ch.oslash EMPTY><!ATTLIST ch.oslash %core.attributes;>
1995
1996 <!-- latin small letter u with grave, U+00F9 ISOlat1 -->
1997 <!ELEMENT ch.ugrave EMPTY><!ATTLIST ch.ugrave %core.attributes;>
1998
1999 <!-- latin small letter u with acute, U+00FA ISOlat1 -->
2000 <!ELEMENT ch.uacute EMPTY><!ATTLIST ch.uacute %core.attributes;>
2001
2002 <!-- latin small letter u with circumflex, U+00FB ISOlat1 -->
2003 <!ELEMENT ch.ucirc EMPTY><!ATTLIST ch.ucirc %core.attributes;>
2004
2005 <!-- latin small letter u with diaeresis, U+00FC ISOlat1 -->
2006 <!ELEMENT ch.uuml EMPTY><!ATTLIST ch.uuml %core.attributes;>
2007
2008 <!-- latin small letter y with acute, U+00FD ISOlat1 -->
2009 <!ELEMENT ch.yacute EMPTY><!ATTLIST ch.yacute %core.attributes;>
2010
2011 <!-- latin small letter thorn, U+00FE ISOlat1 -->
2012 <!ELEMENT ch.thorn EMPTY><!ATTLIST ch.thorn %core.attributes;>
2013
2014 <!-- latin small letter y with diaeresis, U+00FF ISOlat1 -->
2015 <!ELEMENT ch.yuml EMPTY><!ATTLIST ch.yuml %core.attributes;>
2016
2017
2018 <!-- ::::::::::::::::::::: Special Characters :::::::::::::::::::: -->
2019
2020 <!-- ampersand -->
2021 <!ELEMENT ch.ampersand EMPTY><!ATTLIST ch.ampersand %core.attributes;>
2022
2023 <!-- opening left quotation mark -->
2024 <!ELEMENT ch.lsquot EMPTY><!ATTLIST ch.lsquot %core.attributes;>
2025
2026 <!-- closing right quotation mark -->
2027 <!ELEMENT ch.rsquot EMPTY><!ATTLIST ch.rsquot %core.attributes;>
2028
2029 <!-- opening left double quotation mark -->
2030 <!ELEMENT ch.ldquot EMPTY><!ATTLIST ch.ldquot %core.attributes;>
2031
2032 <!-- closing right double quotation mark -->
2033 <!ELEMENT ch.rdquot EMPTY><!ATTLIST ch.rdquot %core.attributes;>
2034
2035 <!-- mathematical minus -->
2036 <!ELEMENT ch.minus EMPTY><!ATTLIST ch.minus %core.attributes;>
2037
2038 <!-- endash -->
2039 <!ELEMENT ch.endash EMPTY><!ATTLIST ch.endash %core.attributes;>
2040
2041 <!-- emdash -->
2042 <!ELEMENT ch.emdash EMPTY><!ATTLIST ch.emdash %core.attributes;>
2043
2044 <!-- ellipsis -->
2045 <!ELEMENT ch.ellips EMPTY><!ATTLIST ch.ellips %core.attributes;>
2046
2047 <!-- left ellipsis, used at the beginning of edited material -->
2048 <!ELEMENT ch.lellips EMPTY><!ATTLIST ch.lellips %core.attributes;>
2049
2050 <!-- blank line to be filled in -->
2051 <!ELEMENT ch.blankline EMPTY><!ATTLIST ch.blankline %core.attributes;>
2052
2053 <!-- percent sign -->
2054 <!ELEMENT ch.percent EMPTY><!ATTLIST ch.percent %core.attributes;>
2055
2056 <!-- small horizontal space for use between adjacent quotation marks - added mainly for LaTeX's sake -->
2057 <!ELEMENT ch.thinspace EMPTY><!ATTLIST ch.thinspace %core.attributes;>
2058
2059 <!-- vulgar fraction one sixteenth = fraction on sixteenth -->
2060 <!ELEMENT ch.frac116 EMPTY><!ATTLIST ch.frac116 %core.attributes;>
2061
2062 <!-- mathematical plus -->
2063 <!ELEMENT ch.plus EMPTY><!ATTLIST ch.plus %core.attributes;>
2064
2065 <!-- less-than or equal to -->
2066 <!ELEMENT ch.lte EMPTY><!ATTLIST ch.lte %core.attributes;>
2067
2068 <!-- greater-than or equal to -->
2069 <!ELEMENT ch.gte EMPTY><!ATTLIST ch.gte %core.attributes;>
2070
2071 <!-- ============================================================= -->
2072 <!--                          Appendices                           -->
2073 <!-- ============================================================= -->
2074
2075 <!-- :::::::::::::: Valid Gamebook Document Example :::::::::::::: -->
2076 <!--
2077 This document is not intended to document current practice in Project
2078 Aon. It is merely here to demonstrate the concepts of the Gamebook 
2079 DTD. For current practice, please refer to published XML files.
2080 -->
2081
2082 <!--
2083
2084 <?xml version="1.0" encoding="iso-8859-1"?>
2085 <!DOCTYPE gamebook SYSTEM "gamebook.dtd">
2086
2087 <gamebook version="0.12" xml:lang="en-UK">
2088
2089 <meta>
2090  <title>Flight from the Dark</title>
2091  <creator>Joe Dever and Gary Chalk</creator>
2092  <publisher>Project Aon</publisher>
2093  <date><year>2001</year><month>10</month><day>24</day></date>
2094  <rights>Copyright <ch.copy/> 1984 Joe Dever and Gary Chalk.</rights>
2095 </meta>
2096
2097 <section id="section1">
2098  <meta><title>1</title></meta>
2099  <data>
2100   <p>You must make haste for you sense it is not safe to linger by the smoking remains of the ruined monastery. The black-winged beasts could return at any moment. You must set out for the Sommerlund capital of Holmgard and tell the King the terrible news of the massacre: that the whole <ch.eacute/>lite of Kai warriors, save yourself, have been slaughtered. Without the Kai Lords to lead her armies, Sommerlund will be at the mercy of their ancient enemy, the Darklords.</p>
2101   <p>Fighting back tears, you bid farewell to your dead kinsmen. Silently, you promise that their deaths will be avenged. You turn away from the ruins and carefully descend the steep track.</p>
2102   <p>At the foot of the hill, the path splits into two directions, both leading into a large wood.</p>
2103
2104   <choice idref="section85">If you wish to take the right path into the wood, <link-text>turn to 85</link-text>.</choice>
2105   <choice idref="section275">If you wish to follow the left track, <link-text>turn to 275</link-text>.</choice>
2106   <choice idref="section141">If you wish to use your Kai Discipline of Sixth Sense, <link-text>turn to 141</link-text>.</choice>
2107  </data>
2108  <footnotes>
2109   <footnote><p>Later books use <quote>Sommlending</quote> as the possessive adjective for Sommerlund, contrary to the use of the word <quote>Sommerlund</quote> in the third sentence. This is probably not a typo, but a reflection of Joe Dever<ch.apos/>s later expansion of the vocabulary of Magnamund.</p></footnote>
2110  </footnotes>
2111 </section>
2112
2113 <section id="section17">
2114  <meta><title>17</title></meta>
2115  <data>
2116   <p>You raise your weapon to strike at the beast as its razor-fanged mouth snaps shut just inches from your head. Buffeted by the beating of its wings you find it difficult to stand.</p>
2117
2118   <illustration>
2119    <instance src="1.gif" width="386" height="532" mime-type="image/gif" />
2120   </illustration>
2121
2122   <p>Deduct 1 point from your <typ class="attribute">COMBAT SKILL</typ> and fight the Kraan.</p>
2123
2124   <combat>
2125    <enemy>Kraan:</enemy>
2126    <enemy-attribute>16</enemy-attribute>
2127    <enemy-attribute>24</enemy-attribute>
2128   </combat>
2129
2130   <p>If you kill the creature, you quickly descend the far side of the hill to avoid the Giaks.</p>
2131   <p>Pick a number from the Random Number Table.</p>
2132
2133   <choice idref="section53">If you pick 0, <link-text>turn to 53</link-text>.</choice>
2134   <choice idref="section274">If you pick 1<ch.endash/>2, <link-text>turn to 274</link-text>.</choice>
2135   <choice idref="section316">If you pick 3<ch.endash/>9, <link-text>turn to 316</link-text>.</choice>
2136  </data>
2137 </section>
2138
2139 <section id="section53">
2140  <meta><title>53</title></meta>
2141  <data />
2142 </section>
2143
2144 <section id="section85">
2145  <meta><title>85</title></meta>
2146  <data />
2147 </section>
2148
2149 <section id="section141">
2150  <meta><title>141</title></meta>
2151  <data />
2152 </section>
2153
2154 <section id="section274">
2155  <meta><title>274</title></meta>
2156  <data />
2157 </section>
2158
2159 <section id="section275">
2160  <meta><title>275</title></meta>
2161  <data />
2162 </section>
2163
2164 <section id="section316">
2165  <meta><title>316</title></meta>
2166  <data />
2167 </section>
2168
2169 </gamebook>
2170
2171 -->