ERA FHIR specification
1.0.0 - draft

ERA FHIR specification - Local Development build (v1.0.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: AppointmentLocation

Official URL: https://pta.kanta.fi/fhir/StructureDefinition/AppointmentLocation Version: 1.0.0
Draft as of 2025-05-05 Computable Name: AppointmentLocation

Location profile used in appointment booking. The profile is used to convey the location details of the service point.

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Location 0..* Location Service point location
Location.id This element is included in summaries. 1..1 id Logical id of this artifact
Location.meta This element is included in summaries. 0..1 Meta Metadata about the resource
Location.meta.profile This element is included in summaries. 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to

Fixed Value: https://pta.kanta.fi/fhir/StructureDefinition/AppointmentLocation (no extensions allowed)
Location.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Location.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Location.description This element is included in summaries. 0..1 string Additional information on the location of the service point
Location.address 0..1 Address Visiting address of the service point
Location.address.type This element is included in summaries. 1..1 code postal | physical | both
Binding: AddressType (required): The type of an address (physical / postal).
Fixed Value: physical (no extensions allowed)
Location.address.line This element is included in summaries. 0..1 string Street address
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
Location.address.city This element is included in summaries. 0..1 string City
Example General: Erewhon
Location.address.postalCode This element is included in summaries. 0..1 string Postal code
Example General: 9132

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Location.address.type Base required AddressType 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Location If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Location If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Location If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Location If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Location A resource should have narrative for robust management text.`div`.exists()
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()

This structure is derived from Location

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Location 0..* Location Service point location
Location.id 1..1 id Logical id of this artifact
Location.meta 0..1 Meta Metadata about the resource
Location.meta.profile 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to
Fixed Value: https://pta.kanta.fi/fhir/StructureDefinition/AppointmentLocation (no extensions allowed)
Location.identifier 0..0 Unique code or number identifying the location to its users
Location.operationalStatus 0..0 The operational status of the location (typically only for a bed/room)
Location.name 0..0 Name of the location as used by humans
Location.alias 0..0 A list of alternate names that the location is known as, or was known as, in the past
Location.description 0..1 string Additional information on the location of the service point
Location.mode 0..0 instance | kind
Location.type 0..0 Type of function performed
Location.telecom 0..0 Contact details of the location
Location.address 0..1 Address Visiting address of the service point
Location.address.use 0..0 home | work | temp | old | billing - purpose of this address
Location.address.type 1..1 code postal | physical | both
Fixed Value: physical (no extensions allowed)
Location.address.text 0..0 Text representation of the address
Location.address.line 0..1 string Street address
Location.address.city 0..1 string City
Location.address.district 0..0 District name (aka county)
Location.address.state 0..0 Sub-unit of country (abbreviations ok)
Location.address.postalCode 0..1 string Postal code
Location.address.country 0..0 Country (e.g. can be ISO 3166 2 or 3 letter code)
Location.address.period 0..0 Time period when address was/is in use
Location.physicalType 0..0 Physical form of the location
Location.position 0..0 The absolute geographic location
Location.managingOrganization 0..0 Organization responsible for provisioning and upkeep
Location.partOf 0..0 Another Location this one is physically a part of
Location.hoursOfOperation 0..0 What days/times during a week is this location usually open
Location.availabilityExceptions 0..0 Description of availability exceptions
Location.endpoint 0..0 Technical endpoints providing access to services operated for the location

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: doco
Location 0..* Location Service point location
Location.id This element is included in summaries. 1..1 id Logical id of this artifact
Location.meta This element is included in summaries. 0..1 Meta Metadata about the resource
Location.meta.id 0..1 string Unique id for inter-element referencing
Location.meta.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Location.meta.versionId This element is included in summaries. 0..1 id Version specific identifier
Location.meta.lastUpdated This element is included in summaries. 0..1 instant When the resource version last changed
Location.meta.source This element is included in summaries. 0..1 uri Identifies where the resource comes from
Location.meta.profile This element is included in summaries. 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to

Fixed Value: https://pta.kanta.fi/fhir/StructureDefinition/AppointmentLocation (no extensions allowed)
Location.meta.security This element is included in summaries. 0..* Coding Security Labels applied to this resource
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
Location.meta.tag This element is included in summaries. 0..* Coding Tags applied to this resource
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
Location.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Location.language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
Location.text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
Location.contained 0..* Resource Contained, inline Resources
Location.extension 0..* Extension Additional content defined by implementations
Location.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Location.description This element is included in summaries. 0..1 string Additional information on the location of the service point
Location.address 0..1 Address Visiting address of the service point
Location.address.id 0..1 string Unique id for inter-element referencing
Location.address.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Location.address.type This element is included in summaries. 1..1 code postal | physical | both
Binding: AddressType (required): The type of an address (physical / postal).
Fixed Value: physical (no extensions allowed)
Location.address.line This element is included in summaries. 0..1 string Street address
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
Location.address.city This element is included in summaries. 0..1 string City
Example General: Erewhon
Location.address.postalCode This element is included in summaries. 0..1 string Postal code
Example General: 9132

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Location.meta.security Base extensible SecurityLabels 📍4.0.1 FHIR Std.
Location.meta.tag Base example Common Tags 📍4.0.1 FHIR Std.
Location.language Base preferred Common Languages 📍4.0.1 FHIR Std.
Location.address.type Base required AddressType 📍4.0.1 FHIR Std.
Location.hoursOfOperation.​daysOfWeek Base required DaysOfWeek 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Location If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Location If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Location If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Location If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Location A resource should have narrative for robust management text.`div`.exists()
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()

This structure is derived from Location

Summary

Mandatory: 1 element(2 nested mandatory elements)
Fixed: 2 elements
Prohibited: 21 elements

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Location 0..* Location Service point location
Location.id This element is included in summaries. 1..1 id Logical id of this artifact
Location.meta This element is included in summaries. 0..1 Meta Metadata about the resource
Location.meta.profile This element is included in summaries. 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to

Fixed Value: https://pta.kanta.fi/fhir/StructureDefinition/AppointmentLocation (no extensions allowed)
Location.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Location.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Location.description This element is included in summaries. 0..1 string Additional information on the location of the service point
Location.address 0..1 Address Visiting address of the service point
Location.address.type This element is included in summaries. 1..1 code postal | physical | both
Binding: AddressType (required): The type of an address (physical / postal).
Fixed Value: physical (no extensions allowed)
Location.address.line This element is included in summaries. 0..1 string Street address
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
Location.address.city This element is included in summaries. 0..1 string City
Example General: Erewhon
Location.address.postalCode This element is included in summaries. 0..1 string Postal code
Example General: 9132

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Location.address.type Base required AddressType 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Location If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Location If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Location If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Location If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Location A resource should have narrative for robust management text.`div`.exists()
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()

Differential View

This structure is derived from Location

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Location 0..* Location Service point location
Location.id 1..1 id Logical id of this artifact
Location.meta 0..1 Meta Metadata about the resource
Location.meta.profile 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to
Fixed Value: https://pta.kanta.fi/fhir/StructureDefinition/AppointmentLocation (no extensions allowed)
Location.identifier 0..0 Unique code or number identifying the location to its users
Location.status 0..0 active | suspended | inactive
Location.operationalStatus 0..0 The operational status of the location (typically only for a bed/room)
Location.name 0..0 Name of the location as used by humans
Location.alias 0..0 A list of alternate names that the location is known as, or was known as, in the past
Location.description 0..1 string Additional information on the location of the service point
Location.mode 0..0 instance | kind
Location.type 0..0 Type of function performed
Location.telecom 0..0 Contact details of the location
Location.address 0..1 Address Visiting address of the service point
Location.address.use 0..0 home | work | temp | old | billing - purpose of this address
Location.address.type 1..1 code postal | physical | both
Fixed Value: physical (no extensions allowed)
Location.address.text 0..0 Text representation of the address
Location.address.line 0..1 string Street address
Location.address.city 0..1 string City
Location.address.district 0..0 District name (aka county)
Location.address.state 0..0 Sub-unit of country (abbreviations ok)
Location.address.postalCode 0..1 string Postal code
Location.address.country 0..0 Country (e.g. can be ISO 3166 2 or 3 letter code)
Location.address.period 0..0 Time period when address was/is in use
Location.physicalType 0..0 Physical form of the location
Location.position 0..0 The absolute geographic location
Location.managingOrganization 0..0 Organization responsible for provisioning and upkeep
Location.partOf 0..0 Another Location this one is physically a part of
Location.hoursOfOperation 0..0 What days/times during a week is this location usually open
Location.availabilityExceptions 0..0 Description of availability exceptions
Location.endpoint 0..0 Technical endpoints providing access to services operated for the location

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Location 0..* Location Service point location
Location.id This element is included in summaries. 1..1 id Logical id of this artifact
Location.meta This element is included in summaries. 0..1 Meta Metadata about the resource
Location.meta.id 0..1 string Unique id for inter-element referencing
Location.meta.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Location.meta.versionId This element is included in summaries. 0..1 id Version specific identifier
Location.meta.lastUpdated This element is included in summaries. 0..1 instant When the resource version last changed
Location.meta.source This element is included in summaries. 0..1 uri Identifies where the resource comes from
Location.meta.profile This element is included in summaries. 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to

Fixed Value: https://pta.kanta.fi/fhir/StructureDefinition/AppointmentLocation (no extensions allowed)
Location.meta.security This element is included in summaries. 0..* Coding Security Labels applied to this resource
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
Location.meta.tag This element is included in summaries. 0..* Coding Tags applied to this resource
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
Location.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Location.language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
Location.text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
Location.contained 0..* Resource Contained, inline Resources
Location.extension 0..* Extension Additional content defined by implementations
Location.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Location.description This element is included in summaries. 0..1 string Additional information on the location of the service point
Location.address 0..1 Address Visiting address of the service point
Location.address.id 0..1 string Unique id for inter-element referencing
Location.address.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Location.address.type This element is included in summaries. 1..1 code postal | physical | both
Binding: AddressType (required): The type of an address (physical / postal).
Fixed Value: physical (no extensions allowed)
Location.address.line This element is included in summaries. 0..1 string Street address
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
Location.address.city This element is included in summaries. 0..1 string City
Example General: Erewhon
Location.address.postalCode This element is included in summaries. 0..1 string Postal code
Example General: 9132

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Location.meta.security Base extensible SecurityLabels 📍4.0.1 FHIR Std.
Location.meta.tag Base example Common Tags 📍4.0.1 FHIR Std.
Location.language Base preferred Common Languages 📍4.0.1 FHIR Std.
Location.address.type Base required AddressType 📍4.0.1 FHIR Std.
Location.hoursOfOperation.​daysOfWeek Base required DaysOfWeek 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Location If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Location If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Location If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Location If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Location A resource should have narrative for robust management text.`div`.exists()
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()

This structure is derived from Location

Summary

Mandatory: 1 element(2 nested mandatory elements)
Fixed: 2 elements
Prohibited: 21 elements

 

Other representations of profile: CSV, Excel, Schematron