In this module we will provide you with a couple of modeling guidelines / best-practices that have been evolved at Firely for FHIR profiling. Feel free to adopt them in your project!
The topics covered in this module are:
Before you start profiling, always start by checking what's already out there. You may use one of the following sources to do so.
Besides saving yourself the effort of reinventing the wheel, alignment with existing work will make interoperability easier in the future. For the same reason, it is important to conform to national or regional profiles as much as possible. Another advantage of knowing what's out there is that you may find others to collaborate with, for example by browsing Simplifier projects.
To enhance opportunities for collaboration and reuse of existing work, it is good practice to share your own solutions as well by publishing them on Simplifier, so others in the community can find them. You can sign up for a Simplifier account for free. The Simplifier documentation page contains information on how to create your first project, add project members and upload your work. In a paid account you may use custom workflows and issue tracking to manage the feedback loop of your project. For optimal collaboration, we advise you to create a Git repository and use our Github integration for automatic synchronization. Finally, it is important to create an implementation guide that developers can use to implement your use case. The implementation guide should contain at least the following information: data definitions, use case descriptions, actors, interactions and examples. You may use our IG-editor in Simplifier or any other tooling that suits you (e.g. a WiKi page or a simple PDF file).
Before you start building profiles, agree on the naming conventions that you will use in your project, as it will be a lot harder to change them later on. Some general rules to follow:
[context]-[name]
, e.g. patient-ageWhen saving a profile, extend the filename with the resource type, for example: myPatient.structuredefinition-profile.xml or workedOnMonday.structuredefinition-extension.xml.
This'll help you tell the StructureDefinition files apart, which are otherwise all just the same StructureDefinition FHIR resource.
Always fill the narrative with a short description of what this (a profile or an extension), what FHIR resource is it profiling or extending, and a one-sentence description of what it does. For example, An extension <description>
or A profile on <resource> <description>
Imagine that a system should just be able to render the narrative of your resource to the user and they should have a pretty good understanding of what it's about.
Set the narrative status to blank, since it is neither generated nor additional content, but a summary.
Copy paste the description
(Properties
tab) into the definition
so the same short summary shows up at the start of the resource when in the Details view. For an example, see how they did this in the KULE HelseVest Prescription project.
Depending on the scope of the project, you'll want to consider an open or a closed modeling approach.
An open model is more generic, having few constraints, while a closed model is more specific, having more constraints.
National and regional projects would benefit from an open modeling approach to retain the biggest amount of flexibility for downstream projects. Downstream projects, on the other hand, might want to go with a closed modeling approach to set a contract on what kind of data can be received in order to have an easier time building the systems (database design and so on).
Example 1 – Open model
Observe how most of the cardinalities are left at their default (grey) in this open model, with the explicitly constrained cardinalities in black.
Example 2 – Closed model
Most cardinalities in this closed model have been constrained and unnecessary elements have been explicitly dissallowed.
The advantages and disadvantages between open and closed modeling are summarized in the table below.
Open modeling | Closed modeling | |
---|---|---|
Pros | Forward compatibility | No need to support all elements |
Focus on what must be supported | More specific models | |
More generic data fit | Smaller, straightforward models | |
More implementer feedback | ||
Cons | Implementers might need to support all of the elements | More versions of models |
Larger, vaguer models | Only backwards compatibility | |
Less implementer feedback | New elements require new version |
Our vision at Firely is to try to use an open modeling approach as much as possible - this way your models will be more generic and reusable. Elements that are not used can be freely ignored, while the mandatory ones will be present. In the end, however, the choice completely depends on your use case.
For the reasons mentioned above, we try to avoid constraining maximum cardinality to 0. Depending on the use case you can even take this one step further by not constraining maximum cardinality at all. Instead, you could choose to slice the element and constrain the cardinality of the slice. This makes it easier for client systems to send their data to you (and others) without having to create custom interfaces to strip out unrelated data, yet you can still find the data you need. However, be careful with specifying everything in slices and leaving the rest open. When everything falls in the open slice it will still be valid and it will make no sense to validate against your profile.
In the end it all depends on your use case. You may want to specify exact expectations for smaller use cases that have already been derived from national, regional or domain profiles. If you know you only need one occurrence for your use case, and the parties participating in that use case have no intention to support FHIR beyond that use case, it is defendable to make that explicit and limit the cardinality.
Another consideration is to use the MustSupport flag to mark elements that are relevant to your profile, instead of setting the minimum cardinality to 1. Of course this will depend on the meaning of MustSupport in your profile (which should be clarified in your implementation guide).
Whenever considering building a new extension, check if one already exists at:
Profiles
tab on hl7.org/fhir
If you find an appropriate one, use it! If you find one that similar but not quite what you need, contact the author to see if you can collaborate on extending it to a wider usecase.
Always fill in the description in both the extension and in the profile when you make use of the extension.
This is so a viewer looking at the profile doesn't have to dig up the corresponding extension just to see the description.
Always fill in the purpose field to describe why you created the extension. Not per se necessary for the profile.
As the FHIR landscape is evolving, new extensions might come up or the core specification could be updated to cover your usecase. Without having listed the original requirements or purpose, you could be confused looking at the extension five years down the road and wondering why is it seemingly duplicating functionality - when in reality such functionality didn't exist back when you created the resource.
Only apply mustSupport
in the profile and not when defining the extension itself, since you don't know if the extension "must be supported" in every use case it's going to be used in.
More information on when to use mustSupport and isModifier can be found here: https://fhirblog.com/2014/02/18/ismodifier-and-mustsupport-in-fhir/
The isModifier flag must be provided in the extension itself, because once you create it, you know that it's going to effect the meaning of the resource you apply it in.
When binding valuesets to an extension, create a preferred
binding, to give the potential user of the extension more context as to what that field should be. You can then choose to up the binding level (to extensible
or required
) at the profile level if you wish. The extension is more reusable this way as opposed to picking extensible
or required
straight on the extension.
Place the valueset binding on the value[x]
element, not the root extension
element itself.
When selecting the type of reference, use this rule:
* If the binding refers to an explicit value set - the normal case - then use a Reference(ValueSet)
, preferably containing the canonical URL for the value set.
* If the reference is to an implicit value set - usually, an IETF RFC that defines a grammar, such as mime types - then use a uri
.
If a valueset is required in FHIR and you need to add codes to it, make a new extension and valueset.
When filling out mappings from your profile/extension to other models, use the comments field to describe imperfect mapping to prevent confusion decision flip-flopping later on.
Always try to fill in the mapping to the logical mapping.
Don’t use name field.
Use the 'Alias' field to provide translations of the element/concepts name.
Use mapping in the profile, not needed in the extensions.
Tip: use this element for naming your slices and setting name references. In case of name references, you can use those to create re-usable structures with the resource.
Here below are examples of customers that we helped building profiles.
Nictiz is the centre of expertise for standardization and eHealth in The Netherlands. HL7 Netherlands core and MedMij profiles are published on Simplifier. MedMij is a national project that aims to give Dutch citizens integrated access to all their health data in one personal health environment. FHIR is used as a standard to exchange health information between the involved parties. The profiles are based on standardized clinical building blocks called Health and Care Information Models (HCIM).
In general, the project uses the following naming convention for naming resources:
http://[domain]/fhir/[ConformanceResource]/[project]-[name]-[semver.major]
Examples are:
Dutch core Patient: http://fhir.nl/fhir/StructureDefinition/nl-core-patient
HCIM for Dispense: http://nictiz.nl/fhir/StructureDefinition/zib-Dispense-1.0
All profiles and extensions are stored in a Git repository that is linked to the Simplifier project, so changes in the Master branch are automatically updated in the Simplifier project. The example below shows the folder structure, that is organized by resource type / HCIM. The naming of the files shows the content you can expect:
The implementation guide for the MedMij project was built in a WiKi page.
Stichting Koppeltaal is a Dutch organization that enables FHIR-based exchange of data between e-health applications in the care sector.
Koppeltaal reuses the Dutch national profiles as far as these are available. The example below shows the KoppeltaalPatient profile, which is derived from the nl-core-patient profile.
Patient | Patient | There are no (further) constraints on this element Element IdPatient Patient Alternate namesSubjectOfCare Client Resident, Patiënt DefinitionDemographics and other administrative information about an individual or animal receiving care or other health-related services.
| ||
extension | 0..* | Extension | There are no (further) constraints on this element Element IdPatient.extension Additional Content defined by implementations Alternate namesextensions, user content DefinitionMay be used to represent additional information that is not part of the basic definition of the resource. In order 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. 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) Constraints
| |
preferredPharmacy | 0..1 | Extension(Reference(nl-core-organization)) | There are no (further) constraints on this element Element IdPatient.extension:preferredPharmacy References a patient's preferered pharmacy Alternate namesextensions, user content, Verwijst naar de voorkeursapotheek van de patiënt DefinitionOptional Extension Element - found in all resources. 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. Extension(Reference(nl-core-organization)) Extension URLhttp://fhir.nl/fhir/StructureDefinition/nl-core-preferred-pharmacy Constraints
| |
url | 1..1 | uriFixed Value | There are no (further) constraints on this element Element IdPatient.extension:preferredPharmacy.url identifies the meaning of the extension DefinitionSource of the definition for the extension code - a logical name or a URL. The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.
http://fhir.nl/fhir/StructureDefinition/nl-core-preferred-pharmacy
| |
valueReference | 0..1 | KoppeltaalReference(KoppeltaalOrganization) | Element IdPatient.extension:preferredPharmacy.value[x] A reference from one resource to another DefinitionA reference from one resource to another. References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository. KoppeltaalReference(KoppeltaalOrganization) Constraints
| |
reference | Σ | 0..1 | string | There are no (further) constraints on this element Element IdPatient.extension:preferredPharmacy.value[x]:valueReference.reference Literal reference, Relative, internal or absolute URL DefinitionA 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. Using 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.
|
identifier | Σ | 0..1 | Identifier | There are no (further) constraints on this element Element IdPatient.extension:preferredPharmacy.value[x]:valueReference.identifier Logical reference, when literal reference is not known DefinitionAn identifier for the other resource. This is used when there is no way to reference the other resource directly, either because the entity 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. When 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.
|
extension | 0..* | Extension | There are no (further) constraints on this element Element IdPatient.extension:preferredPharmacy.value[x]:valueReference.identifier.extension Additional Content defined by implementations Alternate namesextensions, user content DefinitionMay be used to represent additional information that is not part of the basic definition of the element. In order 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. 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) Constraints
| |
reference-identifier-resource-type | 1..1 | Extension | Element IdPatient.extension:preferredPharmacy.value[x]:valueReference.identifier.extension:reference-identifier-resource-type Optional Extensions Element Alternate namesextensions, user content DefinitionOptional Extension Element - found in all resources. 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. http://ggz.koppeltaal.nl/fhir/StructureDefinition/reference-identifier-resource-type Constraints
| |
use | Σ ?! | 0..1 | codeBinding | There are no (further) constraints on this element Element IdPatient.extension:preferredPharmacy.value[x]:valueReference.identifier.use usual | official | temp | secondary (If known) DefinitionThe purpose of this identifier. Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers. This is labeled as "Is Modifier" because applications should not mistake a temporary id for a permanent one. Applications can assume that an identifier is permanent unless it explicitly says that it is temporary.
|
type | Σ | 0..1 | CodeableConceptBinding | There are no (further) constraints on this element Element IdPatient.extension:preferredPharmacy.value[x]:valueReference.identifier.type Description of identifier DefinitionA coded type for the identifier that can be used to determine which identifier to use for a specific purpose. Allows users to make use of identifiers when the identifier system is not known. This 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.
|
system | Σ | 0..1 | uri | There are no (further) constraints on this element Element IdPatient.extension:preferredPharmacy.value[x]:valueReference.identifier.system The namespace for the identifier value DefinitionEstablishes the namespace for the value - that is, a URL that describes a set values that are unique. There 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. see http://en.wikipedia.org/wiki/Uniform_resource_identifier
General http://www.acme.com/identifiers/patient Mappings
|
value | Σ | 0..1 | string | There are no (further) constraints on this element Element IdPatient.extension:preferredPharmacy.value[x]:valueReference.identifier.value The value that is unique DefinitionThe portion of the identifier typically relevant to the user and which is unique within the context of the system. If 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.
General 123456 Mappings
|
period | Σ | 0..1 | Period | There are no (further) constraints on this element Element IdPatient.extension:preferredPharmacy.value[x]:valueReference.identifier.period Time period when id is/was valid for use DefinitionTime period during which identifier is/was valid for use. This is not a duration - that's a measure of time (a separate type), but a duration that occurs at a fixed value of time. A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times"). If duration is required, specify the type as Interval|Duration.
|
assigner | Σ | 0..1 | Reference(Organization) | There are no (further) constraints on this element Element IdPatient.extension:preferredPharmacy.value[x]:valueReference.identifier.assigner Organization that issued id (may be just text) DefinitionOrganization that issued/manages the identifier. The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.
|
display | Σ | 0..1 | string | There are no (further) constraints on this element Element IdPatient.extension:preferredPharmacy.value[x]:valueReference.display Text alternative for the resource DefinitionPlain text narrative that identifies the resource in addition to the resource reference. This 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.
|
nationality | 0..* | ExtensionBinding | There are no (further) constraints on this element Element IdPatient.extension:nationality Nationality Alternate namesextensions, user content, Nationaliteit DefinitionThe nationality of the patient. 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. http://hl7.org/fhir/StructureDefinition/patient-nationality BindingNationaliteitCodelijst (extensible) Constraints
| |
extension | 0..* | Extension | There are no (further) constraints on this element Element IdPatient.extension:nationality.extension Additional Content defined by implementations Alternate namesextensions, user content DefinitionMay be used to represent additional information that is not part of the basic definition of the element. In order 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. 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) Constraints
| |
code | 0..1 | Extension | There are no (further) constraints on this element Element IdPatient.extension:nationality.extension:code Nationality Code Alternate namesextensions, user content DefinitionCode representing nationality of patient. 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.
| |
url | 1..1 | uriFixed Value | There are no (further) constraints on this element Element IdPatient.extension:nationality.extension:code.url identifies the meaning of the extension DefinitionSource of the definition for the extension code - a logical name or a URL. The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.
code
| |
valueCodeableConcept | 0..1 | CodeableConcept | There are no (further) constraints on this element Element IdPatient.extension:nationality.extension:code.value[x]:valueCodeableConcept Value of extension DefinitionValue of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list). A stream of bytes, base64 encoded
| |
period | 0..1 | Extension | There are no (further) constraints on this element Element IdPatient.extension:nationality.extension:period Nationality Period Alternate namesextensions, user content DefinitionPeriod when nationality was effective. 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.
| |
url | 1..1 | uriFixed Value | There are no (further) constraints on this element Element IdPatient.extension:nationality.extension:period.url identifies the meaning of the extension DefinitionSource of the definition for the extension code - a logical name or a URL. The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.
period
| |
valuePeriod | 0..1 | Period | There are no (further) constraints on this element Element IdPatient.extension:nationality.extension:period.value[x]:valuePeriod Value of extension DefinitionValue of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list). A stream of bytes, base64 encoded
| |
url | 1..1 | uriFixed Value | There are no (further) constraints on this element Element IdPatient.extension:nationality.url identifies the meaning of the extension DefinitionSource of the definition for the extension code - a logical name or a URL. The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.
http://hl7.org/fhir/StructureDefinition/patient-nationality
| |
value[x] | 0..0 | There are no (further) constraints on this element Element IdPatient.extension:nationality.value[x] Value of extension DefinitionValue of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list). A stream of bytes, base64 encoded
| ||
legalStatus | 0..2 | Extension(CodeableConcept) | There are no (further) constraints on this element Element IdPatient.extension:legalStatus legalStatus Alternate namesextensions, user content DefinitionThe legal situation that applies to the patient during the intervention. The code of the legal status is based on the Vektis/AZR code list COD232-VEKT Legal Status. The concept LegalStatus of the HCIM FreedomRestrictingMeasures plays an importand role in the context of mental healthcare (GGZ). This concept will become an independent HCIM with the next release of HCIM (2018 release). The LegalStatus concept and associated valueset will be split in two: legalstatus and guardianship. These concept are currently captured in one valueset. It is possible to have a legalstatus AND a representative. Therefore, we allow this extension to have a cardinality of 0..2. http://nictiz.nl/fhir/StructureDefinition/zib-patient-legalstatus Constraints
| |
url | 1..1 | uriFixed Value | There are no (further) constraints on this element Element IdPatient.extension:legalStatus.url identifies the meaning of the extension DefinitionSource of the definition for the extension code - a logical name or a URL. The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.
http://nictiz.nl/fhir/StructureDefinition/zib-patient-legalstatus
| |
valueCodeableConcept | 1..1 | CodeableConceptBinding | There are no (further) constraints on this element Element IdPatient.extension:legalStatus.value[x]:valueCodeableConcept LegalStatus Alternate namesJuridischeStatus DefinitionThe legal situation that applies to the patient during the intervention. The code of the legal status is based on the Vektis/AZR code list COD232-VEKT Legal Status. A stream of bytes, base64 encoded JuridischeStatusCodelijst (extensible) Constraints
| |
coding | Σ | 1..* | Coding | There are no (further) constraints on this element Element IdPatient.extension:legalStatus.value[x]:valueCodeableConcept.coding Code defined by a terminology system DefinitionA reference to a code defined by a terminology system. Allows for translations and alternate encodings within a code system. Also supports communication of the same instance to systems requiring different encodings. Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.
|
system | Σ | 1..1 | uri | There are no (further) constraints on this element Element IdPatient.extension:legalStatus.value[x]:valueCodeableConcept.coding.system Identity of the terminology system DefinitionThe identification of the code system that defines the meaning of the symbol in the code. Need to be unambiguous about the source of the definition of the symbol. The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should de-reference to some definition that establish the system clearly and unambiguously.
|
version | Σ | 0..1 | string | There are no (further) constraints on this element Element IdPatient.extension:legalStatus.value[x]:valueCodeableConcept.coding.version Version of the system - if relevant DefinitionThe version of the code system which was used when choosing this code. Note that a well-maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured. and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged. Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.
|
code | Σ | 1..1 | code | There are no (further) constraints on this element Element IdPatient.extension:legalStatus.value[x]:valueCodeableConcept.coding.code Symbol in syntax defined by the system DefinitionA symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination). Need to refer to a particular code in the system. Note that FHIR strings may not exceed 1MB in size
|
display | Σ | 0..1 | string | There are no (further) constraints on this element Element IdPatient.extension:legalStatus.value[x]:valueCodeableConcept.coding.display Representation defined by the system DefinitionA representation of the meaning of the code in the system, following the rules of the system. Need to be able to carry a human-readable meaning of the code for readers that do not know the system. Note that FHIR strings may not exceed 1MB in size
|
userSelected | Σ | 0..1 | boolean | There are no (further) constraints on this element Element IdPatient.extension:legalStatus.value[x]:valueCodeableConcept.coding.userSelected If this coding was chosen directly by the user DefinitionIndicates that this coding was chosen by a user directly - i.e. off a pick list of available items (codes or displays). This has been identified as a clinical safety criterium - that this exact system/code pair was chosen explicitly, rather than inferred by the system based on some rules or language processing. Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.
|
text | Σ | 0..1 | string | There are no (further) constraints on this element Element IdPatient.extension:legalStatus.value[x]:valueCodeableConcept.text Plain text representation of the concept DefinitionA human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user. The codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source. Very often the text is the same as a displayName of one of the codings.
|
person-age | 0..* | ExtensionBinding | Element IdPatient.extension:person-age Nationality Alternate namesextensions, user content DefinitionThe nationality of the patient. 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. http://ggz.koppeltaal.nl/fhir/StructureDefinition/person-age Binding?? (extensible) Constraints
| |
identifier | Σ | 1..* | Identifier | There are no (further) constraints on this element Element IdPatient.identifier PatientIdentificationNumber Alternate namesIdentificatienummer DefinitionThe Burgerservicenummer or BSN, as one of the possible patient identification numbers, should at least be sent unless there is a reason not to. Reasons for not sending the burgerservicenummer include but are not limited to, research and apps without a contract for processing data (Dutch: bewerkingsovereenkomst). Patients are almost always assigned specific numerical identifiers. Unordered, Open, by system(Value) Constraints
|
BSN | Σ | 0..1 | Identifier | There are no (further) constraints on this element Element IdPatient.identifier:BSN BSN Alternate namesBSN DefinitionAn identifier for this patient. Patients are almost always assigned specific numerical identifiers.
|
use | Σ ?! | 0..1 | codeBinding | There are no (further) constraints on this element Element IdPatient.identifier:BSN.use usual | official | temp | secondary (If known) DefinitionThe purpose of this identifier. Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers. This is labeled as "Is Modifier" because applications should not mistake a temporary id for a permanent one. Applications can assume that an identifier is permanent unless it explicitly says that it is temporary.
|
type | Σ | 0..1 | CodeableConceptBinding | There are no (further) constraints on this element Element IdPatient.identifier:BSN.type Description of identifier DefinitionA coded type for the identifier that can be used to determine which identifier to use for a specific purpose. Allows users to make use of identifiers when the identifier system is not known. This 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.
|
system | Σ | 1..1 | uriFixed Value | There are no (further) constraints on this element Element IdPatient.identifier:BSN.system The namespace for the identifier value DefinitionEstablishes the namespace for the value - that is, a URL that describes a set values that are unique. There 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. see http://en.wikipedia.org/wiki/Uniform_resource_identifier
http://fhir.nl/fhir/NamingSystem/bsn
|
value | Σ | 1..1 | string | There are no (further) constraints on this element Element IdPatient.identifier:BSN.value BSN (Burgerservicenummer (Dutch person identification number)) Alternate namesBSN DefinitionThe portion of the identifier typically relevant to the user and which is unique within the context of the system. If 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.
General 123456 Example of a burgerservicenummer 123456782 Mappings
|
period | Σ | 0..1 | Period | There are no (further) constraints on this element Element IdPatient.identifier:BSN.period Time period when id is/was valid for use DefinitionTime period during which identifier is/was valid for use. This is not a duration - that's a measure of time (a separate type), but a duration that occurs at a fixed value of time. A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times"). If duration is required, specify the type as Interval|Duration.
|
assigner | Σ | 0..1 | Reference(http://hl7.org/fhir/StructureDefinition/KoppeltaalOrganization) | Element IdPatient.identifier:BSN.assigner Organization that issued id (may be just text) DefinitionOrganization that issued/manages the identifier. The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization. Reference(http://hl7.org/fhir/StructureDefinition/KoppeltaalOrganization) Constraints
|
active | Σ ?! | 0..1 | boolean | There are no (further) constraints on this element Element IdPatient.active Whether this patient's record is in active use DefinitionThis field determines the status of the 'patient' record in the context of the organization that owns the record. Note that the record is not the medical record, but rather the actual patient 'resource'. Obviously when the patient 'resource' is not active, then by extension his medical record might also be inactive. Patient.active='false' may be used discourage use of the record, but that it is kept beause there is (medical) data attached to it. Another use case is a patient moving to a different GP practice. Patient.active would be 'false' in the system of the previous GP. Need to be able to mark a patient record as not to be used because it was created in error. Default is true. If a record is inactive, and linked to an active record, then future patient/record updates should occur on the other patient This element is labeled as a modifier because when the patient record is marked as not active it is not expected to be used/referenced without being changed back to active.
true
|
name | Σ | 0..* | nl-core-humanname | There are no (further) constraints on this element Element IdPatient.name NameInformation Alternate namesNaamgegevens DefinitionA human's name with the ability to identify parts and usage. Need to be able to track the patient by multiple names. Examples are your official name and a partner name. Names may be changed, or repudiated, or people may have different names in different contexts. Names may be divided into parts of different type that have variable significance depending on context, though the division into parts does not always matter. With personal names, the different parts may or may not be imbued with some implicit meaning; various cultures associate different importance with the name parts and the degree to which systems must care about name parts around the world varies widely. A Dutch HumanName is a proper FHIR HumanName. Systems that do not understand any of the extensions, will be able to render and work with a Dutch name. Dutch names make certain name parts seaprately communicable. These parts are required for use in true Dutch systems when dealing with Dutch names, but may not have value for international systems when information gets sent abroad. To have true compatibility an implementer SHOULD use the core HumanName parts as intended. To have names work for Dutch context, the implementer SHOULD in addition use the extension elements. The extension elements cover birth name (NL: eigennaam / geslachtsnaam) and partner/spouse name. Both may have a prefix (NL: voorvoegsel). When a person marries, he or she may keep their own name, assume the partner name, append the partner name to their own name, or the other way around. For this reason, there are extensions for marking each part for what it is. Example: miss Irma Jongeneel marries mister de Haas and assumes the name Irma Jongeneel-de Haas family = "Jongeneel-de Haas" given = "Irma" humanname-own-name = "Jongeneel" humanname-partner-prefix = "de " humanname-partner-name = "Haas"
Structured HumanName (preferred above unstructured) { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/humanname-assembly-order", "valueCode": "NL4" } ], "use": "official", "family": "Jongeneel-de Haas", "_family": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/humanname-own-name", "valueString": "Jongeneel" }, { "url": "http://hl7.org/fhir/StructureDefinition/humanname-partner-prefix", "valueString": "de" }, { "url": "http://hl7.org/fhir/StructureDefinition/humanname-partner-name", "valueString": "Haas" } ] }, "given": [ "Irma", "I." ], "_given": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier", "valueCode": "CL" } ] }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier", "valueCode": "IN" } ] } ] } Unstructured HumanName { "use": "official", "text": "Irma Jongeneel-de Haas" } Mappings
|
telecom | Σ | 0..* | nl-core-contactpoint | There are no (further) constraints on this element Element IdPatient.telecom ContactInformation Alternate namesContactgegevens DefinitionA contact detail for the individual. Note that there is no support for multiple use values like 'mobile business'. People have (primary) ways to contact them in some way such as phone, email. A 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 may 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).
Mobile business phone number. Note: the mobile nature stems from the number being an 06-* number. { "system": "phone", "value": "+31611234567", "use": "work" } Mobile phone number undetermined private/business. Note: the mobile nature stems from the number being an 06-* number. { "system": "phone", "value": "+31611234567", "use": "mobile" } Primary Home Land Line { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:2.16.840.1.113883.2.4.3.11.60.40.4.22.1", "code": "LL", "display": "Land Line" } ] } } ], "system": "phone", "value": "...", "use": "home" } Temporary Land Line { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:2.16.840.1.113883.2.4.3.11.60.40.4.22.1", "code": "LL", "display": "Land Line" } ] } } ], "system": "phone", "value": "...", "use": "temp" } Primary Work Land Line { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:2.16.840.1.113883.2.4.3.11.60.40.4.22.1", "code": "LL", "display": "Land Line" } ] } } ], "system": "phone", "value": "...", "use": "work" } Primary Home Fax { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:2.16.840.1.113883.2.4.3.11.60.40.4.22.1", "code": "FAX", "display": "Fax" } ] } } ], "system": "fax", "value": "...", "use": "home" } Temporary Fax { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:2.16.840.1.113883.2.4.3.11.60.40.4.22.1", "code": "FAX", "display": "Fax" } ] } } ], "system": "fax", "value": "...", "use": "temp" } Primary Work Fax { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:2.16.840.1.113883.2.4.3.11.60.40.4.22.1", "code": "FAX", "display": "Fax" } ] } } ], "system": "fax", "value": "...", "use": "work" } Primary Home Mobile Phone { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/v3/AddressUse", "code": "MC", "display": "Mobile Phone" } ] } } ], "system": "phone", "value": "...", "use": "home" } Temporary Mobile Phone { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/v3/AddressUse", "code": "MC", "display": "Mobile Phone" } ] } } ], "system": "phone", "value": "...", "use": "temp" } Primary Work Mobile Phone { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/v3/AddressUse", "code": "MC", "display": "Mobile Phone" } ] } } ], "system": "phone", "value": "...", "use": "work" } Primary Home Pager { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/v3/AddressUse", "code": "PG", "display": "Pager" } ] } } ], "system": "pager", "value": "...", "use": "home" } Temporary Pager { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/v3/AddressUse", "code": "PG", "display": "Pager" } ] } } ], "system": "pager", "value": "...", "use": "temp" } Primary Work Pager { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/v3/AddressUse", "code": "PG", "display": "Pager" } ] } } ], "system": "pager", "value": "...", "use": "work" } Private email address { "system": "email", "value": "giesput@myweb.nl", "use": "home" } Work email address { "system": "email", "value": "example@workplace.nl", "use": "work" } Mappings
|
gender | Σ | 0..1 | codeBinding | There are no (further) constraints on this element Element IdPatient.gender Gender Alternate namesGeslacht DefinitionAdministrative Gender - the gender that the patient is considered to have for administration and record keeping purposes. Needed for identification of the individual, in combination with (at least) name and birth date. Gender of individual drives many clinical processes. The gender may 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 M and F, though the vast majority of systems and contexts only support M and F. Systems providing decision support or enforcing business rules should ideally do this on the basis of Observations dealing with the specific gender aspect of interest (anatomical, chromosonal, 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, chromosonal and other gender aspects. For example, an alert about a hysterectomy on a male should be handled as a warning or overrideable error, not a "hard" error. administrative-gender (required) Constraints
|
extension | 0..* | Extension | There are no (further) constraints on this element Element IdPatient.gender.extension Additional Content defined by implementations Alternate namesextensions, user content DefinitionMay be used to represent additional information that is not part of the basic definition of the element. In order 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. 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) Constraints
| |
GeslachtCodelijst | 0..1 | Extension(CodeableConcept) | There are no (further) constraints on this element Element IdPatient.gender.extension:GeslachtCodelijst Gender Alternate namesextensions, user content, Bevat de specifieke code conform de zib, bij een FHIR-element die een verplichte koppeling heeft met een bepaalde FHIR waardelijst of een FHIR element die niet gecodeerd is gedefinieerd, terwijl de zib dit wel doet., Geslacht DefinitionPatient’s administrative gender. 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. http://nictiz.nl/fhir/StructureDefinition/code-specification Constraints
| |
url | 1..1 | uriFixed Value | There are no (further) constraints on this element Element IdPatient.gender.extension:GeslachtCodelijst.url identifies the meaning of the extension DefinitionSource of the definition for the extension code - a logical name or a URL. The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.
http://nictiz.nl/fhir/StructureDefinition/code-specification
| |
valueCodeableConcept | 1..1 | CodeableConceptBinding | There are no (further) constraints on this element Element IdPatient.gender.extension:GeslachtCodelijst.value[x]:valueCodeableConcept Value of extension DefinitionValue of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list). A stream of bytes, base64 encoded GeslachtCodelijst (extensible) Constraints
| |
birthDate | Σ | 0..1 | date | There are no (further) constraints on this element Element IdPatient.birthDate Patients date of birth. The date of birth is mandatory for a patient. An incomplete date, e.g. only year or only year + month, is permitted. Alternate namesGeboortedatum DefinitionThe date of birth for the individual. Age of the individual drives many clinical processes. At 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 maternaty/infant care systems).
|
deceased[x] | Σ ?! | 0..1 | There are no (further) constraints on this element Element IdPatient.deceased[x] DeathIndicator/DateOfDeath Alternate namesOverlijdensindicator/DatumOverlijden DefinitionIndicates if the individual is deceased or not. The 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. If 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. This element is labeled as a modifier because once a patient is marked as deceased, the actions that are appropriate to perform on the patient may be significantly different.
| |
deceasedBoolean | boolean | There are no (further) constraints on this element Data Type | ||
deceasedDateTime | dateTime | There are no (further) constraints on this element Data Type | ||
address | Σ | 0..* | nl-core-address | There are no (further) constraints on this element Element IdPatient.address AddressInformation Alternate namesAdresInformatie, Adresgegevens DefinitionThis datatype defines a common basis for expressing all addresses around the world, but adds extensions to express Dutch addresses specifically, according to the HCIM AddressInformation (v1.0, 2017). A Dutch Address still is a proper FHIR Address, which means that systems that cannot interpret the extensions will still be able to render and work with this datatype. To have true compatibility an implementer SHOULD use the core Address parts as intended. To have addresses work for Dutch context, the implementer SHOULD in addition use the extension elements. Separate address parts The first addition is that Dutch addresses make certain address parts separately communicable. These parts are required for use in true Dutch systems when dealing with Dutch addresses, but may not have value for international systems when information gets sent abroad. Custom address types The second addition is that the HCIM defines its own ValueSet for address types, which can only be partially expressed using the FHIR Address datatype and requires a mapping to multiple elements. The table below explains how the HCIM concepts are mapped to the various FHIR elements (see the ConceptMaps http://nictiz.nl/fhir/ConceptMap/AdresSoortCodelijst-to-AddressUse and http://nictiz.nl/fhir/ConceptMap/AdresSoortCodelijst-to-AddressType as well). The HCIM code itself should also be included using the AddressType extension.
If Address.type is "both" then this is to be understood as a dual purpose address (postal and physical). Systems that support importing it like this are encouraged to do so, otherwise they may need to import this as two separate addresses. NOTE: FHIR core defines the AD-use extension to further specify the postal address type. However, the ValueSet used in that extension doesn't completely match the HCIM ValueSet. Therefore, a custom extension has been made. This doesn't preclude the use of the AD-use extension. May need to keep track of patient addresses for contacting, billing or reporting requirements and also to help with identification. Note: address is for postal addresses, not physical locations.
Example of a Vacation Home address { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-AddressInformation-AddressType", "valueCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/v3/AddressUse", "code": "HV", "display": "Vakantie adres" } ] } } ], "use": "temp", "line": [ "Binnenkant 12A Hoog" ], "_line": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-streetName", "valueString": "Binnenkant" }, { "url": "http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-houseNumber", "valueString": "12" }, { "url": "http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-buildingNumberSuffix", "valueString": "A" }, { "url": "http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-unitID", "valueString": "Hoog" } ] } ], "city": "Amsterdam", "state": "NH", "postalCode": "1000AA", "country": "NLD" } Example of a Primary Home address { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-AddressInformation-AddressType", "valueCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/v3/AddressUse", "code": "HP", "display": "Officieel adres" } ] } }, { "url": "http://fhir.nl/fhir/StructureDefinition/nl-core-address-official", "valueBoolean": true } ], "use": "home", "line": [ "Binnenkant to 10" ], "_line": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-streetName", "valueString": "Binnenkant" }, { "url": "http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-additionalLocator", "valueString": "to" }, { "url": "http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-houseNumber", "valueString": "10" } ] } ], "city": "Amsterdam", "state": "NH", "postalCode": "1001AA", "country": "NLD" } Mappings
|
maritalStatus | 0..1 | CodeableConceptBinding | There are no (further) constraints on this element Element IdPatient.maritalStatus MaritalStatus Alternate namesBurgerlijkeStaat DefinitionThis field contains a patient's most recent marital (civil) status. A person’s marital status according to the terms and definition in the Dutch civil code. Most, if not all systems capture it. Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination. BurgerlijkeStaatCodelijst (extensible) Constraints
| |
multipleBirth[x] | 0..1 | There are no (further) constraints on this element Element IdPatient.multipleBirth[x] MultipleBirthIndicator Alternate namesMeerlingindicator DefinitionIndicates whether the patient is part of a multiple (bool) or indicates the actual birth order (integer). For disambiguation of multiple-birth children, especially relevant where the care provider doesn't meet the patient, such as labs. Where the valueInteger is provided, the number is the birth number in the sequence. E.g. The middle birth in tripplets would be valueInteger=2 and the third born would have valueInteger=3 If a bool value was provided for this tripplets examle, then all 3 patient records would have valueBool=true (the ordering is not indicated).
| ||
multipleBirthBoolean | boolean | There are no (further) constraints on this element Data Type | ||
multipleBirthInteger | integer | There are no (further) constraints on this element Data Type | ||
photo | 0..* | Attachment | There are no (further) constraints on this element Element IdPatient.photo Image of the patient DefinitionImage of the patient. Many EHR systems have the capability to capture an image of the patient. Fits with newer social media usage too. When providing a summary view (for example with Observation.value[x]) Attachment should be represented with a brief display text such as "Attachment".
| |
contact | 0..* | BackboneElement | There are no (further) constraints on this element Element IdPatient.contact ContactPerson Alternate namesContactpersoon DefinitionContacts are related persons in some way, but not all related persons are contacts. The HCIM ContactPerson is designed to deal with both related persons and contacts. An HCIM ContactPerson who is a contact, is expected to have an NL-CM:3.1.2 Role primary contact ('Eerste relatie/contactpersoon') or secondary contact ('Tweede relatie/contactpersoon'). See Patient.contact.relationship in slice 'role'. Need to track people you can contact about the patient. Contact 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.
| |
relationship | 0..* | CodeableConceptBinding | There are no (further) constraints on this element Element IdPatient.contact.relationship The kind of relationship DefinitionThe nature of the relationship between the patient and the contact person. Used to determine which contact person is the most relevant to approach, depending on circumstances. Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination. Unordered, Open, by coding.system(Value) BindingHL7 v2 Value Set 0131 (extensible) Constraints
| |
relationship | 0..* | CodeableConceptBinding | There are no (further) constraints on this element Element IdPatient.contact.relationship:relationship Relationship Alternate namesRelatie DefinitionThe nature of the relationship between the patient and the contact person. Used to determine which contact person is the most relevant to approach, depending on circumstances. Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.
| |
role | 0..* | CodeableConceptBinding | There are no (further) constraints on this element Element IdPatient.contact.relationship:role Role Alternate namesRol DefinitionExpectation is to have at least one of primary contact ('Eerste relatie/contactpersoon') or secondary contact ('Tweede relatie/contactpersoon') Used to determine which contact person is the most relevant to approach, depending on circumstances. Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.
| |
name | 0..1 | nl-core-humanname | There are no (further) constraints on this element Element IdPatient.contact.name NameInformation Alternate namesNaamgegevens DefinitionA human's name with the ability to identify parts and usage. Contact persons need to be identified by name, but it is uncommon to need details about multiple other names for that contact person. Names may be changed, or repudiated, or people may have different names in different contexts. Names may be divided into parts of different type that have variable significance depending on context, though the division into parts does not always matter. With personal names, the different parts may or may not be imbued with some implicit meaning; various cultures associate different importance with the name parts and the degree to which systems must care about name parts around the world varies widely. A Dutch HumanName is a proper FHIR HumanName. Systems that do not understand any of the extensions, will be able to render and work with a Dutch name. Dutch names make certain name parts seaprately communicable. These parts are required for use in true Dutch systems when dealing with Dutch names, but may not have value for international systems when information gets sent abroad. To have true compatibility an implementer SHOULD use the core HumanName parts as intended. To have names work for Dutch context, the implementer SHOULD in addition use the extension elements. The extension elements cover birth name (NL: eigennaam / geslachtsnaam) and partner/spouse name. Both may have a prefix (NL: voorvoegsel). When a person marries, he or she may keep their own name, assume the partner name, append the partner name to their own name, or the other way around. For this reason, there are extensions for marking each part for what it is. Example: miss Irma Jongeneel marries mister de Haas and assumes the name Irma Jongeneel-de Haas family = "Jongeneel-de Haas" given = "Irma" humanname-own-name = "Jongeneel" humanname-partner-prefix = "de " humanname-partner-name = "Haas"
Structured HumanName (preferred above unstructured) { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/humanname-assembly-order", "valueCode": "NL4" } ], "use": "official", "family": "Jongeneel-de Haas", "_family": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/humanname-own-name", "valueString": "Jongeneel" }, { "url": "http://hl7.org/fhir/StructureDefinition/humanname-partner-prefix", "valueString": "de" }, { "url": "http://hl7.org/fhir/StructureDefinition/humanname-partner-name", "valueString": "Haas" } ] }, "given": [ "Irma", "I." ], "_given": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier", "valueCode": "CL" } ] }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier", "valueCode": "IN" } ] } ] } Unstructured HumanName { "use": "official", "text": "Irma Jongeneel-de Haas" } Mappings
| |
telecom | 0..* | nl-core-contactpoint | There are no (further) constraints on this element Element IdPatient.contact.telecom ContactInformation Alternate namesContactgegevens DefinitionContact information includes a person's telephone numbers and email addresses. This datatype defines a common basis for expressing all contact information around the world, but adds extensions to express Dutch contacts specifically, according to the HCIM ContactInformation (v1.0, 2017). A Dutch ContactPoint still is a proper FHIR ContactPoint, which means that systems that cannot interpret the extensions will still be able to render and work with this datatype. The table below explains how the HCIM concepts are mapped to the various FHIR elements. The HCIM code itself should also be included using the TelecomType extension.
People have (primary) ways to contact them in some way such as phone, email. Telecommunication data details (phone/email) is physically modeled in the HCIM Patient, which is why the telecommunication mappings appear to be coming from the HCIM Patient instead of the HCIM ContactPerson
Mobile business phone number. Note: the mobile nature stems from the number being an 06-* number. { "system": "phone", "value": "+31611234567", "use": "work" } Mobile phone number undetermined private/business. Note: the mobile nature stems from the number being an 06-* number. { "system": "phone", "value": "+31611234567", "use": "mobile" } Primary Home Land Line { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:2.16.840.1.113883.2.4.3.11.60.40.4.22.1", "code": "LL", "display": "Land Line" } ] } } ], "system": "phone", "value": "...", "use": "home" } Temporary Land Line { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:2.16.840.1.113883.2.4.3.11.60.40.4.22.1", "code": "LL", "display": "Land Line" } ] } } ], "system": "phone", "value": "...", "use": "temp" } Primary Work Land Line { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:2.16.840.1.113883.2.4.3.11.60.40.4.22.1", "code": "LL", "display": "Land Line" } ] } } ], "system": "phone", "value": "...", "use": "work" } Primary Home Fax { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:2.16.840.1.113883.2.4.3.11.60.40.4.22.1", "code": "FAX", "display": "Fax" } ] } } ], "system": "fax", "value": "...", "use": "home" } Temporary Fax { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:2.16.840.1.113883.2.4.3.11.60.40.4.22.1", "code": "FAX", "display": "Fax" } ] } } ], "system": "fax", "value": "...", "use": "temp" } Primary Work Fax { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:2.16.840.1.113883.2.4.3.11.60.40.4.22.1", "code": "FAX", "display": "Fax" } ] } } ], "system": "fax", "value": "...", "use": "work" } Primary Home Mobile Phone { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/v3/AddressUse", "code": "MC", "display": "Mobile Phone" } ] } } ], "system": "phone", "value": "...", "use": "home" } Temporary Mobile Phone { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/v3/AddressUse", "code": "MC", "display": "Mobile Phone" } ] } } ], "system": "phone", "value": "...", "use": "temp" } Primary Work Mobile Phone { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/v3/AddressUse", "code": "MC", "display": "Mobile Phone" } ] } } ], "system": "phone", "value": "...", "use": "work" } Primary Home Pager { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/v3/AddressUse", "code": "PG", "display": "Pager" } ] } } ], "system": "pager", "value": "...", "use": "home" } Temporary Pager { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/v3/AddressUse", "code": "PG", "display": "Pager" } ] } } ], "system": "pager", "value": "...", "use": "temp" } Primary Work Pager { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-ContactInformation-TelecomType", "valueCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/v3/AddressUse", "code": "PG", "display": "Pager" } ] } } ], "system": "pager", "value": "...", "use": "work" } Private email address { "system": "email", "value": "giesput@myweb.nl", "use": "home" } Work email address { "system": "email", "value": "example@workplace.nl", "use": "work" } Mappings
| |
address | 0..1 | nl-core-address | There are no (further) constraints on this element Element IdPatient.contact.address AddressInformation Alternate namesAdresInformatie, Adresgegevens DefinitionThis datatype defines a common basis for expressing all addresses around the world, but adds extensions to express Dutch addresses specifically, according to the HCIM AddressInformation (v1.0, 2017). A Dutch Address still is a proper FHIR Address, which means that systems that cannot interpret the extensions will still be able to render and work with this datatype. To have true compatibility an implementer SHOULD use the core Address parts as intended. To have addresses work for Dutch context, the implementer SHOULD in addition use the extension elements. Separate address parts The first addition is that Dutch addresses make certain address parts separately communicable. These parts are required for use in true Dutch systems when dealing with Dutch addresses, but may not have value for international systems when information gets sent abroad. Custom address types The second addition is that the HCIM defines its own ValueSet for address types, which can only be partially expressed using the FHIR Address datatype and requires a mapping to multiple elements. The table below explains how the HCIM concepts are mapped to the various FHIR elements (see the ConceptMaps http://nictiz.nl/fhir/ConceptMap/AdresSoortCodelijst-to-AddressUse and http://nictiz.nl/fhir/ConceptMap/AdresSoortCodelijst-to-AddressType as well). The HCIM code itself should also be included using the AddressType extension.
If Address.type is "both" then this is to be understood as a dual purpose address (postal and physical). Systems that support importing it like this are encouraged to do so, otherwise they may need to import this as two separate addresses. NOTE: FHIR core defines the AD-use extension to further specify the postal address type. However, the ValueSet used in that extension doesn't completely match the HCIM ValueSet. Therefore, a custom extension has been made. This doesn't preclude the use of the AD-use extension. Need to keep track where the contact person can be contacted per postal mail or visited. Note: address is for postal addresses, not physical locations.
Example of a Vacation Home address { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-AddressInformation-AddressType", "valueCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/v3/AddressUse", "code": "HV", "display": "Vakantie adres" } ] } } ], "use": "temp", "line": [ "Binnenkant 12A Hoog" ], "_line": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-streetName", "valueString": "Binnenkant" }, { "url": "http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-houseNumber", "valueString": "12" }, { "url": "http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-buildingNumberSuffix", "valueString": "A" }, { "url": "http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-unitID", "valueString": "Hoog" } ] } ], "city": "Amsterdam", "state": "NH", "postalCode": "1000AA", "country": "NLD" } Example of a Primary Home address { "extension": [ { "url": "http://nictiz.nl/fhir/StructureDefinition/zib-AddressInformation-AddressType", "valueCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/v3/AddressUse", "code": "HP", "display": "Officieel adres" } ] } }, { "url": "http://fhir.nl/fhir/StructureDefinition/nl-core-address-official", "valueBoolean": true } ], "use": "home", "line": [ "Binnenkant to 10" ], "_line": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-streetName", "valueString": "Binnenkant" }, { "url": "http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-additionalLocator", "valueString": "to" }, { "url": "http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-houseNumber", "valueString": "10" } ] } ], "city": "Amsterdam", "state": "NH", "postalCode": "1001AA", "country": "NLD" } Mappings
| |
gender | 0..1 | codeBinding | There are no (further) constraints on this element Element IdPatient.contact.gender male | female | other | unknown DefinitionAdministrative Gender - the gender that the contact person is considered to have for administration and record keeping purposes. Needed to address the person correctly. Note that FHIR strings may not exceed 1MB in size administrative-gender (required) Constraints
| |
organization | 0..1 | KoppeltaalReference(KoppeltaalOrganization) | Element IdPatient.contact.organization A reference from one resource to another DefinitionA reference from one resource to another. For guardians or business related contacts, the organization is relevant. References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository. KoppeltaalReference(KoppeltaalOrganization) Constraints
| |
reference | Σ | 0..1 | string | There are no (further) constraints on this element Element IdPatient.contact.organization.reference Literal reference, Relative, internal or absolute URL DefinitionA 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. Using 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.
|
identifier | Σ | 0..1 | Identifier | There are no (further) constraints on this element Element IdPatient.contact.organization.identifier Logical reference, when literal reference is not known DefinitionAn identifier for the other resource. This is used when there is no way to reference the other resource directly, either because the entity 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. When 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.
|
extension | 0..* | Extension | There are no (further) constraints on this element Element IdPatient.contact.organization.identifier.extension Additional Content defined by implementations Alternate namesextensions, user content DefinitionMay be used to represent additional information that is not part of the basic definition of the element. In order 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. 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) Constraints
| |
reference-identifier-resource-type | 1..1 | Extension | Element IdPatient.contact.organization.identifier.extension:reference-identifier-resource-type Optional Extensions Element Alternate namesextensions, user content DefinitionOptional Extension Element - found in all resources. 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. http://ggz.koppeltaal.nl/fhir/StructureDefinition/reference-identifier-resource-type Constraints
| |
use | Σ ?! | 0..1 | codeBinding | There are no (further) constraints on this element Element IdPatient.contact.organization.identifier.use usual | official | temp | secondary (If known) DefinitionThe purpose of this identifier. Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers. This is labeled as "Is Modifier" because applications should not mistake a temporary id for a permanent one. Applications can assume that an identifier is permanent unless it explicitly says that it is temporary.
|
type | Σ | 0..1 | CodeableConceptBinding | There are no (further) constraints on this element Element IdPatient.contact.organization.identifier.type Description of identifier DefinitionA coded type for the identifier that can be used to determine which identifier to use for a specific purpose. Allows users to make use of identifiers when the identifier system is not known. This 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.
|
system | Σ | 0..1 | uri | There are no (further) constraints on this element Element IdPatient.contact.organization.identifier.system The namespace for the identifier value DefinitionEstablishes the namespace for the value - that is, a URL that describes a set values that are unique. There 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. see http://en.wikipedia.org/wiki/Uniform_resource_identifier
General http://www.acme.com/identifiers/patient Mappings
|
value | Σ | 0..1 | string | There are no (further) constraints on this element Element IdPatient.contact.organization.identifier.value The value that is unique DefinitionThe portion of the identifier typically relevant to the user and which is unique within the context of the system. If 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.
General 123456 Mappings
|
period | Σ | 0..1 | Period | There are no (further) constraints on this element Element IdPatient.contact.organization.identifier.period Time period when id is/was valid for use DefinitionTime period during which identifier is/was valid for use. This is not a duration - that's a measure of time (a separate type), but a duration that occurs at a fixed value of time. A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times"). If duration is required, specify the type as Interval|Duration.
|
assigner | Σ | 0..1 | Reference(Organization) | There are no (further) constraints on this element Element IdPatient.contact.organization.identifier.assigner Organization that issued id (may be just text) DefinitionOrganization that issued/manages the identifier. The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.
|
display | Σ | 0..1 | string | There are no (further) constraints on this element Element IdPatient.contact.organization.display Text alternative for the resource DefinitionPlain text narrative that identifies the resource in addition to the resource reference. This 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.
|
period | 0..1 | Period | There are no (further) constraints on this element Element IdPatient.contact.period The period during which this contact person or organization is valid to be contacted relating to this patient DefinitionThe period during which this contact person or organization is valid to be contacted relating to this patient. This is not a duration - that's a measure of time (a separate type), but a duration that occurs at a fixed value of time. A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times"). If duration is required, specify the type as Interval|Duration.
| |
animal | Σ ?! | 0..0 | BackboneElement | There are no (further) constraints on this element Element IdPatient.animal This patient is known to be an animal (non-human) DefinitionThis patient is known to be an animal. Many clinical systems are extended to care for animal patients as well as human. The animal element is labeled "Is Modifier" since patients may be non-human. Systems SHALL either handle patient details appropriately (e.g. inform users patient is not human) or reject declared animal records. The absense of the animal element does not imply that the patient is a human. If a system requires such a positive assertion that the patient is human, an extension will be required. (Do not use a species of homo-sapiens in animal species, as this would incorrectly infer that the patient is an animal).
|
communication | 0..* | BackboneElement | There are no (further) constraints on this element Element IdPatient.communication A list of Languages which may be used to communicate with the patient about his or her health Alternate namesTaalvaardigheid DefinitionLanguages which may be used to communicate with the patient about his or her health. If a patient does not speak the local language, interpreters may be required, so languages spoken and proficiency is an important things to keep track of both for patient and other persons of interest. If 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.
| |
extension | 0..* | Extension | There are no (further) constraints on this element Element IdPatient.communication.extension Additional Content defined by implementations Alternate namesextensions, user content DefinitionMay be used to represent additional information that is not part of the basic definition of the element. In order 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. 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) Constraints
| |
languageProficiency | 0..* | Extension(Complex) | There are no (further) constraints on this element Element IdPatient.communication.extension:languageProficiency Proficiency level of the communication Alternate namesextensions, user content DefinitionProficiency level of the communication. The HCIM concepts LanguageControlListening, LanguageControlReading, LanguageControlSpeaking are captuperd using a mocked offical HL7 core extension from the R4 FHIR specification. Each of these three concepts is encoded as a copy of the extension, typed using the code in the type slice according to the following mapping:
Extension(Complex) Extension URLhttp://nictiz.nl/fhir/StructureDefinition/patient-proficiency Constraints
| |
extension | 0..* | Extension | There are no (further) constraints on this element Element IdPatient.communication.extension:languageProficiency.extension Additional Content defined by implementations Alternate namesextensions, user content DefinitionMay be used to represent additional information that is not part of the basic definition of the element. In order 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. 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) Constraints
| |
type | 1..1 | Extension | There are no (further) constraints on this element Element IdPatient.communication.extension:languageProficiency.extension:type The proficiency type of the communication Alternate namesextensions, user content DefinitionWhat type of communication for the proficiency (spoken, written, etc.). 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.
| |
url | 1..1 | uriFixed Value | There are no (further) constraints on this element Element IdPatient.communication.extension:languageProficiency.extension:type.url identifies the meaning of the extension DefinitionSource of the definition for the extension code - a logical name or a URL. The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.
type
| |
valueCoding | 1..1 | CodingBinding | There are no (further) constraints on this element Element IdPatient.communication.extension:languageProficiency.extension:type.value[x]:valueCoding Value of extension DefinitionValue of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list). A stream of bytes, base64 encoded TaalvaardigheidBegrijpenCodelijst (extensible) Constraints
| |
level | 1..1 | Extension | There are no (further) constraints on this element Element IdPatient.communication.extension:languageProficiency.extension:level The proficiency level of the communication Alternate namesextensions, user content DefinitionHow well the patient can communicate this communication (good, poor, etc.). 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.
| |
url | 1..1 | uriFixed Value | There are no (further) constraints on this element Element IdPatient.communication.extension:languageProficiency.extension:level.url identifies the meaning of the extension DefinitionSource of the definition for the extension code - a logical name or a URL. The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.
level
| |
valueCoding | 1..1 | CodingBinding | There are no (further) constraints on this element Element IdPatient.communication.extension:languageProficiency.extension:level.value[x]:valueCoding Value of extension DefinitionValue of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list). A stream of bytes, base64 encoded TaalvaardigheidBegrijpenCodelijst (extensible) Constraints
| |
url | 1..1 | uriFixed Value | There are no (further) constraints on this element Element IdPatient.communication.extension:languageProficiency.url identifies the meaning of the extension DefinitionSource of the definition for the extension code - a logical name or a URL. The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.
http://nictiz.nl/fhir/StructureDefinition/patient-proficiency
| |
value[x] | 0..0 | There are no (further) constraints on this element Element IdPatient.communication.extension:languageProficiency.value[x] Value of extension DefinitionValue of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list). A stream of bytes, base64 encoded
| ||
comment | 0..* | Extension(string) | There are no (further) constraints on this element Element IdPatient.communication.extension:comment Comment Alternate namesextensions, user content, Toelichting DefinitionOptional Extension Element - found in all resources. 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. http://nictiz.nl/fhir/StructureDefinition/Comment Constraints
| |
language | 1..1 | CodeableConceptBinding | There are no (further) constraints on this element Element IdPatient.communication.language CommunicationLanguage Alternate namesCommunicatieTaal DefinitionThe language of communication. The 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. Most systems in multilingual countries will want to convey language. Not all systems actually need the regional dialect. The FHIR valueset http://hl7.org/fhir/valueset-languages.html is used instead of the ZIB valueset CommunicationLanguageCodelist. The FHIR valueset uses the codesystem urn:ietf:bcp:47 which includes the ISO-639-2 alpha codesystem used by the ZIB valueset.
| |
preferred | 0..1 | boolean | There are no (further) constraints on this element Element IdPatient.communication.preferred Language preference indicator DefinitionIndicates whether or not the patient prefers this language (over other languages he masters up a certain level). People 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. This language is specifically identified for communicating healthcare information.
| |
generalPractitioner | 0..1 | KoppeltaalReference(KoppeltaalOrganization | KoppeltaalPractitioner) | Element IdPatient.generalPractitioner A reference from one resource to another Alternate namescareProvider, Huisarts DefinitionA reference from one resource to another. References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository. KoppeltaalReference(KoppeltaalOrganization | KoppeltaalPractitioner) Constraints
| |
extension | 0..* | Extension | There are no (further) constraints on this element Element IdPatient.generalPractitioner.extension Additional Content defined by implementations Alternate namesextensions, user content DefinitionMay be used to represent additional information that is not part of the basic definition of the element. In order 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. 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) Constraints
| |
practitionerRole | 0..1 | Extension(Reference(nl-core-practitionerrole)) | There are no (further) constraints on this element Element IdPatient.generalPractitioner.extension:practitionerRole Optional Extensions Element Alternate namesextensions, user content DefinitionOptional Extension Element - found in all resources. 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. Extension(Reference(nl-core-practitionerrole)) Extension URLhttp://nictiz.nl/fhir/StructureDefinition/practitionerrole-reference Constraints
| |
reference | Σ | 0..1 | string | There are no (further) constraints on this element Element IdPatient.generalPractitioner.reference Literal reference, Relative, internal or absolute URL DefinitionA 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. Using 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.
|
identifier | Σ | 0..1 | Identifier | There are no (further) constraints on this element Element IdPatient.generalPractitioner.identifier Logical reference, when literal reference is not known DefinitionAn identifier for the other resource. This is used when there is no way to reference the other resource directly, either because the entity 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. When 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.
|
extension | 0..* | Extension | There are no (further) constraints on this element Element IdPatient.generalPractitioner.identifier.extension Additional Content defined by implementations Alternate namesextensions, user content DefinitionMay be used to represent additional information that is not part of the basic definition of the element. In order 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. 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) Constraints
| |
reference-identifier-resource-type | 1..1 | Extension | Element IdPatient.generalPractitioner.identifier.extension:reference-identifier-resource-type Optional Extensions Element Alternate namesextensions, user content DefinitionOptional Extension Element - found in all resources. 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. http://ggz.koppeltaal.nl/fhir/StructureDefinition/reference-identifier-resource-type Constraints
| |
use | Σ ?! | 0..1 | codeBinding | There are no (further) constraints on this element Element IdPatient.generalPractitioner.identifier.use usual | official | temp | secondary (If known) DefinitionThe purpose of this identifier. Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers. This is labeled as "Is Modifier" because applications should not mistake a temporary id for a permanent one. Applications can assume that an identifier is permanent unless it explicitly says that it is temporary.
|
type | Σ | 0..1 | CodeableConceptBinding | There are no (further) constraints on this element Element IdPatient.generalPractitioner.identifier.type Description of identifier DefinitionA coded type for the identifier that can be used to determine which identifier to use for a specific purpose. Allows users to make use of identifiers when the identifier system is not known. This 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.
|
system | Σ | 0..1 | uri | There are no (further) constraints on this element Element IdPatient.generalPractitioner.identifier.system The namespace for the identifier value DefinitionEstablishes the namespace for the value - that is, a URL that describes a set values that are unique. There 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. see http://en.wikipedia.org/wiki/Uniform_resource_identifier
General http://www.acme.com/identifiers/patient Mappings
|
value | Σ | 0..1 | string | There are no (further) constraints on this element Element IdPatient.generalPractitioner.identifier.value The value that is unique DefinitionThe portion of the identifier typically relevant to the user and which is unique within the context of the system. If 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.
General 123456 Mappings
|
period | Σ | 0..1 | Period | There are no (further) constraints on this element Element IdPatient.generalPractitioner.identifier.period Time period when id is/was valid for use DefinitionTime period during which identifier is/was valid for use. This is not a duration - that's a measure of time (a separate type), but a duration that occurs at a fixed value of time. A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times"). If duration is required, specify the type as Interval|Duration.
|
assigner | Σ | 0..1 | Reference(Organization) | There are no (further) constraints on this element Element IdPatient.generalPractitioner.identifier.assigner Organization that issued id (may be just text) DefinitionOrganization that issued/manages the identifier. The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.
|
display | Σ | 0..1 | string | There are no (further) constraints on this element Element IdPatient.generalPractitioner.display Text alternative for the resource DefinitionPlain text narrative that identifies the resource in addition to the resource reference. This 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.
|
managingOrganization | Σ | 0..1 | KoppeltaalReference(KoppeltaalOrganization) | Element IdPatient.managingOrganization A reference from one resource to another DefinitionA reference from one resource to another. Need to know who recognizes this patient record, manages and updates it. References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository. KoppeltaalReference(KoppeltaalOrganization) Constraints
|
reference | Σ | 0..1 | string | There are no (further) constraints on this element Element IdPatient.managingOrganization.reference Literal reference, Relative, internal or absolute URL DefinitionA 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. Using 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.
|
identifier | Σ | 0..1 | Identifier | There are no (further) constraints on this element Element IdPatient.managingOrganization.identifier Logical reference, when literal reference is not known DefinitionAn identifier for the other resource. This is used when there is no way to reference the other resource directly, either because the entity 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. When 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.
|
extension | 0..* | Extension | There are no (further) constraints on this element Element IdPatient.managingOrganization.identifier.extension Additional Content defined by implementations Alternate namesextensions, user content DefinitionMay be used to represent additional information that is not part of the basic definition of the element. In order 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. 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) Constraints
| |
reference-identifier-resource-type | 1..1 | Extension | Element IdPatient.managingOrganization.identifier.extension:reference-identifier-resource-type Optional Extensions Element Alternate namesextensions, user content DefinitionOptional Extension Element - found in all resources. 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. http://ggz.koppeltaal.nl/fhir/StructureDefinition/reference-identifier-resource-type Constraints
| |
use | Σ ?! | 0..1 | codeBinding | There are no (further) constraints on this element Element IdPatient.managingOrganization.identifier.use usual | official | temp | secondary (If known) DefinitionThe purpose of this identifier. Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers. This is labeled as "Is Modifier" because applications should not mistake a temporary id for a permanent one. Applications can assume that an identifier is permanent unless it explicitly says that it is temporary.
|
type | Σ | 0..1 | CodeableConceptBinding | There are no (further) constraints on this element Element IdPatient.managingOrganization.identifier.type Description of identifier DefinitionA coded type for the identifier that can be used to determine which identifier to use for a specific purpose. Allows users to make use of identifiers when the identifier system is not known. This 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.
|
system | Σ | 0..1 | uri | There are no (further) constraints on this element Element IdPatient.managingOrganization.identifier.system The namespace for the identifier value DefinitionEstablishes the namespace for the value - that is, a URL that describes a set values that are unique. There 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. see http://en.wikipedia.org/wiki/Uniform_resource_identifier
General http://www.acme.com/identifiers/patient Mappings
|
value | Σ | 0..1 | string | There are no (further) constraints on this element Element IdPatient.managingOrganization.identifier.value The value that is unique DefinitionThe portion of the identifier typically relevant to the user and which is unique within the context of the system. If 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.
General 123456 Mappings
|
period | Σ | 0..1 | Period | There are no (further) constraints on this element Element IdPatient.managingOrganization.identifier.period Time period when id is/was valid for use DefinitionTime period during which identifier is/was valid for use. This is not a duration - that's a measure of time (a separate type), but a duration that occurs at a fixed value of time. A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times"). If duration is required, specify the type as Interval|Duration.
|
assigner | Σ | 0..1 | Reference(Organization) | There are no (further) constraints on this element Element IdPatient.managingOrganization.identifier.assigner Organization that issued id (may be just text) DefinitionOrganization that issued/manages the identifier. The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.
|
display | Σ | 0..1 | string | There are no (further) constraints on this element Element IdPatient.managingOrganization.display Text alternative for the resource DefinitionPlain text narrative that identifies the resource in addition to the resource reference. This 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.
|
link | Σ ?! | 0..* | BackboneElement | There are no (further) constraints on this element Element IdPatient.link Link to another patient resource that concerns the same actual person DefinitionLink to another patient resource that concerns the same actual patient. There are multiple usecases:
There is no assumption that linked patient records have mutual links. This element is labelled as a modifier because it may not be the main Patient resource, and the referenced patient should be used instead of this Patient record. This is when the link.type value is 'replaced-by'.
|
other | Σ | 0..1 | KoppeltaalReference(KoppeltaalRelatedPerson | KoppeltaalPatient) | Element IdPatient.link.other A reference from one resource to another DefinitionA reference from one resource to another. References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository. KoppeltaalReference(KoppeltaalRelatedPerson | KoppeltaalPatient) Constraints
|
reference | Σ | 0..1 | string | There are no (further) constraints on this element Element IdPatient.link.other.reference Literal reference, Relative, internal or absolute URL DefinitionA 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. Using 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.
|
identifier | Σ | 0..1 | Identifier | There are no (further) constraints on this element Element IdPatient.link.other.identifier Logical reference, when literal reference is not known DefinitionAn identifier for the other resource. This is used when there is no way to reference the other resource directly, either because the entity 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. When 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.
|
extension | 0..* | Extension | There are no (further) constraints on this element Element IdPatient.link.other.identifier.extension Additional Content defined by implementations Alternate namesextensions, user content DefinitionMay be used to represent additional information that is not part of the basic definition of the element. In order 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. 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) Constraints
| |
reference-identifier-resource-type | 1..1 | Extension | Element IdPatient.link.other.identifier.extension:reference-identifier-resource-type Optional Extensions Element Alternate namesextensions, user content DefinitionOptional Extension Element - found in all resources. 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. http://ggz.koppeltaal.nl/fhir/StructureDefinition/reference-identifier-resource-type Constraints
| |
use | Σ ?! | 0..1 | codeBinding | There are no (further) constraints on this element Element IdPatient.link.other.identifier.use usual | official | temp | secondary (If known) DefinitionThe purpose of this identifier. Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers. This is labeled as "Is Modifier" because applications should not mistake a temporary id for a permanent one. Applications can assume that an identifier is permanent unless it explicitly says that it is temporary.
|
type | Σ | 0..1 | CodeableConceptBinding | There are no (further) constraints on this element Element IdPatient.link.other.identifier.type Description of identifier DefinitionA coded type for the identifier that can be used to determine which identifier to use for a specific purpose. Allows users to make use of identifiers when the identifier system is not known. This 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.
|
system | Σ | 0..1 | uri | There are no (further) constraints on this element Element IdPatient.link.other.identifier.system The namespace for the identifier value DefinitionEstablishes the namespace for the value - that is, a URL that describes a set values that are unique. There 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. see http://en.wikipedia.org/wiki/Uniform_resource_identifier
General http://www.acme.com/identifiers/patient Mappings
|
value | Σ | 0..1 | string | There are no (further) constraints on this element Element IdPatient.link.other.identifier.value The value that is unique DefinitionThe portion of the identifier typically relevant to the user and which is unique within the context of the system. If 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.
General 123456 Mappings
|
period | Σ | 0..1 | Period | There are no (further) constraints on this element Element IdPatient.link.other.identifier.period Time period when id is/was valid for use DefinitionTime period during which identifier is/was valid for use. This is not a duration - that's a measure of time (a separate type), but a duration that occurs at a fixed value of time. A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times"). If duration is required, specify the type as Interval|Duration.
|
assigner | Σ | 0..1 | Reference(Organization) | There are no (further) constraints on this element Element IdPatient.link.other.identifier.assigner Organization that issued id (may be just text) DefinitionOrganization that issued/manages the identifier. The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.
|
display | Σ | 0..1 | string | There are no (further) constraints on this element Element IdPatient.link.other.display Text alternative for the resource DefinitionPlain text narrative that identifies the resource in addition to the resource reference. This 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.
|
type | Σ | 1..1 | codeBinding | There are no (further) constraints on this element Element IdPatient.link.type replaced-by | replaces | refer | seealso - type of link DefinitionThe type of link between this patient resource and another patient resource. Note that FHIR strings may not exceed 1MB in size
|
HelseVest is a Norwegian health authority, responsible for the western region of Norway. The KULE HelseVest Prescription project aims to provide integrations for medication prescription.
Below is an example of the details tab of the MedicationStatement resource. The definition field shows the the description of the resource that was copied from the description field and is directly visible at the top of the Details tab.
MedicationStatement | |
Definition | A prescription as defined by KULE Helse Vest Norwegian project, based on the national standard M1 eResept standard. |
Control | ..* |
Invariants | Defined on this element kuleprescribing-5: Reason not taken must be filled if wasNotTaken is true (xpath: f:wasNotTaken/@value=false() or exists(f:wasNotTaken)) |
MedicationStatement.extension | |
Control | ..* |
Slicing | This element introduces a set of slices. The slicing rules are:
|
MedicationStatement.extension(authoredOn) | |
Definition | Dato for forskrivning. |
Control | 1..1 |
Type | Extension(http://nictiz.nl/fhir/StructureDefinition/mp9-authored-on) |
Must Support | true |
Alternate Names | authoredOn, Forskrivningsdato |
MedicationStatement.extension(drugUseType) | |
Control | ..1 |
Binding | Angir bruk av et legemiddel, f.eks. om det benyttes fast eller gis ved behov (OID=9101). The codes SHALL be taken from http://hl7.no/fhir/ValueSet/kule-legemiddelbruk |
Type | Extension(Drug use type) |
Must Support | true |
Alternate Names | Bruk |
MedicationStatement.identifier | |
Control | ..* |
Slicing | This element introduces a set of slices. The slicing rules are:
|
MedicationStatement.identifier(prescriptionInstance) | |
Definition | Several MedicationStatements will be issued in case of a single prescription requiring multiple medications or different periods and this identifier allows you to reconcile them into a single prescription. |
Control | 1..1 |
Must Support | true |
MedicationStatement.identifier.use | |
Control | ..* |
Fixed Value | official |
MedicationStatement.identifier.system | |
Control | ..* |
Fixed Value | urn:oid:2.16.578.1.34.5.5 |
MedicationStatement.identifier(LIB) | |
Control | ..1 |
MedicationStatement.identifier.use | |
Control | ..* |
Fixed Value | secondary |
MedicationStatement.identifier.system | |
Control | ..* |
Fixed Value | urn:oid:OID-FOR-LIBS-HERE. |
MedicationStatement.identifier(eResept) | |
Control | ..1 |
Alternate Names | MsgId |
MedicationStatement.identifier.use | |
Control | ..* |
Fixed Value | secondary |
MedicationStatement.identifier.system | |
Control | ..* |
Fixed Value | urn:oid:OID-FOR-ERESEPT-HERE. |
MedicationStatement.informationSource | |
Control | ..* |
Type | Choice of: Reference(Patient), Reference(PractitionerNorway), Reference(RelatedPerson) |
Must Support | true |
Alternate Names | Helseperson, Organisasjon |
MedicationStatement.status | |
Control | ..* |
Must Support | true |
MedicationStatement.status.modifierExtension | |
Control | ..* |
Slicing | This element introduces a set of slices. The slicing rules are:
|
MedicationStatement.status.modifierExtension(prescriptionStatus) | |
Control | ..1 |
Type | Extension(Prescription status) |
Must Support | true |
Requirements | The need to set the status on a MedicationStatement to 'paused' when the resource is used as a prescription of medication. |
Comments | Receiving systems should prioritise prescririptionStatus over status if it's present. When the prescrtiptionStatus is set to 'on-hold', MedicationStatement.status should be set to 'intended'. |
Meaning if Missing | Code needed is available in MedicationStatement.status and the extended code was not required. |
MedicationStatement.status.modifierExtension.valueCode | |
Control | ..* |
MedicationStatement.wasNotTaken | |
Control | ..* |
Must Support | true |
MedicationStatement.reasonNotTaken | |
Control | ..* |
Must Support | true |
MedicationStatement.reasonForUse[x] | |
Control | ..* |
Binding | Angir bruksområde for legemiddel. Det overføres til M1 og blir med på utskrift på apoteketikett. Brukes i FEST og Eresept (OID=7488). The codes SHALL be taken from http://hl7.no/fhir/ValueSet/kule-bruksomrade-til-etikett |
[x] Note | See Choice of Data Types for further information about how to use [x] |
Must Support | true |
Alternate Names | Bruksomrade |
MedicationStatement.effectivePeriod | |
Control | ..* |
Type | Period |
Must Support | true |
MedicationStatement.effectivePeriod.start | |
Definition | Time when the dosage starts. |
Control | 1..* |
Requirements | Cardinality is at 1..1, overring M1 cardinality, per Chapter 4 rules in https://ehelse.no/Documents/E-resept/Dokumentarkiv-Meldingsdefinisjoner/Brukskonvensjoner%20for%20avansert%20strukturert%20dosering%20versjon%201.1%20per%20130913.pdf. |
Alternate Names | Starttidspunkt |
MedicationStatement.effectivePeriod.end | |
Definition | Time when the dosage ends. |
Control | ..* |
Alternate Names | Sluttidspunkt |
MedicationStatement.medicationReference | |
Control | ..* |
Type | Reference(KULE Medication) |
Must Support | true |
MedicationStatement.dosage | |
Control | ..* |
Invariants | Defined on this element kuleprescribing-1: Dosage must include a freetext if no structured dosage is used (xpath: not(exists(f:text)) or not(exists(f:timing))) kuleprescribing-3: Either detailed timing information or coded dosage information can be specified, but not both (xpath: not(exists(timing) and exists(extension[@url='http://hl7.no/fhir/StructureDefinition/kule-short-dosage']))) kuleprescribing-4: daysNotAdministeredAmount must always be used in combination with daysAdministeredAmount (xpath: not(exists(extension[@url='http://hl7.no/fhir/StructureDefinition/kule-days-not-administered-amount'])) or exists(extension[@url='http://hl7.no/fhir/StructureDefinition/kule-days-administered-amount'])) |
MedicationStatement.dosage.extension | |
Control | ..* |
Slicing | This element introduces a set of slices. The slicing rules are:
|
MedicationStatement.dosage.extension(calculationBasis) | |
Definition | To specify what forms the basis for calculating the dose (weight, age, body surface, other). |
Control | 1..1 |
Type | Extension(Dose calculation basis) |
Must Support | true |
Alternate Names | calculationBasis, DoseresEtter |
MedicationStatement.dosage.extension.valueCode | |
Control | ..* |
MedicationStatement.dosage.extension(daysAdministeredAmount) | |
Definition | Number of days total a drug is to be used within the specified period. |
Control | ..1 |
Type | Extension(Days administered amount) |
Must Support | true |
Alternate Names | daysAdministeredAmount, DagerPa |
MedicationStatement.dosage.extension(daysNotAdministeredAmount) | |
Definition | Number of days a drug is NOT to be used. This element is always in combination with daysAdministeredAmount. |
Control | ..1 |
Type | Extension(Days not administered amount) |
Must Support | true |
Alternate Names | daysNotAdministeredAmount, DagerAv |
MedicationStatement.dosage.extension(shortDosage) | |
Definition | Ved rekvirering skal feltet "kortdose" følge med i M1 dersom DSSN feltet ikke er endret etter valg av kortdose som kommer fra FEST. Kortdose skal ikke sendes i M1 når bruker ikke har valgt kortdose eller har redigert i feltet for DSSN. Apotek skal kunne bruke kortdose for effektivt å kunne finne fram til ønsket avansert dosering basert på kortdose. |
Control | ..1 |
Binding | Dosage timing codes used by LIB data from FM (Forskrivningsmodulen/Prescription Module) and Kjernejournal systems in the Helse Vest Norway. The codes SHALL be taken from http://hl7.no/fhir/ValueSet/kule-coded-dosage-timing |
Type | Extension(Short dosage) |
Must Support | true |
Alternate Names | shortDosage, Kortdose |
MedicationStatement.dosage.text | |
Control | ..* |
Must Support | true |
Alternate Names | DosVeiledEnkel |
MedicationStatement.dosage.timing | |
Control | ..* |
MedicationStatement.dosage.timing.extension | |
Control | ..* |
Slicing | This element introduces a set of slices. The slicing rules are:
|
MedicationStatement.dosage.timing.extension(administerAtSpecificTime) | |
Definition | Medication must be given/taken at exact times. |
Control | 1..1 |
Type | Extension(Exact timing) |
Must Support | true |
Alternate Names | administerAtSpecificTime, GisEksakt |
MedicationStatement.dosage.timing.extension(extension) | |
Definition | Number of units of time that must pass between each time the drug is given/taken. |
Control | ..* |
Binding | Dette kodeverket inneholder benevning for tidsenheter. Skal benyttes for datatypen PQ når enhet skal være tidsenhet (OID=9088). The codes SHALL be taken from http://hl7.no/fhir/ValueSet/kule-benevning-tidsenhet |
Type | Extension(Timing interval) |
Must Support | true |
Alternate Names | administrationInterval, Intervall, Gjentagelsesintervall |
MedicationStatement.dosage.timing.repeat | |
Control | ..* |
Invariants | Defined on this element kuleprescribing-2: Either specificTime or timePeriod can be specified, but not both (xpath: not(exists(f:extension[@url='http://hl7.no/fhir/StructureDefinition/kule-time-of-day']) and exists(f:extension[@url='http://hl7.no/fhir/StructureDefinition/kule-timeperiod']))) |
MedicationStatement.dosage.timing.repeat.extension | |
Control | ..* |
Slicing | This element introduces a set of slices. The slicing rules are:
|
MedicationStatement.dosage.timing.repeat.extension(specificTime) | |
Definition | Exact time of day medication must be taken at (e.g. 09:00, 12:30, 15:00). |
Control | ..1 |
Type | Extension(Time of day) |
Must Support | true |
Alternate Names | specificTime, Klokkeslett |
MedicationStatement.dosage.timing.repeat.extension(timePeriod) | |
Definition | Time period of the day the drug should be taken at (eg. morning, noon, afternoon, etc). |
Control | ..1 |
Type | Extension(Time period of the day) |
Must Support | true |
Alternate Names | timePeriod, Tidsomrade |
Comments | Timing.repeat.when is not used as the binding is of strength "required" and is semantically incompatible with OID 8325 from volven.no |
MedicationStatement.dosage.timing.repeat.extension(dayOfWeek) | |
Control | ..* |
Binding | Days of the week The codes SHALL be taken from http://decor.nictiz.nl/fhir/ValueSet/2.16.840.1.113883.2.4.3.11.60.40.2.9.5.4--2015-04-01T00:00:00 |
Type | Extension(http://nictiz.nl/fhir/StructureDefinition/mp9-day-of-week) |
Must Support | true |
Alternate Names | whichWeekdays, FasteUkedager |
MedicationStatement.dosage.asNeeded[x] | |
Control | ..0 |
[x] Note | See Choice of Data Types for further information about how to use [x] |
Requirements | Not used to align with DIPS - see drugUseType extension instead. |
MedicationStatement.dosage.site[x] | |
Control | ..* |
[x] Note | See Choice of Data Types for further information about how to use [x] |
Must Support | true |
MedicationStatement.dosage.route | |
Control | ..* |
Must Support | true |
Alternate Names | Administrasjonsvei |
MedicationStatement.dosage.route.coding | |
Control | ..* |
Binding | Administrasjonsvei (OID=7477). The codes SHALL be taken from http://hl7.no/fhir/ValueSet/kule-administrasjonsvei |
MedicationStatement.dosage.route.text | |
Control | ..0 |
MedicationStatement.dosage.quantityQuantity(SimpleQuantity) | |
Control | ..* |
Binding | Enhet som skal inngå i doseringstekst som sendes i M1 og inngår på apotek-etiketten. Kodeverk til bruk i M30 fra versjon 2.4, og i M1 (OID=7480). The codes SHALL be taken from http://hl7.no/fhir/ValueSet/kule-enhet-for-dosering |
Type | Quantity(SimpleQuantity) |
Must Support | true |
MedicationStatement.dosage.rate[x] | |
Control | ..* |
[x] Note | See Choice of Data Types for further information about how to use [x] |
Must Support | true |
Slicing | This element introduces a set of slices. The slicing rules are:
|
MedicationStatement.dosage.rate[x](ratio) | |
Control | ..* |
Type | Ratio |
[x] Note | See Choice of Data Types for further information about how to use [x] |
Must Support | true |
MedicationStatement.dosage.rate[x].numerator | |
Control | ..* |
Binding | Dette kodeverket inneholder benevning for legemidlers styrke Skal benyttes for datatypen PQ når enhet skal være legemidlers styrke. Kodeverket oppdateres kun for verdier som inngår i nyeste versjon av FEST (OID=9090). The codes SHALL be taken from http://hl7.no/fhir/ValueSet/kule-maleenhet-for-legemidlers-styrke |
Alternate Names | Volum |
MedicationStatement.dosage.rate[x].denominator | |
Control | ..* |
Binding | Dette kodeverket inneholder benevning for tidsenheter. Skal benyttes for datatypen PQ når enhet skal være tidsenhet (OID=9088). The codes SHALL be taken from http://hl7.no/fhir/ValueSet/kule-benevning-tidsenhet |
Alternate Names | Tidsenhet |
MedicationStatement.dosage.rate[x](range) | |
Control | ..* |
Type | Range |
[x] Note | See Choice of Data Types for further information about how to use [x] |
Must Support | true |
MedicationStatement.dosage.rate[x].low(SimpleQuantity) | |
Control | ..* |
Binding | Dette kodeverket inneholder benevning for legemidlers styrke Skal benyttes for datatypen PQ når enhet skal være legemidlers styrke. Kodeverket oppdateres kun for verdier som inngår i nyeste versjon av FEST (OID=9090). The codes SHALL be taken from http://hl7.no/fhir/ValueSet/kule-maleenhet-for-legemidlers-styrke |
Alternate Names | Volum |
MedicationStatement.dosage.rate[x].high(SimpleQuantity) | |
Control | ..* |
Binding | Dette kodeverket inneholder benevning for legemidlers styrke Skal benyttes for datatypen PQ når enhet skal være legemidlers styrke. Kodeverket oppdateres kun for verdier som inngår i nyeste versjon av FEST (OID=9090). The codes SHALL be taken from http://hl7.no/fhir/ValueSet/kule-maleenhet-for-legemidlers-styrke |
Alternate Names | Volum |
The implementation guide for the KULE HelseVest Prescription project was built using our IG-editor in Simplifier.
In this exercise you will specify the profiles and extensions that are needed to implement the use case given below. Start by reading the case description.
Here below are a couple of links that you may find useful during this exercise:
We are always looking for ways to improve our products. The Profiling Academy was built using our own IG-editor in Simplifier. If you have any feedback on this module or on our Profiling Academy in general, please leave a comment in the Issue Tracker of the project.
Most modules end with an exercise. Use Forge to start profiling yourself. Just contact us at simplifier@fire.ly if you need any help.
Follow one of our predefined or tailor-made courses. We will make sure you know FHIR inside-out.
Let us assist you with your FHIR use case. Visit our company website to know more about our services or get into contact with Rien Wertheim right away.
Powered by SIMPLIFIER.NET