OZO FHIR implementation guide
0.5.1 - ci-build
OZO FHIR implementation guide - Local Development build (v0.5.1) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
All notable changes to the OZO FHIR Implementation Guide will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
^version overrides (values like "0.2.1", "1.0.0", "2.0.0") that were misleading. The IG Publisher sets StructureDefinition.version to the IG package version from sushi-config.yaml, making per-profile version overrides redundant. All profiles now consistently report the IG version.fhir.nl.gf v0.3.0 to the package dependencies table with manual installation noteImplementationGuide and StructureDefinition to the recommended supported_resource_types configurationimplementationGuide field{ResourceType}-{id}.html. Previously, Instance names like Patient-H-de-Boer produced page URLs like Patient-Patient-H-de-Boer.html (doubled prefix), causing 404 errors from documentation linksPatient- prefix (e.g., Patient-H-de-Boer → H-de-Boer)Practitioner- prefix (e.g., Practitioner-Manu-van-Weel → Manu-van-Weel)RelatedPerson- prefix (e.g., RelatedPerson-Kees-Groot → Kees-Groot)Organization- prefix (e.g., Organization-Ziekenhuis-Amsterdam → Ziekenhuis-Amsterdam)CareTeam- with CT- prefix (e.g., CareTeam-H-de-Boer → CT-H-de-Boer)CommunicationRequest- prefix (e.g., CommunicationRequest-Thread-Example → Thread-Example)Communication- with Msg- prefix (e.g., Communication-RelatedPerson-to-CareTeam → Msg-RelatedPerson-to-CareTeam)Task- with Tsk- prefix (e.g., Task-RelatedPerson-Example → Tsk-RelatedPerson-Example)AuditEvent- with AE- prefix (e.g., AuditEvent-System-Access → AE-System-Access)* id overrides from 13 instances that had numeric IDs (e.g., * id = "1209") — the Instance name now serves as the id"Practitioner/1208") to FSH Reference() syntax (e.g., Reference(Marijke-van-der-Berg)) in CareTeam and RelatedPerson examplesoverview.md, interaction-network.md, interaction-messaging.md, and auditevent-nen7510.md to match new Instance names and generated page URLsPractitioner to NlGfPractitioner (nl-gf-practitioner):
nl-core-HealthProfessional-Practitioner via nl-gf-practitionerAssignedId identifier requirement (1..1) with assigner pattern linking practitioners to their employing organizationvalue:$this slicing discriminator. OZO identifiers are still validated via ozo-practitioner-has-professional-id invariant and supported through open slicingAssignedId identifier with https://ozo.headease.nl/practitioners system, practitioner slug as value, and employing organization's URA as assignerfhir.nl.gf v0.3.0) - Added as a dependency to support care services directory compliance and IHE mCSD alignmentcare-services-directory.plantuml)Organization to NlGfOrganization (nl-gf-organization):
nl-gf-organization via nl-core-HealthcareProvider-Organization)AssignedId identifier requirement (1..1) with assigner patternura-identifier-or-partof invariant: organizations must have a URA identifier or be partOf another organizationAssignedId identifier, type (V4 Ziekenhuis), updated URA system to canonical URLAssignedId identifier, type (V4 Ziekenhuis), updated URA system to canonical URLAssignedId identifier, type (Z3 Huisartspraktijk), updated URA system to canonical URLAssignedId identifier, type (G2 Apotheek), updated URA system to canonical URLinstall-nl-gf Makefile target to download fhir.nl.gf package from CI build (package is not published on FHIR registry)scripts/get_dependencies.py to parse sushi-config.yaml dependencies for automated installationOZO/Person → https://www.ozoverbindzorg.nl/namingsystem/ozo/personOZO-CONNECT/Person → https://www.ozoverbindzorg.nl/namingsystem/ozo-connect/personOZO/Professional → https://www.ozoverbindzorg.nl/namingsystem/ozo/professionalOZO-CONNECT/Professional → https://www.ozoverbindzorg.nl/namingsystem/ozo-connect/professionalOZO/Team → https://www.ozoverbindzorg.nl/namingsystem/ozo/teamOZO-CONNECT/Team → https://www.ozoverbindzorg.nl/namingsystem/ozo-connect/teamOZO/NetworkRelation → https://www.ozoverbindzorg.nl/namingsystem/ozo/network-relationemail → https://www.ozoverbindzorg.nl/namingsystem/email (temporary - should migrate to telecom)ura → http://fhir.nl/fhir/NamingSystem/ura (Nictiz standard)did_web → urn:ietf:rfc:3986 (value is itself a URI)build_with_image.sh to use ghcr.io imageoverview.md and interaction-network.md with new identifier URI patternsCommunicationRequest.sender does not allow CareTeam referencesOZOSenderCareTeam extension to support team-level messaging where a CareTeam needs to be the reply-to addresscopy-changelog Makefile target copies CHANGELOG.md to history.md during buildsender field constraint allowing OZOPractitioner, OZORelatedPerson, or OZOCareTeamsender serves as the reply-to address for team-level messaging and provides team-level authorizationrequester remains restricted to individuals (OZOPractitioner or OZORelatedPerson) to preserve auditabilitybuild-minimal and build-ig-minimal Makefile targetsscripts/convert_ig_to_package.py - Converts ImplementationGuide to package.json formatscripts/create_index.py - Creates .index.json for FHIR package structurescripts/strip_narratives.py - Strips narratives and mappings while preserving snapshots-minimal suffix)fhir-package-full) and minimal (fhir-package-minimal) builds.gitignore to exclude /output-minimal/ and additional build artifactsOZOPatient, OZOPractitioner, and OZORelatedPerson profiles:
^OZO[^/]*/ResourceType$) instead of explicit system enumerationOZO/Person, OZO-CONNECT/Person, OZO-MOBILE/Person, OZO-WEB/Person)ozoProfessionalId to ozoConnectProfessionalId for identifiers using the OZO-CONNECT/Professional system^url, ^name, and ^description metadata elements to all OZO FHIR profiles for improved canonical URL support and HAPI FHIR server compatibility:
OZOAuditEvent - http://ozoverbindzorg.nl/fhir/StructureDefinition/OZOAuditEventOZOCareTeam - http://ozoverbindzorg.nl/fhir/StructureDefinition/OZOCareTeamOZOCommunication - http://ozoverbindzorg.nl/fhir/StructureDefinition/OZOCommunicationOZOCommunicationRequest - http://ozoverbindzorg.nl/fhir/StructureDefinition/OZOCommunicationRequestOZOOrganization - http://ozoverbindzorg.nl/fhir/StructureDefinition/OZOOrganizationOZOPatient - http://ozoverbindzorg.nl/fhir/StructureDefinition/OZOPatientOZOPractitioner - http://ozoverbindzorg.nl/fhir/StructureDefinition/OZOPractitionerOZORelatedPerson - http://ozoverbindzorg.nl/fhir/StructureDefinition/OZORelatedPersonOZOTask - http://ozoverbindzorg.nl/fhir/StructureDefinition/OZOTaskinput/fsh/input/fsh/instances/ to input/fsh/examples/ for improved organization and clarityaliases.fsh from input/fsh/input/fsh/ to input/fsh/ (root level)input/fsh/input/fsh/profiles/ to input/fsh/profiles/OZOPatient - Patient profile for the OZO platform with OZO Person identifier and BSN supportOZOPractitioner - Practitioner profile with OZO Professional identifier and email slicingOZORelatedPerson - RelatedPerson profile for informal caregivers with OZO Person and NetworkRelation identifiersOZOOrganization - Organization profile with URA and OZO Organization identifiersOZOCareTeam - CareTeam profile representing care networks with practitioners and related personsOZOCommunication - Communication profile for messages with thread linking via partOfOZOCommunicationRequest - CommunicationRequest profile for message threadsOZOTask - Task profile for work assignments and referrals with thread linking via basedOnOZOAuditEvent - AuditEvent profile for NEN7510 compliance with W3C Trace Context extensionsaliases.fsh with common system and profile aliases