davinci_crd_test_kit 0.14.0 → 0.14.2
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.
- checksums.yaml +4 -4
- data/config/presets/{inferno_crd_server_suite.json.erb → client_against_inferno_crd_server_suite.json.erb} +0 -33
- data/config/presets/{ri_crd_request_generator.json.erb → client_against_ri_crd_request_generator.json.erb} +1 -14
- data/config/presets/client_v221_against_inferno_crd_server_suite.json.erb +84 -0
- data/config/presets/client_v221_against_ri_br_provider.json.erb +31 -0
- data/config/presets/{ri_crd_request_generator.json_v221.json.erb → client_v221_against_ri_crd_request_generator.json.erb} +1 -1
- data/config/presets/{inferno_crd_client_suite.json.erb → server_against_inferno_crd_client_suite.json.erb} +0 -43
- data/config/presets/{ri_crd_server.json.erb → server_against_ri_crd_server.json.erb} +1 -44
- data/config/presets/{inferno_crd_client_suite_v221.json.erb → server_v221_against_inferno_crd_client_suite.json.erb} +48 -45
- data/config/presets/{inferno_crd_client_suite_prefetch_subset_v221.json.erb → server_v221_against_inferno_crd_client_suite_prefetch_subset.json.erb} +0 -46
- data/config/presets/server_v221_against_inferno_g31_suite.json.erb +49 -0
- data/lib/davinci_crd_test_kit/client/cross_hook_helper.rb +26 -0
- data/lib/davinci_crd_test_kit/client/endpoints/custom_service_response.rb +7 -7
- data/lib/davinci_crd_test_kit/client/endpoints/gather_response_generation_data.rb +4 -1
- data/lib/davinci_crd_test_kit/client/endpoints/hook_request_endpoint.rb +70 -39
- data/lib/davinci_crd_test_kit/client/endpoints/mock_service_response.rb +26 -7
- data/lib/davinci_crd_test_kit/client/endpoints/mocked_card_responses/external_reference.json +1 -1
- data/lib/davinci_crd_test_kit/client/endpoints/mocked_card_responses/launch_smart_app.json +0 -7
- data/lib/davinci_crd_test_kit/client/endpoints/scenario_service_response.rb +54 -0
- data/lib/davinci_crd_test_kit/client/tagged_request_load_helper.rb +8 -27
- data/lib/davinci_crd_test_kit/client/v2.0.1/auth/retrieve_jwks_test.rb +35 -23
- data/lib/davinci_crd_test_kit/client/v2.0.1/auth/token_payload_test.rb +34 -21
- data/lib/davinci_crd_test_kit/client/v2.0.1/cds-services-v201.json +20 -20
- data/lib/davinci_crd_test_kit/client/v2.0.1/client_appointment_book_group.rb +12 -10
- data/lib/davinci_crd_test_kit/client/v2.0.1/client_encounter_discharge_group.rb +12 -10
- data/lib/davinci_crd_test_kit/client/v2.0.1/client_encounter_start_group.rb +12 -10
- data/lib/davinci_crd_test_kit/client/v2.0.1/client_hooks_group.rb +5 -5
- data/lib/davinci_crd_test_kit/client/v2.0.1/client_order_dispatch_group.rb +12 -10
- data/lib/davinci_crd_test_kit/client/v2.0.1/client_order_select_group.rb +12 -10
- data/lib/davinci_crd_test_kit/client/v2.0.1/client_order_sign_group.rb +12 -10
- data/lib/davinci_crd_test_kit/client/v2.0.1/must_support/client_card_must_support_coverage_information.rb +3 -36
- data/lib/davinci_crd_test_kit/client/v2.0.1/must_support/client_card_must_support_external_reference.rb +3 -36
- data/lib/davinci_crd_test_kit/client/v2.0.1/must_support/client_card_must_support_instructions.rb +3 -36
- data/lib/davinci_crd_test_kit/client/v2.0.1/verify_request/hook_request_fetched_data_test.rb +4 -13
- data/lib/davinci_crd_test_kit/client/v2.0.1/verify_request/hook_request_prefetch_equals_queried_test.rb +3 -13
- data/lib/davinci_crd_test_kit/client/v2.0.1/verify_response/client_display_cards_attest.rb +3 -13
- data/lib/davinci_crd_test_kit/client/v2.0.1/verify_response/inferno_response_validation.rb +3 -13
- data/lib/davinci_crd_test_kit/client/v2.2.1/api/client_coverage_info_update_test.rb +1 -1
- data/lib/davinci_crd_test_kit/client/v2.2.1/attestations/attestation_instructions.rb +10 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/attestations/client_authorized_scope_attestation_test.rb +45 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/attestations/client_coverage_based_invocation_attestation_test.rb +44 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/attestations/client_data_element_expectations_attestation_test.rb +44 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/attestations/client_hook_invocation_logging_attestation_test.rb +43 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/attestations/client_must_support_exposure_attestation_test.rb +43 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/attestations/client_must_support_use_attestation_test.rb +41 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/attestations/client_order_sign_support_attestation_test.rb +42 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/attestations/client_prefetch_key_omission_attestation_test.rb +42 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/attestations/client_resource_identifiers_attestation_test.rb +43 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/attestations/client_response_case_distinction_attestation_test.rb +43 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/attestations/client_security_and_privacy_attestation_test.rb +43 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/attestations/client_workflow_integration_attestation_test.rb +44 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/auth/decode_auth_token_test.rb +1 -1
- data/lib/davinci_crd_test_kit/client/v2.2.1/auth/retrieve_jwks_test.rb +29 -18
- data/lib/davinci_crd_test_kit/client/v2.2.1/auth/token_payload_test.rb +35 -22
- data/lib/davinci_crd_test_kit/client/v2.2.1/cds-services-prefetch-subset-v221.json +47 -47
- data/lib/davinci_crd_test_kit/client/v2.2.1/cds-services-v221.json +50 -50
- data/lib/davinci_crd_test_kit/client/v2.2.1/client_appointment_book_group.rb +24 -15
- data/lib/davinci_crd_test_kit/client/v2.2.1/client_attestations_group.rb +49 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/client_cross_hook_group.rb +22 -6
- data/lib/davinci_crd_test_kit/client/v2.2.1/client_cross_hook_interaction_group.rb +98 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/client_encounter_discharge_group.rb +19 -11
- data/lib/davinci_crd_test_kit/client/v2.2.1/client_encounter_start_group.rb +19 -11
- data/lib/davinci_crd_test_kit/client/v2.2.1/client_fhir_api_group.rb +14 -12
- data/lib/davinci_crd_test_kit/client/v2.2.1/client_hooks_group.rb +25 -5
- data/lib/davinci_crd_test_kit/client/v2.2.1/client_long_running_hook_group.rb +3 -2
- data/lib/davinci_crd_test_kit/client/v2.2.1/client_order_dispatch_group.rb +23 -15
- data/lib/davinci_crd_test_kit/client/v2.2.1/client_order_select_group.rb +19 -11
- data/lib/davinci_crd_test_kit/client/v2.2.1/client_order_sign_group.rb +23 -15
- data/lib/davinci_crd_test_kit/client/v2.2.1/client_registration_group.rb +6 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/client_scenarios_group.rb +26 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/client_self_pay_hook_group.rb +36 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/client_unknown_content_hook_group.rb +34 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/crd_client_suite.rb +24 -3
- data/lib/davinci_crd_test_kit/client/v2.2.1/cross_hook/client_card_must_support_coverage_information_test.rb +1 -1
- data/lib/davinci_crd_test_kit/client/v2.2.1/cross_hook/client_fhirpath_collection_as_comma_delimited_string_test.rb +4 -11
- data/lib/davinci_crd_test_kit/client/v2.2.1/cross_hook/client_hook_instances_unique_test.rb +1 -9
- data/lib/davinci_crd_test_kit/client/v2.2.1/cross_hook/client_location_address_propagation_test.rb +6 -2
- data/lib/davinci_crd_test_kit/client/v2.2.1/cross_hook/client_prefetch_complete_and_subset_test.rb +3 -12
- data/lib/davinci_crd_test_kit/client/v2.2.1/invocation/appointment_book_receive_request_test.rb +8 -89
- data/lib/davinci_crd_test_kit/client/v2.2.1/invocation/base_hook_invocation_receive_request_test.rb +163 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/invocation/cross_hooks_receive_request_test.rb +97 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/invocation/encounter_discharge_receive_request_test.rb +8 -90
- data/lib/davinci_crd_test_kit/client/v2.2.1/invocation/encounter_start_receive_request_test.rb +8 -90
- data/lib/davinci_crd_test_kit/client/v2.2.1/invocation/order_dispatch_receive_request_test.rb +8 -98
- data/lib/davinci_crd_test_kit/client/v2.2.1/invocation/order_select_receive_request_test.rb +8 -98
- data/lib/davinci_crd_test_kit/client/v2.2.1/invocation/order_sign_receive_request_test.rb +8 -98
- data/lib/davinci_crd_test_kit/client/v2.2.1/long_running/client_long_running_receive_request_test.rb +10 -2
- data/lib/davinci_crd_test_kit/client/v2.2.1/long_running/client_skip_long_running_attestation_test.rb +11 -6
- data/lib/davinci_crd_test_kit/client/v2.2.1/registration/client_service_registration_attestation_test.rb +2 -1
- data/lib/davinci_crd_test_kit/client/v2.2.1/self_pay/client_self_pay_no_request_test.rb +30 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/self_pay/client_self_pay_workflow_test.rb +55 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/unknown_content/client_unknown_content_attestation_test.rb +99 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/unknown_content/client_unknown_content_receive_request_test.rb +62 -0
- data/lib/davinci_crd_test_kit/client/v2.2.1/verify_request/hook_request_conformance_test.rb +1 -1
- data/lib/davinci_crd_test_kit/client/v2.2.1/verify_request/hook_request_coverage_verification_test.rb +10 -2
- data/lib/davinci_crd_test_kit/client/v2.2.1/verify_request/hook_request_data_fetch_verification_test.rb +1 -1
- data/lib/davinci_crd_test_kit/client/v2.2.1/verify_request/hook_request_granted_scopes_test.rb +1 -1
- data/lib/davinci_crd_test_kit/client/v2.2.1/verify_request/hook_request_prefetch_complete_test.rb +7 -1
- data/lib/davinci_crd_test_kit/client/v2.2.1/verify_request/hook_request_prefetch_profiles_test.rb +1 -1
- data/lib/davinci_crd_test_kit/client/v2.2.1/verify_request/hook_request_requested_version_test.rb +1 -1
- data/lib/davinci_crd_test_kit/client/v2.2.1/verify_request/hook_request_secured_transport_test.rb +1 -1
- data/lib/davinci_crd_test_kit/client/v2.2.1/verify_response/client_display_cards_attest.rb +54 -21
- data/lib/davinci_crd_test_kit/client/v2.2.1/verify_response/hook_response_support_coverage_information_test.rb +1 -1
- data/lib/davinci_crd_test_kit/client/v2.2.1/verify_response/inferno_response_validation.rb +6 -3
- data/lib/davinci_crd_test_kit/cross_suite/cards_identification.rb +18 -0
- data/lib/davinci_crd_test_kit/cross_suite/logical_models_override_helper.rb +30 -13
- data/lib/davinci_crd_test_kit/cross_suite/prefetch_completeness_checker.rb +25 -11
- data/lib/davinci_crd_test_kit/cross_suite/prefetch_profile_validation.rb +2 -0
- data/lib/davinci_crd_test_kit/cross_suite/requests_logical_model_validation.rb +28 -28
- data/lib/davinci_crd_test_kit/cross_suite/response_logical_model_validation.rb +211 -43
- data/lib/davinci_crd_test_kit/cross_suite/tags.rb +7 -0
- data/lib/davinci_crd_test_kit/requirements/cds-hooks_3.0.0-ballot_requirements.xlsx +0 -0
- data/lib/davinci_crd_test_kit/requirements/davinci_crd_test_kit_requirements.csv +6 -2
- data/lib/davinci_crd_test_kit/requirements/generated/crd_client_requirements_coverage.csv +107 -107
- data/lib/davinci_crd_test_kit/requirements/generated/crd_client_v221_requirements_coverage.csv +101 -97
- data/lib/davinci_crd_test_kit/requirements/generated/crd_server_requirements_coverage.csv +18 -18
- data/lib/davinci_crd_test_kit/requirements/generated/crd_server_v221_requirements_coverage.csv +43 -39
- data/lib/davinci_crd_test_kit/requirements/hl7.fhir.us.davinci-crd_2.2.1_requirements.xlsx +0 -0
- data/lib/davinci_crd_test_kit/server/jobs/invoke_hook.rb +3 -3
- data/lib/davinci_crd_test_kit/server/jobs/invoke_hook_no_special_requests.rb +17 -0
- data/lib/davinci_crd_test_kit/server/jobs/invoke_hook_with_bad_auth.rb +14 -0
- data/lib/davinci_crd_test_kit/server/server_abstract_invoke_hook_test.rb +24 -6
- data/lib/davinci_crd_test_kit/server/server_hook_helper.rb +2 -2
- data/lib/davinci_crd_test_kit/server/v2.0.1/crd_server_suite.rb +1 -1
- data/lib/davinci_crd_test_kit/server/v2.0.1/server_hooks_group.rb +5 -5
- data/lib/davinci_crd_test_kit/server/v2.2.1/crd_server_suite.rb +3 -0
- data/lib/davinci_crd_test_kit/server/v2.2.1/discovery/discovery_standard_prefetch_expressions_test.rb +165 -0
- data/lib/davinci_crd_test_kit/server/v2.2.1/interaction/server_invoke_hook_single_request_test.rb +22 -0
- data/lib/davinci_crd_test_kit/server/v2.2.1/server_appointment_book_group.rb +10 -102
- data/lib/davinci_crd_test_kit/server/v2.2.1/server_demonstrate_hook_response_group.rb +3 -2
- data/lib/davinci_crd_test_kit/server/v2.2.1/server_discovery_group.rb +2 -0
- data/lib/davinci_crd_test_kit/server/v2.2.1/server_encounter_discharge_group.rb +10 -97
- data/lib/davinci_crd_test_kit/server/v2.2.1/server_encounter_start_group.rb +10 -97
- data/lib/davinci_crd_test_kit/server/v2.2.1/server_hooks_group.rb +5 -5
- data/lib/davinci_crd_test_kit/server/v2.2.1/server_order_dispatch_group.rb +10 -103
- data/lib/davinci_crd_test_kit/server/v2.2.1/server_order_select_group.rb +12 -116
- data/lib/davinci_crd_test_kit/server/v2.2.1/server_order_sign_group.rb +12 -121
- data/lib/davinci_crd_test_kit/server/v2.2.1/specific_coverage_response_group.rb +23 -0
- data/lib/davinci_crd_test_kit/server/v2.2.1/specific_coverage_responses/coverage_info_reason_test.rb +108 -0
- data/lib/davinci_crd_test_kit/server/v2.2.1/specific_coverage_responses/coverage_not_found_group.rb +116 -0
- data/lib/davinci_crd_test_kit/server/v2.2.1/specific_coverage_responses/no_active_coverage_group.rb +115 -0
- data/lib/davinci_crd_test_kit/server/v2.2.1/specific_coverage_responses/no_member_found_group.rb +117 -0
- data/lib/davinci_crd_test_kit/server/v2.2.1/specific_coverage_responses/technical_issues_group.rb +121 -0
- data/lib/davinci_crd_test_kit/server/v2.2.1/specific_coverage_responses/technical_issues_invoke_test.rb +22 -0
- data/lib/davinci_crd_test_kit/server/v2.2.1/verify_request/service_request_context_validation_test.rb +1 -0
- data/lib/davinci_crd_test_kit/server/v2.2.1/verify_request/service_request_optional_fields_validation_test.rb +1 -0
- data/lib/davinci_crd_test_kit/server/v2.2.1/verify_request/service_request_required_fields_validation_test.rb +1 -0
- data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/additional_orders_validation_test.rb +78 -35
- data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/coverage_information_card_absence_test.rb +76 -0
- data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/coverage_information_system_action_validation_test.rb +70 -124
- data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/create_or_update_coverage_info_response_validation_test.rb +83 -39
- data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/external_reference_card_validation_test.rb +59 -17
- data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/form_completion_response_validation_test.rb +80 -45
- data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/hook_request_resource_resolution.rb +37 -0
- data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/instructions_card_received_test.rb +57 -6
- data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/launch_smart_app_card_validation_test.rb +56 -17
- data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/propose_alternate_request_card_validation_test.rb +52 -25
- data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/service_response_validation_test.rb +17 -51
- data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/unknown_cds_hooks_elements_test.rb +1 -1
- data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/unknown_configuration_test.rb +1 -1
- data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/unknown_context_test.rb +1 -1
- data/lib/davinci_crd_test_kit/version.rb +2 -2
- metadata +54 -16
- data/config/presets/inferno_crd_server_suite_v221.json.erb +0 -94
- data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/card_optional_fields_validation_test.rb +0 -57
- data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/coverage_information_system_action_received_test.rb +0 -65
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"title": "Run Against the CRD Server Suite",
|
|
3
|
-
"id": "inferno-crd-server-suite-v221",
|
|
4
|
-
"test_suite_id": "crd_client_v221",
|
|
5
|
-
"inputs": [
|
|
6
|
-
{
|
|
7
|
-
"name": "cds_jwt_iss",
|
|
8
|
-
"title": "URI of the issuer of the JWT used to authorize CDS Hooks calls",
|
|
9
|
-
"type": "text",
|
|
10
|
-
"value": "<%= Inferno::Application['base_url'] %>/custom/crd_server_v221"
|
|
11
|
-
},
|
|
12
|
-
{
|
|
13
|
-
"name": "cds_jwk_set",
|
|
14
|
-
"type": "textarea",
|
|
15
|
-
"value": "<%= Inferno::Application['base_url'] %>/custom/crd_server_v221/jwks.json"
|
|
16
|
-
},
|
|
17
|
-
{
|
|
18
|
-
"name": "complete_prefetch_service_organization_id",
|
|
19
|
-
"title": "Complete Prefetch Service Organization id",
|
|
20
|
-
"type": "text",
|
|
21
|
-
"value": "crd221-demo-payer-complete-prefetch"
|
|
22
|
-
},
|
|
23
|
-
{
|
|
24
|
-
"name": "subset_prefetch_service_organization_id",
|
|
25
|
-
"title": "Subset Prefetch Service Organization id",
|
|
26
|
-
"type": "text",
|
|
27
|
-
"value": "crd221-demo-payer-subset-prefetch"
|
|
28
|
-
},
|
|
29
|
-
{
|
|
30
|
-
"name": "appointment_book_selected_response_types",
|
|
31
|
-
"description": "Select the cards/action response types that the Inferno hook request endpoints will return. The default response type that will be returned for this hook is the `Coverage Information` card type.",
|
|
32
|
-
"title": "Response types to return from appointment-book hook requests",
|
|
33
|
-
"type": "checkbox",
|
|
34
|
-
"value": "[\"external_reference\",\"instructions\",\"coverage_information\",\"request_form_completion\",\"create_update_coverage_info\",\"launch_smart_app\"]"
|
|
35
|
-
},
|
|
36
|
-
{
|
|
37
|
-
"name": "encounter_start_response_approach",
|
|
38
|
-
"description": "Determines how Inferno will generate response for encounter-start hook invocations.",
|
|
39
|
-
"title": "Response generation approach for encounter-start",
|
|
40
|
-
"type": "radio",
|
|
41
|
-
"value": "custom"
|
|
42
|
-
},
|
|
43
|
-
{
|
|
44
|
-
"name": "encounter_start_custom_response_template",
|
|
45
|
-
"description": "Provide a [custom response template](https://github.com/inferno-framework/davinci-crd-test-kit/wiki/Controlling-Simulated-Responses#tester-directed-custom-responses) in JSON form for Inferno to use when responding to hook invocations.",
|
|
46
|
-
"title": "Custom response template for encounter-start hook requests",
|
|
47
|
-
"type": "textarea",
|
|
48
|
-
"value": "{\n \"cards\": [\n {\n \"summary\": \"Encounter Start Launch SMART Application Card\",\n \"detail\": \"This is a Launch SMART Application Card which can cause the launching of SMART apps to occur in the context in which they are relevant to patient care and/or to payment-related decision-making.\",\n \"indicator\": \"info\",\n \"source\": {\n \"label\": \"Inferno\",\n \"url\": \"https://inferno.healthit.gov/\",\n \"topic\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/cdshooks-card-type\",\n \"code\": \"coverage-info\",\n \"display\": \"Coverage Information\"\n }\n },\n \"selectionBehavior\": \"any\",\n \"suggestions\": [\n {\n \"label\": \"Inferno placeholder suggestion\",\n \"uuid\": \"5abc166b-c50f-4df4-bdb1-2b0b62cb8e56\"\n }\n ],\n \"links\": [\n {\n \"label\": \"Inferno\",\n \"url\": \"<%= Inferno::Application['base_url'] %>/custom/smart/launch\",\n \"type\": \"smart\"\n }\n ],\n \"uuid\": \"daf166dd-d7fa-4c74-ba80-71bc41c9efc1\"\n },\n {\n \"summary\": \"Encounter Start External Reference Card\",\n \"detail\": \"This is an External Reference Card containing one or more links to external web pages, PDFs, or other resources that provide relevant coverage information.\",\n \"indicator\": \"info\",\n \"source\": {\n \"label\": \"Inferno\",\n \"url\": \"https://inferno.healthit.gov/\",\n \"topic\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/cdshooks-card-type\",\n \"code\": \"guideline\",\n \"display\": \"Guideline\"\n }\n },\n \"links\": [\n {\n \"label\": \"CRD IG External Reference Card Info\",\n \"url\": \"https://build.fhir.org/ig/HL7/davinci-crd/cards.html#external-reference\",\n \"type\": \"absolute\"\n }\n ],\n \"uuid\": \"c7bd850d-9d83-4056-aa0d-d887e6b68aed\"\n },\n {\n \"summary\": \"Encounter Start Instructions Card\",\n \"detail\": \"This is an Instructions card containing textual guidance to display to the user making the decisions.\",\n \"indicator\": \"info\",\n \"source\": {\n \"label\": \"Inferno\",\n \"url\": \"https://inferno.healthit.gov/\",\n \"topic\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/cdshooks-card-type\",\n \"code\": \"coverage-info\",\n \"display\": \"Coverage Information\"\n }\n },\n \"uuid\": \"1ab5f527-b173-4e5c-ad1f-56b4c4fe439a\"\n },\n {\n \"summary\": \"Encounter Start Create/Update Coverage Information Card (Complete Prefetch)\",\n \"detail\": \"This is an update to the coverage indicating an end date one year from today\",\n \"indicator\": \"info\",\n \"source\": {\n \"label\": \"Inferno\",\n \"url\": \"https://inferno.healthit.gov/\",\n \"topic\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/cdshooks-card-type\",\n \"code\": \"coverage-info\",\n \"display\": \"Coverage Information\"\n }\n },\n \"selectionBehavior\": \"any\",\n \"suggestions\": [\n {\n \"label\": \"Create/Update coverage information\",\n \"uuid\": \"5abc166b-c51f-4df4-bdb1-2b0b62bb8e45\",\n \"actions\": [\n {\n \"type\": \"update\",\n \"description\": \"Update current coverage record\",\n \"resource\": {\n \"resourceType\": \"Coverage\",\n \"id\": \"crd221-demo-coverage-complete-prefetch\",\n \"subscriberId\": \"10A3D58WH456\",\n \"relationship\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/subscriber-relationship\",\n \"code\": \"self\"\n }\n ]\n },\n \"beneficiary\": {\n \"reference\": \"Patient/crd221-demo-patient\"\n },\n \"status\": \"active\",\n \"class\": [\n {\n \"type\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/coverage-class\",\n \"code\": \"plan\"\n }\n ]\n },\n \"value\": \"Medicare Part A\"\n }\n ],\n \"period\": {\n \"end\": \"{{today() + 365 days}}\"\n },\n \"payor\": [\n {\n \"reference\": \"Organization/crd221-demo-payer-complete-prefetch\"\n }\n ]\n }\n }\n ]\n }\n ],\n \"uuid\": \"ac669633-6c4f-4599-b60b-e840ce0be625\",\n \"extension\": {\n \"com.inferno.includeForServices\": \"encounter-start-service\"\n }\n },\n {\n \"summary\": \"Encounter Start Create/Update Coverage Information Card (Subset Prefetch)\",\n \"detail\": \"This is an update to the coverage indicating an end date one year from today\",\n \"indicator\": \"info\",\n \"source\": {\n \"label\": \"Inferno\",\n \"url\": \"https://inferno.healthit.gov/\",\n \"topic\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/cdshooks-card-type\",\n \"code\": \"coverage-info\",\n \"display\": \"Coverage Information\"\n }\n },\n \"selectionBehavior\": \"any\",\n \"suggestions\": [\n {\n \"label\": \"Create/Update coverage information\",\n \"uuid\": \"5abc166b-c51f-4df4-bdb1-2b0b62bb8e45\",\n \"actions\": [\n {\n \"type\": \"update\",\n \"description\": \"Update current coverage record\",\n \"resource\": {\n \"resourceType\": \"Coverage\",\n \"id\": \"crd221-demo-coverage-subset-prefetch\",\n \"subscriberId\": \"10A3D58WH456\",\n \"relationship\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/subscriber-relationship\",\n \"code\": \"self\"\n }\n ]\n },\n \"beneficiary\": {\n \"reference\": \"Patient/crd221-demo-patient\"\n },\n \"status\": \"active\",\n \"class\": [\n {\n \"type\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/coverage-class\",\n \"code\": \"plan\"\n }\n ]\n },\n \"value\": \"Medicare Part A\"\n }\n ],\n \"period\": {\n \"end\": \"{{today() + 365 days}}\"\n },\n \"payor\": [\n {\n \"reference\": \"Organization/crd221-demo-payer-subset-prefetch\"\n }\n ]\n }\n }\n ]\n }\n ],\n \"uuid\": \"ac669633-6c4f-4599-b60b-e840ce0be625\",\n \"extension\": {\n \"com.inferno.includeForServices\": \"encounter-start-subset\"\n }\n },\n {\n \"summary\": \"Encounter Start Request Form Completion Card (Complete Prefetch)\",\n \"detail\": \"This is a Request Form Completion Card which indicates that there are forms that need to be completed.\",\n \"indicator\": \"info\",\n \"source\": {\n \"label\": \"Inferno\",\n \"url\": \"https://inferno.healthit.gov/\",\n \"topic\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/cdshooks-card-type\",\n \"code\": \"coverage-info\",\n \"display\": \"Coverage Information\"\n }\n },\n \"selectionBehavior\": \"any\",\n \"suggestions\": [\n {\n \"label\": \"Add 'completion of the ABC form' to your task list (possibly for reassignment)\",\n \"uuid\": \"5abc166b-c51f-4df4-bdb1-2b0b62cb8e45\",\n \"actions\": [\n {\n \"type\": \"create\",\n \"description\": \"Add version 2 of the XYZ form to the clinical system's repository (if it doesn't already exist)\",\n \"resource\": {\n \"resourceType\": \"Questionnaire\",\n \"id\": \"XYZ\",\n \"url\": \"http://inferno.healthit.gov/davinci-crd-test-kit/forms/XYZ\",\n \"title\": \"Cancer Quality Forum Questionnaire XYZ\",\n \"version\": \"2\",\n \"status\": \"active\",\n \"subjectType\": [\n \"Patient\"\n ],\n \"date\": \"2012-01\",\n \"item\": [\n {\n \"linkId\": \"1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/sections\",\n \"code\": \"COMORBIDITY\"\n }\n ],\n \"type\": \"group\",\n \"item\": [\n {\n \"linkId\": \"1.1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/questions\",\n \"code\": \"COMORB\"\n }\n ],\n \"prefix\": \"1\",\n \"type\": \"choice\",\n \"answerValueSet\": \"http://hl7.org/fhir/ValueSet/yesnodontknow\",\n \"item\": [\n {\n \"linkId\": \"1.1.1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/sections\",\n \"code\": \"CARDIAL\"\n }\n ],\n \"type\": \"group\",\n \"enableWhen\": [\n {\n \"question\": \"1.1\",\n \"operator\": \"=\",\n \"answerCoding\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v2-0136\",\n \"code\": \"Y\"\n }\n }\n ],\n \"item\": [\n {\n \"linkId\": \"1.1.1.1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/questions\",\n \"code\": \"COMORBCAR\"\n }\n ],\n \"prefix\": \"1.1\",\n \"type\": \"choice\",\n \"answerValueSet\": \"http://hl7.org/fhir/ValueSet/yesnodontknow\",\n \"item\": [\n {\n \"linkId\": \"1.1.1.1.1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/questions\",\n \"code\": \"COMCAR00\",\n \"display\": \"Angina Pectoris\"\n },\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"194828000\",\n \"display\": \"Angina (disorder)\"\n }\n ],\n \"prefix\": \"1.1.1\",\n \"type\": \"choice\",\n \"answerValueSet\": \"http://hl7.org/fhir/ValueSet/yesnodontknow\"\n },\n {\n \"linkId\": \"1.1.1.1.2\",\n \"code\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"22298006\",\n \"display\": \"Myocardial infarction (disorder)\"\n }\n ],\n \"prefix\": \"1.1.2\",\n \"type\": \"choice\",\n \"answerValueSet\": \"http://hl7.org/fhir/ValueSet/yesnodontknow\"\n }\n ]\n },\n {\n \"linkId\": \"1.1.1.2\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/questions\",\n \"code\": \"COMORBVAS\"\n }\n ],\n \"prefix\": \"1.2\",\n \"type\": \"choice\",\n \"answerValueSet\": \"http://hl7.org/fhir/ValueSet/yesnodontknow\"\n }\n ]\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"2\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/sections\",\n \"code\": \"HISTOPATHOLOGY\"\n }\n ],\n \"type\": \"group\",\n \"item\": [\n {\n \"linkId\": \"2.1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/sections\",\n \"code\": \"ABDOMINAL\"\n }\n ],\n \"type\": \"group\",\n \"item\": [\n {\n \"linkId\": \"2.1.2\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/questions\",\n \"code\": \"STADPT\",\n \"display\": \"pT category\"\n }\n ],\n \"type\": \"choice\"\n }\n ]\n }\n ]\n }\n ]\n },\n \"extension\": {\n \"davinci-crd.if-none-exist\": \"url=<%= Inferno::Application['base_url'] %>/custom/crd_server_v221/fhir/Questionnaire?url=http://inferno.healthit.gov/davinci-crd-test-kit/forms/XYZ\\u0026version=2\"\n }\n },\n {\n \"type\": \"create\",\n \"description\": \"Add 'Complete ABC form' to the task list\",\n \"resource\": {\n \"resourceType\": \"Task\",\n \"status\": \"ready\",\n \"intent\": \"order\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/uv/sdc/CodeSystem/temp\",\n \"code\": \"complete-questionnaire\"\n }\n ]\n },\n \"description\": \"Complete XYZ form for local retention\",\n \"for\": {\n \"reference\": \"Patient/{{context.patientId}}\"\n },\n \"authoredOn\": \"{{today()}}\",\n \"requester\": {\n \"reference\": \"Organization/crd221-demo-payer-complete-prefetch\"\n },\n \"input\": [\n {\n \"type\": {\n \"text\": \"questionnaire\",\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/uv/sdc/CodeSystem/temp\",\n \"code\": \"questionnaire\"\n }\n ]\n },\n \"valueCanonical\": \"http://inferno.healthit.gov/davinci-crd-test-kit/forms/XYZ\"\n }\n ],\n \"id\": \"779579bd-2a55-41a1-8487-c372fd02e9e8\"\n }\n }\n ]\n }\n ],\n \"uuid\": \"5abc166b-c50f-4df4-bdb1-2b0b62cb8e45\",\n \"extension\": {\n \"com.inferno.includeForServices\": \"encounter-start-service\"\n }\n },\n {\n \"summary\": \"Encounter Start Request Form Completion Card (Subset Prefetch)\",\n \"detail\": \"This is a Request Form Completion Card which indicates that there are forms that need to be completed.\",\n \"indicator\": \"info\",\n \"source\": {\n \"label\": \"Inferno\",\n \"url\": \"https://inferno.healthit.gov/\",\n \"topic\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/cdshooks-card-type\",\n \"code\": \"coverage-info\",\n \"display\": \"Coverage Information\"\n }\n },\n \"selectionBehavior\": \"any\",\n \"suggestions\": [\n {\n \"label\": \"Add 'completion of the ABC form' to your task list (possibly for reassignment)\",\n \"uuid\": \"5abc166b-c51f-4df4-bdb1-2b0b62cb8e45\",\n \"actions\": [\n {\n \"type\": \"create\",\n \"description\": \"Add version 2 of the XYZ form to the clinical system's repository (if it doesn't already exist)\",\n \"resource\": {\n \"resourceType\": \"Questionnaire\",\n \"id\": \"XYZ\",\n \"url\": \"http://inferno.healthit.gov/davinci-crd-test-kit/forms/XYZ\",\n \"title\": \"Cancer Quality Forum Questionnaire XYZ\",\n \"version\": \"2\",\n \"status\": \"active\",\n \"subjectType\": [\n \"Patient\"\n ],\n \"date\": \"2012-01\",\n \"item\": [\n {\n \"linkId\": \"1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/sections\",\n \"code\": \"COMORBIDITY\"\n }\n ],\n \"type\": \"group\",\n \"item\": [\n {\n \"linkId\": \"1.1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/questions\",\n \"code\": \"COMORB\"\n }\n ],\n \"prefix\": \"1\",\n \"type\": \"choice\",\n \"answerValueSet\": \"http://hl7.org/fhir/ValueSet/yesnodontknow\",\n \"item\": [\n {\n \"linkId\": \"1.1.1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/sections\",\n \"code\": \"CARDIAL\"\n }\n ],\n \"type\": \"group\",\n \"enableWhen\": [\n {\n \"question\": \"1.1\",\n \"operator\": \"=\",\n \"answerCoding\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v2-0136\",\n \"code\": \"Y\"\n }\n }\n ],\n \"item\": [\n {\n \"linkId\": \"1.1.1.1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/questions\",\n \"code\": \"COMORBCAR\"\n }\n ],\n \"prefix\": \"1.1\",\n \"type\": \"choice\",\n \"answerValueSet\": \"http://hl7.org/fhir/ValueSet/yesnodontknow\",\n \"item\": [\n {\n \"linkId\": \"1.1.1.1.1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/questions\",\n \"code\": \"COMCAR00\",\n \"display\": \"Angina Pectoris\"\n },\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"194828000\",\n \"display\": \"Angina (disorder)\"\n }\n ],\n \"prefix\": \"1.1.1\",\n \"type\": \"choice\",\n \"answerValueSet\": \"http://hl7.org/fhir/ValueSet/yesnodontknow\"\n },\n {\n \"linkId\": \"1.1.1.1.2\",\n \"code\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"22298006\",\n \"display\": \"Myocardial infarction (disorder)\"\n }\n ],\n \"prefix\": \"1.1.2\",\n \"type\": \"choice\",\n \"answerValueSet\": \"http://hl7.org/fhir/ValueSet/yesnodontknow\"\n }\n ]\n },\n {\n \"linkId\": \"1.1.1.2\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/questions\",\n \"code\": \"COMORBVAS\"\n }\n ],\n \"prefix\": \"1.2\",\n \"type\": \"choice\",\n \"answerValueSet\": \"http://hl7.org/fhir/ValueSet/yesnodontknow\"\n }\n ]\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"2\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/sections\",\n \"code\": \"HISTOPATHOLOGY\"\n }\n ],\n \"type\": \"group\",\n \"item\": [\n {\n \"linkId\": \"2.1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/sections\",\n \"code\": \"ABDOMINAL\"\n }\n ],\n \"type\": \"group\",\n \"item\": [\n {\n \"linkId\": \"2.1.2\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/questions\",\n \"code\": \"STADPT\",\n \"display\": \"pT category\"\n }\n ],\n \"type\": \"choice\"\n }\n ]\n }\n ]\n }\n ]\n },\n \"extension\": {\n \"davinci-crd.if-none-exist\": \"url=<%= Inferno::Application['base_url'] %>/custom/crd_server_v221/fhir/Questionnaire?url=http://inferno.healthit.gov/davinci-crd-test-kit/forms/XYZ\\u0026version=2\"\n }\n },\n {\n \"type\": \"create\",\n \"description\": \"Add 'Complete ABC form' to the task list\",\n \"resource\": {\n \"resourceType\": \"Task\",\n \"status\": \"ready\",\n \"intent\": \"order\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/uv/sdc/CodeSystem/temp\",\n \"code\": \"complete-questionnaire\"\n }\n ]\n },\n \"description\": \"Complete XYZ form for local retention\",\n \"for\": {\n \"reference\": \"Patient/{{context.patientId}}\"\n },\n \"authoredOn\": \"{{today()}}\",\n \"requester\": {\n \"reference\": \"Organization/crd221-demo-payer-subset-prefetch\"\n },\n \"input\": [\n {\n \"type\": {\n \"text\": \"questionnaire\",\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/uv/sdc/CodeSystem/temp\",\n \"code\": \"questionnaire\"\n }\n ]\n },\n \"valueCanonical\": \"http://inferno.healthit.gov/davinci-crd-test-kit/forms/XYZ\"\n }\n ],\n \"id\": \"779579bd-2a55-41a1-8487-c372fd02e9e8\"\n }\n }\n ]\n }\n ],\n \"uuid\": \"5abc166b-c50f-4df4-bdb1-2b0b62cb8e45\",\n \"extension\": {\n \"com.inferno.includeForServices\": \"encounter-start-subset\"\n }\n }\n ],\n \"systemActions\": [\n {\n \"type\": \"update\",\n \"description\": \"Added pa satisfied coverage information to Encounter resource (Complete Prefetch).\",\n \"resource\": {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"coverage\",\n \"valueReference\": {\n \"reference\": \"Coverage/crd221-demo-coverage-complete-prefetch\"\n }\n },\n {\n \"url\": \"covered\",\n \"valueCode\": \"covered\"\n },\n {\n \"url\": \"pa-needed\",\n \"valueCode\": \"satisfied\"\n },\n {\n \"url\": \"billingCode\",\n \"valueCoding\": {\n \"system\": \"http://www.ama-assn.org/go/cpt\",\n \"code\": \"77067\"\n }\n },\n {\n \"extension\": [\n {\n \"url\": \"category\",\n \"valueCode\": \"cat-other\"\n },\n {\n \"url\": \"code\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/crd-coverage-detail\",\n \"code\": \"instructions\"\n }\n ]\n }\n },\n {\n \"url\": \"value\",\n \"valueUrl\": \"https://github.com/inferno-framework/davinci-crd-test-kit/wiki\"\n },\n {\n \"url\": \"qualification\",\n \"valueString\": \"CRD Test Kit Wiki\"\n }\n ],\n \"url\": \"detail\"\n },\n {\n \"url\": \"date\",\n \"valueDate\": \"{{today()}}\"\n },\n {\n \"url\": \"coverage-assertion-id\",\n \"valueString\": \"0730da9e5a13eededb08999dcc06b89f22bdf797fa2457fc0d7c330599da1311\"\n },\n {\n \"url\": \"satisfied-pa-id\",\n \"valueString\": \"XXYYZ\"\n },\n {\n \"url\": \"contact\",\n \"valueContactDetail\": {\n \"name\": \"CRD Test Kit Wiki\",\n \"telecom\": [\n {\n \"system\": \"url\",\n \"value\": \"https://github.com/inferno-framework/davinci-crd-test-kit/wiki\"\n }\n ]\n }\n },\n {\n \"url\": \"expiry-date\",\n \"valueDate\": \"{{today() + 7 days}}\"\n }\n ],\n \"url\": \"http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information\"\n }\n ]\n },\n \"extension\": {\n \"com.inferno.includeForServices\": \"encounter-start-service\",\n \"com.inferno.resourceSelectionCriteria\": \"prefetch.encounter\"\n }\n },\n {\n \"type\": \"update\",\n \"description\": \"Added auth needed coverage information to Encounter resource (Subset Prefetch).\",\n \"resource\": {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"coverage\",\n \"valueReference\": {\n \"reference\": \"Coverage/crd221-demo-coverage-subset-prefetch\"\n }\n },\n {\n \"url\": \"covered\",\n \"valueCode\": \"conditional\"\n },\n {\n \"url\": \"pa-needed\",\n \"valueCode\": \"auth-needed\"\n },\n {\n \"url\": \"doc-needed\",\n \"valueCode\": \"clinical\"\n },\n {\n \"url\": \"doc-purpose\",\n \"valueCode\": \"withorder\"\n },\n {\n \"url\": \"billingCode\",\n \"valueCoding\": {\n \"system\": \"http://www.ama-assn.org/go/cpt\",\n \"code\": \"77067\"\n }\n },\n {\n \"url\": \"reason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/us/davinci-crd/CodeSystem/temp\",\n \"code\": \"auth-out-network\"\n }\n ],\n \"text\": \"Authorization is necessary if out-of-network.\"\n }\n },\n {\n \"extension\": [\n {\n \"url\": \"category\",\n \"valueCode\": \"cat-other\"\n },\n {\n \"url\": \"code\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/crd-coverage-detail\",\n \"code\": \"instructions\"\n }\n ]\n }\n },\n {\n \"url\": \"value\",\n \"valueUrl\": \"https://github.com/inferno-framework/davinci-crd-test-kit/wiki\"\n },\n {\n \"url\": \"qualification\",\n \"valueString\": \"CRD Test Kit Wiki\"\n }\n ],\n \"url\": \"detail\"\n },\n {\n \"url\": \"questionnaire\",\n \"valueCanonical\": \"http://inferno.healthit.gov/davinci-crd-test-kit/forms/XYZ\"\n },\n {\n \"url\": \"dependency\",\n \"valueReference\": {\n \"reference\": \"Encounter/crd221-demo-encounter-with-performer-loc-and-org\",\n \"display\": \"non-sensical self dependency\"\n }\n },\n {\n \"url\": \"info-needed\",\n \"valueCode\": \"performer\"\n },\n {\n \"url\": \"date\",\n \"valueDate\": \"{{today()}}\"\n },\n {\n \"url\": \"coverage-assertion-id\",\n \"valueString\": \"0730da9e5a13eededb08999dcc06b89f22adf797fa2457fc0d7c330599da1311\"\n },\n {\n \"url\": \"contact\",\n \"valueContactDetail\": {\n \"name\": \"CRD Test Kit Wiki\",\n \"telecom\": [\n {\n \"system\": \"url\",\n \"value\": \"https://github.com/inferno-framework/davinci-crd-test-kit/wiki\"\n }\n ]\n }\n },\n {\n \"url\": \"expiry-date\",\n \"valueDate\": \"{{today() + 7 days}}\"\n }\n ],\n \"url\": \"http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information\"\n }\n ]\n },\n \"extension\": {\n \"com.inferno.includeForServices\": \"encounter-start-subset\",\n \"com.inferno.resourceSelectionCriteria\": \"prefetch.enc\"\n }\n }\n ]\n}"
|
|
49
|
-
},
|
|
50
|
-
{
|
|
51
|
-
"name": "encounter_discharge_response_approach",
|
|
52
|
-
"description": "Determines how Inferno will generate response for encounter-discharge hook invocations.",
|
|
53
|
-
"title": "Response generation approach for encounter-discharge",
|
|
54
|
-
"type": "radio",
|
|
55
|
-
"value": "custom"
|
|
56
|
-
},
|
|
57
|
-
{
|
|
58
|
-
"name": "encounter_discharge_custom_response_template",
|
|
59
|
-
"description": "Provide a [custom response template](https://github.com/inferno-framework/davinci-crd-test-kit/wiki/Controlling-Simulated-Responses#tester-directed-custom-responses) in JSON form for Inferno to use when responding to hook invocations.",
|
|
60
|
-
"title": "Custom response template for encounter-discharge hook requests",
|
|
61
|
-
"type": "textarea",
|
|
62
|
-
"value": "{\n \"cards\": [\n {\n \"summary\": \"Encounter Discharge Launch SMART Application Card\",\n \"detail\": \"This is a Launch SMART Application Card which can cause the launching of SMART apps to occur in the context in which they are relevant to patient care and/or to payment-related decision-making.\",\n \"indicator\": \"info\",\n \"source\": {\n \"label\": \"Inferno\",\n \"url\": \"https://inferno.healthit.gov/\",\n \"topic\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/cdshooks-card-type\",\n \"code\": \"coverage-info\",\n \"display\": \"Coverage Information\"\n }\n },\n \"selectionBehavior\": \"any\",\n \"suggestions\": [\n {\n \"label\": \"Inferno placeholder suggestion\",\n \"uuid\": \"5abc166b-c50f-4df4-bdb1-2b0b62cb8e56\"\n }\n ],\n \"links\": [\n {\n \"label\": \"Inferno\",\n \"url\": \"<%= Inferno::Application['base_url'] %>/custom/smart/launch\",\n \"type\": \"smart\"\n }\n ],\n \"uuid\": \"daf166dd-d7fa-4c74-ba80-71bc41c9efc1\"\n },\n {\n \"summary\": \"Encounter Discharge External Reference Card\",\n \"detail\": \"This is an External Reference Card containing one or more links to external web pages, PDFs, or other resources that provide relevant coverage information.\",\n \"indicator\": \"info\",\n \"source\": {\n \"label\": \"Inferno\",\n \"url\": \"https://inferno.healthit.gov/\",\n \"topic\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/cdshooks-card-type\",\n \"code\": \"guideline\",\n \"display\": \"Guideline\"\n }\n },\n \"links\": [\n {\n \"label\": \"CRD IG External Reference Card Info\",\n \"url\": \"https://build.fhir.org/ig/HL7/davinci-crd/cards.html#external-reference\",\n \"type\": \"absolute\"\n }\n ],\n \"uuid\": \"c7bd850d-9d83-4056-aa0d-d887e6b68aed\"\n },\n {\n \"summary\": \"Encounter Discharge Instructions Card\",\n \"detail\": \"This is an Instructions card containing textual guidance to display to the user making the decisions.\",\n \"indicator\": \"info\",\n \"source\": {\n \"label\": \"Inferno\",\n \"url\": \"https://inferno.healthit.gov/\",\n \"topic\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/cdshooks-card-type\",\n \"code\": \"coverage-info\",\n \"display\": \"Coverage Information\"\n }\n },\n \"uuid\": \"1ab5f527-b173-4e5c-ad1f-56b4c4fe439a\"\n },\n {\n \"summary\": \"Encounter Discharge Create/Update Coverage Information Card (Complete Prefetch)\",\n \"detail\": \"This is an update to the coverage indicating an end date one year from today\",\n \"indicator\": \"info\",\n \"source\": {\n \"label\": \"Inferno\",\n \"url\": \"https://inferno.healthit.gov/\",\n \"topic\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/cdshooks-card-type\",\n \"code\": \"coverage-info\",\n \"display\": \"Coverage Information\"\n }\n },\n \"selectionBehavior\": \"any\",\n \"suggestions\": [\n {\n \"label\": \"Create/Update coverage information\",\n \"uuid\": \"5abc166b-c51f-4df4-bdb1-2b0b62bb8e45\",\n \"actions\": [\n {\n \"type\": \"update\",\n \"description\": \"Update current coverage record\",\n \"resource\": {\n \"resourceType\": \"Coverage\",\n \"id\": \"crd221-demo-coverage-complete-prefetch\",\n \"subscriberId\": \"10A3D58WH456\",\n \"relationship\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/subscriber-relationship\",\n \"code\": \"self\"\n }\n ]\n },\n \"beneficiary\": {\n \"reference\": \"Patient/crd221-demo-patient\"\n },\n \"status\": \"active\",\n \"class\": [\n {\n \"type\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/coverage-class\",\n \"code\": \"plan\"\n }\n ]\n },\n \"value\": \"Medicare Part A\"\n }\n ],\n \"period\": {\n \"end\": \"{{today() + 365 days}}\"\n },\n \"payor\": [\n {\n \"reference\": \"Organization/crd221-demo-payer-complete-prefetch\"\n }\n ]\n }\n }\n ]\n }\n ],\n \"uuid\": \"ac669633-6c4f-4599-b60b-e840ce0be625\",\n \"extension\": {\n \"com.inferno.includeForServices\": \"encounter-discharge-service\"\n }\n },\n {\n \"summary\": \"Encounter Discharge Create/Update Coverage Information Card (Subset Prefetch)\",\n \"detail\": \"This is an update to the coverage indicating an end date one year from today\",\n \"indicator\": \"info\",\n \"source\": {\n \"label\": \"Inferno\",\n \"url\": \"https://inferno.healthit.gov/\",\n \"topic\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/cdshooks-card-type\",\n \"code\": \"coverage-info\",\n \"display\": \"Coverage Information\"\n }\n },\n \"selectionBehavior\": \"any\",\n \"suggestions\": [\n {\n \"label\": \"Create/Update coverage information\",\n \"uuid\": \"5abc166b-c51f-4df4-bdb1-2b0b62bb8e45\",\n \"actions\": [\n {\n \"type\": \"update\",\n \"description\": \"Update current coverage record\",\n \"resource\": {\n \"resourceType\": \"Coverage\",\n \"id\": \"crd221-demo-coverage-subset-prefetch\",\n \"subscriberId\": \"10A3D58WH456\",\n \"relationship\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/subscriber-relationship\",\n \"code\": \"self\"\n }\n ]\n },\n \"beneficiary\": {\n \"reference\": \"Patient/crd221-demo-patient\"\n },\n \"status\": \"active\",\n \"class\": [\n {\n \"type\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/coverage-class\",\n \"code\": \"plan\"\n }\n ]\n },\n \"value\": \"Medicare Part A\"\n }\n ],\n \"period\": {\n \"end\": \"{{today() + 365 days}}\"\n },\n \"payor\": [\n {\n \"reference\": \"Organization/crd221-demo-payer-subset-prefetch\"\n }\n ]\n }\n }\n ]\n }\n ],\n \"uuid\": \"ac669633-6c4f-4599-b60b-e840ce0be625\",\n \"extension\": {\n \"com.inferno.includeForServices\": \"encounter-discharge-subset\"\n }\n },\n {\n \"summary\": \"Encounter Discharge Request Form Completion Card (Complete Prefetch)\",\n \"detail\": \"This is a Request Form Completion Card which indicates that there are forms that need to be completed.\",\n \"indicator\": \"info\",\n \"source\": {\n \"label\": \"Inferno\",\n \"url\": \"https://inferno.healthit.gov/\",\n \"topic\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/cdshooks-card-type\",\n \"code\": \"coverage-info\",\n \"display\": \"Coverage Information\"\n }\n },\n \"selectionBehavior\": \"any\",\n \"suggestions\": [\n {\n \"label\": \"Add 'completion of the ABC form' to your task list (possibly for reassignment)\",\n \"uuid\": \"5abc166b-c51f-4df4-bdb1-2b0b62cb8e45\",\n \"actions\": [\n {\n \"type\": \"create\",\n \"description\": \"Add version 2 of the XYZ form to the clinical system's repository (if it doesn't already exist)\",\n \"resource\": {\n \"resourceType\": \"Questionnaire\",\n \"id\": \"XYZ\",\n \"url\": \"http://inferno.healthit.gov/davinci-crd-test-kit/forms/XYZ\",\n \"title\": \"Cancer Quality Forum Questionnaire XYZ\",\n \"version\": \"2\",\n \"status\": \"active\",\n \"subjectType\": [\n \"Patient\"\n ],\n \"date\": \"2012-01\",\n \"item\": [\n {\n \"linkId\": \"1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/sections\",\n \"code\": \"COMORBIDITY\"\n }\n ],\n \"type\": \"group\",\n \"item\": [\n {\n \"linkId\": \"1.1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/questions\",\n \"code\": \"COMORB\"\n }\n ],\n \"prefix\": \"1\",\n \"type\": \"choice\",\n \"answerValueSet\": \"http://hl7.org/fhir/ValueSet/yesnodontknow\",\n \"item\": [\n {\n \"linkId\": \"1.1.1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/sections\",\n \"code\": \"CARDIAL\"\n }\n ],\n \"type\": \"group\",\n \"enableWhen\": [\n {\n \"question\": \"1.1\",\n \"operator\": \"=\",\n \"answerCoding\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v2-0136\",\n \"code\": \"Y\"\n }\n }\n ],\n \"item\": [\n {\n \"linkId\": \"1.1.1.1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/questions\",\n \"code\": \"COMORBCAR\"\n }\n ],\n \"prefix\": \"1.1\",\n \"type\": \"choice\",\n \"answerValueSet\": \"http://hl7.org/fhir/ValueSet/yesnodontknow\",\n \"item\": [\n {\n \"linkId\": \"1.1.1.1.1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/questions\",\n \"code\": \"COMCAR00\",\n \"display\": \"Angina Pectoris\"\n },\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"194828000\",\n \"display\": \"Angina (disorder)\"\n }\n ],\n \"prefix\": \"1.1.1\",\n \"type\": \"choice\",\n \"answerValueSet\": \"http://hl7.org/fhir/ValueSet/yesnodontknow\"\n },\n {\n \"linkId\": \"1.1.1.1.2\",\n \"code\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"22298006\",\n \"display\": \"Myocardial infarction (disorder)\"\n }\n ],\n \"prefix\": \"1.1.2\",\n \"type\": \"choice\",\n \"answerValueSet\": \"http://hl7.org/fhir/ValueSet/yesnodontknow\"\n }\n ]\n },\n {\n \"linkId\": \"1.1.1.2\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/questions\",\n \"code\": \"COMORBVAS\"\n }\n ],\n \"prefix\": \"1.2\",\n \"type\": \"choice\",\n \"answerValueSet\": \"http://hl7.org/fhir/ValueSet/yesnodontknow\"\n }\n ]\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"2\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/sections\",\n \"code\": \"HISTOPATHOLOGY\"\n }\n ],\n \"type\": \"group\",\n \"item\": [\n {\n \"linkId\": \"2.1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/sections\",\n \"code\": \"ABDOMINAL\"\n }\n ],\n \"type\": \"group\",\n \"item\": [\n {\n \"linkId\": \"2.1.2\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/questions\",\n \"code\": \"STADPT\",\n \"display\": \"pT category\"\n }\n ],\n \"type\": \"choice\"\n }\n ]\n }\n ]\n }\n ]\n },\n \"extension\": {\n \"davinci-crd.if-none-exist\": \"url=<%= Inferno::Application['base_url'] %>/custom/crd_server_v221/fhir/Questionnaire?url=http://inferno.healthit.gov/davinci-crd-test-kit/forms/XYZ\\u0026version=2\"\n }\n },\n {\n \"type\": \"create\",\n \"description\": \"Add 'Complete ABC form' to the task list\",\n \"resource\": {\n \"resourceType\": \"Task\",\n \"status\": \"ready\",\n \"intent\": \"order\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/uv/sdc/CodeSystem/temp\",\n \"code\": \"complete-questionnaire\"\n }\n ]\n },\n \"description\": \"Complete XYZ form for local retention\",\n \"for\": {\n \"reference\": \"Patient/{{context.patientId}}\"\n },\n \"authoredOn\": \"{{today()}}\",\n \"requester\": {\n \"reference\": \"Organization/crd221-demo-payer-complete-prefetch\"\n },\n \"input\": [\n {\n \"type\": {\n \"text\": \"questionnaire\",\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/uv/sdc/CodeSystem/temp\",\n \"code\": \"questionnaire\"\n }\n ]\n },\n \"valueCanonical\": \"http://inferno.healthit.gov/davinci-crd-test-kit/forms/XYZ\"\n }\n ],\n \"id\": \"779579bd-2a55-41a1-8487-c372fd02e9e8\"\n }\n }\n ]\n }\n ],\n \"uuid\": \"5abc166b-c50f-4df4-bdb1-2b0b62cb8e45\",\n \"extension\": {\n \"com.inferno.includeForServices\": \"encounter-discharge-service\"\n }\n },\n {\n \"summary\": \"Encounter Discharge Request Form Completion Card (Subset Prefetch)\",\n \"detail\": \"This is a Request Form Completion Card which indicates that there are forms that need to be completed.\",\n \"indicator\": \"info\",\n \"source\": {\n \"label\": \"Inferno\",\n \"url\": \"https://inferno.healthit.gov/\",\n \"topic\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/cdshooks-card-type\",\n \"code\": \"coverage-info\",\n \"display\": \"Coverage Information\"\n }\n },\n \"selectionBehavior\": \"any\",\n \"suggestions\": [\n {\n \"label\": \"Add 'completion of the ABC form' to your task list (possibly for reassignment)\",\n \"uuid\": \"5abc166b-c51f-4df4-bdb1-2b0b62cb8e45\",\n \"actions\": [\n {\n \"type\": \"create\",\n \"description\": \"Add version 2 of the XYZ form to the clinical system's repository (if it doesn't already exist)\",\n \"resource\": {\n \"resourceType\": \"Questionnaire\",\n \"id\": \"XYZ\",\n \"url\": \"http://inferno.healthit.gov/davinci-crd-test-kit/forms/XYZ\",\n \"title\": \"Cancer Quality Forum Questionnaire XYZ\",\n \"version\": \"2\",\n \"status\": \"active\",\n \"subjectType\": [\n \"Patient\"\n ],\n \"date\": \"2012-01\",\n \"item\": [\n {\n \"linkId\": \"1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/sections\",\n \"code\": \"COMORBIDITY\"\n }\n ],\n \"type\": \"group\",\n \"item\": [\n {\n \"linkId\": \"1.1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/questions\",\n \"code\": \"COMORB\"\n }\n ],\n \"prefix\": \"1\",\n \"type\": \"choice\",\n \"answerValueSet\": \"http://hl7.org/fhir/ValueSet/yesnodontknow\",\n \"item\": [\n {\n \"linkId\": \"1.1.1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/sections\",\n \"code\": \"CARDIAL\"\n }\n ],\n \"type\": \"group\",\n \"enableWhen\": [\n {\n \"question\": \"1.1\",\n \"operator\": \"=\",\n \"answerCoding\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v2-0136\",\n \"code\": \"Y\"\n }\n }\n ],\n \"item\": [\n {\n \"linkId\": \"1.1.1.1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/questions\",\n \"code\": \"COMORBCAR\"\n }\n ],\n \"prefix\": \"1.1\",\n \"type\": \"choice\",\n \"answerValueSet\": \"http://hl7.org/fhir/ValueSet/yesnodontknow\",\n \"item\": [\n {\n \"linkId\": \"1.1.1.1.1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/questions\",\n \"code\": \"COMCAR00\",\n \"display\": \"Angina Pectoris\"\n },\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"194828000\",\n \"display\": \"Angina (disorder)\"\n }\n ],\n \"prefix\": \"1.1.1\",\n \"type\": \"choice\",\n \"answerValueSet\": \"http://hl7.org/fhir/ValueSet/yesnodontknow\"\n },\n {\n \"linkId\": \"1.1.1.1.2\",\n \"code\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"22298006\",\n \"display\": \"Myocardial infarction (disorder)\"\n }\n ],\n \"prefix\": \"1.1.2\",\n \"type\": \"choice\",\n \"answerValueSet\": \"http://hl7.org/fhir/ValueSet/yesnodontknow\"\n }\n ]\n },\n {\n \"linkId\": \"1.1.1.2\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/questions\",\n \"code\": \"COMORBVAS\"\n }\n ],\n \"prefix\": \"1.2\",\n \"type\": \"choice\",\n \"answerValueSet\": \"http://hl7.org/fhir/ValueSet/yesnodontknow\"\n }\n ]\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"2\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/sections\",\n \"code\": \"HISTOPATHOLOGY\"\n }\n ],\n \"type\": \"group\",\n \"item\": [\n {\n \"linkId\": \"2.1\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/sections\",\n \"code\": \"ABDOMINAL\"\n }\n ],\n \"type\": \"group\",\n \"item\": [\n {\n \"linkId\": \"2.1.2\",\n \"code\": [\n {\n \"system\": \"http://inferno.healthit.gov/davinci-crd-test-kit/code/questions\",\n \"code\": \"STADPT\",\n \"display\": \"pT category\"\n }\n ],\n \"type\": \"choice\"\n }\n ]\n }\n ]\n }\n ]\n },\n \"extension\": {\n \"davinci-crd.if-none-exist\": \"url=<%= Inferno::Application['base_url'] %>/custom/crd_server_v221/fhir/Questionnaire?url=http://inferno.healthit.gov/davinci-crd-test-kit/forms/XYZ\\u0026version=2\"\n }\n },\n {\n \"type\": \"create\",\n \"description\": \"Add 'Complete ABC form' to the task list\",\n \"resource\": {\n \"resourceType\": \"Task\",\n \"status\": \"ready\",\n \"intent\": \"order\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/uv/sdc/CodeSystem/temp\",\n \"code\": \"complete-questionnaire\"\n }\n ]\n },\n \"description\": \"Complete XYZ form for local retention\",\n \"for\": {\n \"reference\": \"Patient/{{context.patientId}}\"\n },\n \"authoredOn\": \"{{today()}}\",\n \"requester\": {\n \"reference\": \"Organization/crd221-demo-payer-subset-prefetch\"\n },\n \"input\": [\n {\n \"type\": {\n \"text\": \"questionnaire\",\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/uv/sdc/CodeSystem/temp\",\n \"code\": \"questionnaire\"\n }\n ]\n },\n \"valueCanonical\": \"http://inferno.healthit.gov/davinci-crd-test-kit/forms/XYZ\"\n }\n ],\n \"id\": \"779579bd-2a55-41a1-8487-c372fd02e9e8\"\n }\n }\n ]\n }\n ],\n \"uuid\": \"5abc166b-c50f-4df4-bdb1-2b0b62cb8e45\",\n \"extension\": {\n \"com.inferno.includeForServices\": \"encounter-discharge-subset\"\n }\n }\n ],\n \"systemActions\": [\n {\n \"type\": \"update\",\n \"description\": \"Added auth needed coverage information to Encounter resource (Complete Prefetch).\",\n \"resource\": {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"coverage\",\n \"valueReference\": {\n \"reference\": \"Coverage/crd221-demo-coverage-complete-prefetch\"\n }\n },\n {\n \"url\": \"covered\",\n \"valueCode\": \"conditional\"\n },\n {\n \"url\": \"pa-needed\",\n \"valueCode\": \"auth-needed\"\n },\n {\n \"url\": \"doc-needed\",\n \"valueCode\": \"clinical\"\n },\n {\n \"url\": \"doc-purpose\",\n \"valueCode\": \"withorder\"\n },\n {\n \"url\": \"billingCode\",\n \"valueCoding\": {\n \"system\": \"http://www.ama-assn.org/go/cpt\",\n \"code\": \"77067\"\n }\n },\n {\n \"url\": \"reason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/us/davinci-crd/CodeSystem/temp\",\n \"code\": \"auth-out-network\"\n }\n ],\n \"text\": \"Authorization is necessary if out-of-network.\"\n }\n },\n {\n \"extension\": [\n {\n \"url\": \"category\",\n \"valueCode\": \"cat-other\"\n },\n {\n \"url\": \"code\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/crd-coverage-detail\",\n \"code\": \"instructions\"\n }\n ]\n }\n },\n {\n \"url\": \"value\",\n \"valueUrl\": \"https://github.com/inferno-framework/davinci-crd-test-kit/wiki\"\n },\n {\n \"url\": \"qualification\",\n \"valueString\": \"CRD Test Kit Wiki\"\n }\n ],\n \"url\": \"detail\"\n },\n {\n \"url\": \"questionnaire\",\n \"valueCanonical\": \"http://inferno.healthit.gov/davinci-crd-test-kit/forms/XYZ\"\n },\n {\n \"url\": \"dependency\",\n \"valueReference\": {\n \"reference\": \"Encounter/crd221-demo-encounter-with-performer-loc-and-org\",\n \"display\": \"non-sensical self dependency\"\n }\n },\n {\n \"url\": \"info-needed\",\n \"valueCode\": \"performer\"\n },\n {\n \"url\": \"date\",\n \"valueDate\": \"{{today()}}\"\n },\n {\n \"url\": \"coverage-assertion-id\",\n \"valueString\": \"0730da9e5a13eededb08999dcc06b89f22adf797fa2457fc0d7c330599da1311\"\n },\n {\n \"url\": \"contact\",\n \"valueContactDetail\": {\n \"name\": \"CRD Test Kit Wiki\",\n \"telecom\": [\n {\n \"system\": \"url\",\n \"value\": \"https://github.com/inferno-framework/davinci-crd-test-kit/wiki\"\n }\n ]\n }\n },\n {\n \"url\": \"expiry-date\",\n \"valueDate\": \"{{today() + 7 days}}\"\n }\n ],\n \"url\": \"http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information\"\n }\n ]\n },\n \"extension\": {\n \"com.inferno.includeForServices\": \"encounter-discharge-service\",\n \"com.inferno.resourceSelectionCriteria\": \"prefetch.encounter\"\n }\n },\n {\n \"type\": \"update\",\n \"description\": \"Added pa satisfied coverage information to Encounter resource (Subset Prefetch).\",\n \"resource\": {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"coverage\",\n \"valueReference\": {\n \"reference\": \"Coverage/crd221-demo-coverage-subset-prefetch\"\n }\n },\n {\n \"url\": \"covered\",\n \"valueCode\": \"covered\"\n },\n {\n \"url\": \"pa-needed\",\n \"valueCode\": \"satisfied\"\n },\n {\n \"url\": \"billingCode\",\n \"valueCoding\": {\n \"system\": \"http://www.ama-assn.org/go/cpt\",\n \"code\": \"77067\"\n }\n },\n {\n \"extension\": [\n {\n \"url\": \"category\",\n \"valueCode\": \"cat-other\"\n },\n {\n \"url\": \"code\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/crd-coverage-detail\",\n \"code\": \"instructions\"\n }\n ]\n }\n },\n {\n \"url\": \"value\",\n \"valueUrl\": \"https://github.com/inferno-framework/davinci-crd-test-kit/wiki\"\n },\n {\n \"url\": \"qualification\",\n \"valueString\": \"CRD Test Kit Wiki\"\n }\n ],\n \"url\": \"detail\"\n },\n {\n \"url\": \"date\",\n \"valueDate\": \"{{today()}}\"\n },\n {\n \"url\": \"coverage-assertion-id\",\n \"valueString\": \"0730da9e5a13eededb08999dcc06b89f22bdf797fa2457fc0d7c330599da1311\"\n },\n {\n \"url\": \"satisfied-pa-id\",\n \"valueString\": \"XXYYZ\"\n },\n {\n \"url\": \"contact\",\n \"valueContactDetail\": {\n \"name\": \"CRD Test Kit Wiki\",\n \"telecom\": [\n {\n \"system\": \"url\",\n \"value\": \"https://github.com/inferno-framework/davinci-crd-test-kit/wiki\"\n }\n ]\n }\n },\n {\n \"url\": \"expiry-date\",\n \"valueDate\": \"{{today() + 7 days}}\"\n }\n ],\n \"url\": \"http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information\"\n }\n ]\n },\n \"extension\": {\n \"com.inferno.includeForServices\": \"encounter-discharge-subset\",\n \"com.inferno.resourceSelectionCriteria\": \"prefetch.enc\"\n }\n }\n ]\n}"
|
|
63
|
-
},
|
|
64
|
-
{
|
|
65
|
-
"name": "order_select_selected_response_types",
|
|
66
|
-
"description": "Select the cards/action response types that the Inferno hook request endpoints will return. The default response type that will be returned for this hook is the `Instructions` card type.",
|
|
67
|
-
"title": "Response types to return from order-select hook requests",
|
|
68
|
-
"type": "checkbox",
|
|
69
|
-
"value": "[\"external_reference\",\"instructions\",\"coverage_information\",\"request_form_completion\",\"create_update_coverage_info\",\"launch_smart_app\",\"propose_alternate_request\",\"companions_prerequisites\"]"
|
|
70
|
-
},
|
|
71
|
-
{
|
|
72
|
-
"name": "order_dispatch_selected_response_types",
|
|
73
|
-
"description": "Select the cards/action response types that the Inferno hook request endpoints will return. The default response type that will be returned for this hook is the `Coverage Information` card type.",
|
|
74
|
-
"title": "Response types to return from order-dispatch hook requests",
|
|
75
|
-
"type": "checkbox",
|
|
76
|
-
"value": "[\"external_reference\",\"instructions\",\"coverage_information\",\"request_form_completion\",\"create_update_coverage_info\",\"launch_smart_app\",\"propose_alternate_request\",\"companions_prerequisites\"]"
|
|
77
|
-
},
|
|
78
|
-
{
|
|
79
|
-
"name": "order_sign_selected_response_types",
|
|
80
|
-
"description": "Select the cards/action response types that the Inferno hook request endpoints will return. The default response type that will be returned for this hook is the `Coverage Information` card type.",
|
|
81
|
-
"title": "Response types to return from order-sign hook requests",
|
|
82
|
-
"type": "checkbox",
|
|
83
|
-
"value": "[\"external_reference\",\"instructions\",\"coverage_information\",\"request_form_completion\",\"create_update_coverage_info\",\"launch_smart_app\",\"propose_alternate_request\",\"companions_prerequisites\"]"
|
|
84
|
-
},
|
|
85
|
-
{
|
|
86
|
-
"name": "patient_ids",
|
|
87
|
-
"description": "Comma separated list of Patient IDs that in sum contain all MUST SUPPORT elements",
|
|
88
|
-
"optional": true,
|
|
89
|
-
"title": "Patient IDs",
|
|
90
|
-
"type": "text",
|
|
91
|
-
"value": "85,355,907"
|
|
92
|
-
}
|
|
93
|
-
]
|
|
94
|
-
}
|
data/lib/davinci_crd_test_kit/server/v2.2.1/verify_response/card_optional_fields_validation_test.rb
DELETED
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
require_relative '../../server_test_helper'
|
|
2
|
-
require_relative '../../server_hook_request_validation'
|
|
3
|
-
require_relative '../../../cross_suite/cards_validation'
|
|
4
|
-
|
|
5
|
-
module DaVinciCRDTestKit
|
|
6
|
-
module V221
|
|
7
|
-
class CardOptionalFieldsValidationTest < Inferno::Test
|
|
8
|
-
include DaVinciCRDTestKit::ServerTestHelper
|
|
9
|
-
include DaVinciCRDTestKit::ServerHookRequestValidation
|
|
10
|
-
include DaVinciCRDTestKit::CardsValidation
|
|
11
|
-
|
|
12
|
-
title 'Cards contain valid optional fields'
|
|
13
|
-
id :crd_v221_card_optional_fields_validation
|
|
14
|
-
description %(
|
|
15
|
-
This test checks for the presence and validity of optional fields in a card,
|
|
16
|
-
but only if the card's required fields are valid. As specified in the
|
|
17
|
-
[CDS Hooks specification section on Card Attributes](https://cds-hooks.hl7.org/2.0/#card-attributes),
|
|
18
|
-
the optional fields include `uuid`, `detail`, `suggestions`, `overrideReasons`, and `links`.
|
|
19
|
-
|
|
20
|
-
Additionally, the test validates the presence of the conditional field `selectionBehavior`
|
|
21
|
-
only if the `suggestions` field is present.
|
|
22
|
-
)
|
|
23
|
-
optional
|
|
24
|
-
input :valid_cards
|
|
25
|
-
output :valid_cards_with_links, :valid_cards_with_suggestions
|
|
26
|
-
|
|
27
|
-
verifies_requirements 'hl7.fhir.us.davinci-crd_2.2.1@resp-3',
|
|
28
|
-
'hl7.fhir.us.davinci-crd_2.2.1@resp-13',
|
|
29
|
-
'hl7.fhir.us.davinci-crd_2.2.1@resp-18',
|
|
30
|
-
'hl7.fhir.us.davinci-crd_2.2.1@resp-19',
|
|
31
|
-
'hl7.fhir.us.davinci-crd_2.2.1@resp-22'
|
|
32
|
-
|
|
33
|
-
def cards_with_suggestions
|
|
34
|
-
@cards_with_suggestions ||= []
|
|
35
|
-
end
|
|
36
|
-
|
|
37
|
-
def cards_with_links
|
|
38
|
-
@cards_with_links ||= []
|
|
39
|
-
end
|
|
40
|
-
|
|
41
|
-
run do
|
|
42
|
-
parsed_cards = parse_json(valid_cards)
|
|
43
|
-
parsed_cards.each do |card|
|
|
44
|
-
if valid_card_with_optionals?(card, 'v221')
|
|
45
|
-
cards_with_links << card if card['links']
|
|
46
|
-
cards_with_suggestions << card if card['suggestions']
|
|
47
|
-
end
|
|
48
|
-
end
|
|
49
|
-
|
|
50
|
-
output valid_cards_with_links: cards_with_links.to_json
|
|
51
|
-
output valid_cards_with_suggestions: cards_with_suggestions.to_json
|
|
52
|
-
|
|
53
|
-
no_error_validation('Some cards with valid required fields have invalid optional fields.')
|
|
54
|
-
end
|
|
55
|
-
end
|
|
56
|
-
end
|
|
57
|
-
end
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
require_relative '../../server_test_helper'
|
|
2
|
-
require_relative '../../server_hook_helper'
|
|
3
|
-
require_relative '../../../cross_suite/cards_identification'
|
|
4
|
-
|
|
5
|
-
module DaVinciCRDTestKit
|
|
6
|
-
module V221
|
|
7
|
-
class CoverageInformationSystemActionReceivedTest < Inferno::Test
|
|
8
|
-
include DaVinciCRDTestKit::ServerTestHelper
|
|
9
|
-
include DaVinciCRDTestKit::ServerHookHelper
|
|
10
|
-
include DaVinciCRDTestKit::CardsIdentification
|
|
11
|
-
|
|
12
|
-
title 'Server returns a Coverage Information system action'
|
|
13
|
-
id :crd_v221_coverage_info_system_action_received
|
|
14
|
-
description %(
|
|
15
|
-
This test validates that a [Coverage Information](https://hl7.org/fhir/us/davinci-crd/STU2/cards.html#coverage-information)
|
|
16
|
-
system action was returned. It does so by:
|
|
17
|
-
- First checking for the presence of actions with a `resource` element of the following types:
|
|
18
|
-
- For `appointment-book`: Appointment
|
|
19
|
-
- For `order-sign` or `order-dispatch`: DeviceRequest, MedicationRequest, NutritionOrder,
|
|
20
|
-
ServiceRequest, or VisionPrescription
|
|
21
|
-
- Then, among the target actions, checking if their resource has the [coverage-information extension](http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information).
|
|
22
|
-
)
|
|
23
|
-
# verifies_requirements 'hl7.fhir.us.davinci-crd_2.0.1@272', 'hl7.fhir.us.davinci-crd_2.0.1@273',
|
|
24
|
-
# 'hl7.fhir.us.davinci-crd_2.0.1@274', 'hl7.fhir.us.davinci-crd_2.0.1@275',
|
|
25
|
-
# 'hl7.fhir.us.davinci-crd_2.0.1@276', 'hl7.fhir.us.davinci-crd_2.0.1@277'
|
|
26
|
-
|
|
27
|
-
input :valid_system_actions, :invoked_hook
|
|
28
|
-
output :coverage_info
|
|
29
|
-
|
|
30
|
-
def resources_by_hook
|
|
31
|
-
shared_resources = [
|
|
32
|
-
'DeviceRequest', 'MedicationRequest', 'NutritionOrder',
|
|
33
|
-
'ServiceRequest', 'VisionPrescription'
|
|
34
|
-
]
|
|
35
|
-
{
|
|
36
|
-
'appointment-book' => ['Appointment'],
|
|
37
|
-
'order-sign' => shared_resources,
|
|
38
|
-
'order-dispatch' => shared_resources,
|
|
39
|
-
'order-select' => shared_resources,
|
|
40
|
-
'encounter-start' => ['Encounter'],
|
|
41
|
-
'encounter-discharge' => ['Encounter']
|
|
42
|
-
}
|
|
43
|
-
end
|
|
44
|
-
|
|
45
|
-
run do
|
|
46
|
-
parsed_actions = parse_json(valid_system_actions)
|
|
47
|
-
target_resources = resources_by_hook[invoked_hook]
|
|
48
|
-
|
|
49
|
-
target_actions = parsed_actions.select do |action|
|
|
50
|
-
resource = FHIR.from_contents(action['resource'].to_json)
|
|
51
|
-
target_resources.include?(resource&.resourceType)
|
|
52
|
-
end
|
|
53
|
-
|
|
54
|
-
coverage_info_system_actions = target_actions.select do |action|
|
|
55
|
-
coverage_information_response_type?(action)
|
|
56
|
-
end
|
|
57
|
-
|
|
58
|
-
assert coverage_info_system_actions.present?,
|
|
59
|
-
"Coverage Information system action was not returned in the #{tested_hook_name} hook response."
|
|
60
|
-
|
|
61
|
-
output coverage_info: coverage_info_system_actions.to_json
|
|
62
|
-
end
|
|
63
|
-
end
|
|
64
|
-
end
|
|
65
|
-
end
|