1. A method performed by a computing device, the method comprising: obtaining a plurality of documents, the plurality of documents having corresponding text; performing phrase extraction on the text to obtain a plurality of phrases that appear in the text; filtering out some phrases from the plurality of phrases based on one or more criteria to obtain a subset of the plurality of phrases; obtaining an ontology model that maps individual phrases from the subset of the plurality of phrases to classes or subclasses of the ontology model; obtaining a grammar pattern representing a concept, wherein the grammar pattern is defined by a first class or subclass of the ontology model preceding a second class or subclass of the ontology model; determining whether other documents match the grammar pattern, wherein the other documents match the grammar pattern when the other documents include first phrases of the first class or subclass preceding second phrases of the second class or subclass; and inferring that individual other documents that match the grammar pattern express the concept represented by the grammar pattern.