description: Swiss EPR Policy Set as a Consent package_name: rs/ch.fhir.ig.ch derivation: constraint name: PpqmConsent type: Consent elements: patient: index: 23 elements: identifier: type: Identifier index: 24 elements: use: {index: 25} type: {index: 26} system: {index: 27} value: {index: 28} period: {index: 29} assigner: {index: 30} display: {index: 31} required: [identifier] category: short: Fixed category value pattern: type: CodeableConcept value: coding: - {code: INFA, system: 'http://terminology.hl7.org/CodeSystem/v3-ActCode'} type: CodeableConcept index: 21 elements: coding: {index: 22} required: [coding] provision: index: 45 elements: provision: {index: 75} purpose: binding: {strength: required, valueSet: 'http://fhir.ch/ig/ch-term/ValueSet/EprPurposeOfUse'} index: 68 elements: system: pattern: {type: uri, value: 'urn:oid:2.16.756.5.30.1.127.3.10.5'} type: uri index: 69 code: {index: 70} required: [code, system] dataPeriod: {index: 73} type: {index: 46} class: {index: 71} code: {index: 72} action: {index: 66} period: elements: start: short: Start date of the policy set validity, yyyy-mm-dd constraint: ch-epr-ppqm-date-format: {human: 'Timestamp must have precision of days, i.e. not contain the time part', source: 'http://fhir.ch/ig/ch-epr-fhir/StructureDefinition/PpqmConsent', severity: error, expression: 'toString().matches(''^[0-9]{4}-[0-9]{2}-[0-9]{2}$'')'} index: 47 end: short: End date of the policy set validity, yyyy-mm-dd constraint: ch-epr-ppqm-date-format: {human: 'Timestamp must have precision of days, i.e. not contain the time part', source: 'http://fhir.ch/ig/ch-epr-fhir/StructureDefinition/PpqmConsent', severity: error, expression: 'toString().matches(''^[0-9]{4}-[0-9]{2}-[0-9]{2}$'')'} index: 48 required: [end] securityLabel: {index: 67} actor: index: 49 elements: role: binding: {strength: required, valueSet: 'http://fhir.ch/ig/ch-term/ValueSet/EprRole'} index: 50 elements: coding: elements: system: pattern: {type: uri, value: 'urn:oid:2.16.756.5.30.1.127.3.10.6'} type: uri index: 51 code: {short: EPR actor role code, index: 52} required: [code, system] reference: elements: identifier: short: This element is present only in policy sets which reference a particular healthcare professional, group of healthcare professionals, patient, or representative index: 53 elements: use: {index: 54} type: index: 55 elements: coding: binding: {strength: required, valueSet: 'http://fhir.ch/ig/ch-epr-fhir/ValueSet/PpqmActorIdentifierType'} index: 56 elements: system: {index: 57} version: {index: 58} code: {short: Actor identifier type code (name qualifier), index: 59} userSelected: {index: 60} required: [code, system] text: {index: 61} required: [coding] value: {short: 'ID of an healthcare professional, group of healthcare professionals, patient, or representative', index: 62} period: {index: 63} assigner: {index: 64} required: [type, value] display: {short: This element is present only in policy sets which reference indefinite sets of actors, index: 65} data: {index: 74} required: [actor] organization: {index: 34} verification: {index: 44} source: choices: [] index: 36 scope: short: Fixed scope value pattern: type: CodeableConcept value: coding: - {code: patient-privacy, system: 'http://terminology.hl7.org/CodeSystem/consentscope'} type: CodeableConcept index: 19 elements: coding: {index: 20} required: [coding] policy: {index: 37} dateTime: {index: 32} status: short: Fixed status value pattern: {type: code, value: active} type: code index: 18 policyRule: short: ID of the referenced basis policy set index: 38 elements: coding: index: 39 elements: system: {index: 40} version: {index: 41} code: {index: 42} userSelected: {index: 43} required: [code, system] required: [coding] identifier: array: true min: 2 index: 0 elements: value: {index: 1} slicing: rules: open ordered: false description: PpqmConsent Identifiers discriminator: - {path: type.coding, type: value} min: 2 slices: policySetId: match: type: coding: {code: policySetId, system: 'http://fhir.ch/ig/ch-epr-fhir/CodeSystem/PpqmConsentIdentifierType'} schema: short: UUID of the Policy Set _required: true index: 2 elements: use: {index: 3} type: index: 4 elements: coding: pattern: type: Coding value: {code: policySetId, system: 'http://fhir.ch/ig/ch-epr-fhir/CodeSystem/PpqmConsentIdentifierType'} type: Coding index: 5 required: [coding] system: {index: 6} value: short: UUID of the policy set in URN format constraint: ch-epr-ppqm-uuid-format: {human: The policy set ID must be a UUID in URN format, source: 'http://fhir.ch/ig/ch-epr-fhir/StructureDefinition/PpqmConsent', severity: error, expression: 'lower().matches(''^urn:uuid:[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$'')'} index: 7 period: {index: 8} assigner: {index: 9} required: [type, value] templateId: match: type: coding: {code: templateId, system: 'http://fhir.ch/ig/ch-epr-fhir/CodeSystem/PpqmConsentIdentifierType'} schema: short: Template ID of the policy set _required: true index: 10 elements: use: {index: 11} type: index: 12 elements: coding: pattern: type: Coding value: {code: templateId, system: 'http://fhir.ch/ig/ch-epr-fhir/CodeSystem/PpqmConsentIdentifierType'} type: Coding index: 13 required: [coding] system: {index: 14} value: short: Template ID of the policy set binding: {strength: required, valueSet: 'http://fhir.ch/ig/ch-epr-fhir/ValueSet/PpqmPolicySetTemplateId'} index: 15 period: {index: 16} assigner: {index: 17} required: [type, value] performer: {index: 33} package_version: epr-fhir-5.0.0-ballot class: profile kind: resource url: http://fhir.ch/ig/ch-epr-fhir/StructureDefinition/PpqmConsent base: http://hl7.org/fhir/StructureDefinition/Consent version: 5.0.0-ballot required: [patient, policyRule, provision]