# File lib/xtemplate/xpath.rb, line 151
      def tag(val, tag)
        case val
        when Hash
          newval = val.dup
          if( v = newval[TextNode] )
            newval[tag] = v
            newval.delete(TextNode)
          end
          newval
        when Array
          val.collect{|v| tag(v, tag)}
        else
          {tag => val}
        end
      end