CH EMED EPR
1.0.0 - trial-use Switzerland flag

This page is part of the FHIR eMedication exchange formats for the implementation effort of CARA within its EPR community (v1.0.0: STU1) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions

Resource Profile: CH EMED EPR Practitioner

Official URL: http://fhir.ch/ig/ch-emed-epr/StructureDefinition/ch-emed-epr-practitioner Version: 1.0.0
Draft as of 2024-01-26 Computable Name: CHEMEDEPRPractitioner

Copyright/Legal: CC0-1.0

Definition of the practitioner for the eMedication context

Usage:

Formal Views of Profile Content

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

This structure is derived from CHEMEDPractitioner

NameFlagsCard.TypeDescription & Constraintsdoco
.. Practitioner CHEMEDPractitioner
... meta
.... extension D0..*Extension✕ This element is not supported
.... versionId D0..1id✕ This element is not supported
.... lastUpdated D0..1instant✕ This element is not supported
.... source D0..1uri✕ This element is not supported
.... security D0..*Coding✕ This element is not supported
.... tag D0..*Coding✕ This element is not supported
... implicitRules 0..0
... contained D0..*Resource✕ This element is not supported
... modifierExtension 0..0
... identifier 1..*IdentifierAn identifier for the person as this agent
.... extension D0..*Extension✕ This element is not supported
.... type D0..1CodeableConcept✕ This element is not supported
.... period D0..1Period✕ This element is not supported
.... assigner D0..1Reference(CH EMED EPR Organization)✕ This element will be removed in PML(C) documents
... identifier:GLN 1..1GLNIdentifierAn identifier intended for computation
.... value C1..1stringThe value that is unique
gln-length-error: GLN must be exactly 13 characters long
gln-modulus-10-error: GLN must pass the modulus 10 check - https://www.gs1.org/services/how-calculate-check-digit-manually
gln-startswith76-error: GLN must start with 76 for Swiss HCP
... active D0..1boolean✕ This element is not supported
... birthDate D0..1date✕ This element is not supported
... photo D0..*Attachment✕ This element is not supported
... qualification D0..*BackboneElement✕ This element is not supported
.... issuer D0..1Reference(Organization)✕ This element will be removed in PML(C) documents
... communication D0..*CodeableConcept✕ This element is not supported

doco Documentation for this format

Constraints

IdGradePath(s)DetailsRequirements
gln-length-errorerrorPractitioner.identifier:GLN.valueGLN must be exactly 13 characters long
: matches('^[0-9]{13}$')
gln-modulus-10-errorerrorPractitioner.identifier:GLN.valueGLN must pass the modulus 10 check - https://www.gs1.org/services/how-calculate-check-digit-manually
: (((10-((substring(0,1).toInteger()*1)+(substring(1,1).toInteger()*3)+(substring(2,1).toInteger()*1)+(substring(3,1).toInteger()*3)+(substring(4,1).toInteger()*1)+(substring(5,1).toInteger()*3)+(substring(6,1).toInteger()*1)+(substring(7,1).toInteger()*3)+(substring(8,1).toInteger()*1)+(substring(9,1).toInteger()*3)+(substring(10,1).toInteger()*1)+(substring(11,1).toInteger()*3))mod(10))mod(10))=substring(12,1).toInteger())
gln-startswith76-errorerrorPractitioner.identifier:GLN.valueGLN must start with 76 for Swiss HCP
: startsWith('76')
NameFlagsCard.TypeDescription & Constraintsdoco
.. Practitioner C0..*CHEMEDPractitionerCH EMED Practitioner
... contained 0..*Resource✕ This element is not supported
... extension 0..*Extension✕ This element is not supported
... Slices for identifier Σ1..*IdentifierAn identifier for the person as this agent
Slice: Unordered, Open by value:system
.... identifier:All Slices Content/Rules for all slices
..... extension 0..*Extension✕ This element is not supported
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... type Σ0..1CodeableConcept✕ This element is not supported
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

..... period Σ0..1Period✕ This element is not supported
..... assigner Σ0..1Reference(CH EMED EPR Organization)✕ This element will be removed in PML(C) documents
.... identifier:GLN S1..1GLNIdentifierAn identifier intended for computation
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... system Σ1..1uriThe namespace for the identifier value
Fixed Value: urn:oid:2.51.1.3
..... value ΣC1..1stringThe value that is unique
gln-length-error: GLN must be exactly 13 characters long
gln-modulus-10-error: GLN must pass the modulus 10 check - https://www.gs1.org/services/how-calculate-check-digit-manually
gln-startswith76-error: GLN must start with 76 for Swiss HCP
Example General: 123456
.... identifier:ZSR 0..*ZSRIdentifierZSR (Zahlstellenregister), RCC (Registre des codes-créanciers), RCC (Registro dei codici creditori)
... name SC1..*CHCoreHumanNameName of a human - parts and usage
... Slices for telecom Σ0..*ContactPointA contact detail for the practitioner (that apply to all roles)
Slice: Unordered, Open by value:system
.... telecom:All Slices Content/Rules for all slices
..... system ΣC1..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.

