nl-gf-organization
type: StructureDefinition
node role: treeRoot
id:
  v: nl-gf-organization
text:
  status:
    v: extensions
  div:
    v: Generated Narrative: StructureDefinition nl-gf-organization Name Flags Card. Type Description & Constraints<img src="[binary]" alt="doco" style="background-color: inherit"/> Organization <a style="padding-left: 3px; padding-right: 3px; border: 1px maroon solid; font-weight: bold; color: #301212; background-color: #fdf4f4;; padding-left: 3px; padding-right: 3px; border: 1px maroon solid; font-weight: bold; color: #301212; background-color: #fdf4f4;" href="http://hl7.org/fhir/R4/conformance-rules.html#constraints" title="This element has or is affected by constraints ( ura-identifier-or-partof )">C 0..* NlcoreHealthcareProviderOrganization HealthcareProvider Constraints: ura-identifier-or-partof #xD; implicitRules 0..0 A set of rules under which this content was created #xD; modifierExtension 0..0 Extension #xD; identifier 1..* Identifier HealthcareProviderIdentificationNumber #xD; Slices for identifier Content/Rules for all slices #xD; identifier:fhirUrl 1..1 Identifier HealthcareProviderIdentificationNumber Required Pattern: At least the following #xD; system 1..1 uri The namespace for the identifier value Fixed Value: http://fhir.nl/fhir/NamingSystem/url/fhir #xD; type 1..* CodeableConcept Kind of organization #xD; name 1..1 string OrganizationName #xD; <img src="[binary]" alt="doco" style="background-color: inherit"/> Documentation for this format
url:
  v: http://nuts-foundation.github.io/nl-generic-functions-ig/StructureDefinition/nl-gf-organization
  l: nl-gf-organization
version:
  v: 0.2.0
name:
  v: NlGfOrganization
title:
  v: NL Generic Functions Organization Profile
status:
  v: draft
date:
  v: 2025-11-14T17:01:59+00:00
publisher:
  v: Stichting Nuts
contact:
  name:
    v: Stichting Nuts
  telecom:
    system:
      v: url
    value:
      v: https://www.nuts.nl
description:
  v: The organizational hierarchy and details for healthcare organizations.
jurisdiction:
  coding:
    system:
      v: urn:iso:std:iso:3166
      l: 3166
    code:
      v: NL
    display:
      v: Netherlands
fhir version:
  v: 4.0.1
mapping:
  identity:
    v: zib-healthcareprovider-v3.4-2020EN
  uri:
    v: https://zibs.nl/wiki/HealthcareProvider-v3.4(2020EN)
    l: HealthcareProvider-v3.4(2020EN)
  name:
    v: zib HealthcareProvider-v3.4(2020EN)
kind:
  v: resource
abstract:
  v: false
type:
  v: Organization
  l: Organization
base definition:
  v: http://nictiz.nl/fhir/StructureDefinition/nl-core-HealthcareProvider-Organization
  l: nl-core-HealthcareProvider-Organization
derivation:
  v: constraint
