Cumuluz Translate Implementation Guide
0.1.0 - ci-build
Cumuluz Translate Implementation Guide - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
The runtime follows one consistent route:
STU3 source profile -> logical model -> R4 target profile
The service is profile-aware on both sides.
It does not flatten the problem into a generic resource-to-resource conversion where every Patient, Condition, or Procedure is treated as equivalent regardless of profile semantics.
The logical layer is the semantic handoff between source and target.
It exists to:
nl-core and eu-base targets without pushing exceptions into the HTTP layerThe main mapping assets live under:
src/main/resources/mappings/structuremaps/zib2017-to-logicalsrc/main/resources/mappings/structuremaps/nlcore2017-to-logicalsrc/main/resources/mappings/structuremaps/bgz2017-to-logicalsrc/main/resources/mappings/structuremaps/logical-to-eubasesrc/main/resources/mappings/structuremaps/logical-to-nlcoresrc/main/resources/mappings/structuremaps/logical-to-r4The logical model definitions live under:
logical-models/input/fshThe published IG also includes the generated logical StructureDefinition artifacts so readers can inspect the actual intermediate model pages.
For the concrete map inventory, see Structure Maps. For the intermediate semantic layer, see Logical Models.
The HTTP layer is intentionally thin.
It is responsible for:
OperationOutcomeThe translation layer is responsible for:
The validator is responsible for:
OperationOutcomeClients can discover the service in three different ways:
CapabilityStatement at /fhir/stu3-r4/metadataOperationDefinition at /fhir/stu3-r4/OperationDefinition/bgz-transformBundle at /fhir/stu3-r4/translation-indexThe translation-index endpoint is especially useful when a client needs a machine-readable inventory of supported pairs instead of a narrative guide.
This guide documents what the service actually supports now.
That includes:
nl-core or eu-base profile is available for that routeThis keeps the IG honest. It should describe the current contract first, then leave room for future expansion.