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

Netherlands - Generic Functions for data exchange Implementation Guide, published by Stichting Nuts. This guide is not an authorized publication; it is the continuous build for version 0.3.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/nuts-foundation/nl-generic-functions-ig/ and changes regularly. See the Directory of published versions

## Resource Profile: NL Generic Functions Practitioner Profile

Official URL: http://nuts-foundation.github.io/nl-generic-functions-ig/StructureDefinition/nl-gf-practitioner | Version: 0.3.0
Draft as of 2026-03-12 | Computable Name: NlGfPractitioner

The details of a healthcare practitioner, such as a doctor or nurse, who is directly or indirectly involved in the provisioning of healthcare.

Usages:

- Examples for this Profile: Practitioner/040b160a-6072-4244-adc0-2b786c4ef052, Practitioner/08630c28-5e2a-4b0c-b8ce-f08f533246b9, Practitioner/9a63e407-34af-4ae4-ad3c-f7107fbbc0cd, Practitioner/ad1-p1... Show 2 more, Practitioner/ad2-p1 and Practitioner/ad3-p1
- CapabilityStatements using this Profile: Administration Directory for Administration Client, Administration Directory for Update Client, Query Directory for Query Client for only Read operations and Query Directory for Query Client

You can also check for usages in the FHIR IG Statistics

### Formal Views of Profile Content

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

- Key Elements Table
- Differential Table
- Snapshot Table
- Statistics/References
- All

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Practitioner |  | 0..* | NlcoreHealthProfessionalPractitioner | HealthProfessional
Slices for identifier | Σ | 1..* | Identifier | HealthProfessionalIdentificationNumber Slice: Unordered, Open by value:$this
identifier:big | Σ | 0..* | Identifier | An identifier for the person as this agent Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
use |  | 0..1 | code | usual | official | temp | secondary | old (If known)
type |  | 0..1 | CodeableConcept | Description of identifier
system |  | 1..1 | uri | The namespace for the identifier value Fixed Value: http://fhir.nl/fhir/NamingSystem/big
value |  | 0..1 | string | The value that is unique
period |  | 0..1 | Period | Time period when id is/was valid for use
assigner |  | 0..1 | Reference(Organization) | Organization that issued id (may be just text)
identifier:uzi | Σ | 0..* | Identifier | An identifier for the person as this agent Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
use |  | 0..1 | code | usual | official | temp | secondary | old (If known)
type |  | 0..1 | CodeableConcept | Description of identifier
system |  | 1..1 | uri | The namespace for the identifier value Fixed Value: http://fhir.nl/fhir/NamingSystem/uzi-nr-pers
value |  | 0..1 | string | The value that is unique
period |  | 0..1 | Period | Time period when id is/was valid for use
assigner |  | 0..1 | Reference(Organization) | Organization that issued id (may be just text)
identifier:agb | Σ | 0..* | Identifier | An identifier for the person as this agent Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
use |  | 0..1 | code | usual | official | temp | secondary | old (If known)
type |  | 0..1 | CodeableConcept | Description of identifier
system |  | 1..1 | uri | The namespace for the identifier value Fixed Value: http://fhir.nl/fhir/NamingSystem/agb-z
value |  | 0..1 | string | The value that is unique
period |  | 0..1 | Period | Time period when id is/was valid for use
assigner |  | 0..1 | Reference(Organization) | Organization that issued id (may be just text)
identifier:AssignedId | Σ | 1..1 | Identifier | HealthProfessionalIdentificationNumber
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
system | Σ | 1..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient
value | Σ | 1..1 | string | The value that is unique Example General: 123456
assigner | Σ | 1..1 | Reference(Organization) | Organization that issued id (may be just text)
identifier | Σ | 1..1 | Identifier | Logical reference, when literal reference is not known
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
type | Σ | 1..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
coding | Σ | 1..1 | Coding | Code defined by a terminology system
system | Σ | 0..1 | uri | Identity of the terminology system Required Pattern: http://terminology.hl7.org/CodeSystem/provenance-participant-type
code | Σ | 0..1 | code | Symbol in syntax defined by the system Required Pattern: author
system | Σ | 0..1 | uri | The namespace for the identifier value Required Pattern: http://fhir.nl/fhir/NamingSystem/ura
value | Σ | 1..1 | string | The value that is unique Example General: 123456
Slices for name | Σ | 1..* | HumanName | NameInformation Slice: Unordered, Open by value:use
name:nameInformation | Σ C N | 0..2 | NlcoreNameInformation | NameInformation Constraints: zib-NameInformation-1, zib-NameInformation-2, nl-core-NameInformation-01
name:nameInformation-GivenName | Σ N | 0..* | NlcoreNameInformationGivenName | Name of a human - parts and usage
Slices for telecom | Σ | 0..* | ContactPoint | ContactInformation Slice: Unordered, Open by profile:$this
telecom:telephoneNumbers | Σ C N | 0..* | NlcoreContactInformationTelephoneNumbers | TelephoneNumbers Constraints: cpt-2
telecom:emailAddresses | Σ C N | 0..* | NlcoreContactInformationEmailAddresses | EmailAddresses Constraints: cpt-2
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Practitioner.identifier:AssignedId.​use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std.
Practitioner.identifier:AssignedId.​assigner.identifier.​use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std.
Practitioner.identifier:AssignedId.​assigner.identifier.​type | Base | extensible | IdentifierType | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
cpt-2 | error | Practitioner.telecom:telephoneNumbers, Practitioner.telecom:emailAddresses | A system is required if a value is provided. | `value.empty() or system.exists()`
dom-2 | error | Practitioner | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Practitioner | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | Practitioner | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | Practitioner | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Practitioner | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
nl-core-NameInformation-01 | warning | Practitioner.name:nameInformation | 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()`
zib-NameInformation-1 | error | Practitioner.name:nameInformation | 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 | error | Practitioner.name:nameInformation | 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()`

