Netherlands - Generic Functions for data exchange Implementation Guide
0.1.0 - ci-build

Netherlands - Generic Functions for data exchange Implementation Guide - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

## Resource Profile: NlGfOrganization - Detailed Descriptions

Draft as of 2026-02-17

Definitions for the nl-gf-organization resource profile.

- Key Elements Table
- Differential Elements Table
- Snapshot Elements Table

Guidance on how to interpret the contents of this table can be foundhere

0. Organization
Definition | A formally or informally recognized grouping of people or organizations formed for the purpose of achieving some form of collective action. Includes companies, institutions, corporations, departments, community groups, healthcare practice groups, payer/insurer, etc.
Short | HealthcareProviderA grouping of people or organizations with a common purpose
Comments | The zib HealthcareProvider is mapped to this Organization profile and a profile on Location (http://nictiz.nl/fhir/StructureDefinition/nl-core-HealthcareProvider). The Location profile acts as the focal resource of the HealthcareProvider because most references to this zib are concerned about the recording of the physical location where the care to patient/client takes place rather than the organizational information. Often there's no clear distinction between an organizational structure and a physical location. As a rule of thumb, locations are always used for recording where a service occurs, and hence where encounters and observations take place. Healthcare providers usually consist of multiple organizational levels and physical locations. The hierarchical structure may be captured by using multiple instances of this profile, using the `Organization.partOf` element to refer to their parent organization. The physical location is captured using the nl-core-HealthcareProvider profile, which refers this profile at the appropriate level in the hierarchy.
Control | 0..*
Is Modifier | false
Complies with Profile | This profile complies with the profile mCSD Organization
Summary | false
Alternate Names | Zorgaanbieder, nl-core-HealthcareProvider-Organization
Invariants | dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources (contained.contained.empty()) dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource (contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()) dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated (contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()) dom-5: If a resource is contained in another resource, it SHALL NOT have a security label (contained.meta.security.empty()) dom-6: A resource should have narrative for robust management (text.`div`.exists()) org-1: The organization SHALL at least have a name or an identifier, and possibly more than one (`(identifier.count() + name.count()) > 0`) ura-identifier-or-partof: an Organization instance must either have an URA-identifier or must be 'partOf' some other instance that is an nl-gf-organization instance. (`identifier.where(system='http://fhir.nl/fhir/NamingSystem/ura').exists() or partOf.exists()`) org-1: The organization SHALL at least have a name or an identifier, and possibly more than one ((identifier.count() + name.count()) > 0)
2. Organization.implicitRules
Definition | A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.
Short | A set of rules under which this content was created
Comments | Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.
Control | 0..01
Type | uri
Is Modifier | true because This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation
Primitive Value | This primitive element may be present, or absent, or replaced by an extension
Summary | true
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
4. Organization.modifierExtension
Definition | An Extension May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
Short | ExtensionExtensions that cannot be ignored
Comments | 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.
Control | 0..0*
Type | Extension
Is Modifier | true because Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them
Summary | false
Requirements | Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Alternate Names | extensions, user content
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
6. Organization.identifier
Definition | The organization’s identification number. For Dutch healthcare providers, the URA number or the AGB number is used, if possible. Depending on the context other ID's are also possible. For foreign or non-affiliated healthcare providers, another unique identification number can be used. This must be accompanied by the name and/or code of the issuing organization. Identifier for the organization that is used to identify the organization across multiple disparate systems.
Short | HealthcareProviderIdentificationNumberIdentifies this organization across multiple systems
Note | This is a business identifier, not a resource identifier (see discussion)
Control | 10..* This element is affected by the following invariants: org-1
Type | Identifier
Is Modifier | false
Summary | true
Requirements | Organizations are known by a variety of ids. Some institutions maintain several, and most collect identifiers for exchange with other organizations concerning the organization.
Alternate Names | ZorgaanbiederIdentificatienummer
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
Slicing | This element introduces a set of slices on `Organization.identifier`. The slices areUnordered and Open, and can be differentiated using the following discriminators: value @ $this
8. Organization.identifier:ura
Slice Name | ura
Definition | Identifier for the organization that is used to identify the organization across multiple disparate systems.
Short | Identifies this organization across multiple systems
Note | This is a business identifier, not a resource identifier (see discussion)
Control | 0..* This element is affected by the following invariants: org-1
Type | Identifier
Is Modifier | false
Summary | true
Requirements | Organizations are known by a variety of ids. Some institutions maintain several, and most collect identifiers for exchange with other organizations concerning the organization.
Pattern Value | `{ "system" : "http://fhir.nl/fhir/NamingSystem/ura" }`
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
10. Organization.identifier:agb
Slice Name | agb
Definition | Identifier for the organization that is used to identify the organization across multiple disparate systems.
Short | Identifies this organization across multiple systems
Note | This is a business identifier, not a resource identifier (see discussion)
Control | 0..* This element is affected by the following invariants: org-1
Type | Identifier
Is Modifier | false
Summary | true
Requirements | Organizations are known by a variety of ids. Some institutions maintain several, and most collect identifiers for exchange with other organizations concerning the organization.
Pattern Value | `{ "system" : "http://fhir.nl/fhir/NamingSystem/agb-z" }`
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
12. Organization.identifier:AssignedId
Slice Name | AssignedId
Definition | The organization’s identification number. For Dutch healthcare providers, the URA number or the AGB number is used, if possible. Depending on the context other ID's are also possible. For foreign or non-affiliated healthcare providers, another unique identification number can be used. This must be accompanied by the name and/or code of the issuing organization. Identifier for the organization that is used to identify the organization across multiple disparate systems.
Short | HealthcareProviderIdentificationNumberIdentifies this organization across multiple systems
Note | This is a business identifier, not a resource identifier (see discussion)
Control | 10..1* This element is affected by the following invariants: org-1
Type | Identifier( Author Assigned Identifier)
Is Modifier | false
Summary | true
Requirements | Organizations are known by a variety of ids. Some institutions maintain several, and most collect identifiers for exchange with other organizations concerning the organization.
Alternate Names | ZorgaanbiederIdentificatienummer
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
14. Organization.active
Definition | Whether the organization's record is still in active use.
Short | Whether the organization's record is still in active use
Comments | This active flag is not intended to be used to mark an organization as temporarily closed or under construction. Instead the Location(s) within the Organization should have the suspended status. If further details of the reason for the suspension are required, then an extension on this element should be used. This element is labeled as a modifier because it may be used to mark that the resource was created in error.
Control | 0..1
Type | boolean
Is Modifier | true because This element is labelled as a modifier because it is a status element that can indicate that a record should not be treated as valid
Primitive Value | This primitive element may be present, or absent, or replaced by an extension
Summary | true
Requirements | Need a flag to indicate a record is no longer to be used and should generally be hidden for the user in the UI.
Meaning if Missing | This resource is generally assumed to be active if no value is provided for the active element
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
16. Organization.type
Definition | The kind(s) of organization that this is.
Short | Kind of organization
Comments | Organizations can be corporations, wards, sections, clinical teams, government departments, etc. Note that code is generally a classifier of the type of organization; in many applications, codes are used to identity a particular organization (say, ward) as opposed to another of the same type - these are identifiers, not codes When considering if multiple types are appropriate, you should evaluate if child organizations would be a more appropriate use of the concept, as different types likely are in different sub-areas of the organization. This is most likely to be used where type values have orthogonal values, such as a religious, academic and medical center. We expect that some jurisdictions will profile this optionality to be a single cardinality.
Control | 10..*
Binding | For example codes, see OrganizationType http://hl7.org/fhir/ValueSet/organization-type|4.0.1 (example to `http://hl7.org/fhir/ValueSet/organization-type` ) Used to categorize the organization.
Type | CodeableConcept
Is Modifier | false
Summary | true
Requirements | Need to be able to track the kind of organization that this is - different organization types have different uses.
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
Slicing | This element introduces a set of slices on `Organization.type`. The slices areUnordered and Open, and can be differentiated using the following discriminators: value @ $this
18. Organization.type:departmentSpecialty
Slice Name | departmentSpecialty
Definition | The specialty of the healthcare provider’s department. The departmental specialty can be filled in if further indication of the healthcare provider is needed. This refers to the recognized medical specialties as stated in the BIG Act. The kind(s) of organization that this is.
Short | DepartmentSpecialtyKind of organization
Comments | Organizations can be corporations, wards, sections, clinical teams, government departments, etc. Note that code is generally a classifier of the type of organization; in many applications, codes are used to identity a particular organization (say, ward) as opposed to another of the same type - these are identifiers, not codes When considering if multiple types are appropriate, you should evaluate if child organizations would be a more appropriate use of the concept, as different types likely are in different sub-areas of the organization. This is most likely to be used where type values have orthogonal values, such as a religious, academic and medical center. We expect that some jurisdictions will profile this optionality to be a single cardinality.
Control | 0..1*
Binding | The codes SHALL be taken from For example codes, see AfdelingSpecialismeCodelijst http://hl7.org/fhir/ValueSet/organization-type|4.0.1 (required to `http://decor.nictiz.nl/fhir/ValueSet/2.16.840.1.113883.2.4.3.11.60.40.2.17.2.4--20200901000000` ) Used to categorize the organization.
Type | CodeableConcept
Is Modifier | false
Summary | true
Requirements | Need to be able to track the kind of organization that this is - different organization types have different uses.
Alternate Names | AfdelingSpecialisme
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
20. Organization.type:organizationType
Slice Name | organizationType
Definition | The type of healthcare provider, such as general hospital, or nursing home. If this field is filled in and an AGB code is used for the HealthcareProviderIdentificationNumber, the type must match the type implicitly contained in the AGB code. The kind(s) of organization that this is.
Short | OrganizationTypeKind of organization
Comments | Organizations can be corporations, wards, sections, clinical teams, government departments, etc. Note that code is generally a classifier of the type of organization; in many applications, codes are used to identity a particular organization (say, ward) as opposed to another of the same type - these are identifiers, not codes When considering if multiple types are appropriate, you should evaluate if child organizations would be a more appropriate use of the concept, as different types likely are in different sub-areas of the organization. This is most likely to be used where type values have orthogonal values, such as a religious, academic and medical center. We expect that some jurisdictions will profile this optionality to be a single cardinality.
Control | 0..1*
Binding | The codes SHALL be taken from For example codes, see OrganisatieTypeCodelijst http://hl7.org/fhir/ValueSet/organization-type|4.0.1 (required to `http://decor.nictiz.nl/fhir/ValueSet/2.16.840.1.113883.2.4.3.11.60.40.2.17.2.3--20200901000000` ) Used to categorize the organization.
Type | CodeableConcept
Is Modifier | false
Summary | true
Requirements | Need to be able to track the kind of organization that this is - different organization types have different uses.
Alternate Names | OrganisatieType
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
22. Organization.type:SBI
Slice Name | SBI
Definition | CBS Standaard Bedrijfsindeling code representing the primary activity of the organization. The kind(s) of organization that this is.
Short | SBIKind of organization
Comments | Organizations can be corporations, wards, sections, clinical teams, government departments, etc. Note that code is generally a classifier of the type of organization; in many applications, codes are used to identity a particular organization (say, ward) as opposed to another of the same type - these are identifiers, not codes When considering if multiple types are appropriate, you should evaluate if child organizations would be a more appropriate use of the concept, as different types likely are in different sub-areas of the organization. This is most likely to be used where type values have orthogonal values, such as a religious, academic and medical center. We expect that some jurisdictions will profile this optionality to be a single cardinality.
Control | 0..1*
Binding | Unless not suitable, these codes SHALL be taken from For example codes, see NL GF Organization Types ValueSet http://hl7.org/fhir/ValueSet/organization-type|4.0.1 (extensible to `http://minvws.github.io/generiekefuncties-docs/ValueSet/nl-gf-org-types-vs` )
Type | CodeableConcept
Is Modifier | false
Summary | true
Requirements | Need to be able to track the kind of organization that this is - different organization types have different uses.
Alternate Names | Standaard Bedrijfsindeling
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
24. Organization.name
Definition | Name of the organization. If an identification number is given, the name must match the name that corresponds to the identification number. A name associated with the organization.
Short | OrganizationNameName used for the organization
Comments | If the name of an organization changes, consider putting the old name in the alias column so that it can still be located through searches.
Control | 10..1 This element is affected by the following invariants: org-1
Type | string
Is Modifier | false
Primitive Value | This primitive element may be present, or absent, or replaced by an extension
Summary | true
Requirements | Need to use the name as the label of the organization.
Alternate Names | OrganisatieNaam
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
26. Organization.telecom
Definition | A contact detail for the organization.
Short | A contact detail for the organization
Comments | The use code 'home' is not to be used. Note that these contacts are not the contact details of people who are employed by or represent the organization, but official contacts for the organization itself.
Control | 0..* This element is affected by the following invariants: org-3
Type | ContactPoint
Is Modifier | false
Summary | false
Requirements | Human contact for the organization.
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) org-3: The telecom of an organization can never be of use 'home' (where(use = 'home').empty())
Slicing | This element introduces a set of slices on `Organization.telecom`. The slices areUnordered and Open, and can be differentiated using the following discriminators: profile @ $this
28. Organization.telecom:telephoneNumbers
Slice Name | telephoneNumbers
Definition | Details for all kinds of technology mediated contact points for a person or organization, including telephone, email, etc. A contact detail for the organization.
Short | TelephoneNumbersA contact detail for the organization
Comments | Implementation of the "TelephoneNumbers" concept of zib ContactInformation. Please note that, although the zib concepts TelecomType and NumberType are functionally equivalent to the FHIR concepts `ContactPoint.system` and `ContactPoint.use` respectively, a mismatch occurs on the concept of mobile phone numbers; the zib uses the first concept and FHIR the second. For this reason, the ValueSet on `ContactPoint.system` is too narrow and the zib code will need to be communicated using the ext-CodeSpecification extension. The use code 'home' is not to be used. Note that these contacts are not the contact details of people who are employed by or represent the organization, but official contacts for the organization itself.
Control | 0..* This element is affected by the following invariants: org-3, ele-1
Type | ContactPoint(nl core ContactInformation TelephoneNumbers)
Is Modifier | false
Standard Status | Normative (from Trial Use)
Summary | false
Requirements | Human contact for the organization.
Alternate Names | Telefoonnummers, nl-core-ContactInformation-TelephoneNumbers
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) org-3: The telecom of an organization can never be of use 'home' (`where(use = 'home').empty()`) cpt-2: A system is required if a value is provided. (`value.empty() or system.exists()`) org-3: The telecom of an organization can never be of use 'home' (where(use = 'home').empty())
30. Organization.telecom:emailAddresses
Slice Name | emailAddresses
Definition | Details for all kinds of technology mediated contact points for a person or organization, including telephone, email, etc. A contact detail for the organization.
Short | EmailAddressesA contact detail for the organization
Comments | Implementation of the "EmailAddresses" concept of zib ContactInformation. The use code 'home' is not to be used. Note that these contacts are not the contact details of people who are employed by or represent the organization, but official contacts for the organization itself.
Control | 0..* This element is affected by the following invariants: org-3, ele-1
Type | ContactPoint(nl core ContactInformation EmailAddresses)
Is Modifier | false
Standard Status | Normative (from Trial Use)
Summary | false
Requirements | Human contact for the organization.
Alternate Names | EmailAdressen, nl-core-ContactInformation-EmailAddresses
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) org-3: The telecom of an organization can never be of use 'home' (`where(use = 'home').empty()`) cpt-2: A system is required if a value is provided. (`value.empty() or system.exists()`) org-3: The telecom of an organization can never be of use 'home' (where(use = 'home').empty())
32. Organization.address
Definition | An address expressed using postal conventions (as opposed to GPS or other location definition formats). This data type may be used to convey addresses for use in delivering mail as well as for visiting locations which might not be valid for mail delivery. There are a variety of postal address formats defined around the world. An address for the organization.
Short | AddressInformationAn address for the organization
Comments | This datatype defines a common basis for expressing all addresses around the world, but adds extensions to express Dutch addresses specifically, according to the zib AddressInformation v1.1 (2020). 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 zib 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 zib 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 code from the zib should also be included using the extension on `Address.extension:addressType`.
zib | .ext:addressType | .use | .type
--- | --- | --- | ---
Postal Address/Postadres | PST |  | postal
Primary Home/Officieel adres | HP | home | both
Visit Address/Woon-/verblijfadres | PHYS | home | physical
Temporary Address/Tijdelijk adres | TMP | temp |
Work Place/Werkadres | WP | work |
Vacation Home/Vakantie adres | HV | temp |
If `Address.type` is both then this is to be understood as a dual purpose address (postal and physical), unless a specific postal type address is added. 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 zib ValueSet. Therefore, a custom extension has been made. This doesn't preclude the use of the AD-use extension. Organization may have multiple addresses with different uses or applicable periods. The use code 'home' is not to be used.
Control | 0..* This element is affected by the following invariants: org-2, ele-1
Type | Address(nl core AddressInformation)
Is Modifier | false
Summary | false
Requirements | May need to keep track of the organization's addresses for contacting, billing or reporting requirements.
Alternate Names | Adresgegevens, nl-core-AddressInformation
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) org-2: An address of an organization can never be of use 'home' (`where(use = 'home').empty()`) org-2: An address of an organization can never be of use 'home' (where(use = 'home').empty())
34. Organization.partOf
Definition | The organization of which this organization forms a part.
Short | The organization of which this organization forms a part
Control | 0..1
Type | Reference(NL Generic Functions Organization Profile, Organization)
Is Modifier | false
Summary | true
Requirements | Need to be able to track the hierarchy of organizations within an organization.
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
36. Organization.endpoint
Definition | Technical endpoints providing access to services operated for the organization.
Short | Technical endpoints providing access to services operated for the organization
Control | 0..*
Type | Reference(NL Generic Functions Endpoint Profile, Endpoint)
Is Modifier | false
Summary | false
Requirements | Organizations have multiple systems that provide various services and need to be able to define the technical connection details for how to connect to them, and for what purpose.
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))