..... value Σ1..1stringThe actual contact point details
..... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

.... telecom:email C0..*CHCoreContactPointECH46EmailCH Core ContactPoint eCH-0046 Email
.... telecom:phone C0..*CHCoreContactPointECH46PhoneCH Core ContactPoint eCH-0046 Phone
.... telecom:internet C0..*CHCoreContactPointECH46InternetCH Core ContactPoint eCH-0046 Internet
... birthDate Σ0..1date✕ This element is not supported
... photo 0..*Attachment✕ This element is not supported
... qualification 0..*BackboneElement✕ This element is not supported
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code 1..1CodeableConceptCoded representation of the qualification
Binding: v2 table 0360, Version 2.7 (example): Specific qualification the practitioner has to provide a service.

.... issuer 0..1Reference(Organization)✕ This element will be removed in PML(C) documents
... communication 0..*CodeableConcept✕ This element is not supported
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding


doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Practitioner.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Practitioner.identifier.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
from the FHIR Standard
Practitioner.identifier:GLN.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Practitioner.telecom.systemrequiredContactPointSystem
http://hl7.org/fhir/ValueSet/contact-point-system|4.0.1
from the FHIR Standard
Practitioner.telecom.userequiredContactPointUse
http://hl7.org/fhir/ValueSet/contact-point-use|4.0.1
from the FHIR Standard
Practitioner.qualification.codeexamplev2.0360.2.7 (a valid code from http://terminology.hl7.org/CodeSystem/v2-0360|2.7)
http://terminology.hl7.org/ValueSet/v2-2.7-0360
from the FHIR Standard
Practitioner.communicationpreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
ch-core-hm-1errorPractitioner.nameif officalName with eCH-011 Extension is specified, it can only be put on a name where use attribute is official
: family.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name' and value='officialName').empty() or (family.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name' and value='officialName').exists() and use='official')
ch-core-hm-2errorPractitioner.nameif orginalName with eCH-011 Extension is specified, it can only be put on a name where use attribute is maiden
: family.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name' and value='originalName').empty() or ((family.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name' and value='originalName').exists() and use='maiden'))
ch-core-hm-3errorPractitioner.namech-ext-ech-11-name can only be put on a family name
: descendants().extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name').count()=family.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name').count()
ch-core-hm-4errorPractitioner.namech-ext-ech-11-firstname can only be put on a given name
: descendants().extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-firstname').count()=given.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-firstname').count()
ch-pract-1errorPractitionerIf a HumanName is provided, at least one HumanName must have a given and family name.
: name.where(family.exists() and given.exists()).count()>0 or name.empty()
ch-pract-2warningPractitionergender unknown is currently not used in Switzerland in eCH and the EPR
: gender.empty() or gender!='unknown'
cpt-2errorPractitioner.telecom:email, Practitioner.telecom:phone, Practitioner.telecom:internetA system is required if a value is provided.
: value.empty() or system.exists()
dom-2errorPractitionerIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPractitionerIf 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-4errorPractitionerIf 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-5errorPractitionerIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practicePractitionerA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
gln-lengthwarningPractitioner.identifier:GLN.valueGLN must be exactly 13 characters long
: matches('^[0-9]{13}$')
gln-length-errorerrorPractitioner.identifier:GLN.valueGLN must be exactly 13 characters long
: matches('^[0-9]{13}$')
gln-modulus-10warningPractitioner.identifier:GLN.valueGLN must pass the modulus 10 check - https://www.gs1.org/services/how-calculate-check-digit-manually
: (((10-((substring(0,1).toInteger()*1)+(substring(1,1).toInteger()*3)+(substring(2,1).toInteger()*1)+(substring(3,1).toInteger()*3)+(substring(4,1).toInteger()*1)+(substring(5,1).toInteger()*3)+(substring(6,1).toInteger()*1)+(substring(7,1).toInteger()*3)+(substring(8,1).toInteger()*1)+(substring(9,1).toInteger()*3)+(substring(10,1).toInteger()*1)+(substring(11,1).toInteger()*3))mod(10))mod(10))=substring(12,1).toInteger())
gln-modulus-10-errorerrorPractitioner.identifier:GLN.valueGLN must pass the modulus 10 check - https://www.gs1.org/services/how-calculate-check-digit-manually
: (((10-((substring(0,1).toInteger()*1)+(substring(1,1).toInteger()*3)+(substring(2,1).toInteger()*1)+(substring(3,1).toInteger()*3)+(substring(4,1).toInteger()*1)+(substring(5,1).toInteger()*3)+(substring(6,1).toInteger()*1)+(substring(7,1).toInteger()*3)+(substring(8,1).toInteger()*1)+(substring(9,1).toInteger()*3)+(substring(10,1).toInteger()*1)+(substring(11,1).toInteger()*3))mod(10))mod(10))=substring(12,1).toInteger())
gln-startswith76warningPractitioner.identifier:GLN.valueGLN must start with 76 for Swiss HCP
: startsWith('76')
gln-startswith76-errorerrorPractitioner.identifier:GLN.valueGLN must start with 76 for Swiss HCP
: startsWith('76')
NameFlagsCard.TypeDescription & Constraintsdoco
.. Practitioner C0..*CHEMEDPractitionerCH EMED Practitioner
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*Extension✕ This element is not supported
Slice: Unordered, Open by value:url
.... versionId Σ0..1id✕ This element is not supported
.... lastUpdated Σ0..1instant✕ This element is not supported
.... source Σ0..1uri✕ This element is not supported
.... profile Σ0..*canonical(StructureDefinition)Profiles this resource claims to conform to
.... security Σ0..*Coding✕ This element is not supported
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.


