A computer implemented method suitable for identifying output documents similar to an input document, wherein the method comprises the steps of: (a) identifying a predefined maximum number of keywords from a first list of rated keywords extracted from the input document to define a list of best keywords; the list of best keywords having a rating greater than other keywords in the first list of keywords except for keywords belonging to a domain specific dictionary of words and having no measurable linguistic frequency, i.e. no measured linguistic frequency or a measured linguistic frequency below a predefined threshold; (b) formulating a query using the list of best keywords; (c) performing the query to assemble a first set of output documents; (d) identifying a list of keywords for each output document in the first set of documents; (e) computing a measure of similarity between the input document and each output document in the first set of documents based on the first list of rated keywords extracted from the input document and the list of keywords identified for each output document; (f) defining a second set of documents with each document in the first set of documents for which its computed measure of similarity with the input document is greater than a predetermined threshold value; wherein the list of best keywords used for formulating a query has a maximum number of keywords that are identified as belonging to a domain specific dictionary of words and having no measurable linguistic frequency that is less than the predefined maximum number of keywords in the list of best keywords; and wherein the keywords in the first list are rated by: determining if each keyword in the first list of keywords exists in a domain specific dictionary of words; determining a frequency of occurrence in the input document for each keyword in the list of keywords, also referred to as its term frequency, and assigning each keyword its determined term frequency, wherein the maximum occurrence of a keyword is set to a predefined limit; for each keyword identified at that exists in the domain specific dictionary of words, assigning each keyword its measurable linguistic frequency if one exists in a database of linguistic frequencies defined using a collection of documents, and assigning its measurable linguistic frequency to a predefined small value if one does not exist in the database of linguistic frequencies; for each keyword that was not identified in the domain specific dictionary of words at, assigning each keyword its measurable linguistic frequency if one exists in the database of linguistic frequencies; and for each keyword in the list of keywords to which a term frequency and a measurable linguistic frequency are assigned, computing a rating corresponding to its importance in the input document that is a TF/IDF function of its frequency of occurrence in the input document and its measurable linguistic frequency, wherein the measurable linguistic frequency of each keyword is its frequency of occurrence in the collection of documents. (a) identifying a predefined maximum number of keywords from a first list of rated keywords extracted from the input document to define a list of best keywords; the list of best keywords having a rating greater than other keywords in the first list of keywords except for keywords belonging to a domain specific dictionary of words and having no measurable linguistic frequency, i.e. no measured linguistic frequency or a measured linguistic frequency below a predefined threshold; (b) formulating a query using the list of best keywords; (c) performing the query to assemble a first set of output documents; (d) identifying a list of keywords for each output document in the first set of documents; (e) computing a measure of similarity between the input document and each output document in the first set of documents based on the first list of rated keywords extracted from the input document and the list of keywords identified for each output document; (f) defining a second set of documents with each document in the first set of documents for which its computed measure of similarity with the input document is greater than a predetermined threshold value; determining if each keyword in the first list of keywords exists in a domain specific dictionary of words; determining a frequency of occurrence in the input document for each keyword in the list of keywords, also referred to as its term frequency, and assigning each keyword its determined term frequency, wherein the maximum occurrence of a keyword is set to a predefined limit; for each keyword identified at that exists in the domain specific dictionary of words, assigning each keyword its measurable linguistic frequency if one exists in a database of linguistic frequencies defined using a collection of documents, and assigning its measurable linguistic frequency to a predefined small value if one does not exist in the database of linguistic frequencies; for each keyword that was not identified in the domain specific dictionary of words at, assigning each keyword its measurable linguistic frequency if one exists in the database of linguistic frequencies; and for each keyword in the list of keywords to which a term frequency and a measurable linguistic frequency are assigned, computing a rating corresponding to its importance in the input document that is a TF/IDF function of its frequency of occurrence in the input document and its measurable linguistic frequency, wherein the measurable linguistic frequency of each keyword is its frequency of occurrence in the collection of documents.