1. A non-natural language processing (NLP) computer-implemented method of performing purely an ontology-based search of an electronic document by selecting keywords representative of said electronic document from an ontology, said non-NLP computer-implemented method comprising: retrieving, by a computer, said electronic document; retrieving, by said computer, said ontology associated with said electronic document, said ontology comprising one of a directed acyclic graph (DAG), a collection of trees, and a collection of DAGs, wherein said ontology comprises one or more root vertices, a plurality of descendent vertices, and a plurality of descendent leaves, said descendent vertices and said descendent leaves corresponding to terms in said ontology; scanning, by said computer, said electronic document and computing, for each term in said ontology, a first value representative of a frequency of occurrence of said each term in said electronic document; assigning, by said computer, said first value for said each term to corresponding vertices in said ontology; propagating, by said computer, said first value from leaf vertices of said ontology upwards to said one or more root vertices of said ontology by assigning to each of said descendent vertices a second value, wherein said second value equals a sum of said first value of said each of said descendent vertices plus second values of immediate descendents of said each of said descendent vertices multiplied by a propagation factor, wherein said propagation factor comprises a fractional weight-propagation; inputting, to said computer, an integer value, k; and traversing, by said computer, all said descendent leaves and all said descendent vertices of said ontology and selecting those k said terms of said ontology having the k highest said second values as k said keywords representative of said electronic document.