PackagesCanonicalsLogsProblems
    Packages
    hl7.fhir.us.ecr@2.0.0
    http://hl7.org/fhir/us/ecr/StructureDefinition/ersd-plandefinition
description: 'This PlanDefinition profile defines the logic and rules around determining: whether or not a condition is reportable to public health, which jurisdiction(s) is/are responsible, which jurisdiction(s) need to be notified, and if the condition is reportable, gives timing information, next steps and condition information to the clinician. The rules for determining reportability described by an eRSD specification involve the use of triggering codes to determine potentially reportable events, and optionally locally evaluated rules for determining suspected reportable events. The final determination of reportability is made by the Public Health Agency or Agencies appropriate for the event, and may be performed by a combination of decisions occurring at various points during the processing of an eICR, as explained in the Reportability Response profile.'
package_name: hl7.fhir.us.ecr
derivation: constraint
name: ERSDPlanDefinition
type: PlanDefinition
elements:
  action:
    mustSupport: true
    array: true
    min: 3
    index: 0
    elements:
      code:
        binding: {strength: extensible, valueSet: 'http://hl7.org/fhir/us/ecr/ValueSet/us-ph-plandefinition-action'}
        mustSupport: true
        index: 1
      input:
        index: 2
        extensions:
          us-ph-fhirquerypattern-extension: {url: 'http://hl7.org/fhir/us/ecr/StructureDefinition/us-ph-fhirquerypattern-extension', min: 0, max: 1, type: Extension, mustSupport: true, index: 4}
        elements:
          extension:
            mustSupport: true
            index: 3
            slicing:
              rules: open
              discriminator:
              - {path: url, type: value}
              min: null
              slices:
                us-ph-fhirquerypattern-extension:
                  match: {url: null}
                  schema: {type: Extension, mustSupport: true, url: 'http://hl7.org/fhir/us/ecr/StructureDefinition/us-ph-fhirquerypattern-extension', index: 4}
                  min: 0
                  max: 1
    slicing:
      rules: open
      ordered: true
      discriminator:
      - {path: id, type: value}
      min: 3
      slices:
        encounterStart:
          match: {id: start-workflow}
          schema:
            short: Encounter start code
            mustSupport: true
            _required: true
            index: 5
            elements:
              id:
                pattern: {type: String, value: start-workflow}
                mustSupport: true
                index: 6
              description:
                short: Description of the "match-trigger" action.
                pattern: {type: String, value: This action represents the start of the reporting workflow in response to the encounter-start event}
                mustSupport: true
                index: 7
              textEquivalent:
                short: Text equivalent of the "start" action.
                pattern: {type: String, value: Start the reporting workflow in response to an encounter-start event}
                mustSupport: true
                index: 8
              code:
                short: Code for the "start" action.
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: initiate-reporting-workflow, system: 'http://hl7.org/fhir/us/ecr/CodeSystem/us-ph-plandefinition-actions'}
                index: 9
              trigger:
                short: When the "start" action should be triggered.
                constraint:
                  epd-1: {human: The code value of the namedEventType SHALL be the same as the name element, source: 'http://hl7.org/fhir/StructureDefinition/Extension', severity: error, expression: 'extension(''http://hl7.org/fhir/us/ecr/StructureDefinition/us-ph-named-eventtype-extension'').value.coding.code.supersetOf(name)'}
                mustSupport: true
                index: 10
                extensions:
                  namedEventType:
                    constraint:
                      ele-1: {human: All FHIR elements must have a @value or children, source: 'http://hl7.org/fhir/StructureDefinition/Element', severity: error, expression: hasValue() or (children().count() > id.count())}
                      ext-1: {human: 'Must have either extensions or value[x], not both', source: 'http://hl7.org/fhir/StructureDefinition/Extension', severity: error, expression: extension.exists() != value.exists()}
                    min: 0
                    isModifier: false
                    short: Indicates the types of named events to subscribe to from the HER.
                    index: 12
                    type: Extension
                    mustSupport: true
                    max: 1
                    url: http://hl7.org/fhir/us/ecr/StructureDefinition/us-ph-named-eventtype-extension
                    base: {max: '*', min: 0, path: Element.extension}
                    isSummary: false
                elements:
                  extension:
                    constraint:
                      ele-1: {human: All FHIR elements must have a @value or children, source: 'http://hl7.org/fhir/StructureDefinition/Element', severity: error, expression: hasValue() or (children().count() > id.count())}
                      ext-1: {human: 'Must have either extensions or value[x], not both', source: 'http://hl7.org/fhir/StructureDefinition/Extension', severity: error, expression: extension.exists() != value.exists()}
                    isModifier: false
                    short: Additional content defined by implementations
                    index: 11
                    slicing:
                      rules: open
                      description: Extensions are always sliced by (at least) url
                      discriminator:
                      - {path: url, type: value}
                      min: 0
                      slices:
                        namedEventType:
                          match: {url: null}
                          schema:
                            constraint:
                              ele-1: {human: All FHIR elements must have a @value or children, source: 'http://hl7.org/fhir/StructureDefinition/Element', severity: error, expression: hasValue() or (children().count() > id.count())}
                              ext-1: {human: 'Must have either extensions or value[x], not both', source: 'http://hl7.org/fhir/StructureDefinition/Extension', severity: error, expression: extension.exists() != value.exists()}
                            isModifier: false
                            short: Indicates the types of named events to subscribe to from the HER.
                            index: 12
                            type: Extension
                            mustSupport: true
                            url: http://hl7.org/fhir/us/ecr/StructureDefinition/us-ph-named-eventtype-extension
                            base: {max: '*', min: 0, path: Element.extension}
                            isSummary: false
                          min: 0
                          max: 1
                    type: Extension
                    array: true
                    base: {max: '*', min: 0, path: Element.extension}
                    isSummary: false
                  type:
                    pattern: {type: Code, value: named-event}
                    index: 13
                  name:
                    pattern: {type: String, value: encounter-start}
                    index: 14
              relatedAction:
                mustSupport: true
                index: 15
                elements:
                  actionId:
                    pattern: {type: Id, value: check-reportable}
                    index: 16
                  relationship:
                    pattern: {type: Code, value: before-start}
                    index: 17
                  offsetDuration: {type: Duration, index: 18}
            required: [relatedAction, textEquivalent, id, trigger, code, description]
        checkReportable:
          match: {id: check-reportable}
          schema:
            _required: true
            index: 19
            elements:
              id:
                pattern: {type: String, value: check-reportable}
                mustSupport: true
                index: 20
              description:
                short: Description of the Periodic Update of eICR action.
                pattern: {type: String, value: This action represents the check for suspected reportability of the eICR.}
                index: 21
              code:
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: execute-reporting-workflow, system: 'http://hl7.org/fhir/us/ecr/CodeSystem/us-ph-plandefinition-actions'}
                index: 22
              action:
                array: true
                min: 2
                index: 23
                slicing:
                  rules: open
                  discriminator:
                  - {path: id, type: value}
                  min: 2
                  slices:
                    isEncounterReportable:
                      match: {id: is-encounter-reportable}
                      schema:
                        type: BackboneElement
                        mustSupport: true
                        _required: true
                        index: 24
                        elements:
                          id:
                            pattern: {type: String, value: is-encounter-reportable}
                            mustSupport: true
                            index: 25
                          code:
                            pattern:
                              type: CodeableConcept
                              value:
                                coding:
                                - {code: check-trigger-codes, system: 'http://hl7.org/fhir/us/ecr/CodeSystem/us-ph-plandefinition-actions'}
                            index: 26
                          condition:
                            index: 27
                            elements:
                              kind:
                                pattern: {type: Code, value: applicability}
                                index: 28
                              expression:
                                mustSupport: true
                                index: 29
                                elements:
                                  language:
                                    pattern: {type: Code, value: text/fhirpath}
                                    index: 30
                            required: [expression]
                          input:
                            mustSupport: true
                            index: 31
                            elements:
                              id: {mustSupport: true, index: 32}
                            required: [id]
                          relatedAction:
                            index: 33
                            elements:
                              actionId:
                                pattern: {type: Id, value: report-eicr}
                                index: 34
                              relationship:
                                pattern: {type: Code, value: before-start}
                                index: 35
                        required: [id, code]
                    checkUpdateEicr:
                      match: {id: check-update-eicr}
                      schema:
                        type: BackboneElement
                        mustSupport: true
                        _required: true
                        index: 36
                        elements:
                          id:
                            pattern: {type: String, value: check-update-eicr}
                            mustSupport: true
                            index: 37
                          code:
                            pattern:
                              type: CodeableConcept
                              value:
                                coding:
                                - {code: evaluate-condition, system: 'http://hl7.org/fhir/us/ecr/CodeSystem/us-ph-plandefinition-actions'}
                            index: 38
                          condition:
                            index: 39
                            elements:
                              kind:
                                pattern: {type: Code, value: applicability}
                                index: 40
                              expression:
                                mustSupport: true
                                index: 41
                                elements:
                                  language:
                                    pattern: {type: Code, value: text/fhirpath}
                                    index: 42
                            required: [expression]
                          relatedAction:
                            index: 43
                            elements:
                              actionId:
                                pattern: {type: Id, value: report-eicr}
                                index: 44
                              relationship:
                                pattern: {type: Code, value: before-start}
                                index: 45
                        required: [id, code]
                    encounterInProgress:
                      match: {id: is-encounter-in-progress}
                      schema:
                        type: BackboneElement
                        mustSupport: true
                        _required: true
                        index: 46
                        elements:
                          id:
                            pattern: {type: String, value: is-encounter-in-progress}
                            mustSupport: true
                            index: 47
                          code:
                            pattern:
                              type: CodeableConcept
                              value:
                                coding:
                                - {code: evaluate-condition, system: 'http://hl7.org/fhir/us/ecr/CodeSystem/us-ph-plandefinition-actions'}
                            index: 48
                          condition:
                            index: 49
                            elements:
                              kind:
                                pattern: {type: Code, value: applicability}
                                index: 50
                              expression:
                                mustSupport: true
                                index: 51
                                elements:
                                  language:
                                    pattern: {type: Code, value: text/fhirpath}
                                    index: 52
                            required: [expression]
                          relatedAction:
                            index: 53
                            elements:
                              actionId:
                                pattern: {type: Id, value: check-reportable}
                                index: 54
                              relationship:
                                pattern: {type: Code, value: before-start}
                                index: 55
                              offsetDuration: {type: Duration, index: 56}
                        required: [id, code]
            required: [id, code]
        reportEicr:
          match: {id: report-eicr}
          schema:
            _required: true
            index: 57
            elements:
              id:
                pattern: {type: String, value: report-eicr}
                mustSupport: true
                index: 58
              description:
                pattern: {type: String, value: 'This action represents the creation, validation and submission of the eICR.'}
                index: 59
              code:
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: execute-reporting-workflow, system: 'http://hl7.org/fhir/us/ecr/CodeSystem/us-ph-plandefinition-actions'}
                index: 60
              action:
                mustSupport: true
                array: true
                min: 3
                index: 61
                slicing:
                  rules: open
                  ordered: true
                  discriminator:
                  - {path: id, type: value}
                  min: 3
                  slices:
                    createEicr:
                      match: {id: create-eicr}
                      schema:
                        _required: true
                        index: 62
                        elements:
                          id:
                            pattern: {type: String, value: create-eicr}
                            mustSupport: true
                            index: 63
                          description:
                            pattern: {type: String, value: This action represents the creation of the eICR.}
                            index: 64
                          code:
                            pattern:
                              type: CodeableConcept
                              value:
                                coding:
                                - {code: create-report, system: 'http://hl7.org/fhir/us/ecr/CodeSystem/us-ph-plandefinition-actions'}
                            index: 65
                        required: [id]
                    validateEicr:
                      match: {id: validate-eicr}
                      schema:
                        _required: true
                        index: 66
                        elements:
                          id:
                            pattern: {type: String, value: validate-eicr}
                            mustSupport: true
                            index: 67
                          description:
                            pattern: {type: String, value: This action represents the validation of the eICR.}
                            index: 68
                          code:
                            pattern:
                              type: CodeableConcept
                              value:
                                coding:
                                - {code: validate-report, system: 'http://hl7.org/fhir/us/ecr/CodeSystem/us-ph-plandefinition-actions'}
                            index: 69
                        required: [id]
                    routeAndSendEicr:
                      match: {id: route-and-send-eicr}
                      schema:
                        short: Route and send eICR
                        _required: true
                        index: 70
                        elements:
                          id:
                            pattern: {type: String, value: route-and-send-eicr}
                            mustSupport: true
                            index: 71
                          description:
                            short: Description of the route and send action.
                            pattern: {type: String, value: This action represents the routing and sending of the eICR.}
                            mustSupport: true
                            index: 72
                          textEquivalent:
                            pattern: {type: String, value: Route and send eICR}
                            mustSupport: true
                            index: 73
                          code:
                            pattern:
                              type: CodeableConcept
                              value:
                                coding:
                                - {code: submit-report, system: 'http://hl7.org/fhir/us/ecr/CodeSystem/us-ph-plandefinition-actions'}
                            index: 74
                        required: [textEquivalent, id, description]
            required: [id, code]
package_version: 2.0.0
class: profile
kind: resource
url: http://hl7.org/fhir/us/ecr/StructureDefinition/ersd-plandefinition
base: http://hl7.org/fhir/us/ecr/StructureDefinition/us-ph-plandefinition
version: 2.0.0