Da Vinci Clinical Data Exchange (CDex)
2.1.0 - STU 2.1 United States of America flag

Da Vinci Clinical Data Exchange (CDex), published by HL7 International / Payer/Provider Information Exchange Work Group. This guide is not an authorized publication; it is the continuous build for version 2.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/davinci-ecdx/ and changes regularly. See the Directory of published versions

Resource Profile: CDexTaskDataRequest - Detailed Descriptions

Page standards status: Trial-use Maturity Level: 2

Definitions for the cdex-task-data-request resource profile.

Guidance on how to interpret the contents of this table can be found here

0. Task
Definition

This Task profile is used by the CDex Data Consumer (e.g. Payer or other Provider) to solicit information from a Data Source (e.g., Provider) asynchronously where human involvement to find/aggregate/filter/approve requests may be required.


A task to be performed.

ShortA task to be performed
Control0..*
Is Modifierfalse
Summaryfalse
Invariantsdom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources (contained.contained.empty())
dom-3: If 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-4: If 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-5: If a resource is contained in another resource, it SHALL NOT have a security label (contained.meta.security.empty())
dom-6: A resource should have narrative for robust management (text.`div`.exists())
inv-1: Last modified date must be greater than or equal to authored-on date. (lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn)
cdex-7: If code = "data-request-code", must have one "code" input. (Task.code.coding.code.where($this='data-request-code').exists() implies Task.input.type.coding.code.where($this='data-code').exists())
cdex-12: If code = "data-request-query", must have one "query" input. (Task.code.coding.code.where($this='data-request-query').exists() implies Task.input.type.coding.code.where($this='data-query').exists())
cdex-8: If code = "data-request-questionnaire", must have one "questionnaire" input. (Task.code.coding.code.where($this='data-request-questionnaire').exists() implies Task.input.type.coding.code.where($this='questionnaire').exists())
cdex-9: Must have exactly one input that is data-query or data-code or questionnaire (Task.input.type.coding.code.where($this='data-query' or $this='data-code' or $this='questionnaire').count()=1)
tdr-2: Task statusReason SHALL be populated if status is 'rejected' or 'failed' ((status = 'rejected' or status = 'failed') implies statusReason.exists())
tdr-3: Task output SHALL be populated if status is 'completed' ((status = 'completed') implies output.exists())
cdex-11: If code = "data-request-questionnaire" and status = "completed", should have one "questionnaire-response" output referencing the QuestionnaireResponse. ((Task.code.coding.code.where($this='data-request-questionnaire').exists() and Task.status.where($this='completed').exists()) implies Task.output.type.coding.code.where($this='questionnaire-response').exists())
inv-1: Last modified date must be greater than or equal to authored-on date. (lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn)
2. Task.meta
Definition

The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.

ShortMetadata about the resource
Control0..1
TypeMeta
Is Modifierfalse
Summarytrue
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
4. Task.meta.tag
Definition

Tags applied to this resource. Tags are intended to be used to identify and relate resources to process and workflow, and applications are not required to consider the tags when interpreting the meaning of a resource.

ShortTags applied to this resource
Comments

The tags can be updated without changing the stated version of the resource. The list of tags is a set. Uniqueness is based the system/code, and version and display are ignored.

