We created a Seeker that translates OCL to SQL for searching in databases of any size using OCLps. We look at derivations, constraints, and validation rules. We need OCLps to seek the database without instantiating the objects in memory in the prototyper.
selfVM.Search
Triggers search functionality using search expressions in your ViewModel and populates the vSeekerResult.
See also: [edit | edit source]
Create a ViewModel and rights click on it, select Add Nested ViewModel class and choose Add Search Expressions: 
Search Expression
Contract.allinstances->select(a|a.Name.sqllikecaseinsensitive(vSeekParam+'%') or a.Description.sqlLikeCaseInsensitive(vSeekParam +'%') or a.State.sqlLikeCaseInsensitive(vSeekParam+'%'))
vSeekParam is a variable, thus you can create multiple variables and several search criteria as represented by the orange section of the ViewModal class:
Search Results: vSeekerResult
Continuation