-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdtbook-2005-3.dtd
2850 lines (2146 loc) · 100 KB
/
dtbook-2005-3.dtd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<!-- DTBook DTD v2005-3 2007-12-19
file: dtbook-2005-3.dtd
The following identifiers apply to this DTD:
"-//NISO//DTD dtbook 2005-3//EN"
"http://www.daisy.org/z3986/2005/dtbook-2005-3.dtd">
-->
<!--jpritchett@rfbd.org: 2007-12-19 Changes that update to version 2005-3, per committee decisions
Issue numbers noted in change log below refer to Z39.86 issue tracker at
http://www.daisy.org/z3986/issues/
-->
<!--jpritchett@rfbd.org: 2006-09-08 Changes that update to version 2005-2, per committee decisions
Issue numbers noted in change log below refer to Z39.86 issue tracker at
http://www.daisy.org/z3986/issues/
-->
<!--HB: 2004-03-25 - 2004-04-28 Changes that update dtbook 1.1.0 Document
Type Declaration:
When the change date is followed by "nn:" or "nna" that represents the
number/letter code on the change list supplied from Michael Moodie on
that date. Additional changes not so noted have been made in discussion
with Michael Moodie.
These changes have been made by Harvey Bingham. -->
<!--HB: 2004-04-15 Editorial revisions made at the group meeting 2004-04-15 -->
<!--
Original authors:
Harvey Bingham
George Kerscher
Michael Moodie
David Pawson
Assisted by DAISY Consortium and NISO DTB Committee work teams.
1. Purpose
The Digital Talking Book Document Type Definition (DTD) provides
the means to mark up the text of a document to permit support for
the combination of professional narration and navigation into that
narration. It also facilitates the output of a document's content in
a variety of accessible formats. The markup tags in the book convey
its content in structure, and contain some metadata about the book
content and its structure.
The Document Type Definition names and defines the allowable element
types, their allowable content, and their attributes. Correct markup
of the text of the book permits the textual material to be synchronized
using SMIL [SMIL2.0] files with the professionally narrated version of
that book. The synchronization can permit concurrent display of the
text being narrated. The textual content can be searched in context to
locate material desired for narration.
More detailed documentation of this dtbook dtd [DTBOOKV20053DTD] is
available as an html document. See [DTBOOKV20053DOC].
1.1. Prior Related Work
The DAISY (Digital Accessible Information SYstem) Consortium
contributed substantially to the development of this DTD.
This application of XML is the next generation after several DAISY
versions of 2.X specifications, see [DAISY202].
The DAISY Statement of Principles for the Creation and Production
of Accessible Books and Materials [DAISY-2-GUIDELINES] represents
the minimum standard to be met by Libraries of the Blind and producers
of alternative format materials.
Its Navigation Control Center (NCC) provided for synchronizing
document structure with narration.
The NCC evolved into an XML application called the "Navigation Control
File for XML applications" (NCX). Its content is derived from
the markup of documents tagged using the dtbook DTD. Richer
structuring capability is one of the objectives of that DTD. The
Synchronized Multimedia Integration Language [SMIL2.0] is used
to provide synchronized narrations and text. The NCX provides
navigation using the identified elements of documents tagged to this DTD.
The dtbook DTD includes many, but not all, of the element types found
in both the [HTML401STRICT] and [XHTML11STRICT] strict DTDs. HTML
authoring tools permit those additional element tags, and may ignore
the additional tags that are dtbook-specific. The lowercase names
from XHTML are used, rather than the uppercase names from HTML.
1.2. Evolution from HTML and XHTML
Dtbook-2005-3 has 83 element types. It shares 46 element types with the
HTML4.0 Strict DTD [HTML401STRICT] (as adjusted to use the lower-case
names consonant with the XHTML Strict DTD [XHTML11STRICT]). It omits
31 element types from them, and has 32 unique element types.
Endtag markup is sometimes optional in HTML. It is required for use with
xhtml and dtbook. Any XML application [XML12] requires endtags, or their
abbreviated form for empty elements, such as "<link />". The benefit of
including endtags is that the tagged document has dependable structure
that can be validated against the dtbook dtd.
Some tools available for browsing HTML may be used with dtbook
material, at the expense of their discarding or ignoring some specific
tagging and attributes that are not part of HTML 4.0. A CSS-based
stylesheet [CSS1] or [CSS2] that identifies the presentation expectations
for the HTML and non-HTML tags, or a filter to map those tags onto
suitable HTML tags can provide appropriate visual presentation.
2. Document Prolog
A Digital Talking Book document is an XML application. Therefore, it
must begin with the XML declaration, followed by the DOCTYPE
declaration.
2.1. XML Declaration
The XML declaration identifies the version of XML, and the
optional character set encoding for the document:
<?xml version="1.0" encoding="UTF-8" ?>
2.2. Character Set Encodings (removed as redundant; unicode suffices)
2.3. DOCTYPE Declaration
The document type declaration, the DOCTYPE, follows. It has several forms.
The simpler form assumes that the proper version of the dtbook DTD
is in the same directory as the dtbook file itself.
<!DOCTYPE dtbook SYSTEM
"dtbook-2005-3.dtd">
A more general form provides the PUBLIC URI from which the SYSTEM
filename can be substituted, should that system copy be missing:
<!DOCTYPE dtbook PUBLIC
"http://www.daisy.org/z3986/2005/dtbook-2005-3.dtd"
"dtbook-2005-3.dtd">
That assumes the URI can be reached, which may not be true for
portable dtbook players.
The still more general form recommended for xml applications [XML12] is:
<!DOCTYPE dtbook PUBLIC
"-//NISO//DTD dtbook 2005-3//EN"
"http://www.daisy.org/z3986/2005/dtbook-2005-3.dtd">
where the Formal Public Identifier (FPI) on the second line is converted
to the URI where it may be publicly found:
http://www.daisy.org/z3986/2005/dtbook-2005-3.dtd
The [OASIS-TR9401] Entity Management Catalog provides an indirect
means to provide that mapping from FPI to the dtd.
That catalog is more generally useful to provide the mapping from
any external entity names (such as modules) to URIs where they may
be found.
Note that the reference above is to a particular version of the DTD,
distinguished by the string "2005-3".
2.4. Digital Talking Book File MIME Type
A Digital Talking Book document is tagged to the dtbook XML
application. Its MIME media-type is "text/xml". The tagged book
filename should have suffix ".xml". See [RFC2045].
3. Modular Extension to the DTD
The dtbook DTD has four parameter entities defined that provide means
to allow an individual book to modularly extend the content models:
<!ENTITY % externalblock "">
<!ENTITY % externalinline "">
<!ENTITY % externalFlow "">
<!ENTITY % externalNamespaces "">
These parameter entities appear in corresponding block and inline
content models. With this "" content they have no effect on books
tagged to the dtbook DTD. In a book that needs a modular extension,
values are given by redefinition in the internal subset of that book.
This extends the dtbook DTD without having to change it.
A book can augment the dtbook DTD by including other declarations
or parameter entity references in the internal subset of declarations.
The internal subset may occur in square brackets following the
ExternalID and before the concluding ">" of the initial DOCTYPE
declaration that identifies the dtbook DTD.
Those additional markup declarations in the internal subset
take preference over any in the dtbook DTD itself. The effective
DTD is thereby augmented by the parameter entity values and any other
declarations of the book's internal subset. When a given parameter
entity declaration appears more than once in the external modules and
the dtbook DTD, the first occurrence of that declaration is the one
that takes effect, with modules in the internal subset being processed
in order, before the DTD itself.
For example:
<!DOCTYPE dtbook SYSTEM
"dtbook.dtd"
[
<!ENTITY % dramaModule SYSTEM "drama.dtd">
%dramaModule;
<!ENTITY % externalblock "| d:drama">
<!ENTITY % externalinline "| d:character">
<!ENTITY % externalFlow "| d:stagedir">
<!ENTITY % externalNamespaces "xmlns:d CDATA #FIXED 'http://www.sample.org/drama'">
]>
The "%dramaModule;" invocation causes all declarations made within
dramaModule to become the initial part of the dtbook DTD. Within the
book, the empty entity declarations for % externalblock,
% externalinline, % externalFlow, and %externalNamespaces
are replaced by these new definitions. Thus the
block element d:drama can appear wherever block elements may occur in
dtbook, d:character can appear wherever inline elements may occur, and
d:stagedir can appear in either block or inline contexts. Note that
each extension element must appear in no more than one of these three
entities. The namespace attribute xmlns:d can occur on any element with
the fixed value of "http://www.sample.org/drama".
More than one module may be needed and included in a book, for example
both poem and drama can appear in the internal subset of the book.
For example, the internal subset of the book could contain:
<!DOCTYPE dtbook SYSTEM
"dtbook.dtd"
[
<!ENTITY % poemModule SYSTEM "poem.dtd">
%poemModule;
<!ENTITY % dramaModule SYSTEM "drama.dtd">
%dramaModule;
<!ENTITY % externalblock "| poem | stanza | verse | drama">
<!ENTITY % externalinline "| stagedir">
]>
Such external modules need to include the definitions of any parameter
entities that are used in the modules since their definitions are needed
before they can be expanded in their references. They cannot depend
on parameter entities in the SystemLiteral or PubidLiteral.
Note that arbitrary external modules from other sources may not have
all the needed attributes. XML allows augmentation of ATTLISTs in the
internal subset. Additional attribute names can be added to an
associated element type. Any redefinitions of a particular named
attribute resulting from presence in the internal subset have
precedence.
Note that tools and players processing any extended markup that affects
navigation structure will need to know of those modular extensions.
The form above for augmenting the dtbook dtd through the document's
internal subset does not require the XML namespace mechanism, with
its namespace-specific prefix on element and attribute names to
disambiguate any potential name collisions. However, use of XML
namespaces [XML-NAMES] is recommended.
4. References
These references are informative. The bracketed names here are targets for
indirect reference from the corresponding bracketed names in other parts
of this document or in descriptions within this section.
[CSS1] Cascading Style Sheets, Level 1. Rec-CSS1-1999011 Revised 11 Jan 1999
http://www.w3.org/TR/REC-CSS1
[CSS2] Cascading Style Sheets, Level 2 CSS2 Specification REC-CSS2-19980512
http://www.w3.org/TR/REC-CSS2
[DAISY202] The DAISY 2.02 Specification for the DAISY Digital Talking
Book (DTB) format, which enables navigation within a sequential
and hierarchical structure consisting of (marked-up) text synchronized
with audio.
http://www.daisy.org/dtbook/spec/2/final/d202/daisy_202.html
[DAISY-2-GUIDELINES] The DAISY 2.02 Specification for
the Creation and Production of Accessible Books and Materials,
Version 0.99 1999-09-23 represents minimum standard to be met by
Libraries for the Blind and producers of alternative format materials:
http://www.daisy.org/dtbook/guidelines/draft/principles.htm
[DTBOOKV20053DTD] The dtbook DTD version 2005-3 (this DTD) is available at:
http://www.daisy.org/z3986/2005/dtbook-2005-3.dtd
Note that some browsers do not permit downloading a file with suffix dtd.
[DTBOOKV20053DOC] Digital Talking Book Expanded Document Type Definition
Documentation for Version 2005-3 of this DTD is available as an
HTML 4.0 document:
http://www.daisy.org/z3986/2005/dtbook/dtbookdoc.html
Should revisions occur, a new directory with node named for the year
of change will contain the revisions.
Any prior specific version of the dtbook dtd and its documentation will
persist.
[DTBOOK3] The last public beta version was dtbook3-07.dtd (2001-01-31).
http://www.loc.gov/nls/z3986/background/dtbk3_old_dtds/dtbk3-07.dtd
and its expanded documentation:
http://www.loc.gov/nls/z3986/background/dtbk3_old_dtds/dtbk3-07doc.htm
Those and prior versions are available at:
http://www.loc.gov/nls/z3986/background/dtbk3_old_dtds/index.html
The history of changes prior to this version, including those
in internal drafts through dtbk110.dtd and before is in:
http://www.loc.gov/nls/z3986/background/dtbook-dtd-changes.txt
In that directory also are the old dtdbk3 dtds, some of which have
been used for test markup, and their documentation. See its
index.html for the list. (Caution: some browsers may not
permit downloading DTDs.)
http://www.loc.gov/nls/z3986/background/index.html
[HTML401STRICT] "HTML 4.0 Strict DTD," 1999-12-24, Dave Raggett,
Arnaud Le hors, and Ian Jacobs. Dtbook110 was originally based on
the HTML 4.0 Strict DTD with design adaptation for dtbook110.
A principal adaptation is to use lower-case names for element types
and attribute names. For expanded discussion, see [HTML401].
http://www.w3.org/TR/1999/REC-html401-19991224/strict.dtd
[HTML401] "HTML 4.01 Specification" W3C Recommendation 24 December 1999
Documentation of the element types that come from the HTML 4.0 Strict
DTD [HTML401STRICT] is available at:
http://www.w3.org/TR/1999/REC-html401-19991224/
Dtbook110 (and now Dtbook122) is partially harmonized with the
[XHTML11STRICT] DTD.
The XHTML camelCase parameter entity names are retained, and comments
and references following those parameter entities explain them. The
lower-case element and attribute names are used. The simplified table
content model of just table rows is included.
[ISO10646] "Information Technology - Universal Multiple-Octet Coded
Character Set (UCS) - Part 1: Architecture and Basic Multilingual
Plane", ISO/IEC 10646-1:1993. The current specification also takes
into consideration the first five amendments to ISO/IEC 10646-1:1993.
[ISO8859] "Information Processing - 8-bit single-byte coded graphic
character sets - Part 1: Latin alphabet No. 1," ISO 8859-1:1987.
Other suffixes "-2 through -9" correspond to other character sets
in the family.
[JIS] "JIS Character Sets" describes the history of JIS, and the
several character sets for KANJI, KANA and other characters.
http://www.io.com/~kazushi/encoding/jis.html
[ANSINISOZ39-86-2002] Specifications for the Digital Talking Book.
http://www.niso.org
[ANSINISOZ39-86-2005] Specifications for the Digital Talking Book.
http://www.niso.org
[NLS-Z3986] Development of ANSI/NISO Z39.86
Contains links to the DTDs developed for ANSI/NISO Z39.86,
Specifications for the Digital Talking Book
http://www.loc.gov/nls/z3986/index.html
[OASIS-TR9401] Entity Management, OASIS Technical Resolution 9401:1997
(Amendment 2 to TR 9401). Paul Grosso, 1997 September 10.
http://www.oasis-open.org/specs/tr9401.html
[RFC1556] "Handling of Bi-directional Texts in MIME," H. Nussbacher,
December 1993.
http://www.cis.ohio-state.edu/cgi-bin/rfc/rfc1556.html
[RFC1942] "HTML Tables", D. Raggett, May 1996
http://www.ietf.org/rfc/rfc1942.txt
Contains detailed descriptions of table elements and their
inheritance of attribute values. Adjustment for XML application is
required: end-tags are necessary, not optional, attribute values
must be quoted.
[RFC2045] "Multipurpose Internet Mail Extensions (MIME) Part One:
Format of Internet Message Bodies", N. Freed and N. Borenstein,
November 1996. Note that this RFC obsoletes RFC1521, RFC1522, and RFC1590.
The %ContentType; and %ContentTypes; media types and the
%Charset; and %Charsets; character encoding values are from [RFC2045].
http://www.cis.ohio-state.edu/cgi-bin/rfc/rfc2045.html
[RFC2046] "Multipurpose Internet Mail Extensions (MIME) Part Two:
Media Types," N. Freed, November 1996. Source for %ContentType; and
%ContentTypes; permitted values:
http://www.cis.ohio-state.edu/cgi-bin/rfc/rfc2046.html
[RFC2396] "Uniform Resource Identifiers (URI): Generic Syntax,"
T. Berners-Lee, R. Fielding, L. Masinter, August 1998. Note that this RFC
revises and replaces the generic definitions in RFC 1738 and RFC 1808.
http://www.cis.ohio-state.edu/cgi-bin/rfc/rfc2396.html
[RFC4646] "Tags for Identifying Languages,"
A. Phillips, Ed., September 2006
http://www.faqs.org/rfcs/rfc4646.html
[SMIL2.0] The Synchronized Multimedia Integration Language SMIL 2.0
W3C Recommendation 07 August 2001 is available at:
http://www.w3.org/TR/2001/REC-smil20-20010807/smil20.html
[XHTML11] "XHTML (tm) 1.0: The Extensible HyperText Markup Language,"
W3C Recommendation 26 January 2000, A reformulation of HTML4 in XML 1.0
includes case-sensitive names, lower-case for elements and their
attributes (but not parameter entity names) and in some cases
equivalent content models that do not require SGML inclusions
and exclusion exceptions (as occurred in the HTML4.0 strict
DTD [HTML401STRICT]) is available at:
http://www.w3.org/TR/xhtml/
[XML-NAMES] "Namespaces in XML 1.1" World Wide Web Consortium
W3C Recommendation 4-Febrary-2004
http://www.w3.org/TR/REC-xml-names11-20040204
[XHTML11STRICT] Expanded documentation of the element types that come
from the XHTML11 strict.dtd and its other DTDs is available within
the zip file:
http://www.w3.org/TR/xhtml1/DTD/xhtml1/xhtml1.zip
Note: some browsers cannot download a dtd directly.
[XML12] This dtbook-2005-3.dtd is an application of the Extensible Markup
Language XML 1.0 (Second Edition) W3C Recommendation 6 October 2000.
It is available at:
http://www.w3.org/TR/REC-xml
-->
<!--======================= Change Log Summary ============================-->
<!--HB: 2004-04-28 changed all version references from 1.1.2 to 1.2.0 -->
<!--HB: 2004-03-25 - 2004-04-28 Changes that update dtbook 1.1.0 Document
Type Declaration:
When the change date is followed by "nn:" or "nna" that represents the
number/letter code on the change list supplied from Michael Moodie on
that date. Additional changes not so noted have been made in discussion
with Michael Moodie.
These changes have been made by Harvey Bingham. -->
<!--HB: 2004-04-15 Editorial revisions made at the group meeting 2004-04-15 -->
<!--HB: 2004-03-25 32: Drop section 2.2 on Character Set Encoding, retained
number so external references won't break to subsequent sections. -->
<!--HB: 2004-04-02 dtbook: updated public identifier
fro: "http://www.loc.bov/nls/z3986/v100"
to: "http://www.loc.gov/nls/z3986/2004". -->
<!--HB: 2004-04-02 dtbook: updated public identifier
from: "http://www.loc.bov/nls/z3986/v100/dtbook110.dtd"
to: "http://www.loc.gov/nls/z3986/2004/dtbook.dtd". -->
<!--HB: 2004-03-25 Changed reference from RFC1766 to its revison, RFC 3066. -->
<!--HB: 2004-03-25 Changed reference from RFC1766 to its revison, RFC 3066. -->
<!--HB: 2004-04-05 % list removed: as content reduced to contain only <list>.-->
<!--HB: 2004-03-25 36f: caption: removed from % inlineinblock. -->
<!--HB: 2004-03-25 30: hr: eliminated, so dropped from % block. -->
<!--HB: 2004-03-29 % block additions:
poem | linegroup | byline | dateline | epigraph. -->
<!--HB: 2004-03-25 30: hr: eliminated, dropped from % blocknoimggroup. -->
<!--HB: 2004-03-29 % blocknoimggroup additions:
poem | linegroup | byline | dateline | epigraph. -->
<!--HB: 2004-03-29 % docblockorinline additions:
poem | linegroup | byline | dateline | epigraph. -->
<!--HB: 2004-04-08 covertitle: added to % docblockorinline -->
<!--HB: 2004-04-27 blockhead: added to % docblockorinline; -->
<!--HB: 2004-03-25 33: % coreattrs: dropped mention of character
mnemonic entities, as use unicode. -->
<!--HB: 2004-03-25 36a: % i18n: removed lang attribute,
as redundant with xml:lang. -->
<!--HB: 2004-04-05 dtbook: added attribute xmlns with FIXED value
'http://www.loc.gov/nls/z3986/2004/dtbook'
Also updated version value from 1.1.0' to '1.1.1'. -->
<!--HB: 2004-04-05 version: updated from '1.1.0' to '1.1.1'.
added value for xmlns:
%URI #FIXED 'http://www.loc.gov/nls/z3986/2004/dtbook/'. -->
<!--HB: 2004-03-25 36: % headmisc: removed style. -->
<!--HB: 2004-04-02 title: element removed from head,
now only used for cite and poem. -->
<!--HB: 2004-03-29 Dublin Core: minimum requirement
name="dc:title" content="book title"; encourage use of
additional name/content pairs from Dublin Core
name="dc:..." and from Digital Talking Book name="dtb:..."
Encourage inclusion of additional Dublin Core and Dtbook metadata
attributes to make more useful the dtbook as stand-alone content. -->
<!--HB: 2004-03-25 36: head: drop th removed element style. -->
<!--HB: 2004-03-25 29: frontmatter: eliminate %block;
level or level1 container is required. -->
<!--HB: 2004-04-08 frontmatter: added covertitle. -->
<!--HB: 2004-03-25 29: bodymatter: eliminate %block;
level or level1 container is required. -->
<!--HB: 2004-03-25 29: rearmatter: eliminate %block;
level or level1 container is required. -->
<!--HB: 2004-03-25 28: level: add constraint - at most one <levelhd> (later
changed to <hd>) per <level>. -->
<!--HB: 2004-03-26 34: level: make contentmodel (...)+, rather than (...)*. -->
<!--HB: 2004-03-25 28: level1: added constraint - at most one <h1>
per <level1>. -->
<!--HB: 2004-03-26 34: level1: make contentmodel (...)+, rather than (...)*. -->
<!--HB: 2004-03-25 28: level2: added constraint - at most one <h2>
per <level2>. -->
<!--HB: 2004-03-26 34: level2: make contentmodel (...)+, rather than (...)*. -->
<!--HB: 2004-03-25 28: level3: added constraint - at most one <h3>
per <level3>. -->
<!--HB: 2004-03-25 28: level4: added constraint - at most one <h4>
per <level4>. -->
<!--HB: 2004-03-25 28: level5: added constraint - at most one <h5>
per <level5>. -->
<!--HB: 2004-03-25 28: level6: added constraint - at most one <h6>
per <level6>. -->
<!--HB: 2004-04-23 % special: eliminated linenum from % special,
linenum only appears within line. -->
<!--HB: 2004-04-23 % specialnoa: eliminated linenum from % specialnoa,
linenum only appears within line. -->
<!--HB: 2004-03-25 36h: to % inlinenoa add %dtbookinline;. -->
<!--HB: 2004-03-30 poem: added linenum use. -->
<!--HB: 2004-04-08 div: added covertitle. -->
<!--HB: 2004-04-04 35b title: added <title> for use in <poem> or <cite>. -->
<!--HB: 2004-03-25 35d: notice element dropped: its purpose is sufficiently
achieved with sidebar with attribute render="required." This provides
sufficient capability for admonitions like warning, hazard,
danger, or caution. -->
<!--HB: 2004-03-25 35g: prodnote: use render="required" to achieve the explicit
admonition such as caution, warning, danger, or hazard, from the
text. Optionally put the specific admonition in the class attribute
value, repeating it from the text. -->
<!--HB: 2004-03-25 35g: sidebar: use render="required" to achieve the explicit
admonition such as caution, warning, danger, or hazard, from the
text. Optionally put the specific admonition in the class attribute
value, repeating it from the text. -->
<!--HB: 2004-03-30 epigraph: element added. -->
<!--HB: 2004-30-30 byline: element added. -->
<!--HB: 2004-30-30 dateline: element added. -->
<!--HB: 2004-03-30 linegroup: The class attribute value can identify the
kind of linegroup, such as "stanza", "chorus", or "canto". -->
<!--HB: 2004-03-30 poem: removed notice and hr from content model. -->
<!--HB: 2004-03-30 poem: added title and author to content model. -->
<!--HB: 2004-03-25 35a: cite: allow title and author. -->
<!--HB: 2004-03-25 30: hr: element dropped horizontal rule as purely visual. -->
<!--HB: 2004-04-08 covertitle: element added -->
<!--HB: 2004-04-02 bridgehead: element added. -->
<!--HB: 2004-03-25 36i: blockquote allow pagenum. -->
<!--HB: 2004-03-25 36d: list: added start attribute to indicate initial
ordinal of a numbered list. -->
<!--HB: 2004-03-31 list: changed enum from 'U' to 'A' for uppercase, and
"X" to 'I' for uppercase Roman. -->
<!--HB: 2004-03-31 list: changed enum value choices from "U" to "A" for
uppercase, and "X" to "I" for uppercase Roman for compatibility
with xhtml. -->
<!--HB: 2004-04-02 list: expanded discussion on enum attribute. -->
<!--HB: 2004-04-27 list: added type "pl" to indicate that the list is
preformatted so no bullets or enumerations should be added. -->
<!--HB: 2004-04-22 list: removed bullet attribute, It is up to a style-sheet to
make any needed visual distinction for nested unordered lists, or if the
list type is "pl" preformatted the bullet form may be there. -->
<!--HB: 2004-03-25 36f: caption: removed use for <img>. -->
<!--MM: 2004-07-08 Various editorial changes. -->
<!--MM: 2004-07-08 34: level3: make contentmodel (...)+, rather than (...)*. -->
<!--MM: 2004-07-08 34: level4: make contentmodel (...)+, rather than (...)*. -->
<!--MM: 2004-07-08 34: level5: make contentmodel (...)+, rather than (...)*. -->
<!--MM: 2004-07-08 34: level6: make contentmodel (...)+, rather than (...)*. -->
<!--MM: 2004-07-23 In %docblockorinline: changed blockhead to bridgehead;
eliminated poem, linegroup, byline, dateline, and epigraph since already
present via %block -->
<!--MM: 2004-07-23 In %inlinenoa: removed %externalinline; since already present
via %dtbookinline;.-->
<!--MM: 2004-07-23 34: level6: replaced "%block | %inlineinblock" with
"%docblockorinline;" per other leveln models. -->
<!--MM: 2004-07-30 Changed content models of level and level1 - level6 to
eliminate ambiguity. Changed version to 1.1.5a-->
<!--MM: 2004-07-30 Dropped 'level' attribute from element div. Revised
description of page types for 'page' attribute on element pagenum.
Dropped recommendation to use page number as id. Copied recent change
comments to text. Removed comments explaining amp, lt, gt, etc. Changed
version to 1.1.5b-->
<!--MM, DP: 2004-08-17 Corrected typos in content models of level and level1 -
level6. Added missing exclamation point in previous change message.-->
<!--MM: 2004-08-17 Added %dtbookblocknoimggroup; to % blocknoimggroup, from
which it had been accidentally dropped. Deleted section on
character entities. -->
<!--MM: 2004-09-15: caption: changed content model to %flow;. -->
<!--MM: 2004-09-15 Deleted element levelhd, replacing it with hd in content
model of level. -->
<!--MM: 2004-09-15 bridgehead: changed content model to (%inline;)*, to match
hd, and h1-h6. -->
<!--MM: 2004-09-16 Changed version to 1.2.0 -->
<!--MM: 2005-03-10 level, level1 - level6: Reverted to 2004-08-17 content model
as simplified content model was not valid. -->
<!--MM: 2005-03-10 Changed version to 1.2.1 -->
<!--MM: 2005-03-11 changed value for xmlns to:
%URI; #FIXED 'http://www.loc.gov/nls/z3986/2005/dtbook/'. -->
<!--MM: 2005-04-22 epigraph - changed ATTLIST to %attrs; -->
<!--MM: 2005-04-22 byline - changed ATTLIST to %attrs; -->
<!--MM: 2005-04-22 dateline - changed ATTLIST to %attrs; -->
<!--MM: 2005-04-22 linegroup - changed ATTLIST to %attrs; -->
<!--MM: 2005-04-22 poem - changed ATTLIST to %attrs; -->
<!--MM: 2005-04-22 dtbook - changed version to 1.2.1a -->
<!--MM: 2005-04-26 version: updated from 1.2.1a to 1.2.2-->
<!--MG: 2005-05-03 fixed malformed comments (double hyphen) -->
<!--NB: 2005-06-22 wrapped all lines at 80 columns -->
<!-- 2005-06-26 M. Gylling. Changed pid, sid, ns uri, and filename for Z3986-2005 -->
<!--jpritchett@rfbd.org: 2006-07-06. Changed pid, sid, version, and filename for 2005-2 throughout -->
<!--jpritchett@rfbd.org: 2006-07-06. (Issue 45) Changed div model to %docblockorinline to include bridgehead -->
<!--jpritchett@rfbd.org: 2006-07-06. (Issue 51) Changed content model for frontmatter. doctitle now required, order of doctitle, covertitle, docauthor fixed. -->
<!--jpritchett@rfbd.org: 2006-07-06. (Issue 129) Removed @style from %coreattrs and %attrsrqd -->
<!--jpritchett@rfbd.org: 2006-07-06. Removed definition of %StyleSheet, since it is no longer needed -->
<!--jpritchett@rfbd.org: 2006-07-06. (Issues 50/68) Added xml:space to %coreattrs and %attrsrqd -->
<!--jpritchett@rfbd.org: 2006-07-06. (Issue 52) Added %coreattrs (id, class, title, xml:space) to title attribute list -->
<!--jpritchett@rfbd.org: 2006-07-07. (Issue 102) Changed @idref type for noteref/annoref to %URI to clarify usage -->
<!--jpritchett@rfbd.org: 2006-07-07. (Issue 102) Modified comments in noteref/annoref ATTLISTs to clarify @idref usage -->
<!--jpritchett@rfbd.org: 2006-07-07. (Issue 119) Changed @lang to @xml:lang in bdo -->
<!--jpritchett@rfbd.org: 2006-07-07. (Issue 48) Corrected reference to RFC2046 in comments regarding @type for a, annoref, noteref -->
<!--jpritchett@rfbd.org: 2006-07-07. (Issue 65) Corrected usage comment for meta -->
<!--jpritchett@rfbd.org: 2006-07-07. (Issue 120) Corrected terminology in section 2 of general documentation comment -->
<!--jpritchett@rfbd.org: 2006-07-07. (Issue 92) Added comment deprecating @showin -->
<!--jpritchett@rfbd.org: 2006-07-07. (Issue 113) Created new entity %externalFlow; for extension elements that are both block and inline -->
<!--jpritchett@rfbd.org: 2006-07-07. (Issue 113) Added %externalFlow to %flow;, %flownopagenum;, %inlines;, %inlinew;, %dtbookblock;, %block; -->
<!--jpritchett@rfbd.org: 2006-07-07. (Issue 117) Created new entity %externalNamespaces; for extension namespace attributes -->
<!--jpritchett@rfbd.org: 2006-07-07. (Issue 117) Added %externalNamespaces; to %coreattrs;, %attrsrqd;, and dtbook -->
<!--jpritchett@rfbd.org: 2006-08-11. (Issue 113) Added %externalFlow; to %dtbookinline; -->
<!--jpritchett@rfbd.org: 2006-09-08. (Issues 50/68) Rewrote attribute lists of code and samp to prevent duplication of @xml:lang -->
<!--jpritchett@rfbd.org: 2007-12-07. Changed pid, sid, version, and filename for 2005-3 throughout, including documentary comments -->
<!--jpritchett@rfbd.org: 2007-12-10. (Issue 194) Removed superfluous %dtbookblock entity -->
<!--jpritchett@rfbd.org: 2007-12-10. (Issue 191) Updated RFC reference from 3066 to 4646 -->
<!--jpritchett@rfbd.org: 2007-12-17. (Issue 148) Updated comments regarding caption/@imgrefs to reflect type of IDREFS, not %URI; -->
<!--jpritchett@rfbd.org: 2007-12-17. (Issue 156) Changed attlist for title to %attrs; -->
<!--jpritchett@rfbd.org: 2007-12-17. (Issue 157) Added @smilref and @showin to bdo -->
<!--jpritchett@rfbd.org: 2007-12-17. (Issue 195) Expanded title content model to include inlines -->
<!--jpritchett@rfbd.org: 2007-12-17. (Issue 200) Added pagenum to imggroup content model -->
<!--jpritchett@rfbd.org: 2007-12-19. (Issue 199) Added pagenum to table and tbody content models -->
<!--================= Comment Classification Conventions ==================-->
<!-- Some comments start with a pattern followed by a colon:
Use: element type and its use.
Attuse: attribute use for associated element type.
HB: date object comment on change by Michael Moodie.
Other comments without such a pattern are dividing lines,
details about the DTD structure, or about dtbook objects.
-->
<!--=================== Imported Parameter Entity Names ===================-->
<!-- Many parameter entities come from the [XHTML11STRICT] strict DTD. -->
<!--jpritchett@rfbd.org: 2006-07-06. Removed definition of %StyleSheet, since it is no longer needed -->
<!ENTITY % Character "CDATA" >
<!-- a single character from [ISO10646]. -->
<!ENTITY % Charset "CDATA" >
<!-- a character encoding, as per [RFC2045]. -->
<!ENTITY % ContentType "CDATA" >
<!-- media type, as per [RFC2046]. -->
<!--HB: 2004-03-25 Changed reference from RFC1766 to its revison, RFC 3066. -->
<!--jpritchett@rfbd.org: 2007-12-10. Changed again from 3066 to its revision 4646 -->
<!ENTITY % LanguageCode "NMTOKEN" >
<!-- a language code, per [RFC4646]. -->
<!ENTITY % Number "CDATA" >
<!-- one or more digits. -->
<!ENTITY % LinkTypes "CDATA" >
<!-- space-separated list of link types. -->
<!ENTITY % MediaDesc "CDATA" >
<!-- single or comma-separated list of media descriptors;
possible values include BRAILLE, PRINT, PROJECTION, SPEECH, ALL,
or the default SCREEN. -->
<!ENTITY % Text "CDATA" >
<!-- used for titles etc. -->
<!ENTITY % URI "CDATA" >
<!-- a Uniform Resource Identifier, see [RFC2396]. -->
<!--================== dtbook External Module Inclusion ===================-->
<!ENTITY % externalblock "" >
<!-- placeholder for block element expansion from external modules;
if changed, string in external subset begins " | blockelementname". -->
<!ENTITY % externalinline "" >
<!-- placeholder for inline element expansion from external modules;
if changed, string in external subset begins " | inlineelementname". -->
<!--jpritchett@rfbd.org: 2006-07-07. Created new entity %externalFlow; for extension elements that are both block and inline -->
<!ENTITY % externalFlow "" >
<!-- placeholder for elements that can be either block or inline from
external modules; if changed, string in external subset begins
" | flowelementname". -->
<!--jpritchett@rfbd.org: 2006-07-07. Created new entity %externalNamespaces; for extension namespace attributes -->
<!ENTITY % externalNamespaces "" >
<!-- placeholder for namespace attributes for external modules. These
attributes will be available on all elements. If changed, string
in external subset is in format
"xmlns:sample CDATA #FIXED 'http://www.sample.org/example'"
-->
<!--======================== dtbook Content Models ========================-->
<!--HB: 2004-04-05 % list removed: as content reduced to contain only <list>.-->
<!--jpritchett@rfbd.org: 2006-07-07. Added %externalFlow; to %dtbookblock;-->
<!--jpritchett@rfbd.org: 2007-12-10. Removed %dtbookblock; (no longer referenced) -->
<!ENTITY % dtbookblocknoimggroup
"author | prodnote | sidebar | note |
annotation %externalblock;" >
<!-- block elements unique to dtbook without imggroup. -->
<!--HB: 2004-03-25 36f: caption: removed from % inlineinblock. -->
<!ENTITY % inlineinblock
"a | cite | samp | kbd | pagenum" >
<!-- inlines that may alternatively be in block elements. -->
<!--HB: 2004-03-25 30: hr: eliminated, so dropped from % block. -->
<!--HB: 2004-03-29 % block additions:
poem | linegroup | byline | dateline | epigraph. -->
<!--jpritchett@rfbd.org: 2006-07-07. Added %externalFlow; to %block;-->
<!ENTITY % block
"p | list | dl | div | blockquote | img | imggroup |
poem | linegroup | byline | dateline | epigraph |
table | address | line | %dtbookblocknoimggroup; %externalFlow;" >
<!-- block elements from [HTML401STRICT] dtd augmented by dtbook-unique
elements (note: list container difers from html ol and ul.) -->
<!--HB: 2004-03-25 30: hr: eliminated, dropped from % blocknoimggroup. -->
<!--HB: 2004-03-29 % blocknoimggroup additions:
poem | linegroup | byline | dateline | epigraph. -->
<!--MM: 2004-08-17 Added %dtbookblocknoimggroup; to % blocknoimggroup,
from which it had been accidentally dropped.-->
<!ENTITY % blocknoimggroup
"p | list | dl | div | blockquote |
poem | linegroup | byline | dateline | epigraph |
table | address | line | %dtbookblocknoimggroup;" >
<!-- block elements from [HTML401STRICT] dtd augmented by dtbook-unique
elements. -->
<!--HB: 2004-03-29 % docblockorinline additions:
poem | linegroup | byline | dateline | epigraph. -->
<!--HB: 2004-04-08 covertitle: added to % docblockorinline -->
<!--HB: 2004-04-27 blockhead: added to % docblockorinline; -->
<!--MM: 2004-07-23 changed blockhead to bridgehead; eliminated poem, linegroup,
byline, dateline, and epigraph since already present via %block -->
<!ENTITY % docblockorinline
"doctitle | docauthor | covertitle | bridgehead |
%block; | %inlineinblock;">
<!-- common non-head elements for use with level or levelN -->
<!--========================= Generic Attributes ==========================-->
<!--HB: 2004-03-25 33: % coreattrs: dropped mention of character
mnemonic entities, as use unicode. -->
<!--jpritchett@rfbd.org: 2006-07-06. Removed @style -->
<!--jpritchett@rfbd.org: 2006-07-06 Added @xml:space -->
<!--jpritchett@rfbd.org: 2006-07-07. Added %externalNamespaces; -->
<!ENTITY % coreattrs
"id ID #IMPLIED
class CDATA #IMPLIED
title %Text; #IMPLIED
xml:space (default|preserve) #IMPLIED
%externalNamespaces;"
>
<!-- coreattrs are attributes permissible for most elements
id document-wide unique id
class space separated list of classes used for rendering
title advisory title/amplification
xml:space whitespace handling (see http://www.w3.org/TR/xml11/#sec-white-space)
-->
<!--HB: 2004-03-25 36a: % i18n: removed lang attribute,
as redundant with xml:lang. -->
<!ENTITY % i18n
"xml:lang %LanguageCode; #IMPLIED
dir (ltr|rtl) #IMPLIED" >
<!-- i18n internationalization attributes
xml:lang language code (as per XML 1.0 spec)
dir direction for weak/neutral text
ltr=left to right
rtl=right to left
xhtml recommendation: use xml:lang such as "en-US", on the major
containing block, to provide source language for
the #IMPLIED values of its descendent elements.
See [RFC1556] for handling bi-directional text in MIME.
-->
<!--jpritchett@rfbd.org: 2006-07-07 Added comment deprecating @showin -->
<!ENTITY % showin
"showin (xxx|xxp|xlx|xlp|bxx|bxp|blx|blp) #IMPLIED" >
<!-- NOTE:
With version 2005-2 of the DTD, the use of the showin attribute is deprecated.
Following more modern conventions that have evolved since showin was
originally added, the Z39.86 Maintenance Committee's intention is to use
namespaces to distinguish output-format-specific information via extension
modules
-->
<!--showin attribute applies for text elements to permit identification
of the kinds of display appropriate for the element, so presentation
choice by the reader among alternative readings can be provided, when
appropriate. Values of showin are coded with three letters in order:
"b"=Braille, "l"=Largeprint, and "p"=Print; or "x"=inappropriate:
Value Braille Largeprint Print Interpretation
"xxx" hide
"xxp" p print only
"xlx" l largeprint only
"xlp" l p largeprint and print
"bxx" b braille only
"bxp" b p braille and print
"blx" b l braille and largeprint
"blp" b l p braille, largeprint, and print
There is no default value; this attribute value is implied
from the most immediate ancestor that specifies a value.
The usual default for showin is 'blp'. If only one showin
value is needed it should be included with <book>.
Different content for the same element (usually <prodnote>) meeting
different needs is possible, with showin serving as a switch to
differentiate among them. Both largeprint and print are appropriate
for screen rendering as well as printing. Different corresponding
styles may be appropriate.
It is possible to include equivalent content from any major structure
below <book> to provide the different content suitable for different
media. These would be independent, sharing no direct content, possibly
having common references to images, with different accompanying text
descriptions.
-->
<!ENTITY % attrs
"%coreattrs;
%i18n;
smilref CDATA #IMPLIED
%showin;" >
<!-- %attrs; is part of most attribute lists. It includes
%coreattrs; from which come the four #IMPLIED attributes:
id, class, title, and xml:space
%i18n; from which come the implied attributes: xml:lang, and dir
smilref is a pointer to a [SMIL2.0] file, normally to the time container
(SMIL <par> or <seq>) containing the media object that references this
element. However, in a text-only DTB consisting of a sequence of
text media objects, smilref points to the media object that
references this element. smilref allows resumption of SMIL
presentation at the proper location after navigation via dtbook file.
All smilref values are expected to be added to an augmented
version of the <dtbook> during production.
%showin; (See entity declaration.)
-->
<!--jpritchett@rfbd.org: 2006-07-06. Removed @style -->
<!--jpritchett@rfbd.org: 2006-07-06. Added xml:space. This allows control of whitespace handling on any element. -->
<!--jpritchett@rfbd.org: 2006-07-07. Added %externalNamespaces; -->
<!ENTITY % attrsrqd
"id ID #REQUIRED
class CDATA #IMPLIED
title %Text; #IMPLIED
xml:space (default|preserve) #IMPLIED
smilref CDATA #IMPLIED
%i18n;
%showin;
%externalNamespaces; " >
<!-- %attrsrqd; includes required id and implied class,
title, and xml:space (see %coreattrs above)
%i18n; from which come the implied attributes: xml:lang, and dir
smilref is a pointer to a [SMIL2.0] file, normally to the time container
(SMIL <par> or <seq>) containing the media object that references this
element. However, in a text-only DTB consisting of a sequence of
text media objects, smilref points to the media object that
references this element. smilref allows resumption of SMIL
presentation at the proper location after navigation via dtbook file.
All smilref values are expected to be added to an augmented
version of the <dtbook> during production.
%externalnamespace; (See entity declaration)
%showin; (See entity declaration.)
-->
<!--========================= Document Structure ==========================-->
<!ENTITY % dtbookcontent
"head, book" >
<!-- dtbookContent designates that each dtbook has a <head> of
metainformation preceding the <book> content.
-->
<!--Use: dtbook is the root element in the Digital Talking Book DTD.
<dtbook> contains metadata in <head> and the contents itself
in <book>.
-->
<!ELEMENT dtbook (%dtbookcontent;) >
<!--HB: 2004-04-05 dtbook: added attribute xmlns with FIXED value
'http://www.loc.gov/nls/z3986/2004/dtbook'
Also updated version value from 1.1.0' to '1.1.1'. -->
<!--Attuse: dtbook
"version" is required, and contains the specific
version of the dtd, so that the dtd version for any dtbook can
be recognized.
"xmlns" is the URL where this dtd and its related materials can
be found.
"%i18n;" internationalization attributes characterize the <book>.
Those values may be adjusted for language changes within it.
-->
<!--HB: 2004-04-05 version: updated from '1.1.0' to '1.1.1'.
added value for xmlns:
%URI; #FIXED 'http://www.loc.gov/nls/z3986/2004/dtbook/'. -->
<!--MM: 2005-03-11 changed value for xmlns to:
%URI; #FIXED 'http://www.loc.gov/nls/z3986/2005/dtbook/'. -->
<!--MM: 2005-04-26 version: updated to 1.2.2-->
<!--MG: 2005-06-26 version: updated to 2005-1-->