description: Profile for representing basic data about a practitioner that has an agreement to work in an organization. package_name: se.electronichealth.fhir.nppr.r5 derivation: constraint name: NPPRPractitionerRole type: PractitionerRole elements: extension: index: 0 slicing: rules: open ordered: false discriminator: - {path: url, type: value} min: 1 slices: title: match: {url: null} schema: type: Extension mustSupport: true url: http://hl7.org/fhir/StructureDefinition/practitioner-job-title index: 1 elements: url: {mustSupport: true, index: 2} value: mustSupport: true choices: [] index: 4 identifier: mustSupport: true index: 5 elements: system: {mustSupport: true, index: 6} value: {mustSupport: true, index: 7} required: [value, system] slicing: rules: open ordered: false description: Slice identifier based on the system value discriminator: - {path: system, type: value} min: null max: 1 slices: hsaid: match: {system: 'urn:oid:1.2.752.29.4.19'} schema: mustSupport: true index: 8 elements: system: pattern: {type: Uri, value: 'urn:oid:1.2.752.29.4.19'} index: 9 practitioner: type: Reference mustSupport: true refers: ['http://electronichealth.se/fhir/NPPR/StructureDefinition/NPPRPractitioner'] index: 10 organization: {mustSupport: true, index: 11} code: mustSupport: true index: 12 elements: coding: mustSupport: true index: 13 elements: system: {mustSupport: true, index: 14} code: {mustSupport: true, index: 15} required: [system, code] text: {mustSupport: true, index: 16} healthcareService: type: Reference mustSupport: true refers: ['http://electronichealth.se/fhir/NPPR/StructureDefinition/NPPRCommission'] index: 17 contact: constraint: nppr-contact-address-or-telecom: {human: A contact detail must have an address OR telecom details, source: 'http://electronichealth.se/fhir/NPPR/StructureDefinition/NPPRPractitionerRole', severity: error, expression: address.exists() or telecom.exists()} mustSupport: true index: 18 elements: telecom: constraint: nppr-telecom-phone-1: {human: 'If telecom.system = #phone, value should follow format +46123456789', source: 'http://electronichealth.se/fhir/NPPR/StructureDefinition/NPPRPractitionerRole', severity: warning, expression: 'value.matches(''^\\+[1-9][0-9]+$'') or system != ''phone'''} nppr-telecom-url-1: {human: 'If telecom.system = #url, value should follow valid format. Example: https://example.com', source: 'http://electronichealth.se/fhir/NPPR/StructureDefinition/NPPRPractitionerRole', severity: warning, expression: 'value.matches(''(https?|ftp)://(-\\.)?([^\\s/?\\.#-]+\\.?)+(/[^\\s]*)?$'') or system != ''url'''} nppr-telecom-email-1: {human: 'If telecom.system = #email, value should follow valid format Example: test@test.com', source: 'http://electronichealth.se/fhir/NPPR/StructureDefinition/NPPRPractitionerRole', severity: warning, expression: 'value.matches(''^[\\w.-]{1,64}@(?!.{254})[\\w.-]+\\.[A-Za-z]{2,4}$'') or system != ''email'''} mustSupport: true index: 19 elements: system: binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/contact-point-system'} mustSupport: true index: 20 value: {mustSupport: true, index: 21} period: mustSupport: true index: 22 elements: start: {mustSupport: true, index: 23} end: {mustSupport: true, index: 24} required: [start] required: [value, period, system] address: {type: Address, mustSupport: true, index: 25} package_version: 0.1.0-alpha extensions: title: url: http://hl7.org/fhir/StructureDefinition/practitioner-job-title type: Extension mustSupport: true index: 1 elements: url: {mustSupport: true, index: 2} value: mustSupport: true choices: [] index: 4 class: profile kind: resource url: http://electronichealth.se/fhir/NPPR/StructureDefinition/NPPRPractitionerRole base: http://hl7.org/fhir/StructureDefinition/PractitionerRole version: '0.1' required: [practitioner, extension, organization]