diff --git a/scripts/wordlist.txt b/scripts/wordlist.txt index 31c88a22..4ebe907a 100644 --- a/scripts/wordlist.txt +++ b/scripts/wordlist.txt @@ -98,6 +98,9 @@ MultiPolygon NDK NMEA NTRIP +OGC +OGR +Ok OneDrive OSGB OSM diff --git a/src/.vitepress/sidebar/en.js b/src/.vitepress/sidebar/en.js index 1f516257..828a142a 100644 --- a/src/.vitepress/sidebar/en.js +++ b/src/.vitepress/sidebar/en.js @@ -60,6 +60,7 @@ export default { { text: 'How to Enable Digitising', link: '/gis/enable_digitising/' }, { text: 'How to Set Up Snapping for Mergin Maps Mobile App', link: '/gis/snapping/' }, { text: 'How to Avoid Polygons Overlap', link: '/gis/avoid-overlap/' }, + { text: 'Publishing Projects via OGC API (WMS/WMTS, WFS)', link: '/gis/ogc-api/' }, { text: 'Custom Projections', link: '/gis/proj/' }, { text: 'Supported Formats', link: '/gis/supported_formats/' } ] }, diff --git a/src/gis/ogc-api/dashboard-project-ogc-api-enabled.webp b/src/gis/ogc-api/dashboard-project-ogc-api-enabled.webp new file mode 100644 index 00000000..73acee60 Binary files /dev/null and b/src/gis/ogc-api/dashboard-project-ogc-api-enabled.webp differ diff --git a/src/gis/ogc-api/dashboard-project-ogc-api-enabled.xcf b/src/gis/ogc-api/dashboard-project-ogc-api-enabled.xcf new file mode 100644 index 00000000..a6b1f4f5 Binary files /dev/null and b/src/gis/ogc-api/dashboard-project-ogc-api-enabled.xcf differ diff --git a/src/gis/ogc-api/dashboard-settings-ogc-api-enabled.webp b/src/gis/ogc-api/dashboard-settings-ogc-api-enabled.webp new file mode 100644 index 00000000..c4ad9c9f Binary files /dev/null and b/src/gis/ogc-api/dashboard-settings-ogc-api-enabled.webp differ diff --git a/src/gis/ogc-api/dashboard-settings-ogc-api-enabled.xcf b/src/gis/ogc-api/dashboard-settings-ogc-api-enabled.xcf new file mode 100644 index 00000000..c24bc8c6 Binary files /dev/null and b/src/gis/ogc-api/dashboard-settings-ogc-api-enabled.xcf differ diff --git a/src/gis/ogc-api/index.md b/src/gis/ogc-api/index.md new file mode 100644 index 00000000..c8d6fafa --- /dev/null +++ b/src/gis/ogc-api/index.md @@ -0,0 +1,80 @@ +--- +description: Your Mergin Maps project data can be published via OGC API as WMS / WMTS or WFS. + +outline: deep +--- + +# Publishing Projects via OGC API (WMS/WMTS, WFS) +[[toc]] + +Your project data can be published using OGC API as WMS / WMTS or WFS. This way, your data can be displayed (read-only) in other software or web applications. + +::: tip Early access feature +OGC API read-only access is one of the early access program features. It needs to be enabled for your workspace so you can try it out. +::: + +## Enabling OGC API access +As early access feature, OGC API has to be enabled for your workspace: +1. Navigate to the **Settings** tab on the +2. Make sure that the *OGC API read-only access* feature is enabled + +![Enabling OGC API access for Mergin Maps workspace](./dashboard-settings-ogc-api-enabled.webp "Enabling OGC API access for Mergin Maps workspace") + +Now you can enable OGC API access for your project: +![Enabling OGC API access for Mergin Maps project](./dashboard-project-ogc-api-enabled.webp "Enabling OGC API access for Mergin Maps project") + +**WFS URL** and **WMS / WMTS URL** can be copied and used, e.g., to [connect to these services in QGIS](#example-wms-wmts-and-wfs-connection-in-qgis). + +## Setup WMS, WMTS and WFS properties in QGIS +In QGIS, you can define which layers and fields from your project should be published via WMS/WMTS and WFS. + +Explore the **QGIS server** tab in **Project Properties**: +- in the **Service Capabilities** tab, you can (optionally) define the *title* and other metadata of your service +- in the **WMTS** and **WFS** tabs, select the layers that should be published + +![QGIS server tab in Project Properties](./qgis-project-properties-qgis-server.webp "QGIS server tab in Project Properties") + +There may be some fields that you do not want to publish. These can be defined in the **Layer Properties** in the **Fields** tab for each field of the layer: +![Layer Properties do not expose fields via WMS and WFS](./qgis-layer-properties-fields.webp "Layer Properties do not expose fields via WMS and WFS") + +Save and synchronise the project. + +## Example WMS/WMTS and WFS connection in QGIS +[WFS URL and WMS/WMTS URL](#enabling-ogc-api-access) from the dashboard can be used to load the web services to any software that supports WFS and/or WMS (for example QGIS) to display the project data. + +### WMS/WMTS connection +WMS/WMTS can be connected to QGIS in the **Browser** panel: + +1. Right-click on the **WMS/WMTS** entry and select **New Connection...** + +![QGIS Browser Panel New WMS/WMTS connection](./qgis-browser-new-wms-connection.webp "QGIS Browser Panel New WMS/WMTS connection") + +2. Fill in the connection details: + - **Name** + - **URL** - enter the URL copied from the + - set **WMS DPI-Mode** to *QGIS* + - select following options: + - :white_check_mark: + - :white_check_mark: + - :white_check_mark: + +![QGIS New WMS/WMTS connection](./qgis-browser-wms-connection.webp "QGIS New WMS/WMTS connection") + +3. Published layers from your project should now be displayed in the Browser panel and can be added to the project. +![QGIS connected WFS layers](./qgis-browser-wms.webp "QGIS connected WFS layers") + +### WFS connection +WMS/WMTS can be connected to QGIS in the **Browser** panel: + +1. Right-click on the **WFS/OGC API - Features** entry and select **New Connection...** +![QGIS Browser Panel New WFS connection](./qgis-browser-new-wfs-connection.webp "QGIS Browser Panel New WFS connection") + +2. Fill in the connection details: + - **Name** + - **URL** - enter the URL copied from the + - **Version** - use the **Detect** button or select the value **1.1** from the list +![QGIS New WFS connection](./qgis-browser-wfs-connection.webp "QGIS New WFS connection") + +3. Published layers from your project should now be displayed in the Browser panel and can be added to the project. +![QGIS connected WFS layers](./qgis-browser-wfs.webp "QGIS connected WFS layers") + diff --git a/src/gis/ogc-api/qgis-browser-new-wfs-connection.webp b/src/gis/ogc-api/qgis-browser-new-wfs-connection.webp new file mode 100644 index 00000000..5ff4c7fb Binary files /dev/null and b/src/gis/ogc-api/qgis-browser-new-wfs-connection.webp differ diff --git a/src/gis/ogc-api/qgis-browser-new-wfs-connection.xcf b/src/gis/ogc-api/qgis-browser-new-wfs-connection.xcf new file mode 100644 index 00000000..5d200bf4 Binary files /dev/null and b/src/gis/ogc-api/qgis-browser-new-wfs-connection.xcf differ diff --git a/src/gis/ogc-api/qgis-browser-new-wms-connection.webp b/src/gis/ogc-api/qgis-browser-new-wms-connection.webp new file mode 100644 index 00000000..930f428b Binary files /dev/null and b/src/gis/ogc-api/qgis-browser-new-wms-connection.webp differ diff --git a/src/gis/ogc-api/qgis-browser-new-wms-connection.xcf b/src/gis/ogc-api/qgis-browser-new-wms-connection.xcf new file mode 100644 index 00000000..8549ca5e Binary files /dev/null and b/src/gis/ogc-api/qgis-browser-new-wms-connection.xcf differ diff --git a/src/gis/ogc-api/qgis-browser-wfs-connection.webp b/src/gis/ogc-api/qgis-browser-wfs-connection.webp new file mode 100644 index 00000000..f5853a34 Binary files /dev/null and b/src/gis/ogc-api/qgis-browser-wfs-connection.webp differ diff --git a/src/gis/ogc-api/qgis-browser-wfs-connection.xcf b/src/gis/ogc-api/qgis-browser-wfs-connection.xcf new file mode 100644 index 00000000..4f1922e5 Binary files /dev/null and b/src/gis/ogc-api/qgis-browser-wfs-connection.xcf differ diff --git a/src/gis/ogc-api/qgis-browser-wfs.webp b/src/gis/ogc-api/qgis-browser-wfs.webp new file mode 100644 index 00000000..8c121668 Binary files /dev/null and b/src/gis/ogc-api/qgis-browser-wfs.webp differ diff --git a/src/gis/ogc-api/qgis-browser-wfs.xcf b/src/gis/ogc-api/qgis-browser-wfs.xcf new file mode 100644 index 00000000..278130af Binary files /dev/null and b/src/gis/ogc-api/qgis-browser-wfs.xcf differ diff --git a/src/gis/ogc-api/qgis-browser-wms-connection.webp b/src/gis/ogc-api/qgis-browser-wms-connection.webp new file mode 100644 index 00000000..6bcc2f45 Binary files /dev/null and b/src/gis/ogc-api/qgis-browser-wms-connection.webp differ diff --git a/src/gis/ogc-api/qgis-browser-wms-connection.xcf b/src/gis/ogc-api/qgis-browser-wms-connection.xcf new file mode 100644 index 00000000..f57aec55 Binary files /dev/null and b/src/gis/ogc-api/qgis-browser-wms-connection.xcf differ diff --git a/src/gis/ogc-api/qgis-browser-wms.webp b/src/gis/ogc-api/qgis-browser-wms.webp new file mode 100644 index 00000000..8a48e392 Binary files /dev/null and b/src/gis/ogc-api/qgis-browser-wms.webp differ diff --git a/src/gis/ogc-api/qgis-browser-wms.xcf b/src/gis/ogc-api/qgis-browser-wms.xcf new file mode 100644 index 00000000..fc486ed0 Binary files /dev/null and b/src/gis/ogc-api/qgis-browser-wms.xcf differ diff --git a/src/gis/ogc-api/qgis-layer-properties-fields.webp b/src/gis/ogc-api/qgis-layer-properties-fields.webp new file mode 100644 index 00000000..4e951a5a Binary files /dev/null and b/src/gis/ogc-api/qgis-layer-properties-fields.webp differ diff --git a/src/gis/ogc-api/qgis-layer-properties-fields.xcf b/src/gis/ogc-api/qgis-layer-properties-fields.xcf new file mode 100644 index 00000000..afd9e871 Binary files /dev/null and b/src/gis/ogc-api/qgis-layer-properties-fields.xcf differ diff --git a/src/gis/ogc-api/qgis-project-properties-qgis-server.webp b/src/gis/ogc-api/qgis-project-properties-qgis-server.webp new file mode 100644 index 00000000..606a56a5 Binary files /dev/null and b/src/gis/ogc-api/qgis-project-properties-qgis-server.webp differ diff --git a/src/gis/ogc-api/qgis-project-properties-qgis-server.xcf b/src/gis/ogc-api/qgis-project-properties-qgis-server.xcf new file mode 100644 index 00000000..25a2e253 Binary files /dev/null and b/src/gis/ogc-api/qgis-project-properties-qgis-server.xcf differ