ECO implements the Object Constraint Language (OCL ) as specified by The Object Management Group. This allows the application to easily make calculations based on business objects without having to write any code. For example the number of published articles an author has could be evaluated as self.Articles->select(State = #Published)->size, where the state is evaluated from the Article class's state machine diagram illustrated earlier. All OCL input is aided by an OCL expression editor, this editor provides the developer with a context sensitive guide to all currently available OCL operations, and an indication as to whether or not the entered expression is valid plus the return type of the expression.
The OCL is also used by the various ECO components for retrieving business class instances from the persistent storage and identifying data to databind to.