Visualizing Boolean expressions (part 2)

In our last post we reviewed some of the issues involved in developing effective solutions to complex search problems, and explored some of the challenges involved in formulating and representing Boolean strings and expressions. In particular, we explored the contribution of three experimental systems which aimed to offer an alternative to the conventional approach exemplified by line-by-line query builders and ‘advanced search’ forms. In this piece, we review some of the more recent examples, and reflect on the ways in which their ideas, insights and innovations may be productively applied to address contemporary search challenges.

Alternative approaches

Our first example is that of Yi et al (2005), who were investigating ways in which information visualization techniques could be applied the exploration and querying of multivariate data sets. In particular, they developed a system based around a ‘dust and magnet’ metaphor, in which dimensions of interest within the data could be represented as ‘magnets’ on a visual canvas, and the relationships between points in the data could be understood by observing the effect of the ‘magnetic forces’ on individual ‘data particles’. For example, a database of cereal brands could be explored by selecting magnets corresponding to dimensions of interest in the data (e.g. protein, vitamin, sugar, fat content), and the layout would then represent the balance of competing forces between them:


Crucially, Yi el al recognised that the effectiveness of their approach relied not just on the choice of an appropriate metaphor, but also attention to detail in the execution which emphasized the use of animation and interaction to convey the nature of the relationships within the data. To them, animation was more than mere decoration: it was the means by which the user understood how the visualization was actually generated. This is a theme to which we return in our own work.

Our second example concerns a more recent system, namely that of Nitsche & Nurnberger (2013). They observed that when users search for information in unfamiliar domains, they often struggle to formulate effective queries, and can end up repeating reformulations without necessarily achieving their goals. In response, they developed a system based around a radial interface in which queries and results could be integrated and collectively manipulated.

The concept utilized a pseudo-desktop metaphor in which objects of interest clustered toward the centre.  Query objects could be entered directly onto this canvas (shown as circular icons), and their proximity to the centre and to other objects was used as a relevance cue, influencing the selection and position of search results (shown as square icons). The radial canvas was combined with a ‘scratch space’ on the left for unused query terms, and a conventional results list on the right:


Significantly, Nitsche and Nurnberger understood that the provision of immediate feedback was fundamental to effective exploratory search, so users could not only query the data in a conventional sense but also compose ‘what if’ questions to explore and optimise their own search queries. They also recognised that the exploratory nature of their system invited interaction via non-desktop (i.e.  touch-based) platforms, and developed versions for native tablet devices (e.g. iPad) and also for mobile web (HTML5). These are also ideas which have influenced our own work.

Our final example is much more modest in ambition, but offers perhaps the most compelling proposition by virtue of its simplicity. Boolify was developed as an educational tool to teach users how to create Boolean searches in Google. Users are invited to drag coloured blocks onto a canvas, e.g. green for terms or phrases, and yellow or red for Boolean operators (OR and NOT respectively), and purple for platform-specific operators (e.g. ‘intitle’ ‘inurl, etc.):


Crucially, by displaying the generated Boolean string below the canvas, Boolify promotes understanding of the query syntax and optimisation of its semantics, and facilitates portability of the output to other systems. These are key themes to which we return in our own work.

Boolify’s simplicity encourages playful interaction and exploration. However, its minimalism is also its principal shortcoming: a lack of support for structural delimitation (e.g. parentheses) means there is no inbuilt method to differentiate between ‘A AND (B OR C)’ and ‘(A AND B) OR C’. Boolify thus excels as a learning tool, but does not scale well to the rigour of professional search practice.

In summary

In this post and the previous one we have reviewed some of the issues involved in developing effective solutions to complex search problems, and explored the contribution of a number of key alternatives. Each of these systems affords their own unique solution to the problem of search strategy formulation, and collectively they offer a number of key principles and insights, such as:

  • Boolean expressions can be formulated as a objects on a canvas, and arranged by direct manipulation
  • Query elements can be individually invoked or interrogated to facilitate exploration
  • By nesting aggregate structures, it is possible to create queries of arbitrary complexity
  • Interaction and animation can be used to communicate meaning and structure
  • Real-time feedback is fundamental to effective query optimisation

However, despite the enduring value of these principles, it should be noted that none of the above systems has been implemented in an actual product, nor even (with the possible exception of Boolify) been deployed to a live, publicly available endpoint on a production basis. The reasons for this are of course manifold, but it’s worth reflecting on the implications of this and magnitude of the task faced by anyone attempting to contest the hegemony of the conventional query builder. Like the Dvorak keyboard, it’s not enough simply to be a better solution. Instead, it must be so much better that users will gladly accept the inherent cost of switching, or alternatively, it must focus on that segment of community where the shortcomings of the current approach are felt most keenly. These are tenets to which we will return in future blog posts, along with commentary on the outcomes of our own research and development activities.

In the meantime, if you'd like to have a go at formulating visual search strategies yourself, head on over to the 2dSearch app, and let us know what you think.