{
  "type": "object",
  "defaultProperties": [
    "name",
    "type",
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "title": "#URL",
      "description": "The URL of the CSW server."
    },
    "getRecordsTemplate": {
      "type": "string",
      "title": "#Get records template",
      "description": "The template XML string to POST to the CSW server to query for catalog items.  If this property is undefined,\n{@link CswCatalogGroup.defaultGetRecordsTemplate} is used.  The XML string should have a `{startPosition}` placeholder to be\nreplaced with the next start position in order to allow incremental paging of results."
    },
    "includeWms": {
      "type": "boolean",
      "title": "#Include WMS",
      "description": "True to allow WMS resources to be added to the catalog; otherwise, false.",
      "format": "checkbox"
    },
    "includeKml": {
      "type": "boolean",
      "title": "#Include KML",
      "description": "True to allow KML resources to be added to the catalog; otherwise, false.",
      "format": "checkbox"
    },
    "includeCsv": {
      "type": "boolean",
      "title": "#Include CSV",
      "description": "True to allow CSV resources to be added to the catalog; otherwise, false.",
      "format": "checkbox"
    },
    "includeEsriMapServer": {
      "type": "boolean",
      "title": "#Include esri map server",
      "description": "True to allow ESRI Map resources to be added to the catalog; otherwise, false.",
      "format": "checkbox"
    },
    "includeGeoJson": {
      "type": "boolean",
      "title": "#Include geo JSON",
      "description": "True to allow GeoJSON resources to be added to the catalog; otherwise, false.",
      "format": "checkbox"
    },
    "type": {
      "type": "string",
      "enum": [
        "csw"
      ],
      "options": {
        "hidden": true
      }
    }
  },
  "description": "A {@link CatalogGroup} representing a collection of datasets queried from an OGC Catalog Service (CSW) server.",
  "title": "Catalogue Service (CSW)",
  "allOf": [
    {
      "$ref": "CatalogGroup.json"
    },
    {
      "$ref": "CatalogMember.json"
    }
  ]
}