PanCareSurPass Project HL7 FHIR Implementation Guide
0.2.0 - CI Build 150

PanCareSurPass Project HL7 FHIR Implementation Guide, published by PanCareSurPass Project. This guide is not an authorized publication; it is the continuous build for version 0.2.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/hl7-eu/pcsp/ and changes regularly. See the Directory of published versions

Resource Profile: Location: PCSP

Official URL: http://hl7.eu/fhir/ig/pcsp/StructureDefinition/Location-eu-pcsp Version: 0.2.0
Draft as of 2025-09-03 Computable Name: LocationPcsp

This profile defines how to represent FHIR Location for the purpose of the PanCareSurPass project.

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: Filtersdoco
.. Location 0..* Location Details and position information for a physical place
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!Σ 0..1 code active | suspended | inactive
Binding: LocationStatus (required): Indicates whether the location is still in use.
... description Σ 0..1 string Institution description

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Location.statusrequiredLocationStatus
http://hl7.org/fhir/ValueSet/location-status|4.0.1
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorLocationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorLocationIf 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-4errorLocationIf 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-5errorLocationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceLocationA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from Location

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Location Location
... name S 1..1 string Name of the Institution
... description 0..1 string Institution description
... address
.... city 0..1 string Institution city
.... country 0..1 string Institution country

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Location 0..* Location Details and position information for a physical place
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... 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
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier Unique code or number identifying the location to its users
... status ?!Σ 0..1 code active | suspended | inactive
Binding: LocationStatus (required): Indicates whether the location is still in use.
... operationalStatus Σ 0..1 Coding The operational status of the location (typically only for a bed/room)
Binding: hl7VS-bedStatus (preferred): The operational status if the location (where typically a bed/room).
... name SΣ 1..1 string Name of the Institution
... alias 0..* string A list of alternate names that the location is known as, or was known as, in the past
... description Σ 0..1 string Institution description
... mode Σ 0..1 code instance | kind
Binding: LocationMode (required): Indicates whether a resource instance represents a specific location or a class of locations.
... type Σ 0..* CodeableConcept Type of function performed
Binding: ServiceDeliveryLocationRoleType (3.0.0) (extensible): Indicates the type of function performed at the location.
... telecom 0..* ContactPoint Contact details of the location
... address 0..1 Address Physical location
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ 0..1 code home | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.
Example General: home
.... type Σ 0..1 code postal | physical | both
Binding: AddressType (required): The type of an address (physical / postal).
Example General: both
.... text Σ 0..1 string Text representation of the address
Example General: 137 Nowhere Street, Erewhon 9132
.... line Σ 0..* string Street name, number, direction & P.O. Box etc.
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
.... city Σ 0..1 string Institution city
Example General: Erewhon
.... district Σ 0..1 string District name (aka county)
Example General: Madison
.... state Σ 0..1 string Sub-unit of country (abbreviations ok)
.... postalCode Σ 0..1 string Postal code for area
Example General: 9132
.... country Σ 0..1 string Institution country
.... period Σ 0..1 Period Time period when address was/is in use
Example General: {"start":"2010-03-23","end":"2010-07-01"}
... physicalType Σ 0..1 CodeableConcept Physical form of the location
Binding: LocationType (example): Physical form of the location.
... position 0..1 BackboneElement The absolute geographic location
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... longitude 1..1 decimal Longitude with WGS84 datum
.... latitude 1..1 decimal Latitude with WGS84 datum
.... altitude 0..1 decimal Altitude with WGS84 datum
... managingOrganization Σ 0..1 Reference(Organization) Organization responsible for provisioning and upkeep
... partOf 0..1 Reference(Location) Another Location this one is physically a part of
... hoursOfOperation 0..* BackboneElement What days/times during a week is this location usually open
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... daysOfWeek 0..* code mon | tue | wed | thu | fri | sat | sun
Binding: DaysOfWeek (required): The days of the week.
.... allDay 0..1 boolean The Location is open all day
.... openingTime 0..1 time Time that the Location opens
.... closingTime 0..1 time Time that the Location closes
... availabilityExceptions 0..1 string Description of availability exceptions
... endpoint 0..* Reference(Endpoint) Technical endpoints providing access to services operated for the location

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Location.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
Location.statusrequiredLocationStatus
http://hl7.org/fhir/ValueSet/location-status|4.0.1
From the FHIR Standard
Location.operationalStatuspreferredHl7VSBedStatus
http://terminology.hl7.org/ValueSet/v2-0116
Location.moderequiredLocationMode
http://hl7.org/fhir/ValueSet/location-mode|4.0.1
From the FHIR Standard
Location.typeextensibleServiceDeliveryLocationRoleType
http://terminology.hl7.org/ValueSet/v3-ServiceDeliveryLocationRoleType|3.0.0
Location.address.userequiredAddressUse
http://hl7.org/fhir/ValueSet/address-use|4.0.1
From the FHIR Standard
Location.address.typerequiredAddressType
http://hl7.org/fhir/ValueSet/address-type|4.0.1
From the FHIR Standard
Location.physicalTypeexampleLocationType
http://hl7.org/fhir/ValueSet/location-physical-type
From the FHIR Standard
Location.hoursOfOperation.daysOfWeekrequiredDaysOfWeek
http://hl7.org/fhir/ValueSet/days-of-week|4.0.1
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorLocationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorLocationIf 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-4errorLocationIf 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-5errorLocationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceLocationA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from Location

