1. A method for retrieving information in response to a query, the method comprising: maintaining, by a computer system, an ontology representing a plurality of concepts and a set of relationships between two or more of the concepts; generating, by the computer system, an index representing the stored content based at least in part on the ontology; receiving, by the computer system, a query comprising a natural language expression or question; and generating, by the computer system, a response to the query using the stored content based on the index and one or more rules applied to the query and the index, each rule comprising at least one condition for matching content represented in the index to the query and at least one corresponding action for retrieving stored content upon satisfaction of the condition.