1. A method for constructing a search database using an ontology, the method comprising: via at least one processor: obtaining a list of items, each item corresponding to a potential search result; obtaining a list of terms from an ontology that describes the items; dividing the terms into user-selectable search queries and non-selectable terms; and adding the items and the terms as nodes in a network, wherein the nodes are connected based on semantic relationships specified by the ontology.