public XObject executeRelativePathPattern( XPathContext xctxt, StepPattern prevStep)
protected final XObject executeRelativePathPattern( XPathContext xctxt, DTM dtm, int currentNode)
  public XObject executeRelativePathPattern(          XPathContext xctxt, StepPattern prevStep)            throws javax.xml.transform.TransformerException  {    XObject score = NodeTest.SCORE_NONE;    int context = xctxt.getCurrentNode();    DTM dtm = xctxt.getDTM(context);    if (null != dtm)    {      int predContext = xctxt.getCurrentNode();      DTMAxisTraverser traverser;            int axis = m_axis;            traverser = dtm.getAxisTraverser(axis);      for (int relative = traverser.first(context); DTM.NULL != relative;              relative = traverser.next(context, relative))      {        try        {          xctxt.pushCurrentNode(relative);          score = execute(xctxt);                    if (score != NodeTest.SCORE_NONE)          {            score = executePredicates( xctxt, prevStep, SCORE_OTHER,                        predContext, relative);            if (score != NodeTest.SCORE_NONE)              break;          }        }        finally        {          xctxt.popCurrentNode();        }      }    }    return score;  }