Control0..*
BindingFor example codes, see CommonTagshttp://hl7.org/fhir/ValueSet/common-tags
(example to http://hl7.org/fhir/ValueSet/common-tags)

Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".

TypeCoding
Is Modifierfalse
Summarytrue
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
SlicingThis element introduces a set of slices on Task.meta.tag. The slices areUnordered and Open, and can be differentiated using the following discriminators:
  • value @ $this
  • 6. Task.meta.tag.system
    Definition

    The identification of the code system that defines the meaning of the symbol in the code.

    ShortIdentity of the terminology system
    Comments

    The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.

    Control10..1
    Typeuri
    Is Modifierfalse
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Summarytrue
    Requirements

    Need to be unambiguous about the source of the definition of the symbol.

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    8. Task.meta.tag.code
    Definition

    A symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).

    ShortSymbol in syntax defined by the system
    Control10..1
    Typecode
    Is Modifierfalse
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Summarytrue
    Requirements

    Need to refer to a particular code in the system.

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    10. Task.meta.tag:work-queue
    Slice Namework-queue
    Definition

    Data Consumer provided work queue tags that providers may use in their workflow to process requests.


    Tags applied to this resource. Tags are intended to be used to identify and relate resources to process and workflow, and applications are not required to consider the tags when interpreting the meaning of a resource.

    ShortWork Queue TagTags applied to this resource
    Comments

    The tags can be updated without changing the stated version of the resource. The list of tags is a set. Uniqueness is based the system/code, and version and display are ignored.

    Control0..*
    BindingThe codes SHALL be taken from For example codes, see CDex Work Queue Value Sethttp://hl7.org/fhir/ValueSet/common-tags
    (required to http://hl7.org/fhir/us/davinci-cdex/ValueSet/cdex-work-queue)
    TypeCoding
    Is Modifierfalse
    Summarytrue
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    12. Task.implicitRules
    Definition

    A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.

    ShortA set of rules under which this content was created
    Comments

    Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.

    Control0..1
    Typeuri
    Is Modifiertrue because This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Summarytrue
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    14. Task.modifierExtension
    Definition

    May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

    Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

    ShortExtensions that cannot be ignored
    Comments

    There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

    Control0..*
    TypeExtension
    Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them
    Summaryfalse
    Requirements

    Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

    Alternate Namesextensions, user content
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    16. Task.identifier
    Definition

    The business identifier for this task.

    ShortTask Instance Identifier
    NoteThis is a business identifier, not a resource identifier (see discussion)
    Control0..*
    TypeIdentifier
    Is Modifierfalse
    Must Supporttrue
    Summaryfalse
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    18. Task.basedOn
    Definition

    BasedOn refers to a higher-level authorization that triggered the creation of the task. It references a "request" resource such as a ServiceRequest, MedicationRequest, ServiceRequest, CarePlan, etc. which is distinct from the "request" resource the task is seeking to fulfill. This latter resource is referenced by FocusOn. For example, based on a ServiceRequest (= BasedOn), a task is created to fulfill a procedureRequest ( = FocusOn ) to collect a specimen from a patient.

    ShortAuthorization for data requestRequest fulfilled by this task
    Control0..*
    TypeReference(Resource)
    Is Modifierfalse
    Must Supporttrue
    Summarytrue
    Requirements

    Indicates the order (ServiceRequest, CommunicationRequest, etc.) that authorizes the data request

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    20. Task.status
    Definition

    The current status of the task.

    Shortdraft | requested | received | accepted | +
    Control1..1
    This element is affected by the following invariants: tdr-2, tdr-3, cdex-11
    BindingThe codes SHALL be taken from HRex Task Status ValueSethttp://hl7.org/fhir/ValueSet/task-status|4.0.1
    (required to http://hl7.org/fhir/us/davinci-hrex/ValueSet/hrex-task-status)
    Typecode
    Is Modifiertrue because This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Must Supporttrue
    Summarytrue
    Requirements

    These states enable coordination of task status with off-the-shelf workflow solutions that support automation of tasks.

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    22. Task.statusReason
    Definition

    An explanation as to why this task is held, failed, was refused, etc.

    ShortReason for current status
    Comments

    This applies to the current status. Look at the history of the task to see reasons for past statuses.

    Control0..1
    This element is affected by the following invariants: tdr-2
    Binding

    Codes to identify the reason for current status. These will typically be specific to a particular workflow.

    TypeCodeableConcept
    Is Modifierfalse
    Must Supporttrue
    Summarytrue
    Requirements

    Indicates why task failed or was rejected.

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    24. Task.statusReason.text
    Definition

    A human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user.

    ShortPlain text representation of the concept
    Comments

    Very often the text is the same as a displayName of one of the codings.

    Control10..1
    Typestring
    Is Modifierfalse
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Must Supporttrue
    Summarytrue
    Requirements

    The codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source.

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    26. Task.businessStatus
    Definition

    Contains business-specific nuances of the business state.

    ShortFor example, 'waiting on internal review'E.g. "Specimen collected", "IV prepped"
    Comments

    Conveys the internal business progress of the request and provides more nuance than the overall status. There is no expectation this will be coded, but negotiation of agreed codes can be used between partners

    Control0..1
    Binding

    The domain-specific business-contextual sub-state of the task. For example: "Blood drawn", "IV inserted", "Awaiting physician signature", etc.

    TypeCodeableConcept
    Is Modifierfalse
    Must Supporttrue
    Summarytrue
    Requirements

    Indicates progress in retrieving the data


    There's often a need to track substates of a task - this is often variable by specific workflow implementation.

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    28. Task.businessStatus.text
    Definition

    A human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user.

    ShortPlain text representation of the concept
    Comments

    Very often the text is the same as a displayName of one of the codings.

    Control10..1
    Typestring
    Is Modifierfalse
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Must Supporttrue
    Summarytrue
    Requirements

    The codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source.

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    30. Task.intent
    Definition

    Indicates the "level" of actionability associated with the Task, i.e. i+R[9]Cs this a proposed task, a planned task, an actionable task, etc.

    Shortunknown | proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option
    Comments

    This element is immutable. Proposed tasks, planned tasks, etc. must be distinct instances.

    In most cases, Tasks will have an intent of "order".

    Control1..1
    BindingThe codes SHALL be taken from TaskIntenthttp://hl7.org/fhir/ValueSet/task-intent|4.0.1
    (required to http://hl7.org/fhir/ValueSet/task-intent|4.0.1)

    Distinguishes whether the task is a proposal, plan or full order.

    Typecode
    Is Modifierfalse
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Must Supporttrue
    Summarytrue
    Fixed Valueorder
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    32. Task.code
    Definition

    The code element is used to indicate that Task is a request for data and whether the data request is FHIR query syntax, a code, or a questionnaire. The code element is a required element and must be populated with one of the following values: "data-request-query", data-request-code", or "data-request-questionnaire".


    A name or code (or both) briefly describing what the task involves.

    Shortdata-request-query | data-request-code | data-request-questionnaireTask Type
    Comments

    The title (eg "My Tasks", "Outstanding Tasks for Patient X") should go into the code.

    Control10..1
    This element is affected by the following invariants: cdex-7, cdex-8, cdex-11, cdex-12
    BindingThe codes SHALL be taken from For example codes, see CDex Data Request Task Code Value Sethttp://hl7.org/fhir/ValueSet/task-code
    (required to http://hl7.org/fhir/us/davinci-cdex/ValueSet/cdex-data-request-task-code)
    TypeCodeableConcept
    Is Modifierfalse
    Must Supporttrue
    Summarytrue
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    34. Task.code.coding
    Definition

    A reference to a code defined by a terminology system.

    ShortCode defined by a terminology system
    Comments

    Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.

    Control10..*
    TypeCoding
    Is Modifierfalse
    Must Supporttrue
    Summarytrue
    Requirements

    Allows for alternative encodings within a code system, and translations to other code systems.

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    36. Task.code.coding.system
    Definition

    The identification of the code system that defines the meaning of the symbol in the code.

    ShortIdentity of the terminology system
    Comments

    The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.

    Control0..1
    Typeuri
    Is Modifierfalse
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Must Supporttrue
    Summarytrue
    Requirements

    Need to be unambiguous about the source of the definition of the symbol.

    Fixed Valuehttp://hl7.org/fhir/us/davinci-cdex/CodeSystem/cdex-temp
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    38. Task.code.coding.code
    Definition

    A symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).

    ShortSymbol in syntax defined by the system
    Control10..1
    Typecode
    Is Modifierfalse
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Must Supporttrue
    Summarytrue
    Requirements

    Need to refer to a particular code in the system.

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    40. Task.focus
    Definition

    The request being actioned or the resource being manipulated by this task.

    ShortWhat task is acting on
    Comments

    If multiple resources need to be manipulated, use sub-tasks. (This ensures that status can be tracked independently for each referenced resource.).

    Control0..01
    TypeReference(Resource)
    Is Modifierfalse
    Summarytrue
    Requirements

    Used to identify the thing to be done.

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    42. Task.for
    Definition

    The entity who benefits from the performance of the service specified in the task (e.g., the patient).

    ShortMember (i.e., patient) being queriedBeneficiary of the Task
    Comments

    Queries must always be in the scope of a single member

    Control10..1
    TypeReference(US Core Patient Profile, US Core Patient Profile, US Core Patient Profile, Resource)
    Is Modifierfalse
    Must Supporttrue
    Must Support TypesNo must-support rules about the choice of types/profiles
    Summarytrue
    Requirements

    Used to track tasks outstanding for a beneficiary. Do not use to track the task owner or creator (see owner and creator respectively). This can also affect access control.

    Alternate NamesPatient
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    44. Task.for.identifier
    Definition

    business identifier representing the Patient


    An identifier for the target resource. This is used when there is no way to reference the other resource directly, either because the entity it represents is not available through a FHIR server, or because there is no way for the author of the resource to convert a known identifier to an actual location. There is no requirement that a Reference.identifier point to something that is actually exposed as a FHIR instance, but it SHALL point to a business concept that would be expected to be exposed as a FHIR instance, and that instance would need to be of a FHIR resource type allowed by the reference.

    ShortPatient Member IDLogical reference, when literal reference is not known
    Comments

    When an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy.

    When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference

    Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it.

    Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any).

    NoteThis is a business identifier, not a resource identifier (see discussion)
    Control0..1
    TypeIdentifier
    Is Modifierfalse
    Must Supporttrue
    Summarytrue
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    46. Task.authoredOn
    Definition

    The date and time this task was created.

    ShortTask Creation Date
    Control10..1
    This element is affected by the following invariants: inv-1
    TypedateTime
    Is Modifierfalse
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Must Supporttrue
    Summaryfalse
    Requirements

    Most often used along with lastUpdated to track duration of task to supporting monitoring and management.

    Alternate NamesCreated Date
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    48. Task.requester
    Definition

    The creator of the task.

    ShortWho is asking for dataWho is asking for task to be done
    Control10..1
    TypeReference(US Core Practitioner Profile, US Core Practitioner Profile, US Core Practitioner Profile, HRex Organization Profile, Device, Organization, Patient, Practitioner, PractitionerRole, RelatedPerson)
    Is Modifierfalse
    Must Supporttrue
    Must Support TypesNo must-support rules about the choice of types/profiles
    Summarytrue
    Requirements

    Identifies who created this task. May be used by access control mechanisms (e.g., to ensure that only the creator can cancel a task).

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    50. Task.requester.identifier
    Definition

    business identifier representing the Data Consumer


    An identifier for the target resource. This is used when there is no way to reference the other resource directly, either because the entity it represents is not available through a FHIR server, or because there is no way for the author of the resource to convert a known identifier to an actual location. There is no requirement that a Reference.identifier point to something that is actually exposed as a FHIR instance, but it SHALL point to a business concept that would be expected to be exposed as a FHIR instance, and that instance would need to be of a FHIR resource type allowed by the reference.

    ShortData Consumer IDLogical reference, when literal reference is not known
    Comments

    When an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy.

    When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference

    Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it.

    Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any).

    NoteThis is a business identifier, not a resource identifier (see discussion)
    Control0..1
    TypeIdentifier
    Is Modifierfalse
    Must Supporttrue
    Summarytrue
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    52. Task.owner
    Definition

    Individual organization or Device currently responsible for task execution.

    ShortWho is being asked for dataResponsible individual
    Comments

    Tasks may be created with an owner not yet identified.

    Control10..1
    TypeReference(US Core Practitioner Profile, US Core Practitioner Profile, US Core Practitioner Profile, HRex Organization Profile, Practitioner, PractitionerRole, Organization, CareTeam, HealthcareService, Patient, Device, RelatedPerson)
    Is Modifierfalse
    Must Supporttrue
    Must Support TypesNo must-support rules about the choice of types/profiles
    Summarytrue
    Requirements

    Identifies who is expected to perform this task.

    Alternate NamesPerformer, Executer
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    54. Task.owner.identifier
    Definition

    business identifier representing the Provider


    An identifier for the target resource. This is used when there is no way to reference the other resource directly, either because the entity it represents is not available through a FHIR server, or because there is no way for the author of the resource to convert a known identifier to an actual location. There is no requirement that a Reference.identifier point to something that is actually exposed as a FHIR instance, but it SHALL point to a business concept that would be expected to be exposed as a FHIR instance, and that instance would need to be of a FHIR resource type allowed by the reference.

    ShortProvider IDLogical reference, when literal reference is not known
    Comments

    When an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy.

    When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference

    Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it.

    Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any).

    NoteThis is a business identifier, not a resource identifier (see discussion)
    Control0..1
    TypeIdentifier
    Is Modifierfalse
    Must Supporttrue
    Summarytrue
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    56. Task.reasonCode
    Definition

    A description or code indicating why this task needs to be performed.

    ShortWhy task is needed
    Comments

    Only text is expected, though codes can be used for partners with agreed value sets


    This should only be included if there is no focus or if it differs from the reason indicated on the focus.

    Control0..1
    Binding

    Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.

    TypeCodeableConcept
    Is Modifierfalse
    Must Supporttrue
    Summaryfalse
    Requirements

    Indicates why the information request is occurring

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    58. Task.reasonCode.text
    Definition

    A human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user.

    ShortPlain text representation of the concept
    Comments

    Very often the text is the same as a displayName of one of the codings.

    Control10..1
    Typestring
    Is Modifierfalse
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Must Supporttrue
    Summarytrue
    Requirements

    The codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source.

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    60. Task.reasonReference
    Definition

    A resource reference indicating why this task needs to be performed.

    ShortWhy task is needed
    Comments

    Example targets would be HRex Coverage, PCDE Claim (for prior authorization) or a bare Claim resource for referencing an actual Claim.


    Tasks might be justified based on an Observation, a Condition, a past or planned procedure, etc. This should only be included if there is no focus or if it differs from the reason indicated on the focus. Use the CodeableConcept text element in Task.reasonCode if the data is free (uncoded) text.

    Control0..1
    TypeReference(Claim, Coverage, US Core Coverage Profile, US Core Coverage Profile, Resource)
    Is Modifierfalse
    Must Supporttrue
    Must Support TypesNo must-support rules about the choice of types/profiles
    Summaryfalse
    Requirements

    Indicates why the information request is occurring

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    62. Task.reasonReference.identifier
    Definition

    business identifier representing the coverage, claim, or prior-authorization ID


    An identifier for the target resource. This is used when there is no way to reference the other resource directly, either because the entity it represents is not available through a FHIR server, or because there is no way for the author of the resource to convert a known identifier to an actual location. There is no requirement that a Reference.identifier point to something that is actually exposed as a FHIR instance, but it SHALL point to a business concept that would be expected to be exposed as a FHIR instance, and that instance would need to be of a FHIR resource type allowed by the reference.

    ShortCoverage or Claim IDLogical reference, when literal reference is not known
    Comments

    Most payer systems will not expose their claim and prior authorization records as a FHIR resource. They will provide a unique business identifier for the claim or prior authorization using Task.reasonReference.identifier. This could be a payer-assigned or provider-assigned identifier which SHOULD be communicated in Task.reasonReference.identifier.type using the "FILL" for the payer and "PLAC" for the provider.


    When an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy.

    When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference

    Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it.

    Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any).

    NoteThis is a business identifier, not a resource identifier (see discussion)
    Control0..1
    TypeIdentifier
    Is Modifierfalse
    Must Supporttrue
    Summarytrue
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    64. Task.input
    Definition

    Additional information that may be needed in the execution of the task.

    ShortInformation used to perform task
    Control10..*
    TypeBackboneElement
    Is Modifierfalse
    Must Supporttrue
    Summaryfalse
    Requirements

    Resources and data used to perform the task. This data is used in the business logic of task execution, and is stored separately because it varies between workflows.

    Alternate NamesSupporting Information
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    SlicingThis element introduces a set of slices on Task.input. The slices areUnordered and Open, and can be differentiated using the following discriminators:
    • value @ type
    • 66. Task.input.modifierExtension
      Definition

      May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

      Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

      ShortExtensions that cannot be ignored even if unrecognized
      Comments

      There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

      Control0..*
      TypeExtension
      Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
      Summarytrue
      Requirements

      Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

      Alternate Namesextensions, user content, modifiers
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
      68. Task.input.type
      Definition

      A code or description indicating how the input is intended to be used as part of the task execution.

      ShortLabel for the input
      Comments

      If referencing a BPMN workflow or Protocol, the "system" is the URL for the workflow definition and the code is the "name" of the required input.

      Control1..1
      Binding

      Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc.

      TypeCodeableConcept
      Is Modifierfalse
      Summaryfalse
      Requirements

      Inputs are named to enable task automation to bind data and pass it from one task to the next.

      Alternate NamesName
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      70. Task.input.value[x]
      Definition

      The value of the input parameter as a basic type.

      ShortContent to use in performing the task
      Control1..1
      TypeChoice of: base64Binary, boolean, canonical, code, date, dateTime, decimal, id, instant, integer, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, Reference, SampledData, Signature, Timing, ContactDetail, Contributor, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Dosage, Meta
      [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
      Is Modifierfalse
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      Summaryfalse
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      72. Task.input:query
      Slice Namequery
      Definition

      Indicates the specific FHIR RESTful query to be executed


      Additional information that may be needed in the execution of the task.

      ShortRequested queryInformation used to perform task
      Comments

      This will contain the text that should go after the '?' when executing the query.

      Control0..1*
      This element is affected by the following invariants: cdex-9, cdex-12
      TypeBackboneElement
      Is Modifierfalse
      Must Supporttrue
      Summaryfalse
      Requirements

      Resources and data used to perform the task. This data is used in the business logic of task execution, and is stored separately because it varies between workflows.

      Alternate NamesSupporting Information
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      74. Task.input:query.modifierExtension
      Definition

      May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

      Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

      ShortExtensions that cannot be ignored even if unrecognized
      Comments

      There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

      Control0..*
      TypeExtension
      Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
      Summarytrue
      Requirements

      Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

      Alternate Namesextensions, user content, modifiers
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
      76. Task.input:query.type
      Definition

      A code or description indicating how the input is intended to be used as part of the task execution.

      ShortLabel for the input
      Comments

      If referencing a BPMN workflow or Protocol, the "system" is the URL for the workflow definition and the code is the "name" of the required input.

      Control1..1
      Binding

      Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc.

      TypeCodeableConcept
      Is Modifierfalse
      Must Supporttrue
      Summaryfalse
      Requirements

      Inputs are named to enable task automation to bind data and pass it from one task to the next.

      Alternate NamesName
      Pattern Value{
        "coding" : [{
          "system" : "http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp",
          "code" : "data-query"
        }]
      }
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      78. Task.input:query.value[x]
      Definition

      The value of the input parameter as a basic type.

      Shortquery valueContent to use in performing the task
      Control1..1
      Typestring, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, Coding, SampledData, id, positiveInt, Distance, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, CodeableConcept, ParameterDefinition, dateTime, code, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, Signature, unsignedInt, time
      [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
      Is Modifierfalse
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      Must Supporttrue
      Summaryfalse
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      80. Task.input:code
      Slice Namecode
      Definition

      A code indicating the type of data/document to be returned


      Additional information that may be needed in the execution of the task.

      ShortRequested data codeInformation used to perform task
      Comments

      This might be a document code or other code describing the requested information. If no appropriate standard code exists, local codes may be used between partners, or a human-readable textual description of the desired data can be provided. Downstream profiles may tighten expectations for this element.

      Control0..1*
      This element is affected by the following invariants: cdex-7, cdex-9
      TypeBackboneElement
      Is Modifierfalse
      Must Supporttrue
      Summaryfalse
      Requirements

      Resources and data used to perform the task. This data is used in the business logic of task execution, and is stored separately because it varies between workflows.

      Alternate NamesSupporting Information
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      82. Task.input:code.modifierExtension
      Definition

      May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

      Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

      ShortExtensions that cannot be ignored even if unrecognized
      Comments

      There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

      Control0..*
      TypeExtension
      Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
      Summarytrue
      Requirements

      Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

      Alternate Namesextensions, user content, modifiers
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
      84. Task.input:code.type
      Definition

      A code or description indicating how the input is intended to be used as part of the task execution.

      ShortLabel for the input
      Comments

      If referencing a BPMN workflow or Protocol, the "system" is the URL for the workflow definition and the code is the "name" of the required input.

      Control1..1
      Binding

      Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc.

      TypeCodeableConcept
      Is Modifierfalse
      Must Supporttrue
      Summaryfalse
      Requirements

      Inputs are named to enable task automation to bind data and pass it from one task to the next.

      Alternate NamesName
      Pattern Value{
        "coding" : [{
          "system" : "http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp",
          "code" : "data-code"
        }]
      }
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      86. Task.input:code.value[x]
      Definition

      The value of the input parameter as a basic type.

      Shortquery valueContent to use in performing the task
      Control1..1
      BindingUnless not suitable, these codes SHALL be taken from For codes, see US Core DocumentReference Type
      (extensible to http://hl7.org/fhir/us/core/ValueSet/us-core-documentreference-type)
      TypeCodeableConcept, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, Coding, SampledData, id, positiveInt, Distance, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, ParameterDefinition, dateTime, code, string, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, Signature, unsignedInt, time
      [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
      Is Modifierfalse
      Must Supporttrue
      Summaryfalse
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      88. Task.input:questionnaire
      Slice Namequestionnaire
      Definition

      Indicates the questionnaire to be completed.


      Additional information that may be needed in the execution of the task.

      ShortData Request questionnaireInformation used to perform task
      Control0..1*
      This element is affected by the following invariants: cdex-8, cdex-9
      TypeBackboneElement
      Is Modifierfalse
      Summaryfalse
      Requirements

      Resources and data used to perform the task. This data is used in the business logic of task execution, and is stored separately because it varies between workflows.

      Alternate NamesSupporting Information
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      90. Task.input:questionnaire.modifierExtension
      Definition

      May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

      Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

      ShortExtensions that cannot be ignored even if unrecognized
      Comments

      There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

      Control0..*
      TypeExtension
      Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
      Summarytrue
      Requirements

      Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

      Alternate Namesextensions, user content, modifiers
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
      92. Task.input:questionnaire.type
      Definition

      A code or description indicating how the input is intended to be used as part of the task execution.

      ShortLabel for the input
      Comments

      If referencing a BPMN workflow or Protocol, the "system" is the URL for the workflow definition and the code is the "name" of the required input.

      Control1..1
      Binding

      Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc.

      TypeCodeableConcept
      Is Modifierfalse
      Summaryfalse
      Requirements

      Inputs are named to enable task automation to bind data and pass it from one task to the next.

      Alternate NamesName
      Pattern Value{
        "coding" : [{
          "system" : "http://hl7.org/fhir/uv/sdc/CodeSystem/temp",
          "code" : "questionnaire"
        }]
      }
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      94. Task.input:questionnaire.value[x]
      Definition

      The value of the input parameter as a basic type.

      ShortURLContent to use in performing the task
      Control1..1
      Typecanonical(DTR Standard Questionnaire, DTR Questionnaire for adaptive form), date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, Coding, SampledData, id, positiveInt, Distance, Period, Duration, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, CodeableConcept, ParameterDefinition, dateTime, code, string, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, Signature, unsignedInt, time
      [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
      Is Modifierfalse
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      Summaryfalse
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      96. Task.input:questionnaire.value[x].extension:questionnaireDisplay
      Slice NamequestionnaireDisplay
      Definition

      The title or other name to display when referencing a resource by canonical URL.

      ShortDisplay name for canonical reference
      Comments

      This can be handy for commonly used questionnaires with a recognizable name.

      Control0..1
      TypeExtension(Display Name) (Extension Type: string)
      Is Modifierfalse
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
      ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
      98. Task.input:signature
      Slice Namesignature
      Definition

      Flag to indicate whether the requested data requires a signature.


      Additional information that may be needed in the execution of the task.

      ShortSignature flagInformation used to perform task
      Control0..1*
      TypeBackboneElement
      Is Modifierfalse
      Must Supporttrue
      Summaryfalse
      Requirements

      Resources and data used to perform the task. This data is used in the business logic of task execution, and is stored separately because it varies between workflows.

      Alternate NamesSupporting Information
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      100. Task.input:signature.modifierExtension
      Definition

      May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

      Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

      ShortExtensions that cannot be ignored even if unrecognized
      Comments

      There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

      Control0..*
      TypeExtension
      Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
      Summarytrue
      Requirements

      Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

      Alternate Namesextensions, user content, modifiers
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
      102. Task.input:signature.type
      Definition

      A code or description indicating how the input is intended to be used as part of the task execution.

      ShortLabel for the input
      Comments

      If referencing a BPMN workflow or Protocol, the "system" is the URL for the workflow definition and the code is the "name" of the required input.

      Control1..1
      Binding

      Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc.

      TypeCodeableConcept
      Is Modifierfalse
      Must Supporttrue
      Summaryfalse
      Requirements

      Inputs are named to enable task automation to bind data and pass it from one task to the next.

      Alternate NamesName
      Pattern Value{
        "coding" : [{
          "system" : "http://hl7.org/fhir/us/davinci-cdex/CodeSystem/cdex-temp",
          "code" : "signature-flag"
        }]
      }
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      104. Task.input:signature.value[x]
      Definition

      The value of the input parameter as a basic type.

      ShortSignature flag valueContent to use in performing the task
      Control1..1
      Typeboolean, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, Coding, SampledData, id, positiveInt, Distance, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, CodeableConcept, ParameterDefinition, dateTime, code, string, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, Expression, Signature, unsignedInt, time
      [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
      Is Modifierfalse
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      Must Supporttrue
      Summaryfalse
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      106. Task.input:POU
      Slice NamePOU
      Definition

      Represent the purpose of use for the requested data.


      Additional information that may be needed in the execution of the task.

      ShortPurpose of use codeInformation used to perform task
      Control0..1*
      TypeBackboneElement
      Is Modifierfalse
      Summaryfalse
      Requirements

      Resources and data used to perform the task. This data is used in the business logic of task execution, and is stored separately because it varies between workflows.

      Alternate NamesSupporting Information
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      108. Task.input:POU.modifierExtension
      Definition

      May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

      Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

      ShortExtensions that cannot be ignored even if unrecognized
      Comments

      There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

      Control0..*
      TypeExtension
      Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
      Summarytrue
      Requirements

      Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

      Alternate Namesextensions, user content, modifiers
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
      110. Task.input:POU.type
      Definition

      A code or description indicating how the input is intended to be used as part of the task execution.

      ShortLabel for the input
      Comments

      If referencing a BPMN workflow or Protocol, the "system" is the URL for the workflow definition and the code is the "name" of the required input.

      Control1..1
      Binding

      Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc.

      TypeCodeableConcept
      Is Modifierfalse
      Summaryfalse
      Requirements

      Inputs are named to enable task automation to bind data and pass it from one task to the next.

      Alternate NamesName
      Pattern Value{
        "coding" : [{
          "system" : "http://hl7.org/fhir/us/davinci-cdex/CodeSystem/cdex-temp",
          "code" : "purpose-of-use"
        }]
      }
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      112. Task.input:POU.value[x]
      Definition

      The value of the input parameter as a basic type.

      ShortPurpose of use valueContent to use in performing the task
      Control1..1
      BindingUnless not suitable, these codes SHALL be taken from For codes, see CDex Purpose of Use Value Set
      (extensible to http://hl7.org/fhir/us/davinci-cdex/ValueSet/cdex-POU)
      TypeCodeableConcept, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, Coding, SampledData, id, positiveInt, Distance, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, ParameterDefinition, dateTime, code, string, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, Signature, unsignedInt, time
      [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
      Is Modifierfalse
      Summaryfalse
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      114. Task.output
      Definition

      Outputs produced by the Task.

      ShortInformation produced as part of task
      Control0..*
      This element is affected by the following invariants: tdr-3
      TypeBackboneElement
      Is Modifierfalse
      Must Supporttrue
      Summaryfalse
      Requirements

      Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      SlicingThis element introduces a set of slices on Task.output. The slices areUnordered and Open, and can be differentiated using the following discriminators:
      • value @ type
      • 116. Task.output.modifierExtension
        Definition

        May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

        Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

        ShortExtensions that cannot be ignored even if unrecognized
        Comments

        There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

        Control0..*
        TypeExtension
        Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
        Summarytrue
        Requirements

        Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

        Alternate Namesextensions, user content, modifiers
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
        118. Task.output.type
        Definition

        The name of the Output parameter.

        ShortLabel for output
        Control1..1
        Binding

        Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Identified issues", "Preliminary results", "Filler order", "Final results", etc.

        TypeCodeableConcept
        Is Modifierfalse
        Summaryfalse
        Requirements

        Outputs are named to enable task automation to bind data and pass it from one task to the next.

        Alternate NamesName
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        120. Task.output.value[x]
        Definition

        The value of the Output parameter as a basic type.

        ShortResult of output
        Control1..1
        TypeChoice of: base64Binary, boolean, canonical, code, date, dateTime, decimal, id, instant, integer, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, Reference, SampledData, Signature, Timing, ContactDetail, Contributor, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Dosage, Meta
        [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summaryfalse
        Requirements

        Task outputs can take any form.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        122. Task.output:data
        Slice Namedata
        Definition

        The data content requested. Multiple repetitions are permitted in the event that a single request returns multiple instances and packaging in a Bundle is not necessary/appropriate. Also, in most cases Provenance instances should accompany returned data so that the requester can best integrate and allocate trust/confidence to the provided data.


        Outputs produced by the Task.

        ShortRequested dataInformation produced as part of task
        Control0..*
        TypeBackboneElement
        Is Modifierfalse
        Must Supporttrue
        Summaryfalse
        Requirements

        Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        124. Task.output:data.modifierExtension
        Definition

        May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

        Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

        ShortExtensions that cannot be ignored even if unrecognized
        Comments

        There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

        Control0..*
        TypeExtension
        Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
        Summarytrue
        Requirements

        Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

        Alternate Namesextensions, user content, modifiers
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
        126. Task.output:data.type
        Definition

        The name of the Output parameter.

        ShortLabel for output
        Control1..1
        Binding

        Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Identified issues", "Preliminary results", "Filler order", "Final results", etc.

        TypeCodeableConcept
        Is Modifierfalse
        Must Supporttrue
        Summaryfalse
        Requirements

        Outputs are named to enable task automation to bind data and pass it from one task to the next.

        Alternate NamesName
        Pattern Value{
          "coding" : [{
            "system" : "http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp",
            "code" : "data-value"
          }]
        }
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        128. Task.output:data.value[x]
        Definition

        The value of the Output parameter as a basic type.

        Shortdata referenceResult of output
        Comments

        The referenced data might be contained within the Task (if it doesn't have/shouldn't have independent persistence), but can also refer to data stored elsewhere - either on the owner's system or some other system. Note that all returned data SHOULD comply with appropriate US-Core and/or Da Vinci profiles. The "questionnaire-response" output type is for a QuestionnaireResponse resulting from the request.

        Control1..1
        TypeReference, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, Coding, SampledData, id, positiveInt, Distance, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, CodeableConcept, ParameterDefinition, dateTime, code, string, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, Signature, unsignedInt, time
        [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
        Is Modifierfalse
        Must Supporttrue
        Summaryfalse
        Requirements

        Task outputs can take any form.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        130. Task.output:response
        Slice Nameresponse
        Definition

        Indicates the questionnaire response resulting from the request.


        Outputs produced by the Task.

        ShortInformation produced as part of task
        Control0..1*
        This element is affected by the following invariants: cdex-11
        TypeBackboneElement
        Is Modifierfalse
        Summaryfalse
        Requirements

        Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        132. Task.output:response.modifierExtension
        Definition

        May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

        Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

        ShortExtensions that cannot be ignored even if unrecognized
        Comments

        There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

        Control0..*
        TypeExtension
        Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
        Summarytrue
        Requirements

        Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

        Alternate Namesextensions, user content, modifiers
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
        134. Task.output:response.type
        Definition

        The name of the Output parameter.

        ShortLabel for output
        Control1..1
        Binding

        Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Identified issues", "Preliminary results", "Filler order", "Final results", etc.

        TypeCodeableConcept
        Is Modifierfalse
        Summaryfalse
        Requirements

        Outputs are named to enable task automation to bind data and pass it from one task to the next.

        Alternate NamesName
        Pattern Value{
          "coding" : [{
            "system" : "http://hl7.org/fhir/uv/sdc/CodeSystem/temp",
            "code" : "questionnaire-response"
          }]
        }
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        136. Task.output:response.value[x]
        Definition

        The value of the Output parameter as a basic type.

        ShortReference to the QuestionnaireResponseResult of output
        Control1..1
        TypeReference(CDex SDC QuestionnaireResponse Profile, Adaptive Questionnaire Response), date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, Coding, SampledData, id, positiveInt, Distance, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, CodeableConcept, ParameterDefinition, dateTime, code, string, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, Signature, unsignedInt, time
        [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
        Is Modifierfalse
        Summaryfalse
        Requirements

        Task outputs can take any form.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))