Huli FHIR Core Implementation Guide (R5)
0.1.0 - Release Latin America and the Caribbean

Huli FHIR Core Implementation Guide (R5) - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Extension: Huli Cancellation Info

Official URL: https://fhir.huli.ai/r5/StructureDefinition/huli-cancellation-info Version: 0.1.0
Active as of 2026-09-11 Computable Name: HuliCancellationInfo

Audit detail about an appointment cancellation. The structured FHIR Appointment.cancelationReason carries the SNOMED-coded reason; this extension carries the operational metadata (actor, timestamp, free-text notes) that Huli additionally records.

Sub-extensions:

  • cancelledBy (Reference, required when extension is present — a logical reference: valueReference.identifier carries the internal Huli user id of the cancelling actor under system = https://huli.io/fhir/identifier/user-id, with no literal reference and no type. The actor can be any staff identity — practitioner, receptionist, accountant, a service account, or the Huli "Sistema" sentinel — and is not exposed as a resource on this API; see D-013. Earlier releases emitted a typed Reference(Practitioner) literal, which mislabeled non-practitioner actors.)
  • cancelledOn (dateTime, optional)
  • cancellationNotes (string, optional)

Mapping: appointment.cancelled_by / .cancelled_on / .cancellation_notes columns.

Context of Use

    This extension may be used on the following element(s)

Usage info

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Extension Content

Description of Profiles, Differentials, Snapshots, and how the XML and JSON presentations work.

This structure is derived from Extension

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Extension 0..* Extension Huli Cancellation Info
... extension 1..* Extension Extension
... Slices for extension Content/Rules for all slices
.... extension:cancelledBy 1..1 Extension Extension
..... extension 0..0 Extension
..... url 1..1 uri "cancelledBy"
..... value[x] 1..1 Reference() Value of extension
...... reference 0..0 Literal reference, Relative, internal or absolute URL
...... type 0..0 Type the reference refers to (e.g. "Patient") - must be a resource in resources
...... identifier 1..1 Identifier Logical reference, when literal reference is not known
....... system 1..1 uri The namespace for the identifier value
Fixed Value: https://huli.io/fhir/identifier/user-id
....... value 1..1 string The value that is unique
.... extension:cancelledOn 0..1 Extension Extension
..... extension 0..0 Extension
..... url 1..1 uri "cancelledOn"
..... value[x] 0..1 dateTime Value of extension
.... extension:cancellationNotes 0..1 Extension Extension
..... extension 0..0 Extension
..... url 1..1 uri "cancellationNotes"
..... value[x] 0..1 string Value of extension
... url 1..1 uri "https://fhir.huli.ai/r5/StructureDefinition/huli-cancellation-info"

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Extension 0..* Extension Huli Cancellation Info
... id 0..1 id Unique id for inter-element referencing
... Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:cancelledBy 1..1 Extension Extension
..... id 0..1 id Unique id for inter-element referencing
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... url 1..1 uri "cancelledBy"
..... value[x] 1..1 Reference() Value of extension
...... id 0..1 id Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... identifier ΣC 1..1 Identifier Logical reference, when literal reference is not known
....... id 0..1 id Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
....... type Σ 0..1 CodeableConcept Description of identifier
Binding: IdentifierTypeCodes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
....... system Σ 1..1 uri The namespace for the identifier value
Fixed Value: https://huli.io/fhir/identifier/user-id
....... value ΣC 1..1 string The value that is unique
Example General: 123456
....... period Σ 0..1 Period Time period when id is/was valid for use
....... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
...... display ΣC 0..1 string Text alternative for the resource
.... extension:cancelledOn 0..1 Extension Extension
..... id 0..1 id Unique id for inter-element referencing
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... url 1..1 uri "cancelledOn"
..... value[x] 0..1 dateTime Value of extension
.... extension:cancellationNotes 0..1 Extension Extension
..... id 0..1 id Unique id for inter-element referencing
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... url 1..1 uri "cancellationNotes"
..... value[x] 0..1 string Value of extension
... url 1..1 uri "https://fhir.huli.ai/r5/StructureDefinition/huli-cancellation-info"

doco Documentation for this format

This structure is derived from Extension

Summary

Complex Extension: Audit detail about an appointment cancellation. The structured FHIR Appointment.cancelationReason carries the SNOMED-coded reason; this extension carries the operational metadata (actor, timestamp, free-text notes) that Huli additionally records. Sub-extensions:

  • cancelledBy (Reference, required when extension is present — a logical reference: valueReference.identifier carries the internal Huli user id of the cancelling actor under system = https://huli.io/fhir/identifier/user-id, with no literal reference and no type. The actor can be any staff identity — practitioner, receptionist, accountant, a service account, or the Huli "Sistema" sentinel — and is not exposed as a resource on this API; see D-013. Earlier releases emitted a typed Reference(Practitioner) literal, which mislabeled non-practitioner actors.)
  • cancelledOn (dateTime, optional)
  • cancellationNotes (string, optional)
Mapping: appointment.cancelled_by / .cancelled_on / .cancellation_notes columns.

  • cancelledBy: Reference: An Extension
  • cancelledOn: dateTime: An Extension
  • cancellationNotes: string: An Extension

Differential View

This structure is derived from Extension

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Extension 0..* Extension Huli Cancellation Info
... extension 1..* Extension Extension
... Slices for extension Content/Rules for all slices
.... extension:cancelledBy 1..1 Extension Extension
..... extension 0..0 Extension
..... url 1..1 uri "cancelledBy"
..... value[x] 1..1 Reference() Value of extension
...... reference 0..0 Literal reference, Relative, internal or absolute URL
...... type 0..0 Type the reference refers to (e.g. "Patient") - must be a resource in resources
...... identifier 1..1 Identifier Logical reference, when literal reference is not known
....... system 1..1 uri The namespace for the identifier value
Fixed Value: https://huli.io/fhir/identifier/user-id
....... value 1..1 string The value that is unique
.... extension:cancelledOn 0..1 Extension Extension
..... extension 0..0 Extension
..... url 1..1 uri "cancelledOn"
..... value[x] 0..1 dateTime Value of extension
.... extension:cancellationNotes 0..1 Extension Extension
..... extension 0..0 Extension
..... url 1..1 uri "cancellationNotes"
..... value[x] 0..1 string Value of extension
... url 1..1 uri "https://fhir.huli.ai/r5/StructureDefinition/huli-cancellation-info"

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Extension 0..* Extension Huli Cancellation Info
... id 0..1 id Unique id for inter-element referencing
... Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:cancelledBy 1..1 Extension Extension
..... id 0..1 id Unique id for inter-element referencing
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... url 1..1 uri "cancelledBy"
..... value[x] 1..1 Reference() Value of extension
...... id 0..1 id Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... identifier ΣC 1..1 Identifier Logical reference, when literal reference is not known
....... id 0..1 id Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
....... type Σ 0..1 CodeableConcept Description of identifier
Binding: IdentifierTypeCodes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
....... system Σ 1..1 uri The namespace for the identifier value
Fixed Value: https://huli.io/fhir/identifier/user-id
....... value ΣC 1..1 string The value that is unique
Example General: 123456
....... period Σ 0..1 Period Time period when id is/was valid for use
....... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
...... display ΣC 0..1 string Text alternative for the resource
.... extension:cancelledOn 0..1 Extension Extension
..... id 0..1 id Unique id for inter-element referencing
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... url 1..1 uri "cancelledOn"
..... value[x] 0..1 dateTime Value of extension
.... extension:cancellationNotes 0..1 Extension Extension
..... id 0..1 id Unique id for inter-element referencing
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... url 1..1 uri "cancellationNotes"
..... value[x] 0..1 string Value of extension
... url 1..1 uri "https://fhir.huli.ai/r5/StructureDefinition/huli-cancellation-info"

doco Documentation for this format

This structure is derived from Extension

Summary

Complex Extension: Audit detail about an appointment cancellation. The structured FHIR Appointment.cancelationReason carries the SNOMED-coded reason; this extension carries the operational metadata (actor, timestamp, free-text notes) that Huli additionally records. Sub-extensions:

  • cancelledBy (Reference, required when extension is present — a logical reference: valueReference.identifier carries the internal Huli user id of the cancelling actor under system = https://huli.io/fhir/identifier/user-id, with no literal reference and no type. The actor can be any staff identity — practitioner, receptionist, accountant, a service account, or the Huli "Sistema" sentinel — and is not exposed as a resource on this API; see D-013. Earlier releases emitted a typed Reference(Practitioner) literal, which mislabeled non-practitioner actors.)
  • cancelledOn (dateTime, optional)
  • cancellationNotes (string, optional)
Mapping: appointment.cancelled_by / .cancelled_on / .cancellation_notes columns.

  • cancelledBy: Reference: An Extension
  • cancelledOn: dateTime: An Extension
  • cancellationNotes: string: An Extension

 

Other representations of profile: CSV, Excel, Schematron

Terminology Bindings

Path Status Usage ValueSet Version Source
Extension.extension:cancelledBy.​value[x].identifier.​use Base required IdentifierUse 📍5.0.0 FHIR Std.
Extension.extension:cancelledBy.​value[x].identifier.​type Base extensible Identifier Type Codes 📍5.0.0 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()