# File src/rexml/parsers/xpathparser.rb, line 33
      def to_string( path )
        string = ""
        while path.size > 0
          case path[0]
          when :ancestor, :ancestor_or_self, :attribute, :child, :descendant, :descendant_or_self, :following, :following_sibling, :namespace, :parent, :preceding, :preceding_sibling, :self
            op = path.shift
            string << "/" unless string.size == 0
            string << op.to_s
            string << "::"
          when :any
            path.shift
            string << "*"
          when :qname
            path.shift
            prefix = path.shift
            name = path.shift
            string << prefix+":" if prefix.size > 0
            string << name
          when :predicate
            path.shift
            string << '['
            string << predicate_to_string( path.shift )
            string << ' ]'
          else
            string << "/" unless string.size == 0
            string << "UNKNOWN("
            string << path.shift.inspect
            string << ")"
          end
        end
        return string
      end