This RFC describes the pycsw implementation of the OGC Catalogue Services 3.0 Specification - HTTP Protocol Binding (OGC 12-176r5).
CSW 3.0 provides major features and improvements over CSW 2.0.2 as part of the evolution of OGC Catalogue Services, including Open Search Geo and Time Extensions, OpenSearch 1.1, and the Atom Syndication Format. Other enhancements include:
UnHarvest operationCatalogue Services 3.0 - General Model (OGC 12-168r5) encompasses numerous changes (hence the major version change) to Catalogue Services overall. This RFC (and pycsw) focuses exclusively on the HTTP Protocol Binding.
Given the major changes in CSW 3.0, pycsw requires significant refactoring to support multiple verisons of numerous specifications (CSW, Filter Encoding, OWS Common, GML, etc.). A high level design pattern includes:
pycsw.server.Csw)CSW 3.0 support will be enabled by default. The default version will be CSW 3.0 in accordance with the specification. For backwards compatibility, there may implement a configuration directive which forces CSW 2.0.2 first.
csw3 test suite will be addedThis RFC represents breaking backwards compatibility in terms of default version. For downstream applications, pycsw.server.Csw will continue to exist, and will accept a version argument to force CSW 2.0.2 behaviour if desired. Unit tests will continue to succeed with a new csw30 test suite added. In addition, CITE tests will be 100% successful.
pycsw.server.Csw will continue to exist, and will accept a version argument to force CSW 2.0.2 behaviour if desired.
None expected.
None
None
Documentation will be augmented to advertise support and describe changes and default version behaviour.
https://github.com/geopython/pycsw/issues/149
https://github.com/geopython/pycsw/pull/354
+1 from @ahinz, @amercader, @capooti, @kalxas, @tomkralidis
Adopted on 2015-07-02