/**
  * Visits a {@link NodeListOptional} node.
  *
  * @param n the node to visit
  */
 public void visit(final NodeListOptional n) {
   if (n.present()) {
     for (final Iterator<INode> e = n.elements(); e.hasNext(); ) {
       e.next().accept(this);
     }
     return;
   } else return;
 }
 /**
  * Visits a {@link NodeSequence} node.
  *
  * @param n the node to visit
  */
 public void visit(final NodeSequence n) {
   for (final Iterator<INode> e = n.elements(); e.hasNext(); ) {
     e.next().accept(this);
   }
   return;
 }