restruture to make DQuery/DocumentQuery/WindowQuery interface only