Uploaded image for project: 'FHIR Specification Feedback'
  1. FHIR Specification Feedback
  2. FHIR-38788

Ensure negation profiles are disjoint

    XMLWordPrintableJSON

Details

    • Icon: Change Request Change Request
    • Resolution: Persuasive
    • Icon: Medium Medium
    • US QI Core (FHIR)
    • current
    • Clinical Quality Information
    • QICore Device Not Requested
      QICore Immunization Not Done
      QICore Medication Not Requested
      QICore Procedure Not Done
      QICore Service Not Requested
      QICoreMedicationAdministrationNotDone [deprecated]
      QICoreMedicationDispenseNotDone [deprecated]
      QICoreObservationNotDone [deprecated]
      QICoreTaskNotDone [deprecated]
    • Hide

      Consistent with resolution to FHIR-38850, Make following changes (removing the items lined out and make changes highlighted in red):
      CommunicationNotDone​: Fixed Value: not-done​
      Communication: event-status​ - preparation | in-progress | not-done​ | on-hold​ | stopped​ | completed | entered-in-error​ | unknown​
      DeviceNotRequested​: Fixed Value: completed​
      DeviceRequest: DeviceRequest profile needs an invariant to say "if doNotPerform is present, it SHALL be false"

      ImmunizationNotDone​: Fixed Value: not-done​
      Immunization: immunization-status - completed​ | entered-in-error​ | not-done​
      MedicationAdministrationNotDone​: Fixed Value: not-done​
      MedicationAdminstration: medication-admin-status​ - in-progress​ | not-done​ | on-hold​ | completed​ | entered-in-error​ | stopped​ | unknown​
      MedicationDispenseDeclined: Fixed value: declined
      MedicationDispense: medication-dispense-status preparation​ | in-progress​ | cancelled​ | on-hold​ | completed​ | entered-in-error​ | stopped​ |{}{-} declined​- | unknown
      MedicationNotRequested: Fixed value: completed
      MedicationRequest: MedicationRequest profile needs an invariant to say "if doNotPerform is present, it SHALL be false"

      ObservationCancelled: Fixed value = cancelled
      Observation: observation-status - registered​ | preliminary​ | final​ | amended​ | corrected​ |- cancelled​ |- entered-in-error​ | unknown​
      ProcedureNotDone: Fixed value = not-done
      Procedure: event-status - preparation | in-progress | not-done​ | on-hold​ | stopped​ | completed | entered-in-error​ | unknown​
      ServiceNotRequested: Fixed value = [Note, ServiceNotRequested.status has no constraint, change to Fixed value = completed - to match MedicationRequest]
      ServiceRequest ServiceRequest profile needs an invariant to say "if doNotPerform is present, it SHALL be false"

      TaskRejected: Fixed value = rejected
      Task: task-status - Draft​ | Requested​ | Received​ | Accepted​ |Rejected​-- | Ready​ | Cancelled​ | In-progress​ | On-hold​ | Failed​ | Completed​ | Entered-in-error

      Show
      Consistent with resolution to FHIR-38850 , Make following changes (removing the items lined out and make changes highlighted in red ): CommunicationNotDone​: Fixed Value: not-done​ Communication: event-status​ - preparation | in-progress | ​ not-done​ | on-hold​ | stopped​ | completed | entered-in-error​ | unknown​ DeviceNotRequested​: Fixed Value: completed​ DeviceRequest: DeviceRequest profile needs an invariant to say "if doNotPerform is present, it SHALL be false" ImmunizationNotDone​: Fixed Value: not-done​ Immunization: immunization-status - completed​ | entered-in-error​ | not-done​ MedicationAdministrationNotDone​: Fixed Value: not-done​ MedicationAdminstration: medication-admin-status​ - in-progress​ | not-done​ | on-hold​ | completed​ | entered-in-error​ | stopped​ | unknown​ MedicationDispenseDeclined : Fixed value: declined MedicationDispense: medication-dispense-status preparation​ | in-progress​ | cancelled​ | on-hold​ | completed​ | entered-in-error​ | stopped​ |{ } {-} declined​ - | unknown MedicationNotRequested: Fixed value: completed MedicationRequest: MedicationRequest profile needs an invariant to say "if doNotPerform is present, it SHALL be false" ObservationCancelled : Fixed value = cancelled Observation: observation-status - registered​ | preliminary​ | final​ | amended​ | corrected​ |- cancelled​ |- entered-in-error​ | unknown​ ProcedureNotDone: Fixed value = not-done Procedure: event-status - preparation | in-progress | ​ not-done​ | on-hold​ | stopped​ | completed | entered-in-error​ | unknown​ ServiceNotRequested: Fixed value = [Note, ServiceNotRequested.status has no constraint, change to Fixed value = completed - to match MedicationRequest] ServiceRequest ServiceRequest profile needs an invariant to say "if doNotPerform is present, it SHALL be false" TaskRejected : Fixed value = rejected Task: task-status - Draft​ | Requested​ | Received​ | Accepted​ | – Rejected​ -- | Ready​ | Cancelled​ | In-progress​ | On-hold​ | Failed​ | Completed​ | Entered-in-error
    • Bryn Rhodes/ Floyd Eisenberg: 17-0-0
    • Correction
    • Non-compatible

    Description

      The negation profiles define the required elements for resources representing negative events. However, the corresponding positive profiles don't always state the positive requirements, resulting in the possibility that the same instance could conform to both the positive and negative profiles.

      Review each negation profile and ensure that it's corresponding positive profile is disjoint for all possible instances of a resource.

      Attachments

        Activity

          People

            bryn.rhodes Bryn Rhodes
            bryn.rhodes Bryn Rhodes
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: