Queries which may be expressed in natural language are processed by:
decoding a query into one or more semantically meaningful query elements;
accessing data storage, which data storage includes at least one
annotation element and one or more corresponding data entries:
identifying annotation elements in accordance with the semantically
meaningful query elements; and retrieving at least one data entry
corresponding to each identified annotation element.