previous
TOC
next
Tralics, a LaTeX to XML translator; Part II

9. The DTDs

9.1. The Raweb DTD

In this chapter we give the Raweb DTD (old and new one). The file starts like this.

1 <?xml version="1.0" encoding="iso-8859-1"?>

There is the Copyright notice of the file:

2 <!--
3   Copyright 2002-2004, 2005 Jose Grimm/ INRIA/ Apics Project
4   You have the right to use this file in any way, with the following
5   restriction: you cannot distribute modifications of this file under
6   its name raweb3.dtd, the name raweb.dtd,
7   nor rawebXXXX.dtd,  where XXXX are four digits like 2004.
8   The name `raweb3.dtd' is associated to the raweb DTD of YEAR 2003.
9 -->

We define here the &amp; and &lt; entities. I´m not sure that these definitions are required.

10 <!ENTITY amp "&#x26;#x26;" >
11 <!ENTITY lt  "&#x26;#x3C;" >

We define here some entities. They are used to typeset things like 1st, 2nd, etc., in French.

12 <!ENTITY  ier "<hi rend='sup'>er</hi>">
13 <!ENTITY  iers "<hi rend='sup'>ers</hi>">
14 <!ENTITY  iere "<hi rend='sup'>re</hi>">
15 <!ENTITY  ieres "<hi rend='sup'>res</hi>">
16 <!ENTITY  ieme "<hi rend='sup'>e</hi>">
17 <!ENTITY  iemes "<hi rend='sup'>es</hi>">
18 <!ENTITY  numero "n<hi rend='sup'>o</hi>">
19 <!ENTITY  Numero "N<hi rend='sup'>o</hi>">

This includes the MathML DTD. Note that <ident> and <list> are defined here and in the MathML DTD, they are in a different namespace.

20 <!ENTITY % list.qname "m:list" >
21 <!ENTITY % ident.qname "m:ident" >
22  
23 <!ENTITY % mathml PUBLIC "mathml" "mathml2.dtd">
24 %mathml;

9.1.1. General purpose elements

We list here the elements that can appear in the body of a division. There was a <cit> element here, it should appear only inside a <p>. Since version 2.5, Tralics inserts a \leavevmode before a \cite. Note that <formula>, <table> or <figure> can be inline or not; inline versions are refused here.

25 <!ENTITY % tei-aux "(p | list | note | formula | table | figure)+" >

We list here elements that can only appear in certain places (for instance in a title). In the case of a <formula>, it should be inline.

26 <!ENTITY % texte-restreint
27   "ident | code |  hi | term | ref | xref | formula | TeX | LaTeX" >

This is the concatenation of the two lists, with <cit> added.

28 <!ENTITY % texte-general
29    "ident | code | hi | term| ref| xref | formula | cit | label | list |
30      note | figure | table | TeX | LaTeX" >

The TEI defines a lot of common attributes. Here we use only two of them. Note: the id is used only in the following cases: a division (including modules, and sections like `fondements´), an item in a list, a footnote, a table, a figure, a formula, an entry in the bibliography.

31 <!ENTITY % tei-common-atts
32         'id ID #IMPLIED rend CDATA #IMPLIED'>

Definition of <code common-atts>text</code>. The content of the element is assumed to be some verbatim material, hence it contains only text. Tralics does not produce directly such an element.