Summary

Mandatory: 1 element
Must-Support: 1 element

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Location 0..* Location Details and position information for a physical place
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!Σ 0..1 code active | suspended | inactive
Binding: LocationStatus (required): Indicates whether the location is still in use.
... description Σ 0..1 string Institution description

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Location.statusrequiredLocationStatus
http://hl7.org/fhir/ValueSet/location-status|4.0.1
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorLocationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorLocationIf 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-4errorLocationIf 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-5errorLocationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceLocationA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Differential View

This structure is derived from Location

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Location Location
... name S 1..1 string Name of the Institution
... description 0..1 string Institution description
... address
.... city 0..1 string Institution city
.... country 0..1 string Institution country

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Location 0..* Location Details and position information for a physical place
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... 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
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier Unique code or number identifying the location to its users
... status ?!Σ 0..1 code active | suspended | inactive
Binding: LocationStatus (required): Indicates whether the location is still in use.
... operationalStatus Σ 0..1 Coding The operational status of the location (typically only for a bed/room)
Binding: hl7VS-bedStatus (preferred): The operational status if the location (where typically a bed/room).
... name SΣ 1..1 string Name of the Institution
... alias 0..* string A list of alternate names that the location is known as, or was known as, in the past
... description Σ 0..1 string Institution description
... mode Σ 0..1 code instance | kind
Binding: LocationMode (required): Indicates whether a resource instance represents a specific location or a class of locations.
... type Σ 0..* CodeableConcept Type of function performed
Binding: ServiceDeliveryLocationRoleType (3.0.0) (extensible): Indicates the type of function performed at the location.
... telecom 0..* ContactPoint Contact details of the location
... address 0..1 Address Physical location
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ 0..1 code home | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.
Example General: home
.... type Σ 0..1 code postal | physical | both
Binding: AddressType (required): The type of an address (physical / postal).
Example General: both
.... text Σ 0..1 string Text representation of the address
Example General: 137 Nowhere Street, Erewhon 9132
.... line Σ 0..* string Street name, number, direction & P.O. Box etc.
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
.... city Σ 0..1 string Institution city
Example General: Erewhon
.... district Σ 0..1 string District name (aka county)
Example General: Madison
.... state Σ 0..1 string Sub-unit of country (abbreviations ok)
.... postalCode Σ 0..1 string Postal code for area
Example General: 9132
.... country Σ 0..1 string Institution country
.... period Σ 0..1 Period Time period when address was/is in use
Example General: {"start":"2010-03-23","end":"2010-07-01"}
... physicalType Σ 0..1 CodeableConcept Physical form of the location
Binding: LocationType (example): Physical form of the location.
... position 0..1 BackboneElement The absolute geographic location
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... longitude 1..1 decimal Longitude with WGS84 datum
.... latitude 1..1 decimal Latitude with WGS84 datum
.... altitude 0..1 decimal Altitude with WGS84 datum
... managingOrganization Σ 0..1 Reference(Organization) Organization responsible for provisioning and upkeep
... partOf 0..1 Reference(Location) Another Location this one is physically a part of
... hoursOfOperation 0..* BackboneElement What days/times during a week is this location usually open
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... daysOfWeek 0..* code mon | tue | wed | thu | fri | sat | sun
Binding: DaysOfWeek (required): The days of the week.
.... allDay 0..1 boolean The Location is open all day
.... openingTime 0..1 time Time that the Location opens
.... closingTime 0..1 time Time that the Location closes
... availabilityExceptions 0..1 string Description of availability exceptions
... endpoint 0..* Reference(Endpoint) Technical endpoints providing access to services operated for the location

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Location.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
Location.statusrequiredLocationStatus
http://hl7.org/fhir/ValueSet/location-status|4.0.1
From the FHIR Standard
Location.operationalStatuspreferredHl7VSBedStatus
http://terminology.hl7.org/ValueSet/v2-0116
Location.moderequiredLocationMode
http://hl7.org/fhir/ValueSet/location-mode|4.0.1
From the FHIR Standard
Location.typeextensibleServiceDeliveryLocationRoleType
http://terminology.hl7.org/ValueSet/v3-ServiceDeliveryLocationRoleType|3.0.0
Location.address.userequiredAddressUse
http://hl7.org/fhir/ValueSet/address-use|4.0.1
From the FHIR Standard
Location.address.typerequiredAddressType
http://hl7.org/fhir/ValueSet/address-type|4.0.1
From the FHIR Standard
Location.physicalTypeexampleLocationType
http://hl7.org/fhir/ValueSet/location-physical-type
From the FHIR Standard
Location.hoursOfOperation.daysOfWeekrequiredDaysOfWeek
http://hl7.org/fhir/ValueSet/days-of-week|4.0.1
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorLocationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorLocationIf 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-4errorLocationIf 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-5errorLocationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceLocationA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from Location

Summary

Mandatory: 1 element
Must-Support: 1 element

 

Other representations of profile: CSV, Excel, Schematron