.... tag Σ0..*Coding✕ This element is not supported
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... contained 0..*Resource✕ This element is not supported
... extension 0..*Extension✕ This element is not supported
... Slices for identifier Σ1..*IdentifierAn identifier for the person as this agent
Slice: Unordered, Open by value:system
.... identifier:All Slices Content/Rules for all slices
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*Extension✕ This element is not supported
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... type Σ0..1CodeableConcept✕ This element is not supported
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

..... system Σ0..1uriThe namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
..... value Σ0..1stringThe value that is unique
Example General: 123456
..... period Σ0..1Period✕ This element is not supported
..... assigner Σ0..1Reference(CH EMED EPR Organization)✕ This element will be removed in PML(C) documents
.... identifier:GLN S1..1GLNIdentifierAn identifier intended for computation
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... type Σ0..1CodeableConceptDescription of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

..... system Σ1..1uriThe namespace for the identifier value
Fixed Value: urn:oid:2.51.1.3
..... value ΣC1..1stringThe value that is unique
gln-length-error: GLN must be exactly 13 characters long
gln-modulus-10-error: GLN must pass the modulus 10 check - https://www.gs1.org/services/how-calculate-check-digit-manually
gln-startswith76-error: GLN must start with 76 for Swiss HCP
Example General: 123456
..... period Σ0..1PeriodTime period when id is/was valid for use
..... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
.... identifier:ZSR 0..*ZSRIdentifierZSR (Zahlstellenregister), RCC (Registre des codes-créanciers), RCC (Registro dei codici creditori)
... active Σ0..1boolean✕ This element is not supported
... name SC1..*CHCoreHumanNameName of a human - parts and usage
... Slices for telecom Σ0..*ContactPointA contact detail for the practitioner (that apply to all roles)
Slice: Unordered, Open by value:system
.... telecom:All Slices Content/Rules for all slices
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... system ΣC1..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.

..... value Σ1..1stringThe actual contact point details
..... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

..... rank Σ0..1positiveIntSpecify preferred order of use (1 = highest)
..... period Σ0..1PeriodTime period when the contact point was/is in use
.... telecom:email C0..*CHCoreContactPointECH46EmailCH Core ContactPoint eCH-0046 Email
.... telecom:phone C0..*CHCoreContactPointECH46PhoneCH Core ContactPoint eCH-0046 Phone
.... telecom:internet C0..*CHCoreContactPointECH46InternetCH Core ContactPoint eCH-0046 Internet
... address C0..*CHCoreAddressAn address expressed using postal conventions (as opposed to GPS or other location definition formats)
... gender Σ0..1codemale | female | other
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.

... birthDate Σ0..1date✕ This element is not supported
... photo 0..*Attachment✕ This element is not supported
... qualification 0..*BackboneElement✕ This element is not supported
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... identifier 0..*IdentifierAn identifier for this qualification for the practitioner
.... code 1..1CodeableConceptCoded representation of the qualification
Binding: v2 table 0360, Version 2.7 (example): Specific qualification the practitioner has to provide a service.

.... period 0..1PeriodPeriod during which the qualification is valid
.... issuer 0..1Reference(Organization)✕ This element will be removed in PML(C) documents
... communication 0..*CodeableConcept✕ This element is not supported
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding


doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Practitioner.meta.securityextensibleAll Security Labels
http://hl7.org/fhir/ValueSet/security-labels
from the FHIR Standard
Practitioner.meta.tagexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Practitioner.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Practitioner.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Practitioner.identifier.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
from the FHIR Standard
Practitioner.identifier:GLN.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Practitioner.identifier:GLN.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
from the FHIR Standard
Practitioner.telecom.systemrequiredContactPointSystem
http://hl7.org/fhir/ValueSet/contact-point-system|4.0.1
from the FHIR Standard
Practitioner.telecom.userequiredContactPointUse
http://hl7.org/fhir/ValueSet/contact-point-use|4.0.1
from the FHIR Standard
Practitioner.genderrequiredAdministrativeGender
http://hl7.org/fhir/ValueSet/administrative-gender|4.0.1
from the FHIR Standard
Practitioner.qualification.codeexamplev2.0360.2.7 (a valid code from http://terminology.hl7.org/CodeSystem/v2-0360|2.7)
http://terminology.hl7.org/ValueSet/v2-2.7-0360
from the FHIR Standard
Practitioner.communicationpreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
ch-addr-2errorPractitioner.addressFor a Swiss address, a canton abbreviation from the value set 'eCH-0007 Canton Abbreviation' must be used.
: country.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/iso21090-SC-coding').empty() or (country.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/iso21090-SC-coding').value.code.startsWith('CH') = false) or (country.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/iso21090-SC-coding').value.code.startsWith('CH').exists() and (state.empty() or state.memberOf('http://fhir.ch/ig/ch-core/ValueSet/ech-7-cantonabbreviation')))
ch-core-hm-1errorPractitioner.nameif officalName with eCH-011 Extension is specified, it can only be put on a name where use attribute is official
: family.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name' and value='officialName').empty() or (family.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name' and value='officialName').exists() and use='official')
ch-core-hm-2errorPractitioner.nameif orginalName with eCH-011 Extension is specified, it can only be put on a name where use attribute is maiden
: family.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name' and value='originalName').empty() or ((family.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name' and value='originalName').exists() and use='maiden'))
ch-core-hm-3errorPractitioner.namech-ext-ech-11-name can only be put on a family name
: descendants().extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name').count()=family.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name').count()
ch-core-hm-4errorPractitioner.namech-ext-ech-11-firstname can only be put on a given name
: descendants().extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-firstname').count()=given.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-firstname').count()
ch-pract-1errorPractitionerIf a HumanName is provided, at least one HumanName must have a given and family name.
: name.where(family.exists() and given.exists()).count()>0 or name.empty()
ch-pract-2warningPractitionergender unknown is currently not used in Switzerland in eCH and the EPR
: gender.empty() or gender!='unknown'
cpt-2errorPractitioner.telecom:email, Practitioner.telecom:phone, Practitioner.telecom:internetA system is required if a value is provided.
: value.empty() or system.exists()
dom-2errorPractitionerIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPractitionerIf 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-4errorPractitionerIf 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-5errorPractitionerIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practicePractitionerA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
gln-lengthwarningPractitioner.identifier:GLN.valueGLN must be exactly 13 characters long
: matches('^[0-9]{13}$')
gln-length-errorerrorPractitioner.identifier:GLN.valueGLN must be exactly 13 characters long
: matches('^[0-9]{13}$')
gln-modulus-10warningPractitioner.identifier:GLN.valueGLN must pass the modulus 10 check - https://www.gs1.org/services/how-calculate-check-digit-manually
: (((10-((substring(0,1).toInteger()*1)+(substring(1,1).toInteger()*3)+(substring(2,1).toInteger()*1)+(substring(3,1).toInteger()*3)+(substring(4,1).toInteger()*1)+(substring(5,1).toInteger()*3)+(substring(6,1).toInteger()*1)+(substring(7,1).toInteger()*3)+(substring(8,1).toInteger()*1)+(substring(9,1).toInteger()*3)+(substring(10,1).toInteger()*1)+(substring(11,1).toInteger()*3))mod(10))mod(10))=substring(12,1).toInteger())
gln-modulus-10-errorerrorPractitioner.identifier:GLN.valueGLN must pass the modulus 10 check - https://www.gs1.org/services/how-calculate-check-digit-manually
: (((10-((substring(0,1).toInteger()*1)+(substring(1,1).toInteger()*3)+(substring(2,1).toInteger()*1)+(substring(3,1).toInteger()*3)+(substring(4,1).toInteger()*1)+(substring(5,1).toInteger()*3)+(substring(6,1).toInteger()*1)+(substring(7,1).toInteger()*3)+(substring(8,1).toInteger()*1)+(substring(9,1).toInteger()*3)+(substring(10,1).toInteger()*1)+(substring(11,1).toInteger()*3))mod(10))mod(10))=substring(12,1).toInteger())
gln-startswith76warningPractitioner.identifier:GLN.valueGLN must start with 76 for Swiss HCP
: startsWith('76')
gln-startswith76-errorerrorPractitioner.identifier:GLN.valueGLN must start with 76 for Swiss HCP
: startsWith('76')