33 <!ELEMENT code (#PCDATA) >
34 <!ATTLIST code  %tei-common-atts; >

Definition of <ident common-atts>text</ident>. The content of the element is assumed to be the name of an identifier, hence it contains only text. Tralics does not produce directly such an element.

35 <!ELEMENT ident (#PCDATA) >
36 <!ATTLIST ident %tei-common-atts; >

Definition of <cit rend=A><ref></cit>. The content of the element is a reference to the bibliography; Tralics sets the rend attribute to `foot´ in the case of \footcite.

37 <!ELEMENT cit (ref) >
38 <!ATTLIST cit rend CDATA #IMPLIED >

Definition of <list type=X> body</list>. This was simplified a lot, because we removed all references to <anchor>. As a result, a list can have an optional title (a <head>, but Tralics does not produce it), followed by a sequence of <item>. If the list has type gloss or description, the content is a sequence of <label> plus <item>.

39 <!ELEMENT list
40         ( head?, (item* | (label, item)+)) >
41 <!ATTLIST list
42         %tei-common-atts;
43         type (simple|gloss|ordered|description)  "simple" >

Definition of <item id=A>text</item>. The content can be characters, paragraphs, and some general text (Tralics produces <p> elements in general). You can make a reference to an item; the rend attribute is not used.

44 <!ELEMENT item
45         (#PCDATA | %texte-general; | p )* >
46 <!ATTLIST item
47         id ID #IMPLIED
48         rend CDATA #IMPLIED >

Definition of <label>text</label>. The content is the label of an item; it is the optional argument of the \item command. Only simple text is accepted (in particular, if you want a bullet, you should use \textbullet rather than \bullet).

49 <!ELEMENT label
50         (#PCDATA | %texte-restreint; )* >
51 <!ATTLIST label %tei-common-atts; >

This defines the content of a division; at level 2, we accept only divisions of level 3 or 4. We need two variables for each level, since we cannot give a name foo to (div3|div4) and use it like foo+ or foo*.

52 <!ENTITY % div0-textp "(div1|div2|div3|div4)+">
53 <!ENTITY % div0-texts "(div1|div2|div3|div4)*">
54 <!ENTITY % div1-textp "(div2|div3|div4)+">
55 <!ENTITY % div1-texts "(div2|div3|div4)*">
56 <!ENTITY % div2-textp "(div3|div4)+">
57 <!ENTITY % div2-texts "(div3|div4)*">
58 <!ENTITY % div3-textp "(div4)+">
59 <!ENTITY % div3-texts "(div4)*">

We explain here what can be put in the header of a module: participants, keywords, or moreinfo.

60 <!ENTITY % particip "participant|participants|participante|participantes" >
61 <!ENTITY % ramodule-header "(moreinfo|keywords|%particip;)*">

This describes the attributes for a division. For the Raweb, only id is used, rend and type are ignored.

62 <!ENTITY % tei-div-atts '
63         %tei-common-atts;
64         type CDATA #IMPLIED '>

This describes a <module>. There are some attributes: the html attribute is marked `required´, but it is nowadays unused, and id is preferred. The topic attribute, if present, must be a reference to a <topic> element (identified by its num attribute). Other attributes are unused. The content is: a <head> that indicates the title of the module, followed by some meta data (participants, keywords, more info), and some text (paragraphs, formulas, etc.) or divisions (<div2>, <div3>, etc.).

65 <!ELEMENT module
66     (head, %ramodule-header;, (%div1-textp; | (%tei-aux;, %div1-texts;))) >
67  
68 <!ATTLIST module %tei-div-atts;
69        html CDATA #REQUIRED
70        topic CDATA #IMPLIED >

A <div2> is like a <module>; but there are no topic and no html attribute. It is one level below a module.

71 <!ELEMENT div2
72     (head, %ramodule-header;, (%div2-textp; | (%tei-aux;, %div2-texts;))) >
73 <!ATTLIST div2 %tei-div-atts; >

A <div3> is like a <div2>. It is two levels below a module.

74 <!ELEMENT div3
75    (head, %ramodule-header;, (%div3-textp; | (%tei-aux;, %div3-texts;))) >
76 <!ATTLIST div3 %tei-div-atts; >

A <div4> is like a <div2>. It is three levels below a module. The Raweb does not define <div5>!

77 <!ELEMENT div4
78         (head, %ramodule-header;, %tei-aux;) >
79 <!ATTLIST div4 %tei-div-atts; >

Definition of a <table>. It is formed of a <head>, the caption of the table, optional, and a sequence of <row>. The rows and cols attributes are defined by the TEI as the number of rows in the table and the number of columns per row. They are not used by the Raweb.

80 <!ELEMENT table
81        (head*, row+) >
82  
83 <!ATTLIST table
84         %tei-common-atts;
85         rows NMTOKEN #IMPLIED
86         cols NMTOKEN #IMPLIED >

A <row> is a sequence of <cell>. In the initial versions, a row could contain other things, like a table, but this seems stupid. The attributes top-border and bottom-border can be set to true if you want a border for each cell in the row. The space-before controls the space between this row and the preceding one. The role could be used to emphasize (for instance change the background color, for the first row).

87 <!ELEMENT row
88         (cell)+ >
89 <!ATTLIST row
90         %tei-common-atts;
91         top-border (true|false) "false"
92         bottom-border (true|false) "false"
93         space-before CDATA #IMPLIED
94         role CDATA "data" >

A <cell> can contain text, or more complicated things. It can be empty. Normally, the horizontal or vertical span is one; this can be changed by setting the attributes rows and cols. The attributes right-border, left-border, top-border, and bottom-border can be set to true if you want a border on either side. The halign indicates horizontal alignment (it can be left, center, or right). The role could be used to emphasize (for instance change the background color, for the first column).

95 <!ELEMENT cell
96         (#PCDATA | %texte-general;)* >
97 <!ATTLIST cell
98         %tei-common-atts;
99         role CDATA "data"
100         rows NMTOKEN "1"
101         cols NMTOKEN "1"
102         right-border (true|false) "false"
103         left-border (true|false) "false"
104         halign CDATA #IMPLIED
105         top-border (true|false) "false"
106         bottom-border (true|false) "false"
107    >

A <figure> element has a rend attribute. If this is `inline´, the content should be empty, and the file attribute should define an image. You can also specify a non-inline figure, with no attributes and a content formed uniquely of a caption (a <head> element), or you could specify an optional caption and a sequence of paragraphs (no file in this case). In the case a file attribute is given, this should be the name of an image; in this case, you may say framed = `true´ if you want a frame around the image; you can set width and height if you want to alter the dimensions of the image, or scale, if you want to rescale it (you cannot give scale together with height or depth); you can specify angle if you want to turn the image.

108 <!ELEMENT figure
109         (head?, p*)>
110 <!ATTLIST figure
111         id ID #IMPLIED
112         rend (inline|float) "float"
113         file CDATA #IMPLIED
114         framed CDATA #IMPLIED
115         width CDATA #IMPLIED
116         height CDATA #IMPLIED
117         scale CDATA #IMPLIED
118         angle CDATA #IMPLIED>

You can say <simplemath>N</simplemath> if you want the TeX equivalent of $N$. This must be in a formula; it could be rendered as \textit{N}. It contains a single character.

119 <!ELEMENT simplemath (#PCDATA) >

A <formula> is a wrapper for a math expression; this could be a simple math expression (as above), or a true math expression (as defined by MathML). It has an attribute type. Normally, simple math expressions should be inline. You can reference a formula via its id, but this works only for display math formulas.

120 <!ELEMENT formula
121         (simplemath |math) >
122 <!ATTLIST formula
123         %tei-common-atts;
124         type (inline|display) "inline" >

A <keywords> element contains a list of <term>. The title can be used to typeset the list.

125 <!ELEMENT keywords (term+) >
126 <!ATTLIST keywords %tei-common-atts;
127         titre CDATA #FIXED "Key words: "    >

A <term> is a keyword in a list. Attributes are currently unused.

128 <!ELEMENT term
129         (#PCDATA | %texte-restreint;)* >
130 <!ATTLIST term
131         %tei-common-atts;
132         type CDATA #IMPLIED >

A <p> element is a paragraph. It contains some text (inline math, citations, etc). It is generally indented (but the first paragraph is a section, could have zero indentation), unless noindent is true. The attribute spacebefore can be used if more vertical space is wanted before the start of the paragraph.

133 <!ELEMENT p
134         (#PCDATA | %texte-general; )* >
135  
136 <!ATTLIST p
137         %tei-common-atts;
138         spacebefore CDATA #IMPLIED
139         noindent CDATA #IMPLIED>

The <hi> element can be used to hilight some text; the rend attribute explains how; on page 5.1 we list the different values accepted in HTML, and on page , we give a longer list for the Pdf case.

140 <!ELEMENT hi
141         (#PCDATA | %texte-general; )* >
142 <!ATTLIST hi
143         id ID #IMPLIED
144         rend CDATA #REQUIRED >

The <ref> element defines a reference to some element whose id is the value of the target attribute in the current document; its content is in general empty. The TEI says that the type is IDREFS, and the <ref> element can point to zero, one and more objects; the Raweb says that one and only one target must be given. The content of the element is useful only if the reference points to the bibliography (i.e., is in a <cit>). The type attribute is not used by the Raweb.

145 <!ELEMENT ref
146         (#PCDATA | %texte-general; )* >
147 <!ATTLIST ref
148         %tei-common-atts;
149         type CDATA #IMPLIED
150         target IDREF #IMPLIED >

The <xref> element defines a reference to an external document, defined by the url attribute (which should be a valid URL). Its content could be the value of the link, or maybe something else; it defines the zone in which the link is active. The type attribute is not used by the Raweb.

151 <!ELEMENT xref
152         (#PCDATA | %texte-general; )* >
153 <!ATTLIST xref
154         %tei-common-atts;
155         type CDATA #IMPLIED
156         url CDATA #IMPLIED>

The <head> element can be used as a section title or a caption. Attributes are ignored.

157 <!ELEMENT head
158         (#PCDATA | %texte-general; )* >
159 <!ATTLIST head
160         %tei-common-atts;
161         type CDATA #IMPLIED >

A <note> element can be used for footnotes, for instance if you say place = `foot´. Other attributes like rend, anchored and target are currently ignored. Paragraphs are allowed.

162 <!ELEMENT note
163         (#PCDATA | %texte-general; |  p )* >
164 <!ATTLIST note
165         id ID #IMPLIED
166         rend CDATA #IMPLIED
167         type CDATA #IMPLIED
168         place CDATA "unspecified"
169         anchored (yes | no) "yes"
170         target IDREFS #IMPLIED >

The <anchor/> element is currently unused. We do not show the attribute list.

171 <!ELEMENT anchor EMPTY >

9.1.2. Elements specific to the Raweb

The main element is <raweb>; it is formed by a <accueil>, an optional <moreinfo>, and ten sections. All sections should be present, the mandatory ones are <composition> (who is in the team), <presentation> (a short presentation of the team), <resultats> (new result of the teams this year) and the bibliography. The language attribute indicates the language of the document (currently English), the year attribute indicates the year, and the creator holds the name of the software that created the document.

172 <!ELEMENT raweb (accueil, moreinfo?, composition, presentation,
173   fondements?,domaine?, logiciels?, resultats,contrats?,international?,
174   diffusion?,biblio) >
175 <!ATTLIST raweb year CDATA #IMPLIED >
176 <!ATTLIST raweb language CDATA #IMPLIED >
177 <!ATTLIST raweb creator CDATA #IMPLIED >

The <composition> element is one of the ten sections of the Raweb, as such it has some constant attributes like titre, html and numero. It has a possible id (making a reference to a section is not a good idea, because no HTML page is associated to a section; in the case without topics, a section is a continuous sequence of pages, so a link to the first page could be used; this is no more true in the case with topics). This section contain an optional <moreinfo> and a sequence of <catperso> elements.

178 <!ELEMENT composition (moreinfo?,catperso+)>
179 <!ATTLIST composition
180            titre CDATA #FIXED "Team"
181            html CDATA #FIXED "composition"
182            numero CDATA #FIXED "1"
183            id ID #IMPLIED>

The <presentation> section contains some <module> that explain briefly the main objectives of the Team.

184 <!ELEMENT presentation (module+) >
185 <!ATTLIST presentation
186           titre CDATA #FIXED "Overall Objectives"
187           numero CDATA #FIXED "2"
188           id ID #IMPLIED>

The <fondements> section contains some <module> that explain the scientific foundations of the research of the Team.

189 <!ELEMENT fondements (module+) >
190 <!ATTLIST fondements
191           titre CDATA #FIXED "Scientific Foundations"
192           numero CDATA #FIXED "3"
193           id ID #IMPLIED>

The <domaine> section contains some <module> that explain the application domains of the research of the Team.

194 <!ELEMENT domaine (module+) >
195 <!ATTLIST domaine
196         titre CDATA #FIXED "Application Domains"
197         numero CDATA #FIXED "4"
198         id ID #IMPLIED>

The <logiciels> section contains some <module> that describe the software developed in the Team.

199 <!ELEMENT logiciels (module+) >
200 <!ATTLIST logiciels
201         titre CDATA #FIXED "Software"
202         numero CDATA #FIXED "5"
203         id ID #IMPLIED>

The <resultats> section is the main section of the Raweb; it contains some <module> that explain the results of the Team for the current year.

204 <!ELEMENT resultats (module+) >
205 <!ATTLIST resultats
206         titre CDATA #FIXED "New Results"
207         numero CDATA #FIXED "6"
208         id ID #IMPLIED>

The <contrats> section contains some <module> that explain the how the team is funded (it lists the contracts with industry, etc.)

209 <!ELEMENT contrats (module+) >
210 <!ATTLIST contrats
211         titre CDATA #FIXED "Contracts and Grants with Industry"
212         numero CDATA #FIXED "7"
213         id ID #IMPLIED>

The <international> section contains some <module> that explain national, european, and international activities of the Team.

214 <!ELEMENT international (module+) >
215 <!ATTLIST international
216         titre CDATA #FIXED "Other Grants and Activities"
217         numero CDATA #FIXED "8"
218         id ID #IMPLIED>

The <diffusion> section contains some <module> that explain the how the research of the Team is diffused (teaching, etc.)

219 <!ELEMENT diffusion (module+) >
220 <!ATTLIST diffusion
221         titre CDATA #FIXED "Dissemination"
222         numero CDATA #FIXED "9"
223         id ID #IMPLIED>

The <accueil> element provides some information about the Team. The <addresse> element is obsolete, replaced by <UR>. The <typeprojet> is obsolete, replaced by the isproject attribute. The html attribute defines the name of the Team, using only ASCII characters, like `Miro´; the <projet> element can be more complicated, like `Miró´, and the <projetdeveloppe> may contain “Systèmes à objets, types et prototypes : sémantique et validation” (whenever possible, the language should be the same as in the main document).

224 <!ELEMENT accueil (theme,projet,projetdeveloppe,UR,topic*) >
225 <!ATTLIST accueil html CDATA #REQUIRED >
226 <!ATTLIST accueil isproject (true|false) "true">
227 <!ELEMENT typeprojet (#PCDATA)>
228 <!ELEMENT addresse (#PCDATA) >

The <theme> should be one of com, cog, num, bio, sym. The official list is defined in t the Tralics configuration file.

229 <!ELEMENT theme (#PCDATA)>
230 <!ELEMENT projet (#PCDATA|hi)*>
231 <!ELEMENT projetdeveloppe (#PCDATA|hi)* >

The <UR> element contains some (at least one) references to Inria Research Units. Currently, there are six of them. This may change in a near future, in which case this file has be modified, if you want to validate the Tralics output; on the other hand, the default attribute defined here (for instance the URLs) are not used in the new DTD; so that modifications to the file are not required for construction the Raweb.

232 <!ELEMENT UR (URSophia|URRocquencourt|URRhoneAlpes|URRennes|URLorraine|URFuturs)+>

The definition of <URRocquencourt/> includes the full name (Rocquencourt) and a link to the official web page.

233 <!ELEMENT URRocquencourt EMPTY>
234 <!ATTLIST URRocquencourt
235  url  CDATA #FIXED "http://www.inria.fr/inria/organigramme/fiche_ur-rocq.en.html"
236  nom  CDATA #FIXED "Rocquencourt" >

Same for <URRennes>.

237 <!ELEMENT URRennes EMPTY>
238 <!ATTLIST URRennes
239  url CDATA #FIXED "http://www.inria.fr/inria/organigramme/fiche_ur-ren.en.html"
240  nom CDATA #FIXED "Rennes" >

Same for <URSophia>. Is the official name “Sophia-Antipolis” with a dash or without? the official web site(note: ) uses no dash, on Inria´s front page (http://www-sop.inria.fr/) there are sometimes dashes, but not always.

241 <!ELEMENT URSophia EMPTY>
242 <!ATTLIST URSophia
243  url CDATA #FIXED "http://www.inria.fr/inria/organigramme/fiche_ur-sop.en.html"
244  nom CDATA #FIXED "Sophia Antipolis" >

Some for <URLorraine>.

245 <!ELEMENT URLorraine EMPTY>
246 <!ATTLIST URLorraine
247  url CDATA #FIXED "http://www.inria.fr/inria/organigramme/fiche_ur-lor.en.html"
248  nom CDATA #FIXED "Lorraine" >

Same for <URRhoneAlpes>.

249 <!ELEMENT URRhoneAlpes EMPTY>
250 <!ATTLIST URRhoneAlpes
251  url CDATA #FIXED "http://www.inria.fr/inria/organigramme/fiche_ur-ra.en.html"
252  nom CDATA #FIXED "Rhône-Alpes" >

Same for <URFuturs>.

253 <!ELEMENT URFuturs EMPTY>
254 <!ATTLIST URFuturs
255  url CDATA #FIXED "http://www.inria.fr/inria/organigramme/fiche_ur-futurs.en.html"
256  nom CDATA #FIXED "Futurs" >

Definitions of four similar elements. They contain a list of <pers>. You should use an `s´ if more than one person is concerned. Use an `e´ if only women are concerned. This distinction is useless in English.

257 <!ELEMENT participants (pers)+ >
258 <!ELEMENT participantes (pers)+ >
259 <!ELEMENT participante (pers)+ >
260 <!ELEMENT participant (pers)+ >
261  
262 <!ATTLIST participants titre CDATA #FIXED "Participants: ">
263 <!ATTLIST participantes titre CDATA #FIXED "Participants: ">
264 <!ATTLIST participante titre CDATA #FIXED "Participant: ">
265 <!ATTLIST participant titre CDATA #FIXED "Participant: ">

The <catperso> element defines a category of staff. It has a title (for instance “Boss”), and is followed by the list of all persons in the category (for instance, the big boss, the small boss, etc). Usually, alphabetic order is used.

266 <!ELEMENT catperso (head,pers+)>

A <pers> element has two attribute: first name and last name. It can have a content, that explains the position of the person. We allow footnotes, links, font changes, etc. Note that the whole element (including the name) should fit on a line.

267 <!ELEMENT pers (#PCDATA|hi|note|xref|ref)* >
268 <!ATTLIST pers prenom CDATA #REQUIRED
269               nom CDATA #REQUIRED>

A <moreinfo> contains paragraphs. In can be used globally for the Raweb, or in modules, for adding a short sentence (like “Work done in collaboration with Team X”).

270 <!ELEMENT moreinfo (p+) >

A <topic> contains a <t_titre>, that contains text, and has a unique attribute (currently a number...). The text describes the topic. Most modules can reference a topic.

271 <!ELEMENT topic (t_titre) >
272 <!ELEMENT t_titre (#PCDATA) >
273 <!ATTLIST topic num CDATA #IMPLIED>

The <biblio> element contains the whole bibliography, all <citation> elements. It has three constant attributes: the title, the section number, the HTML file name.

274 <!ELEMENT biblio (citation)* >
275 <!ATTLIST biblio
276         html CDATA #FIXED "bibliography"
277         titre CDATA #FIXED "Bibliography"
278         numero CDATA #FIXED "10">

Definition of <TeX/> and <LaTeX/>. They are empty, and should be rendered as TeX and LaTeX.

279 <!ELEMENT TeX EMPTY>
280 <!ELEMENT LaTeX EMPTY>

9.1.3. The bibliography

These are all the possible children of a citation. The <xref> element is defined above, others are specific to the bibliography.

281 <!ENTITY % bibliostuff "bnote|bauteurs|bediteur|btitle|borganization|
282      bschool|byear|bmonth|xref|bseries|bnumber|bvolume|bedition|
283      binstitution|baddress|bpages|bhowpublished|bbooktitle
284      |bpublisher|bjournal|bchapter|btype|bdoi">

The <citation> contains the elements indicated above. It has five attributes. The type attribute reflects the BibTeX type. Entries that have a different type are lost by the Raweb mechanism. There are three required attributes <key>, <from>, <id>. The key is the quantity that will appear in the text, before the reference (however, a postprocessor could re-arrange the list, sort it, and recompute the key). The id identifies the reference, so that it can be referenced. The from attribute is something required by the Raweb, it is used for sorting the citations. Finally, userid is optional: this is the cite key, that appears in the BibTeX source. Useful for debug.

285 <!ELEMENT citation (%bibliostuff;)*>
286 <!ATTLIST citation key CDATA #REQUIRED
287                   userid CDATA #IMPLIED
288                   id ID #REQUIRED
289                   type (book|booklet|proceedings|phdthesis|article|inbook|
290          incollection|inproceedings|conference|manual|techreport|coursenotes
291         |unpublished |misc|masterthesis|mastersthesis) #REQUIRED
292                   from (year|foot|refer) #REQUIRED >

Definition of <etal/>. There is a nom attribute, that helps typesetting this element. You can use this element in an author list, like `etc.´ in an enumeration.

293 <!ELEMENT etal EMPTY>
294 <!ATTLIST etal nom CDATA #FIXED "et al." >

Definition of <bpers prenom=A nom=B part=C junior=D/> In the case where the BibTeX entry is “de la Porte, Fils, {\´Emile}”, the prenom would be `Émile´, the nom would be `Porte´, the part would be `de la´ and the junior would be `Fils´.

295 <!ELEMENT bpers EMPTY>
296 <!ATTLIST bpers prenom CDATA #REQUIRED
297                 part CDATA #IMPLIED
298                 nom CDATA #REQUIRED
299                 junior CDATA #IMPLIED>

Definition of <bauteurs> and <bediteur>. This is the list of authors or editors of a citation. The content should be a sequence of <bpers>, optionally followed by a <etal>. The bname attribute is used for typesetting the element.

300 <!ELEMENT bauteurs (bpers|etal)* >
301 <!ATTLIST bauteurs bname CDATA #FIXED "authors" >
302 <!ELEMENT bediteur (bpers|etal)* >
303 <!ATTLIST bediteur bname CDATA #FIXED "editors" >

For the elements that follow, explanations are taken from the LaTeX companion [7]. The bname attribute can be used to typeset the field.

The organization that sponsors a conference or that publishes a manual.

304 <!ELEMENT borganization (#PCDATA) >
305 <!ATTLIST borganization bname CDATA #FIXED "organisation" >

Institution sponsoring a technical report. We allow font changes here.

306 <!ELEMENT binstitution (#PCDATA|hi)* >
307 <!ATTLIST binstitution bname CDATA #FIXED "institution" >

Usually the address of the publisher or other institution. For major publishing houses, just give the city. For small publishers, specifying the complete address might help the reader.

308 <!ELEMENT baddress (#PCDATA) >
309 <!ATTLIST baddress bname CDATA #FIXED "address" >

Journal name. Abbreviations are provided for many journals (but Tralics knows none of them). Font changes are allowed.

310 <!ELEMENT bjournal (#PCDATA|hi)* >
311 <!ATTLIST bjournal bname CDATA #FIXED "journal" >

The name of a series or set of books. When citing an entire book, the <btitle> field gives its title and an optional <series> field gives the name of a series or multivolume set in which the book is published.

312 <!ELEMENT bseries (#PCDATA|hi)* >
313 <!ATTLIST bseries bname CDATA #FIXED "series" >

Title of a book, part of which is being cited. For book entries, use the <btitle> field. This allows font changes.

314 <!ELEMENT bbooktitle (#PCDATA|hi)* >
315 <!ATTLIST bbooktitle bname CDATA #FIXED "booktitle" >

The publishers´ name.

316 <!ELEMENT bpublisher (#PCDATA |hi)* >
317 <!ATTLIST bpublisher bname CDATA #FIXED "publisher" >

One or more page numbers or range of numbers (e.g. 42-111 or 7,41,,73-97 or 43+, where the `+´ indicates pages that do not form a simple range).

318 <!ELEMENT bpages (#PCDATA) >
319 <!ATTLIST bpages bname CDATA #FIXED "pages" >

A chapter (or section or whatever) number.

320 <!ELEMENT bchapter (#PCDATA) >
321 <!ATTLIST bchapter bname CDATA #FIXED "chapter" >

The type of a technical report (e.g. “Research Notes”). This name is used instead of the default “Technical Report”. For the type `phdthesis´ you could use the term “Ph.D. dissertation” by specifying type="{Ph.D.}dissertation". Similarly, for the <inbook> and <incollection> entry types you can get “section 1.2” instead of the default “chapter 1.2” with chapter = "1.2", type=“Section”. Note: the <btype> field is set by Tralics; the semantics is different. Currently, the bname value of <bchapter> is used instead of the quantity given here. This might change in a future version.

322 <!ELEMENT btype (#PCDATA|hi)* >
323 <!ATTLIST btype bname CDATA #FIXED "type" >

How something strange has been published. It can contain an external link.

324 <!ELEMENT bhowpublished (#PCDATA|xref|hi)* >
325 <!ATTLIST bhowpublished bname CDATA #FIXED "howpublished" >

The edition of a book (e.g. “Second”). This should be an ordinal, and should have the first letter capitalized, as shown above; the standard styles convert to lowercase when necessary. Note. The Raweb leaves this currently unchanged. Thus, be careful.

326 <!ELEMENT bedition (#PCDATA) >
327 <!ATTLIST bedition bname CDATA #FIXED "edition" >

The number of a journal, magazine, technical report, or work in a series. An issue of a journal or magazine is usually identified by its volume and number; a technical report normally has a number; and sometimes books in a named series carry numbers.

328 <!ELEMENT bnumber (#PCDATA) >
329 <!ATTLIST bnumber bname CDATA #FIXED "number" >

The volume of a journal or multivolume book.

330 <!ELEMENT bvolume (#PCDATA|hi)* >
331 <!ATTLIST bvolume bname CDATA #FIXED "volume" >

The month in which this work was published or, for an unpublished work, in which it was written. For reasons of consistency, the standard three-letter abbreviations (jan, feb, mar, etc.) should be used. Note. Currently, Tralics replaces abbreviations by values; maybe we could add an attribute that says: this is an abbreviation.

332 <!ELEMENT bmonth (#PCDATA) >
333 <!ATTLIST bmonth bname CDATA #FIXED "month" >

The year of publication or, for an unpublished work, the year it was written. Generally, it should consist of four numerals, such as 1984, although the standard styles can handle any year whose last four nonpunctuation characters are numerals, such as about 1984.

334 <!ELEMENT byear (#PCDATA|hi)* >
335 <!ATTLIST byear bname CDATA #FIXED "year" >

This is the doi (Digital Object Identifier). Use it whenever possible.

336 <!ELEMENT bdoi (#PCDATA)* >
337 <!ATTLIST bdoi bname CDATA #FIXED "DOI" >

Any additional information that can help the reader. This can contain math formulas. It can contain an external link. It can contain a link to the bibliography.

338 <!ELEMENT bnote (#PCDATA|xref|hi|cit|formula)* >
339 <!ATTLIST bnote bname CDATA #FIXED "note" >

The name of the school where the thesis was written.

340 <!ELEMENT bschool (#PCDATA|hi)* >
341 <!ATTLIST bschool bname CDATA #FIXED "school" >

The work´s title, typed as explained in Section 13.2.2. Note: the companion explains how BibTeX converts some uppercase letters into lower case ones. This does not apply here.

342 <!ELEMENT btitle (#PCDATA|hi|TeX|LaTeX|formula)* >
343 <!ATTLIST btitle bname CDATA #FIXED "title" >

9.1.4. Research Reports

This DTD could also be used for other documents, like a research report. We declare here divisions of level zero and one.

344 <!ELEMENT div0
345     (head, (%div0-textp; | (%tei-aux;, %div0-texts;))) >
346 <!ELEMENT div1
347     (head, (%div1-textp; | (%tei-aux;, %div1-texts;))) >

The title page of a Research Report will contain the following items.

348 <!ELEMENT RRstart (UR,title, etitle, projet, theme, motcle, keyword,
349    resume, abstract, author,date, RRnumber)*>

The <UR> element is described above, it indicates in which Research Unit is located the author (since there can be more than one author, more than one UR could be given, but this is refused by LaTeX). The quantities <projet> and <theme> define the name of the Team and its theme (this can be repeated). We have then <title> and <etitle>, the title of the report, in French and English, we have <motcle> and <keyword>, the keywords in French and English. The content could be more elaborate: for instance we could allow math in the title or keywords. We have also <resume> and <abstract>, the French and English abstract (paragraphs are allowed here; the abstract should be less than half of a page in length). The element <auth> defines a single author, while <author> defines a list of authors.

350 <!ELEMENT title (#PCDATA|hi|LaTeX)* >
351 <!ELEMENT etitle (#PCDATA|hi|LaTeX)* >
352 <!ELEMENT resume (#PCDATA|hi|p|LaTeX)* >
353 <!ELEMENT abstract (#PCDATA|hi|p|LaTeX)* >
354 <!ELEMENT motcle (#PCDATA|hi|LaTeX)* >
355 <!ELEMENT keyword (#PCDATA|hi|LaTeX)* >
356 <!ELEMENT RRnumber (#PCDATA)* >
357 <!ELEMENT date (#PCDATA)* >
358 <!ELEMENT author (auth)* >
359 <!ELEMENT auth (#PCDATA)* >

The could be the document element for a research report.

360 <!ELEMENT rr (RRstart,div0*)>
361 <!ATTLIST rr language CDATA #IMPLIED type CDATA #IMPLIED>

9.2. The raweb2 DTD

This is the start of the file. Current version is 1.1.2.3, dated 2004/12/16.

362 <?xml version="1.0" encoding="iso-8859-1"?>

For some reason, every element has a prefix; this is currently empty.

363 <!ENTITY % prefix "">

A name is given for the Xlink namespace.

364 <!ENTITY % XLINK.xmlns "http://www.w3.org/1999/xlink" >

The DTD starts by listing everything in alphabetic order.

365 <!ENTITY % anchor        "%prefix;anchor">
366 <!ENTITY % b             "%prefix;b">
367 <!ENTITY % big           "%prefix;big">
368 <!ENTITY % caption       "%prefix;caption">
369 <!ENTITY % code          "%prefix;code">
370 <!ENTITY % descriptionlist "%prefix;descriptionlist">
371 <!ENTITY % em            "%prefix;em">
372 <!ENTITY % LaTeX         "%prefix;LaTeX">
373 <!ENTITY % TeX           "%prefix;TeX">
374 <!ENTITY % object        "%prefix;object">
375 <!ENTITY % formula       "%prefix;formula">
376 <!ENTITY % glosslist     "%prefix;glosslist">
377 <!ENTITY % i             "%prefix;i">
378 <!ENTITY % identification "%prefix;identification">
379 <!ENTITY % keyword       "%prefix;keyword">
380 <!ENTITY % label         "%prefix;label">
381 <!ENTITY % li            "%prefix;li">
382 <!ENTITY % moreinfo      "%prefix;moreinfo">
383 <!ENTITY % projectName    "%prefix;projectName">
384 <!ENTITY % footnote      "%prefix;footnote">
385 <!ENTITY % orderedlist   "%prefix;orderedlist">
386 <!ENTITY % p             "%prefix;p">
387 <!ENTITY % br            "%prefix;br">
388 <!ENTITY % participants  "%prefix;participants">
389 <!ENTITY % person        "%prefix;person">
390 <!ENTITY % raweb         "%prefix;raweb">
391 <!ENTITY % ref           "%prefix;ref">
392 <!ENTITY % refperson     "%prefix;refperson">
393 <!ENTITY % presentation  "%prefix;presentation">
394 <!ENTITY % fondements    "%prefix;fondements">
395 <!ENTITY % domaine       "%prefix;domaine">
396 <!ENTITY % logiciels     "%prefix;logiciels">
397 <!ENTITY % ressource     "%prefix;ressource">
398 <!ENTITY % resultats     "%prefix;resultats">
399 <!ENTITY % contrats      "%prefix;contrats">
400 <!ENTITY % international "%prefix;international">
401 <!ENTITY % diffusion     "%prefix;diffusion">
402 <!ENTITY % shortname     "%prefix;shortname">
403 <!ENTITY % simplelist    "%prefix;simplelist">
404 <!ENTITY % simplemath    "%prefix;simplemath">
405 <!ENTITY % small         "%prefix;small">
406 <!ENTITY % span          "%prefix;span">
407 <!ENTITY % sub           "%prefix;sub">
408 <!ENTITY % subsection    "%prefix;subsection">
409 <!ENTITY % sup           "%prefix;sup">
410 <!ENTITY % strong        "%prefix;strong">
411 <!ENTITY % table         "%prefix;table">
412 <!ENTITY % team          "%prefix;team">
413 <!ENTITY % term          "%prefix;term">
414 <!ENTITY % td            "%prefix;td">
415 <!ENTITY % th            "%prefix;th">
416 <!ENTITY % tr            "%prefix;tr">
417 <!ENTITY % tt            "%prefix;tt">
418 <!ENTITY % theme         "%prefix;theme">
419 <!ENTITY % bodyTitle     "%prefix;bodyTitle">
420 <!ENTITY % topic         "%prefix;topic">
421 <!ENTITY % UR            "%prefix;UR">

This list comes from a second file.

422 <!ENTITY % address       '%prefix;address'>
423 <!ENTITY % contact       '%prefix;contact'>
424 <!ENTITY % email         '%prefix;email'>
425 <!ENTITY % firstname     '%prefix;firstname'>
426 <!ENTITY % lastname      '%prefix;lastname'>
427 <!ENTITY % status        '%prefix;status'>

A decoration is either <em>, <tt>, <i>, <b>, <big>, <small>, <sub>, <sup>, or <strong>. This corresponds to the <hi> element of the old DTD. A inline object is a decoration, or a <ressource>, <ref>, <code>, <anchor>, <formula>, <br>, <span>, <LaTeX>, or <TeX>. A list is <glosslist>, <orderedlist>, <simplelist>, or a <descriptionlist>. A doc-block is a <table>, a list, or a <p>. Finally, a block is a doc-block, a <footnote> or a <object>.

428 <!ENTITY % decoration "%em; | %tt; | %i; | %b; | %big; | %small; | %sub; |
429    %sup; | %strong; ">
430 <!ENTITY % inline "%decoration; | %ressource; | %ref; | %code; | %anchor; |
431    %formula; | %br; | %span; | %LaTeX; | %TeX;" >
432 <!ENTITY % list "%glosslist; | %orderedlist; | %simplelist; | %descriptionlist;">
433 <!ENTITY % doc-block "%table; | %list; | %p;">
434 <!ENTITY % block  "%doc-block; | %footnote; | %object;">

We define here two entities; they say that the id attribute is required or optional. In any case it is an ID.

435 <!ENTITY % id   "id         ID      #IMPLIED">
436 <!ENTITY % id_r "id         ID      #REQUIRED">

We define an attribute that says that the language can be French or English. We declare also some attributes used for links.

437 <!ENTITY % xml-lang     'xml:lang   ( fr | en )             "en"        '>
438  
439 <!ENTITY % xlink
440         'xmlns:xlink    CDATA                    #FIXED "%XLINK.xmlns;"
441          xlink:href     CDATA                    #REQUIRED
442          xlink:type     CDATA                    #FIXED "simple"
443          xlink:show     ( new | replace | embed) "replace"
444          xlink:actuate  ( onLoad | onRequest)    "onRequest"'>

We declare here three files and include them. We have inlined the persons.mod file. We do not show the biblio.dtd file; it is a copy of the TEI, and is rather long.

445 <!ENTITY % persons-mod  SYSTEM "persons.mod">
446 <!ENTITY % mathmlDTD    SYSTEM "mathml2.dtd">
447 <!ENTITY % biblioDTD    SYSTEM "biblio.dtd">
448 %mathmlDTD;
449 %biblioDTD;
450 %persons-mod;

We define here some abbreviations. A listSection defines the list of the eight standard sections: we have <presentation>, <fondements>, <domaine>, <logiciels>, <resultats>, <contrats>, <international>, <diffusion>. These are the same sections as in the old DTD. A contentSection describes what you can put in a section: an optional <bodyTitle> followed by some <block> or <subsection>.

451 <!ENTITY % listSection "(%presentation;), (%fondements;)?,
452    (%domaine;)?, (%logiciels;)?, (%resultats;), (%contrats;)?,
453    (%international;)?, (%diffusion;)?">
454 <!ENTITY % contentSection "(%bodyTitle;)?, ((%block;)* | (%subsection;)*) ">

Here are the sections. They all have id as required attribute.

455 <!ELEMENT %presentation; ( %contentSection; )>
456 <!ATTLIST %presentation; %id_r;>
457  
458 <!ELEMENT %fondements; ( %contentSection; )>
459 <!ATTLIST %fondements; %id_r;>
460  
461 <!ELEMENT %domaine; ( %contentSection; )>
462 <!ATTLIST %domaine; %id_r;>
463  
464 <!ELEMENT %logiciels; ( %contentSection; )>
465 <!ATTLIST %logiciels; %id_r;>
466  
467 <!ELEMENT %resultats; ( %contentSection; )>
468 <!ATTLIST %resultats; %id_r;>
469  
470 <!ELEMENT %contrats; ( %contentSection; )>
471 <!ATTLIST %contrats; %id_r;>
472  
473 <!ELEMENT %international; ( %contentSection; )>
474 <!ATTLIST %international; %id_r;>
475  
476 <!ELEMENT %diffusion; ( %contentSection; )>
477 <!ATTLIST %diffusion; %id_r;>

We define identSection to be the identification part of a section; this is a list of <participants>, a list of <keyword> and an optional <moreinfo>.

478 <!ENTITY % identSection "( (%participants;)*, (%keyword;)*, (%moreinfo;)?)">

A <subsection> is formed of an optional <bodyTitle>, an identSection, followed by blocks or <subsection>. It can have a topic attribute. Note: only children of a section can have a topic.

479 <!ELEMENT %subsection; ( (%bodyTitle;)?, (%identSection;),
480     ((%block;) | (%subsection;))* ) >
481 <!ATTLIST %subsection;
482         %id;
483         topic   IDREF   #IMPLIED>

The <raweb> is formed of the eight standard sections, in %listSection plus the bibliography, plus a <identification> part and a list of <topic> declarations.

484 <!ELEMENT %raweb; (%identification;, (%topic;)*, %listSection;, biblio) >
485 <!ATTLIST %raweb; year NMTOKEN #IMPLIED
486         %xml-lang;
487         xmlns:xlink CDATA #FIXED "http://www.w3.org/1999/xlink"
488         xmlns:html  CDATA #FIXED "http://www.w3.org/1999/xhtml"
489         %id;>

The <identification> element contains <shortname> <projectName>, <theme>, <team>, a sequence of <UR> and an optional <moreinfo>. It has a isproject attribute. A <topic> contains only text.

490 <!ELEMENT %identification; ( %shortname;, %projectName;, %theme;, %team;,
491       (%UR;)+, (%moreinfo;)?) >
492 <!ATTLIST %identification; isproject    (true|false) "true"  %id; >
493  
494 <!ELEMENT %topic; (#PCDATA) >
495 <!ATTLIST %topic; %id_r;>

Trivial elements.

496 <!ELEMENT %theme; (#PCDATA)>
497 <!ATTLIST %theme;  id ID #IMPLIED>
498 <!ELEMENT %bodyTitle; (#PCDATA|%inline;)* >
499 <!ATTLIST %bodyTitle; id ID #IMPLIED>
500 <!ELEMENT %projectName; (#PCDATA|%inline;)* >
501 <!ATTLIST %projectName; id ID #IMPLIED>
502 <!ELEMENT %shortname; (#PCDATA|%inline;)* >
503 <!ATTLIST %shortname; id ID #IMPLIED>

An <UR> element is empty, but has a name attribute that identifies it.

504 <!ENTITY % listUR "Sophia|Rocquencourt|RhoneAlpes|Rennes|Lorraine|Futurs">
505 <!ELEMENT %UR; EMPTY>
506 <!ATTLIST %UR; name (%listUR;) #REQUIRED >
507 <!ATTLIST %UR; id ID #IMPLIED>

A <moreinfo> element can contain block, inline objects, footnotes.

508 <!ELEMENT %moreinfo; (#PCDATA | %doc-block; | %footnote; | %inline;)* >
509 <!ATTLIST %moreinfo; %id;>

A <caption> contains inline objects.

510 <!ELEMENT %caption; (#PCDATA|%inline;)* >
511 <!ATTLIST %caption; id ID #IMPLIED>

A <em> element contains inline stuff. It has a style attribute that explains how it can be emphasized.

512 <!ENTITY % styles "highlight | underline">
513 <!ELEMENT %em; (#PCDATA | %inline;)*>
514 <!ATTLIST %em; style (%styles;) #IMPLIED>
515 <!ATTLIST %em; id ID #IMPLIED>

We define here some elements: <strong>, <i>, <tt>, <b>, <big>, <small>, <sub>, and <sup>. They contain inline stuff.

516 <!ELEMENT %strong;  (#PCDATA | %inline;)*>
517 <!ATTLIST %strong;  id ID #IMPLIED>
518 <!ELEMENT %i;       (#PCDATA | %inline;)*>
519 <!ATTLIST %i;       id ID #IMPLIED>
520 <!ELEMENT %tt;      (#PCDATA | %inline;)*>
521 <!ATTLIST %tt;      id ID #IMPLIED>
522 <!ELEMENT %b;       (#PCDATA | %inline;)*>
523 <!ATTLIST %b;       id ID #IMPLIED>
524 <!ELEMENT %big;     (#PCDATA | %inline;)*>
525 <!ATTLIST %big;     id ID #IMPLIED>
526 <!ELEMENT %small;   (#PCDATA | %inline;)*>
527 <!ATTLIST %small;   id ID #IMPLIED>
528 <!ELEMENT %sub;     (#PCDATA | %inline;)*>
529 <!ATTLIST %sub;     id ID #IMPLIED>
530 <!ELEMENT %sup;     (#PCDATA | %inline;)*>
531 <!ATTLIST %sup;     id ID #IMPLIED>

I don´t understand this.

532 <!ELEMENT %span; (#PCDATA | %inline;)*>
533 <!ATTLIST %span; align (left|center|right) "left" id ID #IMPLIED >

The <code> element is unused by the Raweb, as well as <anchor>.

534 <!ELEMENT %code;   (#PCDATA | %inline;)*>
535 <!ELEMENT %anchor; EMPTY>
536 <!ATTLIST %anchor; %id_r;>

A <ref> element is a link. It can contain text. It has attributes.

537 <!ELEMENT %ref; (#PCDATA | %inline;)* >
538 <!ATTLIST %ref;
539         location (intern | biblio | extern) "extern"
540         %xlink; >
541 <!ATTLIST %ref; id ID #IMPLIED>

A <keyword> contains only characters (what about “λ-calculus” ?). The theme attribute is currently unused.

542 <!ELEMENT %keyword; (#PCDATA) >
543 <!ATTLIST %keyword; %id; theme CDATA #IMPLIED>

A <footnote> can contain arbitrary text (well, there are restrictions...). The place attribute is not used.

544 <!ELEMENT %footnote; (#PCDATA | %block;)* >
545 <!ATTLIST %footnote; %id; place CDATA "unspecified">

We have four types of lists. They contain all some <li> children; in the case of a glossary or description, we can have <label>. The purpose of the title attribute is unclear.

546 <!ELEMENT %simplelist; (%li;)+ >
547 <!ATTLIST %simplelist; %id; title CDATA #IMPLIED>
548  
549 <!ELEMENT %orderedlist; (%li;)+ >
550 <!ATTLIST %orderedlist;  %id; title CDATA #IMPLIED>
551  
552 <!ELEMENT %glosslist; (%label; , %li;)+ >
553 <!ATTLIST %glosslist; %id; title CDATA #IMPLIED>
554  
555 <!ELEMENT %descriptionlist; (%label; | %li;)+ >
556 <!ATTLIST %descriptionlist; %id; title CDATA #IMPLIED>

A <label> in a list contains only inline elements, while a <li> can be more complicated.

557 <!ELEMENT %label; (#PCDATA|%inline;)* >
558 <!ATTLIST %label; %id;>
559  
560 <!ELEMENT %li; (#PCDATA | %doc-block; | %inline;)* >
561 <!ATTLIST %li; %id;>

A <table> contains some <tr> and an optional <caption>. It can have a title attribute. A <tr> contains some <th> and <td>. These two elements have the same structure. However, a <td> element can have a style attribute.(note: )

562 <!ELEMENT %table; ((%tr;)+, (%caption;)?) >
563 <!ATTLIST %table;  %id; title CDATA #IMPLIED >
564 <!ELEMENT %tr; (%th; | %td;)+>
565 <!ATTLIST %tr; %id; >
566 <!ELEMENT %td; (#PCDATA | %doc-block; | %inline;)*>
567 <!ATTLIST %td; style CDATA #IMPLIED %id; >
568 <!ELEMENT %th; (#PCDATA | %doc-block; | %inline;)*>
569 <!ATTLIST %th; %id; >

This defines a <p> element.

570 <!ELEMENT %p; (#PCDATA | %inline; | %footnote;)*>
571 <!ATTLIST %p; %id;
572               noindent CDATA #IMPLIED
573               rend CDATA #IMPLIED>

A <pers> is formed of an optional <firstname>, <lastname>, an optional <contact>, an optional <status>, and an optional <moreinfo>. .

574 <!ELEMENT %person; ( (%firstname;)?, %lastname;, (%contact;)?,
575    (%status;)?, (%moreinfo;)?) >
576 <!ATTLIST %person;       %id;>

The <firstname> and <lastname> elements, as well as <email>, contain characters. The content of <contact> is email or address; the adress is defined by the TEI(note: ).

577 <!ELEMENT %firstname; (#PCDATA) >
578 <!ATTLIST %firstname; %id;>
579 <!ELEMENT %lastname; (#PCDATA) >
580 <!ATTLIST %lastname; %id;>
581 <!ELEMENT %contact; (%email; | %address;)* >
582 <!ELEMENT %email; (#PCDATA) >

The <status> element contains an optional <moreinfo>. Its type attribute is an element of list not shown here (I don´t understand the purpose of the list).

583 <!ENTITY % listStatus "Professor... None">
584 <!ELEMENT %status; (%moreinfo;)? >
585 <!ATTLIST %status; type (%listStatus;) #IMPLIED >

The <team> section contains some <participants> elements, and an optional <moreinfo>.

586 <!ELEMENT %team; ( (%participants;)+, (%moreinfo;)?)>
587 <!ATTLIST %team; %id;>

A <participants> element contains some <person> or <refperson> elements, followed by an optional <moreinfo>.

588 <!ELEMENT %participants; ( (%person; | %refperson;)+, (%moreinfo;)?)>
589 <!ATTLIST %participants; category  CDATA #IMPLIED id ID #IMPLIED>

A <refperson> is a link to a <person>.

590 <!ELEMENT %refperson; EMPTY>
591 <!ATTLIST %refperson; ref IDREF #REQUIRED>

This defines an <object> and a <ressource>. An object can be used to include a floating figure.

592 <!ELEMENT %object; ( (%bodyTitle;)?, (%table;)+, (%caption;)? ) >
593 <!ATTLIST %object; %id_r;>
594 <!ELEMENT %ressource; ( (%caption;)? ) >
595 <!ATTLIST %ressource;
596         %id;
597         %xlink;
598         media (WEB | PRINT ) "WEB"
599         width NMTOKEN #IMPLIED
600         height NMTOKEN #IMPLIED
601         preview CDATA #IMPLIED
602         type (inline|display) "inline"
603         framed CDATA #IMPLIED
604         scale CDATA #IMPLIED
605         angle CDATA #IMPLIED>

Math formulas are defined like in the old DTD.

606 <!ELEMENT %formula;  (%simplemath; | %math.qname;) >
607 <!ATTLIST %formula;  %id;  type (inline|display) "inline" >
608 <!ELEMENT %simplemath; (#PCDATA | %inline;)* >
609 <!ATTLIST %simplemath;  %id;  type (inline|display) "inline" >

9.3. The classes DTD

We use the classes DTD for converting the Tralics examples and documentation into XML and HTML. It is a modification of the raweb DTD, hence we show here only the differences. It is hightly experimental.

These defintions are needed to `rawxml´ example.

1 <!ENTITY Dollar  "&#x24;" >
2 <!ENTITY Euro  "&#x20AC;" >
3 <!ENTITY Equals  "&#x3D;" >

The raweb does not use <div0> and <div1>. Its DTD defines the element and the content, but we forget to define the attribute list. It is however important that the style sheets sees the `ID´ type of the id of the element.

4 <!ATTLIST div0 %tei-div-atts; >
5 <!ATTLIST div1 %tei-div-atts; >

We added a <div5> element, that can be converted into a <h6> HTML element. What about <div6>?

6 <!ELEMENT div5  (head, %ramodule-header;, %tei-aux;) >
7 <!ATTLIST div5 %tei-div-atts; >

An <index> element has three attributes. We declare here only target. Our style sheet does not work without it.

8 <!ELEMENT index (#PCDATA | %texte-general; |  p )* >
9 <!ATTLIST index  target IDREFS #REQUIRED>
previous
TOC
next
Back to main page