Slot constraints can take concrete type expressions as well as class expressions. A concrete type expression can be either:

- One of the predicates
**min**(written ),**max**(written ),**greater-than**(written ),**less-than**(written ),**range**(written ) and**equal**(written ). - A conjunction of concrete type expressions, written , a disjunction of concrete type expressions, written or a negated concrete type expression, written .
**integer**and**string**are also provided as abbreviations for the expressions ((**min**0)**or**(**max**0)) and ((**min**``A'')**or**(**max**``A'')) respectively.

Ian Horrocks 2000-09-10