This structure is derived from CHEMEDPractitioner

Summary

Prohibited: 2 elements

Structures

This structure refers to these other structures:

Differential View

This structure is derived from CHEMEDPractitioner

NameFlagsCard.TypeDescription & Constraintsdoco
.. Practitioner CHEMEDPractitioner
... meta
.... extension D0..*Extension✕ This element is not supported
.... versionId D0..1id✕ This element is not supported
.... lastUpdated D0..1instant✕ This element is not supported
.... source D0..1uri✕ This element is not supported
.... security D0..*Coding✕ This element is not supported
.... tag D0..*Coding✕ This element is not supported
... implicitRules 0..0
... contained D0..*Resource✕ This element is not supported
... modifierExtension 0..0
... identifier 1..*IdentifierAn identifier for the person as this agent
.... extension D0..*Extension✕ This element is not supported
.... type D0..1CodeableConcept✕ This element is not supported
.... period D0..1Period✕ This element is not supported
.... assigner D0..1Reference(CH EMED EPR Organization)✕ This element will be removed in PML(C) documents
... identifier:GLN 1..1GLNIdentifierAn identifier intended for computation
.... value C1..1stringThe value that is unique
gln-length-error: GLN must be exactly 13 characters long
gln-modulus-10-error: GLN must pass the modulus 10 check - https://www.gs1.org/services/how-calculate-check-digit-manually
gln-startswith76-error: GLN must start with 76 for Swiss HCP
... active D0..1boolean✕ This element is not supported
... birthDate D0..1date✕ This element is not supported
... photo D0..*Attachment✕ This element is not supported
... qualification D0..*BackboneElement✕ This element is not supported
.... issuer D0..1Reference(Organization)✕ This element will be removed in PML(C) documents
... communication D0..*CodeableConcept✕ This element is not supported

doco Documentation for this format

Constraints

IdGradePath(s)DetailsRequirements
gln-length-errorerrorPractitioner.identifier:GLN.valueGLN must be exactly 13 characters long
: matches('^[0-9]{13}$')
gln-modulus-10-errorerrorPractitioner.identifier:GLN.valueGLN must pass the modulus 10 check - https://www.gs1.org/services/how-calculate-check-digit-manually
: (((10-((substring(0,1).toInteger()*1)+(substring(1,1).toInteger()*3)+(substring(2,1).toInteger()*1)+(substring(3,1).toInteger()*3)+(substring(4,1).toInteger()*1)+(substring(5,1).toInteger()*3)+(substring(6,1).toInteger()*1)+(substring(7,1).toInteger()*3)+(substring(8,1).toInteger()*1)+(substring(9,1).toInteger()*3)+(substring(10,1).toInteger()*1)+(substring(11,1).toInteger()*3))mod(10))mod(10))=substring(12,1).toInteger())
gln-startswith76-errorerrorPractitioner.identifier:GLN.valueGLN must start with 76 for Swiss HCP
: startsWith('76')

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Practitioner C0..*CHEMEDPractitionerCH EMED Practitioner
... contained 0..*Resource✕ This element is not supported
... extension 0..*Extension✕ This element is not supported
... Slices for identifier Σ1..*IdentifierAn identifier for the person as this agent
Slice: Unordered, Open by value:system
.... identifier:All Slices Content/Rules for all slices
..... extension 0..*Extension✕ This element is not supported
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... type Σ0..1CodeableConcept✕ This element is not supported
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

..... period Σ0..1Period✕ This element is not supported
..... assigner Σ0..1Reference(CH EMED EPR Organization)✕ This element will be removed in PML(C) documents
.... identifier:GLN S1..1GLNIdentifierAn identifier intended for computation
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... system Σ1..1uriThe namespace for the identifier value
Fixed Value: urn:oid:2.51.1.3
..... value ΣC1..1stringThe value that is unique
gln-length-error: GLN must be exactly 13 characters long
gln-modulus-10-error: GLN must pass the modulus 10 check - https://www.gs1.org/services/how-calculate-check-digit-manually
gln-startswith76-error: GLN must start with 76 for Swiss HCP
Example General: 123456
.... identifier:ZSR 0..*ZSRIdentifierZSR (Zahlstellenregister), RCC (Registre des codes-créanciers), RCC (Registro dei codici creditori)
... name SC1..*CHCoreHumanNameName of a human - parts and usage
... Slices for telecom Σ0..*ContactPointA contact detail for the practitioner (that apply to all roles)
Slice: Unordered, Open by value:system
.... telecom:All Slices Content/Rules for all slices
..... system ΣC1..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.

