  We present Broccoli, a fast and easy-to-use search engine for what we call
semantic full-text search. Semantic full-text search combines the capabilities
of standard full-text search and ontology search. The search operates on four
kinds of objects: ordinary words (e.g., edible), classes (e.g., plants),
instances (e.g., Broccoli), and relations (e.g., occurs-with or native-to).
Queries are trees, where nodes are arbitrary bags of these objects, and arcs
are relations. The user interface guides the user in incrementally constructing
such trees by instant (search-as-you-type) suggestions of words, classes,
instances, or relations that lead to good hits. Both standard full-text search
and pure ontology search are included as special cases. In this paper, we
describe the query language of Broccoli, the main idea behind a new kind of
index that enables fast processing of queries from that language as well as
fast query suggestion, the natural language processing required, and the user
interface. We evaluated query times and result quality on the full version of
the English Wikipedia (40 GB XML dump) combined with the YAGO ontology (26
million facts). We have implemented a fully functional prototype based on our
ideas and provide a web application to reproduce our quality experiments. Both
are accessible via http://broccoli.informatik.uni-freiburg.de/repro-corr/ .
