An important factor in a system like Seams-CMS is the fact we need to be able to let users search for data. Creating a system that can deal with such complex questions sounds like a daunting task, but is, in fact, a relatively simple problem: we treat our search queries as a custom programming language.