# File lib/microformat.rb, line 267
    def parse_element(element, target = nil)
      if target == :url
        url = case element.name
        when 'img'    then element['src']
        when 'a'      then element['href']
        when 'object' then element['value']
        end
        url[/^http/] ? url : @options[:base_url].to_s + url if url.respond_to?(:[])
      elsif target.is_a? Array
        target.inject(nil) do |found, klass|
          klass = klass.respond_to?(:find) ? klass : nil

          found || parse_element(element, klass)
        end 
      elsif target.is_a? Class
        target.find(@options.merge(:first => element))
      else
        value = case element.name
        when 'abbr' then element['title']
        when 'img'  then element['alt']
        end || ''

        ret = (value.empty? ? element.innerHTML : value).strip
        target == :html ? ret : ret.strip_html.coerce
      end
    end