9. A computer-implemented iterative semantic search method for searching words on a document where the document contains a sequence of document words broken into a sequence of moving document windows formed by contiguous sentences on the document, the method comprising the steps of: a normalizer step responsive to a query about the contents of the document for converting the various forms of each word to its normal form, where its meaning is mostly preserved by the surrounding context; a lexicon step for providing synonyms defined by repetition and locality of reference for any normalized word; a repository step for storing and indexing each of the synonyms for a defined window size; a parser step for building undirected graphs represented by edges and vertexes using a specified number of sentences from the document; a heuristics step for taking as an input the current success in growing graphs and producing as an output the size of the moving window for use by the parser; a randomizer step for reducing required storage and search time by removing duplicate sub-graphs and embedded sub-graphs from the storage repository; a cache step for applying temporal and spatial locality for subsequent queries; and a graph search algorithm step, which rank orders matching graphs for the query sub-graphs, if any, on the basis of matching sub-graphs.
9. A computer-implemented iterative semantic search method for searching words on a document where the document contains a sequence of document words broken into a sequence of moving document windows formed by contiguous sentences on the document, the method comprising the steps of: a normalizer step responsive to a query about the contents of the document for converting the various forms of each word to its normal form, where its meaning is mostly preserved by the surrounding context; a lexicon step for providing synonyms defined by repetition and locality of reference for any normalized word; a repository step for storing and indexing each of the synonyms for a defined window size; a parser step for building undirected graphs represented by edges and vertexes using a specified number of sentences from the document; a heuristics step for taking as an input the current success in growing graphs and producing as an output the size of the moving window for use by the parser; a randomizer step for reducing required storage and search time by removing duplicate sub-graphs and embedded sub-graphs from the storage repository; a cache step for applying temporal and spatial locality for subsequent queries; and a graph search algorithm step, which rank orders matching graphs for the query sub-graphs, if any, on the basis of matching sub-graphs. 10. The method of claim 9 including the step of modifying the query.