davinci_crd_test_kit 0.14.0 → 0.14.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. checksums.yaml +4 -4
  2. data/config/presets/inferno_crd_client_suite_v221.json.erb +64 -0
  3. data/config/presets/inferno_crd_server_suite_v221.json.erb +2 -2
  4. data/lib/davinci_crd_test_kit/client/endpoints/hook_request_endpoint.rb +12 -6
  5. data/lib/davinci_crd_test_kit/client/endpoints/mocked_card_responses/external_reference.json +1 -1
  6. data/lib/davinci_crd_test_kit/client/endpoints/mocked_card_responses/launch_smart_app.json +0 -7
  7. data/lib/davinci_crd_test_kit/client/v2.2.1/client_appointment_book_group.rb +8 -1
  8. data/lib/davinci_crd_test_kit/client/v2.2.1/client_encounter_discharge_group.rb +7 -1
  9. data/lib/davinci_crd_test_kit/client/v2.2.1/client_encounter_start_group.rb +7 -1
  10. data/lib/davinci_crd_test_kit/client/v2.2.1/client_hooks_group.rb +20 -0
  11. data/lib/davinci_crd_test_kit/client/v2.2.1/client_long_running_hook_group.rb +1 -1
  12. data/lib/davinci_crd_test_kit/client/v2.2.1/client_order_dispatch_group.rb +7 -1
  13. data/lib/davinci_crd_test_kit/client/v2.2.1/client_order_select_group.rb +7 -1
  14. data/lib/davinci_crd_test_kit/client/v2.2.1/client_order_sign_group.rb +7 -1
  15. data/lib/davinci_crd_test_kit/client/v2.2.1/client_registration_group.rb +6 -0
  16. data/lib/davinci_crd_test_kit/client/v2.2.1/crd_client_suite.rb +5 -0
  17. data/lib/davinci_crd_test_kit/client/v2.2.1/long_running/client_skip_long_running_attestation_test.rb +10 -5
  18. data/lib/davinci_crd_test_kit/client/v2.2.1/registration/client_service_registration_attestation_test.rb +2 -1
  19. data/lib/davinci_crd_test_kit/client/v2.2.1/verify_request/hook_request_prefetch_complete_test.rb +6 -0
  20. data/lib/davinci_crd_test_kit/client/v2.2.1/verify_response/client_display_cards_attest.rb +2 -1
  21. data/lib/davinci_crd_test_kit/cross_suite/cards_identification.rb +9 -0
  22. data/lib/davinci_crd_test_kit/cross_suite/prefetch_completeness_checker.rb +25 -11
  23. data/lib/davinci_crd_test_kit/cross_suite/requests_logical_model_validation.rb +2 -1
  24. data/lib/davinci_crd_test_kit/cross_suite/response_logical_model_validation.rb +164 -3
  25. data/lib/davinci_crd_test_kit/cross_suite/tags.rb +4 -0
  26. data/lib/davinci_crd_test_kit/requirements/generated/crd_server_v221_requirements_coverage.csv +38 -38
  27. data/lib/davinci_crd_test_kit/server/jobs/invoke_hook.rb +3 -3
  28. data/lib/davinci_crd_test_kit/server/jobs/invoke_hook_no_special_requests.rb +17 -0
  29. data/lib/davinci_crd_test_kit/server/jobs/invoke_hook_with_bad_auth.rb +14 -0
  30. data/lib/davinci_crd_test_kit/server/server_abstract_invoke_hook_test.rb +24 -6
  31. data/lib/davinci_crd_test_kit/server/server_hook_helper.rb +2 -2
  32. data/lib/davinci_crd_test_kit/server/v2.2.1/crd_server_suite.rb +3 -0
  33. data/lib/davinci_crd_test_kit/server/v2.2.1/discovery/discovery_standard_prefetch_expressions_test.rb +166 -0
  34. data/lib/davinci_crd_test_kit/server/v2.2.1/interaction/server_invoke_hook_single_request_test.rb +22 -0
  35. data/lib/davinci_crd_test_kit/server/v2.2.1/server_appointment_book_group.rb +10 -102
  36. data/lib/davinci_crd_test_kit/server/v2.2.1/server_demonstrate_hook_response_group.rb +1 -0
  37. data/lib/davinci_crd_test_kit/server/v2.2.1/server_discovery_group.rb +2 -0
  38. data/lib/davinci_crd_test_kit/server/v2.2.1/server_encounter_discharge_group.rb +10 -97
  39. data/lib/davinci_crd_test_kit/server/v2.2.1/server_encounter_start_group.rb +10 -97
  40. data/lib/davinci_crd_test_kit/server/v2.2.1/server_order_dispatch_group.rb +10 -103
  41. data/lib/davinci_crd_test_kit/server/v2.2.1/server_order_select_group.rb +12 -116
  42. data/lib/davinci_crd_test_kit/server/v2.2.1/server_order_sign_group.rb +12 -121
  43. data/lib/davinci_crd_test_kit/server/v2.2.1/specific_coverage_response_group.rb +23 -0
  44. data/lib/davinci_crd_test_kit/server/v2.2.1/specific_coverage_responses/coverage_info_reason_test.rb +108 -0
  45. data/lib/davinci_crd_test_kit/server/v2.2.1/specific_coverage_responses/coverage_not_found_group.rb +116 -0
  46. data/lib/davinci_crd_test_kit/server/v2.2.1/specific_coverage_responses/no_active_coverage_group.rb +115 -0
  47. data/lib/davinci_crd_test_kit/server/v2.2.1/specific_coverage_responses/no_member_found_group.rb +117 -0
  48. data/lib/davinci_crd_test_kit/server/v2.2.1/specific_coverage_responses/technical_issues_group.rb +121 -0
  49. data/lib/davinci_crd_test_kit/server/v2.2.1/specific_coverage_responses/technical_issues_invoke_test.rb +22 -0
  50. data/lib/davinci_crd_test_kit/server/v2.2.1/verify_request/service_request_context_validation_test.rb +1 -0
  51. data/lib/davinci_crd_test_kit/server/v2.2.1/verify_request/service_request_optional_fields_validation_test.rb +1 -0
  52. data/lib/davinci_crd_test_kit/server/v2.2.1/verify_request/service_request_required_fields_validation_test.rb +1 -0
  53. data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/additional_orders_validation_test.rb +78 -35
  54. data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/coverage_information_card_absence_test.rb +76 -0
  55. data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/coverage_information_system_action_validation_test.rb +70 -124
  56. data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/create_or_update_coverage_info_response_validation_test.rb +83 -39
  57. data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/external_reference_card_validation_test.rb +59 -17
  58. data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/form_completion_response_validation_test.rb +80 -45
  59. data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/hook_request_resource_resolution.rb +37 -0
  60. data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/instructions_card_received_test.rb +57 -6
  61. data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/launch_smart_app_card_validation_test.rb +56 -17
  62. data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/propose_alternate_request_card_validation_test.rb +52 -25
  63. data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/service_response_validation_test.rb +17 -51
  64. data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/unknown_cds_hooks_elements_test.rb +1 -1
  65. data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/unknown_configuration_test.rb +1 -1
  66. data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/unknown_context_test.rb +1 -1
  67. data/lib/davinci_crd_test_kit/version.rb +2 -2
  68. metadata +18 -8
  69. data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/card_optional_fields_validation_test.rb +0 -57
  70. data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/coverage_information_system_action_received_test.rb +0 -65
@@ -22,11 +22,11 @@ hl7.fhir.us.davinci-crd_2.2.1,dev-7,https://hl7.org/fhir/us/davinci-crd/2.2.1/en
22
22
  hl7.fhir.us.davinci-crd_2.2.1,dev-8,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/deviations.html#ci-c-dev-8,"Configuration codes, names, and descriptions **SHALL** be unique within a [CDS Service](http://cds-hooks.hl7.org/2026Jan/index.html#response) definition.",SHALL,CRD Server,false,,,1.04,crd_server_v221-crd_v221_server_discovery_group-crd_v221_discovery_configuration
23
23
  hl7.fhir.us.davinci-crd_2.2.1,dev-9,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/deviations.html#ci-c-dev-9,"Configuration codes, names, and descriptions **SHOULD** be consistent across different hooks supported by the same payer when dealing with the same types of configuration options.",SHOULD,CRD Server,false,,,"",""
24
24
  hl7.fhir.us.davinci-crd_2.2.1,dev-10,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/deviations.html#ci-c-dev-10,CRD servers providing more than one type of coverage requirement information/guidance **SHOULD** expose configuration options allowing clients to dynamically control what information is returned by the service.,SHOULD,CRD Server,false,,,"",""
