Patent ID: 8374891

Claim:
A system for accessing health care data comprising: a computer processor; an authentication module stored on a memory and executable by the computer processor, the authentication module configured to receive a data request from a user of a client device and authenticate the data request by determining a relationship between the user and data being requested and granting or denying access to the data based on the relationship, wherein the data request includes one or more filters describing one or more patients and responsive to the user being an administrator and the data request being for laboratory test results, the authentication module is configured to deny the administrator access to the data request; and a first data retrieval service module coupled to the authentication module, to the client device and to a plurality of data sources that include health care data associated with the one or more patients, the first data retrieval service module configured to: determine a topology describing a relationship between the first data retrieval service module and the plurality of data sources to determine access instructions for communicating the data request to the plurality of data sources, update the access instructions by transmitting delegation requests to the plurality of data sources, receive the data request from the authentication module and transmit the data request to a first set of data sources from the plurality of data sources, receive health care data corresponding to the data request and pointers describing how to access the health care data within the first set of data sources from the first set of data sources, generate a catalog from the received health care data and pointers received from the first set of data sources that is organized into a single result set, reformat at least a portion of the catalog into a format for use by the client device based on the data request and transmit at least a portion of the reformatted catalog to the client device; and a data cache coupled to the first data retrieval source module, the data cache configured to update a set of previously generated catalogs to include the reformatted catalog, wherein the set of previously generated catalogs reduces a time for returning the data being requested to the client device.