framework for retrieval