Skip to content

Commit 068aaf0

Browse files
Building blocks postprocessing
1 parent 37e1247 commit 068aaf0

52 files changed

Lines changed: 362 additions & 319 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

build/annotated/_cache/9b9f081461b2b99026848a00d04b973d8747f35e6d5bc47cf89049ed3423f61e

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@
33
"abstract": "OGC Specification Elements packaged as FAIR Building Blocks.",
44
"description": "\nThe OGC Building Blocks register provides an overview of a series of [building blocks](https://ogcincubator.github.io/bblocks-docs/) managed by the OGC community through a variety of processes:\n\n- formal standards publication processes the Standards Working Groups\n- agreements with other standards bodies (eg. ISO)\n- community hosted examples of re-use (profiles and extensions of OGC standards)\n- informal \"incubator\" processes where more than one project needs a solution, and appropriate SWG scope is yet to be determined\n\n![](https://lucid.app/publicSegments/view/9d075f82-8611-4f32-83eb-994143669cc8/image.png)\n\n\nNotes:\n\n1. Policies are in preparation for naming and governance of these sub-registers, and this is subject to change pending adoption of such policies.\n1. Building Block identification will be designed to support transition between governance domains without change using symbolic references.\n1. A formal definition of Building Blocks and the level of \"granularity\" they represent with respect to the OGC Modular Specification is TBD.\n",
55
"sparqlEndpoint": "https://defs-dev.opengis.net/fuseki/query",
6-
"modified": "2026-05-03T05:15:41.920804",
6+
"modified": "2026-05-10T08:12:48.886310",
77
"tooling": {
88
"bblocks-postprocess": {
9-
"commitId": "\"e7a962626cb1b8416eac2178e4b7326d31314fcd",
10-
"shortCommitId": "\"e7a962",
11-
"date": "2026-04-28T10:25:15+00:00\""
9+
"commitId": "\"6c782d91e288340ba681da9c977d75a37c22b8b7",
10+
"shortCommitId": "\"6c782d",
11+
"date": "2026-05-07T11:32:58+00:00\""
1212
}
1313
},
1414
"gitRepository": "https://github.com/opengeospatial/bblocks",
@@ -507,9 +507,9 @@
507507
]
508508
},
509509
"dependsOn": [
510-
"ogc.geo.common.data_types.bounding_box",
511510
"ogc.ogc-utils.json-link",
512-
"ogc.geo.common.data_types.geojson"
511+
"ogc.geo.common.data_types.geojson",
512+
"ogc.geo.common.data_types.bounding_box"
513513
],
514514
"ldContext": "https://opengeospatial.github.io/bblocks/annotated-schemas/geo/features/feature/context.jsonld",
515515
"schema": {
@@ -557,8 +557,8 @@
557557
],
558558
"shaclShapes": {},
559559
"dependsOn": [
560-
"ogc.ogc-utils.iri-or-curie",
561-
"ogc.ogc-utils.json-link"
560+
"ogc.ogc-utils.json-link",
561+
"ogc.ogc-utils.iri-or-curie"
562562
],
563563
"ldContext": "https://opengeospatial.github.io/bblocks/annotated-schemas/geo/json-fg/link-role/context.jsonld",
564564
"schema": {
@@ -717,8 +717,8 @@
717717
]
718718
},
719719
"dependsOn": [
720-
"ogc.geo.json-fg.time",
721720
"ogc.ogc-utils.json-link",
721+
"ogc.geo.json-fg.time",
722722
"ogc.geo.features.feature"
723723
],
724724
"ldContext": "https://opengeospatial.github.io/bblocks/annotated-schemas/geo/json-fg/feature/context.jsonld",
@@ -831,8 +831,8 @@
831831
]
832832
},
833833
"dependsOn": [
834-
"ogc.geo.features.featureCollection",
835834
"ogc.ogc-utils.json-link",
835+
"ogc.geo.features.featureCollection",
836836
"ogc.geo.json-fg.feature"
837837
],
838838
"ldContext": "https://opengeospatial.github.io/bblocks/annotated-schemas/geo/json-fg/featureCollection/context.jsonld",
@@ -892,8 +892,8 @@
892892
]
893893
},
894894
"dependsOn": [
895-
"ogc.geo.features.featureCollection",
896895
"ogc.ogc-utils.json-link",
896+
"ogc.geo.features.featureCollection",
897897
"ogc.geo.json-fg.feature-lenient"
898898
],
899899
"schema": {
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{"defs":{},"properties":[{"path":["_oneOf"],"sources":["bblocks://syke.ebv.phenology.covjson-range"],"keyword":"oneOf"},{"path":["_oneOf","0"],"title":"a","sources":["bblocks://syke.ebv.phenology.covjson-range"],"keyword":"branch"},{"path":["_oneOf","0","type"],"required":true,"schema_type":"string","const":"NdArray","sources":["bblocks://syke.ebv.phenology.covjson-range"]},{"path":["_oneOf","0","values"],"schema_type":"array","sources":["bblocks://syke.ebv.phenology.covjson-range"]},{"path":["_oneOf","1"],"title":"b","sources":["bblocks://syke.ebv.phenology.covjson-range"],"keyword":"branch"},{"path":["_oneOf","1","type"],"required":true,"schema_type":"string","const":"TiledNdArray","sources":["bblocks://syke.ebv.phenology.covjson-range"]},{"path":["_oneOf","1","tileSets"],"required":true,"schema_type":"array","sources":["bblocks://syke.ebv.phenology.covjson-range"]},{"path":["axisNames"],"required":true,"schema_type":"array","sources":["bblocks://syke.ebv.phenology.covjson-range"]},{"path":["shape"],"required":true,"schema_type":"array","sources":["bblocks://syke.ebv.phenology.covjson-range"]},{"path":["dataType"],"required":true,"schema_type":"string","sources":["bblocks://syke.ebv.phenology.covjson-range"]}]}
1+
{"defs":{},"properties":[{"path":["_oneOf"],"sources":["bblocks://syke.ebv.phenology.covjson-range"],"keyword":"oneOf"},{"path":["_oneOf","0"],"title":"a","sources":["bblocks://syke.ebv.phenology.covjson-range"],"keyword":"branch"},{"path":["_oneOf","0","type"],"required":true,"schema_type":"string","const":"NdArray","sources":["bblocks://syke.ebv.phenology.covjson-range"]},{"path":["_oneOf","0","values"],"schema_type":"array","sources":["bblocks://syke.ebv.phenology.covjson-range"]},{"path":["_oneOf","1"],"title":"b","sources":["bblocks://syke.ebv.phenology.covjson-range"],"keyword":"branch"},{"path":["_oneOf","1","type"],"required":true,"schema_type":"string","const":"TiledNdArray","sources":["bblocks://syke.ebv.phenology.covjson-range"]},{"path":["_oneOf","1","tileSets"],"required":true,"schema_type":"array","sources":["bblocks://syke.ebv.phenology.covjson-range"]},{"path":["shape"],"required":true,"schema_type":"array","sources":["bblocks://syke.ebv.phenology.covjson-range"]},{"path":["dataType"],"required":true,"schema_type":"string","sources":["bblocks://syke.ebv.phenology.covjson-range"]},{"path":["axisNames"],"required":true,"schema_type":"array","sources":["bblocks://syke.ebv.phenology.covjson-range"]}]}

build/bblocks.jsonld

Lines changed: 35 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -191,14 +191,15 @@
191191
}
192192
}
193193
],
194-
"name": "Building Blocks - EBV Phenology Finland Building Blocks",
195-
"abstract": "Complete OGC Building Blocks for EBV phenology raster data. Models the full \nCoverageJSON UML (9 classes) plus 7 EBV-specific blocks = 17 total.\nMulti-language ontology (EN, ES, ZH, RO). Dataset: Finland VAP 2001-2018.\n",
196-
"modified": "2026-05-06T09:01:36.223431",
194+
"name": "Building Blocks - BioClima EBV Phenology Finland OGC Blocks",
195+
"abstract": "Complete OGC Blocks for EBV phenology raster data. Models the full \nCoverageJSON UML (9 classes) plus 7 EBV-specific blocks = 17 total.\nMulti-language ontology (EN, ES, ZH, RO). Dataset: Finland VAP 2001-2018.\n",
196+
"description": "## About this Register: BioClima EBV Phenology Finland OGC Blocks\n\nThis register is a key component of the **BioClima** project, a pioneering EU-China collaboration aimed at transforming biodiversity and climate monitoring through **artificial intelligence**, ground-based data, and remote sensing. This specific repository serves as an incubator for **OGC Blocks** tailored for **Essential Biodiversity Variables (EBVs)** and **Essential Climate Variables (ECVs)**.\n\n### Who is this register for?\nThis register is intended to support a diverse range of **communities and roles** involved in environmental monitoring and data science:\n* **Developers and Standards Implementers:** Those building software and platforms that require interoperable environmental data.\n* **Data Providers:** Agencies and researchers needing to publish biodiversity datasets (such as vegetation phenology) in a standardized, machine-readable format.\n* **Domain Experts:** Scientists and ecologists focused on **terrestrial ecosystems** who require high-precision monitoring tools.\n* **Policy-Makers:** Individuals seeking **science-backed strategies** and robust data to inform national and international environmental policies.\n\n### What does this register contain?\nThe register includes **17 OGC Blocks** designed to provide a comprehensive framework for environmental data. It features:\n* **Standardized Modelling:** A 1:1 mapping of the **CoverageJSON UML** (OGC 21-069r2) for representation of spatio-temporal data.\n* **EBV-Specific Blocks:** Custom blocks including the **EBV Dataset Profile** (class, name, entities), **Phenology Indicators** (trends, anomalies), and an **EBV Phenology Ontology** available in four languages (English, Spanish, Chinese, and Romanian).\n* **Metadata and Quality:** Blocks for **Data Provenance** (using W3C PROV) and **Data Quality** metrics.\n* **Strategic Alignment:** Blocks that link data to **Policy Alignment** (e.g., SDG 15, GBF Goal A) and **Ecosystem Services** like carbon sequestration and pollination.\n\n### When should this register be used?\nThis register is most relevant in the following scenarios and workflows:\n* **Data Harmonization:** When developing **harmonized monitoring systems** to ensure data interoperability between different regions, specifically between **Europe and China**.\n* **Implementation Phases:** During the design and deployment of **AI-enhanced analytical models** for terrestrial ecosystem monitoring.\n* **Standardization Workflows:** When there is a need to follow **EuropaBON** goals for standardized biodiversity monitoring.\n* **Reporting:** When aligning environmental data with international frameworks such as **NBSAPs** (National Biodiversity Strategies and Action Plans) or the **IPBES**.\n\n### Where does this register fit?\nThis register fits within the **broader OGC (Open Geospatial Consortium) ecosystem** as an incubator project for reusable \"building blocks\". It relates to existing OGC standards by extending the **CoverageJSON** specification to meet the specific needs of the biodiversity community. Furthermore, it acts as a bridge between technical architectural layers and high-level policy goals, such as the **UN Sustainable Development Goals**.\n\n### Why does this register exist?\nThe register exists to fill critical gaps in current environmental monitoring:\n* **Gap in Integration:** It addresses the need for better integration between **climate and biodiversity** data, which are often monitored in silos.\n* **Technical Standardisation:** It provides a structured way to handle **Essential Biodiversity Variables**, adding value beyond generic OGC blocks by including specific phenology and provenance schemas.\n* **Informed Decision-Making:** By providing **AI-driven insights** and verified data models, it empowers more resilient environmental management and addresses the global **biodiversity funding gap** through better-documented impacts.\n\n### How is this register structured and implemented?\nThe register is structured as a series of modular **OGC Blocks** managed via GitHub:\n* **Base Standards:** It reuses the **CoverageJSON UML** for its core data structure and the **W3C PROV** standard for documenting data lineages (e.g., from MODIS to Phenology indicators).\n* **Ontologies:** Implementation includes **OWL/SKOS** ontologies to provide semantic clarity across multiple languages.\n* **Automation:** The register uses **GitHub Actions** for the automated processing and post-processing of the building blocks.\n* **Custom Extensions:** It introduces unique schemas for **Phenology Indicators** (tracking trends like -0.45 days/year) and links to ecosystem service impacts.\n",
197+
"modified": "2026-05-11T08:05:05.919546",
197198
"tooling": {
198199
"bblocks-postprocess": {
199-
"commitId": "\"e7a962626cb1b8416eac2178e4b7326d31314fcd",
200-
"shortCommitId": "\"e7a962",
201-
"date": "2026-04-28T10:25:15+00:00\""
200+
"commitId": "\"5ddf8dfdfa92574f112703863576f5cd6b579a56",
201+
"shortCommitId": "\"5ddf8d",
202+
"date": "2026-05-10T08:12:13+00:00\""
202203
}
203204
},
204205
"gitRepository": "https://github.com/ogcincubator/bblocks-ebv-bioclima",
@@ -236,7 +237,7 @@
236237
"dcat:Catalog",
237238
"bblocks:BBlocksRegister"
238239
],
239-
"skos:prefLabel": "Building Blocks - EBV Phenology Finland Building Blocks",
240+
"skos:prefLabel": "Building Blocks - BioClima EBV Phenology Finland OGC Blocks",
240241
"hasConcepts": [
241242
{
242243
"itemIdentifier": "syke.ebv.phenology.covjson-axis",
@@ -248,7 +249,7 @@
248249
"itemClass": "schema",
249250
"register": "ogc-building-block-examples",
250251
"version": "1.0",
251-
"dateOfLastChange": "2024-01-01",
252+
"dateOfLastChange": "2026-05-11",
252253
"sources": [
253254
{
254255
"title": "OGC CoverageJSON 21-069r2 \u00a77.2",
@@ -324,7 +325,7 @@
324325
"itemClass": "schema",
325326
"register": "ogc-building-block-examples",
326327
"version": "1.0",
327-
"dateOfLastChange": "2024-01-01",
328+
"dateOfLastChange": "2026-05-11",
328329
"sources": [
329330
{
330331
"title": "OGC CoverageJSON 21-069r2 \u00a77.4",
@@ -400,7 +401,7 @@
400401
"itemClass": "schema",
401402
"register": "ogc-building-block-examples",
402403
"version": "1.0",
403-
"dateOfLastChange": "2024-01-01",
404+
"dateOfLastChange": "2026-05-11",
404405
"sources": [
405406
{
406407
"title": "OGC CoverageJSON 21-069r2 \u00a79",
@@ -477,7 +478,7 @@
477478
"itemClass": "schema",
478479
"register": "ogc-building-block-examples",
479480
"version": "1.0",
480-
"dateOfLastChange": "2024-01-01",
481+
"dateOfLastChange": "2026-05-11",
481482
"sources": [
482483
{
483484
"title": "W3C OWL 2",
@@ -558,7 +559,7 @@
558559
"itemClass": "schema",
559560
"register": "ogc-building-block-examples",
560561
"version": "1.0",
561-
"dateOfLastChange": "2024-01-01",
562+
"dateOfLastChange": "2026-05-11",
562563
"sources": [
563564
{
564565
"title": "GEO BON EBV Framework",
@@ -634,7 +635,7 @@
634635
"itemClass": "schema",
635636
"register": "ogc-building-block-examples",
636637
"version": "1.0",
637-
"dateOfLastChange": "2024-01-01",
638+
"dateOfLastChange": "2026-05-11",
638639
"sources": [
639640
{
640641
"title": "OGC CoverageJSON 21-069r2 \u00a77",
@@ -713,7 +714,7 @@
713714
"itemClass": "schema",
714715
"register": "ogc-building-block-examples",
715716
"version": "1.0",
716-
"dateOfLastChange": "2024-01-01",
717+
"dateOfLastChange": "2026-05-11",
717718
"sources": [
718719
{
719720
"title": "OGC CoverageJSON 21-069r2 \u00a79.2",
@@ -791,7 +792,7 @@
791792
"itemClass": "schema",
792793
"register": "ogc-building-block-examples",
793794
"version": "1.0",
794-
"dateOfLastChange": "2024-01-01",
795+
"dateOfLastChange": "2026-05-11",
795796
"sources": [
796797
{
797798
"title": "OGC CoverageJSON 21-069r2 \u00a78",
@@ -876,16 +877,16 @@
876877
"itemClass": "schema",
877878
"register": "ogc-building-block-examples",
878879
"version": "1.0",
879-
"dateOfLastChange": "2024-01-01",
880+
"dateOfLastChange": "2026-05-11",
880881
"sources": [
881882
{
882883
"title": "OGC CoverageJSON 21-069r2 \u00a79",
883884
"link": "https://docs.ogc.org/cs/21-069r2/21-069r2.html"
884885
}
885886
],
886887
"dependsOn": [
887-
"bblocks://syke.ebv.phenology.covjson-tiled-ndarray",
888-
"bblocks://syke.ebv.phenology.covjson-ndarray"
888+
"bblocks://syke.ebv.phenology.covjson-ndarray",
889+
"bblocks://syke.ebv.phenology.covjson-tiled-ndarray"
889890
],
890891
"tags": [
891892
"covjson",
@@ -955,7 +956,7 @@
955956
"itemClass": "schema",
956957
"register": "ogc-building-block-examples",
957958
"version": "1.0",
958-
"dateOfLastChange": "2024-01-01",
959+
"dateOfLastChange": "2026-05-11",
959960
"sources": [
960961
{
961962
"title": "OGC CoverageJSON 21-069r2 \u00a78.3",
@@ -1033,7 +1034,7 @@
10331034
"itemClass": "schema",
10341035
"register": "ogc-building-block-examples",
10351036
"version": "1.0",
1036-
"dateOfLastChange": "2024-01-01",
1037+
"dateOfLastChange": "2026-05-11",
10371038
"sources": [
10381039
{
10391040
"title": "OGC CoverageJSON 21-069r2 \u00a76",
@@ -1042,9 +1043,9 @@
10421043
],
10431044
"dependsOn": [
10441045
"bblocks://syke.ebv.phenology.covjson-parameter",
1045-
"bblocks://syke.ebv.phenology.covjson-range",
10461046
"bblocks://syke.ebv.phenology.covjson-domain",
1047-
"bblocks://syke.ebv.phenology.covjson-parameter-group"
1047+
"bblocks://syke.ebv.phenology.covjson-parameter-group",
1048+
"bblocks://syke.ebv.phenology.covjson-range"
10481049
],
10491050
"tags": [
10501051
"covjson",
@@ -1121,7 +1122,7 @@
11211122
"itemClass": "schema",
11221123
"register": "ogc-building-block-examples",
11231124
"version": "1.0",
1124-
"dateOfLastChange": "2024-01-01",
1125+
"dateOfLastChange": "2026-05-11",
11251126
"sources": [
11261127
{
11271128
"title": "OGC CoverageJSON 21-069r2 \u00a76.3",
@@ -1200,7 +1201,7 @@
12001201
"itemClass": "schema",
12011202
"register": "ogc-building-block-examples",
12021203
"version": "1.0",
1203-
"dateOfLastChange": "2026-04-30",
1204+
"dateOfLastChange": "2026-05-11",
12041205
"sources": [
12051206
{
12061207
"title": "W3C PROV-O",
@@ -1285,7 +1286,7 @@
12851286
"itemClass": "schema",
12861287
"register": "ogc-building-block-examples",
12871288
"version": "1.0",
1288-
"dateOfLastChange": "2024-01-01",
1289+
"dateOfLastChange": "2026-05-11",
12891290
"sources": [],
12901291
"dependsOn": [
12911292
"bblocks://syke.ebv.phenology.covjson-coverage"
@@ -1357,7 +1358,7 @@
13571358
"itemClass": "schema",
13581359
"register": "ogc-building-block-examples",
13591360
"version": "1.0",
1360-
"dateOfLastChange": "2026-04-30",
1361+
"dateOfLastChange": "2026-05-11",
13611362
"sources": [
13621363
{
13631364
"title": "OGC API - Features, Part 1, 7.16.2: Feature Response",
@@ -1366,9 +1367,9 @@
13661367
],
13671368
"dependsOn": [
13681369
"bblocks://ogc.geo.features.feature",
1369-
"bblocks://syke.ebv.phenology.data-provenance",
1370+
"bblocks://syke.ebv.phenology.ebv-profile",
13701371
"bblocks://syke.ebv.phenology.covjson-coverage",
1371-
"bblocks://syke.ebv.phenology.ebv-profile"
1372+
"bblocks://syke.ebv.phenology.data-provenance"
13721373
],
13731374
"tags": [
13741375
"feature",
@@ -1455,11 +1456,11 @@
14551456
"itemClass": "schema",
14561457
"register": "ogc-building-block-examples",
14571458
"version": "1.0",
1458-
"dateOfLastChange": "2026-04-30",
1459+
"dateOfLastChange": "2026-05-11",
14591460
"sources": [],
14601461
"dependsOn": [
1461-
"bblocks://syke.ebv.phenology.data-provenance",
1462-
"bblocks://syke.ebv.phenology.covjson-coverage"
1462+
"bblocks://syke.ebv.phenology.covjson-coverage",
1463+
"bblocks://syke.ebv.phenology.data-provenance"
14631464
],
14641465
"tags": [
14651466
"ecosystem-services",
@@ -1529,11 +1530,11 @@
15291530
"itemClass": "schema",
15301531
"register": "ogc-building-block-examples",
15311532
"version": "1.0",
1532-
"dateOfLastChange": "2026-04-30",
1533+
"dateOfLastChange": "2026-05-11",
15331534
"sources": [],
15341535
"dependsOn": [
1535-
"bblocks://syke.ebv.phenology.data-provenance",
1536-
"bblocks://syke.ebv.phenology.covjson-coverage"
1536+
"bblocks://syke.ebv.phenology.covjson-coverage",
1537+
"bblocks://syke.ebv.phenology.data-provenance"
15371538
],
15381539
"tags": [
15391540
"policy",

0 commit comments

Comments
 (0)