# File lib/xtemplate/xpath.rb, line 322
      def flatten(val)
        warn("The action 'flatten' and 'hash' will be obsoleted.")
        case val
        when Array
          newval = {}
          text   = ""
          val.each{|elem|
            case elem
            when Hash
              elem.each{|k,v|
                newval[k] = v
              }
            else
              text.concat(elem.to_s)
            end
          }
          if( text.size > 0 )
            newval[TextNode] = text
          end
        else
          newval = val
        end
        newval
      end