diff --git a/documentation/usage-guide/searching.md b/documentation/usage-guide/searching.md index 73d0e05d83302e7881fc81b3540ce2dc228591f7..b4771ed9fb449a619ad6f4cb6c695af4c48b1fb4 100644 --- a/documentation/usage-guide/searching.md +++ b/documentation/usage-guide/searching.md @@ -1 +1,75 @@ # Searching + +The main searching interface is supported using OpenSearch using +various extension. + +The OpenSearch URL endpoints are: + + * `/opensearch`: Main service description + * `/opensearch/<format>`: Search for collections in a specific format + * `/opensearch/collections/<collection-id>`: Collection specific description + * `/opensearch/collections/<collection-id>/<format>`: Search for products in a collection in that format + + +The description related entrypoints provide an OpenSearch Description +Document (OSDD). This XML based file format describes general service metadata and various access URLs. + +These URL objects provide templates that can be filled with +parameters to submit actual metadata queries. Depending on the used +URL, the search result is returned in one of the following formats: + + * `atom`: Atom syndication format + * `rss`: RSS + * `kml`: Keyhole Markup Language + * `json`: GeoJSON + +The resulting items in that result document can be paged. Specific +pages can be retrieved using the `offset` and `count` parameters. +Additionally, the response contains links to the first, last, next, +and previous pages of the result set. + +The results of the search depend on the type of object being searched. +For the collection search, the result items are collection descriptions +of all matched collections encoded in the selected format. Each +description contains a link to its own specific OSDD document. + +In product searches, the result document items are descriptions of +products, containing links to thumbnails, browses and product specific +services such as WMS or WCS. Additionally it contains the products +acquisition footprint and timestamp. + +## Filters + +The URL templates for both the collection and the record search allow +to pass parameters that control the query and shape of the search. +The following table shows all parameters available for both collection +and product search: + +| Parameter | Description | +| ------------- | --------------------------------------------------------------------------------------------- | +| startIndex | The index offset of the items. Used to get subsets of a result set | +| count | The number of records for each page | +| start | The start timestamp for the time range | +| end | The end timestamp for the time range | +| timerel | The semantic of the time range. Either `intersects`, `contains`, `disjoint`, or `equals` | +| bbox | The geographic bounding box expressed as `min-lon`, `min-lat`, `max-lon`, `max-lat` in WGS 84 | +| geom | A WKT encoded geometry for a geographic search | +| lon | The longitude component of point/radius searches | +| lat | The latitude component of point/radius searches | +| r | The radious in metres of point/radius searches | +| georel | The semantic of the geometry filter. One of `intersects`, `contains`, or `disjoint` | + +The following parameters are only available in collection searchesin +addition the general search parameters: + +| Parameter | Description | +| ------------- | --------------------------------------------------------------------------------------------- | + + +The following parameters are only available in product searches in +addition the general search parameters: + +| Parameter | Description | +| ------------- | --------------------------------------------------------------------------------------------- | +| cloudCover | Cloud cover filter. Either a specific value or an interval of values. Values between 0-100 | +