Query Language Help
Introduction
Many features of the Funnelback query language are intended to be accessed via
GUI features on "advanced search" pages or on customised search interfaces
developed for individual organisations. However, if you are not phased by the
terseness of the query language you can use any of the operators described here
via the "simple" Funnelback search interface.
This page gives a simple example of the use of each of the basic query language
operators.
Query Language Operators
Simple query
This is the simplest search: one or more words to find
julius caesar rome
Phrase operator
Using the phrase operator can reduce spurious results by requiring that the
component words appear consecutively and in the order specified. Note that
intervening punctuation, HTML tags etc are ignored.
"hail caesar"
Metadata search
Documents may contain metadata, including the document's author, title and
when it was created. Funnelback can query this information using the syntax
class:query
where class is the metadata class class you want to query (these are a single letter
defined by the Funnelback administrator; standard classes include "a" for author, "t" for title).
The query:
t:capitol
locates documents containing the word capitol within the
metadata field corresponding to the metadata class "t" (ie. the documents'
title.)
Dysjunction operator
The dysjunction operator acts like an OR in a boolean language. The results will
contain any document that has at least one of the query terms. For example:
[mighty brave] army
A full answer to this query will include the word army and one or more of
mighty or brave.
Negation operator
The negation operator excludes all documents that contain the negated
query from the fully matching results.
caesar !brutus
A full answer to this query will include the word caesar but no occurrence
of the word brutus. Unlike the mandatory exclusion operator (see below),
partial results presented in subsequent tiers may contain the word
brutus.
Mandatory exclusion operator
The mandatory exclusion
operator excludes all documents that contain the negated
query from all results.
This is similar to the NOT operator in a Boolean language.
caesar -antony
A full answer to this query will include the word caesar but no occurrence
of the word antony. Unlike the negation operator (see above), no results
will contain the word antony in the indexable part of the text. The
partial results are those which satisfy the mandatory constraint (no
antony) but which do not contain caesar.
Mandatory inclusion operator
The mandatory inclusion operator will return results that all have the
included term.
antony +cleopatra
A full answer to this query will include the words antony and
cleopatra. Every result will contain the word cleopatra.
Near (proximity) operator
The near operator (backquotes) requires that the query words appear, in any
order, within 15 words of each other. The Funnelback administrator can adjust this
limit to any number of words.
`army march`
The full answer to this query will be those documents that include the word army
within 15 words of march (in any order).
Truncation operator
The truncation operator matches words that contain the query term.
anti*
This example pattern matches all words starting with anti, such as
antium and antioch. Be careful, there are almost always more
matching words than you expect.
The truncation operator can appear at the
left, at the right or both, but NOT in the middle of the string.
*och*
This example pattern matches all words containing the string och, such as
antioch and rochester.
Date Query
Date queries constrain the result set to documents that were modified/created
during a specified time period. For date querying purposes, Funnelback only
records one date per document. It will look for the date modified, the date
created and the HTTP server's last modified date (in that order).
d<1jan1600
The
d<1jan1600 query returns documents that were modified/created before the
1st of January 1600.
Complex examples
Mixed operators
The query:
t:`war* castle`
mixes the following operators:
- metadata -- search for document titles (t);
- proximity -- title's containing the query terms close to each other (in any order); and
- truncation -- words beginning with war