Profile: PAS (Request)
PAS Overview
The Provincial Attachment System (PAS) enables healthcare providers to manage a patient’s membership in their panel or roster at a specific healthcare facility. Through seamless messaging interactions, providers can ensure that their Electronic Medical Records (EMR) systems are aligned with PAS, eliminating the need for manual updates and ensuring panel data is consistent across both systems. PAS allows providers to retrieve and manage the Most Responsible Provider (MRP) status, helping improve administrative efficiency and care coordination.
Using FHIR messaging protocols encapsulated in Bundles, requests and responses are exchanged between the systems, enabling smooth communication. This page provides documentation on the structure of PAS (Request) and PAS (Response) messages, and the resource profiles that form the foundation of these interactions.
Please refer to the LRA Configuration page for information on authentication, authorization, environment, and endpoint details.
Request
A PAS Request is transmitted as a Bundle that contains a set of PAS FHIR profiles. The request message is designed to be flexible, enabling providers to perform actions such as adding or removing patients from their roster, or querying their current panel.
A PAS Request consists of a Bundle with the following key resources:
- PAS Request Bundle: A PAS Request Bundle is a FHIR message containing resources like MessageHeader, Group, Practitioner, Organization, and one or more Patient resources to manage patient panel membership actions such as adding, removing, or querying patients.
- PAS Request MessageHeader: Identifies the PAS request and the core action.
- PAS Request Group: Defines the relationship between the provider (Group.managingEntity) and the patient (Group.member.entity) associated with the panel.
- PAS Practitioner: Represents the provider managing the patient panel.
- PAS Organization: Identifies the facility to which the provider’s panel applies.
- PAS Patient: The individual being added, removed, or queried within the provider's panel.
API Address: Post {base url}/$process-message
Operation: The $process-message
operation is an operation defined by the base FHIR specification to support the processing of a message Bundle. The Bundle typically includes a MessageHeader resource, which contains details about the action (e.g., adding or removing a patient from a provider's roster), along with other relevant resources like Group, Patient, Practitioner, and Organization. The server processes the Bundle based on the request and returns a response indicating the outcome. The details around operation definition can be found here.
Request Body: The operation is invoked via a POST request to the endpoint, with the Bundle serving as the request body. MessageHeader.eventCoding
will define how to process message.
Codes: "add-patient-to-panel", "remove-patient-from-panel", "get-patient-mrp-status"
Example Usage Scenarios
The following are example usage scenarios for this profile:
- Add Patient to Provider Panel: The provider adds a patient to their panel directly in their EMR system.
-
Remove Patient from Provider Panel:The provider removes a patient from their panel directly in their EMR system. Same example as add patient (except eventCoding):
"eventCoding":{ "system":"[https://api.healthcarebc.ca/fhir/CodeSystem/message-event-code]", "code":"remove-patient-from-panel" }
-
Querying MRP Status: The request retrieves the MRP status of a patient in relation to the provider. Same example as add patient (except eventCoding):
"eventCoding":{ "system":"[https://api.healthcarebc.ca/fhir/CodeSystem/message-event-code]", "code":"get-patient-mrp-status" }
Validation Rules
To ensure the integrity of the PAS interactions and the alignment between PAS, PLR, and the Client Registry, the following validation rules apply to providers and patients involved in the PAS Response Bundle:
Provider Validation
- The provider (
Practitioner
) SHALL exist in both the PLR and PAS with a valid MSP ID. - The provider’s first name (
Practitioner.name.given
) and last name (Practitioner.name.family
) SHALL match between the PLR and PAS. - The clinic (
Organization
) SHALL exist in both PLR and PAS with a valid Facility ID. - The clinic's organization name (
Organization.name
) and postal address (Organization.address.postal
) SHALL match between the PLR and PAS. If multiple addresses are provided, validation succeeds if any of the provided addresses' postal code matches. This also applies to clinic business addresses. - The relationship between the provider and the clinic (
PractitionerRole
) SHALL exist in PAS.
Patient Validation
- The patient (
Patient
) SHALL exist in the Client Registry. - The patient's first name (
Patient.name.given[0]
), last name (Patient.name.family
), date of birth (Patient.birthDate
), and PHN-identifier (Patient.identifier) SHALL match the corresponding records in the Client Registry.- When validating the patient's given name, only the first entry in the 'given' field is processed i.e.
Patient.name.given[0]
. Therefore, all given names should be included in the first entry, separated by spaces. - The date of birth must follow the Client Registry's format, i.e., YYYY-MM-DD.
- When validating the patient's given name, only the first entry in the 'given' field is processed i.e.
Profile Content
-
PAS Request Bundle
Simplifier link for the profile: Bundle (PAS-LRA) - request
A PAS Request Bundle is a FHIR message containing resources like MessageHeader, Group, Practitioner, Organization, and one or more Patient resources to manage patient panel membership actions such as adding, removing, or querying patients.
LRAPASBundleRequest (Bundle) I Bundle Element id Short descriptionBundle
PAS Request Bundle
DefinitionData type ConstraintsA container for a collection of resources.
Mappings- bdl-1: total only when a search or history
total.empty() or (type = 'searchset') or (type = 'history')
- bdl-2: entry.search only when a search
entry.search.empty() or (type = 'searchset')
- bdl-3: entry.request mandatory for batch/transaction/history, otherwise prohibited
entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
- bdl-4: entry.response mandatory for batch-response/transaction-response/history, otherwise prohibited
entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history'))
- bdl-7: FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles)
(type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
- bdl-9: A document must have an identifier with a system and a value
type = 'document' implies (identifier.system.exists() and identifier.value.exists())
- bdl-10: A document must have a date
type = 'document' implies (timestamp.hasValue())
- bdl-11: A document must have a Composition as the first resource
type = 'document' implies entry.first().resource.is(Composition)
- bdl-12: A message must have a MessageHeader as the first resource
type = 'message' implies entry.first().resource.is(MessageHeader)
- rim: Entity. Role, or Act
- v2: N/A
- rim: N/A
- cda: ClinicalDocument, if bundle.type = document
id Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.id
Logical id of this artifact
DefinitionCommentsThe logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
Data typeThe only time that a resource does not have an id is when it is being submitted to the server using a create operation.
meta Σ 0..1 Meta There are no (further) constraints on this elementElement idShort descriptionBundle.meta
Metadata about the resource
DefinitionData type ConstraintsThe metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
implicitRules Σ ?! 0..1 uri There are no (further) constraints on this elementElement idShort descriptionBundle.implicitRules
A set of rules under which this content was created
DefinitionCommentsA reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.
Data type ConstraintsAsserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
language 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionBundle.language
Language of the resource content
DefinitionCommentsThe base language in which the resource is written.
Data type BindingLanguage is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).
CommonLanguages (preferred)ConstraintsA human language.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
identifier Σ 0..1 Identifier There are no (further) constraints on this elementElement idShort descriptionBundle.identifier
Persistent identifier for the bundle
DefinitionCommentsA persistent identifier for the bundle that won't change as a bundle is copied from server to server.
Data type ConstraintsPersistent identity generally only matters for batches of type Document, Message, and Collection. It would not normally be populated for search and history results and servers ignore Bundle.identifier when processing batches and transactions. For Documents the .identifier SHALL be populated such that the .identifier is globally unique.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.identifier
- cda: ClinicalDocument.id
type S Σ 1..1 codeBindingFixed Value Element id Short descriptionBundle.type
document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection
DefinitionCommentsIndicates the purpose of this bundle - how it is intended to be used.
Data type BindingIt's possible to use a bundle for other purposes (e.g. a document can be accepted as a transaction). This is primarily defined so that there can be specific rules for some of the bundle types.
BundleType (required)ConstraintsIndicates the purpose of a bundle - how it is intended to be used.
Fixed value- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
Mappingsmessage
- w5: FiveWs.class
timestamp Σ 0..1 instant There are no (further) constraints on this elementElement idShort descriptionBundle.timestamp
When the bundle was assembled
DefinitionCommentsThe date/time that the bundle was assembled - i.e. when the resources were placed in the bundle.
Data type ConstraintsFor many bundles, the timestamp is equal to .meta.lastUpdated, because they are not stored (e.g. search results). When a bundle is placed in a persistent store, .meta.lastUpdated will be usually be changed by the server. When the bundle is a message, a middleware agent altering the message (even if not stored) SHOULD update .meta.lastUpdated. .timestamp is used to track the original time of the Bundle, and SHOULD be populated.
Usage:
- document : the date the document was created. Note: the composition may predate the document, or be associated with multiple documents. The date of the composition - the authoring time - may be earlier than the document assembly time
- message : the date that the content of the message was assembled. This date is not changed by middleware engines unless they add additional data that changes the meaning of the time of the message
- history : the date that the history was assembled. This time would be used as the _since time to ask for subsequent updates
- searchset : the time that the search set was assembled. Note that different pages MAY have different timestamps but need not. Having different timestamps does not imply that subsequent pages will represent or include changes made since the initial query
- transaction | transaction-response | batch | batch-response | collection : no particular assigned meaning
The timestamp value should be greater than the lastUpdated and other timestamps in the resources in the bundle, and it should be equal or earlier than the .meta.lastUpdated on the Bundle itself.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.init
- cda: ClinicalDocument.effectiveTime
total Σ I 0..1 unsignedInt There are no (further) constraints on this elementElement idShort descriptionBundle.total
If search, the total number of matches
DefinitionCommentsIf a set of search matches, this is the total number of entries of type 'match' across all pages in the search. It does not include search.mode = 'include' or 'outcome' entries and it does not provide a count of the number of entries in the Bundle.
Data type ConstraintsOnly used if the bundle is a search result set. The total does not include resources such as OperationOutcome and included resources, only the total number of matching resources.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
link Σ 0..* BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.link
Links related to this Bundle
DefinitionCommentsA series of links that provide context to this bundle.
Data type ConstraintsBoth Bundle.link and Bundle.entry.link are defined to support providing additional context when Bundles are used (e.g. HATEOAS).
Bundle.entry.link corresponds to links found in the HTTP header if the resource in the entry was read directly.
This specification defines some specific uses of Bundle.link for searching and paging, but no specific uses for Bundle.entry.link, and no defined function in a transaction - the meaning is implementation specific.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.link.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.link.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.link.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
relation Σ 1..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.link.relation
See http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1
DefinitionData type ConstraintsA name which details the functional use for this link - see http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
url Σ 1..1 uri There are no (further) constraints on this elementElement idShort descriptionBundle.link.url
Reference details for the link
DefinitionData type ConstraintsThe reference details for the link.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
entry S Σ I 1..* BackboneElement Element id Short descriptionBundle.entry
Entry in the bundle - will have a resource or information
DefinitionData type Sliced:An entry in a bundle resource - will either contain a resource or information about a resource (transactions and history only).
Unordered, Open, by resource(Type)
Slice different resources included in the bundleConstraints- bdl-5: must be a resource unless there's a request or response
resource.exists() or request.exists() or response.exists()
- bdl-8: fullUrl cannot be a version specific reference
fullUrl.contains('/_history/').not()
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
(All Slices) There are no (further) constraints on this elementid 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
link Σ 0..* see (link) There are no (further) constraints on this elementElement idShort descriptionBundle.entry.link
Links related to this entry
DefinitionConstraintsA series of links that provide context to this entry.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
fullUrl Σ 0..1 uri There are no (further) constraints on this elementElement idShort descriptionBundle.entry.fullUrl
URI for resource (Absolute URL server address or URI for UUID/OID)
DefinitionCommentsThe Absolute URL for the resource. The fullUrl SHALL NOT disagree with the id in the resource - i.e. if the fullUrl is not a urn:uuid, the URL shall be version-independent URL consistent with the Resource.id. The fullUrl is a version independent reference to the resource. The fullUrl element SHALL have a value except that:
- fullUrl can be empty on a POST (although it does not need to when specifying a temporary id for reference in the bundle)
- Results from operations might involve resources that are not identified.
Data type ConstraintsfullUrl might not be unique in the context of a resource. Note that since FHIR resources do not need to be served through the FHIR API, the fullURL might be a URN or an absolute URL that does not end with the logical id of the resource (Resource.id). However, but if the fullUrl does look like a RESTful server URL (e.g. meets the regex, then the 'id' portion of the fullUrl SHALL end with the Resource.id.
Note that the fullUrl is not the same as the canonical URL - it's an absolute url for an endpoint serving the resource (these will happen to have the same value on the canonical server for the resource with the canonical URL).
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
resource Σ 0..1 Resource There are no (further) constraints on this elementElement idShort descriptionBundle.entry.resource
A resource in the bundle
DefinitionData typeThe Resource for the entry. The purpose/meaning of the resource is determined by the Bundle.type.
search Σ I 0..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.entry.search
Search related information
DefinitionData type ConstraintsInformation about the search process that lead to the creation of this entry.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry.search.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry.search.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry.search.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
mode Σ 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionBundle.entry.search.mode
match | include | outcome - why this is in the result set
DefinitionCommentsWhy this entry is in the result set - whether it's included as a match or because of an _include requirement, or to convey information or warning information about the search process.
Data type BindingThere is only one mode. In some corner cases, a resource may be included because it is both a match and an include. In these circumstances, 'match' takes precedence.
SearchEntryMode (required)ConstraintsWhy an entry is in the result set - whether it's included as a match or because of an _include requirement, or to convey information or warning information about the search process.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
score Σ 0..1 decimal There are no (further) constraints on this elementElement idShort descriptionBundle.entry.search.score
Search ranking (between 0 and 1)
DefinitionCommentsWhen searching, the server's search ranking score for the entry.
Data type ConstraintsServers are not required to return a ranking score. 1 is most relevant, and 0 is least relevant. Often, search results are sorted by score, but the client may specify a different sort order.
See Patient Match for the EMPI search which relates to this element.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
request Σ I 0..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.entry.request
Additional execution information (transaction/batch/history)
DefinitionData type ConstraintsAdditional information about how this entry should be processed as part of a transaction or batch. For history, it shows how the entry was processed to create the version contained in the entry.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry.request.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry.request.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry.request.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
method Σ 1..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionBundle.entry.request.method
GET | HEAD | POST | PUT | DELETE | PATCH
DefinitionData type BindingIn a transaction or batch, this is the HTTP action to be executed for this entry. In a history bundle, this indicates the HTTP action that occurred.
HTTPVerb (required)ConstraintsHTTP verbs (in the HTTP command line). See HTTP rfc for details.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
url Σ 1..1 uri There are no (further) constraints on this elementElement idShort descriptionBundle.entry.request.url
URL for HTTP equivalent of this entry
DefinitionCommentsThe URL for this entry, relative to the root (the address to which the request is posted).
Data type ConstraintsE.g. for a Patient Create, the method would be "POST" and the URL would be "Patient". For a Patient Update, the method would be PUT and the URL would be "Patient/[id]".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifNoneMatch Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry.request.ifNoneMatch
For managing cache currency
DefinitionData type ConstraintsIf the ETag values match, return a 304 Not Modified status. See the API documentation for "Conditional Read".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifModifiedSince Σ 0..1 instant There are no (further) constraints on this elementElement idShort descriptionBundle.entry.request.ifModifiedSince
For managing cache currency
DefinitionData type ConstraintsOnly perform the operation if the last updated date matches. See the API documentation for "Conditional Read".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifMatch Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry.request.ifMatch
For managing update contention
DefinitionData type ConstraintsOnly perform the operation if the Etag value matches. For more information, see the API section "Managing Resource Contention".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifNoneExist Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry.request.ifNoneExist
For conditional creates
DefinitionData type ConstraintsInstruct the server not to perform the create if a specified resource already exists. For further information, see the API documentation for "Conditional Create". This is just the query portion of the URL - what follows the "?" (not including the "?").
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
response Σ I 0..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.entry.response
Results of execution (transaction/batch/history)
DefinitionData type ConstraintsIndicates the results of processing the corresponding 'request' entry in the batch or transaction being responded to or what the results of an operation where when returning history.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry.response.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry.response.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry.response.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
status Σ 1..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry.response.status
Status response code (text optional)
DefinitionData type ConstraintsThe status code returned by processing this entry. The status SHALL start with a 3 digit HTTP code (e.g. 404) and may contain the standard HTTP description associated with the status code.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
location Σ 0..1 uri There are no (further) constraints on this elementElement idShort descriptionBundle.entry.response.location
The location (if the operation returns a location)
DefinitionData type ConstraintsThe location header created by processing this operation, populated if the operation returns a location.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
etag Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry.response.etag
The Etag for the resource (if relevant)
DefinitionCommentsThe Etag for the resource, if the operation for the entry produced a versioned resource (see Resource Metadata and Versioning and Managing Resource Contention).
Data type ConstraintsEtags match the Resource.meta.versionId. The ETag has to match the version id in the header if a resource is included.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
lastModified Σ 0..1 instant There are no (further) constraints on this elementElement idShort descriptionBundle.entry.response.lastModified
Server's date time modified
DefinitionCommentsThe date/time that the resource was modified on the server.
Data type ConstraintsThis has to match the same time in the meta header (meta.lastUpdated) if a resource is included.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
outcome Σ 0..1 Resource There are no (further) constraints on this elementElement idShort descriptionBundle.entry.response.outcome
OperationOutcome with hints and warnings (for batch/transaction)
DefinitionCommentsAn OperationOutcome containing hints and warnings produced as part of processing this entry in a batch or transaction.
Data typeFor a POST/PUT operation, this is the equivalent outcome that would be returned for prefer = operationoutcome - except that the resource is always returned whether or not the outcome is returned.
This outcome is not used for error responses in batch/transaction, only for hints and warnings. In a batch operation, the error will be in Bundle.entry.response, and for transaction, there will be a single OperationOutcome instead of a bundle in the case of an error.
messageHeader S Σ I 1..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader
Entry in the bundle - will have a resource or information
DefinitionData type ConstraintsAn entry in a bundle resource - will either contain a resource or information about a resource (transactions and history only).
- bdl-5: must be a resource unless there's a request or response
resource.exists() or request.exists() or response.exists()
- bdl-8: fullUrl cannot be a version specific reference
fullUrl.contains('/_history/').not()
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
link Σ 0..* see (link) There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.link
Links related to this entry
DefinitionConstraintsA series of links that provide context to this entry.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
fullUrl Σ 0..1 uri There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.fullUrl
URI for resource (Absolute URL server address or URI for UUID/OID)
DefinitionCommentsThe Absolute URL for the resource. The fullUrl SHALL NOT disagree with the id in the resource - i.e. if the fullUrl is not a urn:uuid, the URL shall be version-independent URL consistent with the Resource.id. The fullUrl is a version independent reference to the resource. The fullUrl element SHALL have a value except that:
- fullUrl can be empty on a POST (although it does not need to when specifying a temporary id for reference in the bundle)
- Results from operations might involve resources that are not identified.
Data type ConstraintsfullUrl might not be unique in the context of a resource. Note that since FHIR resources do not need to be served through the FHIR API, the fullURL might be a URN or an absolute URL that does not end with the logical id of the resource (Resource.id). However, but if the fullUrl does look like a RESTful server URL (e.g. meets the regex, then the 'id' portion of the fullUrl SHALL end with the Resource.id.
Note that the fullUrl is not the same as the canonical URL - it's an absolute url for an endpoint serving the resource (these will happen to have the same value on the canonical server for the resource with the canonical URL).
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
resource I 0..1 LRAPASMessageHeaderRequest Element id Short descriptionBundle.entry:messageHeader.resource
PAS Request MessageHeader
DefinitionData type ConstraintsThe header for a message exchange that is either requesting or responding to an action. The reference(s) that are the subject of the action as well as other information related to the action are typically transmitted in a bundle in which the MessageHeader resource instance is the first resource in the bundle.
Mappings- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
contained.contained.empty()
- dom-3: 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: 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: If a resource is contained in another resource, it SHALL NOT have a security label
contained.meta.security.empty()
- dom-6: A resource should have narrative for robust management
text.`div`.exists()
- rim: Entity. Role, or Act
- v2: MSH / MSA / ERR
- rim: Message
search Σ I 0..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.search
Search related information
DefinitionData type ConstraintsInformation about the search process that lead to the creation of this entry.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.search.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.search.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.search.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
mode Σ 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.search.mode
match | include | outcome - why this is in the result set
DefinitionCommentsWhy this entry is in the result set - whether it's included as a match or because of an _include requirement, or to convey information or warning information about the search process.
Data type BindingThere is only one mode. In some corner cases, a resource may be included because it is both a match and an include. In these circumstances, 'match' takes precedence.
SearchEntryMode (required)ConstraintsWhy an entry is in the result set - whether it's included as a match or because of an _include requirement, or to convey information or warning information about the search process.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
score Σ 0..1 decimal There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.search.score
Search ranking (between 0 and 1)
DefinitionCommentsWhen searching, the server's search ranking score for the entry.
Data type ConstraintsServers are not required to return a ranking score. 1 is most relevant, and 0 is least relevant. Often, search results are sorted by score, but the client may specify a different sort order.
See Patient Match for the EMPI search which relates to this element.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
request Σ I 0..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.request
Additional execution information (transaction/batch/history)
DefinitionData type ConstraintsAdditional information about how this entry should be processed as part of a transaction or batch. For history, it shows how the entry was processed to create the version contained in the entry.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.request.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.request.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.request.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
method Σ 1..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.request.method
GET | HEAD | POST | PUT | DELETE | PATCH
DefinitionData type BindingIn a transaction or batch, this is the HTTP action to be executed for this entry. In a history bundle, this indicates the HTTP action that occurred.
HTTPVerb (required)ConstraintsHTTP verbs (in the HTTP command line). See HTTP rfc for details.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
url Σ 1..1 uri There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.request.url
URL for HTTP equivalent of this entry
DefinitionCommentsThe URL for this entry, relative to the root (the address to which the request is posted).
Data type ConstraintsE.g. for a Patient Create, the method would be "POST" and the URL would be "Patient". For a Patient Update, the method would be PUT and the URL would be "Patient/[id]".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifNoneMatch Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.request.ifNoneMatch
For managing cache currency
DefinitionData type ConstraintsIf the ETag values match, return a 304 Not Modified status. See the API documentation for "Conditional Read".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifModifiedSince Σ 0..1 instant There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.request.ifModifiedSince
For managing cache currency
DefinitionData type ConstraintsOnly perform the operation if the last updated date matches. See the API documentation for "Conditional Read".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifMatch Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.request.ifMatch
For managing update contention
DefinitionData type ConstraintsOnly perform the operation if the Etag value matches. For more information, see the API section "Managing Resource Contention".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifNoneExist Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.request.ifNoneExist
For conditional creates
DefinitionData type ConstraintsInstruct the server not to perform the create if a specified resource already exists. For further information, see the API documentation for "Conditional Create". This is just the query portion of the URL - what follows the "?" (not including the "?").
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
response Σ I 0..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.response
Results of execution (transaction/batch/history)
DefinitionData type ConstraintsIndicates the results of processing the corresponding 'request' entry in the batch or transaction being responded to or what the results of an operation where when returning history.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.response.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.response.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.response.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
status Σ 1..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.response.status
Status response code (text optional)
DefinitionData type ConstraintsThe status code returned by processing this entry. The status SHALL start with a 3 digit HTTP code (e.g. 404) and may contain the standard HTTP description associated with the status code.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
location Σ 0..1 uri There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.response.location
The location (if the operation returns a location)
DefinitionData type ConstraintsThe location header created by processing this operation, populated if the operation returns a location.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
etag Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.response.etag
The Etag for the resource (if relevant)
DefinitionCommentsThe Etag for the resource, if the operation for the entry produced a versioned resource (see Resource Metadata and Versioning and Managing Resource Contention).
Data type ConstraintsEtags match the Resource.meta.versionId. The ETag has to match the version id in the header if a resource is included.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
lastModified Σ 0..1 instant There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.response.lastModified
Server's date time modified
DefinitionCommentsThe date/time that the resource was modified on the server.
Data type ConstraintsThis has to match the same time in the meta header (meta.lastUpdated) if a resource is included.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
outcome Σ 0..1 Resource There are no (further) constraints on this elementElement idShort descriptionBundle.entry:messageHeader.response.outcome
OperationOutcome with hints and warnings (for batch/transaction)
DefinitionCommentsAn OperationOutcome containing hints and warnings produced as part of processing this entry in a batch or transaction.
Data typeFor a POST/PUT operation, this is the equivalent outcome that would be returned for prefer = operationoutcome - except that the resource is always returned whether or not the outcome is returned.
This outcome is not used for error responses in batch/transaction, only for hints and warnings. In a batch operation, the error will be in Bundle.entry.response, and for transaction, there will be a single OperationOutcome instead of a bundle in the case of an error.
group S Σ I 1..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group
Entry in the bundle - will have a resource or information
DefinitionData type ConstraintsAn entry in a bundle resource - will either contain a resource or information about a resource (transactions and history only).
- bdl-5: must be a resource unless there's a request or response
resource.exists() or request.exists() or response.exists()
- bdl-8: fullUrl cannot be a version specific reference
fullUrl.contains('/_history/').not()
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
link Σ 0..* see (link) There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.link
Links related to this entry
DefinitionConstraintsA series of links that provide context to this entry.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
fullUrl Σ 0..1 uri There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.fullUrl
URI for resource (Absolute URL server address or URI for UUID/OID)
DefinitionCommentsThe Absolute URL for the resource. The fullUrl SHALL NOT disagree with the id in the resource - i.e. if the fullUrl is not a urn:uuid, the URL shall be version-independent URL consistent with the Resource.id. The fullUrl is a version independent reference to the resource. The fullUrl element SHALL have a value except that:
- fullUrl can be empty on a POST (although it does not need to when specifying a temporary id for reference in the bundle)
- Results from operations might involve resources that are not identified.
Data type ConstraintsfullUrl might not be unique in the context of a resource. Note that since FHIR resources do not need to be served through the FHIR API, the fullURL might be a URN or an absolute URL that does not end with the logical id of the resource (Resource.id). However, but if the fullUrl does look like a RESTful server URL (e.g. meets the regex, then the 'id' portion of the fullUrl SHALL end with the Resource.id.
Note that the fullUrl is not the same as the canonical URL - it's an absolute url for an endpoint serving the resource (these will happen to have the same value on the canonical server for the resource with the canonical URL).
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
resource I 0..1 LRAPASGroup Element id Short descriptionBundle.entry:group.resource
Group of multiple entities
DefinitionCommentsRepresents a defined collection of entities that may be discussed or acted upon collectively but which are not expected to act collectively, and are not formally or legally recognized; i.e. a collection of entities that isn't an Organization.
Data type ConstraintsIf both Group.characteristic and Group.member are present, then the members are the individuals who were found who met the characteristic. It's possible that there might be other candidate members who meet the characteristic and aren't (yet) in the list. All members SHALL have the listed characteristics.
Mappings- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
contained.contained.empty()
- dom-3: 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: 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: If a resource is contained in another resource, it SHALL NOT have a security label
contained.meta.security.empty()
- dom-6: A resource should have narrative for robust management
text.`div`.exists()
- grp-1: Can only have members if group is "actual"
member.empty() or (actual = true)
- rim: Entity. Role, or Act
- rim: Entity[determinerCode="GRP" or determinerCode="GRP_KIND"]
search Σ I 0..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.search
Search related information
DefinitionData type ConstraintsInformation about the search process that lead to the creation of this entry.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.search.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.search.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.search.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
mode Σ 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.search.mode
match | include | outcome - why this is in the result set
DefinitionCommentsWhy this entry is in the result set - whether it's included as a match or because of an _include requirement, or to convey information or warning information about the search process.
Data type BindingThere is only one mode. In some corner cases, a resource may be included because it is both a match and an include. In these circumstances, 'match' takes precedence.
SearchEntryMode (required)ConstraintsWhy an entry is in the result set - whether it's included as a match or because of an _include requirement, or to convey information or warning information about the search process.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
score Σ 0..1 decimal There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.search.score
Search ranking (between 0 and 1)
DefinitionCommentsWhen searching, the server's search ranking score for the entry.
Data type ConstraintsServers are not required to return a ranking score. 1 is most relevant, and 0 is least relevant. Often, search results are sorted by score, but the client may specify a different sort order.
See Patient Match for the EMPI search which relates to this element.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
request Σ I 0..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.request
Additional execution information (transaction/batch/history)
DefinitionData type ConstraintsAdditional information about how this entry should be processed as part of a transaction or batch. For history, it shows how the entry was processed to create the version contained in the entry.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.request.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.request.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.request.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
method Σ 1..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.request.method
GET | HEAD | POST | PUT | DELETE | PATCH
DefinitionData type BindingIn a transaction or batch, this is the HTTP action to be executed for this entry. In a history bundle, this indicates the HTTP action that occurred.
HTTPVerb (required)ConstraintsHTTP verbs (in the HTTP command line). See HTTP rfc for details.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
url Σ 1..1 uri There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.request.url
URL for HTTP equivalent of this entry
DefinitionCommentsThe URL for this entry, relative to the root (the address to which the request is posted).
Data type ConstraintsE.g. for a Patient Create, the method would be "POST" and the URL would be "Patient". For a Patient Update, the method would be PUT and the URL would be "Patient/[id]".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifNoneMatch Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.request.ifNoneMatch
For managing cache currency
DefinitionData type ConstraintsIf the ETag values match, return a 304 Not Modified status. See the API documentation for "Conditional Read".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifModifiedSince Σ 0..1 instant There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.request.ifModifiedSince
For managing cache currency
DefinitionData type ConstraintsOnly perform the operation if the last updated date matches. See the API documentation for "Conditional Read".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifMatch Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.request.ifMatch
For managing update contention
DefinitionData type ConstraintsOnly perform the operation if the Etag value matches. For more information, see the API section "Managing Resource Contention".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifNoneExist Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.request.ifNoneExist
For conditional creates
DefinitionData type ConstraintsInstruct the server not to perform the create if a specified resource already exists. For further information, see the API documentation for "Conditional Create". This is just the query portion of the URL - what follows the "?" (not including the "?").
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
response Σ I 0..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.response
Results of execution (transaction/batch/history)
DefinitionData type ConstraintsIndicates the results of processing the corresponding 'request' entry in the batch or transaction being responded to or what the results of an operation where when returning history.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.response.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.response.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.response.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
status Σ 1..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.response.status
Status response code (text optional)
DefinitionData type ConstraintsThe status code returned by processing this entry. The status SHALL start with a 3 digit HTTP code (e.g. 404) and may contain the standard HTTP description associated with the status code.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
location Σ 0..1 uri There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.response.location
The location (if the operation returns a location)
DefinitionData type ConstraintsThe location header created by processing this operation, populated if the operation returns a location.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
etag Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.response.etag
The Etag for the resource (if relevant)
DefinitionCommentsThe Etag for the resource, if the operation for the entry produced a versioned resource (see Resource Metadata and Versioning and Managing Resource Contention).
Data type ConstraintsEtags match the Resource.meta.versionId. The ETag has to match the version id in the header if a resource is included.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
lastModified Σ 0..1 instant There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.response.lastModified
Server's date time modified
DefinitionCommentsThe date/time that the resource was modified on the server.
Data type ConstraintsThis has to match the same time in the meta header (meta.lastUpdated) if a resource is included.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
outcome Σ 0..1 Resource There are no (further) constraints on this elementElement idShort descriptionBundle.entry:group.response.outcome
OperationOutcome with hints and warnings (for batch/transaction)
DefinitionCommentsAn OperationOutcome containing hints and warnings produced as part of processing this entry in a batch or transaction.
Data typeFor a POST/PUT operation, this is the equivalent outcome that would be returned for prefer = operationoutcome - except that the resource is always returned whether or not the outcome is returned.
This outcome is not used for error responses in batch/transaction, only for hints and warnings. In a batch operation, the error will be in Bundle.entry.response, and for transaction, there will be a single OperationOutcome instead of a bundle in the case of an error.
provider S Σ I 1..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider
Entry in the bundle - will have a resource or information
DefinitionData type ConstraintsAn entry in a bundle resource - will either contain a resource or information about a resource (transactions and history only).
- bdl-5: must be a resource unless there's a request or response
resource.exists() or request.exists() or response.exists()
- bdl-8: fullUrl cannot be a version specific reference
fullUrl.contains('/_history/').not()
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
link Σ 0..* see (link) There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.link
Links related to this entry
DefinitionConstraintsA series of links that provide context to this entry.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
fullUrl Σ 0..1 uri There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.fullUrl
URI for resource (Absolute URL server address or URI for UUID/OID)
DefinitionCommentsThe Absolute URL for the resource. The fullUrl SHALL NOT disagree with the id in the resource - i.e. if the fullUrl is not a urn:uuid, the URL shall be version-independent URL consistent with the Resource.id. The fullUrl is a version independent reference to the resource. The fullUrl element SHALL have a value except that:
- fullUrl can be empty on a POST (although it does not need to when specifying a temporary id for reference in the bundle)
- Results from operations might involve resources that are not identified.
Data type ConstraintsfullUrl might not be unique in the context of a resource. Note that since FHIR resources do not need to be served through the FHIR API, the fullURL might be a URN or an absolute URL that does not end with the logical id of the resource (Resource.id). However, but if the fullUrl does look like a RESTful server URL (e.g. meets the regex, then the 'id' portion of the fullUrl SHALL end with the Resource.id.
Note that the fullUrl is not the same as the canonical URL - it's an absolute url for an endpoint serving the resource (these will happen to have the same value on the canonical server for the resource with the canonical URL).
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
resource I 0..1 LRAPASPractitioner Element id Short descriptionBundle.entry:provider.resource
A person with a formal responsibility in the provisioning of healthcare or related services
DefinitionData type ConstraintsA person who is directly or indirectly involved in the provisioning of healthcare.
Mappings- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
contained.contained.empty()
- dom-3: 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: 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: If a resource is contained in another resource, it SHALL NOT have a security label
contained.meta.security.empty()
- dom-6: A resource should have narrative for robust management
text.`div`.exists()
- rim: Entity. Role, or Act
- v2: PRD (as one example)
- rim: Role
- servd: Provider
search Σ I 0..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.search
Search related information
DefinitionData type ConstraintsInformation about the search process that lead to the creation of this entry.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.search.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.search.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.search.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
mode Σ 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.search.mode
match | include | outcome - why this is in the result set
DefinitionCommentsWhy this entry is in the result set - whether it's included as a match or because of an _include requirement, or to convey information or warning information about the search process.
Data type BindingThere is only one mode. In some corner cases, a resource may be included because it is both a match and an include. In these circumstances, 'match' takes precedence.
SearchEntryMode (required)ConstraintsWhy an entry is in the result set - whether it's included as a match or because of an _include requirement, or to convey information or warning information about the search process.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
score Σ 0..1 decimal There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.search.score
Search ranking (between 0 and 1)
DefinitionCommentsWhen searching, the server's search ranking score for the entry.
Data type ConstraintsServers are not required to return a ranking score. 1 is most relevant, and 0 is least relevant. Often, search results are sorted by score, but the client may specify a different sort order.
See Patient Match for the EMPI search which relates to this element.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
request Σ I 0..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.request
Additional execution information (transaction/batch/history)
DefinitionData type ConstraintsAdditional information about how this entry should be processed as part of a transaction or batch. For history, it shows how the entry was processed to create the version contained in the entry.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.request.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.request.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.request.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
method Σ 1..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.request.method
GET | HEAD | POST | PUT | DELETE | PATCH
DefinitionData type BindingIn a transaction or batch, this is the HTTP action to be executed for this entry. In a history bundle, this indicates the HTTP action that occurred.
HTTPVerb (required)ConstraintsHTTP verbs (in the HTTP command line). See HTTP rfc for details.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
url Σ 1..1 uri There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.request.url
URL for HTTP equivalent of this entry
DefinitionCommentsThe URL for this entry, relative to the root (the address to which the request is posted).
Data type ConstraintsE.g. for a Patient Create, the method would be "POST" and the URL would be "Patient". For a Patient Update, the method would be PUT and the URL would be "Patient/[id]".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifNoneMatch Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.request.ifNoneMatch
For managing cache currency
DefinitionData type ConstraintsIf the ETag values match, return a 304 Not Modified status. See the API documentation for "Conditional Read".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifModifiedSince Σ 0..1 instant There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.request.ifModifiedSince
For managing cache currency
DefinitionData type ConstraintsOnly perform the operation if the last updated date matches. See the API documentation for "Conditional Read".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifMatch Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.request.ifMatch
For managing update contention
DefinitionData type ConstraintsOnly perform the operation if the Etag value matches. For more information, see the API section "Managing Resource Contention".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifNoneExist Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.request.ifNoneExist
For conditional creates
DefinitionData type ConstraintsInstruct the server not to perform the create if a specified resource already exists. For further information, see the API documentation for "Conditional Create". This is just the query portion of the URL - what follows the "?" (not including the "?").
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
response Σ I 0..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.response
Results of execution (transaction/batch/history)
DefinitionData type ConstraintsIndicates the results of processing the corresponding 'request' entry in the batch or transaction being responded to or what the results of an operation where when returning history.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.response.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.response.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.response.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
status Σ 1..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.response.status
Status response code (text optional)
DefinitionData type ConstraintsThe status code returned by processing this entry. The status SHALL start with a 3 digit HTTP code (e.g. 404) and may contain the standard HTTP description associated with the status code.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
location Σ 0..1 uri There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.response.location
The location (if the operation returns a location)
DefinitionData type ConstraintsThe location header created by processing this operation, populated if the operation returns a location.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
etag Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.response.etag
The Etag for the resource (if relevant)
DefinitionCommentsThe Etag for the resource, if the operation for the entry produced a versioned resource (see Resource Metadata and Versioning and Managing Resource Contention).
Data type ConstraintsEtags match the Resource.meta.versionId. The ETag has to match the version id in the header if a resource is included.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
lastModified Σ 0..1 instant There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.response.lastModified
Server's date time modified
DefinitionCommentsThe date/time that the resource was modified on the server.
Data type ConstraintsThis has to match the same time in the meta header (meta.lastUpdated) if a resource is included.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
outcome Σ 0..1 Resource There are no (further) constraints on this elementElement idShort descriptionBundle.entry:provider.response.outcome
OperationOutcome with hints and warnings (for batch/transaction)
DefinitionCommentsAn OperationOutcome containing hints and warnings produced as part of processing this entry in a batch or transaction.
Data typeFor a POST/PUT operation, this is the equivalent outcome that would be returned for prefer = operationoutcome - except that the resource is always returned whether or not the outcome is returned.
This outcome is not used for error responses in batch/transaction, only for hints and warnings. In a batch operation, the error will be in Bundle.entry.response, and for transaction, there will be a single OperationOutcome instead of a bundle in the case of an error.
patient S Σ I 1..* BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient
Entry in the bundle - will have a resource or information
DefinitionData type ConstraintsAn entry in a bundle resource - will either contain a resource or information about a resource (transactions and history only).
- bdl-5: must be a resource unless there's a request or response
resource.exists() or request.exists() or response.exists()
- bdl-8: fullUrl cannot be a version specific reference
fullUrl.contains('/_history/').not()
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
link Σ 0..* see (link) There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.link
Links related to this entry
DefinitionConstraintsA series of links that provide context to this entry.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
fullUrl Σ 0..1 uri There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.fullUrl
URI for resource (Absolute URL server address or URI for UUID/OID)
DefinitionCommentsThe Absolute URL for the resource. The fullUrl SHALL NOT disagree with the id in the resource - i.e. if the fullUrl is not a urn:uuid, the URL shall be version-independent URL consistent with the Resource.id. The fullUrl is a version independent reference to the resource. The fullUrl element SHALL have a value except that:
- fullUrl can be empty on a POST (although it does not need to when specifying a temporary id for reference in the bundle)
- Results from operations might involve resources that are not identified.
Data type ConstraintsfullUrl might not be unique in the context of a resource. Note that since FHIR resources do not need to be served through the FHIR API, the fullURL might be a URN or an absolute URL that does not end with the logical id of the resource (Resource.id). However, but if the fullUrl does look like a RESTful server URL (e.g. meets the regex, then the 'id' portion of the fullUrl SHALL end with the Resource.id.
Note that the fullUrl is not the same as the canonical URL - it's an absolute url for an endpoint serving the resource (these will happen to have the same value on the canonical server for the resource with the canonical URL).
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
resource I 0..1 LRAPASPatient Element id Short descriptionBundle.entry:patient.resource
Information about an individual or animal receiving health care services
Alternate namesSubjectOfCare Client Resident
DefinitionData type ConstraintsDemographics and other administrative information about an individual or animal receiving care or other health-related services.
Mappings- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
contained.contained.empty()
- dom-3: 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: 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: If a resource is contained in another resource, it SHALL NOT have a security label
contained.meta.security.empty()
- dom-6: A resource should have narrative for robust management
text.`div`.exists()
- rim: Entity. Role, or Act
- rim: Patient[classCode=PAT]
- cda: ClinicalDocument.recordTarget.patientRole
search Σ I 0..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.search
Search related information
DefinitionData type ConstraintsInformation about the search process that lead to the creation of this entry.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.search.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.search.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.search.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
mode Σ 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.search.mode
match | include | outcome - why this is in the result set
DefinitionCommentsWhy this entry is in the result set - whether it's included as a match or because of an _include requirement, or to convey information or warning information about the search process.
Data type BindingThere is only one mode. In some corner cases, a resource may be included because it is both a match and an include. In these circumstances, 'match' takes precedence.
SearchEntryMode (required)ConstraintsWhy an entry is in the result set - whether it's included as a match or because of an _include requirement, or to convey information or warning information about the search process.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
score Σ 0..1 decimal There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.search.score
Search ranking (between 0 and 1)
DefinitionCommentsWhen searching, the server's search ranking score for the entry.
Data type ConstraintsServers are not required to return a ranking score. 1 is most relevant, and 0 is least relevant. Often, search results are sorted by score, but the client may specify a different sort order.
See Patient Match for the EMPI search which relates to this element.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
request Σ I 0..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.request
Additional execution information (transaction/batch/history)
DefinitionData type ConstraintsAdditional information about how this entry should be processed as part of a transaction or batch. For history, it shows how the entry was processed to create the version contained in the entry.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.request.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.request.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.request.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
method Σ 1..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.request.method
GET | HEAD | POST | PUT | DELETE | PATCH
DefinitionData type BindingIn a transaction or batch, this is the HTTP action to be executed for this entry. In a history bundle, this indicates the HTTP action that occurred.
HTTPVerb (required)ConstraintsHTTP verbs (in the HTTP command line). See HTTP rfc for details.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
url Σ 1..1 uri There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.request.url
URL for HTTP equivalent of this entry
DefinitionCommentsThe URL for this entry, relative to the root (the address to which the request is posted).
Data type ConstraintsE.g. for a Patient Create, the method would be "POST" and the URL would be "Patient". For a Patient Update, the method would be PUT and the URL would be "Patient/[id]".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifNoneMatch Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.request.ifNoneMatch
For managing cache currency
DefinitionData type ConstraintsIf the ETag values match, return a 304 Not Modified status. See the API documentation for "Conditional Read".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifModifiedSince Σ 0..1 instant There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.request.ifModifiedSince
For managing cache currency
DefinitionData type ConstraintsOnly perform the operation if the last updated date matches. See the API documentation for "Conditional Read".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifMatch Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.request.ifMatch
For managing update contention
DefinitionData type ConstraintsOnly perform the operation if the Etag value matches. For more information, see the API section "Managing Resource Contention".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifNoneExist Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.request.ifNoneExist
For conditional creates
DefinitionData type ConstraintsInstruct the server not to perform the create if a specified resource already exists. For further information, see the API documentation for "Conditional Create". This is just the query portion of the URL - what follows the "?" (not including the "?").
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
response Σ I 0..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.response
Results of execution (transaction/batch/history)
DefinitionData type ConstraintsIndicates the results of processing the corresponding 'request' entry in the batch or transaction being responded to or what the results of an operation where when returning history.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.response.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.response.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.response.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
status Σ 1..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.response.status
Status response code (text optional)
DefinitionData type ConstraintsThe status code returned by processing this entry. The status SHALL start with a 3 digit HTTP code (e.g. 404) and may contain the standard HTTP description associated with the status code.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
location Σ 0..1 uri There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.response.location
The location (if the operation returns a location)
DefinitionData type ConstraintsThe location header created by processing this operation, populated if the operation returns a location.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
etag Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.response.etag
The Etag for the resource (if relevant)
DefinitionCommentsThe Etag for the resource, if the operation for the entry produced a versioned resource (see Resource Metadata and Versioning and Managing Resource Contention).
Data type ConstraintsEtags match the Resource.meta.versionId. The ETag has to match the version id in the header if a resource is included.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
lastModified Σ 0..1 instant There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.response.lastModified
Server's date time modified
DefinitionCommentsThe date/time that the resource was modified on the server.
Data type ConstraintsThis has to match the same time in the meta header (meta.lastUpdated) if a resource is included.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
outcome Σ 0..1 Resource There are no (further) constraints on this elementElement idShort descriptionBundle.entry:patient.response.outcome
OperationOutcome with hints and warnings (for batch/transaction)
DefinitionCommentsAn OperationOutcome containing hints and warnings produced as part of processing this entry in a batch or transaction.
Data typeFor a POST/PUT operation, this is the equivalent outcome that would be returned for prefer = operationoutcome - except that the resource is always returned whether or not the outcome is returned.
This outcome is not used for error responses in batch/transaction, only for hints and warnings. In a batch operation, the error will be in Bundle.entry.response, and for transaction, there will be a single OperationOutcome instead of a bundle in the case of an error.
facility S Σ I 1..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility
Entry in the bundle - will have a resource or information
DefinitionData type ConstraintsAn entry in a bundle resource - will either contain a resource or information about a resource (transactions and history only).
- bdl-5: must be a resource unless there's a request or response
resource.exists() or request.exists() or response.exists()
- bdl-8: fullUrl cannot be a version specific reference
fullUrl.contains('/_history/').not()
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
link Σ 0..* see (link) There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.link
Links related to this entry
DefinitionConstraintsA series of links that provide context to this entry.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
fullUrl Σ 0..1 uri There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.fullUrl
URI for resource (Absolute URL server address or URI for UUID/OID)
DefinitionCommentsThe Absolute URL for the resource. The fullUrl SHALL NOT disagree with the id in the resource - i.e. if the fullUrl is not a urn:uuid, the URL shall be version-independent URL consistent with the Resource.id. The fullUrl is a version independent reference to the resource. The fullUrl element SHALL have a value except that:
- fullUrl can be empty on a POST (although it does not need to when specifying a temporary id for reference in the bundle)
- Results from operations might involve resources that are not identified.
Data type ConstraintsfullUrl might not be unique in the context of a resource. Note that since FHIR resources do not need to be served through the FHIR API, the fullURL might be a URN or an absolute URL that does not end with the logical id of the resource (Resource.id). However, but if the fullUrl does look like a RESTful server URL (e.g. meets the regex, then the 'id' portion of the fullUrl SHALL end with the Resource.id.
Note that the fullUrl is not the same as the canonical URL - it's an absolute url for an endpoint serving the resource (these will happen to have the same value on the canonical server for the resource with the canonical URL).
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
resource I 0..1 LRAPASOrganization Element id Short descriptionBundle.entry:facility.resource
A grouping of people or organizations with a common purpose
DefinitionData type ConstraintsA formally or informally recognized grouping of people or organizations formed for the purpose of achieving some form of collective action. Includes companies, institutions, corporations, departments, community groups, healthcare practice groups, payer/insurer, etc.
Mappings- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
contained.contained.empty()
- dom-3: 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: 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: If a resource is contained in another resource, it SHALL NOT have a security label
contained.meta.security.empty()
- dom-6: A resource should have narrative for robust management
text.`div`.exists()
- org-1: The organization SHALL at least have a name or an identifier, and possibly more than one
(identifier.count() + name.count()) > 0
- rim: Entity. Role, or Act
- v2: (also see master files messages)
- rim: Organization(classCode=ORG, determinerCode=INST)
- servd: Organization
search Σ I 0..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.search
Search related information
DefinitionData type ConstraintsInformation about the search process that lead to the creation of this entry.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.search.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.search.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.search.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
mode Σ 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.search.mode
match | include | outcome - why this is in the result set
DefinitionCommentsWhy this entry is in the result set - whether it's included as a match or because of an _include requirement, or to convey information or warning information about the search process.
Data type BindingThere is only one mode. In some corner cases, a resource may be included because it is both a match and an include. In these circumstances, 'match' takes precedence.
SearchEntryMode (required)ConstraintsWhy an entry is in the result set - whether it's included as a match or because of an _include requirement, or to convey information or warning information about the search process.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
score Σ 0..1 decimal There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.search.score
Search ranking (between 0 and 1)
DefinitionCommentsWhen searching, the server's search ranking score for the entry.
Data type ConstraintsServers are not required to return a ranking score. 1 is most relevant, and 0 is least relevant. Often, search results are sorted by score, but the client may specify a different sort order.
See Patient Match for the EMPI search which relates to this element.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
request Σ I 0..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.request
Additional execution information (transaction/batch/history)
DefinitionData type ConstraintsAdditional information about how this entry should be processed as part of a transaction or batch. For history, it shows how the entry was processed to create the version contained in the entry.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.request.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.request.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.request.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
method Σ 1..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.request.method
GET | HEAD | POST | PUT | DELETE | PATCH
DefinitionData type BindingIn a transaction or batch, this is the HTTP action to be executed for this entry. In a history bundle, this indicates the HTTP action that occurred.
HTTPVerb (required)ConstraintsHTTP verbs (in the HTTP command line). See HTTP rfc for details.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
url Σ 1..1 uri There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.request.url
URL for HTTP equivalent of this entry
DefinitionCommentsThe URL for this entry, relative to the root (the address to which the request is posted).
Data type ConstraintsE.g. for a Patient Create, the method would be "POST" and the URL would be "Patient". For a Patient Update, the method would be PUT and the URL would be "Patient/[id]".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifNoneMatch Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.request.ifNoneMatch
For managing cache currency
DefinitionData type ConstraintsIf the ETag values match, return a 304 Not Modified status. See the API documentation for "Conditional Read".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifModifiedSince Σ 0..1 instant There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.request.ifModifiedSince
For managing cache currency
DefinitionData type ConstraintsOnly perform the operation if the last updated date matches. See the API documentation for "Conditional Read".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifMatch Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.request.ifMatch
For managing update contention
DefinitionData type ConstraintsOnly perform the operation if the Etag value matches. For more information, see the API section "Managing Resource Contention".
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ifNoneExist Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.request.ifNoneExist
For conditional creates
DefinitionData type ConstraintsInstruct the server not to perform the create if a specified resource already exists. For further information, see the API documentation for "Conditional Create". This is just the query portion of the URL - what follows the "?" (not including the "?").
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
response Σ I 0..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.response
Results of execution (transaction/batch/history)
DefinitionData type ConstraintsIndicates the results of processing the corresponding 'request' entry in the batch or transaction being responded to or what the results of an operation where when returning history.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.response.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.response.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.response.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
status Σ 1..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.response.status
Status response code (text optional)
DefinitionData type ConstraintsThe status code returned by processing this entry. The status SHALL start with a 3 digit HTTP code (e.g. 404) and may contain the standard HTTP description associated with the status code.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
location Σ 0..1 uri There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.response.location
The location (if the operation returns a location)
DefinitionData type ConstraintsThe location header created by processing this operation, populated if the operation returns a location.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
etag Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.response.etag
The Etag for the resource (if relevant)
DefinitionCommentsThe Etag for the resource, if the operation for the entry produced a versioned resource (see Resource Metadata and Versioning and Managing Resource Contention).
Data type ConstraintsEtags match the Resource.meta.versionId. The ETag has to match the version id in the header if a resource is included.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
lastModified Σ 0..1 instant There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.response.lastModified
Server's date time modified
DefinitionCommentsThe date/time that the resource was modified on the server.
Data type ConstraintsThis has to match the same time in the meta header (meta.lastUpdated) if a resource is included.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
outcome Σ 0..1 Resource There are no (further) constraints on this elementElement idShort descriptionBundle.entry:facility.response.outcome
OperationOutcome with hints and warnings (for batch/transaction)
DefinitionCommentsAn OperationOutcome containing hints and warnings produced as part of processing this entry in a batch or transaction.
Data typeFor a POST/PUT operation, this is the equivalent outcome that would be returned for prefer = operationoutcome - except that the resource is always returned whether or not the outcome is returned.
This outcome is not used for error responses in batch/transaction, only for hints and warnings. In a batch operation, the error will be in Bundle.entry.response, and for transaction, there will be a single OperationOutcome instead of a bundle in the case of an error.
signature Σ 0..1 Signature There are no (further) constraints on this elementElement idShort descriptionBundle.signature
Digital Signature
DefinitionRequirementsDigital Signature - base64 encoded. XML-DSig or a JWT.
CommentsA Signature holds an electronic representation of a signature and its supporting context in a FHIR accessible form. The signature may either be a cryptographic type (XML DigSig or a JWS), which is able to provide non-repudiation proof, or it may be a graphical image that represents a signature or a signature process. This element allows capturing signatures on documents, messages, transactions or even search responses, to support content-authentication, non-repudiation or other business cases. This is primarily relevant where the bundle may travel through multiple hops or via other mechanisms where HTTPS non-repudiation is insufficient.
Data type ConstraintsThe signature could be created by the "author" of the bundle or by the originating device. Requirements around inclusion of a signature, verification of signatures and treatment of signed/non-signed bundles is implementation-environment specific.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- bdl-1: total only when a search or history
-
PAS Request MessageHeader
Simplifier link for the profile: Request MessageHeader (PAS-LRA)
Identifies the PAS request and links to the primary resource being acted upon. It binds to a value set with three event codes: "Add Patient to Provider Panel," where a provider adds a patient to their panel; "Remove Patient from Provider Panel," where a provider removes a patient from their panel; and "Querying MRP Status," which retrieves the Most Responsible Provider (MRP) status for a patient.
LRAPASMessageHeaderRequest (MessageHeader) I MessageHeader Element id Short descriptionMessageHeader
PAS Request MessageHeader
DefinitionData type ConstraintsThe header for a message exchange that is either requesting or responding to an action. The reference(s) that are the subject of the action as well as other information related to the action are typically transmitted in a bundle in which the MessageHeader resource instance is the first resource in the bundle.
Mappings- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
contained.contained.empty()
- dom-3: 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: 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: If a resource is contained in another resource, it SHALL NOT have a security label
contained.meta.security.empty()
- dom-6: A resource should have narrative for robust management
text.`div`.exists()
- rim: Entity. Role, or Act
- v2: MSH / MSA / ERR
- rim: Message
id Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionMessageHeader.id
Logical id of this artifact
DefinitionCommentsThe logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
Data typeThe only time that a resource does not have an id is when it is being submitted to the server using a create operation.
meta Σ 0..1 Meta There are no (further) constraints on this elementElement idShort descriptionMessageHeader.meta
Metadata about the resource
DefinitionData type ConstraintsThe metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
implicitRules Σ ?! 0..1 uri There are no (further) constraints on this elementElement idShort descriptionMessageHeader.implicitRules
A set of rules under which this content was created
DefinitionCommentsA reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.
Data type ConstraintsAsserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
language 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionMessageHeader.language
Language of the resource content
DefinitionCommentsThe base language in which the resource is written.
Data type BindingLanguage is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).
CommonLanguages (preferred)ConstraintsA human language.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
text 0..1 Narrative There are no (further) constraints on this elementElement idShort descriptionMessageHeader.text
Text summary of the resource, for human interpretation
Alternate namesnarrative, html, xhtml, display
DefinitionCommentsA human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.
Data type ConstraintsContained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: Act.text?
contained 0..* Resource There are no (further) constraints on this elementElement idShort descriptionMessageHeader.contained
Contained, inline Resources
Alternate namesinline resources, anonymous resources, contained resources
DefinitionCommentsThese resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.
Data type MappingsThis should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.
- rim: N/A
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionMessageHeader.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
modifierExtension ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionMessageHeader.modifierExtension
Extensions that cannot be ignored
Alternate namesextensions, user content
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
event[x] S Σ 1..1 Binding Element id Short descriptionMessageHeader.event[x]
Code for the event this message represents or link to event definition
DefinitionRequirementsCode that identifies the event this message represents and connects it with its definition. Events defined as part of the FHIR specification have the system value "http://terminology.hl7.org/CodeSystem/message-events". Alternatively uri to the EventDefinition.
CommentsDrives the behavior associated with this message.
BindingThe time of the event will be found in the focus resource. The time of the message will be found in Bundle.timestamp.
PASEventValueSet (required)ConstraintsOne of the message events defined as part of this version of FHIR.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.what[x]
- v2: MSH-9.2
- rim: ./payload[classCode="CACT" and moodCode="EVN" and isNormalAct()]/code[isNormalDatatype()]/code
eventCoding Coding Data type destination Σ 0..* BackboneElement There are no (further) constraints on this elementElement idShort descriptionMessageHeader.destination
Message destination application(s)
DefinitionRequirementsThe destination application which the message is intended for.
CommentsIndicates where message is to be sent for routing purposes. Allows verification of "am I the intended recipient".
Data type ConstraintsThere SHOULD be at least one destination, but in some circumstances, the source system is unaware of any particular destination system.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.subject[x]
- rim: ./communicationFunction[typeCode="RCV"]
- w5: FiveWs.subject
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionMessageHeader.destination.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionMessageHeader.destination.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionMessageHeader.destination.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
name Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionMessageHeader.destination.name
Name of system
DefinitionRequirementsHuman-readable name for the target system.
Data type ConstraintsMay be used for routing of response and/or to support audit.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: MSH-5
- rim: unique(./entity[determinerCode="INST" and (classCode=("DEV", "PSN", "ORG"]/name[type='ST' and isNormalDatatype()])
target Σ 0..1 Reference(Device) There are no (further) constraints on this elementElement idShort descriptionMessageHeader.destination.target
Particular delivery destination within the destination
DefinitionRequirementsIdentifies the target end system in situations where the initial message transmission is to an intermediary system.
Data type ConstraintsSupports multi-hop routing.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: unique(./entity[determinerCode="INST" and (classCode=("DEV", "PSN", "ORG"]
endpoint Σ 1..1 url There are no (further) constraints on this elementElement idShort descriptionMessageHeader.destination.endpoint
Actual destination address or id
DefinitionRequirementsIndicates where the message should be routed to.
CommentsIdentifies where to route the message.
Data type ConstraintsThe id may be a non-resolvable URI for systems that do not use standard network-based addresses.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: MSH-25 (or MSH-6)
- rim: ./telecom
receiver Σ 0..1 Reference(Practitioner | PractitionerRole | Organization) There are no (further) constraints on this elementElement idShort descriptionMessageHeader.destination.receiver
Intended "real-world" recipient for the data
DefinitionRequirementsAllows data conveyed by a message to be addressed to a particular person or department when routing to a specific application isn't sufficient.
Data typeAllows routing beyond just the application level.
Reference(Practitioner | PractitionerRole | Organization)
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.subject[x]
- v2: PRT-5:PRT-4='WAYR' / PRT-8:PRT-4='WAYR'
- rim: Not directly supported. Could be shared using attentionLine.value with an appropriate keyWordText
- w5: FiveWs.subject
sender Σ 0..1 Reference(Practitioner | PractitionerRole | Organization) There are no (further) constraints on this elementElement idShort descriptionMessageHeader.sender
Real world sender of the message
DefinitionRequirementsIdentifies the sending system to allow the use of a trust relationship.
CommentsAllows routing beyond just the application level.
Data typeUse case is for where a (trusted) sending system is responsible for multiple organizations, and therefore cannot differentiate based on source endpoint / authentication alone.
Reference(Practitioner | PractitionerRole | Organization)
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.subject[x]
- v2: PRT-5:PRT-4='WAYR' / PRT-8:PRT-4='WAYR'
- rim: Not directly supported. Could be shared using attentionLine.value with an appropriate keyWordText
- w5: FiveWs.subject
enterer Σ 0..1 Reference(Practitioner | PractitionerRole) There are no (further) constraints on this elementElement idShort descriptionMessageHeader.enterer
The source of the data entry
DefinitionRequirementsThe person or device that performed the data entry leading to this message. When there is more than one candidate, pick the most proximal to the message. Can provide other enterers in extensions.
CommentsNeed to know for audit/traceback requirements and possibly for authorization.
Data typeUsually only for the request but can be used in a response.
Reference(Practitioner | PractitionerRole)
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.author
- v2: EVN-5 / ORC-10 / PRT-5:PRT-4='EP' / ROL where ROL.3 is EP or ORC.10
- rim: unique(./controlAct[classCode="CACT" and classCode="EVN" and isNormalAct()]/participation[typeCode="ENT" and isNormalParticipation]/role[classCode="ASSIGNED" and isNormalRole()]/player[isNormalEntity() and classCode=("DEV", "PSN") and determinerCode="INST"])
author Σ 0..1 Reference(Practitioner | PractitionerRole) There are no (further) constraints on this elementElement idShort descriptionMessageHeader.author
The source of the decision
DefinitionRequirementsThe logical author of the message - the person or device that decided the described event should happen. When there is more than one candidate, pick the most proximal to the MessageHeader. Can provide other authors in extensions.
CommentsNeed to know for audit/traceback requirements and possibly for authorization.
Data typeUsually only for the request but can be used in a response.
Reference(Practitioner | PractitionerRole)
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.author
- v2: ORC-19 / PRT-5:PRT-4='AUT' / ROL where ROL.3 is IP or ORC.12
- rim: unique(./controlAct[classCode="CACT" and classCode="EVN" and isNormalAct()]/participation[isHighest(priorityCode) and typeCode="AUT" and isNormalParticipation]/role[classCode="ASSIGNED" and isNormalRole()]/player[isNormalEntity() and classCode=("DEV", "PSN") and determinerCode="INST"])
source Σ 1..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionMessageHeader.source
Message source application
DefinitionRequirementsThe source application from which this message originated.
Data type ConstraintsAllows replies, supports audit.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.actor
- rim: unique(./communicationFunction[typeCode="SND"])
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionMessageHeader.source.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionMessageHeader.source.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionMessageHeader.source.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
name Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionMessageHeader.source.name
Name of system
DefinitionRequirementsHuman-readable name for the source system.
Data type ConstraintsMay be used to support audit.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: MSH-3
- rim: unique(./entity[determinerCode="INST" and classCode="DEV"]/name[type='ST' and isNormalDatatype()])
software Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionMessageHeader.source.software
Name of software running the system
DefinitionRequirementsMay include configuration or other information useful in debugging.
Data type ConstraintsSupports audit and possibly interface engine behavior.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: SFT-3 ( +SFT-1)
- rim: unique(./entity[determinerCode="INST" and classCode="DEV"]/softwareName[isNormalDatatype()])
version Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionMessageHeader.source.version
Version of software running
DefinitionRequirementsCan convey versions of multiple systems in situations where a message passes through multiple hands.
Data type ConstraintsSupports audit and possibly interface engine behavior.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: SFT-2
- rim: (Not supported)
contact Σ 0..1 ContactPoint There are no (further) constraints on this elementElement idShort descriptionMessageHeader.source.contact
Human contact for problems
DefinitionRequirementsAn e-mail, phone, website or other contact point to use to resolve issues with message communications.
Data type ConstraintsAllows escalation of technical issues.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: (MSH-22?)
- rim: unique(./entity[determinerCode="INST" and classCode="DEV"]/scopesRole[normalRole() and classCode="CON" and layer[classCode="PSN"]/telecom[isNormalDatatype()])
endpoint Σ 1..1 url There are no (further) constraints on this elementElement idShort descriptionMessageHeader.source.endpoint
Actual message source address or id
DefinitionRequirementsIdentifies the routing target to send acknowledgements to.
CommentsIdentifies where to send responses, may influence security permissions.
Data type ConstraintsThe id may be a non-resolvable URI for systems that do not use standard network-based addresses.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: MSH-24
- rim: ./telecom[isNormalDatatype()]
responsible Σ 0..1 Reference(Practitioner | PractitionerRole | Organization) There are no (further) constraints on this elementElement idShort descriptionMessageHeader.responsible
Final responsibility for event
DefinitionRequirementsThe person or organization that accepts overall responsibility for the contents of the message. The implication is that the message event happened under the policies of the responsible party.
CommentsNeed to know for audit/traceback requirements and possibly for authorization.
Data typeUsually only for the request but can be used in a response.
Reference(Practitioner | PractitionerRole | Organization)
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.witness
- v2: ORC-12 / PRT-5:PRT-4='OP' / PRT-8:PRT-4='OP' / ROL where ROL.3 is RO or ORC.11
- rim: unique(./controlAct[classCode="CACT" and classCode="EVN" and isNormalAct()]/participation[isHighest(priorityCode) and typeCode="RESP" and isNormalParticipation]/role[classCode="ASSIGNED" and isNormalRole()]/player[isNormalEntity() and classCode="PSN" and determinerCode="INST"] or ./controlAct[classCode="CACT" and classCode="EVN" and isNormalAct()]/participation[isHighest(priorityCode) and typeCode="RESP" and isNormalParticipation]/role[classCode="ASSIGNED" and isNormalRole()]/scoper[isNormalEntity() and classCode="ORG" and determinerCode="INST"])
reason Σ 0..1 CodeableConcept There are no (further) constraints on this elementElement idShort descriptionMessageHeader.reason
Cause of event
DefinitionRequirementsCoded indication of the cause for the event - indicates a reason for the occurrence of the event that is a focus of this message.
Data type BindingNeed to be able to track why resources are being changed and report in the audit log/history of the resource. May affect authorization.
ExampleMessageReasonCodes (example)ConstraintsReason for event occurrence.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.why[x]
- v2: EVN.4 / ORC.16 / OBR-31-reason for study / BPO-13-BP indication for use / RXO-20-indication / RXE-27-give indication / RXD-21-indication / RXG-22-indication / RXA-19-indication
- rim: unique(./controlAct[classCode="CACT" and classCode="EVN" and isNormalAct()]/reasonCode[isNormalDatatype()])
response Σ 0..1 BackboneElement There are no (further) constraints on this elementElement idShort descriptionMessageHeader.response
If this is a reply to prior message
DefinitionData type ConstraintsInformation about the message that this message is a response to. Only present if this message is a response.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: MSA
- rim: ./conveyedAcknowledgement
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionMessageHeader.response.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionMessageHeader.response.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionMessageHeader.response.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
identifier Σ 1..1 id There are no (further) constraints on this elementElement idShort descriptionMessageHeader.response.identifier
Id of original message
DefinitionRequirementsThe MessageHeader.id of the message to which this message is a response.
Data type ConstraintsAllows receiver to know what message is being responded to.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: MSA-2
- rim: ./acknowledges.id[isNormalDatatype()]
code Σ 1..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionMessageHeader.response.code
ok | transient-error | fatal-error
DefinitionRequirementsCode that identifies the type of response to the message - whether it was successful or not, and whether it should be resent or not.
CommentsAllows the sender of the acknowledge message to know if the request was successful or if action is needed.
Data type BindingThis is a generic response to the request message. Specific data for the response will be found in MessageHeader.focus.
ResponseType (required)ConstraintsThe kind of response to a message.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: MSA-1
- rim: ./typeCode[isNormalDatatype()]
details Σ 0..1 Reference(OperationOutcome) There are no (further) constraints on this elementElement idShort descriptionMessageHeader.response.details
Specific list of hints/warnings/errors
DefinitionRequirementsFull details of any issues found in the message.
CommentsAllows the sender of the message to determine what the specific issues are.
Data type ConstraintsThis SHALL be contained in the bundle. If any of the issues are errors, the response code SHALL be an error.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: ERR
- rim: AcknowledgementDetail or Observation[classCode="ALRT" and moodCode="EVN"]
focus S Σ 0..* Reference(LRAPASGroup) Element id Short descriptionMessageHeader.focus
The main resource for this PAS request
DefinitionRequirementsThe actual data of the message - a reference to the root/focus class of the event.
CommentsEvery message event is about actual data, a single resource, that is identified in the definition of the event, and perhaps some or all linked resources.
Data type ConstraintsThe data is defined where the transaction type is defined. The transaction data is always included in the bundle that is the full message. Only the root resource is specified. The resources it references should be contained in the bundle but are not also listed here. Multiple repetitions are allowed to cater for merges and other situations with multiple focal targets.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: unique(./controlAct[classCode="CACT" and classCode="EVN" and isNormalAct()]/participation[typeCode="SUBJ" and isNormalParticipation]/role or ./controlAct[classCode="CACT" and classCode="EVN" and isNormalAct()]/outboundRelationship[typeCode="SBJ" and isNormalActRelatoinship]/target)
definition Σ 0..1 canonical(MessageDefinition) There are no (further) constraints on this elementElement idShort descriptionMessageHeader.definition
Link to the definition for this message
DefinitionRequirementsPermanent link to the MessageDefinition for this message.
Data type ConstraintsAllows sender to define the expected contents of the message.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: Not directly supported.
- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
-
PAS Request Group
Simplifier link for the profile: Group (PAS-LRA)
The Group is used to add, remove and query a Patient within a provider's roster or panel of patients at a given facility.
LRAPASGroup (Group) I Group There are no (further) constraints on this elementElement idShort descriptionGroup
Group of multiple entities
DefinitionCommentsRepresents a defined collection of entities that may be discussed or acted upon collectively but which are not expected to act collectively, and are not formally or legally recognized; i.e. a collection of entities that isn't an Organization.
Data type ConstraintsIf both Group.characteristic and Group.member are present, then the members are the individuals who were found who met the characteristic. It's possible that there might be other candidate members who meet the characteristic and aren't (yet) in the list. All members SHALL have the listed characteristics.
Mappings- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
contained.contained.empty()
- dom-3: 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: 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: If a resource is contained in another resource, it SHALL NOT have a security label
contained.meta.security.empty()
- dom-6: A resource should have narrative for robust management
text.`div`.exists()
- grp-1: Can only have members if group is "actual"
member.empty() or (actual = true)
- rim: Entity. Role, or Act
- rim: Entity[determinerCode="GRP" or determinerCode="GRP_KIND"]
id Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionGroup.id
Logical id of this artifact
DefinitionCommentsThe logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
Data typeThe only time that a resource does not have an id is when it is being submitted to the server using a create operation.
meta Σ 0..1 Meta There are no (further) constraints on this elementElement idShort descriptionGroup.meta
Metadata about the resource
DefinitionData type ConstraintsThe metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
implicitRules Σ ?! 0..1 uri There are no (further) constraints on this elementElement idShort descriptionGroup.implicitRules
A set of rules under which this content was created
DefinitionCommentsA reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.
Data type ConstraintsAsserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
language 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionGroup.language
Language of the resource content
DefinitionCommentsThe base language in which the resource is written.
Data type BindingLanguage is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).
CommonLanguages (preferred)ConstraintsA human language.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
text 0..1 Narrative There are no (further) constraints on this elementElement idShort descriptionGroup.text
Text summary of the resource, for human interpretation
Alternate namesnarrative, html, xhtml, display
DefinitionCommentsA human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.
Data type ConstraintsContained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: Act.text?
contained 0..* Resource There are no (further) constraints on this elementElement idShort descriptionGroup.contained
Contained, inline Resources
Alternate namesinline resources, anonymous resources, contained resources
DefinitionCommentsThese resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.
Data type MappingsThis should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.
- rim: N/A
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionGroup.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
modifierExtension ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionGroup.modifierExtension
Extensions that cannot be ignored
Alternate namesextensions, user content
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
identifier Σ 0..* Identifier There are no (further) constraints on this elementElement idShort descriptionGroup.identifier
Unique id
DefinitionRequirementsA unique business identifier for this group.
Data type ConstraintsAllows the group to be referenced from external specifications.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.identifier
- rim: unique(./id[displayable="true" and scope="OBJ"])
active Σ 0..1 boolean There are no (further) constraints on this elementElement idShort descriptionGroup.active
Whether this group's record is in active use
DefinitionRequirementsIndicates whether the record for the group is available for use or is merely being retained for historical purposes.
Meaning when missingNeed to be able to mark a group record as not to be used because it was created in error or is otherwise no longer available (e.g. a herd that no longer exists).
Data type ConstraintsThis resource is generally assumed to be active if no value is provided for the active element
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.status
- rim: ./statusCode
type S Σ 1..1 codeBindingPattern Element id Short descriptionGroup.type
person | animal | practitioner | device | medication | substance
DefinitionRequirementsIdentifies the broad classification of the kind of resources the group includes.
CommentsIdentifies what type of resources the group is made up of.
Data type BindingGroup members SHALL be of the appropriate resource type (Patient for person or animal; or Practitioner, Device, Medication or Substance for the other types.).
GroupType (required)ConstraintsTypes of resources that are part of group.
Pattern- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
Mappingsperson
- w5: FiveWs.class
- rim: person: ./classCode="PSN" animal: ./classCode="ANM" device: ./classCode="DEV" medication: ./classCode="MMAT" and ./playedRole[isNormalRole() and classCode="THER"] food: ./classCode="FOOD"
actual Σ I 1..1 boolean There are no (further) constraints on this elementElement idShort descriptionGroup.actual
Descriptive or actual
DefinitionRequirementsIf true, indicates that the resource refers to a specific group of real individuals. If false, the group defines a set of intended individuals.
Data type ConstraintsThere are use-cases for groups that define specific collections of individuals, and other groups that define "types" of intended individuals. The requirements for both kinds of groups are similar, so we use a single resource, distinguished by this flag.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.class
- rim: true: ./determinerCode="GRP" false: ./determinerCode="GRP_KIND"
code Σ 0..1 CodeableConcept There are no (further) constraints on this elementElement idShort descriptionGroup.code
Kind of Group members
DefinitionCommentsProvides a specific type of resource the group includes; e.g. "cow", "syringe", etc.
Data type BindingThis would generally be omitted for Person resources.
(unbound) (example)ConstraintsKind of particular resource; e.g. cow, syringe, lake, etc.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.what[x]
- rim: ./code
name Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionGroup.name
Label for Group
DefinitionRequirementsA label assigned to the group for human identification and communication.
Data type ConstraintsUsed to identify the group in human communication.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: ./name[type="ST"]
quantity Σ 0..1 unsignedInt There are no (further) constraints on this elementElement idShort descriptionGroup.quantity
Number of members
DefinitionRequirementsA count of the number of resource instances that are part of the group.
CommentsGroup size is a common defining characteristic.
Data type ConstraintsNote that the quantity may be less than the number of members if some of the members are not active.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: ./quantity
managingEntity S Σ 1..1 Reference(LRAPASPractitioner) Element id Short descriptionGroup.managingEntity
The physician that owns the panel
DefinitionCommentsEntity responsible for defining and maintaining Group characteristics and/or registered members.
Data typeThis does not strictly align with ownership of a herd or flock, but may suffice to represent that relationship in simple cases. More complex cases will require an extension.
Allowed aggregation: referenced
Constraints- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
characteristic 0..* BackboneElement There are no (further) constraints on this elementElement idShort descriptionGroup.characteristic
Include / Exclude group members by Trait
DefinitionRequirementsIdentifies traits whose presence r absence is shared by members of the group.
CommentsNeeds to be a generic mechanism for identifying what individuals can be part of a group.
Data type ConstraintsAll the identified characteristics must be true for an entity to a member of the group.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: ./playedRole[isNormalRole()]/participation[isNormalParticipation() and typeCode="SBJ"]/act[isNormalAct and classCode="OBS" and moodCode="EVN"]
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionGroup.characteristic.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionGroup.characteristic.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionGroup.characteristic.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
code 1..1 CodeableConcept There are no (further) constraints on this elementElement idShort descriptionGroup.characteristic.code
Kind of characteristic
DefinitionRequirementsA code that identifies the kind of trait being asserted.
Data type BindingNeed a formal way of identifying the characteristic being described.
(unbound) (example)ConstraintsList of characteristics used to describe group members; e.g. gender, age, owner, location, etc.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: ./code
value[x] 1..1 There are no (further) constraints on this elementElement idShort descriptionGroup.characteristic.value[x]
Value held by characteristic
DefinitionRequirementsThe value of the trait that holds (or does not hold - see 'exclude') for members of the group.
CommentsThe value of the characteristic is what determines group membership.
BindingFor Range, it means members of the group have a value that falls somewhere within the specified range.
(unbound) (example)ConstraintsValue of descriptive member characteristic; e.g. red, male, pneumonia, Caucasian, etc.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: ./value
valueCodeableConcept CodeableConcept There are no (further) constraints on this elementData typevalueBoolean boolean There are no (further) constraints on this elementData typevalueQuantity Quantity There are no (further) constraints on this elementData typevalueRange Range There are no (further) constraints on this elementData typevalueReference Reference() There are no (further) constraints on this elementData typeexclude 1..1 boolean There are no (further) constraints on this elementElement idShort descriptionGroup.characteristic.exclude
Group includes or excludes
DefinitionRequirementsIf true, indicates the characteristic is one that is NOT held by members of the group.
CommentsSometimes group membership is determined by characteristics not possessed.
Data type ConstraintsThis is labeled as "Is Modifier" because applications cannot wrongly include excluded members as included or vice versa.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: ./valueNegationInd
period 0..1 Period There are no (further) constraints on this elementElement idShort descriptionGroup.characteristic.period
Period over which characteristic is tested
DefinitionData type ConstraintsThe period over which the characteristic is tested; e.g. the patient had an operation during the month of June.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
member I 1..* BackboneElement Element id Short descriptionGroup.member
The members of the panel to be acted upon. Note: current implementation only supports processing of one patient (member)
DefinitionRequirementsIdentifies the resource instances that are members of the group.
Data type ConstraintsOften the only thing of interest about a group is "who's in it".
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: ./scopedRole[isNormalRole() and classCode="MBR"]/player
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionGroup.member.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionGroup.member.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionGroup.member.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
entity S 1..1 Reference(LRAPASPatient) Element id Short descriptionGroup.member.entity
The patient as a member of the panel
DefinitionData typeA reference to the entity that is a member of the group. Must be consistent with Group.type. If the entity is another group, then the type must be the same.
Allowed aggregation: referenced
Constraints- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
period 0..1 Period There are no (further) constraints on this elementElement idShort descriptionGroup.member.period
Period member belonged to the group
DefinitionRequirementsThe period that the member was in the group, if known.
Meaning when missingNeed to track who was in a group at a particular time.
Data type ConstraintsThe member is in the group at this time
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
inactive 0..1 boolean There are no (further) constraints on this elementElement idShort descriptionGroup.member.inactive
If member is no longer in group
DefinitionRequirementsA flag to indicate that the member is no longer in the group, but previously may have been a member.
Meaning when missingSometimes you don't know when someone stopped being in a group, but not when.
Data type ConstraintsMembers are considered active unless explicitly specified otherwise
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
-
PAS Patient
Simplifier link for the profile: Patient (PAS-LRA)
The Patient is used to identify the individual to add, remove or query within a provider's roster or panel of patients at a given facility.
LRAPASPatient (Patient) I Patient There are no (further) constraints on this elementElement idShort descriptionPatient
Information about an individual or animal receiving health care services
Alternate namesSubjectOfCare Client Resident
DefinitionData type ConstraintsDemographics and other administrative information about an individual or animal receiving care or other health-related services.
Mappings- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
contained.contained.empty()
- dom-3: 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: 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: If a resource is contained in another resource, it SHALL NOT have a security label
contained.meta.security.empty()
- dom-6: A resource should have narrative for robust management
text.`div`.exists()
- rim: Entity. Role, or Act
- rim: Patient[classCode=PAT]
- cda: ClinicalDocument.recordTarget.patientRole
id Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionPatient.id
Logical id of this artifact
DefinitionCommentsThe logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
Data typeThe only time that a resource does not have an id is when it is being submitted to the server using a create operation.
meta Σ 0..1 Meta There are no (further) constraints on this elementElement idShort descriptionPatient.meta
Metadata about the resource
DefinitionData type ConstraintsThe metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
implicitRules Σ ?! 0..1 uri There are no (further) constraints on this elementElement idShort descriptionPatient.implicitRules
A set of rules under which this content was created
DefinitionCommentsA reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.
Data type ConstraintsAsserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
language 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionPatient.language
Language of the resource content
DefinitionCommentsThe base language in which the resource is written.
Data type BindingLanguage is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).
CommonLanguages (preferred)ConstraintsA human language.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
text 0..1 Narrative There are no (further) constraints on this elementElement idShort descriptionPatient.text
Text summary of the resource, for human interpretation
Alternate namesnarrative, html, xhtml, display
DefinitionCommentsA human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.
Data type ConstraintsContained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: Act.text?
contained 0..* Resource There are no (further) constraints on this elementElement idShort descriptionPatient.contained
Contained, inline Resources
Alternate namesinline resources, anonymous resources, contained resources
DefinitionCommentsThese resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.
Data type MappingsThis should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.
- rim: N/A
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
modifierExtension ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.modifierExtension
Extensions that cannot be ignored
Alternate namesextensions, user content
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
identifier S Σ 1..* Identifier Element id Short descriptionPatient.identifier
An identifier for this patient
DefinitionRequirementsAn identifier for this patient.
CommentsPatients are almost always assigned specific numerical identifiers.
Data type Sliced:PHN must be supported as the identifier system, other identifiers can be supplied but only BC PHN for the patient is used
Unordered, Open, by $this(Pattern)
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.identifier
- v2: PID-3
- rim: id
- cda: .id
(All Slices) There are no (further) constraints on this elementid 0..1 string There are no (further) constraints on this elementElement idShort descriptionPatient.identifier.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.identifier.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
use Σ ?! 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionPatient.identifier.use
usual | official | temp | secondary | old (If known)
DefinitionRequirementsThe purpose of this identifier.
CommentsAllows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.
Data type BindingApplications can assume that an identifier is permanent unless it explicitly says that it is temporary.
IdentifierUse (required)ConstraintsIdentifies the purpose for this identifier, if known .
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: N/A
- rim: Role.code or implied by context
type Σ 0..1 CodeableConceptBinding There are no (further) constraints on this elementElement idShort descriptionPatient.identifier.type
Description of identifier
DefinitionRequirementsA coded type for the identifier that can be used to determine which identifier to use for a specific purpose.
CommentsAllows users to make use of identifiers when the identifier system is not known.
Data type BindingThis element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type.
Identifier Type Codes (extensible)ConstraintsA coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: CX.5
- rim: Role.code or implied by context
system S Σ 1..1 uri There are no (further) constraints on this elementElement idShort descriptionPatient.identifier.system
The namespace for the identifier value
DefinitionRequirementsEstablishes the namespace for the value - that is, a URL that describes a set values that are unique.
CommentsThere are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.
Data type ConstraintsIdentifier.system is always case sensitive.
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
Generalhttp://www.acme.com/identifiers/patient
Mappings- v2: CX.4 / EI-2-4
- rim: II.root or Role.id.root
- servd: ./IdentifierType
value S Σ 1..1 string There are no (further) constraints on this elementElement idShort descriptionPatient.identifier.value
The value that is unique
DefinitionCommentsThe portion of the identifier typically relevant to the user and which is unique within the context of the system.
Data type ConstraintsIf the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
General123456
Mappings- v2: CX.1 / EI.1
- rim: II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
- servd: ./Value
period Σ 0..1 Period There are no (further) constraints on this elementElement idShort descriptionPatient.identifier.period
Time period when id is/was valid for use
DefinitionData type ConstraintsTime period during which identifier is/was valid for use.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: CX.7 + CX.8
- rim: Role.effectiveTime or implied by context
- servd: ./StartDate and ./EndDate
assigner Σ 0..1 Reference(Organization) There are no (further) constraints on this elementElement idShort descriptionPatient.identifier.assigner
Organization that issued id (may be just text)
DefinitionCommentsOrganization that issued/manages the identifier.
Data type ConstraintsThe Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: CX.4 / (CX.4,CX.9,CX.10)
- rim: II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
- servd: ./IdentifierIssuingAuthority
PHN S Σ 1..* IdentifierPattern Element id Short descriptionPatient.identifier:PHN
An identifier for this patient
DefinitionRequirementsAn identifier for this patient.
Data type ConstraintsPatients are almost always assigned specific numerical identifiers.
Pattern- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
Mappings{ "system": "https://fhir.infoway-inforoute.ca/NamingSystem/ca-bc-patient-healthcare-id" }
- w5: FiveWs.identifier
- v2: PID-3
- rim: id
- cda: .id
active Σ ?! 0..1 boolean There are no (further) constraints on this elementElement idShort descriptionPatient.active
Whether this patient's record is in active use
DefinitionRequirementsWhether this patient record is in active use. Many systems use this property to mark as non-current patients, such as those that have not been seen for a period of time based on an organization's business rules.
It is often used to filter patient lists to exclude inactive patients
Deceased patients may also be marked as inactive for the same reasons, but may be active for some time after death.
CommentsNeed to be able to mark a patient record as not to be used because it was created in error.
Meaning when missingIf a record is inactive, and linked to an active record, then future patient/record updates should occur on the other patient.
Data type ConstraintsThis resource is generally assumed to be active if no value is provided for the active element
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.status
- rim: statusCode
- cda: n/a
name S Σ 1..* HumanName There are no (further) constraints on this elementElement idShort descriptionPatient.name
A name associated with the patient
DefinitionRequirementsA name associated with the individual.
CommentsNeed to be able to track the patient by multiple names. Examples are your official name and a partner name.
Data type ConstraintsA patient may have multiple names with different uses or applicable periods. For animals, the name is a "HumanName" in the sense that is assigned and used by humans and has the same patterns.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: PID-5, PID-9
- rim: name
- cda: .patient.name
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionPatient.name.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.name.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
use Σ ?! 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionPatient.name.use
usual | official | temp | nickname | anonymous | old | maiden
DefinitionRequirementsIdentifies the purpose for this name.
CommentsAllows the appropriate name for a particular context of use to be selected from among a set of names.
Data type BindingApplications can assume that a name is current unless it explicitly says that it is temporary or old.
NameUse (required)ConstraintsThe use of a human name.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: XPN.7, but often indicated by which field contains the name
- rim: unique(./use)
- servd: ./NamePurpose
text Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionPatient.name.text
Text representation of the full name
DefinitionRequirementsSpecifies the entire name as it should be displayed e.g. on an application UI. This may be provided instead of or as well as the specific parts.
CommentsA renderable, unencoded form.
Data type ConstraintsCan provide both a text representation and parts. Applications updating a name SHALL ensure that when both text and parts are present, no content is included in the text that isn't found in a part.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: implied by XPN.11
- rim: ./formatted
family S Σ 1..1 string There are no (further) constraints on this elementElement idShort descriptionPatient.name.family
Family name (often called 'Surname')
Alternate namessurname
DefinitionCommentsThe part of a name that links to the genealogy. In some cultures (e.g. Eritrea) the family name of a son is the first name of his father.
Data type ConstraintsFamily Name may be decomposed into specific parts using extensions (de, nl, es related cultures).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: XPN.1/FN.1
- rim: ./part[partType = FAM]
- servd: ./FamilyName
given S Σ 1..* string There are no (further) constraints on this elementElement idShort descriptionPatient.name.given
Given names (not always 'first'). Includes middle names
Alternate namesfirst name, middle name
DefinitionCommentsGiven name.
Data type ConstraintsIf only initials are recorded, they may be used in place of the full name parts. Initials may be separated into multiple given names but often aren't due to paractical limitations. This element is not called "first name" since given names do not always come first.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: XPN.2 + XPN.3
- rim: ./part[partType = GIV]
- servd: ./GivenNames
prefix Σ 0..* string There are no (further) constraints on this elementElement idShort descriptionPatient.name.prefix
Parts that come before the name
DefinitionData type ConstraintsPart of the name that is acquired as a title due to academic, legal, employment or nobility status, etc. and that appears at the start of the name.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: XPN.5
- rim: ./part[partType = PFX]
- servd: ./TitleCode
suffix Σ 0..* string There are no (further) constraints on this elementElement idShort descriptionPatient.name.suffix
Parts that come after the name
DefinitionData type ConstraintsPart of the name that is acquired as a title due to academic, legal, employment or nobility status, etc. and that appears at the end of the name.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: XPN/4
- rim: ./part[partType = SFX]
period Σ 0..1 Period There are no (further) constraints on this elementElement idShort descriptionPatient.name.period
Time period when name was/is in use
DefinitionRequirementsIndicates the period of time when this name was valid for the named person.
Data type ConstraintsAllows names to be placed in historical context.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: XPN.13 + XPN.14
- rim: ./usablePeriod[type="IVL<TS>"]
- servd: ./StartDate and ./EndDate
telecom Σ 0..* ContactPoint There are no (further) constraints on this elementElement idShort descriptionPatient.telecom
A contact detail for the individual
DefinitionRequirementsA contact detail (e.g. a telephone number or an email address) by which the individual may be contacted.
CommentsPeople have (primary) ways to contact them in some way such as phone, email.
Data type ConstraintsA Patient may have multiple ways to be contacted with different uses or applicable periods. May need to have options for contacting the person urgently and also to help with identification. The address might not go directly to the individual, but may reach another party that is able to proxy for the patient (i.e. home phone, or pet owner's phone).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: PID-13, PID-14, PID-40
- rim: telecom
- cda: .telecom
gender Σ 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionPatient.gender
male | female | other | unknown
DefinitionRequirementsAdministrative Gender - the gender that the patient is considered to have for administration and record keeping purposes.
CommentsNeeded for identification of the individual, in combination with (at least) name and birth date.
Data type BindingThe gender might not match the biological sex as determined by genetics or the individual's preferred identification. Note that for both humans and particularly animals, there are other legitimate possibilities than male and female, though the vast majority of systems and contexts only support male and female. Systems providing decision support or enforcing business rules should ideally do this on the basis of Observations dealing with the specific sex or gender aspect of interest (anatomical, chromosomal, social, etc.) However, because these observations are infrequently recorded, defaulting to the administrative gender is common practice. Where such defaulting occurs, rule enforcement should allow for the variation between administrative and biological, chromosomal and other gender aspects. For example, an alert about a hysterectomy on a male should be handled as a warning or overridable error, not a "hard" error. See the Patient Gender and Sex section for additional information about communicating patient gender and sex.
AdministrativeGender (required)ConstraintsThe gender of a person used for administrative purposes.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: PID-8
- rim: player[classCode=PSN|ANM and determinerCode=INSTANCE]/administrativeGender
- cda: .patient.administrativeGenderCode
birthDate S Σ I 1..1 date Element id Short descriptionPatient.birthDate
The date of birth for the individual
DefinitionRequirementsThe date of birth for the individual.
CommentsAge of the individual drives many clinical processes.
Data type ConstraintsAt least an estimated year should be provided as a guess if the real DOB is unknown There is a standard extension "patient-birthTime" available that should be used where Time is required (such as in maternity/infant care systems).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- FullDateRule: Dates need to be a full date - YYYY-MM-DD
$this.toString().length() = 10
- v2: PID-7
- rim: player[classCode=PSN|ANM and determinerCode=INSTANCE]/birthTime
- cda: .patient.birthTime
- loinc: 21112-8
deceased[x] Σ ?! 0..1 There are no (further) constraints on this elementElement idShort descriptionPatient.deceased[x]
Indicates if the individual is deceased or not
DefinitionRequirementsIndicates if the individual is deceased or not.
CommentsThe fact that a patient is deceased influences the clinical process. Also, in human communication and relation management it is necessary to know whether the person is alive.
ConstraintsIf there's no value in the instance, it means there is no statement on whether or not the individual is deceased. Most systems will interpret the absence of a value as a sign of the person being alive.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: PID-30 (bool) and PID-29 (datetime)
- rim: player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedInd, player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedTime
- cda: n/a
deceasedBoolean boolean There are no (further) constraints on this elementData typedeceasedDateTime dateTime There are no (further) constraints on this elementData typeaddress Σ 0..* Address There are no (further) constraints on this elementElement idShort descriptionPatient.address
An address for the individual
DefinitionRequirementsAn address for the individual.
CommentsMay need to keep track of patient addresses for contacting, billing or reporting requirements and also to help with identification.
Data type ConstraintsPatient may have multiple addresses with different uses or applicable periods.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: PID-11
- rim: addr
- cda: .addr
maritalStatus 0..1 CodeableConceptBinding There are no (further) constraints on this elementElement idShort descriptionPatient.maritalStatus
Marital (civil) status of a patient
DefinitionRequirementsThis field contains a patient's most recent marital (civil) status.
Data type BindingMost, if not all systems capture it.
Marital Status Codes (extensible)ConstraintsThe domestic partnership status of a person.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: PID-16
- rim: player[classCode=PSN]/maritalStatusCode
- cda: .patient.maritalStatusCode
multipleBirth[x] 0..1 There are no (further) constraints on this elementElement idShort descriptionPatient.multipleBirth[x]
Whether patient is part of a multiple birth
DefinitionRequirementsIndicates whether the patient is part of a multiple (boolean) or indicates the actual birth order (integer).
CommentsFor disambiguation of multiple-birth children, especially relevant where the care provider doesn't meet the patient, such as labs.
ConstraintsWhere the valueInteger is provided, the number is the birth number in the sequence. E.g. The middle birth in triplets would be valueInteger=2 and the third born would have valueInteger=3 If a boolean value was provided for this triplets example, then all 3 patient records would have valueBoolean=true (the ordering is not indicated).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: PID-24 (bool), PID-25 (integer)
- rim: player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthInd, player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthOrderNumber
- cda: n/a
multipleBirthBoolean boolean There are no (further) constraints on this elementData typemultipleBirthInteger integer There are no (further) constraints on this elementData typephoto 0..* Attachment There are no (further) constraints on this elementElement idShort descriptionPatient.photo
Image of the patient
DefinitionRequirementsImage of the patient.
CommentsMany EHR systems have the capability to capture an image of the patient. Fits with newer social media usage too.
Data type ConstraintsGuidelines:
- Use id photos, not clinical photos.
- Limit dimensions to thumbnail.
- Keep byte count low to ease resource updates.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: OBX-5 - needs a profile
- rim: player[classCode=PSN|ANM and determinerCode=INSTANCE]/desc
- cda: n/a
contact I 0..* BackboneElement There are no (further) constraints on this elementElement idShort descriptionPatient.contact
A contact party (e.g. guardian, partner, friend) for the patient
DefinitionRequirementsA contact party (e.g. guardian, partner, friend) for the patient.
CommentsNeed to track people you can contact about the patient.
Data type ConstraintsContact covers all kinds of contact parties: family members, business contacts, guardians, caregivers. Not applicable to register pedigree and family ties beyond use of having contact.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- pat-1: SHALL at least contain a contact's details or a reference to an organization
name.exists() or telecom.exists() or address.exists() or organization.exists()
- rim: player[classCode=PSN|ANM and determinerCode=INSTANCE]/scopedRole[classCode=CON]
- cda: n/a
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionPatient.contact.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.contact.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.contact.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
relationship 0..* CodeableConceptBinding There are no (further) constraints on this elementElement idShort descriptionPatient.contact.relationship
The kind of relationship
DefinitionRequirementsThe nature of the relationship between the patient and the contact person.
Data type BindingUsed to determine which contact person is the most relevant to approach, depending on circumstances.
PatientContactRelationship (extensible)ConstraintsThe nature of the relationship between a patient and a contact person for that patient.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: NK1-7, NK1-3
- rim: code
- cda: n/a
name 0..1 HumanName There are no (further) constraints on this elementElement idShort descriptionPatient.contact.name
A name associated with the contact person
DefinitionRequirementsA name associated with the contact person.
Data type ConstraintsContact persons need to be identified by name, but it is uncommon to need details about multiple other names for that contact person.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: NK1-2
- rim: name
- cda: n/a
telecom 0..* ContactPoint There are no (further) constraints on this elementElement idShort descriptionPatient.contact.telecom
A contact detail for the person
DefinitionRequirementsA contact detail for the person, e.g. a telephone number or an email address.
CommentsPeople have (primary) ways to contact them in some way such as phone, email.
Data type ConstraintsContact may have multiple ways to be contacted with different uses or applicable periods. May need to have options for contacting the person urgently, and also to help with identification.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: NK1-5, NK1-6, NK1-40
- rim: telecom
- cda: n/a
address 0..1 Address There are no (further) constraints on this elementElement idShort descriptionPatient.contact.address
Address for the contact person
DefinitionRequirementsAddress for the contact person.
Data type ConstraintsNeed to keep track where the contact person can be contacted per postal mail or visited.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: NK1-4
- rim: addr
- cda: n/a
gender 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionPatient.contact.gender
male | female | other | unknown
DefinitionRequirementsAdministrative Gender - the gender that the contact person is considered to have for administration and record keeping purposes.
Data type BindingNeeded to address the person correctly.
AdministrativeGender (required)ConstraintsThe gender of a person used for administrative purposes.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: NK1-15
- rim: player[classCode=PSN|ANM and determinerCode=INSTANCE]/administrativeGender
- cda: n/a
organization I 0..1 Reference(Organization) There are no (further) constraints on this elementElement idShort descriptionPatient.contact.organization
Organization that is associated with the contact
DefinitionRequirementsOrganization on behalf of which the contact is acting or for which the contact is working.
Data type ConstraintsFor guardians or business related contacts, the organization is relevant.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: NK1-13, NK1-30, NK1-31, NK1-32, NK1-41
- rim: scoper
- cda: n/a
period 0..1 Period There are no (further) constraints on this elementElement idShort descriptionPatient.contact.period
The period during which this contact person or organization is valid to be contacted relating to this patient
DefinitionData type ConstraintsThe period during which this contact person or organization is valid to be contacted relating to this patient.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: effectiveTime
- cda: n/a
communication 0..* BackboneElement There are no (further) constraints on this elementElement idShort descriptionPatient.communication
A language which may be used to communicate with the patient about his or her health
DefinitionRequirementsA language which may be used to communicate with the patient about his or her health.
CommentsIf a patient does not speak the local language, interpreters may be required, so languages spoken and proficiency are important things to keep track of both for patient and other persons of interest.
Data type ConstraintsIf no language is specified, this implies that the default local language is spoken. If you need to convey proficiency for multiple modes, then you need multiple Patient.Communication associations. For animals, language is not a relevant field, and should be absent from the instance. If the Patient does not speak the default local language, then the Interpreter Required Standard can be used to explicitly declare that an interpreter is required.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: LanguageCommunication
- cda: patient.languageCommunication
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionPatient.communication.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.communication.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.communication.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
language 1..1 CodeableConceptBinding There are no (further) constraints on this elementElement idShort descriptionPatient.communication.language
The language which can be used to communicate with the patient about his or her health
DefinitionRequirementsThe ISO-639-1 alpha 2 code in lower case for the language, optionally followed by a hyphen and the ISO-3166-1 alpha 2 code for the region in upper case; e.g. "en" for English, or "en-US" for American English versus "en-EN" for England English.
CommentsMost systems in multilingual countries will want to convey language. Not all systems actually need the regional dialect.
Data type BindingThe structure aa-BB with this exact casing is one the most widely used notations for locale. However not all systems actually code this but instead have it as free text. Hence CodeableConcept instead of code as the data type.
CommonLanguages (preferred)ConstraintsA human language.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: PID-15, LAN-2
- rim: player[classCode=PSN|ANM and determinerCode=INSTANCE]/languageCommunication/code
- cda: .languageCode
preferred 0..1 boolean There are no (further) constraints on this elementElement idShort descriptionPatient.communication.preferred
Language preference indicator
DefinitionRequirementsIndicates whether or not the patient prefers this language (over other languages he masters up a certain level).
CommentsPeople that master multiple languages up to certain level may prefer one or more, i.e. feel more confident in communicating in a particular language making other languages sort of a fall back method.
Data type ConstraintsThis language is specifically identified for communicating healthcare information.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: PID-15
- rim: preferenceInd
- cda: .preferenceInd
generalPractitioner 0..* Reference(Organization | Practitioner | PractitionerRole) There are no (further) constraints on this elementElement idShort descriptionPatient.generalPractitioner
Patient's nominated primary care provider
Alternate namescareProvider
DefinitionCommentsPatient's nominated care provider.
Data typeThis may be the primary care provider (in a GP context), or it may be a patient nominated care manager in a community/disability setting, or even organization that will provide people to perform the care provider roles. It is not to be used to record Care Teams, these should be in a CareTeam resource that may be linked to the CarePlan or EpisodeOfCare resources. Multiple GPs may be recorded against the patient for various reasons, such as a student that has his home GP listed along with the GP at university during the school semesters, or a "fly-in/fly-out" worker that has the onsite GP also included with his home GP to remain aware of medical issues.
Jurisdictions may decide that they can profile this down to 1 if desired, or 1 per type.
Reference(Organization | Practitioner | PractitionerRole)
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: PD1-4
- rim: subjectOf.CareEvent.performer.AssignedEntity
- cda: n/a
managingOrganization Σ 0..1 Reference(Organization) There are no (further) constraints on this elementElement idShort descriptionPatient.managingOrganization
Organization that is the custodian of the patient record
DefinitionRequirementsOrganization that is the custodian of the patient record.
CommentsNeed to know who recognizes this patient record, manages and updates it.
Data type ConstraintsThere is only one managing organization for a specific patient record. Other organizations will have their own Patient record, and may use the Link property to join the records together (or a Person resource which can include confidence ratings for the association).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: scoper
- cda: .providerOrganization
link Σ ?! 0..* BackboneElement There are no (further) constraints on this elementElement idShort descriptionPatient.link
Link to another patient resource that concerns the same actual person
DefinitionRequirementsLink to another patient resource that concerns the same actual patient.
CommentsThere are multiple use cases:
- Duplicate patient records due to the clerical errors associated with the difficulties of identifying humans consistently, and
- Distribution of patient information across multiple servers.
Data type ConstraintsThere is no assumption that linked patient records have mutual links.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: outboundLink
- cda: n/a
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionPatient.link.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.link.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.link.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
other Σ 1..1 Reference(Patient | RelatedPerson) There are no (further) constraints on this elementElement idShort descriptionPatient.link.other
The other patient or related person resource that the link refers to
DefinitionCommentsThe other patient resource that the link refers to.
Data typeReferencing a RelatedPerson here removes the need to use a Person record to associate a Patient and RelatedPerson as the same individual.
Reference(Patient | RelatedPerson)
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: PID-3, MRG-1
- rim: id
- cda: n/a
type Σ 1..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionPatient.link.type
replaced-by | replaces | refer | seealso
DefinitionData type BindingThe type of link between this patient resource and another patient resource.
LinkType (required)ConstraintsThe type of link between this patient resource and another patient resource.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: typeCode
- cda: n/a
- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
-
PAS Practitioner
Simplifier link for the profile: Practitioner (PAS-LRA)
The Practitioner is used to identify the provider who wished to add, remove or query a patients to their roster or panel at a given facility.
LRAPASPractitioner (Practitioner) I Practitioner There are no (further) constraints on this elementElement idShort descriptionPractitioner
A person with a formal responsibility in the provisioning of healthcare or related services
DefinitionData type ConstraintsA person who is directly or indirectly involved in the provisioning of healthcare.
Mappings- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
contained.contained.empty()
- dom-3: 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: 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: If a resource is contained in another resource, it SHALL NOT have a security label
contained.meta.security.empty()
- dom-6: A resource should have narrative for robust management
text.`div`.exists()
- rim: Entity. Role, or Act
- v2: PRD (as one example)
- rim: Role
- servd: Provider
id Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionPractitioner.id
Logical id of this artifact
DefinitionCommentsThe logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
Data typeThe only time that a resource does not have an id is when it is being submitted to the server using a create operation.
meta Σ 0..1 Meta There are no (further) constraints on this elementElement idShort descriptionPractitioner.meta
Metadata about the resource
DefinitionData type ConstraintsThe metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
implicitRules Σ ?! 0..1 uri There are no (further) constraints on this elementElement idShort descriptionPractitioner.implicitRules
A set of rules under which this content was created
DefinitionCommentsA reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.
Data type ConstraintsAsserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
language 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionPractitioner.language
Language of the resource content
DefinitionCommentsThe base language in which the resource is written.
Data type BindingLanguage is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).
CommonLanguages (preferred)ConstraintsA human language.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
text 0..1 Narrative There are no (further) constraints on this elementElement idShort descriptionPractitioner.text
Text summary of the resource, for human interpretation
Alternate namesnarrative, html, xhtml, display
DefinitionCommentsA human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.
Data type ConstraintsContained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: Act.text?
contained 0..* Resource There are no (further) constraints on this elementElement idShort descriptionPractitioner.contained
Contained, inline Resources
Alternate namesinline resources, anonymous resources, contained resources
DefinitionCommentsThese resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.
Data type MappingsThis should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.
- rim: N/A
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPractitioner.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
modifierExtension ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPractitioner.modifierExtension
Extensions that cannot be ignored
Alternate namesextensions, user content
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
identifier S Σ 1..* Identifier Element id Short descriptionPractitioner.identifier
An identifier for the person as this agent
DefinitionRequirementsAn identifier that applies to this person in this role.
CommentsOften, specific identities are assigned for the agent.
Data type Sliced:Practitioner ID must be supported as the identifier system, other identifiers can be supplied but only BC Practitioner ID is used
Unordered, Open, by $this(Pattern)
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.identifier
- v2: PRD-7 (or XCN.1)
- rim: ./id
- servd: ./Identifiers
(All Slices) There are no (further) constraints on this elementid 0..1 string There are no (further) constraints on this elementElement idShort descriptionPractitioner.identifier.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPractitioner.identifier.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
use Σ ?! 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionPractitioner.identifier.use
usual | official | temp | secondary | old (If known)
DefinitionRequirementsThe purpose of this identifier.
CommentsAllows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.
Data type BindingApplications can assume that an identifier is permanent unless it explicitly says that it is temporary.
IdentifierUse (required)ConstraintsIdentifies the purpose for this identifier, if known .
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: N/A
- rim: Role.code or implied by context
type Σ 0..1 CodeableConceptBinding There are no (further) constraints on this elementElement idShort descriptionPractitioner.identifier.type
Description of identifier
DefinitionRequirementsA coded type for the identifier that can be used to determine which identifier to use for a specific purpose.
CommentsAllows users to make use of identifiers when the identifier system is not known.
Data type BindingThis element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type.
Identifier Type Codes (extensible)ConstraintsA coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: CX.5
- rim: Role.code or implied by context
system S Σ 1..1 uri There are no (further) constraints on this elementElement idShort descriptionPractitioner.identifier.system
The namespace for the identifier value
DefinitionRequirementsEstablishes the namespace for the value - that is, a URL that describes a set values that are unique.
CommentsThere are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.
Data type ConstraintsIdentifier.system is always case sensitive.
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
Generalhttp://www.acme.com/identifiers/patient
Mappings- v2: CX.4 / EI-2-4
- rim: II.root or Role.id.root
- servd: ./IdentifierType
value S Σ 1..1 string There are no (further) constraints on this elementElement idShort descriptionPractitioner.identifier.value
The value that is unique
DefinitionCommentsThe portion of the identifier typically relevant to the user and which is unique within the context of the system.
Data type ConstraintsIf the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
General123456
Mappings- v2: CX.1 / EI.1
- rim: II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
- servd: ./Value
period Σ 0..1 Period There are no (further) constraints on this elementElement idShort descriptionPractitioner.identifier.period
Time period when id is/was valid for use
DefinitionData type ConstraintsTime period during which identifier is/was valid for use.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: CX.7 + CX.8
- rim: Role.effectiveTime or implied by context
- servd: ./StartDate and ./EndDate
assigner Σ 0..1 Reference(Organization) There are no (further) constraints on this elementElement idShort descriptionPractitioner.identifier.assigner
Organization that issued id (may be just text)
DefinitionCommentsOrganization that issued/manages the identifier.
Data type ConstraintsThe Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: CX.4 / (CX.4,CX.9,CX.10)
- rim: II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
- servd: ./IdentifierIssuingAuthority
Prac-ID S Σ 1..* IdentifierPattern Element id Short descriptionPractitioner.identifier:Prac-ID
An identifier for the person as this agent
DefinitionRequirementsAn identifier that applies to this person in this role.
Data type ConstraintsOften, specific identities are assigned for the agent.
Pattern- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
Mappings{ "system": "https://health.gov.bc.ca/fhir/NamingSystem/ca-bc-ministry-practitioner-id" }
- w5: FiveWs.identifier
- v2: PRD-7 (or XCN.1)
- rim: ./id
- servd: ./Identifiers
active Σ 0..1 boolean There are no (further) constraints on this elementElement idShort descriptionPractitioner.active
Whether this practitioner's record is in active use
DefinitionRequirementsWhether this practitioner's record is in active use.
CommentsNeed to be able to mark a practitioner record as not to be used because it was created in error.
Meaning when missingIf the practitioner is not in use by one organization, then it should mark the period on the PractitonerRole with an end date (even if they are active) as they may be active in another role.
Data type ConstraintsThis resource is generally assumed to be active if no value is provided for the active element
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.status
- rim: ./statusCode
name S Σ 1..* HumanName There are no (further) constraints on this elementElement idShort descriptionPractitioner.name
The name(s) associated with the practitioner
DefinitionRequirementsThe name(s) associated with the practitioner.
CommentsThe name(s) that a Practitioner is known by. Where there are multiple, the name that the practitioner is usually known as should be used in the display.
Data type ConstraintsThe selection of the use property should ensure that there is a single usual name specified, and others use the nickname (alias), old, or other values as appropriate.
In general, select the value to be used in the ResourceReference.display based on this:
- There is more than 1 name
- Use = usual
- Period is current to the date of the usage
- Use = official
- Other order as decided by internal business rules.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: XCN Components
- rim: ./name
- servd: ./PreferredName (GivenNames, FamilyName, TitleCode)
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionPractitioner.name.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPractitioner.name.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
use Σ ?! 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionPractitioner.name.use
usual | official | temp | nickname | anonymous | old | maiden
DefinitionRequirementsIdentifies the purpose for this name.
CommentsAllows the appropriate name for a particular context of use to be selected from among a set of names.
Data type BindingApplications can assume that a name is current unless it explicitly says that it is temporary or old.
NameUse (required)ConstraintsThe use of a human name.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: XPN.7, but often indicated by which field contains the name
- rim: unique(./use)
- servd: ./NamePurpose
text Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionPractitioner.name.text
Text representation of the full name
DefinitionRequirementsSpecifies the entire name as it should be displayed e.g. on an application UI. This may be provided instead of or as well as the specific parts.
CommentsA renderable, unencoded form.
Data type ConstraintsCan provide both a text representation and parts. Applications updating a name SHALL ensure that when both text and parts are present, no content is included in the text that isn't found in a part.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: implied by XPN.11
- rim: ./formatted
family S Σ 1..1 string There are no (further) constraints on this elementElement idShort descriptionPractitioner.name.family
Family name (often called 'Surname')
Alternate namessurname
DefinitionCommentsThe part of a name that links to the genealogy. In some cultures (e.g. Eritrea) the family name of a son is the first name of his father.
Data type ConstraintsFamily Name may be decomposed into specific parts using extensions (de, nl, es related cultures).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: XPN.1/FN.1
- rim: ./part[partType = FAM]
- servd: ./FamilyName
given Σ 0..* string There are no (further) constraints on this elementElement idShort descriptionPractitioner.name.given
Given names (not always 'first'). Includes middle names
Alternate namesfirst name, middle name
DefinitionCommentsGiven name.
Data type ConstraintsIf only initials are recorded, they may be used in place of the full name parts. Initials may be separated into multiple given names but often aren't due to paractical limitations. This element is not called "first name" since given names do not always come first.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: XPN.2 + XPN.3
- rim: ./part[partType = GIV]
- servd: ./GivenNames
prefix Σ 0..* string There are no (further) constraints on this elementElement idShort descriptionPractitioner.name.prefix
Parts that come before the name
DefinitionData type ConstraintsPart of the name that is acquired as a title due to academic, legal, employment or nobility status, etc. and that appears at the start of the name.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: XPN.5
- rim: ./part[partType = PFX]
- servd: ./TitleCode
suffix Σ 0..* string There are no (further) constraints on this elementElement idShort descriptionPractitioner.name.suffix
Parts that come after the name
DefinitionData type ConstraintsPart of the name that is acquired as a title due to academic, legal, employment or nobility status, etc. and that appears at the end of the name.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: XPN/4
- rim: ./part[partType = SFX]
period Σ 0..1 Period There are no (further) constraints on this elementElement idShort descriptionPractitioner.name.period
Time period when name was/is in use
DefinitionRequirementsIndicates the period of time when this name was valid for the named person.
Data type ConstraintsAllows names to be placed in historical context.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: XPN.13 + XPN.14
- rim: ./usablePeriod[type="IVL<TS>"]
- servd: ./StartDate and ./EndDate
telecom Σ 0..* ContactPoint There are no (further) constraints on this elementElement idShort descriptionPractitioner.telecom
A contact detail for the practitioner (that apply to all roles)
DefinitionRequirementsA contact detail for the practitioner, e.g. a telephone number or an email address.
CommentsNeed to know how to reach a practitioner independent to any roles the practitioner may have.
Data type ConstraintsPerson may have multiple ways to be contacted with different uses or applicable periods. May need to have options for contacting the person urgently and to help with identification. These typically will have home numbers, or mobile numbers that are not role specific.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: PRT-15, STF-10, ROL-12
- rim: ./telecom
- servd: ./ContactPoints
address Σ 0..* Address There are no (further) constraints on this elementElement idShort descriptionPractitioner.address
Address(es) of the practitioner that are not role specific (typically home address)
DefinitionRequirementsAddress(es) of the practitioner that are not role specific (typically home address). Work addresses are not typically entered in this property as they are usually role dependent.
CommentsThe home/mailing address of the practitioner is often required for employee administration purposes, and also for some rostering services where the start point (practitioners home) can be used in calculations.
Data type ConstraintsThe PractitionerRole does not have an address value on it, as it is expected that the location property be used for this purpose (which has an address).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: ORC-24, STF-11, ROL-11, PRT-14
- rim: ./addr
- servd: ./Addresses
gender Σ 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionPractitioner.gender
male | female | other | unknown
DefinitionRequirementsAdministrative Gender - the gender that the person is considered to have for administration and record keeping purposes.
Data type BindingNeeded to address the person correctly.
AdministrativeGender (required)ConstraintsThe gender of a person used for administrative purposes.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: STF-5
- rim: ./administrativeGender
- servd: ./GenderCode
birthDate Σ 0..1 date There are no (further) constraints on this elementElement idShort descriptionPractitioner.birthDate
The date on which the practitioner was born
DefinitionRequirementsThe date of birth for the practitioner.
Data type ConstraintsNeeded for identification.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: STF-6
- rim: ./birthTime
- servd: (not represented in ServD)
photo 0..* Attachment There are no (further) constraints on this elementElement idShort descriptionPractitioner.photo
Image of the person
DefinitionRequirementsImage of the person.
Data type ConstraintsMany EHR systems have the capability to capture an image of patients and personnel. Fits with newer social media usage too.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: ./subjectOf/ObservationEvent[code="photo"]/value
- servd: ./ImageURI (only supports the URI reference)
qualification 0..* BackboneElement There are no (further) constraints on this elementElement idShort descriptionPractitioner.qualification
Certification, licenses, or training pertaining to the provision of care
DefinitionData type ConstraintsThe official certifications, training, and licenses that authorize or otherwise pertain to the provision of care by the practitioner. For example, a medical license issued by a medical board authorizing the practitioner to practice medicine within a certian locality.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: CER?
- rim: .playingEntity.playingRole[classCode=QUAL].code
- servd: ./Qualifications
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionPractitioner.qualification.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPractitioner.qualification.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPractitioner.qualification.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
identifier 0..* Identifier There are no (further) constraints on this elementElement idShort descriptionPractitioner.qualification.identifier
An identifier for this qualification for the practitioner
DefinitionRequirementsAn identifier that applies to this person's qualification in this role.
Data type ConstraintsOften, specific identities are assigned for the qualification.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: .playingEntity.playingRole[classCode=QUAL].id
code 1..1 CodeableConcept There are no (further) constraints on this elementElement idShort descriptionPractitioner.qualification.code
Coded representation of the qualification
DefinitionData type BindingCoded representation of the qualification.
v2.0360.2.7 (example)ConstraintsSpecific qualification the practitioner has to provide a service.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: .playingEntity.playingRole[classCode=QUAL].code
- servd: ./Qualifications.Value
period 0..1 Period There are no (further) constraints on this elementElement idShort descriptionPractitioner.qualification.period
Period during which the qualification is valid
DefinitionRequirementsPeriod during which the qualification is valid.
Data type ConstraintsQualifications are often for a limited period of time, and can be revoked.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: .playingEntity.playingRole[classCode=QUAL].effectiveTime
- servd: ./Qualifications.StartDate and ./Qualifications.EndDate
issuer 0..1 Reference(Organization) There are no (further) constraints on this elementElement idShort descriptionPractitioner.qualification.issuer
Organization that regulates and issues the qualification
DefinitionData type ConstraintsOrganization that regulates and issues the qualification.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: .playingEntity.playingRole[classCode=QUAL].scoper
communication 0..* CodeableConceptBinding There are no (further) constraints on this elementElement idShort descriptionPractitioner.communication
A language the practitioner can use in patient communication
DefinitionRequirementsA language the practitioner can use in patient communication.
CommentsKnowing which language a practitioner speaks can help in facilitating communication with patients.
Data type BindingThe structure aa-BB with this exact casing is one the most widely used notations for locale. However not all systems code this but instead have it as free text. Hence CodeableConcept instead of code as the data type.
CommonLanguages (preferred)ConstraintsA human language.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: PID-15, NK1-20, LAN-2
- rim: ./languageCommunication
- servd: ./Languages.LanguageSpokenCode
- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
-
PAS PractitionerRole
Simplifier link for the profile: PractitionerRole (PAS - LRA)
Represents the role of the practitioner within the facility, linking the practitioner to their responsibilities within the organization and patient panel.
PASPractitionerRole (PractitionerRole) I PractitionerRole There are no (further) constraints on this elementElement idShort descriptionPractitionerRole
Roles/organizations the practitioner is associated with
DefinitionData type ConstraintsA specific set of Roles/Locations/specialties/services that a practitioner may perform at an organization for a period of time.
Mappings- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
contained.contained.empty()
- dom-3: 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: 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: If a resource is contained in another resource, it SHALL NOT have a security label
contained.meta.security.empty()
- dom-6: A resource should have narrative for robust management
text.`div`.exists()
- rim: Entity. Role, or Act
- v2: PRD (as one example)
- rim: Role
- servd: ServiceSiteProvider
id Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.id
Logical id of this artifact
DefinitionCommentsThe logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
Data typeThe only time that a resource does not have an id is when it is being submitted to the server using a create operation.
meta Σ 0..1 Meta There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.meta
Metadata about the resource
DefinitionData type ConstraintsThe metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
implicitRules Σ ?! 0..1 uri There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.implicitRules
A set of rules under which this content was created
DefinitionCommentsA reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.
Data type ConstraintsAsserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
language 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.language
Language of the resource content
DefinitionCommentsThe base language in which the resource is written.
Data type BindingLanguage is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).
CommonLanguages (preferred)ConstraintsA human language.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
text 0..1 Narrative There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.text
Text summary of the resource, for human interpretation
Alternate namesnarrative, html, xhtml, display
DefinitionCommentsA human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.
Data type ConstraintsContained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: Act.text?
contained 0..* Resource There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.contained
Contained, inline Resources
Alternate namesinline resources, anonymous resources, contained resources
DefinitionCommentsThese resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.
Data type MappingsThis should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.
- rim: N/A
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
modifierExtension ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.modifierExtension
Extensions that cannot be ignored
Alternate namesextensions, user content
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
identifier Σ 0..* Identifier There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.identifier
Business Identifiers that are specific to a role/location
DefinitionRequirementsBusiness Identifiers that are specific to a role/location.
Data type ConstraintsOften, specific identities are assigned for the agent.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.identifier
- v2: PRD-7 (or XCN.1)
- rim: .id
- servd: ./Identifiers
active Σ 0..1 boolean There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.active
Whether this practitioner role record is in active use
DefinitionRequirementsWhether this practitioner role record is in active use.
CommentsNeed to be able to mark a practitioner role record as not to be used because it was created in error, or otherwise no longer in active use.
Meaning when missingIf this value is false, you may refer to the period to see when the role was in active use. If there is no period specified, no inference can be made about when it was active.
Data type ConstraintsThis resource is generally assumed to be active if no value is provided for the active element
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.status
- v2: STF-7
- rim: .statusCode
period Σ 0..1 Period There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.period
The period during which the practitioner is authorized to perform in these role(s)
DefinitionRequirementsThe period during which the person is authorized to act as a practitioner in these role(s) for the organization.
Data type ConstraintsEven after the agencies is revoked, the fact that it existed must still be recorded.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.done[x]
- v2: PRD-8/9 / PRA-5.4
- rim: .performance[@typeCode <= 'PPRF'].ActDefinitionOrEvent.effectiveTime
- servd: (ServD maps Practitioners and Organizations via another entity, so this concept is not available)
practitioner S Σ 1..1 Reference(Practitioner) There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.practitioner
Practitioner that is able to provide the defined services for the organization
DefinitionData type ConstraintsPractitioner that is able to provide the defined services for the organization.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: .player
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.practitioner.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.practitioner.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
reference Σ I 0..1 string There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.practitioner.reference
Literal reference, Relative, internal or absolute URL
DefinitionCommentsA reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.
Data type ConstraintsUsing absolute URLs provides a stable scalable approach suitable for a cloud/web context, while using relative/logical references provides a flexible approach suitable for use when trading across closed eco-system boundaries. Absolute URLs do not need to point to a FHIR RESTful server, though this is the preferred approach. If the URL conforms to the structure "/[type]/[id]" then it should be assumed that the reference is to a FHIR RESTful server.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: N/A
type S Σ 1..1 uriBindingFixed Value Element id Short descriptionPractitionerRole.practitioner.type
Type the reference refers to (e.g. "Patient")
DefinitionCommentsThe expected type of the target of the reference. If both Reference.type and Reference.reference are populated and Reference.reference is a FHIR URL, both SHALL be consistent.
The type is the Canonical URL of Resource Definition that is the type this reference refers to. References are URLs that are relative to http://hl7.org/fhir/StructureDefinition/ e.g. "Patient" is a reference to http://hl7.org/fhir/StructureDefinition/Patient. Absolute URLs are only allowed for logical models (and can only be used in references in logical models, not resources).
Data type BindingThis element is used to indicate the type of the target of the reference. This may be used which ever of the other elements are populated (or not). In some cases, the type of the target may be determined by inspection of the reference (e.g. a RESTful URL) or by resolving the target of the reference; if both the type and a reference is provided, the reference SHALL resolve to a resource of the same type as that specified.
ResourceType (extensible)ConstraintsAa resource (or, for logical models, the URI of the logical model).
Fixed value- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
MappingsPractitioner
- rim: N/A
identifier S Σ 1..1 Identifier There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.practitioner.identifier
Logical reference, when literal reference is not known
DefinitionCommentsAn identifier for the target resource. This is used when there is no way to reference the other resource directly, either because the entity it represents is not available through a FHIR server, or because there is no way for the author of the resource to convert a known identifier to an actual location. There is no requirement that a Reference.identifier point to something that is actually exposed as a FHIR instance, but it SHALL point to a business concept that would be expected to be exposed as a FHIR instance, and that instance would need to be of a FHIR resource type allowed by the reference.
Data type ConstraintsWhen an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy.
When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference
Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it.
Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: .identifier
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.practitioner.identifier.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.practitioner.identifier.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
use Σ ?! 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.practitioner.identifier.use
usual | official | temp | secondary | old (If known)
DefinitionRequirementsThe purpose of this identifier.
CommentsAllows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.
Data type BindingApplications can assume that an identifier is permanent unless it explicitly says that it is temporary.
IdentifierUse (required)ConstraintsIdentifies the purpose for this identifier, if known .
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: N/A
- rim: Role.code or implied by context
type Σ 0..1 CodeableConceptBinding There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.practitioner.identifier.type
Description of identifier
DefinitionRequirementsA coded type for the identifier that can be used to determine which identifier to use for a specific purpose.
CommentsAllows users to make use of identifiers when the identifier system is not known.
Data type BindingThis element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type.
Identifier Type Codes (extensible)ConstraintsA coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: CX.5
- rim: Role.code or implied by context
system S Σ 1..1 uriFixed Value Element id Short descriptionPractitionerRole.practitioner.identifier.system
The namespace for the identifier value
DefinitionRequirementsEstablishes the namespace for the value - that is, a URL that describes a set values that are unique.
CommentsThere are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.
Data type ConstraintsIdentifier.system is always case sensitive.
Fixed value- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
Mappingshttps://health.gov.bc.ca/fhir/NamingSystem/ca-bc-ministry-practitioner-id
- v2: CX.4 / EI-2-4
- rim: II.root or Role.id.root
- servd: ./IdentifierType
value S Σ 1..1 string There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.practitioner.identifier.value
The value that is unique
DefinitionCommentsThe portion of the identifier typically relevant to the user and which is unique within the context of the system.
Data type ConstraintsIf the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
General123456
Mappings- v2: CX.1 / EI.1
- rim: II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
- servd: ./Value
period Σ 0..1 Period There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.practitioner.identifier.period
Time period when id is/was valid for use
DefinitionData type ConstraintsTime period during which identifier is/was valid for use.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: CX.7 + CX.8
- rim: Role.effectiveTime or implied by context
- servd: ./StartDate and ./EndDate
assigner Σ 0..1 Reference(Organization) There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.practitioner.identifier.assigner
Organization that issued id (may be just text)
DefinitionCommentsOrganization that issued/manages the identifier.
Data type ConstraintsThe Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: CX.4 / (CX.4,CX.9,CX.10)
- rim: II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
- servd: ./IdentifierIssuingAuthority
display Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.practitioner.display
Text alternative for the resource
DefinitionCommentsPlain text narrative that identifies the resource in addition to the resource reference.
Data type ConstraintsThis is generally not the same as the Resource.text of the referenced resource. The purpose is to identify what's being referenced, not to fully describe it.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: N/A
organization S Σ 1..1 Reference(Organization) There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.organization
Organization where the roles are available
DefinitionData type ConstraintsThe organization where the Practitioner performs the roles associated.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: .scoper
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.organization.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.organization.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
reference Σ I 0..1 string There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.organization.reference
Literal reference, Relative, internal or absolute URL
DefinitionCommentsA reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.
Data type ConstraintsUsing absolute URLs provides a stable scalable approach suitable for a cloud/web context, while using relative/logical references provides a flexible approach suitable for use when trading across closed eco-system boundaries. Absolute URLs do not need to point to a FHIR RESTful server, though this is the preferred approach. If the URL conforms to the structure "/[type]/[id]" then it should be assumed that the reference is to a FHIR RESTful server.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: N/A
type S Σ 1..1 uriBindingFixed Value Element id Short descriptionPractitionerRole.organization.type
Type the reference refers to (e.g. "Patient")
DefinitionCommentsThe expected type of the target of the reference. If both Reference.type and Reference.reference are populated and Reference.reference is a FHIR URL, both SHALL be consistent.
The type is the Canonical URL of Resource Definition that is the type this reference refers to. References are URLs that are relative to http://hl7.org/fhir/StructureDefinition/ e.g. "Patient" is a reference to http://hl7.org/fhir/StructureDefinition/Patient. Absolute URLs are only allowed for logical models (and can only be used in references in logical models, not resources).
Data type BindingThis element is used to indicate the type of the target of the reference. This may be used which ever of the other elements are populated (or not). In some cases, the type of the target may be determined by inspection of the reference (e.g. a RESTful URL) or by resolving the target of the reference; if both the type and a reference is provided, the reference SHALL resolve to a resource of the same type as that specified.
ResourceType (extensible)ConstraintsAa resource (or, for logical models, the URI of the logical model).
Fixed value- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
MappingsOrganization
- rim: N/A
identifier S Σ 1..1 Identifier There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.organization.identifier
Logical reference, when literal reference is not known
DefinitionCommentsAn identifier for the target resource. This is used when there is no way to reference the other resource directly, either because the entity it represents is not available through a FHIR server, or because there is no way for the author of the resource to convert a known identifier to an actual location. There is no requirement that a Reference.identifier point to something that is actually exposed as a FHIR instance, but it SHALL point to a business concept that would be expected to be exposed as a FHIR instance, and that instance would need to be of a FHIR resource type allowed by the reference.
Data type ConstraintsWhen an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy.
When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference
Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it.
Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: .identifier
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.organization.identifier.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.organization.identifier.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
use Σ ?! 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.organization.identifier.use
usual | official | temp | secondary | old (If known)
DefinitionRequirementsThe purpose of this identifier.
CommentsAllows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.
Data type BindingApplications can assume that an identifier is permanent unless it explicitly says that it is temporary.
IdentifierUse (required)ConstraintsIdentifies the purpose for this identifier, if known .
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: N/A
- rim: Role.code or implied by context
type Σ 0..1 CodeableConceptBinding There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.organization.identifier.type
Description of identifier
DefinitionRequirementsA coded type for the identifier that can be used to determine which identifier to use for a specific purpose.
CommentsAllows users to make use of identifiers when the identifier system is not known.
Data type BindingThis element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type.
Identifier Type Codes (extensible)ConstraintsA coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: CX.5
- rim: Role.code or implied by context
system S Σ 1..1 uriFixed Value Element id Short descriptionPractitionerRole.organization.identifier.system
The namespace for the identifier value
DefinitionRequirementsEstablishes the namespace for the value - that is, a URL that describes a set values that are unique.
CommentsThere are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.
Data type ConstraintsIdentifier.system is always case sensitive.
Fixed value- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
Mappingshttps://health.gov.bc.ca/fhir/NamingSystem/ca-bc-msp-facility-id
- v2: CX.4 / EI-2-4
- rim: II.root or Role.id.root
- servd: ./IdentifierType
value S Σ 1..1 string There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.organization.identifier.value
The value that is unique
DefinitionCommentsThe portion of the identifier typically relevant to the user and which is unique within the context of the system.
Data type ConstraintsIf the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
General123456
Mappings- v2: CX.1 / EI.1
- rim: II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
- servd: ./Value
period Σ 0..1 Period There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.organization.identifier.period
Time period when id is/was valid for use
DefinitionData type ConstraintsTime period during which identifier is/was valid for use.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: CX.7 + CX.8
- rim: Role.effectiveTime or implied by context
- servd: ./StartDate and ./EndDate
assigner Σ 0..1 Reference(Organization) There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.organization.identifier.assigner
Organization that issued id (may be just text)
DefinitionCommentsOrganization that issued/manages the identifier.
Data type ConstraintsThe Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: CX.4 / (CX.4,CX.9,CX.10)
- rim: II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
- servd: ./IdentifierIssuingAuthority
display Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.organization.display
Text alternative for the resource
DefinitionCommentsPlain text narrative that identifies the resource in addition to the resource reference.
Data type ConstraintsThis is generally not the same as the Resource.text of the referenced resource. The purpose is to identify what's being referenced, not to fully describe it.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: N/A
code Σ 0..* CodeableConcept There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.code
Roles which this practitioner may perform
DefinitionRequirementsRoles which this practitioner is authorized to perform for the organization.
CommentsNeed to know what authority the practitioner has - what can they do?
Data type BindingA person may have more than one role.
PractitionerRole (example)ConstraintsThe role a person plays representing an organization.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: PRD-1 / STF-18 / PRA-3 / PRT-4 / ROL-3 / ORC-12 / OBR-16 / PV1-7 / PV1-8 / PV1-9 / PV1-17
- rim: .code
- servd: (ServD maps Practitioners and Organizations via another entity, so this concept is not available)
specialty Σ 0..* CodeableConceptBinding There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.specialty
Specific specialty of the practitioner
DefinitionData type BindingSpecific specialty of the practitioner.
PracticeSettingCodeValueSet (preferred)ConstraintsSpecific specialty associated with the agency.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: PRA-5
- rim: .player.HealthCareProvider[@classCode = 'PROV'].code
- servd: ./Specialty
location Σ 0..* Reference(Location) There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.location
The location(s) at which this practitioner provides care
DefinitionData type ConstraintsThe location(s) at which this practitioner provides care.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.where[x]
- rim: .performance.ActDefinitionOrEvent.ServiceDeliveryLocation[@classCode = 'SDLOC']
- servd: (ServD maps Practitioners and Organizations via another entity, so this concept is not available)<br/> However these are accessed via the Site.ServiceSite.ServiceSiteProvider record. (The Site has the location)
healthcareService 0..* Reference(HealthcareService) There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.healthcareService
The list of healthcare services that this worker provides for this role's Organization/Location(s)
DefinitionData type ConstraintsThe list of healthcare services that this worker provides for this role's Organization/Location(s).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: EDU-2 / AFF-3
- rim: .player.QualifiedEntity[@classCode = 'QUAL'].code
telecom Σ 0..* ContactPoint There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.telecom
Contact details that are specific to the role/location/service
DefinitionRequirementsContact details that are specific to the role/location/service.
Data type ConstraintsOften practitioners have a dedicated line for each location (or service) that they work at, and need to be able to define separate contact details for each of these.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: .telecom
availableTime 0..* BackboneElement There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.availableTime
Times the Service Site is available
DefinitionCommentsA collection of times the practitioner is available or performing this role at the location and/or healthcareservice.
Data type ConstraintsMore detailed availability information may be provided in associated Schedule/Slot resources.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: .effectiveTime
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.availableTime.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.availableTime.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.availableTime.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
daysOfWeek 0..* codeBinding There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.availableTime.daysOfWeek
mon | tue | wed | thu | fri | sat | sun
DefinitionData type BindingIndicates which days of the week are available between the start and end Times.
DaysOfWeek (required)ConstraintsThe days of the week.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: .effectiveTime
allDay 0..1 boolean There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.availableTime.allDay
Always available? e.g. 24 hour service
DefinitionData type ConstraintsIs this always available? (hence times are irrelevant) e.g. 24 hour service.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: .effectiveTime
availableStartTime 0..1 time There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.availableTime.availableStartTime
Opening time of day (ignored if allDay = true)
DefinitionCommentsThe opening time of day. Note: If the AllDay flag is set, then this time is ignored.
Data type ConstraintsThe timezone is expected to be for where this HealthcareService is provided at.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: .effectiveTime
availableEndTime 0..1 time There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.availableTime.availableEndTime
Closing time of day (ignored if allDay = true)
DefinitionCommentsThe closing time of day. Note: If the AllDay flag is set, then this time is ignored.
Data type ConstraintsThe timezone is expected to be for where this HealthcareService is provided at.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: .effectiveTime
notAvailable 0..* BackboneElement There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.notAvailable
Not available during this time due to provided reason
DefinitionData type ConstraintsThe practitioner is not available or performing this role during this period of time due to the provided reason.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: .effectiveTime
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.notAvailable.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.notAvailable.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.notAvailable.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
description 1..1 string There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.notAvailable.description
Reason presented to the user explaining why time not available
DefinitionData type ConstraintsThe reason that can be presented to the user as to why this time is not available.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
during 0..1 Period There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.notAvailable.during
Service not available from this date
DefinitionData type ConstraintsService is not available (seasonally or for a public holiday) from this date.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: .effectiveTime
availabilityExceptions 0..1 string There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.availabilityExceptions
Description of availability exceptions
DefinitionData type ConstraintsA description of site availability exceptions, e.g. public holiday availability. Succinctly describing all possible exceptions to normal site availability as details in the available Times and not available Times.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: .effectiveTime
endpoint 0..* Reference(Endpoint) There are no (further) constraints on this elementElement idShort descriptionPractitionerRole.endpoint
Technical endpoints providing access to services operated for the practitioner with this role
DefinitionRequirementsTechnical endpoints providing access to services operated for the practitioner with this role.
Data type ConstraintsOrganizations have multiple systems that provide various services and ,ay also be different for practitioners too.
So the endpoint satisfies the need to be able to define the technical connection details for how to connect to them, and for what purpose.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
-
PAS Organization
Simplifier link for the profile: Organization (PAS-LRA)
The Organization is used to identify the facility a patient is to be add, remove or query within a provider's roster or panel of patients.
LRAPASOrganization (Organization) I Organization There are no (further) constraints on this elementElement idShort descriptionOrganization
A grouping of people or organizations with a common purpose
DefinitionData type ConstraintsA formally or informally recognized grouping of people or organizations formed for the purpose of achieving some form of collective action. Includes companies, institutions, corporations, departments, community groups, healthcare practice groups, payer/insurer, etc.
Mappings- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
contained.contained.empty()
- dom-3: 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: 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: If a resource is contained in another resource, it SHALL NOT have a security label
contained.meta.security.empty()
- dom-6: A resource should have narrative for robust management
text.`div`.exists()
- org-1: The organization SHALL at least have a name or an identifier, and possibly more than one
(identifier.count() + name.count()) > 0
- rim: Entity. Role, or Act
- v2: (also see master files messages)
- rim: Organization(classCode=ORG, determinerCode=INST)
- servd: Organization
id Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionOrganization.id
Logical id of this artifact
DefinitionCommentsThe logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
Data typeThe only time that a resource does not have an id is when it is being submitted to the server using a create operation.
meta Σ 0..1 Meta There are no (further) constraints on this elementElement idShort descriptionOrganization.meta
Metadata about the resource
DefinitionData type ConstraintsThe metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
implicitRules Σ ?! 0..1 uri There are no (further) constraints on this elementElement idShort descriptionOrganization.implicitRules
A set of rules under which this content was created
DefinitionCommentsA reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.
Data type ConstraintsAsserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
language 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionOrganization.language
Language of the resource content
DefinitionCommentsThe base language in which the resource is written.
Data type BindingLanguage is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).
CommonLanguages (preferred)ConstraintsA human language.
- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
text 0..1 Narrative There are no (further) constraints on this elementElement idShort descriptionOrganization.text
Text summary of the resource, for human interpretation
Alternate namesnarrative, html, xhtml, display
DefinitionCommentsA human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.
Data type ConstraintsContained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: Act.text?
contained 0..* Resource There are no (further) constraints on this elementElement idShort descriptionOrganization.contained
Contained, inline Resources
Alternate namesinline resources, anonymous resources, contained resources
DefinitionCommentsThese resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.
Data type MappingsThis should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.
- rim: N/A
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionOrganization.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
modifierExtension ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionOrganization.modifierExtension
Extensions that cannot be ignored
Alternate namesextensions, user content
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
identifier S Σ I 1..* Identifier Element id Short descriptionOrganization.identifier
Identifies this organization across multiple systems
DefinitionRequirementsIdentifier for the organization that is used to identify the organization across multiple disparate systems.
CommentsOrganizations are known by a variety of ids. Some institutions maintain several, and most collect identifiers for exchange with other organizations concerning the organization.
Data type Sliced:MSP Facility ID must be supported as the identifier system, other identifiers can be supplied but only BC MSP Facility ID is used
Unordered, Open, by $this(Pattern)
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.identifier
- v2: XON.10 / XON.3
- rim: .scopes[Role](classCode=IDENT)
- servd: ./Identifiers
(All Slices) There are no (further) constraints on this elementid 0..1 string There are no (further) constraints on this elementElement idShort descriptionOrganization.identifier.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionOrganization.identifier.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
use Σ ?! 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionOrganization.identifier.use
usual | official | temp | secondary | old (If known)
DefinitionRequirementsThe purpose of this identifier.
CommentsAllows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.
Data type BindingApplications can assume that an identifier is permanent unless it explicitly says that it is temporary.
IdentifierUse (required)ConstraintsIdentifies the purpose for this identifier, if known .
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: N/A
- rim: Role.code or implied by context
type Σ 0..1 CodeableConceptBinding There are no (further) constraints on this elementElement idShort descriptionOrganization.identifier.type
Description of identifier
DefinitionRequirementsA coded type for the identifier that can be used to determine which identifier to use for a specific purpose.
CommentsAllows users to make use of identifiers when the identifier system is not known.
Data type BindingThis element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type.
Identifier Type Codes (extensible)ConstraintsA coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: CX.5
- rim: Role.code or implied by context
system S Σ 1..1 uri There are no (further) constraints on this elementElement idShort descriptionOrganization.identifier.system
The namespace for the identifier value
DefinitionRequirementsEstablishes the namespace for the value - that is, a URL that describes a set values that are unique.
CommentsThere are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.
Data type ConstraintsIdentifier.system is always case sensitive.
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
Generalhttp://www.acme.com/identifiers/patient
Mappings- v2: CX.4 / EI-2-4
- rim: II.root or Role.id.root
- servd: ./IdentifierType
value S Σ 1..1 string There are no (further) constraints on this elementElement idShort descriptionOrganization.identifier.value
The value that is unique
DefinitionCommentsThe portion of the identifier typically relevant to the user and which is unique within the context of the system.
Data type ConstraintsIf the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
General123456
Mappings- v2: CX.1 / EI.1
- rim: II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
- servd: ./Value
period Σ 0..1 Period There are no (further) constraints on this elementElement idShort descriptionOrganization.identifier.period
Time period when id is/was valid for use
DefinitionData type ConstraintsTime period during which identifier is/was valid for use.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: CX.7 + CX.8
- rim: Role.effectiveTime or implied by context
- servd: ./StartDate and ./EndDate
assigner Σ 0..1 Reference(Organization) There are no (further) constraints on this elementElement idShort descriptionOrganization.identifier.assigner
Organization that issued id (may be just text)
DefinitionCommentsOrganization that issued/manages the identifier.
Data type ConstraintsThe Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: CX.4 / (CX.4,CX.9,CX.10)
- rim: II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
- servd: ./IdentifierIssuingAuthority
Facility-ID S Σ I 1..* IdentifierPattern Element id Short descriptionOrganization.identifier:Facility-ID
Identifies this organization across multiple systems
DefinitionRequirementsIdentifier for the organization that is used to identify the organization across multiple disparate systems.
Data type ConstraintsOrganizations are known by a variety of ids. Some institutions maintain several, and most collect identifiers for exchange with other organizations concerning the organization.
Pattern- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
Mappings{ "system": "https://health.gov.bc.ca/fhir/NamingSystem/ca-bc-msp-facility-id" }
- w5: FiveWs.identifier
- v2: XON.10 / XON.3
- rim: .scopes[Role](classCode=IDENT)
- servd: ./Identifiers
active Σ ?! 0..1 boolean There are no (further) constraints on this elementElement idShort descriptionOrganization.active
Whether the organization's record is still in active use
DefinitionRequirementsWhether the organization's record is still in active use.
CommentsNeed a flag to indicate a record is no longer to be used and should generally be hidden for the user in the UI.
Meaning when missingThis active flag is not intended to be used to mark an organization as temporarily closed or under construction. Instead the Location(s) within the Organization should have the suspended status. If further details of the reason for the suspension are required, then an extension on this element should be used.
This element is labeled as a modifier because it may be used to mark that the resource was created in error.
Data type ConstraintsThis resource is generally assumed to be active if no value is provided for the active element
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.status
- v2: No equivalent in HL7 v2
- rim: .status
- servd: ./Status (however this concept in ServD more covers why the organization is active or not, could be delisted, deregistered, not operational yet) this could alternatively be derived from ./StartDate and ./EndDate and given a context date.
type Σ 0..* CodeableConcept There are no (further) constraints on this elementElement idShort descriptionOrganization.type
Kind of organization
DefinitionRequirementsThe kind(s) of organization that this is.
CommentsNeed to be able to track the kind of organization that this is - different organization types have different uses.
Data type BindingOrganizations can be corporations, wards, sections, clinical teams, government departments, etc. Note that code is generally a classifier of the type of organization; in many applications, codes are used to identity a particular organization (say, ward) as opposed to another of the same type - these are identifiers, not codes
When considering if multiple types are appropriate, you should evaluate if child organizations would be a more appropriate use of the concept, as different types likely are in different sub-areas of the organization. This is most likely to be used where type values have orthogonal values, such as a religious, academic and medical center.
We expect that some jurisdictions will profile this optionality to be a single cardinality.
OrganizationType (example)ConstraintsUsed to categorize the organization.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- w5: FiveWs.class
- v2: No equivalent in v2
- rim: .code
- servd: n/a
name S Σ I 1..1 string There are no (further) constraints on this elementElement idShort descriptionOrganization.name
Name used for the organization
DefinitionRequirementsA name associated with the organization.
CommentsNeed to use the name as the label of the organization.
Data type ConstraintsIf the name of an organization changes, consider putting the old name in the alias column so that it can still be located through searches.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: XON.1
- rim: .name
- servd: .PreferredName/Name
alias 0..* string There are no (further) constraints on this elementElement idShort descriptionOrganization.alias
A list of alternate names that the organization is known as, or was known as in the past
DefinitionRequirementsA list of alternate names that the organization is known as, or was known as in the past.
CommentsOver time locations and organizations go through many changes and can be known by different names.
For searching knowing previous names that the organization was known by can be very useful.
Data type ConstraintsThere are no dates associated with the alias/historic names, as this is not intended to track when names were used, but to assist in searching so that older names can still result in identifying the organization.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: .name
telecom I 0..* ContactPoint There are no (further) constraints on this elementElement idShort descriptionOrganization.telecom
A contact detail for the organization
DefinitionRequirementsA contact detail for the organization.
CommentsHuman contact for the organization.
Data type ConstraintsThe use code 'home' is not to be used. Note that these contacts are not the contact details of people who are employed by or represent the organization, but official contacts for the organization itself.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- org-3: The telecom of an organization can never be of use 'home'
where(use = 'home').empty()
- v2: ORC-22?
- rim: .telecom
- servd: ./ContactPoints
address S I 1..* Address There are no (further) constraints on this elementElement idShort descriptionOrganization.address
An address for the organization
DefinitionRequirementsAn address for the organization.
CommentsMay need to keep track of the organization's addresses for contacting, billing or reporting requirements.
Data type ConstraintsOrganization may have multiple addresses with different uses or applicable periods. The use code 'home' is not to be used.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- org-2: An address of an organization can never be of use 'home'
where(use = 'home').empty()
- v2: ORC-23?
- rim: .address
- servd: ./PrimaryAddress and ./OtherAddresses
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionOrganization.address.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionOrganization.address.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
use Σ ?! 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionOrganization.address.use
home | work | temp | old | billing - purpose of this address
DefinitionRequirementsThe purpose of this address.
CommentsAllows an appropriate address to be chosen from a list of many.
Data type BindingApplications can assume that an address is current unless it explicitly says that it is temporary or old.
AddressUse (required)ConstraintsThe use of an address.
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
Generalhome
Mappings- v2: XAD.7
- rim: unique(./use)
- servd: ./AddressPurpose
type Σ 0..1 codeBinding There are no (further) constraints on this elementElement idShort descriptionOrganization.address.type
postal | physical | both
DefinitionCommentsDistinguishes between physical addresses (those you can visit) and mailing addresses (e.g. PO Boxes and care-of addresses). Most addresses are both.
Data type BindingThe definition of Address states that "address is intended to describe postal addresses, not physical locations". However, many applications track whether an address has a dual purpose of being a location that can be visited as well as being a valid delivery destination, and Postal addresses are often used as proxies for physical locations (also see the Location resource).
AddressType (required)ConstraintsThe type of an address (physical / postal).
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
Generalboth
Mappings- v2: XAD.18
- rim: unique(./use)
- vcard: address type parameter
text Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionOrganization.address.text
Text representation of the address
DefinitionRequirementsSpecifies the entire address as it should be displayed e.g. on a postal label. This may be provided instead of or as well as the specific parts.
CommentsA renderable, unencoded form.
Data type ConstraintsCan provide both a text representation and parts. Applications updating an address SHALL ensure that when both text and parts are present, no content is included in the text that isn't found in a part.
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
General137 Nowhere Street, Erewhon 9132
Mappings- v2: XAD.1 + XAD.2 + XAD.3 + XAD.4 + XAD.5 + XAD.6
- rim: ./formatted
- vcard: address label parameter
line Σ 0..* string There are no (further) constraints on this elementElement idShort descriptionOrganization.address.line
Street name, number, direction & P.O. Box etc.
DefinitionData type ConstraintsThis component contains the house number, apartment number, street name, street direction, P.O. Box number, delivery hints, and similar address information.
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
General137 Nowhere Street
Mappings- v2: XAD.1 + XAD.2 (note: XAD.1 and XAD.2 have different meanings for a company address than for a person address)
- rim: AD.part[parttype = AL]
- vcard: street
- servd: ./StreetAddress (newline delimitted)
city Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionOrganization.address.city
Name of city, town etc.
Alternate namesMunicpality
DefinitionData type ConstraintsThe name of the city, town, suburb, village or other community or delivery center.
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
GeneralErewhon
Mappings- v2: XAD.3
- rim: AD.part[parttype = CTY]
- vcard: locality
- servd: ./Jurisdiction
district Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionOrganization.address.district
District name (aka county)
Alternate namesCounty
DefinitionCommentsThe name of the administrative area (county).
Data type ConstraintsDistrict is sometimes known as county, but in some regions 'county' is used in place of city (municipality), so county name should be conveyed in city instead.
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
GeneralMadison
Mappings- v2: XAD.9
- rim: AD.part[parttype = CNT | CPA]
state Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionOrganization.address.state
Sub-unit of country (abbreviations ok)
Alternate namesProvince, Territory
DefinitionData type ConstraintsSub-unit of a country with limited sovereignty in a federally organized country. A code may be used if codes are in common use (e.g. US 2 letter state codes).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: XAD.4
- rim: AD.part[parttype = STA]
- vcard: region
- servd: ./Region
postalCode S Σ 1..1 string There are no (further) constraints on this elementElement idShort descriptionOrganization.address.postalCode
Postal code for area
Alternate namesZip
DefinitionData type ConstraintsA postal code designating a region defined by the postal service.
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
General9132
Mappings- v2: XAD.5
- rim: AD.part[parttype = ZIP]
- vcard: code
- servd: ./PostalIdentificationCode
country Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionOrganization.address.country
Country (e.g. can be ISO 3166 2 or 3 letter code)
DefinitionCommentsCountry - a nation as commonly understood or generally accepted.
Data type ConstraintsISO 3166 3 letter codes can be used in place of a human readable country name.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: XAD.6
- rim: AD.part[parttype = CNT]
- vcard: country
- servd: ./Country
period Σ 0..1 Period There are no (further) constraints on this elementElement idShort descriptionOrganization.address.period
Time period when address was/is in use
DefinitionRequirementsTime period when address was/is in use.
Data type ConstraintsAllows addresses to be placed in historical context.
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
General{ "start": "2010-03-23", "end": "2010-07-01" }
Mappings- v2: XAD.12 / XAD.13 + XAD.14
- rim: ./usablePeriod[type="IVL<TS>"]
- servd: ./StartDate and ./EndDate
partOf Σ 0..1 Reference(Organization) There are no (further) constraints on this elementElement idShort descriptionOrganization.partOf
The organization of which this organization forms a part
DefinitionRequirementsThe organization of which this organization forms a part.
Data type ConstraintsNeed to be able to track the hierarchy of organizations within an organization.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: No equivalent in HL7 v2
- rim: .playedBy[classCode=Part].scoper
- servd: n/a
contact 0..* BackboneElement There are no (further) constraints on this elementElement idShort descriptionOrganization.contact
Contact for the organization for a certain purpose
DefinitionRequirementsContact for the organization for a certain purpose.
CommentsNeed to keep track of assigned contact points within bigger organization.
Data type ConstraintsWhere multiple contacts for the same purpose are provided there is a standard extension that can be used to determine which one is the preferred contact to use.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: .contactParty
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionOrganization.contact.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionOrganization.contact.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionOrganization.contact.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: N/A
purpose 0..1 CodeableConceptBinding There are no (further) constraints on this elementElement idShort descriptionOrganization.contact.purpose
The type of contact
DefinitionRequirementsIndicates a purpose for which the contact can be reached.
Data type BindingNeed to distinguish between multiple contact persons.
ContactEntityType (extensible)ConstraintsThe purpose for which you would contact a contact party.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: ./type
name 0..1 HumanName There are no (further) constraints on this elementElement idShort descriptionOrganization.contact.name
A name associated with the contact
DefinitionRequirementsA name associated with the contact.
Data type ConstraintsNeed to be able to track the person by name.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: PID-5, PID-9
- rim: ./name
telecom 0..* ContactPoint There are no (further) constraints on this elementElement idShort descriptionOrganization.contact.telecom
Contact details (telephone, email, etc.) for a contact
DefinitionRequirementsA contact detail (e.g. a telephone number or an email address) by which the party may be contacted.
Data type ConstraintsPeople have (primary) ways to contact them in some way such as phone, email.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: PID-13, PID-14
- rim: ./telecom
address 0..1 Address There are no (further) constraints on this elementElement idShort descriptionOrganization.contact.address
Visiting or postal addresses for the contact
DefinitionRequirementsVisiting or postal addresses for the contact.
Data type ConstraintsMay need to keep track of a contact party's address for contacting, billing or reporting requirements.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- v2: PID-11
- rim: ./addr
endpoint 0..* Reference(Endpoint) There are no (further) constraints on this elementElement idShort descriptionOrganization.endpoint
Technical endpoints providing access to services operated for the organization
DefinitionRequirementsTechnical endpoints providing access to services operated for the organization.
Data type ConstraintsOrganizations have multiple systems that provide various services and need to be able to define the technical connection details for how to connect to them, and for what purpose.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources