Huli FHIR Core Implementation Guide (R4)
0.1.0 - Release
Huli FHIR Core Implementation Guide (R4) - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
Code systems and value sets defined by this IG. Standard FHIR R4
terminology (http://hl7.org/fhir/...) is used wherever a suitable
international code system exists; Huli-defined CodeSystems are only added
when no R4-core or external SDO covers the concept.
| CodeSystem | Scope |
|---|---|
HuliCancellationReasonCS |
Reasons an appointment was cancelled (operational, not the SNOMED-coded clinical reason). |
HuliConfirmationStatusCS |
Patient confirmation lifecycle (pending → confirmed → declined). |
HuliEthnicityCS |
Ethnicity codes used by HuliEthnicity extension (experimental). |
HuliOrgServiceCS |
Organization-service catalog identity (org-service); see Discovery surfaces below. |
HuliAddressSourceCS |
Address-value provenance (address-source, code mx-normativo-nom024). |
| ValueSet | Binding |
|---|---|
HuliBloodTypeVS |
extensible — HuliBloodType extension. |
HuliCancellationReasonVS |
extensible — Appointment.cancelationReason (Huli-extended). |
HuliConfirmationStatusVS |
required — HuliConfirmationStatus extension. |
HuliEthnicityVS |
extensible — HuliEthnicity extension. |
http://hl7.org/fhir/administrative-gender — Patient.genderhttp://terminology.hl7.org/CodeSystem/v2-0203 — Patient.identifier.typehttp://snomed.info/sct — Appointment.cancelationReason (clinical)http://loinc.org — Observation.code (vital signs, laboratory)See profile pages for the exact bindings.
ValueSet/$expand)The Public API exposes terminology only through ValueSet/$expand — there
is no plain ValueSet read/search, and CodeSystem supports read
only. Clients expand a canonical ValueSet url to obtain its members, e.g.
GET /fhir/R4/ValueSet/$expand?url=https://fhir.huli.ai/r4/ValueSet/observation-loinc.
Each url enforces its own SMART scope at the handler (a $expand
against a url whose scope the client lacks is rejected), so terminology
access is scoped to the clinical domain the codes belong to:
ValueSet url ($expand) |
Members | Required scope |
|---|---|---|
https://fhir.huli.ai/r4/ValueSet/cancellation-reason |
Appointment cancellation reasons (SNOMED + Huli-defined) | system/Appointment.rs |
https://fhir.huli.ai/r4/ValueSet/observation-loinc |
LOINC codes the API accepts on Observation.code, each carrying a unit and validation min/max bound (see below) |
system/Observation.rs |
https://fhir.huli.ai/r4/ValueSet/mx-country |
Country codes (MX address model) | system/Patient.rs |
https://fhir.huli.ai/r4/ValueSet/mx-municipality |
Mexican municipality catalog | system/Patient.rs |
https://fhir.huli.ai/r4/ValueSet/mx-locality |
Mexican locality catalog | system/Patient.rs |
observation-loinc extensionsEach observation-loinc expansion member carries Huli-defined extensions
that tell the client the expected unit and the accepted value range, so a
client can validate locally before posting an Observation:
| Extension url | Carries |
|---|---|
https://fhir.huli.ai/r4/StructureDefinition/observation-unit |
The expected UCUM unit for the code |
https://fhir.huli.ai/r4/StructureDefinition/observation-min |
Minimum accepted value |
https://fhir.huli.ai/r4/StructureDefinition/observation-max |
Maximum accepted value |
| CodeSystem url | Scope |
|---|---|
https://fhir.huli.ai/r4/CodeSystem/org-service |
The organization-service catalog identity. The org-service UUID is the code; carried on HealthcareService.type.coding and copied to Appointment.serviceType when booking. |
https://fhir.huli.ai/r4/CodeSystem/address-source |
Provenance of an address value. The single member mx-normativo-nom024 records that the value came from the Mexican normative (NOM-024) catalog. |
The Stage 1/2 discovery resources do not each define their own scope. They are aliased onto the existing booking and practitioner scopes, so a client already authorized to book or to read practitioners can discover the supporting resources with no extra grant:
| Resource(s) | Gated by scope |
|---|---|
Location, HealthcareService, Schedule, Slot, Device |
system/Appointment.rs |
PractitionerRole |
system/Practitioner.rs |