A multi-structural query system performs a high-level multi-dimensional
query on a multi-structural database. The query system enables a user to
navigate a search by adding restrictions incrementally. The query system
uses a schema to discover structure in a multi-structural database. The
query system leaves a choice of nodes to return in response to a query as
a constrained set of choices available to the algorithm. The query system
further casts the selection of a set of nodes as an optimization. The
query system uses pairwise-disjoint collections to capture a concise set
of highlights of a data set within the allowed schema. The query system
further comprises efficient algorithms that yield approximately optimal
solutions for several classes of objective functions.