<!ENTITY % position '(Conclusion|Hypothesis|Body|MainConclusion|
MainHypothesis)'>
-<!ENTITY % order '(ascendant|descendant)'>
-
<!ENTITY % bool '(True|False)'>
<!-- MathQL query expression declaration -->
-<!ENTITY % queryexpr '(Union|Intersect|Diff|SortBy|Select|Exists|Use|UsedBy|
+<!ENTITY % queryexpr '(Union|Intersect|Diff|Select|Exists|Use|UsedBy|
ConstructorsOf|Pattern|InTheory|TheoryRefTo|TypeOf|
SuperTypeOf|SubTypeOf|Group)'>
<!ELEMENT Diff (%queryexpr;, %queryexpr;)>
-<!ELEMENT SortBy (%queryexpr;, SortField)>
-
<!ELEMENT Select (In, Where)>
<!ELEMENT Exists (In, Where)>
<!-- MathQL query sub-expressions -->
-<!ELEMENT SortField %functexpr;>
-<!ATTLIST SortField
- order %order; #IMPLIED>
-
<!ELEMENT In %queryexpr;>
<!ELEMENT Where %boolexpr;>