Features - GeoJSONspecstableimplmature
Kodierung von Features als GeoJSON.
Umfang
Konformitätsklassen
Der Baustein implementiert für die Ressourcen Features und Feature alle Vorgaben der Konformitätsklasse "GeoJSON" von OGC API - Features - Part 1: Core 1.0.
Konfiguration
Optionen
Name | Default | Beschreibung | Typ | Seit |
---|---|---|---|---|
buildingBlock | Immer GEO_JSON . | string | v2.0 | |
transformations | {} | Property-Transformationen erfolgen bei der Aufbereitung der Daten für die Rückgabe über die API. Die Datenhaltung selbst bleibt unverändert. Alle Filterausdrücke (siehe queryables in Features) wirken unabhängig von etwaigen Transformationen bei der Ausgabe und müssen auf der Basis der Werte in der Datenhaltung formuliert sein - die Transformationen sind i.A. nicht umkehrbar und eine Berücksichtigung der inversen Transformationen bei Filterausdrücken wäre kompliziert und nur unvollständig möglich. Insofern sollten Eigenschaften, die queryable sein sollen, möglichst bereits in der Datenquelle transformiert sein. Eine Ausnahme sind typischerweise Transformationen in der HTML-Ausgabe, wo direkte Lesbarkeit i.d.R. wichtiger ist als die Filtermöglichkeit. | object | v2.0 |
defaultProfiles | {} | Erlaubt es, den Standardwert des Profile-Parameters für ein bestimmtes Format zu ändern. Der Schlüssel ist die Art des Profils, z. B. rel oder val . Der Wert ist der Standardprofilwert, z. B. rel-as-uri oder val-as-title . Wenn nur einige oder keine Profilarten festgelegt sind, gelten die Anwendungsstandards. | object | v4.2 |
enabled | true | Soll der Baustein aktiviert werden? | boolean | v2.0 |
Beispiele
Ein Beispiel zur Abflachung. Das nicht abgeflachte Feature
{
"type" : "Feature",
"id" : "1",
"geometry" : {
"type" : "Point",
"coordinates" : [ 7.0, 50.0 ]
},
"properties" : {
"name" : "Beispiel",
"inspireId" : "https://example.org/id/soziales/kindergarten/1",
"serviceType" : {
"title" : "Kinderbetreuung",
"href" : "https://inspire.ec.europa.eu/codelist/ServiceTypeValue/childCareService"
},
"pointOfContact" : {
"address" : {
"thoroughfare" : "Beispielstr.",
"locatorDesignator" : "123",
"postCode" : "99999",
"adminUnit" : "Irgendwo"
},
"telephoneVoice" : "0211 16021740"
},
"occupancy" : [ {
"typeOfOccupant" : "vorschule",
"numberOfOccupants" : 20
}, {
"typeOfOccupant" : "schulkinder",
"numberOfOccupants" : 25
} ]
}
}
sieht abgeflacht mit dem Standardtrennzeichen wie folgt aus:
{
"type" : "Feature",
"id" : "1",
"geometry" : {
"type" : "Point",
"coordinates" : [ 7.0, 50.0 ]
},
"properties" : {
"name" : "Beispiel",
"inspireId" : "https://example.org/id/soziales/kindergarten/1",
"serviceType.title" : "Kinderbetreuung",
"serviceType.href" : "https://inspire.ec.europa.eu/codelist/ServiceTypeValue/childCareService",
"pointOfContact.address.thoroughfare" : "Otto-Pankok-Str.",
"pointOfContact.address.locatorDesignator" : "29",
"pointOfContact.address.postCode" : "40231",
"pointOfContact.address.adminUnit" : "Düsseldorf",
"pointOfContact.telephoneVoice" : "0211 16021740",
"occupancy.1.typeOfOccupant" : "vorschule",
"occupancy.1.numberOfOccupants" : 20,
"occupancy.2.typeOfOccupant" : "schulkinder",
"occupancy.2.numberOfOccupants" : 25
}
}
Die entsprechenden Angaben in der Konfigurationsdatei:
- buildingBlock: GEO_JSON
transformations:
'*':
flatten: '.'