1# ======================================================================
2
3# Website Layout DTD V2.5.0
4# Part of the Website distribution
5# http://sourceforge.net/projects/docbook/
6#
7# Please use the following formal public identifier to identify it:
8#
9# "-//Norman Walsh//DTD Website Layout V2.5.0//EN"
10#
11# For example:
12#
13# <!DOCTYPE layout PUBLIC "-//Norman Walsh//DTD Website Layout V2.5.0//EN"
14#                 "http://docbook.sourceforge.net/release/website/2.5.0/layout.dtd">
15#
16# Please direct all questions and comments about this DTD to
17# Norman Walsh, <ndw@nwalsh.com>.
18
19# ======================================================================
20
21namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"
22
23layout =
24  element layout {
25    attlist.layout,
26    (config | style | script | headlink | copyright)*,
27    toc+,
28    notoc*
29  }
30attlist.layout &= empty
31config = element config { attlist.config, empty }
32attlist.config &=
33  attribute param { text },
34  attribute value { text },
35  attribute altval { text }?
36style = element style { attlist.style, text }
37attlist.style &=
38  attribute src { text }?,
39  attribute type { text }?
40script = element script { attlist.script, text }
41attlist.script &=
42  attribute src { text }?,
43  attribute language { text }?,
44  attribute type { text }?
45headlink = element headlink { attlist.headlink, empty }
46attlist.headlink &=
47  attribute href { text }?,
48  attribute media { text }?,
49  attribute name { text }?,
50  attribute rel { text }?,
51  attribute rev { text }?,
52  attribute src { text }?,
53  attribute title { text }?,
54  attribute type { text }?
55copyright = element copyright { attlist.copyright, year+, holder+ }
56attlist.copyright &= empty
57year = element year { attlist.year, text* }
58attlist.year &= empty
59holder = element holder { attlist.holder, (text | ulink)* }
60attlist.holder &= attribute role { text }?
61ulink = element ulink { attlist.ulink, text* }
62attlist.ulink &= attribute url { text }
63toc = element toc { attlist.toc, tocentry* }
64attlist.toc &=
65  attribute page { text },
66  attribute dir { text }?,
67  attribute filename { text }?
68tocentry =
69  element tocentry {
70    attlist.tocentry, (title | titleabbrev | summary)*, tocentry*
71  }
72attlist.tocentry &=
73  attribute id { xsd:ID }?,
74  attribute page { text }?,
75  attribute href { text }?,
76  attribute dir { text }?,
77  attribute filename { text }?,
78  attribute revisionflag { "added" | "changed" }?,
79  [ a:defaultValue = "0" ] attribute tocskip { "0" | "1" }?
80notoc = element notoc { attlist.notoc, empty }
81attlist.notoc &=
82  attribute page { text },
83  attribute dir { text }?,
84  attribute filename { text }?
85title = element title { attlist.title, any }
86attlist.title &= empty
87titleabbrev = element titleabbrev { attlist.titleabbrev, any }
88attlist.titleabbrev &= empty
89summary = element summary { attlist.summary, text* }
90attlist.summary &= empty
91start = layout
92any =
93  (element * {
94     attribute * { text }*,
95     any
96   }
97   | text)*
98# End of layout.dtd V2.5.0 .............................................
99
100# ......................................................................
101