This structure is derived from NlcoreHealthProfessionalPractitioner

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Practitioner |  | 0..* | NlcoreHealthProfessionalPractitioner | HealthProfessional
implicitRules |  | 0..0 |  | A set of rules under which this content was created
modifierExtension |  | 0..0 |  | Extension
identifier |  | 1..* | Identifier | HealthProfessionalIdentificationNumber
Slices for identifier |  |  |  | Content/Rules for all slices
identifier:AssignedId |  | 1..1 | Identifier | HealthProfessionalIdentificationNumber
system |  | 1..1 | uri | The namespace for the identifier value
value |  | 1..1 | string | The value that is unique
assigner |  | 1..1 | Reference(Organization) | Organization that issued id (may be just text)
identifier |  | 1..1 | Identifier | Logical reference, when literal reference is not known
type |  | 1..1 | CodeableConcept | Description of identifier
coding |  | 1..1 | Coding | Code defined by a terminology system
system |  | 0..1 | uri | Identity of the terminology system Required Pattern: http://terminology.hl7.org/CodeSystem/provenance-participant-type
code |  | 0..1 | code | Symbol in syntax defined by the system Required Pattern: author
system |  | 0..1 | uri | The namespace for the identifier value Required Pattern: http://fhir.nl/fhir/NamingSystem/ura
value |  | 1..1 | string | The value that is unique
name |  | 1..* | HumanName | NameInformation
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Practitioner |  | 0..* | NlcoreHealthProfessionalPractitioner | HealthProfessional
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations
Slices for identifier | Σ | 1..* | Identifier | HealthProfessionalIdentificationNumber Slice: Unordered, Open by value:$this
identifier:big | Σ | 0..* | Identifier | An identifier for the person as this agent Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
use |  | 0..1 | code | usual | official | temp | secondary | old (If known)
type |  | 0..1 | CodeableConcept | Description of identifier
system |  | 1..1 | uri | The namespace for the identifier value Fixed Value: http://fhir.nl/fhir/NamingSystem/big
value |  | 0..1 | string | The value that is unique
period |  | 0..1 | Period | Time period when id is/was valid for use
assigner |  | 0..1 | Reference(Organization) | Organization that issued id (may be just text)
identifier:uzi | Σ | 0..* | Identifier | An identifier for the person as this agent Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
use |  | 0..1 | code | usual | official | temp | secondary | old (If known)
type |  | 0..1 | CodeableConcept | Description of identifier
system |  | 1..1 | uri | The namespace for the identifier value Fixed Value: http://fhir.nl/fhir/NamingSystem/uzi-nr-pers
value |  | 0..1 | string | The value that is unique
period |  | 0..1 | Period | Time period when id is/was valid for use
assigner |  | 0..1 | Reference(Organization) | Organization that issued id (may be just text)
identifier:agb | Σ | 0..* | Identifier | An identifier for the person as this agent Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
use |  | 0..1 | code | usual | official | temp | secondary | old (If known)
type |  | 0..1 | CodeableConcept | Description of identifier
system |  | 1..1 | uri | The namespace for the identifier value Fixed Value: http://fhir.nl/fhir/NamingSystem/agb-z
value |  | 0..1 | string | The value that is unique
period |  | 0..1 | Period | Time period when id is/was valid for use
assigner |  | 0..1 | Reference(Organization) | Organization that issued id (may be just text)
identifier:AssignedId | Σ | 1..1 | Identifier | HealthProfessionalIdentificationNumber
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
type | Σ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
system | Σ | 1..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient
value | Σ | 1..1 | string | The value that is unique Example General: 123456
period | Σ | 0..1 | Period | Time period when id is/was valid for use
assigner | Σ | 1..1 | Reference(Organization) | Organization that issued id (may be just text)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
reference | Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL
type | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
identifier | Σ | 1..1 | Identifier | Logical reference, when literal reference is not known
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
type | Σ | 1..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
coding | Σ | 1..1 | Coding | Code defined by a terminology system
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
system | Σ | 0..1 | uri | Identity of the terminology system Required Pattern: http://terminology.hl7.org/CodeSystem/provenance-participant-type
version | Σ | 0..1 | string | Version of the system - if relevant
code | Σ | 0..1 | code | Symbol in syntax defined by the system Required Pattern: author
display | Σ | 0..1 | string | Representation defined by the system
userSelected | Σ | 0..1 | boolean | If this coding was chosen directly by the user
text | Σ | 0..1 | string | Plain text representation of the concept
system | Σ | 0..1 | uri | The namespace for the identifier value Required Pattern: http://fhir.nl/fhir/NamingSystem/ura
value | Σ | 1..1 | string | The value that is unique Example General: 123456
period | Σ | 0..1 | Period | Time period when id is/was valid for use
assigner | Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text)
display | Σ | 0..1 | string | Text alternative for the resource
active | Σ | 0..1 | boolean | Whether this practitioner's record is in active use
Slices for name | Σ | 1..* | HumanName | NameInformation Slice: Unordered, Open by value:use
name:nameInformation | Σ C N | 0..2 | NlcoreNameInformation | NameInformation Constraints: zib-NameInformation-1, zib-NameInformation-2, nl-core-NameInformation-01
name:nameInformation-GivenName | Σ N | 0..* | NlcoreNameInformationGivenName | Name of a human - parts and usage
Slices for telecom | Σ | 0..* | ContactPoint | ContactInformation Slice: Unordered, Open by profile:$this
telecom:telephoneNumbers | Σ C N | 0..* | NlcoreContactInformationTelephoneNumbers | TelephoneNumbers Constraints: cpt-2
telecom:emailAddresses | Σ C N | 0..* | NlcoreContactInformationEmailAddresses | EmailAddresses Constraints: cpt-2
address | Σ | 0..* | NlcoreAddressInformation | AddressInformation
gender | Σ | 0..1 | code | Gender Binding: AdministrativeGender (required): Use ConceptMap GeslachtCodelijst-to-AdministrativeGender to translate terminology from the functional model to profile terminology in ValueSet AdministrativeGender. This ConceptMap is based on GeslachtCodelijst as defined in the zib Patient to avoid duplication of ConceptMaps. The GeslachtCodelijst of Patient and HealthProfessional are identical in terms of codes.
id |  | 0..1 | string | xml:id (or equivalent in JSON)
Slices for extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
extension:genderCodelist | N | 0..* | (Complex) | Optional Extensions Element URL: http://nictiz.nl/fhir/StructureDefinition/ext-CodeSpecification
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://nictiz.nl/fhir/StructureDefinition/ext-CodeSpecification"
value[x] |  | 0..1 | CodeableConcept | Value of extension Binding: GeslachtCodelijst (required)
value |  | 0..1 | string | Primitive value for code
birthDate | Σ | 0..1 | date | The date on which the practitioner was born
photo |  | 0..* | Attachment | Image of the person
qualification |  | 0..* | BackboneElement | Certification, licenses, or training pertaining to the provision of care
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
identifier |  | 0..* | Identifier | An identifier for this qualification for the practitioner
code |  | 1..1 | CodeableConcept | Coded representation of the qualification Binding: v2 table 0360, Version 2.7 (example): Specific qualification the practitioner has to provide a service.
period |  | 0..1 | Period | Period during which the qualification is valid
issuer |  | 0..1 | Reference(Organization) | Organization that regulates and issues the qualification
communication |  | 0..* | CodeableConcept | A language the practitioner can use in patient communication Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Practitioner.language | Base | preferred | Common Languages | 📦4.0.1 | FHIR Std.
Practitioner.identifier:AssignedId.​use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std.
Practitioner.identifier:AssignedId.​type | Base | extensible | IdentifierType | 📍4.0.1 | FHIR Std.
Practitioner.identifier:AssignedId.​assigner.type | Base | extensible | ResourceType | 📍4.0.1 | FHIR Std.
Practitioner.identifier:AssignedId.​assigner.identifier.​use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std.
Practitioner.identifier:AssignedId.​assigner.identifier.​type | Base | extensible | IdentifierType | 📍4.0.1 | FHIR Std.
Practitioner.gender | Base | required | AdministrativeGender | 📍4.0.1 | FHIR Std.
Practitioner.gender.​extension:genderCodelist.​value[x] | Base | required | GeslachtCodelijst | 📦2020-09-01T00:00:00 | FHIR implementation of zibs 2020 v0.12
Practitioner.qualification.​code | Base | example | v2 table 0360, Version 2.7 | 📦0360 | FHIR Std.
Practitioner.communication | Base | preferred | Common Languages | 📦4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
cpt-2 | error | Practitioner.telecom:telephoneNumbers, Practitioner.telecom:emailAddresses | A system is required if a value is provided. | `value.empty() or system.exists()`
dom-2 | error | Practitioner | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Practitioner | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | Practitioner | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | Practitioner | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Practitioner | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`
nl-core-NameInformation-01 | warning | Practitioner.name:nameInformation | 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()`
zib-NameInformation-1 | error | Practitioner.name:nameInformation | 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 | error | Practitioner.name:nameInformation | 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()`

This structure is derived from NlcoreHealthProfessionalPractitioner

Summary

Mandatory: 10 elements
Prohibited: 2 elements

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Practitioner |  | 0..* | NlcoreHealthProfessionalPractitioner | HealthProfessional
Slices for identifier | Σ | 1..* | Identifier | HealthProfessionalIdentificationNumber Slice: Unordered, Open by value:$this
identifier:big | Σ | 0..* | Identifier | An identifier for the person as this agent Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
use |  | 0..1 | code | usual | official | temp | secondary | old (If known)
type |  | 0..1 | CodeableConcept | Description of identifier
system |  | 1..1 | uri | The namespace for the identifier value Fixed Value: http://fhir.nl/fhir/NamingSystem/big
value |  | 0..1 | string | The value that is unique
period |  | 0..1 | Period | Time period when id is/was valid for use
assigner |  | 0..1 | Reference(Organization) | Organization that issued id (may be just text)
identifier:uzi | Σ | 0..* | Identifier | An identifier for the person as this agent Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
use |  | 0..1 | code | usual | official | temp | secondary | old (If known)
type |  | 0..1 | CodeableConcept | Description of identifier
system |  | 1..1 | uri | The namespace for the identifier value Fixed Value: http://fhir.nl/fhir/NamingSystem/uzi-nr-pers
value |  | 0..1 | string | The value that is unique
period |  | 0..1 | Period | Time period when id is/was valid for use
assigner |  | 0..1 | Reference(Organization) | Organization that issued id (may be just text)
identifier:agb | Σ | 0..* | Identifier | An identifier for the person as this agent Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
use |  | 0..1 | code | usual | official | temp | secondary | old (If known)
type |  | 0..1 | CodeableConcept | Description of identifier
system |  | 1..1 | uri | The namespace for the identifier value Fixed Value: http://fhir.nl/fhir/NamingSystem/agb-z
value |  | 0..1 | string | The value that is unique
period |  | 0..1 | Period | Time period when id is/was valid for use
assigner |  | 0..1 | Reference(Organization) | Organization that issued id (may be just text)
identifier:AssignedId | Σ | 1..1 | Identifier | HealthProfessionalIdentificationNumber
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
system | Σ | 1..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient
value | Σ | 1..1 | string | The value that is unique Example General: 123456
assigner | Σ | 1..1 | Reference(Organization) | Organization that issued id (may be just text)
identifier | Σ | 1..1 | Identifier | Logical reference, when literal reference is not known
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
type | Σ | 1..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
coding | Σ | 1..1 | Coding | Code defined by a terminology system
system | Σ | 0..1 | uri | Identity of the terminology system Required Pattern: http://terminology.hl7.org/CodeSystem/provenance-participant-type
code | Σ | 0..1 | code | Symbol in syntax defined by the system Required Pattern: author
system | Σ | 0..1 | uri | The namespace for the identifier value Required Pattern: http://fhir.nl/fhir/NamingSystem/ura
value | Σ | 1..1 | string | The value that is unique Example General: 123456
Slices for name | Σ | 1..* | HumanName | NameInformation Slice: Unordered, Open by value:use
name:nameInformation | Σ C N | 0..2 | NlcoreNameInformation | NameInformation Constraints: zib-NameInformation-1, zib-NameInformation-2, nl-core-NameInformation-01
name:nameInformation-GivenName | Σ N | 0..* | NlcoreNameInformationGivenName | Name of a human - parts and usage
Slices for telecom | Σ | 0..* | ContactPoint | ContactInformation Slice: Unordered, Open by profile:$this
telecom:telephoneNumbers | Σ C N | 0..* | NlcoreContactInformationTelephoneNumbers | TelephoneNumbers Constraints: cpt-2
telecom:emailAddresses | Σ C N | 0..* | NlcoreContactInformationEmailAddresses | EmailAddresses Constraints: cpt-2
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Practitioner.identifier:AssignedId.​use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std.
Practitioner.identifier:AssignedId.​assigner.identifier.​use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std.
Practitioner.identifier:AssignedId.​assigner.identifier.​type | Base | extensible | IdentifierType | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
cpt-2 | error | Practitioner.telecom:telephoneNumbers, Practitioner.telecom:emailAddresses | A system is required if a value is provided. | `value.empty() or system.exists()`
dom-2 | error | Practitioner | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Practitioner | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | Practitioner | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | Practitioner | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Practitioner | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
nl-core-NameInformation-01 | warning | Practitioner.name:nameInformation | 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()`
zib-NameInformation-1 | error | Practitioner.name:nameInformation | 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 | error | Practitioner.name:nameInformation | 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()`

Differential View

This structure is derived from NlcoreHealthProfessionalPractitioner

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Practitioner |  | 0..* | NlcoreHealthProfessionalPractitioner | HealthProfessional
implicitRules |  | 0..0 |  | A set of rules under which this content was created
modifierExtension |  | 0..0 |  | Extension
identifier |  | 1..* | Identifier | HealthProfessionalIdentificationNumber
Slices for identifier |  |  |  | Content/Rules for all slices
identifier:AssignedId |  | 1..1 | Identifier | HealthProfessionalIdentificationNumber
system |  | 1..1 | uri | The namespace for the identifier value
value |  | 1..1 | string | The value that is unique
assigner |  | 1..1 | Reference(Organization) | Organization that issued id (may be just text)
identifier |  | 1..1 | Identifier | Logical reference, when literal reference is not known
type |  | 1..1 | CodeableConcept | Description of identifier
coding |  | 1..1 | Coding | Code defined by a terminology system
system |  | 0..1 | uri | Identity of the terminology system Required Pattern: http://terminology.hl7.org/CodeSystem/provenance-participant-type
code |  | 0..1 | code | Symbol in syntax defined by the system Required Pattern: author
system |  | 0..1 | uri | The namespace for the identifier value Required Pattern: http://fhir.nl/fhir/NamingSystem/ura
value |  | 1..1 | string | The value that is unique
name |  | 1..* | HumanName | NameInformation
Documentation for this format

Snapshot View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Practitioner |  | 0..* | NlcoreHealthProfessionalPractitioner | HealthProfessional
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations
Slices for identifier | Σ | 1..* | Identifier | HealthProfessionalIdentificationNumber Slice: Unordered, Open by value:$this
identifier:big | Σ | 0..* | Identifier | An identifier for the person as this agent Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
use |  | 0..1 | code | usual | official | temp | secondary | old (If known)
type |  | 0..1 | CodeableConcept | Description of identifier
system |  | 1..1 | uri | The namespace for the identifier value Fixed Value: http://fhir.nl/fhir/NamingSystem/big
value |  | 0..1 | string | The value that is unique
period |  | 0..1 | Period | Time period when id is/was valid for use
assigner |  | 0..1 | Reference(Organization) | Organization that issued id (may be just text)
identifier:uzi | Σ | 0..* | Identifier | An identifier for the person as this agent Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
use |  | 0..1 | code | usual | official | temp | secondary | old (If known)
type |  | 0..1 | CodeableConcept | Description of identifier
system |  | 1..1 | uri | The namespace for the identifier value Fixed Value: http://fhir.nl/fhir/NamingSystem/uzi-nr-pers
value |  | 0..1 | string | The value that is unique
period |  | 0..1 | Period | Time period when id is/was valid for use
assigner |  | 0..1 | Reference(Organization) | Organization that issued id (may be just text)
identifier:agb | Σ | 0..* | Identifier | An identifier for the person as this agent Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
use |  | 0..1 | code | usual | official | temp | secondary | old (If known)
type |  | 0..1 | CodeableConcept | Description of identifier
system |  | 1..1 | uri | The namespace for the identifier value Fixed Value: http://fhir.nl/fhir/NamingSystem/agb-z
value |  | 0..1 | string | The value that is unique
period |  | 0..1 | Period | Time period when id is/was valid for use
assigner |  | 0..1 | Reference(Organization) | Organization that issued id (may be just text)
identifier:AssignedId | Σ | 1..1 | Identifier | HealthProfessionalIdentificationNumber
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
type | Σ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
system | Σ | 1..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient
value | Σ | 1..1 | string | The value that is unique Example General: 123456
period | Σ | 0..1 | Period | Time period when id is/was valid for use
assigner | Σ | 1..1 | Reference(Organization) | Organization that issued id (may be just text)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
reference | Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL
type | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
identifier | Σ | 1..1 | Identifier | Logical reference, when literal reference is not known
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
type | Σ | 1..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
coding | Σ | 1..1 | Coding | Code defined by a terminology system
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
system | Σ | 0..1 | uri | Identity of the terminology system Required Pattern: http://terminology.hl7.org/CodeSystem/provenance-participant-type
version | Σ | 0..1 | string | Version of the system - if relevant
code | Σ | 0..1 | code | Symbol in syntax defined by the system Required Pattern: author
display | Σ | 0..1 | string | Representation defined by the system
userSelected | Σ | 0..1 | boolean | If this coding was chosen directly by the user
text | Σ | 0..1 | string | Plain text representation of the concept
system | Σ | 0..1 | uri | The namespace for the identifier value Required Pattern: http://fhir.nl/fhir/NamingSystem/ura
value | Σ | 1..1 | string | The value that is unique Example General: 123456
period | Σ | 0..1 | Period | Time period when id is/was valid for use
assigner | Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text)
display | Σ | 0..1 | string | Text alternative for the resource
active | Σ | 0..1 | boolean | Whether this practitioner's record is in active use
Slices for name | Σ | 1..* | HumanName | NameInformation Slice: Unordered, Open by value:use
name:nameInformation | Σ C N | 0..2 | NlcoreNameInformation | NameInformation Constraints: zib-NameInformation-1, zib-NameInformation-2, nl-core-NameInformation-01
name:nameInformation-GivenName | Σ N | 0..* | NlcoreNameInformationGivenName | Name of a human - parts and usage
Slices for telecom | Σ | 0..* | ContactPoint | ContactInformation Slice: Unordered, Open by profile:$this
telecom:telephoneNumbers | Σ C N | 0..* | NlcoreContactInformationTelephoneNumbers | TelephoneNumbers Constraints: cpt-2
telecom:emailAddresses | Σ C N | 0..* | NlcoreContactInformationEmailAddresses | EmailAddresses Constraints: cpt-2
address | Σ | 0..* | NlcoreAddressInformation | AddressInformation
gender | Σ | 0..1 | code | Gender Binding: AdministrativeGender (required): Use ConceptMap GeslachtCodelijst-to-AdministrativeGender to translate terminology from the functional model to profile terminology in ValueSet AdministrativeGender. This ConceptMap is based on GeslachtCodelijst as defined in the zib Patient to avoid duplication of ConceptMaps. The GeslachtCodelijst of Patient and HealthProfessional are identical in terms of codes.
id |  | 0..1 | string | xml:id (or equivalent in JSON)
Slices for extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
extension:genderCodelist | N | 0..* | (Complex) | Optional Extensions Element URL: http://nictiz.nl/fhir/StructureDefinition/ext-CodeSpecification
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://nictiz.nl/fhir/StructureDefinition/ext-CodeSpecification"
value[x] |  | 0..1 | CodeableConcept | Value of extension Binding: GeslachtCodelijst (required)
value |  | 0..1 | string | Primitive value for code
birthDate | Σ | 0..1 | date | The date on which the practitioner was born
photo |  | 0..* | Attachment | Image of the person
qualification |  | 0..* | BackboneElement | Certification, licenses, or training pertaining to the provision of care
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
identifier |  | 0..* | Identifier | An identifier for this qualification for the practitioner
code |  | 1..1 | CodeableConcept | Coded representation of the qualification Binding: v2 table 0360, Version 2.7 (example): Specific qualification the practitioner has to provide a service.
period |  | 0..1 | Period | Period during which the qualification is valid
issuer |  | 0..1 | Reference(Organization) | Organization that regulates and issues the qualification
communication |  | 0..* | CodeableConcept | A language the practitioner can use in patient communication Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Practitioner.language | Base | preferred | Common Languages | 📦4.0.1 | FHIR Std.
Practitioner.identifier:AssignedId.​use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std.
Practitioner.identifier:AssignedId.​type | Base | extensible | IdentifierType | 📍4.0.1 | FHIR Std.
Practitioner.identifier:AssignedId.​assigner.type | Base | extensible | ResourceType | 📍4.0.1 | FHIR Std.
Practitioner.identifier:AssignedId.​assigner.identifier.​use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std.
Practitioner.identifier:AssignedId.​assigner.identifier.​type | Base | extensible | IdentifierType | 📍4.0.1 | FHIR Std.
Practitioner.gender | Base | required | AdministrativeGender | 📍4.0.1 | FHIR Std.
Practitioner.gender.​extension:genderCodelist.​value[x] | Base | required | GeslachtCodelijst | 📦2020-09-01T00:00:00 | FHIR implementation of zibs 2020 v0.12
Practitioner.qualification.​code | Base | example | v2 table 0360, Version 2.7 | 📦0360 | FHIR Std.
Practitioner.communication | Base | preferred | Common Languages | 📦4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
cpt-2 | error | Practitioner.telecom:telephoneNumbers, Practitioner.telecom:emailAddresses | A system is required if a value is provided. | `value.empty() or system.exists()`
dom-2 | error | Practitioner | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Practitioner | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | Practitioner | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | Practitioner | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Practitioner | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`
nl-core-NameInformation-01 | warning | Practitioner.name:nameInformation | 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()`
zib-NameInformation-1 | error | Practitioner.name:nameInformation | 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 | error | Practitioner.name:nameInformation | 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()`

This structure is derived from NlcoreHealthProfessionalPractitioner

Summary

Mandatory: 10 elements
Prohibited: 2 elements

Other representations of profile: CSV, Excel, Schematron