aboutsummaryrefslogtreecommitdiff
blob: 455397b4c3ffd66d3ff04b548a76be0cc9ea1bef (plain)
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
<!-- Copyright 2019 Gentoo Authors -->
<!-- Distributed under the terms of the MIT/X11 license -->

<!-- Document Type Definition for the Gentoo Devmanual -->
<!-- Based on common.dtd from GuideXML -->

<!ENTITY  % block.class     "p|pre|codesample|note|important|warning|todo
                                |figure|table|ul|ol|dl">
<!ENTITY  % inline.class    "b|c|e|d|uri">
<!ENTITY  % all.class       "%block.class;|%inline.class;">

<!ELEMENT guide         (chapter, include*)>
<!ATTLIST guide         root (true) #IMPLIED
                        self CDATA #IMPLIED>

<!ELEMENT include       EMPTY>
<!ATTLIST include       href CDATA #REQUIRED>

<!ELEMENT chapter       (title, (body|section), section*)>
<!ELEMENT section       (title, (body|subsection), subsection*)>
<!ELEMENT subsection    (title, (body|subsubsection), subsubsection*)>
<!ELEMENT subsubsection (title, body)>

<!-- Title texts are used as anchors, so we shouldn't allow any formatting,
     but unfortunately it is used in the document. -->
<!ELEMENT title         (#PCDATA|%inline.class;)*>

<!ELEMENT body          (authors|contentsTree|%block.class;)+>

<!ELEMENT authors       (author)+>
<!ELEMENT author        (#PCDATA|%inline.class;)*>
<!ATTLIST author        name  CDATA #REQUIRED
                        email CDATA #IMPLIED>

<!ELEMENT contentsTree  EMPTY>
<!ATTLIST contentsTree  maxdepth   CDATA #IMPLIED
                        root       CDATA #IMPLIED
                        extraction CDATA #IMPLIED>

<!ELEMENT p             (#PCDATA|%inline.class;)*>

<!ELEMENT pre           (#PCDATA)>

<!ELEMENT codesample    (#PCDATA)>
<!ATTLIST codesample    lang (c|ebuild|make|m4|sgml) #REQUIRED
                        numbering (lines) #IMPLIED>

<!ELEMENT note          (#PCDATA|%inline.class;)*>
<!ELEMENT important     (#PCDATA|%inline.class;)*>
<!ELEMENT warning       (#PCDATA|%inline.class;)*>
<!ELEMENT todo          (#PCDATA|%inline.class;)*>

<!ELEMENT figure        EMPTY>
<!ATTLIST figure        link CDATA #REQUIRED
                        short CDATA #IMPLIED
                        caption CDATA #IMPLIED>

<!ELEMENT table         (tcolumn*, tr+)>

<!ELEMENT tcolumn       EMPTY>
<!ATTLIST tcolumn       width CDATA #REQUIRED>

<!ELEMENT tr            (th|ti)+>

<!ELEMENT th            (#PCDATA|%inline.class;)*>
<!ATTLIST th            colspan CDATA #IMPLIED
                        rowspan CDATA #IMPLIED
                        align (left|center|right) "left">

<!ELEMENT ti            (#PCDATA|%all.class;)*>
<!ATTLIST ti            colspan CDATA #IMPLIED
                        rowspan CDATA #IMPLIED
                        nowrap  CDATA #IMPLIED
                        align (left|center|right) "left">

<!ELEMENT ul            (li)+>
<!ATTLIST ul            class CDATA #IMPLIED>

<!ELEMENT ol            (li)+>

<!ELEMENT li            (#PCDATA|%all.class;)*>

<!ELEMENT dl            (dt, dd+)+>
<!ELEMENT dt            (#PCDATA|%inline.class;)*>
<!ELEMENT dd            (#PCDATA|%inline.class;)*>

<!ELEMENT b             (#PCDATA|%inline.class;)*>
<!ELEMENT c             (#PCDATA|%inline.class;)*>
<!ELEMENT e             (#PCDATA|%inline.class;)*>
<!ELEMENT d             EMPTY>

<!ELEMENT uri           (#PCDATA|%inline.class;)*>
<!ATTLIST uri           link CDATA #IMPLIED>