Skip to content

FHIR Versions & Resources

fhir-zod supports all four major FHIR releases through explicit versioned entry points. Each release is independent — pick one for a given model flow and keep your types and schemas on that path.

Import paths

FHIR releaseVersion entry pointResource entry pointsHL7 spec
R5fhir-zod/r5fhir-zod/r5/<Resource>HL7 R5
R4Bfhir-zod/r4bfhir-zod/r4b/<Resource>HL7 R4B
R4fhir-zod/r4fhir-zod/r4/<Resource>HL7 R4
STU3fhir-zod/stu3fhir-zod/stu3/<Resource>HL7 STU3

Import concrete resources from their resource entry point:

ts
import { PatientSchema, type Patient } from "fhir-zod/r4/Patient";

Import shared datatypes from the version entry point when needed:

ts
import { HumanNameSchema, type HumanName } from "fhir-zod/r4";

Don't mix releases in a single flow unless you're explicitly translating between them:

ts
import type { Patient as R4Patient } from "fhir-zod/r4/Patient";
import type { Patient as R5Patient } from "fhir-zod/r5/Patient";

Resource inventory

Browse generated core resources by release. Each resource links back to the canonical HL7 docs for semantics beyond the package shape.

Support status

R5, R4B, R4, and STU3 are fully supported. The package is pre-release, so package shape and generated output may change between versions. For the full semantic meaning of any resource, refer to the official HL7 FHIR specification for that release.