Guidance on how to interpret the contents of this table can be foundhere

0. Organization
Complies with Profile | This profile complies with the profile mCSD Organization
Invariants | ura-identifier-or-partof: an Organization instance must either have an URA-identifier or must be 'partOf' some other instance that is an nl-gf-organization instance. (`identifier.where(system='http://fhir.nl/fhir/NamingSystem/ura').exists() or partOf.exists()`)
2. Organization.implicitRules
Control | 0..0
4. Organization.modifierExtension
Control | 0..0
6. Organization.identifier
Note | This is a business identifier, not a resource identifier (see discussion)
Control | 1..?
8. Organization.identifier:AssignedId
Slice Name | AssignedId
Note | This is a business identifier, not a resource identifier (see discussion)
Control | 1..1
Type | Identifier( Author Assigned Identifier)
10. Organization.type
Control | 1..?
12. Organization.type:SBI
Slice Name | SBI
Definition | CBS Standaard Bedrijfsindeling code representing the primary activity of the organization.
Short | SBI
Control | 0..1
Binding | Unless not suitable, these codes SHALL be taken from NL GF Organization Types ValueSet (extensible to `http://minvws.github.io/generiekefuncties-docs/ValueSet/nl-gf-org-types-vs` )
Alternate Names | Standaard Bedrijfsindeling
14. Organization.name
Control | 1..?
16. Organization.partOf
Type | Reference(NL Generic Functions Organization Profile)
18. Organization.endpoint
Type | Reference(NL Generic Functions Endpoint Profile)

