<!ENTITY % TERM "(Con | Var | Expr)"> <!ENTITY % LITFORM "(Atom | Equal)"> <!ENTITY % QUANTIF "(Exists)"> <!ENTITY % CONDIT "(%LITFORM; | %QUANTIF; | And | Or)"> <!ELEMENT Con (#PCDATA)> <!ELEMENT Var (#PCDATA)> <!ELEMENT Rel (#PCDATA)> <!ELEMENT Fun (#PCDATA)> <!ELEMENT Expr (Fun, (%TERM;)*)> <!ELEMENT Atom (Rel, (%TERM;)*)> <!ELEMENT Equal (%TERM;, %TERM;)> <!ELEMENT Exists (Var+, %CONDIT;)> <!ELEMENT And ((%CONDIT;)*)> <!ELEMENT Or ((%CONDIT;)*)>