openIMIS FHIR R4 Implementation Guide
1.0.0 - ci-build

openIMIS FHIR R4 Implementation Guide - Local Development build (v1.0.0). See the Directory of published versions

Resource Profile: openIMIS Policy Holder Organization

Official URL: https://openimis.github.io/openimis_fhir_r4_ig/StructureDefinition/openimis-policy-holder-organization Version: 1.0.0
Active as of 2022-05-31 Responsible: openIMIS Initiative Computable Name: OpenIMISPolicyHolderOrganization

Defines an Organization for openIMIS which maps to a Policy Holder under Formal Sector scheme.

Usage:

  • Refer to this Resource Profile:
  • Examples for this Resource Profile: My Trade

Formal Views of Profile Content

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

This structure is derived from Organization

Summary

Mandatory: 12 elements (8 nested mandatory elements)
Must-Support: 8 elements
Prohibited: 14 elements

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element Organization.identifier is sliced based on the value of value:type.coding.code (Closed)
  • The element Organization.telecom is sliced based on the value of value:system (Closed)

 

Other representations of profile: CSV, Excel, Schematron

Terminology Bindings

PathConformanceValueSet / Code
Organization.languagepreferredCommonLanguages
Max Binding: AllLanguages
Organization.identifier.userequiredIdentifierUse
Organization.identifier.typeextensibleIdentifier Type Codes
Organization.identifier.type.coding.coderequiredOpenIMISIdentifierVS
Organization.identifier:Code.userequiredIdentifierUse
Organization.identifier:Code.typeextensibleIdentifier Type Codes
Organization.identifier:UUID.userequiredIdentifierUse
Organization.identifier:UUID.typeextensibleIdentifier Type Codes
Organization.typeexampleOrganizationType
Organization.telecom.systemrequiredContactPointSystem
Organization.telecom.userequiredContactPointUse
Organization.telecom:email.systemrequiredPattern: email
Organization.telecom:email.userequiredContactPointUse
Organization.telecom:phone.systemrequiredPattern: phone
Organization.telecom:phone.userequiredContactPointUse
Organization.telecom:fax.systemrequiredPattern: fax
Organization.telecom:fax.userequiredContactPointUse
Organization.address.userequiredAddressUse
Organization.address.typerequiredPattern: physical

Constraints

IdGradePathDetailsRequirements
dom-2errorOrganizationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorOrganizationIf 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-4errorOrganizationIf 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-5errorOrganizationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6Best PracticeOrganizationA resource should have narrative for robust management
: text.`div`.exists()
org-1errorOrganizationThe organization SHALL at least have a name or an identifier, and possibly more than one
: (identifier.count() + name.count()) > 0
ele-1errorOrganization.metaAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.implicitRulesAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.languageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.extension:legalFormAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.extension:legalFormMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.extension:activityAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.extension:activityMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.identifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.identifier.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.identifier.useAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier.type.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.identifier.type.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.identifier.type.codingAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier.type.coding.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.identifier.type.coding.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.identifier.type.coding.systemAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier.type.coding.versionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier.type.coding.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier.type.coding.displayAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier.type.coding.userSelectedAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier.type.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier.systemAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier.valueAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier.periodAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier.assignerAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:CodeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:Code.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.identifier:Code.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.identifier:Code.useAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:Code.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:Code.type.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.identifier:Code.type.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.identifier:Code.type.codingAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:Code.type.coding.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.identifier:Code.type.coding.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.identifier:Code.type.coding.systemAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:Code.type.coding.versionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:Code.type.coding.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:Code.type.coding.displayAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:Code.type.coding.userSelectedAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:Code.type.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:Code.systemAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:Code.valueAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:Code.periodAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:Code.assignerAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:UUIDAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:UUID.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.identifier:UUID.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.identifier:UUID.useAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:UUID.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:UUID.type.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.identifier:UUID.type.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.identifier:UUID.type.codingAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:UUID.type.coding.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.identifier:UUID.type.coding.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.identifier:UUID.type.coding.systemAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:UUID.type.coding.versionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:UUID.type.coding.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:UUID.type.coding.displayAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:UUID.type.coding.userSelectedAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:UUID.type.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:UUID.systemAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:UUID.valueAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:UUID.periodAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.identifier:UUID.assignerAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.type.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.type.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.type.codingAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.type.coding.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.type.coding.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.type.coding.systemAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.type.coding.versionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.type.coding.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.type.coding.displayAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.type.coding.userSelectedAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.type.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.nameAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.telecomAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
org-3errorOrganization.telecomThe telecom of an organization can never be of use 'home'
: where(use = 'home').empty()
ele-1errorOrganization.telecom.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.telecom.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.telecom.systemAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.telecom.valueAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.telecom.useAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.telecom.rankAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.telecom.periodAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.telecom:emailAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
org-3errorOrganization.telecom:emailThe telecom of an organization can never be of use 'home'
: where(use = 'home').empty()
ele-1errorOrganization.telecom:email.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.telecom:email.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.telecom:email.systemAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.telecom:email.valueAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.telecom:email.useAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.telecom:email.rankAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.telecom:email.periodAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.telecom:phoneAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
org-3errorOrganization.telecom:phoneThe telecom of an organization can never be of use 'home'
: where(use = 'home').empty()
ele-1errorOrganization.telecom:phone.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.telecom:phone.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.telecom:phone.systemAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.telecom:phone.valueAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.telecom:phone.useAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.telecom:phone.rankAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.telecom:phone.periodAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.telecom:faxAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
org-3errorOrganization.telecom:faxThe telecom of an organization can never be of use 'home'
: where(use = 'home').empty()
ele-1errorOrganization.telecom:fax.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.telecom:fax.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.telecom:fax.systemAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.telecom:fax.valueAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.telecom:fax.useAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.telecom:fax.rankAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.telecom:fax.periodAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.addressAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
org-2errorOrganization.addressAn address of an organization can never be of use 'home'
: where(use = 'home').empty()
ele-1errorOrganization.address.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.address.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.address.extension:municipalityAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.address.extension:municipalityMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.address.extension:locationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.address.extension:locationMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.address.useAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.address.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.address.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.address.lineAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.address.cityAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.address.districtAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.address.stateAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.address.periodAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.contactAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.contact.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.contact.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.contact.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.contact.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.contact.nameAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.contact.name.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorOrganization.contact.name.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorOrganization.contact.name.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorOrganization.endpointAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())