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
| Official URL: https://translate-ig.cumuluz.dev/ig/ImplementationGuide/org.cumuluz.translate.ig | Version: 0.1.0 | |||
| Draft as of 2026-09-23 | Computable Name: CumuluzTranslateIG | |||
CumuluZ Translate converts FHIR resources only through registered source-profile and target-profile pairs. This implementation guide has two purposes: it defines the technical translation contract and shows system integrators exactly how to discover, call, and interpret the service.
The service is a prototype. An executable route and a technically conformant result are not clinical certification or clinical acceptance.
Follow these pages in order:
Every operation page includes a concrete call, the response shape, failure behavior, and the fields a client must inspect.
| Subject | Page |
|---|---|
| Exact route contract, assurance and conformance | Translation Contract |
| Logical models, StructureMaps and ConceptMaps | Mapping Model |
| Choosing an output family | Target Profiles |
| Complete human-readable route inventory | Translation Matrix |
| Local draft XIB definitions | XIB Reference |
| Generated FHIR definitions and examples | Artifacts |
| Operation | Endpoint |
|---|---|
| STU3 to R4 transform | POST /fhir/stu3-r4/$transform |
| STU3 to STU3 transform | POST /fhir/stu3/$transform |
| R4 to STU3 transform | POST /fhir/r4-stu3/$transform |
| R4 to R4 transform | POST /fhir/r4/$transform |
| QuestionnaireResponse extraction | POST /fhir/$extract-questionnaire-response |
| R4 validation | POST /fhir/r4/$validate |
The shared translation shape is:
registered source profile -> local logical model -> registered target profile
The endpoint selects the FHIR-version direction. The normalized sourceProfile + targetProfile pair selects one exact route. A shared resource type, an installed package, or a compatible logical model does not create a route.
Public operations exchange one UTF-8 FHIR JSON resource per HTTP request or response. Use Content-Type: application/fhir+json and Accept: application/fhir+json. Sources and results are nested FHIR resources inside Parameters; they are not passed as strings, files, multipart parts or Binary data.
| Situation | Complete HTTP body |
|---|---|
| transform request | version-appropriate Parameters containing parameter[source].resource |
| transform success | target-version Parameters containing parameter[result].resource and evidence |
| transform failure | target-version OperationOutcome |
| standalone validation success or validation failure | R4 OperationOutcome; inspect issue severities |
| unprocessable validation request | R4 OperationOutcome with HTTP 400 |
The Transform direction table names the exact FHIR version of every envelope and nested resource. Bundle Translation and EPS Document Output document the mixed-version STU3-to-R4 envelope explicitly.
A client must:
application/fhir+json with the FHIR version required by the endpoint;report and none results as non-conformant;R4-target transforms return R4 Parameters with result, targetProfile, translationReport, and usually outcome. STU3-target transforms return STU3 Parameters; their OperationOutcome carries equivalent route and stage evidence.
The service is not a FHIR repository, a generic resource-type converter, a free-form mapping engine, or a generic QuestionnaireResponse processor. Unsupported profiles and pairs return a version-correct FHIR OperationOutcome. Transport, authentication, authorization, filtering, persistence, pseudonymisation and the internal C-CDA adapter are outside this public operation surface.