German Practice Management FHIR Profiles (R4)
0.49.0 - STU1
German Practice Management FHIR Profiles (R4) - Local Development build (v0.49.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
This Implementation Guide deliberately separates two concerns that share the same code-systems (EBM, GOÄ, BEMA, HZV) but operate on different semantic axes:
PlanDefinition, ActivityDefinition, CarePlan, EpisodeOfCare. Lives in FHIR, emitted by PVS adapters.The full rationale is in ADR-001 — Plan-Library vs. Rule-Execution Boundary.
The following FHIR slots are out-of-profile-scope by intent in this IG and in adapter-emitted plan-library resources. Profile descriptions and validators MUST NOT treat them as semantically meaningful:
| Resource | Slot | Reason |
|---|---|---|
PlanDefinition |
action.condition |
Rule semantics live outside the IG, not in FHIR |
PlanDefinition |
action.input.condition |
Same |
PlanDefinition |
action.dynamicValue |
Same |
PlanDefinition |
library (rule-bearing CQL) |
Descriptive uses still allowed; rule libraries excluded |
ActivityDefinition |
dynamicValue |
Same |
ChargeItemDefinition |
applicability |
Same |
Consumers MUST NOT expect these slots to carry validation semantics. To filter for plan-library resources, query by meta.profile = .../praxis-billingpattern and topic.coding.code from the praxis-plan-topic CodeSystem.
PlanDefinition.action.relatedAction for "A implies B" chainsaction.definitionCanonical → ActivityDefinition → ChargeItemDefinitiontopic, useContext, identifier, status, versionThis IG ships one PlanDefinition profile for adapter-emitted plans: PraxisBillingPattern. Plan variants (Chain, Job, DMP-Template, HZV-Template, HKP-Template) are differentiated via topic, not via separate profiles.
Section-cardinality rules (e.g. "a Job typically has Doku + Ziffern + Diagnosen") are conventions enforced by adapters and authoring tools, not by FHIR slice constraints. A Hausbesuchs-Job legitimately may not have a Diagnosen-Section.
When a downstream rule engine derives a RuleDefinition from a plan-library resource, the derivation is recorded via Provenance with target = derived RuleDefinition and entity[].what = source PlanDefinition canonical+version. Implicit derivation without provenance is not allowed. See ADR-001 §4 for the full pattern.