{
  "type": "object",
  "defaultProperties": [
    "name",
    "type",
    "url"
  ],
  "properties": {
    "layers": {
      "type": "string",
      "title": "Layers",
      "description": "The WMS layers to include.  To specify multiple layers, separate them\nwith a commas."
    },
    "parameters": {
      "type": "object",
      "title": "Parameters",
      "description": "The additional parameters to pass to the WMS server when requesting images.\nIf this property is undefined, WebMapServiceCatalogItem.defaultParameters is used."
    },
    "tilingScheme": {
      "type": "object",
      "title": "Tiling scheme",
      "description": "The tiling scheme to pass to the WMS server when requesting images.\nIf this property is undefiend, the default tiling scheme of the provider is used."
    },
    "getFeatureInfoFormats": {
      "type": "array",
      "title": "Get feature info formats",
      "description": "The formats in which to try WMS GetFeatureInfo requests.  If this property is undefined, the `WebMapServiceImageryProvider` defaults\nare used.",
      "format": "tabs",
      "items": {
        "type": "enum"
      }
    },
    "populateIntervalsFromTimeDimension": {
      "type": "boolean",
      "title": "Populate intervals from time dimension",
      "description": "A value indicating whether a time dimension, if it exists in GetCapabilities, should be used to populate\nthe ImageryLayerCatalogItem's intervals.  If the ImageryLayerCatalogItem's intervals property is set explicitly\non this catalog item, the value of this property is ignored.",
      "format": "checkbox"
    },
    "minScaleDenominator": {
      "type": "number",
      "title": "Min scale denominator",
      "description": "The denominator of the largest scale (smallest denominator) for which tiles should be requested.  For example, if this value is 1000, then tiles representing\na scale larger than 1:1000 (i.e. numerically smaller denominator, when zooming in closer) will not be requested.  Instead, tiles of the largest-available scale, as specified by this property,\nwill be used and will simply get blurier as the user zooms in closer."
    },
    "maxRefreshIntervals": {
      "type": "number",
      "title": "Max refresh intervals",
      "description": "The maximum number of intervals that can be created by a single\ndate range, when specified in the form time/time/periodicity.\neg. 2015-04-27T16:15:00/2015-04-27T18:45:00/PT15M has 11 intervals"
    }
  },
  "allOf": [
    {
      "$ref": "CatalogItem.json"
    },
    {
      "$ref": "ImageryLayerCatalogItem.json"
    },
    {
      "$ref": "CatalogMember.json"
    }
  ]
}