We advocate the use of a dedicated principle-language to describe the class of parse trees of a given grammar. Combined with a compiler derived from a formula evaluator such a language yields a flexible approach to principle checking. In Passau we have been using a first order language for attributed trees called Clat(A) where A is the set of attribute values. In this paper we discuss two expressivity results for Clat of A.Palm (1997) and compare it with related results for the other dedicated principle-languages. The result for a finite value set is not new but the explicit description of the translation may yield new results for special cases. However, the result for stacks as values is new.
In addition, we suggest that a principle-based parser should respect the central tenets of the principle-and-parameter paradigm. Therefore we require that such a parser should use a set of universal parsing operations. However, the applicability of a parsing operation in a particular situation is controlled by the so called internal grammar introduced by K.-M.Schneider (1993). It is a set of nodefree relations derived from the set of principles of the grammar. In the case of local principles he obtained a quite successful implementation. However, in the non-local case a feasible extension of the approach remains to be found.