parse_extension_args (OpenID::AX::KeyValueMessage)

    # File lib/openid/extensions/ax.rb, line 309
          def parse_extension_args(ax_args)
            check_mode(ax_args)
            aliases = NamespaceMap.new

            ax_args.each{|k, v|
              if k.index('type.') == 0
                type_uri = v
                name = k[5..-1]

                AX.check_alias(name)
                aliases.add_alias(type_uri,name)
              end
            }

            aliases.each{|type_uri, name|
              count_s = ax_args['count.'+name]
              count = count_s.to_i
              if count_s.nil?
                value = ax_args['value.'+name]
                if value.nil?
                  raise IndexError, "Missing #{'value.'+name} in FetchResponse"
                elsif value.empty?
                  values = []
                else
                  values = [value]
                end
              elsif count_s.to_i == 0
                values = []
              else
                values = (1..count).inject([]){|l,i|
                  key = "value.#{name}.#{i}"
                  v = ax_args[key]
                  raise IndexError, "Missing #{key} in FetchResponse" if v.nil?
                  l << v
                }
              end
              @data[type_uri] = values
            }
          end