25
- hl7.fhir.us.davinci-crd_2.2.1,dev-14,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/deviations.html#ci-c-dev-14,CRD Servers **SHALL** behave in the manner prescribed by any supported configuration information received from the CRD Client.,SHALL,CRD Server,false,,,"3.1.3.11, 3.2.3.10, 3.3.3.10, 3.4.3.12, 3.5.3.11, 3.6.3.13","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_coverage_info_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_coverage_info_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_coverage_info_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_coverage_info_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_coverage_info_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_coverage_info_configuration"
25
+ hl7.fhir.us.davinci-crd_2.2.1,dev-14,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/deviations.html#ci-c-dev-14,CRD Servers **SHALL** behave in the manner prescribed by any supported configuration information received from the CRD Client.,SHALL,CRD Server,false,,,"3.1.3.10, 3.2.3.09, 3.3.3.09, 3.4.3.11, 3.5.3.10, 3.6.3.12","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_coverage_info_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_coverage_info_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_coverage_info_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_coverage_info_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_coverage_info_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_coverage_info_configuration"
26
26
  hl7.fhir.us.davinci-crd_2.2.1,dev-15,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/deviations.html#ci-c-dev-15,CRD Servers **SHALL NOT** require the inclusion of configuration information in a hook call (i.e. no hook invocation is permitted to fail because configuration information was not included).,SHALL NOT,CRD Server,false,,,3.7.04,crd_server_v221-crd_v221_server_hooks-crd_v221_server_required_card_response_validation-verify_response_without_configuration
27
- hl7.fhir.us.davinci-crd_2.2.1,dev-17,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/deviations.html#ci-c-dev-17,CRD Servers **SHALL** ignore unsupported configuration information.,SHALL,CRD Server,false,,,"3.1.3.12, 3.2.3.11, 3.3.3.11, 3.4.3.13, 3.5.3.12, 3.6.3.14","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_unknown_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_unknown_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_unknown_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_unknown_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_unknown_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_unknown_configuration"
27
+ hl7.fhir.us.davinci-crd_2.2.1,dev-17,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/deviations.html#ci-c-dev-17,CRD Servers **SHALL** ignore unsupported configuration information.,SHALL,CRD Server,false,,,"3.1.3.11, 3.2.3.10, 3.3.3.10, 3.4.3.12, 3.5.3.11, 3.6.3.13","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_unknown_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_unknown_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_unknown_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_unknown_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_unknown_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_unknown_configuration"
28
28
  hl7.fhir.us.davinci-crd_2.2.1,dev-19,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/deviations.html#ci-c-dev-19,"When included with a Task, the creation of the Questionnaire needs to be conditional - it **SHOULD** only occur if that specific Questionnaire version does not already exist",SHOULD,CRD Server,false,,,"",""
29
- hl7.fhir.us.davinci-crd_2.2.1,dev-20,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/deviations.html#ci-c-dev-20,the CRD server **SHALL** query to determine if the client has a copy of the Questionnaire before sending the request.,SHALL,CRD Server,false,,,"3.1.3.09, 3.2.3.08, 3.3.3.08, 3.4.3.10, 3.5.3.09, 3.6.3.11","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_request_form_completion_response_validation"
29
+ hl7.fhir.us.davinci-crd_2.2.1,dev-20,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/deviations.html#ci-c-dev-20,the CRD server **SHALL** query to determine if the client has a copy of the Questionnaire before sending the request.,SHALL,CRD Server,false,,,"3.1.3.08, 3.2.3.07, 3.3.3.07, 3.4.3.09, 3.5.3.08, 3.6.3.10","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_request_form_completion_response_validation"
30
30
  hl7.fhir.us.davinci-crd_2.2.1,dev-24,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/deviations.html#ci-c-dev-24,"If a hook service is invoked on a collection of resources, all cards returned that are specific to only a subset of the resources passed as context **SHALL** disambiguate in the `detail` element which resources they are associated with in a human-friendly way.",SHALL,CRD Server,true,,,"",""
31
31
  hl7.fhir.us.davinci-crd_2.2.1,dev-25,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/deviations.html#ci-c-dev-25,"As well, cards **SHOULD** include the associated-resource extension to allow computable linkage.",SHOULD,CRD Server,false,,,"",""
32
32
  hl7.fhir.us.davinci-crd_2.2.1,found-1,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/foundation.html#ci-c-found-1,"CRD servers and CRD clients **MAY** mutually agree to support additional hooks, additional card patterns, additional resources, additional extensions, etc. not found in this specification.",MAY,"CRD Client,CRD Server",false,,,"",""
@@ -43,9 +43,9 @@ hl7.fhir.us.davinci-crd_2.2.1,found-24,https://hl7.org/fhir/us/davinci-crd/2.2.1
43
43
  hl7.fhir.us.davinci-crd_2.2.1,found-26,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/foundation.html#ci-c-found-26,"They **MAY** include more and/or less prefetch requests than described in 'standard' prefetch section below, based on which data is desired.",MAY,CRD Server,false,,,"",""
44
44
  hl7.fhir.us.davinci-crd_2.2.1,found-27,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/foundation.html#ci-c-found-27,Prefetch requests **SHOULD** only include information that is always expected to be needed for each hook invocation.,SHOULD,CRD Server,false,,,"",""
45
45
  hl7.fhir.us.davinci-crd_2.2.1,found-28,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/foundation.html#ci-c-found-28,"When information is only needed for certain invocations of the hook (e.g., for specific types of medications or services), that information **SHOULD** only be retrieved by query using the provided token, not requested universally via prefetch.",SHOULD,CRD Server,true,,,"",""
46
- hl7.fhir.us.davinci-crd_2.2.1,found-29,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/foundation.html#ci-c-found-29,Servers **SHALL** use prefetch expressions in the manner described below if those data elements are relevant to their coverage determination or other decision support.,SHALL,CRD Server,true,,,"",""
46
+ hl7.fhir.us.davinci-crd_2.2.1,found-29,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/foundation.html#ci-c-found-29,Servers **SHALL** use prefetch expressions in the manner described below if those data elements are relevant to their coverage determination or other decision support.,SHALL,CRD Server,true,,,1.06,crd_server_v221-crd_v221_server_discovery_group-crd_v221_discovery_standard_prefetch_expressions
47
47
  hl7.fhir.us.davinci-crd_2.2.1,found-32,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/foundation.html#ci-c-found-32,HTTP 412 responses **SHALL NOT** be used in situations where the prefetch was provided or the query was successfully performed but the record in question did not have all the data the payer might have needed/desired.,SHALL NOT,CRD Server,false,,,"",""
48
- hl7.fhir.us.davinci-crd_2.2.1,found-33,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/foundation.html#ci-c-found-33,CRD clients and servers **SHALL** ignore unexpected elements when processing instances.,SHALL,"CRD Client,CRD Server",false,,,"3.1.3.14, 3.2.3.13, 3.3.3.13, 3.4.3.15, 3.5.3.14, 3.6.3.16","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_unknown_cds_hooks_elements, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_unknown_cds_hooks_elements, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_unknown_cds_hooks_elements, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_unknown_cds_hooks_elements, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_unknown_cds_hooks_elements, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_unknown_cds_hooks_elements"
48
+ hl7.fhir.us.davinci-crd_2.2.1,found-33,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/foundation.html#ci-c-found-33,CRD clients and servers **SHALL** ignore unexpected elements when processing instances.,SHALL,"CRD Client,CRD Server",false,,,"3.1.3.13, 3.2.3.12, 3.3.3.12, 3.4.3.14, 3.5.3.13, 3.6.3.15","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_unknown_cds_hooks_elements, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_unknown_cds_hooks_elements, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_unknown_cds_hooks_elements, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_unknown_cds_hooks_elements, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_unknown_cds_hooks_elements, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_unknown_cds_hooks_elements"
49
49
  hl7.fhir.us.davinci-crd_2.2.1,found-34,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/foundation.html#ci-c-found-34,CRD servers **SHALL** provide what coverage requirements they can based on the information available.,SHALL,CRD Server,false,,,"",""
50
50
  hl7.fhir.us.davinci-crd_2.2.1,found-37,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/foundation.html#ci-c-found-37,"Therefore, in addition to any logging performed for security purposes, both CRD clients and CRD servers **SHALL** retain logs of all CRD-related hook invocations and their responses for access in the event of a dispute.",SHALL,"CRD Client,CRD Server",false,,,"",""
51
51
  hl7.fhir.us.davinci-crd_2.2.1,found-40,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/foundation.html#ci-c-found-40,Conformant systems **SHOULD** omit non-significant whitespace in transmitted instances for performance reasons.,SHOULD,"CRD Client,CRD Server",false,,,"",""
@@ -56,19 +56,19 @@ hl7.fhir.us.davinci-crd_2.2.1,hook-9,https://hl7.org/fhir/us/davinci-crd/2.2.1/e
56
56
  hl7.fhir.us.davinci-crd_2.2.1,hook-10,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/hooks.html#ci-c-hook-10,"If an issue is identified at a layer of the CRD Server that is FHIR aware (e.g. not a ""wrong endpoint"" or ""not authorized"" issue), the server **SHALL** provide an OperationOutcome for internal issue tracking by the client system.",SHALL,CRD Server,true,,,"",""
57
57
  hl7.fhir.us.davinci-crd_2.2.1,hook-13,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/hooks.html#ci-c-hook-13,CRD Servers SHALL use the 400 and 422 codes in a manner consistent with the FHIR RESTful Create Action,SHALL,CRD Server,false,,,"",""
58
58
  hl7.fhir.us.davinci-crd_2.2.1,hook-14,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/hooks.html#ci-c-hook-14,"If a CRD server's validation process does not differentiate between validation issues stemming from the JSON syntax validation, FHIR core validation, CDS Hooks validation, and CRD-specific validation, it **MAY** treat all validation rules as 400 errors.",MAY,CRD Server,true,,,"",""
