- Howto publish vector data with a custom schema
- Howto add CRS transformations
- Howto validate vector data with a custom schema
- Read the OGC Building Blocks Documentation
- Create the repo by following the instructions from the template
- Implement the necessary OGC Blocks for "Features with geometry and typology" with a suitable ontology.
- Extend the
ontology.ttlwith the forest type code attribute (LT) which needs to be mapped to proper URIs which in turn can be used to retrieve ecological properties in multiple languages for the forest type code attribute (LT). - Add an example GeoJSON
FeatureCollectionconform to the new Forest Site Assessment schema. - Add a
transforms.yamlto produce only CRS 5555 output data. - Add a test for validation purposes using shacl shapes.
OGC Building Blocks Documentation
See the instructions to create this repo from the template.
Look at the different folders in _sources. Each folder contains a bblock.json to define a OGC Block.
-
- The ontology OGC Block provides the semantics and gets automatically uploaded to an official register.
-
- The domain-specific Forest Typology OGC Block which maps the attributes of the dataset to the semantics.
-
- A Feature OGC Block inherited from the Feature OGC Block combining geometry with the domain-specific schema.
-
- A FeatureCollection OGC Block inherited from the FeatureCollection OGC Block describing the whole dataset.
F_A_Lesni_typ
Název: Lesní typologie
Geometrie: polygon
Atributy:
LT: Lesní typ
LES_OBL: lesní oblast
LO_CAST: lesní oblast (část)
UDRZBA: Rok poslední změny dat
ZMENA: na žádost vlastníka/SLT-KN/na základě odsouhlaseného požadavku nebo projektu pro jiné subjekty
ZADOST: číselné zařazení žádosti
CHS: Cílový hospodářský soubor
PCHS: Podsoubor cílového hospodářského souboru
OVER_T: Ověřeno v terénu ANO/NE
ROK_MAP: Rok sběru dat
ID1: jednoznačný identifikátor
SLT: Soubor lesních typů
PLOCHA: v metrech čtverečních
DS_OPRL: 2025
Platnost dat k 1.1.2025
Souřadnicový systém: S-JTSK-
ontology.ttlwithinfocal-ontology- Semantics
-
schema.yamlwithinmySchema- Typology type definitions
-
context.jsonldwithinmySchema- Maps the type definitions to the URIs from the ontology
-
schema.yamlwithinmyFeature- Feature definition
-
schema.yamlwithinmyFeatureCollection- Feature collection definition
Adds the forest type code definitions (Czech meta-data descriptions) to the ontology and makes them multilingual.
See within the ontology.ttl for the semantics:
focal-lt:LT a skos:ConceptScheme, owl:Class ;
skos:prefLabel "lesní typ"@cz, "forest type"@en, "Waldtyp"@de ;
skos:hasTopConcept focal-lt:2S1 ;
.
focal-lt:2S1 a skos:Concept, focal-lt:LT ;
skos:prefLabel "2S1 - Svěží buková doubrava modální"@cz,
"2S1 - Fresh beech-oak forest (modal)"@en,
"2S1 - Frische Buchen-Eichenwälder (typisch)"@de ;
skos:definition "2S1 – svěží buková doubrava modální, lesní typ 2. lesního vegetačního stupně na živinami středně bohatých, svěžích stanovištích"@cz,
"2S1 – Fresh beech-oak forest (modal), a forest type of the 2nd forest vegetation zone on moderately nutrient-rich, fresh sites"@en,
"2S1 – Frische Buchen-Eichenwälder (typisch), ein Waldtyp der 2. forstlichen Vegetationsstufe auf mäßig nährstoffreichen, frischen Standorten"@de ;
skos:notation "2S1" ;
skos:topConceptOf focal-lt:LT ;
skos:inScheme focal-lt:LT ;
.Look at the example data for a feature collection. This example data has been created by QGIS as an export from a shapefile.
The example data for feature collections can be integrated by providing an GeoJSON and an examples.yaml within the myFeatureCollection definitions and a .
The example data for a feature can be defined by linking back to the feature collection using the examples.yaml within the myFeature definitions.
The first feature within the feature collection carries the coordinate reference system as an extra property. Without this definition, the example feature could not be viewed within the "map view" of the feature example.
The example data for the domain-specific schema can also be defined by linking to the feature collection example using its examples.yaml within the mySchema definitions.
A transform can be added by creating a transforms.yaml. It is possible to provide the code snippet directly within this file, but for reasons of clarity the code has been outsourced to the transforms folder can be linked as shown in the transforms.yaml.
Validation and testing can be carried out using SHACL shapes. The provided example checks if the focal-prop:lesniTyp exists for the given examples. By providing failure examples (FeatureCollection, Feature), the SHACL shapes can be tested further.