]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/mathql/xmathql.dtd
ocaml 3.09 transition
[helm.git] / helm / mathql / xmathql.dtd
index 8d74cadc5d88ba6d8372a2dbfd3397f09528885b..96b52a22b17c4f3a2a2a155374c597026748d883 100644 (file)
@@ -52,7 +52,7 @@
 
 <!-- MathQL query expression declaration -->
 
-<!ENTITY % setexpr '(Rvar|Lvar|Ref|Pattern|Select|LetIn|Relation|
+<!ENTITY % setexpr '(Rvar|Svar|Ref|Pattern|Select|LetSIn|LetVIn|Relation|
                      Union|Intersect|Diff)'>
 
 <!-- MathQL boolean expression declaration -->
@@ -63,8 +63,7 @@
 
 <!ENTITY % functexpr '(FUN|PROPERTY)'>
 
-<!ENTITY % stringsetexpr '(CONST|CONSTLIST|REFOF|BINDER|%functexpr;)'>
-
+<!ENTITY % stringsetexpr '(CONST|CONSTLIST|REFOF|BINDER|VVAR|%functexpr;)'>
 
 <!-- MathQL query top-element -->
 
 
 <!ELEMENT Select (In, Where)>
 
-<!ELEMENT LetIn (%setexpr;, Target)>
+<!ELEMENT LetSIn (%setexpr;, Starget)>
+
+<!ELEMENT LetVIn (%stringsetexpr;, Vtarget)>
 
-<!ELEMENT Relation (Refine?,%setexpr;, Attr+)>
+<!ELEMENT Relation (PName?,%setexpr;, Attr+)>
 <!ATTLIST Relation
           name CDATA #REQUIRED
           refine (sub|super) #IMPLIED>
 <!ATTLIST Where
           rvar CDATA #REQUIRED>
 
-<!ELEMENT Target %setexpr;>
-<!ATTLIST Target
+<!ELEMENT Starget %setexpr;>
+<!ATTLIST Starget
           svar CDATA #REQUIRED>
 
+<!ELEMENT Vtarget %setexpr;>
+<!ATTLIST Vtarget
+          vvar CDATA #REQUIRED>
+
 <!ELEMENT Attr EMPTY>
 <!ATTLIST Attr 
           binder CDATA #REQUIRED>
 
+<!ELEMENT PName (CONST+)>
+
 <!-- MathQL boolean expressions -->
 
 <!ELEMENT BOOL EMPTY>
 
 <!ELEMENT REFOF %setexpr;>
 
+<!ELEMENT VVAR %stringsetexpr;>
+
 <!ELEMENT BINDER (Rvar)>
 <!ATTLIST BINDER
           name CDATA #REQUIRED>
 <!ATTLIST FUN
           name CDATA #REQUIRED>
 
-<!ELEMENT PROPERTY %stringsetexpr;>
+<!ELEMENT PROPERTY (Refine?,%stringsetexpr;)>
 <!ATTLIST PROPERTY
-          name CDATA #REQUIRED
-          refine (sub|super) #IMPLIED>
\ No newline at end of file
+          name CDATA #REQUIRED>