HTML

specstableimplmature

HTML-Kodierung für alle unterstützten Ressourcen.

Umfang

Konformitätsklassen

Das Modul implementiert für die Ressourcen Landing Page, Conformance Declaration, Feature Collections und Feature Collection alle Vorgaben der Konformitätsklasse "HTML" von OGC API - Features - Part 1: Core 1.0open in new window.

Konfiguration

Benutzerdefinierte Anpassungen

Die HTML-Ausgabe ist mittels Mustache-Templatesopen in new window implementiert welche vom Nutzer überschrieben werden können. Jedes Template kann überschrieben werden, aber für nicht leere Templates wird stark davon abgeraten, da dies bei Updates häufig zu Problemen führt.

Es gibt vordefinierte leere Templates mit dem Präfix custom- welche die meisten Anwendungsfälle abdecken sollten:

  • custom-head.mustache: etwas zum <head> Element hinzufügen, z.B. CSS Styles
  • custom-body-start.mustache: etwas am Anfang des <body> Elements hinzufügen
  • custom-body-end.mustache: etwas am Ende des <body> Elements hinzufügen
  • custom-navbar-start.mustache: etwas auf der linken Seite der Navbar hinzufügen
  • custom-navbar-end.mustache: etwas auf der rechten Seite der Navbar hinzufügen
  • custom-footer-start.mustache: etwas am Anfang des Footers hinzufügen
  • custom-footer-end.mustache: etwas am Ende des Footers hinzufügen
  • custom-footer-url.mustache: einen Link zur Liste auf der rechten Seite des Footers hinzufügen

Diese Templates müssen als Dateien im Datenverzeichnis entweder unter dem relativen Pfad templates/html/{templateName}.mustache liegen, wenn noch das alte Layout verwendet wird (Deprecated, wird in v4 nicht mehr funktionieren), oder unter resources/html/templates/{templateName}.mustache mit dem neuen Layout.

Benutzerdefinierte Dateien

Es können auch beliebige Dateien veröffentlicht werden, z.B. CSS Dateien, die dann in custom-head.mustache eingebunden werden. Diese Dateien müssen im Datenverzeichnis entweder unter dem relativen Pfad store/resources/html/assets/ liegen, wenn noch das alte Layout verwendet wird (Deprecated, wird in v4 nicht mehr funktionieren), oder unter resources/html/assets/ mit dem neuen Layout.

Zum Beispiel könnte die CSS-Datei resources/html/assets/my.css in custom-head.mustache eingebunden werden mit <link href="{{urlPrefix}}/custom/assets/my.css" rel="stylesheet" >.

Login Provider

Für APIs mit beschränktem Zugriff die einen Identity-Provider mit Login-Fähigkeiten verwenden, kann die Option loginProvider gesetzt werden, um für abgesicherte HTML-Seiten automatische Redirects zum Login-Formular des Identity-Providers zu aktivieren. Der eingeloggte User wird auf allen HTML-Seiten angezeigt ebenso wie ein Logout-Button.

Warnung

Diese Funktionalität verwendet Cookies um die Login-Information beim Navigieren zwischen HTML-Seiten zu bewahren. Diese Cookies werden weder verarbeitet noch an Dritte weitergegeben.

In Hinsicht auf die europäische DSGVO und das deutsche TTDSG würden wir diese Cookies als technisch notwendig erachten. Das heißt wenn eine API mit dieser Funktionalität veröffentlicht wird, müssen diese Cookies in der Datenschutzerklärung erwähnt werden.

Information

Wenn der Identity-Provider https verwendet (was er sollte), funktioniert dieses Feature nur, wenn die API ebenfalls mit https veröffentlich wird. Die einzige Ausnahme ist der Zugriff auf die API mittels localhost.

Optionen