59
- hl7.fhir.us.davinci-crd_2.2.1,hook-16,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/hooks.html#ci-c-hook-16,"Unless reporting an error or coverage information already exists and there is no new information, CRD Servers **SHALL** include a Coverage Information system action in the response for 'primary' hooks, even if the response indicates that further information is needed or that the level of detail provided is insufficient to determine coverage.",SHALL,CRD Server,false,,,"3.1.3.08, 3.5.3.08, 3.6.3.08","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_all_responses_include_coverage_information, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_order_dispatch_coverage_information, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_all_responses_include_coverage_information"
59
+ hl7.fhir.us.davinci-crd_2.2.1,hook-16,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/hooks.html#ci-c-hook-16,"Unless reporting an error or coverage information already exists and there is no new information, CRD Servers **SHALL** include a Coverage Information system action in the response for 'primary' hooks, even if the response indicates that further information is needed or that the level of detail provided is insufficient to determine coverage.",SHALL,CRD Server,false,,,"3.1.3.06, 3.5.3.06, 3.6.3.06","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_all_responses_include_coverage_information, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_order_dispatch_coverage_information, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_all_responses_include_coverage_information"
60
60
  hl7.fhir.us.davinci-crd_2.2.1,hook-19,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/hooks.html#ci-c-hook-19,"If Coverage Information is returned for these hooks, it **SHALL NOT** include messages indicating a need for [clinical](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/ValueSet-AdditionalDocumentation.html) or [administrative](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/ValueSet-AdditionalDocumentation.html) information, as such information is expected to be made available later in the process and therefore such guidance is not useful.",SHALL NOT,CRD Server,true,,,"",""
61
61
  hl7.fhir.us.davinci-crd_2.2.1,hook-22,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/hooks.html#ci-c-hook-22,CRD servers **SHALL NOT** depend on data not covered by the identified profiles in order to return valid coverage-information responses.,SHALL NOT,CRD Server,false,,,3.7.06,crd_server_v221-crd_v221_server_hooks-crd_v221_server_required_card_response_validation-crd_v221_service_request_no_custom_extensions
62
- hl7.fhir.us.davinci-crd_2.2.1,hook-23,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/hooks.html#ci-c-hook-23,CRD Servers **SHALL** handle unrecognized context elements by ignoring them.,SHALL,CRD Server,false,,,"3.1.3.13, 3.2.3.12, 3.3.3.12, 3.4.3.14, 3.5.3.13, 3.6.3.15","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_unknown_context, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_unknown_context, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_unknown_context, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_unknown_context, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_unknown_context, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_unknown_context"
62
+ hl7.fhir.us.davinci-crd_2.2.1,hook-23,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/hooks.html#ci-c-hook-23,CRD Servers **SHALL** handle unrecognized context elements by ignoring them.,SHALL,CRD Server,false,,,"3.1.3.12, 3.2.3.11, 3.3.3.11, 3.4.3.13, 3.5.3.12, 3.6.3.14","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_unknown_context, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_unknown_context, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_unknown_context, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_unknown_context, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_unknown_context, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_unknown_context"
63
63
  hl7.fhir.us.davinci-crd_2.2.1,hook-25,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/hooks.html#ci-c-hook-25,CRD Servers **MAY** use the appointment-book hook as a basis for associating a patient with a particular practitioner from a payer attribution perspective.,MAY,CRD Server,false,,,"",""
64
- hl7.fhir.us.davinci-crd_2.2.1,hook-26,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/hooks.html#ci-c-hook-26,"CRD clients and servers **SHALL**, at minimum, support returning and processing the [Coverage Information](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-ext-coverage-information.html) system action for all invocations of the appointment-book hook.",SHALL,"CRD Client,CRD Server",false,,,3.1.3.08,crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_all_responses_include_coverage_information
64
+ hl7.fhir.us.davinci-crd_2.2.1,hook-26,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/hooks.html#ci-c-hook-26,"CRD clients and servers **SHALL**, at minimum, support returning and processing the [Coverage Information](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-ext-coverage-information.html) system action for all invocations of the appointment-book hook.",SHALL,"CRD Client,CRD Server",false,,,3.1.3.06,crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_all_responses_include_coverage_information
65
65
  hl7.fhir.us.davinci-crd_2.2.1,hook-28,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/hooks.html#ci-c-hook-28,CRD Servers **MAY** use the encounter-start hook as a basis for associating a patient with a particular practitioner from a payer attribution perspective.,MAY,CRD Server,false,,,"",""
66
66
  hl7.fhir.us.davinci-crd_2.2.1,hook-30,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/hooks.html#ci-c-hook-30,"Coverage requirements **SHOULD** be limited only to those resources that are included in the `dispatchedOrders` context, though the content of other resources **SHOULD** also be considered before making recommendations about what additional actions are necessary.",SHOULD,CRD Server,false,,,"",""
67
67
  hl7.fhir.us.davinci-crd_2.2.1,hook-32,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/hooks.html#ci-c-hook-32,CRD Servers **MAY** use the order-dispatch hook as a basis for associating a patient with a particular practitioner from a payer attribution perspective.,MAY,CRD Server,false,,,"",""
68
- hl7.fhir.us.davinci-crd_2.2.1,hook-33,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/hooks.html#ci-c-hook-33,"CRD clients and servers **SHALL**, at minimum, support returning and processing the [Coverage Information](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-ext-coverage-information.html) system action for all invocations of the order-dispatch hook.",SHALL,"CRD Client,CRD Server",false,,,3.5.3.08,crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_order_dispatch_coverage_information
68
+ hl7.fhir.us.davinci-crd_2.2.1,hook-33,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/hooks.html#ci-c-hook-33,"CRD clients and servers **SHALL**, at minimum, support returning and processing the [Coverage Information](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-ext-coverage-information.html) system action for all invocations of the order-dispatch hook.",SHALL,"CRD Client,CRD Server",false,,,3.5.3.06,crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_order_dispatch_coverage_information
69
69
  hl7.fhir.us.davinci-crd_2.2.1,hook-34,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/hooks.html#ci-c-hook-34,"Coverage requirements **SHOULD** be limited only to those resources that are included in the `selections` context, though the content of other resources **SHOULD** also be considered before making recommendations about what additional actions are necessary.",SHOULD,CRD Server,false,,,"",""
70
70
  hl7.fhir.us.davinci-crd_2.2.1,hook-38,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/hooks.html#ci-c-hook-38,CRD Servers **MAY** use the order-sign hook as a basis for associating a patient with a particular practitioner from a payer attribution perspective.,MAY,CRD Server,false,,,"",""
71
- hl7.fhir.us.davinci-crd_2.2.1,hook-39,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/hooks.html#ci-c-hook-39,"CRD clients and servers **SHALL**, at minimum, support returning and processing the [Coverage Information](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-ext-coverage-information.html) system action for all invocations of the order-select hook.",SHALL,"CRD Client,CRD Server",false,,,3.6.3.08,crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_all_responses_include_coverage_information
71
+ hl7.fhir.us.davinci-crd_2.2.1,hook-39,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/hooks.html#ci-c-hook-39,"CRD clients and servers **SHALL**, at minimum, support returning and processing the [Coverage Information](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-ext-coverage-information.html) system action for all invocations of the order-select hook.",SHALL,"CRD Client,CRD Server",false,,,3.6.3.06,crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_all_responses_include_coverage_information
72
72
  hl7.fhir.us.davinci-crd_2.2.1,impl-2,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/implementation.html#ci-c-impl-2,CRD servers **SHOULD** strive to achieve a minimum of 3-9s availability for their services and strive to provide at least some level of useful response to CRD clients even if some of their back-end systems are unavailable.,SHOULD,CRD Server,false,,,"",""
73
73
  hl7.fhir.us.davinci-crd_2.2.1,impl-3,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/implementation.html#ci-c-impl-3,"Even if implemented using multiple components, there is still a requirement that the exchanges between the provider HIT (including any ePA coordinators) and the payer HIT (including any ePA coordinators) **SHALL** replicate all of the defined exchanges between provider and payer.",SHALL,"CRD Client,CRD Server",false,,,"",""
74
74
  hl7.fhir.us.davinci-crd_2.2.1,impl-5,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/implementation.html#ci-c-impl-5,"Where a CRD server has made inferences beyond what is explicit in the CRD request, the response **SHOULD** make clear what assumptions around billing codes, in/out-of-network, delivery location were made in providing the response.",SHOULD,CRD Server,false,,,"",""
@@ -77,9 +77,9 @@ hl7.fhir.us.davinci-crd_2.2.1,ops-1,https://hl7.org/fhir/us/davinci-crd/2.2.1/en
77
77
  hl7.fhir.us.davinci-crd_2.2.1,prof-15,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/ValueSet-coverageAssertionReasons.html#ci-c-prof-15,CRD servers **SHOULD** start sending the ActReason codes in parallel with the CRD-specific codes once they are available to ease transition in future releases when the CRD value set will be deprecated and eventually retired.,SHOULD,CRD Server,false,,,"",""
78
78
  hl7.fhir.us.davinci-crd_2.2.1,resp-1,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-1,"The `Card.indicator` **SHOULD** be populated from the perspective of the clinical decision maker, not the payer",SHOULD,CRD Server,false,,,"",""
79
79
  hl7.fhir.us.davinci-crd_2.2.1,resp-2,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-2,Most Coverage Requirements **SHOULD** be marked as 'info'.,SHOULD,CRD Server,false,,,"",""
