code: def parse_media_range(range)
      type, subtype, params = parse_mime_type(range)
      unless params.has_key?("q") and params["q"] and params["q"].to_f and params["q"].to_f <= 1 and params["q"].to_f >= 0
        params["q"] = "1"
      end
  
      [type, subtype, params]
    end
docs: Carves up a media range and returns an Array of the
    [type, subtype, params] where "params" is a Hash of all
    the parameters for the media range.
  
   For example, the media range "application/*;q=0.5" would
    get parsed into:
  
   ["application", "*", { "q", "0.5" }]
  
   In addition this function also guarantees that there
    is a value for "q" in the params dictionary, filling it
    in with a proper default if necessary.