code: function(options) {
    if (!defined(options) || !defined(options.regionProvider)) {
      throw new DeveloperError("options.regionProvider is required.");
    }
  
    FunctionParameter.call(this, options);
  
    this._regionProvider = options.regionProvider;
    this.singleSelect = defaultValue(options.singleSelect, false);
  
    knockout.track(this, ["_regionProvider"]);
  }
docs: A parameter that specifies a set of characteristics for regions of a particular type.
  
  @alias RegionDataParameter
  @constructor
  @extends FunctionParameter
  
  @param {Object} [options] Object with the following properties:
  @param {Terria} options.terria The Terria instance.
  @param {String} options.id The unique ID of this parameter.
  @param {String} [options.name] The name of this parameter.  If not specified, the ID is used as the name.
  @param {String} [options.description] The description of the parameter.
  @param {RegionProvider|RegionTypeParameter} options.regionProvider The {@link RegionProvider} from which a region may be selected.  This may also
  be a {@link RegionTypeParameter} that specifies the type of region.
  @param {Boolean} [options.singleSelect] True if only one characteristic may be selected; false if any number of characteristics may be selected.