NameDefaultBeschreibungTypSeit
buildingBlock
Immer HTML.
string
v2.0
extensionType
Deprecated Siehe buildingBlock.
string
v2.0
enabled
true
Soll das Modul aktiviert werden?
boolean
v2.0
noIndexEnabled
true
Steuert, ob in allen Seiten noIndex gesetzt wird und Suchmaschinen angezeigt wird, dass sie die Seiten nicht indizieren sollen.
boolean
v2.0
schemaOrgEnabled
true
Steuert, ob in die HTML-Ausgabe schema.org-Annotationen, z.B. für Suchmaschinen, eingebettet sein sollen, sofern. Die Annotationen werden im Format JSON-LD eingebettet.
boolean
v2.0
microdataEnabled
true
Deprecated Siehe schemaOrgEnabled.
boolean
v2.0
collectionDescriptionsInOverview
false
Steuert, ob in der HTML-Ausgabe der Feature-Collections-Ressource für jede Collection die Beschreibung ausgegeben werden soll.
boolean
v2.0
suppressEmptyCollectionsInOverview
false
Steuert, ob in der HTML-Ausgabe der Feature-Collections-Ressource Collections ohne Daten unterdrückt sein sollen.
boolean
v3.4
sendEtags
boolean
v2.0
legalName
Legal notice
Auf jeder HTML-Seite kann ein ggf. rechtlich erforderlicher Link zu einem Impressum angezeigt werden. Diese Eigenschaft spezfiziert den anzuzeigenden Text.
string
v2.0
legalUrl
null
Auf jeder HTML-Seite kann ein ggf. rechtlich erforderlicher Link zu einem Impressum angezeigt werden. Diese Eigenschaft spezfiziert die URL des Links.
string
v2.0
privacyName
Privacy notice
Auf jeder HTML-Seite kann ein ggf. rechtlich erforderlicher Link zu einer Datenschutzerklärung angezeigt werden. Diese Eigenschaft spezfiziert den anzuzeigenden Text.
string
v2.0
privacyUrl
null
Auf jeder HTML-Seite kann ein ggf. rechtlich erforderlicher Link zu einer Datenschutzerklärung angezeigt werden. Diese Eigenschaft spezfiziert die URL des Links.
string
v2.0
defaultStyle
NONE
Ein Style im Style-Repository, der standardmäßig in Karten mit Feature- und Tile-Ressourcen verwendet werden soll. Bei NONE wird ein einfacher Style mit OpenStreetMap als Basiskarte verwendet, wenn MapLibre der Map-Client ist; bei Cesium wird das Standard-3D-Tiles-Styling verwendet. Wenn der Wert nicht NONE ist und MapLibre der Map_Client ist, enthält die "Landing Page" bzw. die "Feature Collection" auch einen Link zu einer Webkarte mit dem Stil für den Datensatz bzw. die Feature Collection. Der Style sollte alle Daten abdecken und muss im Format Mapbox Style verfügbar sein.
string
v2.0
basemapUrl
https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png
Das URL-Template für die Kacheln einer Hintergrundkarte.
string
v2.0
basemapAttribution
&copy; <a href='http://osm.org/copyright'>OpenStreetMap</a> contributors
Die Quellenangabe für die Hintergrundkarte.
string
v2.0
leafletUrl
https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png
Deprecated Siehe basemapUrl.
string
v2.0
leafletAttribution
&copy; <a href='http://osm.org/copyright'>OpenStreetMap</a> contributors
Deprecated Siehe basemapAttribution.
string
v2.0
openLayersUrl
https://{a-c}.tile.openstreetmap.org/{z}/{x}/{y}.png
Deprecated Siehe basemapUrl.
string
v2.0
openLayersAttribution
&copy; <a href='http://osm.org/copyright'>OpenStreetMap</a> contributors
Deprecated Siehe basemapAttribution.
string
v2.0
footerText
null
Zusätzlicher Text, der auf jeder HTML-Seite im Footer angezeigt wird.
string
v2.0
loginProvider
null
Option um automatische Redirects zum Login-Formular eines Identity-Providers zu aktivieren. Der Wert ist die Id eines Provider mit Login-Fähigkeiten in der globalen Konfiguration. Siehe auch Login Provider.
string
v2.0
additionalApis
array
v2.0

Beispiele

Beispiel für die Angaben in der Konfigurationsdatei (aus der API für Topographische Daten in Daraa, Syrienopen in new window):


- buildingBlock: HTML
  enabled: true
  noIndexEnabled: true
  schemaOrgEnabled: true
  defaultStyle: topographic

Beispiel für die Angaben in der Konfigurationsdatei (aus der API für Weinlagen in Rheinland-Pfalzopen in new window):


- buildingBlock: HTML
  enabled: true
  noIndexEnabled: false
  schemaOrgEnabled: true
  collectionDescriptionsInOverview: true
  legalName: Legal notice
  legalUrl: https://www.interactive-instruments.de/en/about/impressum/
  privacyName: Privacy notice
  privacyUrl: https://www.interactive-instruments.de/en/about/datenschutzerklarung/
  basemapUrl: https://sg.geodatenzentrum.de/wmts_topplus_open/tile/1.0.0/web_grau/default/WEBMERCATOR/{z}/{y}/{x}.png
  basemapAttribution: '&copy;<a href="https://www.bkg.bund.de" target="_new" >Bundesamt f&uuml;r Kartographie und Geod&auml;sie</a>(2020), <a href="https://sg.geodatenzentrum.de/web_public/Datenquellen_TopPlus_Open.pdf" target="_new" >Datenquellen</a>'
  defaultStyle: default