@Override
 public void visit(OpPropFunc opPropFunc) {
   QueryIterator input = pop();
   QueryIterator qIter = opExecutor.execute(opPropFunc, input);
   push(qIter);
 }
 @Override
 public void visit(OpJoin opJoin) {
   QueryIterator input = pop();
   QueryIterator qIter = opExecutor.execute(opJoin, input);
   push(qIter);
 }
 @Override
 public void visit(OpTriple opTriple) {
   QueryIterator input = pop();
   QueryIterator qIter = opExecutor.execute(opTriple, input);
   push(qIter);
 }
 @Override
 public void visit(OpQuad opQuad) {
   QueryIterator input = pop();
   QueryIterator qIter = opExecutor.execute(opQuad, input);
   push(qIter);
 }
 @Override
 public void visit(OpGroup opGroup) {
   QueryIterator input = pop();
   QueryIterator qIter = opExecutor.execute(opGroup, input);
   push(qIter);
 }
 @Override
 public void visit(OpQuadPattern quadPattern) {
   QueryIterator input = pop();
   QueryIterator qIter = opExecutor.execute(quadPattern, input);
   push(qIter);
 }
 @Override
 public void visit(OpOrder opOrder) {
   QueryIterator input = pop();
   QueryIterator qIter = opExecutor.execute(opOrder, input);
   push(qIter);
 }
 @Override
 public void visit(OpDistinct opDistinct) {
   QueryIterator input = pop();
   QueryIterator qIter = opExecutor.execute(opDistinct, input);
   push(qIter);
 }
 @Override
 public void visit(OpLabel opLabel) {
   QueryIterator input = pop();
   QueryIterator qIter = opExecutor.execute(opLabel, input);
   push(qIter);
 }
 @Override
 public void visit(OpDatasetNames dsNames) {
   QueryIterator input = pop();
   QueryIterator qIter = opExecutor.execute(dsNames, input);
   push(qIter);
 }
 @Override
 public void visit(OpConditional opCondition) {
   QueryIterator input = pop();
   QueryIterator qIter = opExecutor.execute(opCondition, input);
   push(qIter);
 }
 @Override
 public void visit(OpMinus opMinus) {
   QueryIterator input = pop();
   QueryIterator qIter = opExecutor.execute(opMinus, input);
   push(qIter);
 }
 @Override
 public void visit(OpDisjunction opDisjunction) {
   QueryIterator input = pop();
   QueryIterator qIter = opExecutor.execute(opDisjunction, input);
   push(qIter);
 }