1. A method of locating information in at least one information source using at least one search engine, comprising the steps of: (i) accepting a natural language query describing desired information; (ii) parsing said natural language query to extract terms relevant to said desired information; (iii) creating search data comprising at least two search candidates from said extracted terms in a form appropriate to each of said at least one search engine, and transferring said created search data to said each of said at least one search engine to initiating a search; (iv) receiving search results comprising at least one list of information sources from said each of said at least one search engine, and removing redundancies from said at least one list of information sources to obtain a reduced list of information sources; (v) retrieving complete copies of each information source in said reduced list; (vi) examining each said retrieved complete copy relative to said at least two search candidates to determine a match ranking therefor by: (a) arranging each said complete copy into segments, each segment defining the contents of said document between at least three consecutive matches between said complete copy and any of said at least two search candidates; (b) examining each segment in said complete copy to determine a segment score comprising a score for each match between the contents of said complete copy and each search candidate, and weighting said segment score with respect to the length of said segment; (c) selecting at least two segments of said complete copy with the highest weighted segment scores from step (b); (d) for each selected segment, augmenting the segment to include the contents of said complete copy between the selected segment and an adjacent match and performing step (b) for each augmented segment to obtain an updated segment score; (e) while said updated segment score for an augmented segment is greater than said segment store, performing step (d); (f) selecting said augmented segment with the highest updated segment score from each said complete copy; and (g) ranking the selected augmented segments for each said complete copy according to said updated segment scores; (vii) selecting at least the highest ranked selected augmented segment for display to the user, and editing each said at least highest ranked selected segment to form a complete segment by examining the beginning and end of said segment and adding or removing adjacent content of said complete copy to form a substantially grammatically correct segment; and (viii) providing said each said substantially grammatically correct segment to said user.