snapshot:
  element:
    id:
      v: Organization
    path:
      v: Organization
    short:
      v: HealthcareProvider
    definition:
      v: 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.
    comment:
      v: 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.
    alias:
      v: Zorgaanbieder
    alias:
      v: nl-core-HealthcareProvider-Organization
    min:
      v: 0
    max:
      v: *
    base:
      path:
        v: Organization
      min:
        v: 0
      max:
        v: *
    constraint:
      key:
        v: dom-2
      severity:
        v: error
      human:
        v: If the resource is contained in another resource, it SHALL NOT contain nested Resources
      expression:
        v: contained.contained.empty()
      xpath:
        v: not(parent::f:contained and f:contained)
      source:
        v: http://hl7.org/fhir/StructureDefinition/DomainResource
        l: DomainResource
    constraint:
      key:
        v: dom-3
      severity:
        v: error
      human:
        v: 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
      expression:
        v: 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()
      xpath:
        v: not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))
      source:
        v: http://hl7.org/fhir/StructureDefinition/DomainResource
        l: DomainResource
    constraint:
      key:
        v: dom-4
      severity:
        v: error
      human:
        v: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
      expression:
        v: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
      xpath:
        v: not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))
      source:
        v: http://hl7.org/fhir/StructureDefinition/DomainResource
        l: DomainResource
    constraint:
      key:
        v: dom-5
      severity:
        v: error
      human:
        v: If a resource is contained in another resource, it SHALL NOT have a security label
      expression:
        v: contained.meta.security.empty()
      xpath:
        v: not(exists(f:contained/*/f:meta/f:security))
      source:
        v: http://hl7.org/fhir/StructureDefinition/DomainResource
        l: DomainResource
    constraint:
      extension:
        value: Boolean
      extension:
        value: Markdown
      key:
        v: dom-6
      severity:
        v: warning
      human:
        v: A resource should have narrative for robust management
      expression:
        v: text.`div`.exists()
      xpath:
        v: exists(f:text/h:div)
      source:
        v: http://hl7.org/fhir/StructureDefinition/DomainResource
        l: DomainResource
    constraint:
      key:
        v: org-1
      severity:
        v: error
      human:
        v: The organization SHALL at least have a name or an identifier, and possibly more than one
      expression:
        v: (identifier.count() + name.count()) > 0
      xpath:
        v: count(f:identifier | f:name) > 0
      source:
        v: http://nictiz.nl/fhir/StructureDefinition/nl-core-HealthcareProvider-Organization
        l: nl-core-HealthcareProvider-Organization
    constraint:
      key:
        v: ura-identifier-or-partof
      severity:
        v: error
      human:
        v: an Organization instance must either have an URA-identifier or must be 'partOf' some other instance that is an nl-gf-organization instance.
      expression:
        v: identifier.where(system='http://fhir.nl/fhir/NamingSystem/ura').exists() or partOf.exists()
      source:
        v: http://nuts-foundation.github.io/nl-generic-functions-ig/StructureDefinition/nl-gf-organization
        l: nl-gf-organization
    is modifier:
      v: false
    is summary:
      v: false
    mapping:
      identity:
        v: rim
      map:
        v: Entity. Role, or Act
    mapping:
      identity:
        v: v2

Boolean
v: true

Markdown
v: When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time.

v: (also see master files messages)

identity:
  v: rim
map:
  v: Organization(classCode=ORG, determinerCode=INST)

identity:
  v: servd
map:
  v: Organization

identity:
  v: zib-healthcareprovider-v3.4-2020EN
map:
  v: NL-CM:17.2.1
comment:
  v: HealthcareProvider

id:
  v: Organization.id
path:
  v: Organization.id
short:
  v: Logical id of this artifact
definition:
  v: The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
comment:
  v: The only time that a resource does not have an id is when it is being submitted to the server using a create operation.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Resource.id
  min:
    v: 0
  max:
    v: 1
type:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type
      l: structuredefinition-fhir-type
    value: Url
      v: id
      l: id
  code:
    v: http://hl7.org/fhirpath/System.String
    l: System.String
is modifier:
  v: false
is summary:
  v: true

id:
  v: Organization.meta
path:
  v: Organization.meta
short:
  v: Metadata about the resource
definition:
  v: 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.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Resource.meta
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: Meta
    l: Meta
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: false
is summary:
  v: true

id:
  v: Organization.implicitRules
path:
  v: Organization.implicitRules
short:
  v: A set of rules under which this content was created
definition:
  v: 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.
comment:
  v: 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.
min:
  v: 0
max:
  v: 0
base:
  path:
    v: Resource.implicitRules
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: uri
    l: uri
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: true
is modifier reason:
  v: 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
is summary:
  v: true

id:
  v: Organization.language
path:
  v: Organization.language
short:
  v: Language of the resource content
definition:
  v: The base language in which the resource is written.
comment:
  v: 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).
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Resource.language
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
    l: code
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: false
is summary:
  v: false
binding:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet
      l: elementdefinition-maxValueSet
    value: Canonical
      v: http://hl7.org/fhir/ValueSet/all-languages
      l: all-languages
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName
      l: elementdefinition-bindingName
    value: String
      v: Language
  strength:
    v: preferred
  description:
    v: A human language.
  value set:
    v: http://hl7.org/fhir/ValueSet/languages
    l: languages

id:
  v: Organization.text
path:
  v: Organization.text
short:
  v: Text summary of the resource, for human interpretation
definition:
  v: 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.
comment:
  v: 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.
alias:
  v: narrative
alias:
  v: html
alias:
  v: xhtml
alias:
  v: display
min:
  v: 0
max:
  v: 1
base:
  path:
    v: DomainResource.text
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: Narrative
    l: Narrative
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: Act.text?

id:
  v: Organization.contained
path:
  v: Organization.contained
short:
  v: Contained, inline Resources
definition:
  v: 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.
comment:
  v: 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.
alias:
  v: inline resources
alias:
  v: anonymous resources
alias:
  v: contained resources
min:
  v: 0
max:
  v: *
base:
  path:
    v: DomainResource.contained
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Resource
    l: Resource
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Organization.extension
path:
  v: Organization.extension
short:
  v: Additional content defined by implementations
definition:
  v: 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.
comment:
  v: 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.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: DomainResource.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Organization.modifierExtension
path:
  v: Organization.modifierExtension
short:
  v: Extension
definition:
  v: An Extension
min:
  v: 0
max:
  v: 0
base:
  path:
    v: DomainResource.modifierExtension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: true
is modifier reason:
  v: Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them
is summary:
  v: false

id:
  v: Organization.identifier
path:
  v: Organization.identifier
slicing:
  discriminator:
    type:
      v: value
    path:
      v: $this
  rules:
    v: open
short:
  v: HealthcareProviderIdentificationNumber
definition:
  v: 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.
requirements:
  v: Organizations are known by a variety of ids. Some institutions maintain several, and most collect identifiers for exchange with other organizations concerning the organization.
alias:
  v: ZorgaanbiederIdentificatienummer
min:
  v: 1
max:
  v: *
base:
  path:
    v: Organization.identifier
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Identifier
    l: Identifier
condition:
  v: org-1
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: false
is summary:
  v: true
mapping:
  identity:
    v: w5
  map:
    v: FiveWs.identifier
mapping:
  identity:
    v: v2
  map:
    v: XON.10 / XON.3
mapping:
  identity:
    v: rim
  map:
    v: .scopes[Role](classCode=IDENT)
mapping:
  identity:
    v: servd
  map:
    v: ./Identifiers
mapping:
  identity:
    v: zib-healthcareprovider-v3.4-2020EN
  map:
    v: NL-CM:17.2.2
  comment:
    v: HealthcareProviderIdentificationNumber

id:
  v: Organization.identifier:ura
path:
  v: Organization.identifier
slice name:
  v: ura
short:
  v: Identifies this organization across multiple systems
definition:
  v: Identifier for the organization that is used to identify the organization across multiple disparate systems.
requirements:
  v: Organizations are known by a variety of ids. Some institutions maintain several, and most collect identifiers for exchange with other organizations concerning the organization.
min:
  v: 0
max:
  v: *
base:
  path:
    v: Organization.identifier
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Identifier
    l: Identifier
pattern: Identifier
  system:
    v: http://fhir.nl/fhir/NamingSystem/ura
    l: ura
condition:
  v: org-1
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: false
is summary:
  v: true
mapping:
  identity:
    v: w5
  map:
    v: FiveWs.identifier
mapping:
  identity:
    v: v2
  map:
    v: XON.10 / XON.3
mapping:
  identity:
    v: rim
  map:
    v: .scopes[Role](classCode=IDENT)
mapping:
  identity:
    v: servd
  map:
    v: ./Identifiers

id:
  v: Organization.identifier:agb
path:
  v: Organization.identifier
slice name:
  v: agb
short:
  v: Identifies this organization across multiple systems
definition:
  v: Identifier for the organization that is used to identify the organization across multiple disparate systems.
requirements:
  v: Organizations are known by a variety of ids. Some institutions maintain several, and most collect identifiers for exchange with other organizations concerning the organization.
min:
  v: 0
max:
  v: *
base:
  path:
    v: Organization.identifier
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Identifier
    l: Identifier
pattern: Identifier
  system:
    v: http://fhir.nl/fhir/NamingSystem/agb-z
    l: agb-z
condition:
  v: org-1
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: false
is summary:
  v: true
mapping:
  identity:
    v: w5
  map:
    v: FiveWs.identifier
mapping:
  identity:
    v: v2
  map:
    v: XON.10 / XON.3
mapping:
  identity:
    v: rim
  map:
    v: .scopes[Role](classCode=IDENT)
mapping:
  identity:
    v: servd
  map:
    v: ./Identifiers

id:
  v: Organization.identifier:fhirUrl
path:
  v: Organization.identifier
slice name:
  v: fhirUrl
short:
  v: HealthcareProviderIdentificationNumber
definition:
  v: 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.
requirements:
  v: Organizations are known by a variety of ids. Some institutions maintain several, and most collect identifiers for exchange with other organizations concerning the organization.
alias:
  v: ZorgaanbiederIdentificatienummer
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Organization.identifier
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Identifier
    l: Identifier
pattern: Identifier
  system:
    v: http://fhir.nl/fhir/NamingSystem/url/fhir
    l: fhir
condition:
  v: org-1
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: false
is summary:
  v: true
mapping:
  identity:
    v: w5
  map:
    v: FiveWs.identifier
mapping:
  identity:
    v: v2
  map:
    v: XON.10 / XON.3
mapping:
  identity:
    v: rim
  map:
    v: .scopes[Role](classCode=IDENT)
mapping:
  identity:
    v: servd
  map:
    v: ./Identifiers
mapping:
  identity:
    v: zib-healthcareprovider-v3.4-2020EN
  map:
    v: NL-CM:17.2.2
  comment:
    v: HealthcareProviderIdentificationNumber

id:
  v: Organization.active
path:
  v: Organization.active
short:
  v: Whether the organization's record is still in active use
definition:
  v: Whether the organization's record is still in active use.
comment:
  v: 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.
requirements:
  v: Need a flag to indicate a record is no longer to be used and should generally be hidden for the user in the UI.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Organization.active
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: boolean
    l: boolean
meaning when missing:
  v: This resource is generally assumed to be active if no value is provided for the active element
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: true
is modifier reason:
  v: 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
is summary:
  v: true
mapping:
  identity:
    v: w5
  map:
    v: FiveWs.status
mapping:
  identity:
    v: v2
  map:
    v: No equivalent in HL7 v2
mapping:
  identity:
    v: rim
  map:
    v: .status
mapping:
  identity:
    v: servd
  map:
    v: ./Status (however this concept in ServD more covers why the organization is active or not, could be delisted, deregistered, not operational yet) this could alternatively be derived from ./StartDate and ./EndDate and given a context date.

id:
  v: Organization.type
path:
  v: Organization.type
slicing:
  discriminator:
    type:
      v: value
    path:
      v: $this
  rules:
    v: open
short:
  v: Kind of organization
definition:
  v: The kind(s) of organization that this is.
comment:
  v: 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.
requirements:
  v: Need to be able to track the kind of organization that this is - different organization types have different uses.
min:
  v: 1
max:
  v: *
base:
  path:
    v: Organization.type
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: CodeableConcept
    l: CodeableConcept
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: false
is summary:
  v: true
binding:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName
      l: elementdefinition-bindingName
    value: String
      v: OrganizationType
  strength:
    v: example
  description:
    v: Used to categorize the organization.
  value set:
    v: http://hl7.org/fhir/ValueSet/organization-type
    l: organization-type
mapping:
  identity:
    v: w5
  map:
    v: FiveWs.class
mapping:
  identity:
    v: v2
  map:
    v: No equivalent in v2
mapping:
  identity:
    v: rim
  map:
    v: .code
mapping:
  identity:
    v: servd
  map:
    v: n/a

id:
  v: Organization.type:departmentSpecialty
path:
  v: Organization.type
slice name:
  v: departmentSpecialty
short:
  v: DepartmentSpecialty
definition:
  v: 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.
comment:
  v: 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.
requirements:
  v: Need to be able to track the kind of organization that this is - different organization types have different uses.
alias:
  v: AfdelingSpecialisme
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Organization.type
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: CodeableConcept
    l: CodeableConcept
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: false
is summary:
  v: true
binding:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName
      l: elementdefinition-bindingName
    value: String
      v: OrganizationType
  strength:
    v: required
  description:
    v: Used to categorize the organization.
  value set:
    v: http://decor.nictiz.nl/fhir/ValueSet/2.16.840.1.113883.2.4.3.11.60.40.2.17.2.4--20200901000000
    l: http://decor.nictiz.nl/fhir/ValueSet/2.16.840.1.113883.2.4.3.11.60.40.2.17.2.4--20200901000000
mapping:
  identity:
    v: w5
  map:
    v: FiveWs.class
mapping:
  identity:
    v: v2
  map:
    v: No equivalent in v2
mapping:
  identity:
    v: rim
  map:
    v: .code
mapping:
  identity:
    v: servd
  map:
    v: n/a
mapping:
  identity:
    v: zib-healthcareprovider-v3.4-2020EN
  map:
    v: NL-CM:17.2.7
  comment:
    v: DepartmentSpecialty

id:
  v: Organization.type:organizationType
path:
  v: Organization.type
slice name:
  v: organizationType
short:
  v: OrganizationType
definition:
  v: 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.
comment:
  v: 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.
requirements:
  v: Need to be able to track the kind of organization that this is - different organization types have different uses.
alias:
  v: OrganisatieType
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Organization.type
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: CodeableConcept
    l: CodeableConcept
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: false
is summary:
  v: true
binding:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName
      l: elementdefinition-bindingName
    value: String
      v: OrganizationType
  strength:
    v: required
  description:
    v: Used to categorize the organization.
  value set:
    v: http://decor.nictiz.nl/fhir/ValueSet/2.16.840.1.113883.2.4.3.11.60.40.2.17.2.3--20200901000000
    l: http://decor.nictiz.nl/fhir/ValueSet/2.16.840.1.113883.2.4.3.11.60.40.2.17.2.3--20200901000000
mapping:
  identity:
    v: w5
  map:
    v: FiveWs.class
mapping:
  identity:
    v: v2
  map:
    v: No equivalent in v2
mapping:
  identity:
    v: rim
  map:
    v: .code
mapping:
  identity:
    v: servd
  map:
    v: n/a
mapping:
  identity:
    v: zib-healthcareprovider-v3.4-2020EN
  map:
    v: NL-CM:17.2.4
  comment:
    v: OrganizationType

id:
  v: Organization.name
path:
  v: Organization.name
short:
  v: OrganizationName
definition:
  v: Name of the organization. If an identification number is given, the name must match the name that corresponds to the identification number.
comment:
  v: 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.
requirements:
  v: Need to use the name as the label of the organization.
alias:
  v: OrganisatieNaam
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Organization.name
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
condition:
  v: org-1
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: false
is summary:
  v: true
mapping:
  identity:
    v: v2
  map:
    v: XON.1
mapping:
  identity:
    v: rim
  map:
    v: .name
mapping:
  identity:
    v: servd
  map:
    v: .PreferredName/Name
mapping:
  identity:
    v: zib-healthcareprovider-v3.4-2020EN
  map:
    v: NL-CM:17.2.3
  comment:
    v: OrganizationName

id:
  v: Organization.alias
path:
  v: Organization.alias
short:
  v: A list of alternate names that the organization is known as, or was known as in the past
definition:
  v: A list of alternate names that the organization is known as, or was known as in the past.
comment:
  v: 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.
requirements:
  v: 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.
min:
  v: 0
max:
  v: *
base:
  path:
    v: Organization.alias
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: string
    l: string
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: .name

id:
  v: Organization.telecom
path:
  v: Organization.telecom
slicing:
  discriminator:
    type:
      v: profile
    path:
      v: $this
  rules:
    v: open
short:
  v: A contact detail for the organization
definition:
  v: A contact detail for the organization.
comment:
  v: 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.
requirements:
  v: Human contact for the organization.
min:
  v: 0
max:
  v: *
base:
  path:
    v: Organization.telecom
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: ContactPoint
    l: ContactPoint
condition:
  v: org-3
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: org-3
  severity:
    v: error
  human:
    v: The telecom of an organization can never be of use 'home'
  expression:
    v: where(use = 'home').empty()
  xpath:
    v: count(f:use[@value='home']) = 0
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: v2
  map:
    v: ORC-22?
mapping:
  identity:
    v: rim
  map:
    v: .telecom
mapping:
  identity:
    v: servd
  map:
    v: ./ContactPoints

id:
  v: Organization.telecom:telephoneNumbers
extension:
  url:
    v: http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status
    l: structuredefinition-standards-status
  value: Code
    v: normative
extension:
  url:
    v: http://hl7.org/fhir/StructureDefinition/structuredefinition-normative-version
    l: structuredefinition-normative-version
  value: Code
    v: 4.0.0
path:
  v: Organization.telecom
slice name:
  v: telephoneNumbers
short:
  v: TelephoneNumbers
definition:
  v: Details for all kinds of technology mediated contact points for a person or organization, including telephone, email, etc.
comment:
  v: 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.
requirements:
  v: Human contact for the organization.
alias:
  v: Telefoonnummers
alias:
  v: nl-core-ContactInformation-TelephoneNumbers
min:
  v: 0
max:
  v: *
base:
  path:
    v: Organization.telecom
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: ContactPoint
    l: ContactPoint
  profile:
    v: http://nictiz.nl/fhir/StructureDefinition/nl-core-ContactInformation-TelephoneNumbers
    l: nl-core-ContactInformation-TelephoneNumbers
condition:
  v: org-3
condition:
  v: ele-1
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: org-3
  severity:
    v: error
  human:
    v: The telecom of an organization can never be of use 'home'
  expression:
    v: where(use = 'home').empty()
  xpath:
    v: count(f:use[@value='home']) = 0
  source:
    v: http://nictiz.nl/fhir/StructureDefinition/nl-core-ContactInformation-TelephoneNumbers
    l: nl-core-ContactInformation-TelephoneNumbers
constraint:
  key:
    v: cpt-2
  severity:
    v: error
  human:
    v: A system is required if a value is provided.
  expression:
    v: value.empty() or system.exists()
  xpath:
    v: not(exists(f:value)) or exists(f:system)
  source:
    v: http://nictiz.nl/fhir/StructureDefinition/nl-core-ContactInformation-TelephoneNumbers
    l: nl-core-ContactInformation-TelephoneNumbers
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: v2
  map:
    v: ORC-22?
mapping:
  identity:
    v: rim
  map:
    v: .telecom
mapping:
  identity:
    v: servd
  map:
    v: ./ContactPoints
mapping:
  identity:
    v: rim
  map:
    v: n/a
mapping:
  identity:
    v: v2
  map:
    v: XTN
mapping:
  identity:
    v: rim
  map:
    v: TEL
mapping:
  identity:
    v: servd
  map:
    v: ContactPoint
mapping:
  identity:
    v: zib-contactinformation-v1.2-2020EN
  map:
    v: NL-CM:20.6.2
  comment:
    v: TelephoneNumbers

id:
  v: Organization.telecom:emailAddresses
extension:
  url:
    v: http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status
    l: structuredefinition-standards-status
  value: Code
    v: normative
extension:
  url:
    v: http://hl7.org/fhir/StructureDefinition/structuredefinition-normative-version
    l: structuredefinition-normative-version
  value: Code
    v: 4.0.0
path:
  v: Organization.telecom
slice name:
  v: emailAddresses
short:
  v: EmailAddresses
definition:
  v: Details for all kinds of technology mediated contact points for a person or organization, including telephone, email, etc.
comment:
  v: Implementation of the "EmailAddresses" concept of zib ContactInformation.
requirements:
  v: Human contact for the organization.
alias:
  v: EmailAdressen
alias:
  v: nl-core-ContactInformation-EmailAddresses
min:
  v: 0
max:
  v: *
base:
  path:
    v: Organization.telecom
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: ContactPoint
    l: ContactPoint
  profile:
    v: http://nictiz.nl/fhir/StructureDefinition/nl-core-ContactInformation-EmailAddresses
    l: nl-core-ContactInformation-EmailAddresses
condition:
  v: org-3
condition:
  v: ele-1
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: org-3
  severity:
    v: error
  human:
    v: The telecom of an organization can never be of use 'home'
  expression:
    v: where(use = 'home').empty()
  xpath:
    v: count(f:use[@value='home']) = 0
  source:
    v: http://nictiz.nl/fhir/StructureDefinition/nl-core-ContactInformation-EmailAddresses
    l: nl-core-ContactInformation-EmailAddresses
constraint:
  key:
    v: cpt-2
  severity:
    v: error
  human:
    v: A system is required if a value is provided.
  expression:
    v: value.empty() or system.exists()
  xpath:
    v: not(exists(f:value)) or exists(f:system)
  source:
    v: http://nictiz.nl/fhir/StructureDefinition/nl-core-ContactInformation-EmailAddresses
    l: nl-core-ContactInformation-EmailAddresses
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: v2
  map:
    v: ORC-22?
mapping:
  identity:
    v: rim
  map:
    v: .telecom
mapping:
  identity:
    v: servd
  map:
    v: ./ContactPoints
mapping:
  identity:
    v: rim
  map:
    v: n/a
mapping:
  identity:
    v: v2
  map:
    v: XTN
mapping:
  identity:
    v: rim
  map:
    v: TEL
mapping:
  identity:
    v: servd
  map:
    v: ContactPoint
mapping:
  identity:
    v: zib-contactinformation-v1.2-2020EN
  map:
    v: NL-CM:20.6.3
  comment:
    v: EmailAddresses

id:
  v: Organization.address
path:
  v: Organization.address
short:
  v: AddressInformation
definition:
  v: 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.
comment:
  v: 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)](https://zibs.nl/wiki/AddressInformation-v1.1(2020EN)). 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 (post…
requirements:
  v: May need to keep track of the organization's addresses for contacting, billing or reporting requirements.
alias:
  v: Adresgegevens
alias:
  v: nl-core-AddressInformation
min:
  v: 0
max:
  v: *
base:
  path:
    v: Organization.address
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Address
    l: Address
  profile:
    v: http://nictiz.nl/fhir/StructureDefinition/nl-core-AddressInformation
    l: nl-core-AddressInformation
condition:
  v: org-2
condition:
  v: ele-1
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: org-2
  severity:
    v: error
  human:
    v: An address of an organization can never be of use 'home'
  expression:
    v: where(use = 'home').empty()
  xpath:
    v: count(f:use[@value='home']) = 0
  source:
    v: http://nictiz.nl/fhir/StructureDefinition/nl-core-AddressInformation
    l: nl-core-AddressInformation
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: v2
  map:
    v: ORC-23?
mapping:
  identity:
    v: rim
  map:
    v: .address
mapping:
  identity:
    v: servd
  map:
    v: ./PrimaryAddress and ./OtherAddresses
mapping:
  identity:
    v: rim
  map:
    v: n/a
mapping:
  identity:
    v: v2
  map:
    v: XAD
mapping:
  identity:
    v: rim
  map:
    v: AD
mapping:
  identity:
    v: servd
  map:
    v: Address
mapping:
  identity:
    v: zib-addressinformation-v1.1-2020EN
  map:
    v: NL-CM:20.5.1
  comment:
    v: AddressInformation

id:
  v: Organization.partOf
path:
  v: Organization.partOf
short:
  v: The organization of which this organization forms a part
definition:
  v: The organization of which this organization forms a part.
requirements:
  v: Need to be able to track the hierarchy of organizations within an organization.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Organization.partOf
  min:
    v: 0
  max:
    v: 1
type:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/structuredefinition-hierarchy
      l: structuredefinition-hierarchy
    value: Boolean
      v: true
  code:
    v: Reference
    l: Reference
  target profile:
    v: http://hl7.org/fhir/StructureDefinition/Organization
    l: Organization
  target profile:
    v: http://nictiz.nl/fhir/StructureDefinition/nl-core-HealthcareProvider-Organization
    l: nl-core-HealthcareProvider-Organization
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: false
is summary:
  v: true
mapping:
  identity:
    v: v2
  map:
    v: No equivalent in HL7 v2
mapping:
  identity:
    v: rim
  map:
    v: .playedBy[classCode=Part].scoper
mapping:
  identity:
    v: servd
  map:
    v: n/a

id:
  v: Organization.contact
path:
  v: Organization.contact
short:
  v: Contact for the organization for a certain purpose
definition:
  v: Contact for the organization for a certain purpose.
comment:
  v: 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.
requirements:
  v: Need to keep track of assigned contact points within bigger organization.
min:
  v: 0
max:
  v: *
base:
  path:
    v: Organization.contact
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: BackboneElement
    l: BackboneElement
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: .contactParty

id:
  v: Organization.contact.id
path:
  v: Organization.contact.id
representation:
  v: xmlAttr
short:
  v: Unique id for inter-element referencing
definition:
  v: Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type
      l: structuredefinition-fhir-type
    value: Url
      v: string
      l: string
  code:
    v: http://hl7.org/fhirpath/System.String
    l: System.String
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Organization.contact.extension
path:
  v: Organization.contact.extension
short:
  v: Additional content defined by implementations
definition:
  v: 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.
comment:
  v: 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.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Organization.contact.modifierExtension
path:
  v: Organization.contact.modifierExtension
short:
  v: Extensions that cannot be ignored even if unrecognized
definition:
  v: 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).
comment:
  v: 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.
requirements:
  v: 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](http://hl7.org/fhir/R4/extensibility.html#modifierExtension).
alias:
  v: extensions
alias:
  v: user content
alias:
  v: modifiers
min:
  v: 0
max:
  v: *
base:
  path:
    v: BackboneElement.modifierExtension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: true
is modifier reason:
  v: Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
is summary:
  v: true
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Organization.contact.purpose
path:
  v: Organization.contact.purpose
short:
  v: The type of contact
definition:
  v: Indicates a purpose for which the contact can be reached.
requirements:
  v: Need to distinguish between multiple contact persons.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Organization.contact.purpose
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: CodeableConcept
    l: CodeableConcept
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: false
is summary:
  v: false
binding:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName
      l: elementdefinition-bindingName
    value: String
      v: ContactPartyType
  strength:
    v: extensible
  description:
    v: The purpose for which you would contact a contact party.
  value set:
    v: http://hl7.org/fhir/ValueSet/contactentity-type
    l: contactentity-type
mapping:
  identity:
    v: rim
  map:
    v: ./type

id:
  v: Organization.contact.name
path:
  v: Organization.contact.name
short:
  v: NameInformation
definition:
  v: This slice represents the person's official name information, including given names, last name and possibly the partner's last name.
comment:
  v: 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)](https://zibs.nl/wiki/NameInformation-v1.1(2020EN)). 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.
requirements:
  v: Need to be able to track the person by name.
alias:
  v: Naamgegevens
alias:
  v: nl-core-NameInformation
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Organization.contact.name
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: HumanName
    l: HumanName
  profile:
    v: http://nictiz.nl/fhir/StructureDefinition/nl-core-NameInformation
    l: nl-core-NameInformation
condition:
  v: ele-1
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: zib-NameInformation-1
  severity:
    v: error
  human:
    v: If a prefix for a family name is specified, the family name is expected as well
  expression:
    v: 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()
  source:
    v: http://nictiz.nl/fhir/StructureDefinition/zib-NameInformation
    l: zib-NameInformation
constraint:
  key:
    v: zib-NameInformation-2
  severity:
    v: error
  human:
    v: If the prefix for a partner family name is specified, the partner family name is expected as well
  expression:
    v: 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()
  source:
    v: http://nictiz.nl/fhir/StructureDefinition/zib-NameInformation
    l: zib-NameInformation
constraint:
  key:
    v: nl-core-NameInformation-01
  severity:
    v: warning
  human:
    v: 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.
  expression:
    v: (family.exists() or given.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier').where(value != 'IN').exists()) implies text.hasValue()
  source:
    v: http://nictiz.nl/fhir/StructureDefinition/nl-core-NameInformation
    l: nl-core-NameInformation
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: v2
  map:
    v: PID-5, PID-9
mapping:
  identity:
    v: rim
  map:
    v: ./name
mapping:
  identity:
    v: rim
  map:
    v: n/a
mapping:
  identity:
    v: v2
  map:
    v: XPN
mapping:
  identity:
    v: rim
  map:
    v: EN (actually, PN)
mapping:
  identity:
    v: servd
  map:
    v: ProviderName
mapping:
  identity:
    v: zib-nameinformation-v1.1-2020EN
  map:
    v: NL-CM:20.4.1
  comment:
    v: NameInformation

id:
  v: Organization.contact.telecom
path:
  v: Organization.contact.telecom
slicing:
  discriminator:
    type:
      v: profile
    path:
      v: $this
  rules:
    v: open
short:
  v: Contact details (telephone, email, etc.) for a contact
definition:
  v: A contact detail (e.g. a telephone number or an email address) by which the party may be contacted.
requirements:
  v: People have (primary) ways to contact them in some way such as phone, email.
min:
  v: 0
max:
  v: *
base:
  path:
    v: Organization.contact.telecom
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: ContactPoint
    l: ContactPoint
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: v2
  map:
    v: PID-13, PID-14
mapping:
  identity:
    v: rim
  map:
    v: ./telecom

id:
  v: Organization.contact.telecom:telephoneNumbers
extension:
  url:
    v: http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status
    l: structuredefinition-standards-status
  value: Code
    v: normative
extension:
  url:
    v: http://hl7.org/fhir/StructureDefinition/structuredefinition-normative-version
    l: structuredefinition-normative-version
  value: Code
    v: 4.0.0
path:
  v: Organization.contact.telecom
slice name:
  v: telephoneNumbers
short:
  v: TelephoneNumbers
definition:
  v: Details for all kinds of technology mediated contact points for a person or organization, including telephone, email, etc.
comment:
  v: 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.
requirements:
  v: People have (primary) ways to contact them in some way such as phone, email.
alias:
  v: Telefoonnummers
alias:
  v: nl-core-ContactInformation-TelephoneNumbers
min:
  v: 0
max:
  v: *
base:
  path:
    v: Organization.contact.telecom
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: ContactPoint
    l: ContactPoint
  profile:
    v: http://nictiz.nl/fhir/StructureDefinition/nl-core-ContactInformation-TelephoneNumbers
    l: nl-core-ContactInformation-TelephoneNumbers
condition:
  v: ele-1
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: cpt-2
  severity:
    v: error
  human:
    v: A system is required if a value is provided.
  expression:
    v: value.empty() or system.exists()
  xpath:
    v: not(exists(f:value)) or exists(f:system)
  source:
    v: http://nictiz.nl/fhir/StructureDefinition/nl-core-ContactInformation-TelephoneNumbers
    l: nl-core-ContactInformation-TelephoneNumbers
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: v2
  map:
    v: PID-13, PID-14
mapping:
  identity:
    v: rim
  map:
    v: ./telecom
mapping:
  identity:
    v: rim
  map:
    v: n/a
mapping:
  identity:
    v: v2
  map:
    v: XTN
mapping:
  identity:
    v: rim
  map:
    v: TEL
mapping:
  identity:
    v: servd
  map:
    v: ContactPoint
mapping:
  identity:
    v: zib-contactinformation-v1.2-2020EN
  map:
    v: NL-CM:20.6.2
  comment:
    v: TelephoneNumbers

id:
  v: Organization.contact.telecom:emailAddresses
extension:
  url:
    v: http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status
    l: structuredefinition-standards-status
  value: Code
    v: normative
extension:
  url:
    v: http://hl7.org/fhir/StructureDefinition/structuredefinition-normative-version
    l: structuredefinition-normative-version
  value: Code
    v: 4.0.0
path:
  v: Organization.contact.telecom
slice name:
  v: emailAddresses
short:
  v: EmailAddresses
definition:
  v: Details for all kinds of technology mediated contact points for a person or organization, including telephone, email, etc.
comment:
  v: Implementation of the "EmailAddresses" concept of zib ContactInformation.
requirements:
  v: People have (primary) ways to contact them in some way such as phone, email.
alias:
  v: EmailAdressen
alias:
  v: nl-core-ContactInformation-EmailAddresses
min:
  v: 0
max:
  v: *
base:
  path:
    v: Organization.contact.telecom
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: ContactPoint
    l: ContactPoint
  profile:
    v: http://nictiz.nl/fhir/StructureDefinition/nl-core-ContactInformation-EmailAddresses
    l: nl-core-ContactInformation-EmailAddresses
condition:
  v: ele-1
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: cpt-2
  severity:
    v: error
  human:
    v: A system is required if a value is provided.
  expression:
    v: value.empty() or system.exists()
  xpath:
    v: not(exists(f:value)) or exists(f:system)
  source:
    v: http://nictiz.nl/fhir/StructureDefinition/nl-core-ContactInformation-EmailAddresses
    l: nl-core-ContactInformation-EmailAddresses
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: v2
  map:
    v: PID-13, PID-14
mapping:
  identity:
    v: rim
  map:
    v: ./telecom
mapping:
  identity:
    v: rim
  map:
    v: n/a
mapping:
  identity:
    v: v2
  map:
    v: XTN
mapping:
  identity:
    v: rim
  map:
    v: TEL
mapping:
  identity:
    v: servd
  map:
    v: ContactPoint
mapping:
  identity:
    v: zib-contactinformation-v1.2-2020EN
  map:
    v: NL-CM:20.6.3
  comment:
    v: EmailAddresses

id:
  v: Organization.contact.address
path:
  v: Organization.contact.address
short:
  v: AddressInformation
definition:
  v: 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.
comment:
  v: 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)](https://zibs.nl/wiki/AddressInformation-v1.1(2020EN)). 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 (post…
requirements:
  v: May need to keep track of a contact party's address for contacting, billing or reporting requirements.
alias:
  v: Adresgegevens
alias:
  v: nl-core-AddressInformation
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Organization.contact.address
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: Address
    l: Address
  profile:
    v: http://nictiz.nl/fhir/StructureDefinition/nl-core-AddressInformation
    l: nl-core-AddressInformation
condition:
  v: ele-1
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: v2
  map:
    v: PID-11
mapping:
  identity:
    v: rim
  map:
    v: ./addr
mapping:
  identity:
    v: rim
  map:
    v: n/a
mapping:
  identity:
    v: v2
  map:
    v: XAD
mapping:
  identity:
    v: rim
  map:
    v: AD
mapping:
  identity:
    v: servd
  map:
    v: Address
mapping:
  identity:
    v: zib-addressinformation-v1.1-2020EN
  map:
    v: NL-CM:20.5.1
  comment:
    v: AddressInformation

id:
  v: Organization.endpoint
path:
  v: Organization.endpoint
short:
  v: Technical endpoints providing access to services operated for the organization
definition:
  v: Technical endpoints providing access to services operated for the organization.
requirements:
  v: 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.
min:
  v: 0
max:
  v: *
base:
  path:
    v: Organization.endpoint
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Reference
    l: Reference
  target profile:
    v: http://hl7.org/fhir/StructureDefinition/Endpoint
    l: Endpoint
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

element:
  id:
    v: Organization
  path:
    v: Organization
  constraint:
    key:
      v: ura-identifier-or-partof
    severity:
      v: error
    human:
      v: an Organization instance must either have an URA-identifier or must be 'partOf' some other instance that is an nl-gf-organization instance.
    expression:
      v: identifier.where(system='http://fhir.nl/fhir/NamingSystem/ura').exists() or partOf.exists()
    source:
      v: http://nuts-foundation.github.io/nl-generic-functions-ig/StructureDefinition/nl-gf-organization
      l: nl-gf-organization
element:
  id:
    v: Organization.implicitRules
  path:
    v: Organization.implicitRules
  max:
    v: 0
element:
  id:
    v: Organization.modifierExtension
  path:
    v: Organization.modifierExtension
  max:
    v: 0
element:
  id:
    v: Organization.identifier
  path:
    v: Organization.identifier
  min:
    v: 1
element:
  id:
    v: Organization.identifier:fhirUrl
  path:
    v: Organization.identifier
  slice name:
    v: fhirUrl
  min:
    v: 1
  max:
    v: 1
  pattern: Identifier
    system:
      v: http://fhir.nl/fhir/NamingSystem/url/fhir
      l: fhir
element:
  id:
    v: Organization.type
  path:
    v: Organization.type
  min:
    v: 1
element:
  id:
    v: Organization.name
  path:
    v: Organization.name
  min:
    v: 1