Designing a boolean search interface

25 Nov 2008 - 4:16pm
5 years ago
5 replies
1503 reads
Vishal Subraman...
2005

This is a part Computer Science question, part Design question (apologies if
some of the logic doesn't make sense)
So, I need to design a search interface that would eventually spit out a
boolean query without typing it out.
For Eg:
D= Data Field

D1 AND D2 OR D3 AND D4
(D1 OR D2) AND (D3 OR D4)
D1 AND (D2 OR D3) AND D4

To put it in context, assume its a library search and the user wants to
search books by Author A OR Author B that have Keywords A AND Keywords B and
are published between a certain date range. Is anyone aware of design
patterns for such an interface.

-Vishal

Comments

25 Nov 2008 - 4:35pm
Mark Canlas
2003

Google's search Hoffman codes for the most common case: ANDing. Every search
term you type in a box is automatically ANDed together. Only ORs are
explicit and bind tightly like a binary operator.
Consider that your search capabilities need not be expressively complete due
to the potential lack of need. That is, what are the odds 1) your users need
that type of query 2) they're capable of learning, retaining, and using that
vocabulary.

On Tue, Nov 25, 2008 at 4:16 PM, Vishal Iyer <vishaliyer1 at gmail.com> wrote:

> This is a part Computer Science question, part Design question (apologies
> if
> some of the logic doesn't make sense)
> So, I need to design a search interface that would eventually spit out a
> boolean query without typing it out.
> For Eg:
> D= Data Field
>
> D1 AND D2 OR D3 AND D4
> (D1 OR D2) AND (D3 OR D4)
> D1 AND (D2 OR D3) AND D4
>
> To put it in context, assume its a library search and the user wants to
> search books by Author A OR Author B that have Keywords A AND Keywords B
> and
> are published between a certain date range. Is anyone aware of design
> patterns for such an interface.
>
> -Vishal
> ________________________________________________________________
> Welcome to the Interaction Design Association (IxDA)!
> To post to this list ....... discuss at ixda.org
> Unsubscribe ................ http://www.ixda.org/unsubscribe
> List Guidelines ............ http://www.ixda.org/guidelines
> List Help .................. http://www.ixda.org/help
>

25 Nov 2008 - 4:38pm
Santiago Bustelo
2010

A recet thread about interfaces for advanced search queries, with
examples and demos:

http://www.ixda.org/discuss.php?post=32274

--

Santiago Bustelo // icograma
Buenos Aires, Argentina

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Posted from the new ixda.org
http://www.ixda.org/discuss?post=35964

25 Nov 2008 - 5:31pm
Andy Edmonds
2004

One implementation I didn't see mentioned is the OS X 10.5 addition of
boolean logic using the more friendly "any of" or "all of" terminology.

http://arstechnica.com/reviews/os/mac-os-x-10-5.ars/12

25 Nov 2008 - 7:37pm
Santiago Bustelo
2010

Thanks for the link! Being a MacOS user, I was unaware of Leopard's
Finder supporting of boolean logic. A manual -or arstechnica article-
is required to know that things can happen when option-clicking on a
widget...

In the aforementioned thread, I posted a demo that works in roughly
the same way (without option-click ;-):
http://www.icograma.com/demos/rulebuilder/?new

Also discussed in that thread about "all/any of" implying actually
a different grammar (prefix vs. infix notation). To define and
construct an operation language is a fascinating matter. At least,
for geeks like me ;-)

--

Santiago Bustelo // icograma
Buenos Aires, Argentina

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Posted from the new ixda.org
http://www.ixda.org/discuss?post=35964

26 Nov 2008 - 1:33pm
Hernán
2008

Hello Vishal,
You're facing an interesting problem indeed. The short answer is take a
look at JSTOR and copy the advanced search interface. It includes several
text fields and for each one, two list boxes with the "what to search" and
the other one for the logical connector. This is a pretty basic one (a
textual form interface) and the most popular way to implement this kind of
UI (if you don't have access to JSTOR, try a search using the TheBat e-mail
client).

But if your users are domain experts, in your example librarians, they
would rarely search using a massive concatenation of logic connectors with
ANDs, ORs, NOTs, etc, because searching in itself is an activity that nobody
wants to put too much effort (well, this could be an exception with
librarians :) and experts already know what to search. Big exception : this
do not apply for researchers in the area of linguistics and other very
specific areas.

So, if the information is well conceptualizated in the system - i.e.
permits operations of user collections so the logical connectives can be
applied easily - you should end with one field for each of the most popular
kind of searches like ISSN number, Title, MARC Record, Editor, and so on.
That would be the indexed fields in the database.

If you really want to go beyond, and have the possibility of design a WIMP
(Window, Icon, Menu, Pointer) interface, you can explore some visual queries
systems ranging from diagrammatic interfaces including 3D capabilities like
Winona or Amaze, iconic ones like IconicBrowser or hybrid ones like X-VIQU.
Including metaphors like search trees, relevance spheres, would be an
interesting experience too.

Regards

Hernán

2008/11/25 Vishal Iyer <vishaliyer1 at gmail.com>

> This is a part Computer Science question, part Design question (apologies
> if
> some of the logic doesn't make sense)
> So, I need to design a search interface that would eventually spit out a
> boolean query without typing it out.
> For Eg:
> D= Data Field
>
> D1 AND D2 OR D3 AND D4
> (D1 OR D2) AND (D3 OR D4)
> D1 AND (D2 OR D3) AND D4
>
> To put it in context, assume its a library search and the user wants to
> search books by Author A OR Author B that have Keywords A AND Keywords B
> and
> are published between a certain date range. Is anyone aware of design
> patterns for such an interface.
>
> -Vishal
>
>
> ________________________________________________________________
> Reply to this thread at ixda.org
> http://www.ixda.org/discuss?post=35964
>
> ________________________________________________________________
> Welcome to the Interaction Design Association (IxDA)!
> To post to this list ....... discuss at ixda.org
> Unsubscribe ................ http://www.ixda.org/unsubscribe
> List Guidelines ............ http://www.ixda.org/guidelines
> List Help .................. http://www.ixda.org/help
>

Syndicate content Get the feed