OWS Services¶
GBD WebSuite can act as an OWS (OGC Web Services) server. You can freely configure these services for each project.
Supported services¶
Currently these services are supported:
wms¶
WMS is fully implemented according to the version 1.3.0 specification.
wfs¶
WFS is implemented according to the version 2.0 specification. The WFS service provides the following capabilities:
- ImplementsBasicWFS
- KVPEncoding
- ImplementsResultPaging
inspirewms ~~~
inspirewfs ~~~
meta ~~~
ISO19115 metadata service
csw¶
Application and project configuration¶
To enable OWS services for a whole application or a project, add an ows
action to the application/project configuration action block. In the action configuration, specify which services are enabled. Additionally, you can provide an xml namespace name and url for GetFeature
documents.
{
"type": "ows",
"services": [
{
"type": "wms",
"enabled": true
},
{
"type": "wfs",
"enabled": true
}
],
"xmlNamespace": "mynamespace",
"xmlNamespaceUri": "https://my-site.com/mynamespace"
}
Layer configuration¶
Most of the time, the suitable service type is inferred from the layer type, e.g. an image layer is available for the WMS service, a vector layer for a WFS service. You can also specify the services in the layer configuration, and optionally provide a value for the layer OWS name
{
"type": "qgis",
"title": "My qgis project",
"ows": {
"name": "myFeature",
"servicesEnabled": ["wms", "wfs"]
}
}
External service layers are automatically “cascaded”.
URL rewriting¶
By default, OWS services are exposed under a dynamic URL, for example
https://my-server.com/_/cmd=owsHttpGet&projectUid=my_project
If you want to rewrite this url to a nicer form (see Web Server for details), for example
https://my-server.com/services/my_project
you have to also provide a reversedRewrite
rule in the web
configuration for WMS/WFS capabilities documents
"reversedRewrite": [
{
"match": "^cmd=owsHttpGet&projectUid=([a-z0-9_-]+)$",
"target": "/services/$1?"
}
]