80
- hl7.fhir.us.davinci-crd_2.2.1,resp-3,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-3,All `Card.suggestion` elements **SHALL** populate the Suggestion.uuid element.,SHALL,CRD Server,false,,,"3.1.3.02, 3.2.3.02, 3.3.3.02, 3.4.3.02, 3.5.3.02, 3.6.3.02","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_card_optional_fields_validation"
81
- hl7.fhir.us.davinci-crd_2.2.1,resp-4,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-4,"The `Card.source.label` **SHALL** be populated with an insurer name that the user and patient are likely to recognize (i.e., the responsible insurer on the patient's insurance card), including in situations where coverage recommendations are being returned by a benefits manager or intermediary operating the CRD server on behalf of the payer.",SHALL,CRD Server,false,,,"2.3.01, 3.1.3.01, 3.2.3.01, 3.3.3.01, 3.4.3.01, 3.5.3.01, 3.6.3.01","crd_server_v221-crd_v221_server_demonstrate_hook_response-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_service_response_validation"
82
- hl7.fhir.us.davinci-crd_2.2.1,resp-5,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-5,"`Card.source.topic` **SHALL** be populated, and has an [extensible](http://www.hl7.org/fhir/terminologies.html#extensible) binding to the ValueSet [CRD Response Types](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/ValueSet-cardType.html).",SHALL,CRD Server,false,,,"2.3.01, 3.1.3.01, 3.2.3.01, 3.3.3.01, 3.4.3.01, 3.5.3.01, 3.6.3.01","crd_server_v221-crd_v221_server_demonstrate_hook_response-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_service_response_validation"
80
+ hl7.fhir.us.davinci-crd_2.2.1,resp-3,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-3,All `Card.suggestion` elements **SHALL** populate the Suggestion.uuid element.,SHALL,CRD Server,false,,,"3.1.3.08, 3.1.3.09, 3.2.3.07, 3.2.3.08, 3.3.3.07, 3.3.3.08, 3.4.3.07, 3.4.3.08, 3.4.3.09, 3.4.3.10, 3.5.3.08, 3.5.3.09, 3.6.3.08, 3.6.3.09, 3.6.3.10, 3.6.3.11","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_create_or_update_coverage_info_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_create_or_update_coverage_info_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_create_or_update_coverage_info_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_propose_alternate_request_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_additional_orders_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_create_or_update_coverage_info_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_create_or_update_coverage_info_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_propose_alternate_request_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_additional_orders_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_create_or_update_coverage_info_response_validation"
81
+ hl7.fhir.us.davinci-crd_2.2.1,resp-4,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-4,"The `Card.source.label` **SHALL** be populated with an insurer name that the user and patient are likely to recognize (i.e., the responsible insurer on the patient's insurance card), including in situations where coverage recommendations are being returned by a benefits manager or intermediary operating the CRD server on behalf of the payer.",SHALL,CRD Server,false,,,"2.3.01, 3.1.3.01, 3.2.3.01, 3.3.3.01, 3.4.3.01, 3.5.3.01, 3.6.3.01, 4.1.3.01, 4.2.3.01, 4.3.3.01, 4.4.3.01","crd_server_v221-crd_v221_server_demonstrate_hook_response-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_technical_issues_group-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_no_member_found_group-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_coverage_not_found_group-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_no_active_coverage_group-Group03-crd_v221_service_response_validation"
82
+ hl7.fhir.us.davinci-crd_2.2.1,resp-5,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-5,"`Card.source.topic` **SHALL** be populated, and has an [extensible](http://www.hl7.org/fhir/terminologies.html#extensible) binding to the ValueSet [CRD Response Types](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/ValueSet-cardType.html).",SHALL,CRD Server,false,,,"2.3.01, 3.1.3.01, 3.2.3.01, 3.3.3.01, 3.4.3.01, 3.5.3.01, 3.6.3.01, 4.1.3.01, 4.2.3.01, 4.3.3.01, 4.4.3.01","crd_server_v221-crd_v221_server_demonstrate_hook_response-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_technical_issues_group-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_no_member_found_group-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_coverage_not_found_group-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_no_active_coverage_group-Group03-crd_v221_service_response_validation"
83
83
  hl7.fhir.us.davinci-crd_2.2.1,resp-6,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-6,`Card.summary` **SHOULD** provide actionable information.,SHOULD,CRD Server,false,,,"",""
84
84
  hl7.fhir.us.davinci-crd_2.2.1,resp-7,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-7,`Card.detail` and/or external links **SHOULD** only be provided when coverage recommendations cannot be clearly provided in the 140-character limit of `Card.summary`.,SHOULD,CRD Server,false,,,"",""
85
85
  hl7.fhir.us.davinci-crd_2.2.1,resp-8,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-8,"`Card.detail` **SHOULD** provide graduated information, with critical information being provided in the first paragraph and less critical information towards the end of the page.",SHOULD,CRD Server,false,,,"",""
@@ -87,55 +87,55 @@ hl7.fhir.us.davinci-crd_2.2.1,resp-9,https://hl7.org/fhir/us/davinci-crd/2.2.1/e
87
87
  hl7.fhir.us.davinci-crd_2.2.1,resp-10,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-10,"While links are permitted in the markdown content of `Card.detail`, support for this is not universal, so links **SHOULD** also be provided in `[Card.link](http://Card.link)`.",SHOULD,CRD Server,false,,,"",""
88
88
  hl7.fhir.us.davinci-crd_2.2.1,resp-11,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-11,"CRD client systems might not support all card capabilities, therefore card options **SHOULD** provide sufficient information for a user to perform record changes manually if automated support is not available.",SHOULD,CRD Server,false,,,"",""
89
89
  hl7.fhir.us.davinci-crd_2.2.1,resp-12,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-12,"Where [systemActions](http://cds-hooks.hl7.org/2026Jan/index.html#system-action) are used, CRD servers **SHOULD NOT** return equivalent information in a card for user display.",SHOULD NOT,CRD Server,true,,,"",""
