1 |
<!-- bibulus.dtd: XML DTD for Bibulus bibliographies. |
2 |
This file is copyright 2003-2004 by Thomas Widmann and Magnus L. Jøhndal |
3 |
under the GNU Public Licence version 2. |
4 |
CVS ID is $Id: bibulus.dtd,v 1.15 2004/05/15 12:40:34 twid Exp $ --> |
5 |
|
6 |
<!ENTITY % atype "id ID #REQUIRED |
7 |
xml:lang NMTOKEN #IMPLIED"> |
8 |
|
9 |
<!ENTITY % ltype "xml:lang NMTOKEN #IMPLIED"> |
10 |
|
11 |
<!ELEMENT biblio ( article | book | booklet | inbook | bookset | incollection | |
12 |
inproceedings | manual | misc | reprint | personal |
13 |
| lecture | oral | image | map | audio | video | |
14 |
manuscript | law | courtcase | |
15 |
software | play | thesis | proceedings | report | |
16 |
unpublished | journal)*> |
17 |
<!ATTLIST biblio %ltype;> |
18 |
|
19 |
<!-- annote and note are here for backwards compatibility; |
20 |
in general, it's better to add these with the citations --> |
21 |
<!ENTITY % info "(locator*, url?, annote?, note?)"> |
22 |
|
23 |
<!-- All entry types are a subset of the following (in this order): |
24 |
crossref, editor, author, key, title+, |
25 |
summary, howpublished, institution, |
26 |
publisher, city, volume, number, series, |
27 |
location, edition, year, %info; --> |
28 |
|
29 |
<!-- a journal or a magazine --> |
30 |
<!ELEMENT journal |
31 |
(title, |
32 |
volume?, |
33 |
number?, |
34 |
location?, |
35 |
year, |
36 |
%info; |
37 |
)> |
38 |
<!ATTLIST journal %atype;> |
39 |
|
40 |
<!-- article: from a journal or a magazine --> |
41 |
<!ELEMENT article |
42 |
(crossref, |
43 |
(author|key), |
44 |
title+, |
45 |
summary?, |
46 |
location?, |
47 |
%info; |
48 |
)> |
49 |
<!ATTLIST article %atype;> |
50 |
|
51 |
<!-- book: explicit publisher --> |
52 |
<!ELEMENT book |
53 |
((((editor|author|key), |
54 |
title+, |
55 |
summary?, |
56 |
publisher, |
57 |
city?, |
58 |
(volume|number)?, |
59 |
series?, |
60 |
edition?, |
61 |
year |
62 |
) |
63 |
| |
64 |
(crossref, |
65 |
editor?, |
66 |
(author|key), |
67 |
title+, |
68 |
summary?, |
69 |
edition, |
70 |
year |
71 |
)), |
72 |
%info; |
73 |
)> |
74 |
<!ATTLIST book %atype;> |
75 |
|
76 |
<!-- booklet: a work that is printed and bound, but without |
77 |
a named publisher or institution --> |
78 |
<!ELEMENT booklet |
79 |
(author?, |
80 |
title+, |
81 |
summary?, |
82 |
howpublished?, |
83 |
city?, |
84 |
year?, |
85 |
%info; |
86 |
)> |
87 |
<!ATTLIST booklet %atype;> |
88 |
|
89 |
<!-- inbook: a chapter and/or a range of pages in a book --> |
90 |
<!ELEMENT inbook |
91 |
( |
92 |
crossref, |
93 |
editor?, |
94 |
author?, |
95 |
title*, |
96 |
location?, |
97 |
year?, |
98 |
%info; |
99 |
)> |
100 |
<!ATTLIST inbook %atype;> |
101 |
|
102 |
<!ELEMENT incollection |
103 |
( |
104 |
crossref, |
105 |
author, |
106 |
title+, |
107 |
summary?, |
108 |
location?, |
109 |
%info; |
110 |
)> |
111 |
<!ATTLIST incollection %atype;> |
112 |
|
113 |
<!-- an article in proceedings --> |
114 |
<!ELEMENT inproceedings |
115 |
(crossref, |
116 |
author, |
117 |
key?, |
118 |
title+, |
119 |
summary?, |
120 |
location?, |
121 |
%info; |
122 |
)> |
123 |
<!ATTLIST inproceedings %atype;> |
124 |
|
125 |
<!ELEMENT manual |
126 |
(author?, |
127 |
title+, |
128 |
summary?, |
129 |
institution?, |
130 |
city?, |
131 |
edition?, |
132 |
year?, |
133 |
%info;)> |
134 |
<!ATTLIST manual %atype;> |
135 |
|
136 |
<!ENTITY % thesistype "type (doctor|phd|master|bachelor) #REQUIRED"> |
137 |
<!ELEMENT thesis |
138 |
(author, |
139 |
title+, |
140 |
summary?, |
141 |
institution, |
142 |
city?, |
143 |
year, |
144 |
%info;)> |
145 |
<!ATTLIST thesis %atype; |
146 |
%thesistype;> |
147 |
|
148 |
<!ELEMENT misc |
149 |
(author?, |
150 |
title*, |
151 |
howpublished?, |
152 |
year?, |
153 |
%info;)> |
154 |
<!ATTLIST misc %atype;> |
155 |
|
156 |
<!-- proceedings of a conference --> |
157 |
<!ELEMENT proceedings |
158 |
(editor?, |
159 |
title+, |
160 |
summary?, |
161 |
institution?, |
162 |
publisher?, |
163 |
city?, |
164 |
volume?, |
165 |
number?, |
166 |
series?, |
167 |
year, |
168 |
%info;)> |
169 |
<!ATTLIST proceedings %atype;> |
170 |
|
171 |
<!-- a report published by an instituion, normally numbered within |
172 |
a series --> |
173 |
<!ENTITY % reporttype "type (techrep|whitepaper) #IMPLIED"> |
174 |
<!ELEMENT report |
175 |
(author, |
176 |
title+, |
177 |
summary?, |
178 |
institution?, |
179 |
city?, |
180 |
number?, |
181 |
series?, |
182 |
year, |
183 |
%info;)> |
184 |
<!ATTLIST report %atype; |
185 |
%reporttype;> |
186 |
|
187 |
<!-- something with an author and a title, but not formally published --> |
188 |
<!ELEMENT unpublished |
189 |
(author, |
190 |
title+, |
191 |
summary?, |
192 |
year?, |
193 |
%info;)> |
194 |
<!ATTLIST unpublished %atype;> |
195 |
|
196 |
<!-- |
197 |
<!ELEMENT reprint (editor?, title?, journal?, publisher, city?, year, |
198 |
volume?, number?, location?, %info;)> |
199 |
<!ATTLIST reprint %atype; |
200 |
%reprinttype;> |
201 |
<!ENTITY % reprinttype "reprinttype (reprint|translation) |
202 |
#IMPLIED"> --> |
203 |
|
204 |
<!-- For adding typographic information --> |
205 |
<!ELEMENT formatted (b|i|t|logo|q)> |
206 |
<!ELEMENT b (#PCDATA)> <!-- bold --> |
207 |
<!ELEMENT i (#PCDATA)> <!-- italic --> |
208 |
<!ELEMENT t (#PCDATA)> <!-- typewriter --> |
209 |
<!ELEMENT q (#PCDATA)> <!-- quotation marks --> |
210 |
<!ELEMENT logo (#PCDATA)> <!-- e.g., <logo>TeX</logo> --> |
211 |
|
212 |
<!ELEMENT city (#PCDATA)> |
213 |
<!ATTLIST city |
214 |
country NMTOKEN #REQUIRED |
215 |
state NMTOKEN #IMPLIED |
216 |
postcode NMTOKEN #IMPLIED |
217 |
street NMTOKEN #IMPLIED |
218 |
%ltype; |
219 |
> |
220 |
|
221 |
<!ELEMENT annote (#PCDATA|formatted)*> |
222 |
|
223 |
<!ELEMENT author (name|entity)+> |
224 |
<!ELEMENT editor (name|entity)+> |
225 |
<!ELEMENT translator (name|entity)+> |
226 |
<!ELEMENT contributor (name|entity)+> |
227 |
<!ELEMENT entity (#PCDATA|formatted)*> |
228 |
<!ELEMENT name (given,von?,family,extrafamily?,jr?)> |
229 |
<!-- what about companies etc.? --> |
230 |
<!ENTITY % gender "gender (m|f) #REQUIRED"> |
231 |
<!ENTITY % ntype "nametype (familylast|familyfirst) #IMPLIED"> |
232 |
<!ATTLIST name %gender; |
233 |
%ltype; |
234 |
%ntype;> |
235 |
|
236 |
<!ELEMENT given (#PCDATA)> <!-- first name --> |
237 |
<!ELEMENT von (#PCDATA)> |
238 |
<!ELEMENT jr (#PCDATA)> |
239 |
<!ELEMENT family (#PCDATA)> <!-- surname --> |
240 |
<!ELEMENT extrafamily (#PCDATA)> <!-- extra Spanish-style surname --> |
241 |
|
242 |
<!ELEMENT location (range|single)+> |
243 |
<!ELEMENT range (from,to?)> |
244 |
<!ELEMENT single (#PCDATA)> |
245 |
<!ELEMENT from (#PCDATA)> |
246 |
<!ELEMENT to (#PCDATA)> |
247 |
<!ENTITY % loctype "type (chapter|page|figure|table|section|part) #REQUIRED"> |
248 |
<!ATTLIST range %loctype;> |
249 |
<!ATTLIST single %loctype;> |
250 |
<!-- chapter should be replaced by location, with types section, --> |
251 |
<!-- pagerange, ... --> |
252 |
|
253 |
<!ENTITY % reftype "id IDREF #REQUIRED"> |
254 |
<!ELEMENT crossref EMPTY> |
255 |
<!ATTLIST crossref %reftype;> |
256 |
|
257 |
<!-- for summaries in other languages; for the moment, only |
258 |
the existence thereof is indicated, but perhaps a title |
259 |
would be helpful? --> |
260 |
<!ELEMENT summary EMPTY> |
261 |
<!ATTLIST summary %ltype;> |
262 |
|
263 |
<!ELEMENT edition (#PCDATA)> |
264 |
|
265 |
<!-- howpublished: e.g., tape recording, hand-out, photo-copied --> |
266 |
<!ELEMENT howpublished (#PCDATA)> |
267 |
|
268 |
<!ENTITY % insttype "type |
269 |
(institution|organization|school) #IMPLIED"> |
270 |
<!ELEMENT institution (#PCDATA)> |
271 |
<!ATTLIST institution %ltype; |
272 |
%insttype;> |
273 |
<!ELEMENT locator (#PCDATA)> |
274 |
<!ATTLIST locator type (lccn|mrnumber|doi|isbn| |
275 |
issn|isrc|isrn|ismn|isan| |
276 |
sici|bici| |
277 |
coden|pmid| |
278 |
uri|bibcode|oai|pii) #REQUIRED> |
279 |
<!ELEMENT url (#PCDATA)> |
280 |
<!ELEMENT journalname (#PCDATA|formatted)*> |
281 |
<!ELEMENT key (#PCDATA)> |
282 |
<!ELEMENT note (#PCDATA|formatted)*> |
283 |
<!ELEMENT number (#PCDATA)> |
284 |
<!ELEMENT numpages (#PCDATA)> |
285 |
<!ELEMENT publisher (#PCDATA)> |
286 |
<!ATTLIST publisher %ltype;> |
287 |
<!ELEMENT series (#PCDATA)> |
288 |
<!ELEMENT title (#PCDATA|formatted)*> |
289 |
<!ATTLIST title %ltype;> |
290 |
<!ELEMENT volume (#PCDATA)> |
291 |
<!ENTITY % month "month (1|2|3|4|5|6|7|8|9|10|11|12| |
292 |
winter|spring|summer|autumn) #IMPLIED"> |
293 |
<!ENTITY % day "day (1|2|3|4|5|6|7|8|9|10| |
294 |
11|12|13|14|15|16|17|18|19|20| |
295 |
21|22|23|24|25|26|27|28|29|30|31) #IMPLIED"> |
296 |
<!ELEMENT year (#PCDATA)> |
297 |
<!ATTLIST year %month; %day;> |