Guidance on how to interpret the contents of this table can be foundhere

0. Organization
Definition | A formally or informally recognized grouping of people or organizations formed for the purpose of achieving some form of collective action. Includes companies, institutions, corporations, departments, community groups, healthcare practice groups, payer/insurer, etc.
Short | HealthcareProvider
Comments | The zib HealthcareProvider is mapped to this Organization profile and a profile on Location (http://nictiz.nl/fhir/StructureDefinition/nl-core-HealthcareProvider). The Location profile acts as the focal resource of the HealthcareProvider because most references to this zib are concerned about the recording of the physical location where the care to patient/client takes place rather than the organizational information. Often there's no clear distinction between an organizational structure and a physical location. As a rule of thumb, locations are always used for recording where a service occurs, and hence where encounters and observations take place. Healthcare providers usually consist of multiple organizational levels and physical locations. The hierarchical structure may be captured by using multiple instances of this profile, using the `Organization.partOf` element to refer to their parent organization. The physical location is captured using the nl-core-HealthcareProvider profile, which refers this profile at the appropriate level in the hierarchy.
Control | 0..*
Is Modifier | false
Complies with Profile | This profile complies with the profile mCSD Organization
Summary | false
Alternate Names | Zorgaanbieder, nl-core-HealthcareProvider-Organization
Invariants | dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources (`contained.contained.empty()`) dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource (`contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`) dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated (`contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`) dom-5: If a resource is contained in another resource, it SHALL NOT have a security label (`contained.meta.security.empty()`) dom-6: A resource should have narrative for robust management (`text.`div`.exists()`) org-1: The organization SHALL at least have a name or an identifier, and possibly more than one (`(identifier.count() + name.count()) > 0`) ura-identifier-or-partof: an Organization instance must either have an URA-identifier or must be 'partOf' some other instance that is an nl-gf-organization instance. (`identifier.where(system='http://fhir.nl/fhir/NamingSystem/ura').exists() or partOf.exists()`)
2. Organization.id
Definition | The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
Short | Logical id of this artifact
Comments | The only time that a resource does not have an id is when it is being submitted to the server using a create operation.
Control | 0..1
Type | id
Is Modifier | false
Summary | true
4. Organization.meta
Definition | The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.
Short | Metadata about the resource
Control | 0..1
Type | Meta
Is Modifier | false
Summary | true
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`)
6. Organization.implicitRules
Definition | A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.
Short | A set of rules under which this content was created
Comments | Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.
Control | 0..0
Type | uri
Is Modifier | true because This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation
Primitive Value | This primitive element may be present, or absent, or replaced by an extension
Summary | true
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`)
8. Organization.language
Definition | The base language in which the resource is written.
Short | Language of the resource content
Comments | Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).
Control | 0..1
Binding | The codes SHOULD be taken from CommonLanguages (preferred to `http://hl7.org/fhir/ValueSet/languages` ) A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
Type | code
Is Modifier | false
Primitive Value | This primitive element may be present, or absent, or replaced by an extension
Summary | false
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`)
10. Organization.text
Definition | A human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.
Short | Text summary of the resource, for human interpretation
Comments | Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later.
Control | 0..1
Type | Narrative
Is Modifier | false
Summary | false
Alternate Names | narrative, html, xhtml, display
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`)
12. Organization.contained
Definition | These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.
Short | Contained, inline Resources
Comments | This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.
Control | 0..*
Type | Resource
Is Modifier | false
Summary | false
Alternate Names | inline resources, anonymous resources, contained resources
14. Organization.extension
Definition | May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Short | Additional content defined by implementations
Comments | 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.
Control | 0..*
Type | Extension
Is Modifier | false
Summary | false
Alternate Names | extensions, user content
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`) ext-1: Must have either extensions or value[x], not both (`extension.exists() != value.exists()`)
16. Organization.modifierExtension
Definition | An Extension
Short | Extension
Control | 0..0
Type | Extension
Is Modifier | true because Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them
Summary | false
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`) ext-1: Must have either extensions or value[x], not both (`extension.exists() != value.exists()`)
18. Organization.identifier
Definition | The organization’s identification number. For Dutch healthcare providers, the URA number or the AGB number is used, if possible. Depending on the context other ID's are also possible. For foreign or non-affiliated healthcare providers, another unique identification number can be used. This must be accompanied by the name and/or code of the issuing organization.
Short | HealthcareProviderIdentificationNumber
Note | This is a business identifier, not a resource identifier (see discussion)
Control | 1..* This element is affected by the following invariants: org-1
Type | Identifier
Is Modifier | false
Summary | true
Requirements | Organizations are known by a variety of ids. Some institutions maintain several, and most collect identifiers for exchange with other organizations concerning the organization.
Alternate Names | ZorgaanbiederIdentificatienummer
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`)
Slicing | This element introduces a set of slices on `Organization.identifier`. The slices areUnordered and Open, and can be differentiated using the following discriminators: value @ $this
20. Organization.identifier:ura
Slice Name | ura
Definition | Identifier for the organization that is used to identify the organization across multiple disparate systems.
Short | Identifies this organization across multiple systems
Note | This is a business identifier, not a resource identifier (see discussion)
Control | 0..* This element is affected by the following invariants: org-1
Type | Identifier
Is Modifier | false
Summary | true
Requirements | Organizations are known by a variety of ids. Some institutions maintain several, and most collect identifiers for exchange with other organizations concerning the organization.
Pattern Value | `{ "system" : "http://fhir.nl/fhir/NamingSystem/ura" }`
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`)
22. Organization.identifier:agb
Slice Name | agb
Definition | Identifier for the organization that is used to identify the organization across multiple disparate systems.
Short | Identifies this organization across multiple systems
Note | This is a business identifier, not a resource identifier (see discussion)
Control | 0..* This element is affected by the following invariants: org-1
Type | Identifier
Is Modifier | false
Summary | true
Requirements | Organizations are known by a variety of ids. Some institutions maintain several, and most collect identifiers for exchange with other organizations concerning the organization.
Pattern Value | `{ "system" : "http://fhir.nl/fhir/NamingSystem/agb-z" }`
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`)
24. Organization.identifier:AssignedId
Slice Name | AssignedId
Definition | The organization’s identification number. For Dutch healthcare providers, the URA number or the AGB number is used, if possible. Depending on the context other ID's are also possible. For foreign or non-affiliated healthcare providers, another unique identification number can be used. This must be accompanied by the name and/or code of the issuing organization.
Short | HealthcareProviderIdentificationNumber
Note | This is a business identifier, not a resource identifier (see discussion)
Control | 1..1 This element is affected by the following invariants: org-1
Type | Identifier( Author Assigned Identifier)
Is Modifier | false
Summary | true
Requirements | Organizations are known by a variety of ids. Some institutions maintain several, and most collect identifiers for exchange with other organizations concerning the organization.
Alternate Names | ZorgaanbiederIdentificatienummer
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`)
26. Organization.active
Definition | Whether the organization's record is still in active use.
Short | Whether the organization's record is still in active use
Comments | This active flag is not intended to be used to mark an organization as temporarily closed or under construction. Instead the Location(s) within the Organization should have the suspended status. If further details of the reason for the suspension are required, then an extension on this element should be used. This element is labeled as a modifier because it may be used to mark that the resource was created in error.
Control | 0..1
Type | boolean
Is Modifier | true because This element is labelled as a modifier because it is a status element that can indicate that a record should not be treated as valid
Primitive Value | This primitive element may be present, or absent, or replaced by an extension
Summary | true
Requirements | Need a flag to indicate a record is no longer to be used and should generally be hidden for the user in the UI.
Meaning if Missing | This resource is generally assumed to be active if no value is provided for the active element
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`)
28. Organization.type
Definition | The kind(s) of organization that this is.
Short | Kind of organization
Comments | Organizations can be corporations, wards, sections, clinical teams, government departments, etc. Note that code is generally a classifier of the type of organization; in many applications, codes are used to identity a particular organization (say, ward) as opposed to another of the same type - these are identifiers, not codes When considering if multiple types are appropriate, you should evaluate if child organizations would be a more appropriate use of the concept, as different types likely are in different sub-areas of the organization. This is most likely to be used where type values have orthogonal values, such as a religious, academic and medical center. We expect that some jurisdictions will profile this optionality to be a single cardinality.
Control | 1..*
Binding | For example codes, see OrganizationType (example to `http://hl7.org/fhir/ValueSet/organization-type` ) Used to categorize the organization.
Type | CodeableConcept
Is Modifier | false
Summary | true
Requirements | Need to be able to track the kind of organization that this is - different organization types have different uses.
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`)
Slicing | This element introduces a set of slices on `Organization.type`. The slices areUnordered and Open, and can be differentiated using the following discriminators: value @ $this
30. Organization.type:departmentSpecialty
Slice Name | departmentSpecialty
Definition | The specialty of the healthcare provider’s department. The departmental specialty can be filled in if further indication of the healthcare provider is needed. This refers to the recognized medical specialties as stated in the BIG Act.
Short | DepartmentSpecialty
Comments | Organizations can be corporations, wards, sections, clinical teams, government departments, etc. Note that code is generally a classifier of the type of organization; in many applications, codes are used to identity a particular organization (say, ward) as opposed to another of the same type - these are identifiers, not codes When considering if multiple types are appropriate, you should evaluate if child organizations would be a more appropriate use of the concept, as different types likely are in different sub-areas of the organization. This is most likely to be used where type values have orthogonal values, such as a religious, academic and medical center. We expect that some jurisdictions will profile this optionality to be a single cardinality.
Control | 0..1
Binding | The codes SHALL be taken from AfdelingSpecialismeCodelijst (required to `http://decor.nictiz.nl/fhir/ValueSet/2.16.840.1.113883.2.4.3.11.60.40.2.17.2.4--20200901000000` ) Used to categorize the organization.
Type | CodeableConcept
Is Modifier | false
Summary | true
Requirements | Need to be able to track the kind of organization that this is - different organization types have different uses.
Alternate Names | AfdelingSpecialisme
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`)
32. Organization.type:organizationType
Slice Name | organizationType
Definition | The type of healthcare provider, such as general hospital, or nursing home. If this field is filled in and an AGB code is used for the HealthcareProviderIdentificationNumber, the type must match the type implicitly contained in the AGB code.
Short | OrganizationType
Comments | Organizations can be corporations, wards, sections, clinical teams, government departments, etc. Note that code is generally a classifier of the type of organization; in many applications, codes are used to identity a particular organization (say, ward) as opposed to another of the same type - these are identifiers, not codes When considering if multiple types are appropriate, you should evaluate if child organizations would be a more appropriate use of the concept, as different types likely are in different sub-areas of the organization. This is most likely to be used where type values have orthogonal values, such as a religious, academic and medical center. We expect that some jurisdictions will profile this optionality to be a single cardinality.
Control | 0..1
Binding | The codes SHALL be taken from OrganisatieTypeCodelijst (required to `http://decor.nictiz.nl/fhir/ValueSet/2.16.840.1.113883.2.4.3.11.60.40.2.17.2.3--20200901000000` ) Used to categorize the organization.
Type | CodeableConcept
Is Modifier | false
Summary | true
Requirements | Need to be able to track the kind of organization that this is - different organization types have different uses.
Alternate Names | OrganisatieType
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`)
34. Organization.type:SBI
Slice Name | SBI
Definition | CBS Standaard Bedrijfsindeling code representing the primary activity of the organization.
Short | SBI
Comments | Organizations can be corporations, wards, sections, clinical teams, government departments, etc. Note that code is generally a classifier of the type of organization; in many applications, codes are used to identity a particular organization (say, ward) as opposed to another of the same type - these are identifiers, not codes When considering if multiple types are appropriate, you should evaluate if child organizations would be a more appropriate use of the concept, as different types likely are in different sub-areas of the organization. This is most likely to be used where type values have orthogonal values, such as a religious, academic and medical center. We expect that some jurisdictions will profile this optionality to be a single cardinality.
Control | 0..1
Binding | Unless not suitable, these codes SHALL be taken from NL GF Organization Types ValueSet (extensible to `http://minvws.github.io/generiekefuncties-docs/ValueSet/nl-gf-org-types-vs` )
Type | CodeableConcept
Is Modifier | false
Summary | true
Requirements | Need to be able to track the kind of organization that this is - different organization types have different uses.
Alternate Names | Standaard Bedrijfsindeling
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`)
36. Organization.name
Definition | Name of the organization. If an identification number is given, the name must match the name that corresponds to the identification number.
Short | OrganizationName
Comments | If the name of an organization changes, consider putting the old name in the alias column so that it can still be located through searches.
Control | 1..1 This element is affected by the following invariants: org-1
Type | string
Is Modifier | false
Primitive Value | This primitive element may be present, or absent, or replaced by an extension
Summary | true
Requirements | Need to use the name as the label of the organization.
Alternate Names | OrganisatieNaam
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`)
38. Organization.alias
Definition | A list of alternate names that the organization is known as, or was known as in the past.
Short | A list of alternate names that the organization is known as, or was known as in the past
Comments | There are no dates associated with the alias/historic names, as this is not intended to track when names were used, but to assist in searching so that older names can still result in identifying the organization.
Control | 0..*
Type | string
Is Modifier | false
Primitive Value | This primitive element may be present, or absent, or replaced by an extension
Summary | false
Requirements | Over time locations and organizations go through many changes and can be known by different names. For searching knowing previous names that the organization was known by can be very useful.
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`)
40. Organization.telecom
Definition | A contact detail for the organization.
Short | A contact detail for the organization
Comments | The use code 'home' is not to be used. Note that these contacts are not the contact details of people who are employed by or represent the organization, but official contacts for the organization itself.
Control | 0..* This element is affected by the following invariants: org-3
Type | ContactPoint
Is Modifier | false
Summary | false
Requirements | Human contact for the organization.
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`) org-3: The telecom of an organization can never be of use 'home' (`where(use = 'home').empty()`)
Slicing | This element introduces a set of slices on `Organization.telecom`. The slices areUnordered and Open, and can be differentiated using the following discriminators: profile @ $this
42. Organization.telecom:telephoneNumbers
Slice Name | telephoneNumbers
Definition | Details for all kinds of technology mediated contact points for a person or organization, including telephone, email, etc.
Short | TelephoneNumbers
Comments | Implementation of the "TelephoneNumbers" concept of zib ContactInformation. Please note that, although the zib concepts TelecomType and NumberType are functionally equivalent to the FHIR concepts `ContactPoint.system` and `ContactPoint.use` respectively, a mismatch occurs on the concept of mobile phone numbers; the zib uses the first concept and FHIR the second. For this reason, the ValueSet on `ContactPoint.system` is too narrow and the zib code will need to be communicated using the ext-CodeSpecification extension.
Control | 0..* This element is affected by the following invariants: org-3, ele-1
Type | ContactPoint(nl core ContactInformation TelephoneNumbers)
Is Modifier | false
Standard Status | Normative (from Trial Use)
Summary | false
Requirements | Human contact for the organization.
Alternate Names | Telefoonnummers, nl-core-ContactInformation-TelephoneNumbers
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`) org-3: The telecom of an organization can never be of use 'home' (`where(use = 'home').empty()`) cpt-2: A system is required if a value is provided. (`value.empty() or system.exists()`)
44. Organization.telecom:emailAddresses
Slice Name | emailAddresses
Definition | Details for all kinds of technology mediated contact points for a person or organization, including telephone, email, etc.
Short | EmailAddresses
Comments | Implementation of the "EmailAddresses" concept of zib ContactInformation.
Control | 0..* This element is affected by the following invariants: org-3, ele-1
Type | ContactPoint(nl core ContactInformation EmailAddresses)
Is Modifier | false
Standard Status | Normative (from Trial Use)
Summary | false
Requirements | Human contact for the organization.
Alternate Names | EmailAdressen, nl-core-ContactInformation-EmailAddresses
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`) org-3: The telecom of an organization can never be of use 'home' (`where(use = 'home').empty()`) cpt-2: A system is required if a value is provided. (`value.empty() or system.exists()`)
46. Organization.address
Definition | An address expressed using postal conventions (as opposed to GPS or other location definition formats). This data type may be used to convey addresses for use in delivering mail as well as for visiting locations which might not be valid for mail delivery. There are a variety of postal address formats defined around the world.
Short | AddressInformation
Comments | This datatype defines a common basis for expressing all addresses around the world, but adds extensions to express Dutch addresses specifically, according to the zib AddressInformation v1.1 (2020). 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 zib 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 zib 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 code from the zib should also be included using the extension on `Address.extension:addressType`.
zib | .ext:addressType | .use | .type
--- | --- | --- | ---
Postal Address/Postadres | PST |  | postal
Primary Home/Officieel adres | HP | home | both
Visit Address/Woon-/verblijfadres | PHYS | home | physical
Temporary Address/Tijdelijk adres | TMP | temp |
Work Place/Werkadres | WP | work |
Vacation Home/Vakantie adres | HV | temp |
If `Address.type` is both then this is to be understood as a dual purpose address (postal and physical), unless a specific postal type address is added. 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 zib ValueSet. Therefore, a custom extension has been made. This doesn't preclude the use of the AD-use extension.
Control | 0..* This element is affected by the following invariants: org-2, ele-1
Type | Address(nl core AddressInformation)
Is Modifier | false
Summary | false
Requirements | May need to keep track of the organization's addresses for contacting, billing or reporting requirements.
Alternate Names | Adresgegevens, nl-core-AddressInformation
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`) org-2: An address of an organization can never be of use 'home' (`where(use = 'home').empty()`)
48. Organization.partOf
Definition | The organization of which this organization forms a part.
Short | The organization of which this organization forms a part
Control | 0..1
Type | Reference(NL Generic Functions Organization Profile)
Is Modifier | false
Summary | true
Requirements | Need to be able to track the hierarchy of organizations within an organization.
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`)
50. Organization.contact
Definition | Contact for the organization for a certain purpose.
Short | Contact for the organization for a certain purpose
Comments | Where multiple contacts for the same purpose are provided there is a standard extension that can be used to determine which one is the preferred contact to use.
Control | 0..*
Type | BackboneElement
Is Modifier | false
Summary | false
Requirements | Need to keep track of assigned contact points within bigger organization.
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`)
52. Organization.contact.id
Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Short | Unique id for inter-element referencing
Control | 0..1
Type | string
Is Modifier | false
XML Format | In the XML format, this property is represented as an attribute.
Summary | false
54. Organization.contact.extension
Definition | May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Short | Additional content defined by implementations
Comments | 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.
Control | 0..*
Type | Extension
Is Modifier | false
Summary | false
Alternate Names | extensions, user content
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`) ext-1: Must have either extensions or value[x], not both (`extension.exists() != value.exists()`)
56. Organization.contact.modifierExtension
Definition | May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
Short | Extensions that cannot be ignored even if unrecognized
Comments | 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.
Control | 0..*
Type | Extension
Is Modifier | true because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
Summary | true
Requirements | Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Alternate Names | extensions, user content, modifiers
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`) ext-1: Must have either extensions or value[x], not both (`extension.exists() != value.exists()`)
58. Organization.contact.purpose
Definition | Indicates a purpose for which the contact can be reached.
Short | The type of contact
Control | 0..1
Binding | Unless not suitable, these codes SHALL be taken from ContactEntityType (extensible to `http://hl7.org/fhir/ValueSet/contactentity-type` ) The purpose for which you would contact a contact party.
Type | CodeableConcept
Is Modifier | false
Summary | false
Requirements | Need to distinguish between multiple contact persons.
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`)
60. Organization.contact.name
Definition | This slice represents the person's official name information, including given names, last name and possibly the partner's last name.
Short | NameInformation
Comments | This `.name` element accomodates the official parts of a Dutch name according to common international usage and optionally to the zib NameInformation v1.1 (2020). An official Dutch name is represented in FHIR as an ordinary international name, optionally augmented using extensions to specify how the last name is built up according to the Dutch rules if conformance to the zib is required. See the guidance on `.family` and on `.extension:nameUsage` for more information. Systems that need to work in a Dutch context SHOULD support the extensions as specified in `.given`, `.family` and `.extension:nameUsage`. In addition, systems SHOULD use the core elements according to the FHIR specifications to provide compatibility outside Dutch contexts. This means that: If parts of the name are specified using one or more of the structured elements, the `.text` element SHOULD be populated with a rendered version of the full name. If parts of the family name are specified using the extensions in `.family`, the `.family` element SHOULD be populated with the full family name. Note 1: The zib cannot be represented straightforward in FHIR. Especially note the guidance on `.given` on how to map the FirstNames and Initials concepts, and on `.prefix`/`.suffix` on how to map the Titles concept. Note 2: This element should only contain a person's official names. The GivenName concept is represented in another `.name` element with `.name.use` = usual. Note 3: The examples illustrate how the zib is mapped to FHIR.
Control | 0..1 This element is affected by the following invariants: ele-1
Type | HumanName(nl core NameInformation)
Is Modifier | false
Summary | false
Requirements | Need to be able to track the person by name.
Alternate Names | Naamgegevens, nl-core-NameInformation
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`) zib-NameInformation-1: If a prefix for a family name is specified, the family name is expected as well (`family.extension('http://hl7.org/fhir/StructureDefinition/humanname-own-prefix').empty().not() implies family.extension('http://hl7.org/fhir/StructureDefinition/humanname-own-name').empty().not()`) zib-NameInformation-2: If the prefix for a partner family name is specified, the partner family name is expected as well (`family.extension('http://hl7.org/fhir/StructureDefinition/humanname-partner-prefix').empty().not() implies family.extension('http://hl7.org/fhir/StructureDefinition/humanname-partner-name').empty().not()`) nl-core-NameInformation-01: If parts of the name are specified using one or more of the structured elements, the `.text` element SHOULD be populated with a rendered version of the full name. This ensures compatibility with common FHIR usage. (`(family.exists() or given.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier').where(value != 'IN').exists()) implies text.hasValue()`)
62. Organization.contact.telecom
Definition | A contact detail (e.g. a telephone number or an email address) by which the party may be contacted.
Short | Contact details (telephone, email, etc.) for a contact
Control | 0..*
Type | ContactPoint
Is Modifier | false
Summary | false
Requirements | People have (primary) ways to contact them in some way such as phone, email.
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`)
Slicing | This element introduces a set of slices on `Organization.contact.telecom`. The slices areUnordered and Open, and can be differentiated using the following discriminators: profile @ $this
64. Organization.contact.telecom:telephoneNumbers
Slice Name | telephoneNumbers
Definition | Details for all kinds of technology mediated contact points for a person or organization, including telephone, email, etc.
Short | TelephoneNumbers
Comments | Implementation of the "TelephoneNumbers" concept of zib ContactInformation. Please note that, although the zib concepts TelecomType and NumberType are functionally equivalent to the FHIR concepts `ContactPoint.system` and `ContactPoint.use` respectively, a mismatch occurs on the concept of mobile phone numbers; the zib uses the first concept and FHIR the second. For this reason, the ValueSet on `ContactPoint.system` is too narrow and the zib code will need to be communicated using the ext-CodeSpecification extension.
Control | 0..* This element is affected by the following invariants: ele-1
Type | ContactPoint(nl core ContactInformation TelephoneNumbers)
Is Modifier | false
Standard Status | Normative (from Trial Use)
Summary | false
Requirements | People have (primary) ways to contact them in some way such as phone, email.
Alternate Names | Telefoonnummers, nl-core-ContactInformation-TelephoneNumbers
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`) cpt-2: A system is required if a value is provided. (`value.empty() or system.exists()`)
66. Organization.contact.telecom:emailAddresses
Slice Name | emailAddresses
Definition | Details for all kinds of technology mediated contact points for a person or organization, including telephone, email, etc.
Short | EmailAddresses
Comments | Implementation of the "EmailAddresses" concept of zib ContactInformation.
Control | 0..* This element is affected by the following invariants: ele-1
Type | ContactPoint(nl core ContactInformation EmailAddresses)
Is Modifier | false
Standard Status | Normative (from Trial Use)
Summary | false
Requirements | People have (primary) ways to contact them in some way such as phone, email.
Alternate Names | EmailAdressen, nl-core-ContactInformation-EmailAddresses
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`) cpt-2: A system is required if a value is provided. (`value.empty() or system.exists()`)
68. Organization.contact.address
Definition | An address expressed using postal conventions (as opposed to GPS or other location definition formats). This data type may be used to convey addresses for use in delivering mail as well as for visiting locations which might not be valid for mail delivery. There are a variety of postal address formats defined around the world.
Short | AddressInformation
Comments | This datatype defines a common basis for expressing all addresses around the world, but adds extensions to express Dutch addresses specifically, according to the zib AddressInformation v1.1 (2020). 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 zib 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 zib 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 code from the zib should also be included using the extension on `Address.extension:addressType`.
zib | .ext:addressType | .use | .type
--- | --- | --- | ---
Postal Address/Postadres | PST |  | postal
Primary Home/Officieel adres | HP | home | both
Visit Address/Woon-/verblijfadres | PHYS | home | physical
Temporary Address/Tijdelijk adres | TMP | temp |
Work Place/Werkadres | WP | work |
Vacation Home/Vakantie adres | HV | temp |
If `Address.type` is both then this is to be understood as a dual purpose address (postal and physical), unless a specific postal type address is added. 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 zib ValueSet. Therefore, a custom extension has been made. This doesn't preclude the use of the AD-use extension.
Control | 0..1 This element is affected by the following invariants: ele-1
Type | Address(nl core AddressInformation)
Is Modifier | false
Summary | false
Requirements | May need to keep track of a contact party's address for contacting, billing or reporting requirements.
Alternate Names | Adresgegevens, nl-core-AddressInformation
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`)
70. Organization.endpoint
Definition | Technical endpoints providing access to services operated for the organization.
Short | Technical endpoints providing access to services operated for the organization
Control | 0..*
Type | Reference(NL Generic Functions Endpoint Profile)
Is Modifier | false
Summary | false
Requirements | Organizations have multiple systems that provide various services and need to be able to define the technical connection details for how to connect to them, and for what purpose.
Invariants | ele-1: All FHIR elements must have a @value or children (`hasValue() or (children().count() > id.count())`)