1. A method of searching a hierarchical database and an inverted index, the method comprising: receiving a single search query that has syntax identifying an unstructured search string within a structured search query to automatically cause a search of the inverted index and use of the result to automatically search the hierarchical database; extracting the unstructured search string from the single search query; searching the inverted index according to the unstructured search string, wherein the inverted index includes virtual documents created from data stored in the hierarchical database, wherein each virtual document includes a unique identifier from the hierarchical database used to designate the data in the hierarchical database from which that virtual document was created, wherein the unique identifier identifies the virtual document, wherein the searching includes comparing the unstructured search string to text contained within each virtual document, and wherein a result of the inverted index search includes the unique identifiers of those of the virtual documents that contain text matching the complete unstructured search string; and for each of the virtual documents in the result, generating a separate search query from the single search query by replacing the unstructured search string in the structured search query with the unique identifier identifying the virtual document, wherein the separate search query is different from the single search query and different from the structured search query, and searching the hierarchical database according to the separate search query.