Patent ID: 9569507
Date: 2017-02-14
CPC Classifications: G06F

Claim:
1. A method of processing requests in a virtual directory server (VDS), said method comprising: maintaining attribute data identifying a corresponding set of stored attributes associated with each data source of a plurality of data sources, each data source storing values for associated set of stored attributes; receiving a first request containing an original filter, said original filter being based on a plurality of query attributes, wherein said original filter contains a plurality of attribute value assertions (AVAs), each AVA being based on one attribute of said plurality of query attributes; identifying, based on said attribute data, a set of data sources of said plurality of data sources, wherein each of said set of data sources stores values for at least one of said plurality of query attributes, wherein said set of data sources contain multiple data sources, wherein said attribute data associates a first set of query attributes of said plurality of query attributes with a first data source, and a second set of query attributes of said plurality of query attributes with a second data source; forming a plurality of constituent requests, with each constituent request having a corresponding pruned filter suitable for a respective data source of said set of data sources, wherein the pruned filter of each constituent request for said first data source and said second data source respectively contains only said first set of query attributes and said second set of attributes, wherein said original filter contains at least one attribute that is not contained in one of said first set of query attributes and said second set of query attributes; sending each constituent request of said plurality of constituent requests to the corresponding data source of said set of data sources; receiving a corresponding constituent response of a plurality of constituent responses from each of said set of data sources; forming a final response based on said plurality of constituent responses and said first request; and sending said final response to a client system from which said first request is received.