/**
  * @param QOM\OperandInterface $operand
  */
 private function walkOperand(QOM\OperandInterface $operand)
 {
     if ($operand instanceof QOM\NodeNameInterface) {
         return ZendSearchAdapter::IDX_NODENAME;
     }
     if ($operand instanceof QOM\NodeLocalNameInterface) {
         return ZendSearchAdapter::IDX_NODELOCALNAME;
     }
     if ($operand instanceof QOM\LiteralInterface) {
         return $this->escape($operand->getLiteralValue());
     }
     if ($operand instanceof QOM\PropertyValueInterface) {
         return $this->escape($operand->getPropertyName());
     }
     if ($operand instanceof QOM\LowerCaseInterface) {
         return $this->walkOperand($operand->getOperand());
     }
     if ($operand instanceof QOM\UpperCaseInterface) {
         return $this->walkOperand($operand->getOperand());
     }
     throw new InvalidQueryException("Dynamic operand " . get_class($operand) . " not yet supported.");
 }