Frustrating traditional approaches:
- select field from a pop up window
- insert parentheses and Boolean operators (selecting from
different options)
- difficult to formulate complex queries
- difficult to reuse elementary conditions
Composition:
- A composition of several queryFragments
(conceptually a single navigation upon the document tree)
- A queryFragment is made by several queryTokens
- A queryToken is the elementary component (a single
interaction upon the queryForm on a single element)
Normalization:
- identify the common ancestor for clauses on elements
belonging to independent paths