..... value Σ1..1stringThe actual contact point details
..... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

.... telecom:email C0..*CHCoreContactPointECH46EmailCH Core ContactPoint eCH-0046 Email
.... telecom:phone C0..*CHCoreContactPointECH46PhoneCH Core ContactPoint eCH-0046 Phone
.... telecom:internet C0..*CHCoreContactPointECH46InternetCH Core ContactPoint eCH-0046 Internet
... birthDate Σ0..1date✕ This element is not supported
... photo 0..*Attachment✕ This element is not supported
... qualification 0..*BackboneElement✕ This element is not supported
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code 1..1CodeableConceptCoded representation of the qualification
Binding: v2 table 0360, Version 2.7 (example): Specific qualification the practitioner has to provide a service.

.... issuer 0..1Reference(Organization)✕ This element will be removed in PML(C) documents
... communication 0..*CodeableConcept✕ This element is not supported
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding


doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Practitioner.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Practitioner.identifier.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
from the FHIR Standard
Practitioner.identifier:GLN.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Practitioner.telecom.systemrequiredContactPointSystem
http://hl7.org/fhir/ValueSet/contact-point-system|4.0.1
from the FHIR Standard
Practitioner.telecom.userequiredContactPointUse
http://hl7.org/fhir/ValueSet/contact-point-use|4.0.1
from the FHIR Standard
Practitioner.qualification.codeexamplev2.0360.2.7 (a valid code from http://terminology.hl7.org/CodeSystem/v2-0360|2.7)
http://terminology.hl7.org/ValueSet/v2-2.7-0360
from the FHIR Standard
Practitioner.communicationpreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
ch-core-hm-1errorPractitioner.nameif officalName with eCH-011 Extension is specified, it can only be put on a name where use attribute is official
: family.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name' and value='officialName').empty() or (family.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name' and value='officialName').exists() and use='official')
ch-core-hm-2errorPractitioner.nameif orginalName with eCH-011 Extension is specified, it can only be put on a name where use attribute is maiden
: family.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name' and value='originalName').empty() or ((family.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name' and value='originalName').exists() and use='maiden'))
ch-core-hm-3errorPractitioner.namech-ext-ech-11-name can only be put on a family name
: descendants().extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name').count()=family.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name').count()
ch-core-hm-4errorPractitioner.namech-ext-ech-11-firstname can only be put on a given name
: descendants().extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-firstname').count()=given.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-firstname').count()
ch-pract-1errorPractitionerIf a HumanName is provided, at least one HumanName must have a given and family name.
: name.where(family.exists() and given.exists()).count()>0 or name.empty()
ch-pract-2warningPractitionergender unknown is currently not used in Switzerland in eCH and the EPR
: gender.empty() or gender!='unknown'
cpt-2errorPractitioner.telecom:email, Practitioner.telecom:phone, Practitioner.telecom:internetA system is required if a value is provided.
: value.empty() or system.exists()
dom-2errorPractitionerIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPractitionerIf 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-4errorPractitionerIf 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-5errorPractitionerIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practicePractitionerA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
gln-lengthwarningPractitioner.identifier:GLN.valueGLN must be exactly 13 characters long
: matches('^[0-9]{13}$')
gln-length-errorerrorPractitioner.identifier:GLN.valueGLN must be exactly 13 characters long
: matches('^[0-9]{13}$')
gln-modulus-10warningPractitioner.identifier:GLN.valueGLN must pass the modulus 10 check - https://www.gs1.org/services/how-calculate-check-digit-manually
: (((10-((substring(0,1).toInteger()*1)+(substring(1,1).toInteger()*3)+(substring(2,1).toInteger()*1)+(substring(3,1).toInteger()*3)+(substring(4,1).toInteger()*1)+(substring(5,1).toInteger()*3)+(substring(6,1).toInteger()*1)+(substring(7,1).toInteger()*3)+(substring(8,1).toInteger()*1)+(substring(9,1).toInteger()*3)+(substring(10,1).toInteger()*1)+(substring(11,1).toInteger()*3))mod(10))mod(10))=substring(12,1).toInteger())
gln-modulus-10-errorerrorPractitioner.identifier:GLN.valueGLN must pass the modulus 10 check - https://www.gs1.org/services/how-calculate-check-digit-manually
: (((10-((substring(0,1).toInteger()*1)+(substring(1,1).toInteger()*3)+(substring(2,1).toInteger()*1)+(substring(3,1).toInteger()*3)+(substring(4,1).toInteger()*1)+(substring(5,1).toInteger()*3)+(substring(6,1).toInteger()*1)+(substring(7,1).toInteger()*3)+(substring(8,1).toInteger()*1)+(substring(9,1).toInteger()*3)+(substring(10,1).toInteger()*1)+(substring(11,1).toInteger()*3))mod(10))mod(10))=substring(12,1).toInteger())
gln-startswith76warningPractitioner.identifier:GLN.valueGLN must start with 76 for Swiss HCP
: startsWith('76')
gln-startswith76-errorerrorPractitioner.identifier:GLN.valueGLN must start with 76 for Swiss HCP
: startsWith('76')

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Practitioner C0..*CHEMEDPractitionerCH EMED Practitioner
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*Extension✕ This element is not supported
Slice: Unordered, Open by value:url
.... versionId Σ0..1id✕ This element is not supported
.... lastUpdated Σ0..1instant✕ This element is not supported
.... source Σ0..1uri✕ This element is not supported
.... profile Σ0..*canonical(StructureDefinition)Profiles this resource claims to conform to
.... security Σ0..*Coding✕ This element is not supported
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.


