code: private boolean doVisitChildren(VisitContext context) {
  
  		// Just need to check whether there are any ids under this
  		// subtree. Make sure row index is cleared out since
  		// getSubtreeIdsToVisit() needs our row-less client id.
  		//
  		// We only need to position if row iteration is actually needed.
  		//
  		if (requiresRowIteration(context)) {
  			setIndex(context.getFacesContext(), -1);
  		}
  		Collection<String> idsToVisit = context.getSubtreeIdsToVisit(this);
  		assert (idsToVisit != null);
  
  		// All ids or non-empty collection means we need to visit our children.
  		return (!idsToVisit.isEmpty());
  
  	}
docs: a tree visit