docs: void handleGet(Object value, 
                   MatchSpaceKey msg, 
                   EvalCache cache,
                   Object contextValue,
                   SearchResults result) 
        throws MatchingException, BadMessageFormatMatchingException 
    {
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        tc.entry(this,
                 cclass, 
                 "handleGet", 
                 new Object[] {value,msg,cache,contextValue,result});
      
      // Call the handleGet() method in the parent class but 
      // provide a context and we may need to call it multiple times
      if (value != null && value instanceof SetValEvaluationContext)
      {
        // The "value" we get back is a list of wrapped string values and
        // DOM nodes that we need to process individually
        ArrayList nodeList = ((SetValEvaluationContext)value).getWrappedNodeList();
        
        // Iterate over the nodes that were passed into us
        Iterator iter = nodeList.iterator();
  
        while(iter.hasNext())
        {
          WrappedNodeResults wrappedNode = (WrappedNodeResults)iter.next();
          
          if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
            tc.debug(this,cclass, "handleGet", "Processing node: " + wrappedNode); 
          
          // Need to be careful here, we propagate a Number, but the
          // context for subsequent operations is the parent node.
          // We retrieve a list of numbers each of which are processed
          // in turn
          ArrayList numberList = wrappedNode.getNumberList(id.getName());
          if(numberList != null)
          {
            Iterator iterNumber= numberList.iterator();
            
            while(iterNumber.hasNext())
            {
              Number num = (Number)iterNumber.next();
  
              // Need to pass in an XPathEvaluationContext
              SetValEvaluationContext xpEval = new SetValEvaluationContext(wrappedNode);
        
              super.handleGet(num, msg, cache, xpEval, result);
            } // eof while             
          } // eof if numberList not null        
        } // eof iteration over nodes
      } // value not null
      
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        tc.exit(this,cclass, "handleGet");    
    }