.... tag Σ0..*Coding✕ This element is not supported
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... contained 0..*Resource✕ This element is not supported
... extension 0..*Extension✕ This element is not supported
... Slices for identifier Σ1..*IdentifierAn identifier for the person as this agent
Slice: Unordered, Open by value:system
.... identifier:All Slices Content/Rules for all slices
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*Extension✕ This element is not supported
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... type Σ0..1CodeableConcept✕ This element is not supported
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

..... system Σ0..1uriThe namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
..... value Σ0..1stringThe value that is unique
Example General: 123456
..... period Σ0..1Period✕ This element is not supported
..... assigner Σ0..1Reference(CH EMED EPR Organization)✕ This element will be removed in PML(C) documents
.... identifier:GLN S1..1GLNIdentifierAn identifier intended for computation
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... type Σ0..1CodeableConceptDescription of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

..... system Σ1..1uriThe namespace for the identifier value
Fixed Value: urn:oid:2.51.1.3
..... value ΣC1..1stringThe value that is unique
gln-length-error: GLN must be exactly 13 characters long
gln-modulus-10-error: GLN must pass the modulus 10 check - https://www.gs1.org/services/how-calculate-check-digit-manually
gln-startswith76-error: GLN must start with 76 for Swiss HCP
Example General: 123456
..... period Σ0..1PeriodTime period when id is/was valid for use
..... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
.... identifier:ZSR 0..*ZSRIdentifierZSR (Zahlstellenregister), RCC (Registre des codes-créanciers), RCC (Registro dei codici creditori)
... active Σ0..1boolean✕ This element is not supported
... name SC1..*CHCoreHumanNameName of a human - parts and usage
... Slices for telecom Σ0..*ContactPointA contact detail for the practitioner (that apply to all roles)
Slice: Unordered, Open by value:system
.... telecom:All Slices Content/Rules for all slices
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... system ΣC1..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.

..... value Σ1..1stringThe actual contact point details
..... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

..... rank Σ0..1positiveIntSpecify preferred order of use (1 = highest)
..... period Σ0..1PeriodTime period when the contact point was/is in use
.... telecom:email C0..*CHCoreContactPointECH46EmailCH Core ContactPoint eCH-0046 Email
.... telecom:phone C0..*CHCoreContactPointECH46PhoneCH Core ContactPoint eCH-0046 Phone
.... telecom:internet C0..*CHCoreContactPointECH46InternetCH Core ContactPoint eCH-0046 Internet
... address C0..*CHCoreAddressAn address expressed using postal conventions (as opposed to GPS or other location definition formats)
... gender Σ0..1codemale | female | other
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.

... birthDate Σ0..1date✕ This element is not supported
... photo 0..*Attachment✕ This element is not supported
... qualification 0..*BackboneElement✕ This element is not supported
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... identifier 0..*IdentifierAn identifier for this qualification for the practitioner
.... code 1..1CodeableConceptCoded representation of the qualification
Binding: v2 table 0360, Version 2.7 (example): Specific qualification the practitioner has to provide a service.

.... period 0..1PeriodPeriod during which the qualification is valid
.... issuer 0..1Reference(Organization)✕ This element will be removed in PML(C) documents
... communication 0..*CodeableConcept✕ This element is not supported
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding


doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Practitioner.meta.securityextensibleAll Security Labels
http://hl7.org/fhir/ValueSet/security-labels
from the FHIR Standard
Practitioner.meta.tagexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Practitioner.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Practitioner.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Practitioner.identifier.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
from the FHIR Standard
Practitioner.identifier:GLN.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Practitioner.identifier:GLN.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
from the FHIR Standard
Practitioner.telecom.systemrequiredContactPointSystem
http://hl7.org/fhir/ValueSet/contact-point-system|4.0.1
from the FHIR Standard
Practitioner.telecom.userequiredContactPointUse
http://hl7.org/fhir/ValueSet/contact-point-use|4.0.1
from the FHIR Standard
Practitioner.genderrequiredAdministrativeGender
http://hl7.org/fhir/ValueSet/administrative-gender|4.0.1
from the FHIR Standard
Practitioner.qualification.codeexamplev2.0360.2.7 (a valid code from http://terminology.hl7.org/CodeSystem/v2-0360|2.7)
http://terminology.hl7.org/ValueSet/v2-2.7-0360
from the FHIR Standard
Practitioner.communicationpreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
ch-addr-2errorPractitioner.addressFor a Swiss address, a canton abbreviation from the value set 'eCH-0007 Canton Abbreviation' must be used.
: country.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/iso21090-SC-coding').empty() or (country.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/iso21090-SC-coding').value.code.startsWith('CH') = false) or (country.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/iso21090-SC-coding').value.code.startsWith('CH').exists() and (state.empty() or state.memberOf('http://fhir.ch/ig/ch-core/ValueSet/ech-7-cantonabbreviation')))
ch-core-hm-1errorPractitioner.nameif officalName with eCH-011 Extension is specified, it can only be put on a name where use attribute is official
: family.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name' and value='officialName').empty() or (family.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name' and value='officialName').exists() and use='official')
ch-core-hm-2errorPractitioner.nameif orginalName with eCH-011 Extension is specified, it can only be put on a name where use attribute is maiden
: family.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name' and value='originalName').empty() or ((family.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name' and value='originalName').exists() and use='maiden'))
ch-core-hm-3errorPractitioner.namech-ext-ech-11-name can only be put on a family name
: descendants().extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name').count()=family.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-name').count()
ch-core-hm-4errorPractitioner.namech-ext-ech-11-firstname can only be put on a given name
: descendants().extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-firstname').count()=given.extension.where(url='http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-ech-11-firstname').count()
ch-pract-1errorPractitionerIf a HumanName is provided, at least one HumanName must have a given and family name.
: name.where(family.exists() and given.exists()).count()>0 or name.empty()
ch-pract-2warningPractitionergender unknown is currently not used in Switzerland in eCH and the EPR
: gender.empty() or gender!='unknown'
cpt-2errorPractitioner.telecom:email, Practitioner.telecom:phone, Practitioner.telecom:internetA system is required if a value is provided.
: value.empty() or system.exists()
dom-2errorPractitionerIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPractitionerIf 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-4errorPractitionerIf 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-5errorPractitionerIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practicePractitionerA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
gln-lengthwarningPractitioner.identifier:GLN.valueGLN must be exactly 13 characters long
: matches('^[0-9]{13}$')
gln-length-errorerrorPractitioner.identifier:GLN.valueGLN must be exactly 13 characters long
: matches('^[0-9]{13}$')
gln-modulus-10warningPractitioner.identifier:GLN.valueGLN must pass the modulus 10 check - https://www.gs1.org/services/how-calculate-check-digit-manually
: (((10-((substring(0,1).toInteger()*1)+(substring(1,1).toInteger()*3)+(substring(2,1).toInteger()*1)+(substring(3,1).toInteger()*3)+(substring(4,1).toInteger()*1)+(substring(5,1).toInteger()*3)+(substring(6,1).toInteger()*1)+(substring(7,1).toInteger()*3)+(substring(8,1).toInteger()*1)+(substring(9,1).toInteger()*3)+(substring(10,1).toInteger()*1)+(substring(11,1).toInteger()*3))mod(10))mod(10))=substring(12,1).toInteger())
gln-modulus-10-errorerrorPractitioner.identifier:GLN.valueGLN must pass the modulus 10 check - https://www.gs1.org/services/how-calculate-check-digit-manually
: (((10-((substring(0,1).toInteger()*1)+(substring(1,1).toInteger()*3)+(substring(2,1).toInteger()*1)+(substring(3,1).toInteger()*3)+(substring(4,1).toInteger()*1)+(substring(5,1).toInteger()*3)+(substring(6,1).toInteger()*1)+(substring(7,1).toInteger()*3)+(substring(8,1).toInteger()*1)+(substring(9,1).toInteger()*3)+(substring(10,1).toInteger()*1)+(substring(11,1).toInteger()*3))mod(10))mod(10))=substring(12,1).toInteger())
gln-startswith76warningPractitioner.identifier:GLN.valueGLN must start with 76 for Swiss HCP
: startsWith('76')
gln-startswith76-errorerrorPractitioner.identifier:GLN.valueGLN must start with 76 for Swiss HCP
: startsWith('76')

This structure is derived from CHEMEDPractitioner

Summary

Prohibited: 2 elements

Structures

This structure refers to these other structures:

 

Other representations of profile: CSV, Excel, Schematron