Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support of FILTER parameters with INTERSECTS #118

Merged
merged 11 commits into from
Jul 17, 2024
2 changes: 2 additions & 0 deletions deegree-ogcapi-documentation/src/main/asciidoc/help.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ This section show how to get help in case of problems.

* Using the browser's navigation buttons when using the HTML view may result in empty pages or the switch to JSON encoding. Affected browsers: Google Chrome, Chromium. You can avoid this by enabling the Vary HTTP response header in your HTTP server configuration. Check the HTTP server documentation how to configure this.

* The implementation supports only parts of OGC API - Features - Part 3. The implementation is not fully supporting the following requirements classes: "Queryables", "Queryables as Query Parameters", "Filter" with "CQL2 Functions", and "Features Filter".

[[help_support]]
=== Support

Expand Down
2 changes: 1 addition & 1 deletion deegree-ogcapi-documentation/src/main/asciidoc/index.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ lat/lon - Gesellschaft für raumbezogene Informationssysteme mbH +
info@lat-lon.de, http://www.lat-lon.de/ +
Aennchenstraße 19, D-53177 Bonn, Germany +

(C) Copyright 2020-2021 lat/lon GmbH, Bonn, Germany.
(C) Copyright 2020-2024 lat/lon GmbH, Bonn, Germany.

include::intro.adoc[]

Expand Down
3 changes: 2 additions & 1 deletion deegree-ogcapi-documentation/src/main/asciidoc/intro.adoc
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
== Introduction

The deegree OGC API Features (OAF) implementation is compliant to the latest OGC Standards called
http://docs.opengeospatial.org/is/17-069r3/17-069r3.html[OGC API - Features - Part 1: Core] and http://docs.opengeospatial.org/is/18-058/18-058.html[Part 2: CRS]. deegree OAF provides a server implementation that has been developed based on deegree's existing workspace concept using the API of https://www.deegree.org[deegree webservices]. Compared to deegree webservices where spatial data is provided via services such as WFS and WMS with deegree OAF spatial data can be served with a resource-oriented approach.
http://docs.opengeospatial.org/is/17-069r3/17-069r3.html[OGC API - Features - Part 1: Core] and http://docs.opengeospatial.org/is/18-058/18-058.html[Part 2: Coordinate Reference Systems by Reference]. deegree OAF provides a server implementation that has been developed based on deegree's existing workspace concept using the API of https://www.deegree.org[deegree webservices]. Compared to deegree webservices where spatial data is provided via services such as WFS and WMS with deegree OAF spatial data can be served with a resource-oriented approach.

=== OGC API family

Expand All @@ -16,6 +16,7 @@ deegree OAF supports the following conformance classes:

* Core (Part 1)
* Coordinate Reference Systems by Reference (Part 2)
* Partly https://docs.ogc.org/DRAFTS/19-079r1.html[Filtering (Part 3)] with https://docs.ogc.org/DRAFTS/21-065.html[CQL2 functions] limited to `S_INTERSECTS`.

Based on that requirements class deegree OAF provides implementations of representations for spatial data using encodings such as:

Expand Down
15 changes: 9 additions & 6 deletions deegree-ogcapi-documentation/src/main/asciidoc/usage.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ Or use a browser and additional plugins to send the HTTP request directly. Use t
|===

[[json_encoding]]
=== Accessing data in JSON/GeoJSON
=== Accessing data in JSON/GeoJSON format

To retrieve a resource in `application/json` encoding use the request parameter _f=json_.
To retrieve the landing page of the dataset streets in `application/json` encoding use the following request _datasets/streets/?f=json_.
Expand All @@ -117,7 +117,7 @@ Example URL: http://localhost:8080/deegree-services-oaf/datasets/streets/?f=json
See section <<query_parameter>> for more information about other supported query parameters.

[[gml_encoding]]
=== Accessing data in XML/GML
=== Accessing data in XML/GML format

To retrieve a resource in `application/xml` encoding use the request parameter _f=xml_.
To retrieve the landing page of the dataset streets in `application/xml` encoding use the following request _datasets/streets/?f=xml_.
Expand Down Expand Up @@ -177,13 +177,16 @@ The following query parameters are supported when using HTTP GET:
[width="100%",cols="20%,30%,20%,30%",options="header",]
|===
|Query parameter name |Value type |Example value |Description
|`crs` |String | EPSG:4326 |EPSG code defines the CRS of the returned data
|`bbox` |Comma separated floating point values | 567190,5934330, 567200,5934360 |List of comma separated floating point values defining a bounding box
|`bbox-crs` |String | EPSG:4326 |EPSG code defines the CRS of the coordinates of the `bbox` parameter
|`crs` |String |EPSG:4326 |EPSG code defines the CRS of the returned data
|`bbox` |Comma separated floating point values |567190,5934330, 567200,5934360 |List of comma separated floating point values defining a bounding box
|`bbox-crs` |String |EPSG:4326 |EPSG code defines the CRS of the coordinates of the `bbox` parameter
|`f` |String |json |Requested encoding of a given resource, can be `json`, `html` or `gml`
|`limit` |integer |10 |Limit the numbers of items per page
|`offset` |integer |0 |Start index of items
|`bulk` |boolean|true|Applicable for features resource only, can be combined with parameter `f`
|`bulk` |boolean |true |Applicable for features resource only, can be combined with parameter `f`
|`filter`|String |S_INTERSECTS({spatialQueryable},{spatialInstance}) |Filter limited to `S_INTERSECTS` with first operand `{spatialQueryable}` defining the property name and the second operand `{spatialInstance}` the basic spatial data type point or bounding box.
|`filter-lang`|String |cql2-text |Defines the filtering language, indicates that the value of the `filter` parameter is the text encoding of CQL2, can be combined with parameter `filter`
|`filter-crs`|String | EPSG:4326 |Allows clients to assert which CRS is being used to encode geometric values in a `filter` expression, can be combined with parameter `filter`
|===

NOTE: Check the <<openapi>> on which resources the listed query parameters are supported. Additional query parameters may be available depending on the resource.
20 changes: 20 additions & 0 deletions deegree-ogcapi-features/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,20 @@
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.antlr</groupId>
<artifactId>antlr4-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>antlr4</goal>
</goals>
</execution>
</executions>
<configuration>
<visitor>true</visitor>
</configuration>
</plugin>
</plugins>
</build>

Expand Down Expand Up @@ -115,6 +129,7 @@
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
</dependency>
<!-- swagger -->
<dependency>
<groupId>io.swagger.core.v3</groupId>
<artifactId>swagger-core</artifactId>
Expand Down Expand Up @@ -198,6 +213,11 @@
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<!-- antlr -->
<dependency>
<groupId>org.antlr</groupId>
<artifactId>antlr4-runtime</artifactId>
</dependency>
<!-- logging -->
<dependency>
<groupId>org.slf4j</groupId>
Expand Down
Loading
Loading