Ops 3dbag Enriched
Real 3DBAG geometry enriched with synthetic attributes. Targets object-graph traversal, attribute lookup, and roundtrip stability on a mixed geometry-plus-metadata payload.
Case
id:ops_3dbag_enrichedlayer:operationfamily:operation_kernelartifact_mode:acquiredsource_kind:real-geometry-enrichedrepresentation:cityjsonpath:cases/operations/ops_3dbag_enriched
Files
acquisition:cases/operations/ops_3dbag_enriched/acquisition.json
Source JSON
case.json
{
"artifact_mode": "acquired",
"artifact_paths": {
"acquisition": "cases/operations/ops_3dbag_enriched/acquisition.json"
},
"assertions": [
"attribute_payload_preserved",
"geometry_preserved"
],
"cityjson_version": "2.0",
"description": "Real 3DBAG geometry enriched with synthetic attributes. Targets object-graph traversal, attribute lookup, and roundtrip stability on a mixed geometry-plus-metadata payload.",
"family": "operation_kernel",
"geometry_kind": "real-preserved",
"id": "ops_3dbag_enriched",
"layer": "operation",
"representation": "cityjson",
"source_kind": "real-geometry-enriched",
"version": 2
}
invariants.json
{
"checks": [
{
"description": "Synthetic attribute payloads survive the operation kernel.",
"id": "attribute_payload_preserved"
},
{
"description": "Geometry stays intact while enrichment is processed.",
"id": "geometry_preserved"
}
],
"id": "ops_3dbag_enriched",
"kind": "positive",
"version": 1
}
acquisition.json
{
"dataset": "3DBAG",
"id": "ops_3dbag_enriched",
"license": "Use the upstream 3DBAG license terms until the corpus release metadata is published.",
"notes": "Real 3DBAG geometry enriched with synthetic non-geometric data so object-graph traversal, attribute lookup, and roundtrip stability can be measured on a mixed payload. It reuses the published raw 3DBAG CityJSON slice.",
"outputs": [
{
"byte_size": null,
"checksum": null,
"derivation": "acquired",
"path": "artifacts/acquired/3dbag/v20250903/10-758-50.city.json",
"producer": "upstream",
"published": true,
"representation": "cityjson",
"validation_role": "canonical"
}
],
"owner": "cjindex",
"preprocessing": [
"Run the shared 3DBAG acquisition script in cityjson-corpus.",
"Reuse the published raw CityJSON file for object-model benchmarking.",
"Apply the synthetic enrichment step after preparing the base 3DBAG slice."
],
"reference": "Use `just acquire-3dbag` in cityjson-corpus to materialize the raw slice.",
"selector": "Pinned 3DBAG release metadata is captured by the shared acquisition script.",
"status": "published",
"upstream_url": "https://data.3dbag.nl/v20250903/",
"upstream_version": "2025.09.03",
"version": 2
}