]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/dtd/maththeory.dtd
Initial revision
[helm.git] / helm / dtd / maththeory.dtd
diff --git a/helm/dtd/maththeory.dtd b/helm/dtd/maththeory.dtd
new file mode 100644 (file)
index 0000000..85469b6
--- /dev/null
@@ -0,0 +1,73 @@
+<?xml encoding="ISO-8859-1"?>
+
+<!--*****************************************************************-->
+<!-- DTD FOR THEORY OBJECTS AT LEVEL OF CIC XML FILES:               -->
+<!-- First draft: May 10 2000, Claudio Sacerdoti Coen, Irene Schena  -->
+<!--*****************************************************************-->
+
+<!-- manca il semplice enunciato -->
+<!-- mancano i link ad altre teorie? (corrispondenti a Require?) -->
+<!-- una teoria "vuota" e' una teoria? -->
+<!ENTITY % mathstructure '(THEOREM|LEMMA|COROLLARY|AXIOM|FACT|DEFINITION|
+                           VARIABLE|SECTION)*'>
+
+<!ELEMENT Theory (%mathstructure;)>
+<!ATTLIST Theory
+          uri CDATA #REQUIRED>
+
+<!ELEMENT THEOREM EMPTY>
+<!ATTLIST THEOREM
+          id  IDREF #REQUIRED
+          uri CDATA #REQUIRED>
+
+<!ELEMENT LEMMA EMPTY>
+<!ATTLIST LEMMA
+          id     IDREF #REQUIRED
+          uri    CDATA #REQUIRED 
+          target IDREF #REQUIRED>
+
+<!ELEMENT COROLLARY EMPTY>
+<!ATTLIST COROLLARY
+          id     IDREF #REQUIRED
+          uri    CDATA #REQUIRED 
+          target IDREF #REQUIRED>
+
+<!ELEMENT AXIOM EMPTY>
+<!ATTLIST AXIOM
+          id  IDREF #REQUIRED
+          uri CDATA #REQUIRED>
+
+<!ELEMENT FACT EMPTY>
+<!ATTLIST FACT
+          id  IDREF #REQUIRED
+          uri CDATA #REQUIRED>
+
+<!ELEMENT DEFINITION EMPTY>
+<!ATTLIST DEFINITION
+          uri CDATA #REQUIRED>
+
+<!ELEMENT VARIABLE EMPTY>
+<!ATTLIST VARIABLE
+          uri CDATA #REQUIRED>
+
+<!ELEMENT SECTION (%mathstructure;)>
+<!ATTLIST SECTION
+          uri CDATA #REQUIRED>
+
+<!--
+ VINCOLI DI VALIDITA' NON ESPRIMIBILI NEL DTD:
+  Siano V una variabile e T,T' due fatti/definizioni/teoremi/lemmi/corollari
+
+   - per visualizzare T dipendente da T' dove T' e T sono definiti nella stessa
+     (da definirsi) teoria/sezione, debbo visualizzare anche T'? 
+   - per visualizzare T dipendente da T' dove anche T' e' visualizzato, debbo
+     visualizzare T necessariamente dopo T'?
+   + consistenza fra la dipendenza dei lemmi e dei corollari dal loro target
+     e quella effettiva data dal livello degli oggetti
+   + tutte le URI debbono essere relative e discendenti (= non contenti "..")
+   +? ogni lemma deve precedere (strettamente?) il suo target
+   +? ogni corollario deve seguire (strettamente?) il suo target
+   + se T/V dipende da V, allora V deve essere visualizzata 
+   + se T/V dipende da V, allora V deve essere visualizzata prima di T
+    PROBLEMA: NON ABBIAMO INFORMAZIONI SULLA DIPENDENZA DI V DA V!!!
+-->