]> matita.cs.unibo.it Git - helm.git/blob - helm/dtd/theoryobject.dtd
* generate list elements in correct order
[helm.git] / helm / dtd / theoryobject.dtd
1 <?xml encoding="ISO-8859-1"?>
2
3 <!-- Copyright (C) 2000, HELM Team                                     -->
4 <!--                                                                   -->
5 <!-- This file is part of HELM, an Hypertextual, Electronic            -->
6 <!-- Library of Mathematics, developed at the Computer Science         -->
7 <!-- Department, University of Bologna, Italy.                         -->
8 <!--                                                                   -->
9 <!-- HELM is free software; you can redistribute it and/or             -->
10 <!-- modify it under the terms of the GNU General Public License       -->
11 <!-- as published by the Free Software Foundation; either version 2    -->
12 <!-- of the License, or (at your option) any later version.            -->
13 <!--                                                                   -->
14 <!-- HELM is distributed in the hope that it will be useful,           -->
15 <!-- but WITHOUT ANY WARRANTY; without even the implied warranty of    -->
16 <!-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the     -->
17 <!-- GNU General Public License for more details.                      -->
18 <!--                                                                   -->
19 <!-- You should have received a copy of the GNU General Public License -->
20 <!-- along with HELM; if not, write to the Free Software               -->
21 <!-- Foundation, Inc., 59 Temple Place - Suite 330, Boston,            -->
22 <!-- MA  02111-1307, USA.                                              -->
23 <!--                                                                   -->
24 <!-- For details, see the HELM World-Wide-Web page,                    -->
25 <!-- http://cs.unibo.it/helm/.                                         -->
26
27 <!--*****************************************************************-->
28 <!-- DTD FOR THEORY OBJECTS AT LEVEL OF MATHML CONTENT:              -->
29 <!-- First draft: May 9 2000, Irene Schena                           -->
30 <!-- Second draft: March 15 2001, Irene Schena                       -->
31 <!-- Third draft: May 3 2001, Irene Schena                           -->
32 <!--*****************************************************************-->
33
34 <!ENTITY % cicobj SYSTEM "cicobject.dtd">
35
36 %cicobj;
37
38 <!ENTITY % theorystructure
39   '(ht:AXIOM|ht:DEFINITION|ht:THEOREM|ht:VARIABLE|ht:SECTION|ht:MUTUAL)*'>
40
41 <!ELEMENT ht:SECTION (%theorystructure;)>
42 <!ATTLIST ht:SECTION
43           uri CDATA #REQUIRED>
44
45 <!ELEMENT ht:MUTUAL (ht:DEFINITION,ht:DEFINITION+)>
46
47 <!-- Theory Items -->
48
49 <!ELEMENT ht:AXIOM (Axiom)>
50 <!ATTLIST ht:AXIOM
51           uri CDATA #REQUIRED
52           as (Axiom|Declaration) #REQUIRED
53           typesetting ( paragraph | in-line ) paragraph
54           heading ( true | false ) true
55           uri_base ( true | false ) true
56           notation ( true | false ) false
57           params ( true | false ) false
58           type ( true | false ) true >
59
60 <!ELEMENT ht:DEFINITION (Definition|InductiveDefinition)>
61 <!ATTLIST ht:DEFINITION
62           uri CDATA #REQUIRED
63           as (Definition|InteractiveDefinition|Inductive|CoInductive
64              |Record) #REQUIRED
65           <!-- Should the definition take a whole new paragraph
66                or be integrated in the sentence? -->
67           typesetting ( paragraph | inline ) paragraph
68           <!-- Include the text "Definition "? -->
69           heading ( true | false ) true
70           <!-- Include the name of the definition, i.e.
71                the non-path part of its URI? -->
72           uri_base ( true | false ) true
73           <!-- Include the notation for this object? -->
74           notation ( true | false ) false
75           <!-- Include the section parameters / variables of
76                this definition? -->
77           params ( true | false ) false
78           <!-- For parametrised (co)inductive definitions,
79                include the parameters of the definition? -->
80           Params ( true | false ) true
81           <!-- Show the type?  -->
82           type ( true | false ) true
83           <!-- Show the body?  -->
84           body ( true | false ) true >
85
86 <!ELEMENT ht:THEOREM (type)>
87 <!ATTLIST ht:THEOREM
88           uri CDATA #REQUIRED
89           as (Theorem|Lemma|Corollary|Fact|Remark) #REQUIRED
90           typesetting ( paragraph | in-line ) paragraph
91           heading ( true | false ) true
92           uri_base ( true | false ) true
93           notation ( true | false ) false
94           params ( true | false ) false
95           type ( true | false ) true
96           body ( true | false ) true >
97
98 <!ELEMENT ht:VARIABLE (Variable)>
99 <!ATTLIST ht:VARIABLE
100           uri CDATA #REQUIRED
101           as (Assumption|Hypothesis|LocalDefinition|LocalFact) #REQUIRED
102           typesetting ( paragraph | in-line ) paragraph
103           heading ( true | false ) true
104           uri_base ( true | false ) true
105           notation ( true | false ) false
106           params ( true | false ) false
107           Params ( true | false ) true
108           type ( true | false ) true
109           body ( true | false ) true >