Catalog Service for the Web
Catalog Service for the Web (CSW), sometimes seen as Catalog Service - Web, is a standard for exposing a catalogue of geospatial records in XML on the Internet (over HTTP). The catalogue is made up of records that describe geospatial data (e.g. KML), geospatial services (e.g. WMS), and related resources.
CSW is one part (or "profile") of the OGC Catalog Service, which defines common interfaces to discover, browse, and query metadata about data, services, and other potential resources.
The records are in XML according to the standard. Typically the records include Dublin Core, ISO 19139 or FGDC metadata, encoded in UTF-8 characters. Each record must contain certain core fields including: Title, Format, Type (e.g. Dataset, DatasetCollection or Service), BoundingBox (a rectangle of interest, expressed in latitude and longitude), Coordinate Reference System, and Association (a link to another metadata record).
- GetCapabilities - returns the properties of requests that are accepted by the server
- DescribeRecord - returns info about the model of records
- GetDomain (optional) - returns for a given record field, the range of values held by records
- GetRecords - search for records, returning record IDs
- GetRecordsById - returns records, specified by their ID
- Harvest (optional) - create/update metadata by asking the server to 'pull' metadata from somewhere
- Transaction (optional) - create/edit metadata by 'pushing' the metadata to the server
Requests can encode the parameters in three different ways:
- GET with URL parameters
- POST with form-encoded payload
- POST with XML payload
Responses are in XML.
Versions 2.0.0, 2.0.1 and 2.0.2 are subtly different, and different vendors implement them with variations. Typically a CSW server will accept requests in one CSW version only, and it is up to the client to be flexible. e.g. ESRI Geoportal can be configured to harvest documents from CSW servers of a variety of versions and vendor variants  such as "GeoNetwork CSW 2.0.2 APISO".
- Web Map Service (WMS)
- Web Feature Service (WFS)
- Web Coverage Service (WCS)
- Web Processing Service (WPS)
- OGC Catalogue Service
- OpenGIS Catalogue Service Implementation Specification (PDF)
- Commercial implementations of CSW 2.0.2
- pycsw - Open source Python implementation of CSW
- GeoNetwork - Open source Java implentation of CSW
- Open source Python client for CSW 2.0.2