]> matita.cs.unibo.it Git - helm.git/blob - helm/dtd/maththeory.dtd
added LICENSE
[helm.git] / helm / dtd / maththeory.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 CIC XML FILES:               -->
29 <!-- First draft: May 10 2000, Claudio Sacerdoti Coen, Irene Schena  -->
30 <!--*****************************************************************-->
31
32 <!-- manca il semplice enunciato -->
33 <!-- mancano i link ad altre teorie? (corrispondenti a Require?) -->
34 <!-- una teoria "vuota" e' una teoria? -->
35 <!ENTITY % mathstructure '(THEOREM|LEMMA|COROLLARY|AXIOM|FACT|DEFINITION|
36                            VARIABLE|SECTION)*'>
37
38 <!ELEMENT Theory (%mathstructure;)>
39 <!ATTLIST Theory
40           uri CDATA #REQUIRED>
41
42 <!ELEMENT THEOREM EMPTY>
43 <!ATTLIST THEOREM
44           id  IDREF #REQUIRED
45           uri CDATA #REQUIRED>
46
47 <!ELEMENT LEMMA EMPTY>
48 <!ATTLIST LEMMA
49           id     IDREF #REQUIRED
50           uri    CDATA #REQUIRED 
51           target IDREF #REQUIRED>
52
53 <!ELEMENT COROLLARY EMPTY>
54 <!ATTLIST COROLLARY
55           id     IDREF #REQUIRED
56           uri    CDATA #REQUIRED 
57           target IDREF #REQUIRED>
58
59 <!ELEMENT AXIOM EMPTY>
60 <!ATTLIST AXIOM
61           id  IDREF #REQUIRED
62           uri CDATA #REQUIRED>
63
64 <!ELEMENT FACT EMPTY>
65 <!ATTLIST FACT
66           id  IDREF #REQUIRED
67           uri CDATA #REQUIRED>
68
69 <!ELEMENT DEFINITION EMPTY>
70 <!ATTLIST DEFINITION
71           uri CDATA #REQUIRED>
72
73 <!ELEMENT VARIABLE EMPTY>
74 <!ATTLIST VARIABLE
75           uri CDATA #REQUIRED>
76
77 <!ELEMENT SECTION (%mathstructure;)>
78 <!ATTLIST SECTION
79           uri CDATA #REQUIRED>
80
81 <!--
82  VINCOLI DI VALIDITA' NON ESPRIMIBILI NEL DTD:
83   Siano V una variabile e T,T' due fatti/definizioni/teoremi/lemmi/corollari
84
85    - per visualizzare T dipendente da T' dove T' e T sono definiti nella stessa
86      (da definirsi) teoria/sezione, debbo visualizzare anche T'? 
87    - per visualizzare T dipendente da T' dove anche T' e' visualizzato, debbo
88      visualizzare T necessariamente dopo T'?
89    + consistenza fra la dipendenza dei lemmi e dei corollari dal loro target
90      e quella effettiva data dal livello degli oggetti
91    + tutte le URI debbono essere relative e discendenti (= non contenti "..")
92    +? ogni lemma deve precedere (strettamente?) il suo target
93    +? ogni corollario deve seguire (strettamente?) il suo target
94    + se T/V dipende da V, allora V deve essere visualizzata 
95    + se T/V dipende da V, allora V deve essere visualizzata prima di T
96     PROBLEMA: NON ABBIAMO INFORMAZIONI SULLA DIPENDENZA DI V DA V!!!
97 -->