Specialty Medication Enrollment
2.0.0-ballot - STU 2 Ballot US

This page is part of the Specialty Medication Enrollment (v2.0.0-ballot: STU2 Ballot 1) based on FHIR R4. . For a full list of available versions, see the Directory of published versions

Resource Profile: Specialty Rx Consent Requested

Official URL: http://hl7.org/fhir/us/specialty-rx/StructureDefinition/specialty-rx-consent-requested Version: 2.0.0-ballot
Active as of 2021-12-08 Computable Name: SpecialtyRxConsentRequested

This profile constrains a Consent resource to convey a request for consents and authorizations associated with fulfillment of a specialty medication or other product. This Consent includes an attachment containing the enrollment consent form applicable to the prescribed product

Usage:

Formal Views of Profile Content

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

This structure is derived from Consent

Summary

Mandatory: 3 elements
Must-Support: 6 elements
Fixed Value: 3 elements

Structures

This structure refers to these other structures:

This structure is derived from Consent

This structure is derived from Consent

Summary

Mandatory: 3 elements
Must-Support: 6 elements
Fixed Value: 3 elements

Structures

This structure refers to these other structures:

Differential View

This structure is derived from Consent

Snapshot View

 

Other representations of profile: CSV, Excel, Schematron

Terminology Bindings

PathConformanceValueSet / Code
Consent.languagepreferredCommonLanguages
Max Binding: AllLanguages
Consent.statusrequiredFixed Value: proposed
Consent.scopeextensibleConsentScopeCodes
Consent.categoryextensibleConsentCategoryCodes
Consent.source[x]:sourceAttachment.contentTyperequiredFixed Value: application/pdf
Consent.source[x]:sourceAttachment.languagepreferredCommonLanguages
Max Binding: AllLanguages
Consent.policyRuleextensibleFixed Value: OPTIN("opt-in")
Consent.provision.typerequiredConsentProvisionType
Consent.provision.actor.roleextensibleSecurityRoleType
Consent.provision.actionexampleConsentActionCodes
Consent.provision.securityLabelextensibleAll Security Labels
Consent.provision.purposeextensiblePurposeOfUse
Consent.provision.classextensibleConsentContentClass
Consent.provision.codeexampleConsentContentCodes
Consent.provision.data.meaningrequiredConsentDataMeaning

Constraints

IdGradePathDetailsRequirements
dom-2errorConsentIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorConsentIf 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-4errorConsentIf 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-5errorConsentIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6Best PracticeConsentA resource should have narrative for robust management
: text.`div`.exists()
ppc-1errorConsentEither a Policy or PolicyRule
: policy.exists() or policyRule.exists()
ppc-2errorConsentIF Scope=privacy, there must be a patient
: patient.exists() or scope.coding.where(system='something' and code='patient-privacy').exists().not()
ppc-3errorConsentIF Scope=research, there must be a patient
: patient.exists() or scope.coding.where(system='something' and code='research').exists().not()
ppc-4errorConsentIF Scope=adr, there must be a patient
: patient.exists() or scope.coding.where(system='something' and code='adr').exists().not()
ppc-5errorConsentIF Scope=treatment, there must be a patient
: patient.exists() or scope.coding.where(system='something' and code='treatment').exists().not()
ele-1errorConsent.metaAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.implicitRulesAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.languageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorConsent.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorConsent.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorConsent.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorConsent.identifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.statusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.scopeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.categoryAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.patientAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.dateTimeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.performerAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.organizationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.source[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.source[x]:sourceAttachmentAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.source[x]:sourceAttachment.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorConsent.source[x]:sourceAttachment.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorConsent.source[x]:sourceAttachment.contentTypeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.source[x]:sourceAttachment.languageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.source[x]:sourceAttachment.dataAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.source[x]:sourceAttachment.urlAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.source[x]:sourceAttachment.sizeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.source[x]:sourceAttachment.hashAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.source[x]:sourceAttachment.titleAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.source[x]:sourceAttachment.creationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.policyAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.policy.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorConsent.policy.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorConsent.policy.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorConsent.policy.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorConsent.policy.authorityAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.policy.uriAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.policyRuleAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.verificationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.verification.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorConsent.verification.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorConsent.verification.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorConsent.verification.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorConsent.verification.verifiedAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.verification.verifiedWithAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.verification.verificationDateAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.provisionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.provision.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorConsent.provision.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorConsent.provision.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorConsent.provision.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorConsent.provision.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.provision.periodAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.provision.actorAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.provision.actor.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorConsent.provision.actor.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorConsent.provision.actor.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorConsent.provision.actor.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorConsent.provision.actor.roleAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.provision.actor.referenceAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.provision.actionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.provision.securityLabelAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.provision.purposeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.provision.classAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.provision.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.provision.dataPeriodAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.provision.dataAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.provision.data.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorConsent.provision.data.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorConsent.provision.data.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorConsent.provision.data.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorConsent.provision.data.meaningAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.provision.data.referenceAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorConsent.provision.provisionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())