90
- hl7.fhir.us.davinci-crd_2.2.1,resp-13,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-13,All CRD responses **SHALL** comply with the general profile found [here](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-CRDHooksResponseBase.html).,SHALL,CRD Server,false,,,"2.3.01, 3.1.3.01, 3.1.3.02, 3.2.3.01, 3.2.3.02, 3.3.3.01, 3.3.3.02, 3.4.3.01, 3.4.3.02, 3.5.3.01, 3.5.3.02, 3.6.3.01, 3.6.3.02","crd_server_v221-crd_v221_server_demonstrate_hook_response-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_card_optional_fields_validation"
90
+ hl7.fhir.us.davinci-crd_2.2.1,resp-13,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-13,All CRD responses **SHALL** comply with the general profile found [here](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-CRDHooksResponseBase.html).,SHALL,CRD Server,false,,,"2.3.01, 3.1.3.01, 3.2.3.01, 3.3.3.01, 3.4.3.01, 3.5.3.01, 3.6.3.01, 4.1.3.01, 4.2.3.01, 4.3.3.01, 4.4.3.01","crd_server_v221-crd_v221_server_demonstrate_hook_response-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_technical_issues_group-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_no_member_found_group-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_coverage_not_found_group-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_no_active_coverage_group-Group03-crd_v221_service_response_validation"
91
91
  hl7.fhir.us.davinci-crd_2.2.1,resp-14,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-14,Conformant CRD clients and services **SHALL** support the [Coverage Information](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/conformancedetails.html#coverage-information-response-type) response type.,SHALL,"CRD Client,CRD Server",false,,,3.7.01,crd_server_v221-crd_v221_server_hooks-crd_v221_server_required_card_response_validation-crd_v221_coverage_info_system_action_across_hooks_validation
92
92
  hl7.fhir.us.davinci-crd_2.2.1,resp-15,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-15,Conformant CRD clients and services **SHOULD** support the additional (non-coverage information) types defined by this guide.,SHOULD,"CRD Client,CRD Server",false,,,"",""
93
93
  hl7.fhir.us.davinci-crd_2.2.1,resp-16,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-16,CRD servers that provide decision support for domains outside of coverage and/or documentation requirements **SHOULD** take reasonable steps to check that the CRD client does not have the information within its store that would allow it to detect the issue itself.,SHOULD,CRD Server,true,,,"",""
94
94
  hl7.fhir.us.davinci-crd_2.2.1,resp-17,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-17,"CRD servers **SHALL NOT** use ""External Reference"" cards to direct users to a portal for the purpose of initiating prior authorization or determining coverage.",SHALL NOT,CRD Server,false,,,"",""
95
- hl7.fhir.us.davinci-crd_2.2.1,resp-18,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-18,The card **SHALL** have at least one `[Card.link](http://Card.link)`.,SHALL,CRD Server,false,,,"3.1.3.02, 3.2.3.02, 3.3.3.02, 3.4.3.02, 3.5.3.02, 3.6.3.02","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_card_optional_fields_validation"
96
- hl7.fhir.us.davinci-crd_2.2.1,resp-19,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-19,"The `Link.type` **SHALL** have a type of ""absolute"".",SHALL,CRD Server,false,,,"3.1.3.02, 3.2.3.02, 3.3.3.02, 3.4.3.02, 3.5.3.02, 3.6.3.02","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_card_optional_fields_validation"
95
+ hl7.fhir.us.davinci-crd_2.2.1,resp-18,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-18,The card **SHALL** have at least one `[Card.link](http://Card.link)`.,SHALL,CRD Server,false,,,"",""
96
+ hl7.fhir.us.davinci-crd_2.2.1,resp-19,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-19,"The `Link.type` **SHALL** have a type of ""absolute"".",SHALL,CRD Server,false,,,"3.1.3.02, 3.2.3.02, 3.3.3.02, 3.4.3.02, 3.5.3.02, 3.6.3.02","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_external_reference_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_external_reference_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_external_reference_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_external_reference_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_external_reference_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_external_reference_card_validation"
97
97
  hl7.fhir.us.davinci-crd_2.2.1,resp-20,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-20,"When reasonable, an ""External Reference"" card **SHOULD** contain a summary of the actionable information from the external reference in the `detail` element.",SHOULD,CRD Server,true,,,"",""
98
98
  hl7.fhir.us.davinci-crd_2.2.1,resp-21,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-21,"As much as technically possible, links provided **SHOULD** be 'deep' links that take the user to the specific place in the documentation relevant to the current hook context to minimize provider reading and navigation time.",SHOULD,CRD Server,true,,,"",""
99
- hl7.fhir.us.davinci-crd_2.2.1,resp-22,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-22,External Reference responses **SHALL** comply with the logical model profile found [here](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-CRDHooksResponse-externalReference.html).,SHALL,CRD Server,false,,,"2.3.01, 3.1.3.01, 3.1.3.02, 3.1.3.03, 3.2.3.01, 3.2.3.02, 3.2.3.03, 3.3.3.01, 3.3.3.02, 3.3.3.03, 3.4.3.01, 3.4.3.02, 3.4.3.03, 3.5.3.01, 3.5.3.02, 3.5.3.03, 3.6.3.01, 3.6.3.02, 3.6.3.03","crd_server_v221-crd_v221_server_demonstrate_hook_response-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_external_reference_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_external_reference_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_external_reference_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_external_reference_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_external_reference_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_card_optional_fields_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_external_reference_card_validation"
99
+ hl7.fhir.us.davinci-crd_2.2.1,resp-22,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-22,External Reference responses **SHALL** comply with the logical model profile found [here](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-CRDHooksResponse-externalReference.html).,SHALL,CRD Server,false,,,"3.1.3.02, 3.2.3.02, 3.3.3.02, 3.4.3.02, 3.5.3.02, 3.6.3.02","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_external_reference_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_external_reference_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_external_reference_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_external_reference_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_external_reference_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_external_reference_card_validation"
100
100
  hl7.fhir.us.davinci-crd_2.2.1,resp-23,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-23,CRD servers **SHALL NOT** use Instructions Response cards to direct users to a portal for the purpose of initiating prior authorization or determining coverage. Use the [Coverage Information](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/conformancedetails.html#coverage-information-response-type) response instead.,SHALL NOT,CRD Server,false,,,"",""
101
- hl7.fhir.us.davinci-crd_2.2.1,resp-24,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-24,Instructions responses **SHALL** comply with the logical model profile found [here](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-CRDHooksResponse-instructions.html).,SHALL,CRD Server,false,,,"2.3.01, 3.1.3.01, 3.1.3.05, 3.2.3.01, 3.2.3.05, 3.3.3.01, 3.3.3.05, 3.4.3.01, 3.4.3.05, 3.5.3.01, 3.5.3.05, 3.6.3.01, 3.6.3.05","crd_server_v221-crd_v221_server_demonstrate_hook_response-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_valid_instructions_card_received, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_valid_instructions_card_received, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_valid_instructions_card_received, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_valid_instructions_card_received, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_valid_instructions_card_received, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_valid_instructions_card_received"
102
- hl7.fhir.us.davinci-crd_2.2.1,resp-25,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-25,"Regardless of the content, this ""Coverage Information"" response type **SHALL NOT** use a card.",SHALL NOT,CRD Server,false,,,"3.1.3.07, 3.5.3.07, 3.6.3.07","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_coverage_info_system_action_validation"
103
- hl7.fhir.us.davinci-crd_2.2.1,resp-26,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-26,"CRD servers **SHALL** support supplying coverage information for all primary hooks: order-sign, order-dispatch, and appointment-book.",SHALL,CRD Server,false,,,"3.1.3.06, 3.5.3.06, 3.6.3.06","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_coverage_info_system_action_received, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_coverage_info_system_action_received, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_coverage_info_system_action_received"
101
+ hl7.fhir.us.davinci-crd_2.2.1,resp-24,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-24,Instructions responses **SHALL** comply with the logical model profile found [here](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-CRDHooksResponse-instructions.html).,SHALL,CRD Server,false,,,"3.1.3.04, 3.2.3.04, 3.3.3.04, 3.4.3.04, 3.5.3.04, 3.6.3.04","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_valid_instructions_card_received, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_valid_instructions_card_received, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_valid_instructions_card_received, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_valid_instructions_card_received, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_valid_instructions_card_received, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_valid_instructions_card_received"
102
+ hl7.fhir.us.davinci-crd_2.2.1,resp-25,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-25,"Regardless of the content, this ""Coverage Information"" response type **SHALL NOT** use a card.",SHALL NOT,CRD Server,false,,,"3.1.3.07, 3.2.3.06, 3.3.3.06, 3.4.3.06, 3.5.3.07, 3.6.3.07","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_coverage_information_card_absence, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_coverage_information_card_absence, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_coverage_information_card_absence, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_coverage_information_card_absence, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_coverage_information_card_absence, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_coverage_information_card_absence"
103
+ hl7.fhir.us.davinci-crd_2.2.1,resp-26,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-26,"CRD servers **SHALL** support supplying coverage information for all primary hooks: order-sign, order-dispatch, and appointment-book.",SHALL,CRD Server,false,,,"3.1.3.05, 3.2.3.05, 3.3.3.05, 3.4.3.05, 3.5.3.05, 3.6.3.05, 4.1.3.02, 4.2.3.02, 4.3.3.02, 4.4.3.02","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_technical_issues_group-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_no_member_found_group-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_coverage_not_found_group-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_no_active_coverage_group-Group03-crd_v221_coverage_info_system_action_validation"
104
104
  hl7.fhir.us.davinci-crd_2.2.1,resp-27,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-27,CRD servers **MAY** support supplying coverage information for all other (non-primary) hooks.,MAY,CRD Server,false,,,"",""
105
- hl7.fhir.us.davinci-crd_2.2.1,resp-28,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-28,CRD servers **SHALL** supply coverage information for all hooks where they support it unless the EHR sends a configuration option asking them not to.,SHALL,CRD Server,true,,,"3.1.3.08, 3.1.3.11, 3.2.3.10, 3.3.3.10, 3.4.3.12, 3.5.3.08, 3.5.3.11, 3.6.3.08, 3.6.3.13","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_all_responses_include_coverage_information, crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_coverage_info_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_coverage_info_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_coverage_info_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_coverage_info_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_order_dispatch_coverage_information, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_coverage_info_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_all_responses_include_coverage_information, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_coverage_info_configuration"
106
- hl7.fhir.us.davinci-crd_2.2.1,resp-29,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-29,"If coverage information is evaluated, a system action **SHALL** be returned for each in-scope request resource unless that request resource already has a coverage-information extension, and the CRD server has no new information to add.",SHALL,CRD Server,true,,,"3.1.3.08, 3.5.3.08, 3.6.3.08","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_all_responses_include_coverage_information, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_order_dispatch_coverage_information, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_all_responses_include_coverage_information"
105
+ hl7.fhir.us.davinci-crd_2.2.1,resp-28,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-28,CRD servers **SHALL** supply coverage information for all hooks where they support it unless the EHR sends a configuration option asking them not to.,SHALL,CRD Server,true,,,"3.1.3.06, 3.1.3.10, 3.2.3.09, 3.3.3.09, 3.4.3.11, 3.5.3.06, 3.5.3.10, 3.6.3.06, 3.6.3.12","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_all_responses_include_coverage_information, crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_coverage_info_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_coverage_info_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_coverage_info_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_coverage_info_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_order_dispatch_coverage_information, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_coverage_info_configuration, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_all_responses_include_coverage_information, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_coverage_info_configuration"
106
+ hl7.fhir.us.davinci-crd_2.2.1,resp-29,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-29,"If coverage information is evaluated, a system action **SHALL** be returned for each in-scope request resource unless that request resource already has a coverage-information extension, and the CRD server has no new information to add.",SHALL,CRD Server,true,,,"3.1.3.06, 3.5.3.06, 3.6.3.06","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_all_responses_include_coverage_information, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_order_dispatch_coverage_information, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_all_responses_include_coverage_information"
107
107
  hl7.fhir.us.davinci-crd_2.2.1,resp-30,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-30,Such qualifiers around when the coverage assertion is considered valid **SHALL** be included as part of the annotation.,SHALL,CRD Server,false,,,"",""
108
- hl7.fhir.us.davinci-crd_2.2.1,resp-32,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-32,"If multiple extension repetitions of the coverage-information extension are present, all repetitions referencing differing insurance (coverage-information.coverage) **SHALL** have distinct coverage-assertion-ids and satisfied-pa-ids, if present.",SHALL,CRD Server,true,,,"3.2.3.07, 3.3.3.07, 3.4.3.07","crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_coverage_info_system_action_validation"
108
+ hl7.fhir.us.davinci-crd_2.2.1,resp-32,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-32,"If multiple extension repetitions of the coverage-information extension are present, all repetitions referencing differing insurance (coverage-information.coverage) **SHALL** have distinct coverage-assertion-ids and satisfied-pa-ids, if present.",SHALL,CRD Server,true,,,"3.1.3.05, 3.2.3.05, 3.3.3.05, 3.4.3.05, 3.5.3.05, 3.6.3.05, 4.1.3.02, 4.2.3.02, 4.3.3.02, 4.4.3.02","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_technical_issues_group-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_no_member_found_group-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_coverage_not_found_group-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_no_active_coverage_group-Group03-crd_v221_coverage_info_system_action_validation"
109
109
  hl7.fhir.us.davinci-crd_2.2.1,resp-33,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-33,"Where multiple repetitions apply to the same coverage, they **MAY** have the same coverage-assertion-ids and satisfied-pa-ids (if present).",MAY,CRD Server,true,,,"",""
110
110
  hl7.fhir.us.davinci-crd_2.2.1,resp-35,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-35,"However, CRD servers **SHALL NOT** send a `systemAction` to update the order unless something is new or changed.",SHALL NOT,CRD Server,false,,,"",""
111
111
  hl7.fhir.us.davinci-crd_2.2.1,resp-36,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-36,CRD servers **SHOULD** take into account the previous decision in deciding how much processing is necessary before returning a response.,SHOULD,CRD Server,false,,,"",""
112
- hl7.fhir.us.davinci-crd_2.2.1,resp-37,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-37,"When returning a `systemAction` to update a resource with the ""Coverage Information"" response type, the resource content **SHALL NOT** make changes to any data elements other than adding or modifying coverage-information extensions.",SHALL NOT,CRD Server,true,,,"3.2.3.07, 3.3.3.07, 3.4.3.07","crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_coverage_info_system_action_validation"
112
+ hl7.fhir.us.davinci-crd_2.2.1,resp-37,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-37,"When returning a `systemAction` to update a resource with the ""Coverage Information"" response type, the resource content **SHALL NOT** make changes to any data elements other than adding or modifying coverage-information extensions.",SHALL NOT,CRD Server,true,,,"3.1.3.05, 3.2.3.05, 3.3.3.05, 3.4.3.05, 3.5.3.05, 3.6.3.05, 4.1.3.02, 4.2.3.02, 4.3.3.02, 4.4.3.02","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_technical_issues_group-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_no_member_found_group-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_coverage_not_found_group-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_no_active_coverage_group-Group03-crd_v221_coverage_info_system_action_validation"
113
113
  hl7.fhir.us.davinci-crd_2.2.1,resp-38,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-38,"If a *coverage-information* extension indicates the need to collect additional information (via 'doc-needed'), the extension **SHOULD** include a reference to the questionnaire(s) to be completed.",SHOULD,CRD Server,true,,,"",""
114
114
  hl7.fhir.us.davinci-crd_2.2.1,resp-39,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-39,CRD Servers **SHOULD** access information via the FHIR Rest API as part of CRD and only fall back to data capture via DTR when computable access is not possible.,SHOULD,CRD Server,false,,,"",""
115
115
  hl7.fhir.us.davinci-crd_2.2.1,resp-42,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-42,The CRD server **SHOULD** either prompt for the additional needed information using DTR or return a coverage-information extension indicating that the patient is not covered with a reason indicating the issue (e.g. the member could not be found/resolved).,SHOULD,CRD Server,false,,,"",""
116
- hl7.fhir.us.davinci-crd_2.2.1,resp-43,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-43,"If the CRD server encounters technical issues that prevent it from determining a coverage, prior auth, or documentation requirement response (e.g. due to internal communication issues, authorization failure, temporary unavailability of the CRD client's FHIR API, etc.), it **SHALL** indicate ""indeterminate"" in the appropriate element with a reason code of [technical](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/ValueSet-coverageAssertionReasons.html#logical-definition-cld) and additional details in the reason.text.",SHALL,CRD Server,true,,,"",""
117
- hl7.fhir.us.davinci-crd_2.2.1,resp-44,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-44,"If the CRD server is unable to resolve the patient for a reason other than technology failure, the Coverage Information **SHALL** indicate ""not-covered"" in 'coverage' with a reason code of [no-member-found](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/ValueSet-coverageAssertionReasons.html#logical-definition-cld).",SHALL,CRD Server,true,,,"",""
118
- hl7.fhir.us.davinci-crd_2.2.1,resp-45,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-45,"If the CRD server is able to resolve the patient but they do not have active coverage or cannot resolve to a single coverage, the Coverage Information **SHALL** indicate ""not-covered"" with a reason of either [coverage-not-found](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/ValueSet-coverageAssertionReasons.html#logical-definition-cld) or [no-active-coverage](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/ValueSet-coverageAssertionReasons.html#logical-definition-cld), as appropriate.",SHALL,CRD Server,true,,,"",""
119
- hl7.fhir.us.davinci-crd_2.2.1,resp-47,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-47,"When using the ""Coverage Information"" response type, the proposed order or appointment being submitted for update SHALL comply with the required profiles",SHALL,CRD Server,false,,,"3.2.3.07, 3.3.3.07, 3.4.3.07","crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_coverage_info_system_action_validation"
120
- hl7.fhir.us.davinci-crd_2.2.1,resp-48,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-48,"CRD clients and servers **SHALL** support the new CDS Hooks system action functionality to cause annotations to automatically be stored on the relevant request, appointment, etc. without any user intervention.",SHALL,"CRD Client,CRD Server",false,,,"3.2.3.07, 3.3.3.07, 3.4.3.07","crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_coverage_info_system_action_validation"
116
+ hl7.fhir.us.davinci-crd_2.2.1,resp-43,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-43,"If the CRD server encounters technical issues that prevent it from determining a coverage, prior auth, or documentation requirement response (e.g. due to internal communication issues, authorization failure, temporary unavailability of the CRD client's FHIR API, etc.), it **SHALL** indicate ""indeterminate"" in the appropriate element with a reason code of [technical](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/ValueSet-coverageAssertionReasons.html#logical-definition-cld) and additional details in the reason.text.",SHALL,CRD Server,true,,,4.1.3.03,crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_technical_issues_group-Group03-crd_v221_coverage_info_reason
117
+ hl7.fhir.us.davinci-crd_2.2.1,resp-44,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-44,"If the CRD server is unable to resolve the patient for a reason other than technology failure, the Coverage Information **SHALL** indicate ""not-covered"" in 'coverage' with a reason code of [no-member-found](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/ValueSet-coverageAssertionReasons.html#logical-definition-cld).",SHALL,CRD Server,true,,,4.2.3.03,crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_no_member_found_group-Group03-crd_v221_coverage_info_reason
118
+ hl7.fhir.us.davinci-crd_2.2.1,resp-45,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-45,"If the CRD server is able to resolve the patient but they do not have active coverage or cannot resolve to a single coverage, the Coverage Information **SHALL** indicate ""not-covered"" with a reason of either [coverage-not-found](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/ValueSet-coverageAssertionReasons.html#logical-definition-cld) or [no-active-coverage](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/ValueSet-coverageAssertionReasons.html#logical-definition-cld), as appropriate.",SHALL,CRD Server,true,,,"4.3.3.03, 4.4.3.03","crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_coverage_not_found_group-Group03-crd_v221_coverage_info_reason, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_no_active_coverage_group-Group03-crd_v221_coverage_info_reason"
119
+ hl7.fhir.us.davinci-crd_2.2.1,resp-47,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-47,"When using the ""Coverage Information"" response type, the proposed order or appointment being submitted for update SHALL comply with the required profiles",SHALL,CRD Server,false,,,"3.1.3.05, 3.2.3.05, 3.3.3.05, 3.4.3.05, 3.5.3.05, 3.6.3.05, 4.1.3.02, 4.2.3.02, 4.3.3.02, 4.4.3.02","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_technical_issues_group-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_no_member_found_group-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_coverage_not_found_group-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_no_active_coverage_group-Group03-crd_v221_coverage_info_system_action_validation"
120
+ hl7.fhir.us.davinci-crd_2.2.1,resp-48,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-48,"CRD clients and servers **SHALL** support the new CDS Hooks system action functionality to cause annotations to automatically be stored on the relevant request, appointment, etc. without any user intervention.",SHALL,"CRD Client,CRD Server",false,,,"3.1.3.05, 3.2.3.05, 3.3.3.05, 3.4.3.05, 3.5.3.05, 3.6.3.05, 4.1.3.02, 4.2.3.02, 4.3.3.02, 4.4.3.02","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_technical_issues_group-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_no_member_found_group-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_coverage_not_found_group-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_no_active_coverage_group-Group03-crd_v221_coverage_info_system_action_validation"
121
121
  hl7.fhir.us.davinci-crd_2.2.1,resp-51,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-51,"Where CRD servers need data that was not transmitted, they **SHOULD** attempt to infer values from elements that are present.",SHOULD,CRD Server,false,,,"",""
122
- hl7.fhir.us.davinci-crd_2.2.1,resp-52,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-52,Coverage Information responses **SHALL** comply with the logical model profile found [here](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-CRDHooksResponse-coverageInformation.html).,SHALL,CRD Server,false,,,"3.2.3.07, 3.3.3.07, 3.4.3.07","crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_coverage_info_system_action_validation"
122
+ hl7.fhir.us.davinci-crd_2.2.1,resp-52,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-52,Coverage Information responses **SHALL** comply with the logical model profile found [here](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-CRDHooksResponse-coverageInformation.html).,SHALL,CRD Server,false,,,"3.1.3.05, 3.2.3.05, 3.3.3.05, 3.4.3.05, 3.5.3.05, 3.6.3.05, 4.1.3.02, 4.2.3.02, 4.3.3.02, 4.4.3.02","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_technical_issues_group-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_no_member_found_group-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_coverage_not_found_group-Group03-crd_v221_coverage_info_system_action_validation, crd_server_v221-crd_v221_specific_coverage_responses-crd_v221_server_no_active_coverage_group-Group03-crd_v221_coverage_info_system_action_validation"
123
123
  hl7.fhir.us.davinci-crd_2.2.1,resp-53,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-53,"Each suggestion **SHOULD** contain either a single ""update"" action to revise the existing proposed order; or a ""delete"" action for the current proposed order and a ""create"" action for the new proposed order.",SHOULD,CRD Server,false,,,"",""
124
124
  hl7.fhir.us.davinci-crd_2.2.1,resp-54,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-54,"The choice of ""update"" vs. ""delete + create"" **SHOULD** be based on how significant the change is and how relevant the other decision support on the original request will still be.",SHOULD,CRD Server,false,,,"",""
125
- hl7.fhir.us.davinci-crd_2.2.1,resp-55,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-55,"When using the ""Propose Alternate Request"" response type, the proposed orders (and any associated resources) SHALL comply with the required profiles.",SHALL,CRD Server,false,,,"3.4.3.08, 3.6.3.09","crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_propose_alternate_request_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_propose_alternate_request_card_validation"
126
- hl7.fhir.us.davinci-crd_2.2.1,resp-56,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-56,Alternate Request responses **SHALL** comply with the logical model profile found [here](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-CRDHooksResponse-alternateRequest.html).,SHALL,CRD Server,false,,,"2.3.01, 3.1.3.01, 3.2.3.01, 3.3.3.01, 3.4.3.01, 3.4.3.08, 3.5.3.01, 3.6.3.01, 3.6.3.09","crd_server_v221-crd_v221_server_demonstrate_hook_response-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_propose_alternate_request_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_service_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_propose_alternate_request_card_validation"
127
- hl7.fhir.us.davinci-crd_2.2.1,resp-57,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-57,"When using the ""Identify Additional Orders"" response type, the proposed orders and any associated resources SHALL comply with the required profiles",SHALL,CRD Server,false,,,"3.4.3.09, 3.6.3.10","crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_additional_orders_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_additional_orders_card_validation"
128
- hl7.fhir.us.davinci-crd_2.2.1,resp-58,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-58,Additional Orders responses **SHALL** comply with the logical model profile= found [here](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-CRDHooksResponse-additionalOrders.html).,SHALL,CRD Server,false,,,"3.4.3.09, 3.6.3.10","crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_additional_orders_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_additional_orders_card_validation"
125
+ hl7.fhir.us.davinci-crd_2.2.1,resp-55,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-55,"When using the ""Propose Alternate Request"" response type, the proposed orders (and any associated resources) SHALL comply with the required profiles.",SHALL,CRD Server,false,,,"3.4.3.07, 3.6.3.08","crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_propose_alternate_request_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_propose_alternate_request_card_validation"
126
+ hl7.fhir.us.davinci-crd_2.2.1,resp-56,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-56,Alternate Request responses **SHALL** comply with the logical model profile found [here](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-CRDHooksResponse-alternateRequest.html).,SHALL,CRD Server,false,,,"3.4.3.07, 3.6.3.08","crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_propose_alternate_request_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_propose_alternate_request_card_validation"
127
+ hl7.fhir.us.davinci-crd_2.2.1,resp-57,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-57,"When using the ""Identify Additional Orders"" response type, the proposed orders and any associated resources SHALL comply with the required profiles",SHALL,CRD Server,false,,,"3.4.3.08, 3.6.3.09","crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_additional_orders_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_additional_orders_card_validation"
128
+ hl7.fhir.us.davinci-crd_2.2.1,resp-58,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-58,Additional Orders responses **SHALL** comply with the logical model profile= found [here](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-CRDHooksResponse-additionalOrders.html).,SHALL,CRD Server,false,,,"3.4.3.08, 3.6.3.09","crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_additional_orders_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_additional_orders_card_validation"
129
129
  hl7.fhir.us.davinci-crd_2.2.1,resp-59,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-59,The Request Form Completion response type **SHALL NOT** be used in place of DTR,SHALL NOT,CRD Server,false,,,"",""
130
130
  hl7.fhir.us.davinci-crd_2.2.1,resp-60,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-60,"Instead of using a card for ""Request Form Completion"", CRD servers **MAY** opt to use a [systemAction](http://cds-hooks.hl7.org/2026Jan/index.html#system-action).",MAY,CRD Server,false,,,"",""
131
- hl7.fhir.us.davinci-crd_2.2.1,resp-62,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-62,"When using the ""Request Form Completion"" response type, the resources in the card or system action SHALL comply with the required profiles",SHALL,CRD Server,false,,,"3.1.3.09, 3.2.3.08, 3.3.3.08, 3.4.3.10, 3.5.3.09, 3.6.3.11","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_request_form_completion_response_validation"
131
+ hl7.fhir.us.davinci-crd_2.2.1,resp-62,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-62,"When using the ""Request Form Completion"" response type, the resources in the card or system action SHALL comply with the required profiles",SHALL,CRD Server,false,,,"3.1.3.08, 3.2.3.07, 3.3.3.07, 3.4.3.09, 3.5.3.08, 3.6.3.10","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_request_form_completion_response_validation"
132
132
  hl7.fhir.us.davinci-crd_2.2.1,resp-63,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-63,CRD servers **SHOULD** use questionnaires that are compliant with either the [Argonaut questionnaire profiles](https://github.com/argonautproject/questionnaire) (for forms to be completed within the CRD client) or the [Structured Data Capture (SDC) profiles](http://hl7.org/fhir/uv/sdc/index.html) (for more sophisticated forms to be created within a SMART on FHIR app or through an external service).,SHOULD,CRD Server,false,,,"",""
133
- hl7.fhir.us.davinci-crd_2.2.1,resp-65,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-65,Form Completion responses **SHALL** comply with the logical model profile found [here](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-CRDHooksResponse-formCompletion.html).,SHALL,CRD Server,false,,,"3.1.3.09, 3.2.3.08, 3.3.3.08, 3.4.3.10, 3.5.3.09, 3.6.3.11","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_request_form_completion_response_validation"
133
+ hl7.fhir.us.davinci-crd_2.2.1,resp-65,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-65,Form Completion responses **SHALL** comply with the logical model profile found [here](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-CRDHooksResponse-formCompletion.html).,SHALL,CRD Server,false,,,"3.1.3.08, 3.2.3.07, 3.3.3.07, 3.4.3.09, 3.5.3.08, 3.6.3.10","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_request_form_completion_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_request_form_completion_response_validation"
134
134
  hl7.fhir.us.davinci-crd_2.2.1,resp-66,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-66,"Instead of using a card for ""Update Coverage Records"", CRD servers **MAY** opt to use a [systemAction](http://cds-hooks.hl7.org/2026Jan/index.html#system-action) instead.",MAY,CRD Server,false,,,"",""
135
135
  hl7.fhir.us.davinci-crd_2.2.1,resp-69,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-69,This Update Coverage Records capability **SHALL NOT** be used in situations where regulation dictates the use of the X12 functionality.,SHALL NOT,CRD Server,false,,,"",""
136
136
  hl7.fhir.us.davinci-crd_2.2.1,resp-70,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-70,"If returning a card rather than a system action, the ""Update Coverage Records"" response type **SHOULD NOT** be returned for hook types that are likely to be triggered by clinical users rather than administrative staff. Cards of this type would be appropriate for hooks such as encounter-start or appointment-book but would not be appropriate for order-select or order-sign.",SHOULD NOT,CRD Server,true,,,"",""
137
- hl7.fhir.us.davinci-crd_2.2.1,resp-71,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-71,Adjust Coverage responses **SHALL** comply with the logical model profile found [here](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-CRDHooksResponse-adjustCoverage.html).,SHALL,CRD Server,false,,,"3.1.3.10, 3.2.3.09, 3.3.3.09, 3.4.3.11, 3.5.3.10, 3.6.3.12","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_create_or_update_coverage_info_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_create_or_update_coverage_info_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_create_or_update_coverage_info_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_create_or_update_coverage_info_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_create_or_update_coverage_info_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_create_or_update_coverage_info_response_validation"
138
- hl7.fhir.us.davinci-crd_2.2.1,resp-72,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-72,Launch SMART responses **SHALL** comply with the logical model profile found [here](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-CRDHooksResponse-launchSMART.html).,SHALL,CRD Server,false,,,"3.1.3.04, 3.2.3.04, 3.3.3.04, 3.4.3.04, 3.5.3.04, 3.6.3.04","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_launch_smart_app_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_launch_smart_app_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_launch_smart_app_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_launch_smart_app_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_launch_smart_app_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_launch_smart_app_card_validation"
137
+ hl7.fhir.us.davinci-crd_2.2.1,resp-71,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-71,Adjust Coverage responses **SHALL** comply with the logical model profile found [here](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-CRDHooksResponse-adjustCoverage.html).,SHALL,CRD Server,false,,,"3.1.3.09, 3.2.3.08, 3.3.3.08, 3.4.3.10, 3.5.3.09, 3.6.3.11","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_create_or_update_coverage_info_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_create_or_update_coverage_info_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_create_or_update_coverage_info_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_create_or_update_coverage_info_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_create_or_update_coverage_info_response_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_create_or_update_coverage_info_response_validation"
138
+ hl7.fhir.us.davinci-crd_2.2.1,resp-72,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/cards.html#ci-c-resp-72,Launch SMART responses **SHALL** comply with the logical model profile found [here](https://hl7.org/fhir/us/davinci-crd/2.2.1/en/StructureDefinition-CRDHooksResponse-launchSMART.html).,SHALL,CRD Server,false,,,"3.1.3.03, 3.2.3.03, 3.3.3.03, 3.4.3.03, 3.5.3.03, 3.6.3.03","crd_server_v221-crd_v221_server_hooks-crd_v221_server_appointment_book-Group03-crd_v221_launch_smart_app_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_start-Group03-crd_v221_launch_smart_app_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_encounter_discharge-Group03-crd_v221_launch_smart_app_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_select-Group03-crd_v221_launch_smart_app_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_dispatch-Group03-crd_v221_launch_smart_app_card_validation, crd_server_v221-crd_v221_server_hooks-crd_v221_server_order_sign-Group03-crd_v221_launch_smart_app_card_validation"
139
139
  hl7.fhir.us.davinci-crd_2.2.1,sec-1,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/security.html#ci-c-sec-1,Implementers SHALL adhere to inherited security and privacy rules,SHALL,"CRD Client,CRD Server",false,,,"",""
140
140
  hl7.fhir.us.davinci-crd_2.2.1,sec-2,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/security.html#ci-c-sec-2,"As per the CDS Hooks specification, communications between CRD clients and CRD servers **SHALL** use TLS.",SHALL,"CRD Client,CRD Server",false,,,1.01,crd_server_v221-crd_v221_server_discovery_group-crd_v221_server_tls_version_stu2
141
141
  hl7.fhir.us.davinci-crd_2.2.1,sec-3,https://hl7.org/fhir/us/davinci-crd/2.2.1/en/security.html#ci-c-sec-3,CRD servers and CRD clients **SHOULD** enforce a minimum version and other TLS configuration requirements based on [HRex rules](http://hl7.org/fhir/us/davinci-hrex/1.2.0/security.html#exchange-security) for PHI exchange.,SHOULD,"CRD Client,CRD Server",false,,,"",""
@@ -135,7 +135,7 @@ module DaVinciCRDTestKit
135
135
  def send_unknown_configuration_invocation(request_body, response)
136
136
  return if @unknown_configuration_invoked
137
137
  return unless response.status == 200
138
- return unless coverage_info_response?(parsed_response_body(response))
138
+ return unless coverage_info_system_action_response?(parsed_response_body(response))
139
139
  return unless test_waiting?
140
140
 
141
141
  request_body = JSON.parse(request_body.to_json)
@@ -149,7 +149,7 @@ module DaVinciCRDTestKit
149
149
  def send_unknown_context_invocation(request_body, response)
150
150
  return if @unknown_context_invoked
151
151
  return unless response.status == 200
152
- return unless coverage_info_response?(parsed_response_body(response))
152
+ return unless coverage_info_system_action_response?(parsed_response_body(response))
153
153
  return unless test_waiting?
154
154
 
155
155
  request_body = JSON.parse(request_body.to_json)
@@ -163,7 +163,7 @@ module DaVinciCRDTestKit
163
163
  def send_unknown_cds_hooks_element_invocation(request_body, response)
164
164
  return if @unknown_cds_hooks_element_invoked
165
165
  return unless response.status == 200
166
- return unless coverage_info_response?(parsed_response_body(response))
166
+ return unless coverage_info_system_action_response?(parsed_response_body(response))
167
167
  return unless test_waiting?
168
168
 
169
169
  request_body = JSON.parse(request_body.to_json)
@@ -0,0 +1,17 @@
1
+ require_relative 'invoke_hook'
2
+
3
+ module DaVinciCRDTestKit
4
+ module Jobs
5
+ class InvokeHookNoSpecialRequests < InvokeHook
6
+ def perform(*)
7
+ # Skip all of the special hook invocations.
8
+ @coverage_info_configuration_invoked = true
9
+ @unknown_configuration_invoked = true
10
+ @unknown_context_invoked = true
11
+ @unknown_cds_hooks_element_invoked = true
12
+
13
+ super
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,14 @@
1
+ require_relative 'invoke_hook_no_special_requests'
2
+
3
+ module DaVinciCRDTestKit
4
+ module Jobs
5
+ class InvokeHookWithBadAuth < InvokeHookNoSpecialRequests
6
+ def prepare_hook_request(parsed_request)
7
+ super
8
+
9
+ parsed_request['fhirAuthorization']['access_token'] = 'TRIGGER_500_STATUS'
10
+ parsed_request
11
+ end
12
+ end
13
+ end
14
+ end
@@ -117,8 +117,8 @@ module DaVinciCRDTestKit
117
117
  assert_valid_json(service_request_bodies)
118
118
 
119
119
  payloads = [JSON.parse(service_request_bodies)].flatten
120
- skip_if tested_hook_name == ANY_HOOK_TAG && payloads.length != 1,
121
- 'The *Demonstrate a Hook Invocation* test supports only one request body.'
120
+ check_request_length(payloads)
121
+
122
122
  invoked_hook = identify_hook(payloads)
123
123
  output(invoked_hook:)
124
124
  service_id = target_service_id(service_ids, invoked_hook)
@@ -130,10 +130,19 @@ module DaVinciCRDTestKit
130
130
  failure_url = "#{resume_fail_url}?token=#{test_session_id}"
131
131
 
132
132
  acknowledge_before_continuing = manual_continuation == 'yes'
133
- Inferno::Jobs.perform(DaVinciCRDTestKit::Jobs::InvokeHook, test_session_id,
134
- payloads, service_endpoint, inferno_base_url, jwks_kid, encryption_method,
135
- tested_hook_name, continuation_url, failure_url, acknowledge_before_continuing,
136
- coverage_info_configuration_supported?)
133
+ perform_invoke_hook_job(
134
+ test_session_id,
135
+ payloads,
136
+ service_endpoint,
137
+ inferno_base_url,
138
+ jwks_kid,
139
+ encryption_method,
140
+ tested_hook_name,
141
+ continuation_url,
142
+ failure_url,
143
+ acknowledge_before_continuing,
144
+ coverage_info_configuration_supported?
145
+ )
137
146
 
138
147
  wait(
139
148
  identifier: test_session_id,
@@ -142,6 +151,15 @@ module DaVinciCRDTestKit
142
151
  )
143
152
  end
144
153
 
154
+ def check_request_length(payloads)
155
+ skip_if tested_hook_name == ANY_HOOK_TAG && payloads.length != 1,
156
+ 'The *Demonstrate a Hook Invocation* test supports only one request body.'
157
+ end
158
+
159
+ def perform_invoke_hook_job(*)
160
+ Inferno::Jobs.perform(DaVinciCRDTestKit::Jobs::InvokeHook, *)
161
+ end
162
+
145
163
  def wait_message(acknowledge_before_continuing, continuation_url)
146
164
  message = "Inferno's simulated CRD Client will initiate hook requests to the server. " \
147
165
  'During these invocations the server will be able to make FHIR requests ' \
@@ -11,11 +11,11 @@ module DaVinciCRDTestKit
11
11
 
12
12
  # identify the hook to invoke
13
13
  def identify_hook(payloads)
14
- if tested_hook_name == ANY_HOOK_TAG
14
+ if ALL_HOOK_TAGS.exclude? tested_hook_name
15
15
  hook_list_from_payloads = payloads.map { |body| body['hook'] }.uniq
16
16
 
17
17
  assert hook_list_from_payloads.length == 1,
18
- 'Could not identify the tested hook for the *Demonstrated Any Hook tests* from the request bodies.'
18
+ 'Could not identify the tested hook from the request bodies.'
19
19
 
20
20
  hook_list_from_payloads.first
21
21
  else
@@ -4,6 +4,7 @@ require_relative 'server_discovery_group'
4
4
  require_relative 'server_demonstrate_hook_response_group'
5
5
  require_relative 'server_hooks_group'
6
6
  require_relative 'server_urls'
7
+ require_relative 'specific_coverage_response_group'
7
8
  require_relative '../endpoints/mock_ehr_endpoints'
8
9
 
9
10
  module DaVinciCRDTestKit
@@ -110,6 +111,8 @@ module DaVinciCRDTestKit
110
111
  group from: :crd_v221_server_demonstrate_hook_response
111
112
 
112
113
  group from: :crd_v221_server_hooks
114
+
115
+ group from: :crd_v221_specific_coverage_responses
113
116
  end
114
117
  end
115
118
  end