]> matita.cs.unibo.it Git - helm.git/commitdiff
Metavariables representation changed. Explicit substitutions introduced.
authorClaudio Sacerdoti Coen <claudio.sacerdoticoen@unibo.it>
Mon, 20 May 2002 09:21:57 +0000 (09:21 +0000)
committerClaudio Sacerdoti Coen <claudio.sacerdoticoen@unibo.it>
Mon, 20 May 2002 09:21:57 +0000 (09:21 +0000)
helm/dtd/cic.dtd

index a2156a522b507c96a92adf72d9f2605c99a49681..088c78abf4e866db8ca82d1604cebe9619de4a9b 100644 (file)
@@ -42,6 +42,9 @@
 
 <!ENTITY % sort '(Prop|Set|Type)'>
 
+<!-- CIC sequents -->
+
+<!ENTITY % sequent '((Decl|Def|Hidden)*,Goal)'>
 
 <!-- CIC objects: -->
 
           name CDATA #REQUIRED
           id   ID    #REQUIRED>
 
-<!ELEMENT Sequent ((Decl|Def)*,Goal)>
+<!ELEMENT Sequent %sequent;>
 <!ATTLIST Sequent
-          id   ID    #REQUIRED>
+          no  NMTOKEN #REQUIRED
+          id  ID      #REQUIRED>
 
 <!-- Elements used in CIC objects, which are not terms: -->
 
@@ -85,7 +89,7 @@
           name      CDATA        #REQUIRED
           inductive (true|false) #REQUIRED>
 
-<!ELEMENT Conjecture %term;>
+<!ELEMENT Conjecture %sequent;>
 <!ATTLIST Conjecture
           no NMTOKEN #REQUIRED>
 
 
 <!ELEMENT Decl %term;>
 <!ATTLIST Decl
-          name CDATA #REQUIRED>
+          name CDATA #IMPLIED>
 
 <!ELEMENT Def %term;>
 <!ATTLIST Def
-          name CDATA #REQUIRED>
+          name CDATA #IMPLIED>
+
+<!ELEMENT Hidden EMPTY>
 
 <!ELEMENT Goal %term;>
 
           id     ID     #REQUIRED
           sort   %sort; #REQUIRED>
 
-<!ELEMENT META EMPTY>
+<!-- The substitutions are ordered by increasing DeBrujin  -->
+<!-- index. An empty substitution means that that index is -->
+<!-- not accessible.                                       -->
+<!ELEMENT META (substitution*)>
 <!ATTLIST META
-          no   NMTOKEN #REQUIRED
-          id   ID      #REQUIRED
-          sort %sort;  #REQUIRED>
+          no              NMTOKEN #REQUIRED
+          id              ID      #REQUIRED
+          sort            %sort;  #REQUIRED>
 
 <!ELEMENT IMPLICIT EMPTY>
 <!ATTLIST IMPLICIT
 <!ATTLIST CofixFunction
           name     CDATA   #REQUIRED>
 
+<!ELEMENT substitution ((%term;)?)>
+
 <!-- Sintactic sugar for CIC terms and for CIC objects: -->
 
 <!ELEMENT source %term;>