= Virtual CSW endpoints =
|| '''Date''' || 2011/11/17 ||
|| '''Contact(s)''' || Jose García
||
|| '''Last edited''' || ||
|| '''Status''' || done ||
|| '''Assigned to release''' || 2.7.0 ||
|| '''Resources''' || Available ||
|| '''Ticket #''' || #660 ||
== Overview ==
This proposal aim to add the capability to define custom CSW entry points that applies extra criteria to the CSW request. A useful use case is to define an INSPIRE CSW endpoint to deliver only the INSPIRE related metadata stored in the catalog.
=== Proposal Type ===
* '''Type''': Core Change
* '''App''': !GeoNetwork
* '''Module''': CSW server
=== Links ===
* '''Documents''':
* '''Email discussions''':
* '''Other wiki discussions''':
=== Voting History ===
* Vote proposed by Jose García on 2011/11/17, result was +1 Francois, Simon, Jeroen
----
== Motivations ==
A use case of this proposal is to allow define an INSPIRE CSW end-point to deliver only the INSPIRE related metadata stored in the catalog. Other use cases can be useful to create CSW end-points for metadata related to specific theme/s: climate, boundaries, etc.
== Proposal ==
Add the capability to have custom CSW entry points that apply extra criteria to the CSW request. A new CSW service entry point is defined in a configuration file {{{config-csw-servers.xml}}} using the following syntax:
{{{
}}}
The "filter" parameter value is the filter to apply to Lucene query using Lucene query syntax ( http://lucene.apache.org/java/2_9_1/queryparsersyntax.html). Allows OR and AND operators.
The "filter" is applied in these CSW operations:
* !GetRecords
* !GetRecordById
* !GetDomain
* !GetCapabilities (keywords section)
It's possible to define several services for CSW end-points that apply different filter criteria:
{{{
}}}
Adding new services require:
* Create the service definition in a configuration file {{{config-csw-servers.xml}}} with the custom filter criteria.
* Define permissions for the service in {{{user-profiles.xml}}} file.
* Restart of the application.
The issue #660 contains a patch to review with the implementation of this proposal.
=== Backwards Compatibility Issues ===
The default CSW endpoint behavior is not changed, working as in actual version.
== Risks ==
== Participants ==
* Francois Prunayre
* Heikki Doeleman
* Jose García