def query_hook_proxies(hook, attribute)
      unless hook.identifier then
        logger.debug { "Querying annotation hook #{hook.qp} proxy reference #{attribute} by collecting the matching #{hook.class.qp} proxy references..." }
        return query(hook).map { |ref| query_hook_proxies(ref, attribute) }.flatten
      end
      # the hook proxies
      proxies = hook.send(attribute)
      # catenate the query results for each proxy
      proxies.each { |pxy| find_hook_proxy(pxy, hook) }
      proxies
    end
def query_hook_proxies(hook, attribute)
      unless hook.identifier then
        logger.debug { "Querying annotation hook #{hook.qp} proxy reference #{attribute} by collecting the matching #{hook.class.qp} proxy references..." }
        return query(hook).map { |ref| query_hook_proxies(ref, attribute) }.flatten
      end
      # the hook proxies
      proxies = hook.send(attribute)
      # catenate the query results for each proxy
      proxies.each { |pxy| find_hook_proxy(pxy, hook) }
      proxies
    end
Queries on the given object attribute using the {Annotation::IntegrationService}.

 @param [Annotatable] hook the annotated domain object
 @param [Symbol] attribute the proxy attribute
 @result (see #query_object)