Introduction
pycsw is an OGC CSW server implementation written in Python.
Features
- certified OGC Compliant and OGC Reference Implementation
- harvesting support for WMS, WFS, WCS, WPS, WAF, CSW, SOS
- implements INSPIRE Discovery Services 3.0
- implements ISO Metadata Application Profile 1.0.0
- implements FGDC CSDGM Application Profile for CSW 2.0
- implements the Search/Retrieval via URL (SRU) search protocol
- implements Full Text Search capabilities
- implements OGC OpenSearch Geo and Time Extensions
- implements Open Archives Initiative Protocol for Metadata Harvesting
- supports ISO, Dublin Core, DIF, FGDC and Atom metadata models
- CGI or WSGI deployment
- simple configuration
- transactional capabilities (CSW-T)
- flexible repository configuration
- GeoNode connectivity
- Open Data Catalog connectivity
- CKAN connectivity
- federated catalogue distributed searching
- realtime XML Schema validation
- extensible profile plugin architecture
Supported Operations
Request |
Optionality |
Supported |
HTTP method binding(s) |
GetCapabilities |
mandatory |
yes |
GET (KVP) / POST (XML) / SOAP |
DescribeRecord |
mandatory |
yes |
GET (KVP) / POST (XML) / SOAP |
GetRecords |
mandatory |
yes |
GET (KVP) / POST (XML) / SOAP |
GetRecordById |
optional |
yes |
GET (KVP) / POST (XML) / SOAP |
GetRepositoryItem |
optional |
yes |
GET (KVP) |
GetDomain |
optional |
yes |
GET (KVP) / POST (XML) / SOAP |
Harvest |
optional |
yes |
GET (KVP) / POST (XML) / SOAP |
Transaction |
optional |
yes |
POST (XML) / SOAP |
Note
Asynchronous processing supported for GetRecords and Harvest requests (via csw:ResponseHandler)
Note
Supported Harvest Resource Types are listed in Transactions
Supported Output Schemas
- Dublin Core
- ISO 19139
- FGDC CSDGM
- NASA DIF
- Atom
Supported Sorting Functionality
- ogc:SortBy
- ascending or descending
- aspatial (queryable properties)
- spatial (geometric area)
Supported Filters
Geometry Operands
- gml:Point
- gml:LineString
- gml:Polygon
- gml:Envelope
Note
Coordinate transformations are supported
Spatial Operators
- BBOX
- Beyond
- Contains
- Crosses
- Disjoint
- DWithin
- Equals
- Intersects
- Overlaps
- Touches
- Within
Logical Operators
- Between
- EqualTo
- LessThanEqualTo
- GreaterThan
- Like
- LessThan
- GreaterThanEqualTo
- NotEqualTo
- NullCheck
Functions
- length
- lower
- ltrim
- rtrim
- trim
- upper