davinci_pas_test_kit 0.12.1 → 0.13.0

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 (114) hide show
  1. checksums.yaml +4 -4
  2. data/config/presets/pas_server_subscription_creation_against_pas_client.json +32 -0
  3. data/lib/davinci_pas_test_kit/certs/InfernoCA.key +52 -0
  4. data/lib/davinci_pas_test_kit/certs/InfernoCA.pem +35 -0
  5. data/lib/davinci_pas_test_kit/certs/TestKit.pem +32 -0
  6. data/lib/davinci_pas_test_kit/certs/TestKitPrivateKey.key +28 -0
  7. data/lib/davinci_pas_test_kit/client_suite.rb +141 -100
  8. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_registration/configuration_other_display_test.rb +46 -0
  9. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_registration/configuration_smart_display_test.rb +37 -0
  10. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_registration/configuration_udap_display_test.rb +37 -0
  11. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_registration/other_auth_attest_test.rb +36 -0
  12. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_approval_submit_test.rb +24 -10
  13. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_denial_submit_test.rb +23 -10
  14. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_inquire_must_support_test.rb +21 -9
  15. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_inquire_request_bundle_validation_test.rb +4 -0
  16. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_pended_submit_test.rb +30 -14
  17. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_request_bundle_validation_test.rb +6 -0
  18. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_response_attest.rb +4 -9
  19. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_submit_must_support_test.rb +24 -9
  20. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_subscription_create_test.rb +26 -13
  21. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_subscription_pas_conformance_test.rb +6 -24
  22. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/error_tests/pas_inquiry_error_test.rb +1 -0
  23. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/error_tests/pas_submission_error_test.rb +3 -0
  24. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/notification/pas_subscription_notification_test.rb +24 -20
  25. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_client_approval_group.rb +6 -4
  26. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_client_auth_smart_group.rb +32 -0
  27. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_client_auth_udap_group.rb +31 -0
  28. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_client_denial_group.rb +10 -4
  29. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_client_must_support_group.rb +29 -0
  30. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_client_options.rb +25 -0
  31. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_client_pended_group.rb +11 -4
  32. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_client_registration_group.rb +63 -0
  33. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_client_subscription_setup_group.rb +23 -0
  34. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_client_workflows_group.rb +21 -0
  35. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_server_subscription_input_conformance.rb +35 -0
  36. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_server_subscription_setup.rb +43 -0
  37. data/lib/davinci_pas_test_kit/descriptions.rb +10 -0
  38. data/lib/davinci_pas_test_kit/docs/client_suite_description_v201.md +203 -79
  39. data/lib/davinci_pas_test_kit/docs/demo/PAS Client Suite Demonstration.postman_collection.json +246 -0
  40. data/lib/davinci_pas_test_kit/docs/server_suite_description_v201.md +21 -10
  41. data/lib/davinci_pas_test_kit/endpoints/claim_endpoint.rb +13 -1
  42. data/lib/davinci_pas_test_kit/endpoints/subscription_create_endpoint.rb +13 -1
  43. data/lib/davinci_pas_test_kit/endpoints/subscription_status_endpoint.rb +10 -1
  44. data/lib/davinci_pas_test_kit/endpoints/token_endpoint.rb +29 -15
  45. data/lib/davinci_pas_test_kit/generated/v2.0.1/beneficiary/metadata.yml +2 -1
  46. data/lib/davinci_pas_test_kit/generated/v2.0.1/claim/claim_operation_test.rb +1 -1
  47. data/lib/davinci_pas_test_kit/generated/v2.0.1/claim/metadata.yml +28 -17
  48. data/lib/davinci_pas_test_kit/generated/v2.0.1/claim_inquiry/claim_inquiry_operation_test.rb +1 -2
  49. data/lib/davinci_pas_test_kit/generated/v2.0.1/claim_inquiry/client_inquire_request_claim_inquiry_must_support_test.rb +4 -1
  50. data/lib/davinci_pas_test_kit/generated/v2.0.1/claim_inquiry/metadata.yml +7 -1
  51. data/lib/davinci_pas_test_kit/generated/v2.0.1/claim_inquiry/server_inquire_request_claim_inquiry_must_support_test.rb +3 -1
  52. data/lib/davinci_pas_test_kit/generated/v2.0.1/claim_update/client_submit_request_claim_update_must_support_test.rb +9 -3
  53. data/lib/davinci_pas_test_kit/generated/v2.0.1/claim_update/metadata.yml +28 -17
  54. data/lib/davinci_pas_test_kit/generated/v2.0.1/claim_update/server_submit_request_claim_update_must_support_test.rb +9 -3
  55. data/lib/davinci_pas_test_kit/generated/v2.0.1/claiminquiryresponse/metadata.yml +6 -0
  56. data/lib/davinci_pas_test_kit/generated/v2.0.1/claiminquiryresponse/server_inquire_response_claiminquiryresponse_must_support_test.rb +1 -0
  57. data/lib/davinci_pas_test_kit/generated/v2.0.1/claimresponse/metadata.yml +8 -0
  58. data/lib/davinci_pas_test_kit/generated/v2.0.1/claimresponse/server_submit_response_claimresponse_must_support_test.rb +1 -0
  59. data/lib/davinci_pas_test_kit/generated/v2.0.1/communication_request/metadata.yml +4 -0
  60. data/lib/davinci_pas_test_kit/generated/v2.0.1/coverage/metadata.yml +11 -5
  61. data/lib/davinci_pas_test_kit/generated/v2.0.1/device_request/metadata.yml +2 -0
  62. data/lib/davinci_pas_test_kit/generated/v2.0.1/encounter/metadata.yml +6 -0
  63. data/lib/davinci_pas_test_kit/generated/v2.0.1/insurer/metadata.yml +4 -2
  64. data/lib/davinci_pas_test_kit/generated/v2.0.1/medication_request/metadata.yml +2 -0
  65. data/lib/davinci_pas_test_kit/generated/v2.0.1/metadata.yml +153 -53
  66. data/lib/davinci_pas_test_kit/generated/v2.0.1/nutrition_order/metadata.yml +2 -0
  67. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_inquiry_request_bundle/metadata.yml +2 -1
  68. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_inquiry_request_bundle/server_pas_inquiry_request_bundle_validation_test.rb +0 -2
  69. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_inquiry_response_bundle/metadata.yml +2 -1
  70. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_inquiry_response_bundle/server_pas_inquiry_response_bundle_validation_test.rb +2 -3
  71. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_request_bundle/metadata.yml +2 -1
  72. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_request_bundle/server_pas_request_bundle_validation_test.rb +0 -2
  73. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_response_bundle/metadata.yml +2 -1
  74. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_response_bundle/server_pas_response_bundle_validation_test.rb +2 -3
  75. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_server_approval_use_case_group.rb +0 -1
  76. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_server_denial_use_case_group.rb +0 -1
  77. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_server_must_support_use_case_group.rb +3 -0
  78. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_server_pended_use_case_group.rb +10 -3
  79. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner/metadata.yml +2 -1
  80. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner_role/metadata.yml +4 -0
  81. data/lib/davinci_pas_test_kit/generated/v2.0.1/requestor/metadata.yml +4 -2
  82. data/lib/davinci_pas_test_kit/generated/v2.0.1/server_suite.rb +8 -5
  83. data/lib/davinci_pas_test_kit/generated/v2.0.1/service_request/metadata.yml +2 -0
  84. data/lib/davinci_pas_test_kit/generated/v2.0.1/task/metadata.yml +4 -0
  85. data/lib/davinci_pas_test_kit/generator/group_generator.rb +20 -4
  86. data/lib/davinci_pas_test_kit/generator/group_metadata_extractor.rb +2 -2
  87. data/lib/davinci_pas_test_kit/generator/ig_resources.rb +4 -0
  88. data/lib/davinci_pas_test_kit/generator/must_support_test_generator.rb +14 -3
  89. data/lib/davinci_pas_test_kit/generator/operation_test_generator.rb +16 -3
  90. data/lib/davinci_pas_test_kit/generator/templates/group.rb.erb +10 -3
  91. data/lib/davinci_pas_test_kit/generator/templates/must_support.rb.erb +3 -0
  92. data/lib/davinci_pas_test_kit/generator/templates/operation.rb.erb +4 -1
  93. data/lib/davinci_pas_test_kit/generator/templates/suite.rb.erb +8 -5
  94. data/lib/davinci_pas_test_kit/generator/templates/validation.rb.erb +5 -4
  95. data/lib/davinci_pas_test_kit/generator/validation_test_generator.rb +12 -1
  96. data/lib/davinci_pas_test_kit/must_support_test.rb +2 -202
  97. data/lib/davinci_pas_test_kit/pas_bundle_validation.rb +4 -4
  98. data/lib/davinci_pas_test_kit/pas_subscription_verification.rb +30 -0
  99. data/lib/davinci_pas_test_kit/requirements/davinci-pas-test-kit_out_of_scope_requirements.csv +11 -0
  100. data/lib/davinci_pas_test_kit/requirements/davinci-pas-test-kit_requirements.csv +214 -0
  101. data/lib/davinci_pas_test_kit/requirements/generated/davinci-pas-test-kit_requirements_coverage.csv +214 -0
  102. data/lib/davinci_pas_test_kit/session_identification.rb +45 -0
  103. data/lib/davinci_pas_test_kit/tags.rb +1 -0
  104. data/lib/davinci_pas_test_kit/urls.rb +61 -9
  105. data/lib/davinci_pas_test_kit/version.rb +2 -2
  106. data/lib/davinci_pas_test_kit.rb +1 -0
  107. data/lib/inferno_requirements_tools/ext/inferno_core/runnable.rb +22 -0
  108. data/lib/inferno_requirements_tools/tasks/requirements_coverage.rb +284 -0
  109. data/lib/requirements_config.yaml +17 -0
  110. metadata +62 -10
  111. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_token_request_test.rb +0 -31
  112. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_token_validation_test.rb +0 -18
  113. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_client_authentication_group.rb +0 -49
  114. data/lib/davinci_pas_test_kit/generator/must_support_metadata_extractor.rb +0 -327
@@ -18,7 +18,8 @@
18
18
  :must_supports:
19
19
  :extensions: []
20
20
  :slices:
21
- - :name: Bundle.entry:Claim
21
+ - :slice_id: Bundle.entry:Claim
22
+ :slice_name: Claim
22
23
  :path: entry
23
24
  :discriminator:
24
25
  :type: type
@@ -85,7 +86,8 @@
85
86
  :must_supports:
86
87
  :extensions: []
87
88
  :slices:
88
- - :name: Bundle.entry:ClaimResponse
89
+ - :slice_id: Bundle.entry:ClaimResponse
90
+ :slice_name: ClaimResponse
89
91
  :path: entry
90
92
  :discriminator:
91
93
  :type: type
@@ -146,7 +148,8 @@
146
148
  :must_supports:
147
149
  :extensions: []
148
150
  :slices:
149
- - :name: Bundle.entry:Claim
151
+ - :slice_id: Bundle.entry:Claim
152
+ :slice_name: Claim
150
153
  :path: entry
151
154
  :discriminator:
152
155
  :type: type
@@ -213,7 +216,8 @@
213
216
  :must_supports:
214
217
  :extensions: []
215
218
  :slices:
216
- - :name: Bundle.entry:ClaimResponse
219
+ - :slice_id: Bundle.entry:ClaimResponse
220
+ :slice_name: ClaimResponse
217
221
  :path: entry
218
222
  :discriminator:
219
223
  :type: type
@@ -322,6 +326,8 @@
322
326
  - :path: insurer
323
327
  :types:
324
328
  - Reference
329
+ :target_profiles:
330
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-insurer
325
331
  - :path: provider
326
332
  :types:
327
333
  - Reference
@@ -335,7 +341,9 @@
335
341
  - :path: supportingInfo
336
342
  - :path: supportingInfo.sequence
337
343
  - :path: supportingInfo.category
338
- - :path: supportingInfo.timing[x]
344
+ - :path: supportingInfo:PatientEvent.timing[x]
345
+ - :path: supportingInfo:AdmissionDates.timing[x]
346
+ - :path: supportingInfo:DischargeDates.timing[x]
339
347
  - :path: diagnosis
340
348
  - :path: diagnosis.sequence
341
349
  - :path: diagnosis.diagnosis[x]
@@ -345,6 +353,8 @@
345
353
  - :path: insurance.coverage
346
354
  :types:
347
355
  - Reference
356
+ :target_profiles:
357
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-coverage
348
358
  - :path: accident
349
359
  - :path: accident.date
350
360
  - :path: accident.type
@@ -818,6 +828,8 @@
818
828
  - :path: insurer
819
829
  :types:
820
830
  - Reference
831
+ :target_profiles:
832
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-insurer
821
833
  - :path: provider
822
834
  :types:
823
835
  - Reference
@@ -831,7 +843,9 @@
831
843
  - :path: supportingInfo
832
844
  - :path: supportingInfo.sequence
833
845
  - :path: supportingInfo.category
834
- - :path: supportingInfo.timing[x]
846
+ - :path: supportingInfo:PatientEvent.timing[x]
847
+ - :path: supportingInfo:AdmissionDates.timing[x]
848
+ - :path: supportingInfo:DischargeDates.timing[x]
835
849
  - :path: diagnosis
836
850
  - :path: diagnosis.sequence
837
851
  - :path: diagnosis.diagnosis[x]
@@ -841,6 +855,8 @@
841
855
  - :path: insurance.coverage
842
856
  :types:
843
857
  - Reference
858
+ :target_profiles:
859
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-coverage
844
860
  - :path: accident
845
861
  - :path: accident.date
846
862
  - :path: accident.type
@@ -1327,25 +1343,29 @@
1327
1343
  :path: item.extension
1328
1344
  :url: http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-requestedService
1329
1345
  :slices:
1330
- - :name: Claim.supportingInfo:AdditionalInformation
1346
+ - :slice_id: Claim.supportingInfo:AdditionalInformation
1347
+ :slice_name: AdditionalInformation
1331
1348
  :path: supportingInfo
1332
1349
  :discriminator:
1333
- :type: value
1334
- :values:
1335
- - :path: category
1336
- :value:
1337
- - :name: Claim.supportingInfo:MessageText
1350
+ :type: patternCodeableConcept
1351
+ :path: category
1352
+ :code: additionalInformation
1353
+ :system: http://hl7.org/fhir/us/davinci-pas/CodeSystem/PASTempCodes
1354
+ - :slice_id: Claim.supportingInfo:MessageText
1355
+ :slice_name: MessageText
1338
1356
  :path: supportingInfo
1339
1357
  :discriminator:
1340
- :type: value
1341
- :values:
1342
- - :path: category
1343
- :value:
1358
+ :type: patternCodeableConcept
1359
+ :path: category
1360
+ :code: freeFormMessage
1361
+ :system: http://hl7.org/fhir/us/davinci-pas/CodeSystem/PASTempCodes
1344
1362
  :elements:
1345
1363
  - :path: identifier
1346
1364
  - :path: insurer
1347
1365
  :types:
1348
1366
  - Reference
1367
+ :target_profiles:
1368
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-insurer
1349
1369
  - :path: provider
1350
1370
  :types:
1351
1371
  - Reference
@@ -1357,14 +1377,19 @@
1357
1377
  - :path: careTeam.role
1358
1378
  - :path: careTeam.qualification
1359
1379
  - :path: supportingInfo
1360
- - :path: supportingInfo.category
1361
- - :path: supportingInfo.timing[x]
1362
- - :path: supportingInfo.category.coding.code
1363
- :fixed_value: additionalInformation
1364
1380
  - :path: supportingInfo.sequence
1365
- - :path: supportingInfo.category.coding.code
1366
- :fixed_value: freeFormMessage
1367
- - :path: supportingInfo.value[x]
1381
+ - :path: supportingInfo.category
1382
+ - :path: supportingInfo:PatientEvent.timing[x]
1383
+ - :path: supportingInfo:AdmissionDates.timing[x]
1384
+ - :path: supportingInfo:DischargeDates.timing[x]
1385
+ - :path: supportingInfo:AdditionalInformation.sequence
1386
+ - :path: supportingInfo:AdditionalInformation.category
1387
+ - :path: supportingInfo:AdditionalInformation.value[x]
1388
+ :types:
1389
+ - Reference
1390
+ - :path: supportingInfo:MessageText.sequence
1391
+ - :path: supportingInfo:MessageText.category
1392
+ - :path: supportingInfo:MessageText.value[x]
1368
1393
  - :path: diagnosis
1369
1394
  - :path: diagnosis.sequence
1370
1395
  - :path: diagnosis.diagnosis[x]
@@ -1374,6 +1399,8 @@
1374
1399
  - :path: insurance.coverage
1375
1400
  :types:
1376
1401
  - Reference
1402
+ :target_profiles:
1403
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-coverage
1377
1404
  - :path: accident
1378
1405
  - :path: accident.date
1379
1406
  - :path: accident.type
@@ -1912,25 +1939,29 @@
1912
1939
  :path: item.extension
1913
1940
  :url: http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-requestedService
1914
1941
  :slices:
1915
- - :name: Claim.supportingInfo:AdditionalInformation
1942
+ - :slice_id: Claim.supportingInfo:AdditionalInformation
1943
+ :slice_name: AdditionalInformation
1916
1944
  :path: supportingInfo
1917
1945
  :discriminator:
1918
- :type: value
1919
- :values:
1920
- - :path: category
1921
- :value:
1922
- - :name: Claim.supportingInfo:MessageText
1946
+ :type: patternCodeableConcept
1947
+ :path: category
1948
+ :code: additionalInformation
1949
+ :system: http://hl7.org/fhir/us/davinci-pas/CodeSystem/PASTempCodes
1950
+ - :slice_id: Claim.supportingInfo:MessageText
1951
+ :slice_name: MessageText
1923
1952
  :path: supportingInfo
1924
1953
  :discriminator:
1925
- :type: value
1926
- :values:
1927
- - :path: category
1928
- :value:
1954
+ :type: patternCodeableConcept
1955
+ :path: category
1956
+ :code: freeFormMessage
1957
+ :system: http://hl7.org/fhir/us/davinci-pas/CodeSystem/PASTempCodes
1929
1958
  :elements:
1930
1959
  - :path: identifier
1931
1960
  - :path: insurer
1932
1961
  :types:
1933
1962
  - Reference
1963
+ :target_profiles:
1964
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-insurer
1934
1965
  - :path: provider
1935
1966
  :types:
1936
1967
  - Reference
@@ -1942,14 +1973,19 @@
1942
1973
  - :path: careTeam.role
1943
1974
  - :path: careTeam.qualification
1944
1975
  - :path: supportingInfo
1945
- - :path: supportingInfo.category
1946
- - :path: supportingInfo.timing[x]
1947
- - :path: supportingInfo.category.coding.code
1948
- :fixed_value: additionalInformation
1949
1976
  - :path: supportingInfo.sequence
1950
- - :path: supportingInfo.category.coding.code
1951
- :fixed_value: freeFormMessage
1952
- - :path: supportingInfo.value[x]
1977
+ - :path: supportingInfo.category
1978
+ - :path: supportingInfo:PatientEvent.timing[x]
1979
+ - :path: supportingInfo:AdmissionDates.timing[x]
1980
+ - :path: supportingInfo:DischargeDates.timing[x]
1981
+ - :path: supportingInfo:AdditionalInformation.sequence
1982
+ - :path: supportingInfo:AdditionalInformation.category
1983
+ - :path: supportingInfo:AdditionalInformation.value[x]
1984
+ :types:
1985
+ - Reference
1986
+ - :path: supportingInfo:MessageText.sequence
1987
+ - :path: supportingInfo:MessageText.category
1988
+ - :path: supportingInfo:MessageText.value[x]
1953
1989
  - :path: diagnosis
1954
1990
  - :path: diagnosis.sequence
1955
1991
  - :path: diagnosis.diagnosis[x]
@@ -1959,6 +1995,8 @@
1959
1995
  - :path: insurance.coverage
1960
1996
  :types:
1961
1997
  - Reference
1998
+ :target_profiles:
1999
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-coverage
1962
2000
  - :path: accident
1963
2001
  - :path: accident.date
1964
2002
  - :path: accident.type
@@ -2466,16 +2504,22 @@
2466
2504
  - :path: patient
2467
2505
  :types:
2468
2506
  - Reference
2507
+ :target_profiles:
2508
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-beneficiary
2469
2509
  - :path: created
2470
2510
  - :path: insurer
2471
2511
  :types:
2472
2512
  - Reference
2513
+ :target_profiles:
2514
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-insurer
2473
2515
  - :path: requestor
2474
2516
  :types:
2475
2517
  - Reference
2476
2518
  - :path: request
2477
2519
  :types:
2478
2520
  - Reference
2521
+ :target_profiles:
2522
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-claim
2479
2523
  - :path: outcome
2480
2524
  - :path: preAuthPeriod
2481
2525
  - :path: item
@@ -2770,16 +2814,22 @@
2770
2814
  - :path: patient
2771
2815
  :types:
2772
2816
  - Reference
2817
+ :target_profiles:
2818
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-beneficiary
2773
2819
  - :path: created
2774
2820
  - :path: insurer
2775
2821
  :types:
2776
2822
  - Reference
2823
+ :target_profiles:
2824
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-insurer
2777
2825
  - :path: requestor
2778
2826
  :types:
2779
2827
  - Reference
2780
2828
  - :path: request
2781
2829
  :types:
2782
2830
  - Reference
2831
+ :target_profiles:
2832
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-claim
2783
2833
  - :path: outcome
2784
2834
  - :path: preAuthPeriod
2785
2835
  - :path: item
@@ -3071,16 +3121,22 @@
3071
3121
  - :path: patient
3072
3122
  :types:
3073
3123
  - Reference
3124
+ :target_profiles:
3125
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-beneficiary
3074
3126
  - :path: created
3075
3127
  - :path: insurer
3076
3128
  :types:
3077
3129
  - Reference
3130
+ :target_profiles:
3131
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-insurer
3078
3132
  - :path: requestor
3079
3133
  :types:
3080
3134
  - Reference
3081
3135
  - :path: request
3082
3136
  :types:
3083
3137
  - Reference
3138
+ :target_profiles:
3139
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-claim
3084
3140
  - :path: outcome
3085
3141
  - :path: preAuthPeriod
3086
3142
  - :path: item
@@ -3089,6 +3145,8 @@
3089
3145
  - :path: communicationRequest
3090
3146
  :types:
3091
3147
  - Reference
3148
+ :target_profiles:
3149
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-communicationrequest
3092
3150
  - :path: error
3093
3151
  - :path: error.code
3094
3152
  :mandatory_elements:
@@ -3358,12 +3416,16 @@
3358
3416
  - :path: requester
3359
3417
  :types:
3360
3418
  - Reference
3419
+ :target_profiles:
3420
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-insurer
3361
3421
  - :path: recipient
3362
3422
  :types:
3363
3423
  - Reference
3364
3424
  - :path: sender
3365
3425
  :types:
3366
3426
  - Reference
3427
+ :target_profiles:
3428
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-requestor
3367
3429
  :mandatory_elements:
3368
3430
  - CommunicationRequest.status
3369
3431
  - CommunicationRequest.payload.content[x]
@@ -3465,27 +3527,33 @@
3465
3527
  :must_supports:
3466
3528
  :extensions: []
3467
3529
  :slices:
3468
- - :name: Coverage.relationship.coding:X12Code
3530
+ - :slice_id: Coverage.relationship.coding:X12Code
3531
+ :slice_name: X12Code
3469
3532
  :path: relationship.coding
3470
3533
  :discriminator:
3471
- :type: value
3472
- :values:
3473
- - :path: "$this"
3474
- :value:
3534
+ :type: requiredBinding
3535
+ :path: ''
3536
+ :values: []
3475
3537
  :elements:
3476
3538
  - :path: identifier
3477
3539
  - :path: status
3478
3540
  - :path: subscriber
3479
3541
  :types:
3480
3542
  - Reference
3543
+ :target_profiles:
3544
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-subscriber
3481
3545
  - :path: subscriberId
3482
3546
  - :path: beneficiary
3483
3547
  :types:
3484
3548
  - Reference
3549
+ :target_profiles:
3550
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-beneficiary
3485
3551
  - :path: relationship
3486
3552
  - :path: payor
3487
3553
  :types:
3488
3554
  - Reference
3555
+ :target_profiles:
3556
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-insurer
3489
3557
  :mandatory_elements:
3490
3558
  - Coverage.status
3491
3559
  - Coverage.beneficiary
@@ -3575,6 +3643,8 @@
3575
3643
  - :path: subject
3576
3644
  :types:
3577
3645
  - Reference
3646
+ :target_profiles:
3647
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-beneficiary
3578
3648
  - :path: occurrence[x]
3579
3649
  :mandatory_elements:
3580
3650
  - DeviceRequest.intent
@@ -3692,12 +3762,16 @@
3692
3762
  - :path: subject
3693
3763
  :types:
3694
3764
  - Reference
3765
+ :target_profiles:
3766
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-beneficiary
3695
3767
  - :path: participant
3696
3768
  - :path: participant.type
3697
3769
  - :path: participant.period
3698
3770
  - :path: participant.individual
3699
3771
  :types:
3700
3772
  - Reference
3773
+ :target_profiles:
3774
+ - http://hl7.org/fhir/us/core/StructureDefinition/us-core-practitioner
3701
3775
  - :path: period
3702
3776
  - :path: reasonCode
3703
3777
  - :path: hospitalization
@@ -3707,6 +3781,8 @@
3707
3781
  - :path: location.location
3708
3782
  :types:
3709
3783
  - Reference
3784
+ :target_profiles:
3785
+ - http://hl7.org/fhir/us/core/StructureDefinition/us-core-location
3710
3786
  :mandatory_elements:
3711
3787
  - Encounter.extension.url
3712
3788
  - Encounter.identifier.system
@@ -3891,6 +3967,8 @@
3891
3967
  - :path: managingOrganization
3892
3968
  :types:
3893
3969
  - Reference
3970
+ :target_profiles:
3971
+ - http://hl7.org/fhir/us/core/StructureDefinition/us-core-organization
3894
3972
  :mandatory_elements:
3895
3973
  - Location.name
3896
3974
  - Location.address
@@ -3981,6 +4059,8 @@
3981
4059
  - :path: subject
3982
4060
  :types:
3983
4061
  - Reference
4062
+ :target_profiles:
4063
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-beneficiary
3984
4064
  - :path: encounter
3985
4065
  :types:
3986
4066
  - Reference
@@ -4151,6 +4231,8 @@
4151
4231
  - :path: patient
4152
4232
  :types:
4153
4233
  - Reference
4234
+ :target_profiles:
4235
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-beneficiary
4154
4236
  - :path: oralDiet
4155
4237
  - :path: oralDiet.type
4156
4238
  - :path: enteralFormula
@@ -4246,13 +4328,15 @@
4246
4328
  :must_supports:
4247
4329
  :extensions: []
4248
4330
  :slices:
4249
- - :name: Organization.identifier:NPI
4331
+ - :slice_id: Organization.identifier:NPI
4332
+ :slice_name: NPI
4250
4333
  :path: identifier
4251
4334
  :discriminator:
4252
4335
  :type: patternIdentifier
4253
4336
  :path: ''
4254
4337
  :system: http://hl7.org/fhir/sid/us-npi
4255
- - :name: Organization.identifier:TIN
4338
+ - :slice_id: Organization.identifier:TIN
4339
+ :slice_name: TIN
4256
4340
  :path: identifier
4257
4341
  :discriminator:
4258
4342
  :type: patternIdentifier
@@ -4335,13 +4419,15 @@
4335
4419
  :must_supports:
4336
4420
  :extensions: []
4337
4421
  :slices:
4338
- - :name: Organization.identifier:NPI
4422
+ - :slice_id: Organization.identifier:NPI
4423
+ :slice_name: NPI
4339
4424
  :path: identifier
4340
4425
  :discriminator:
4341
4426
  :type: patternIdentifier
4342
4427
  :path: ''
4343
4428
  :system: http://hl7.org/fhir/sid/us-npi
4344
- - :name: Organization.identifier:TIN
4429
+ - :slice_id: Organization.identifier:TIN
4430
+ :slice_name: TIN
4345
4431
  :path: identifier
4346
4432
  :discriminator:
4347
4433
  :type: patternIdentifier
@@ -4424,13 +4510,15 @@
4424
4510
  :must_supports:
4425
4511
  :extensions: []
4426
4512
  :slices:
4427
- - :name: Organization.identifier:NPI
4513
+ - :slice_id: Organization.identifier:NPI
4514
+ :slice_name: NPI
4428
4515
  :path: identifier
4429
4516
  :discriminator:
4430
4517
  :type: patternIdentifier
4431
4518
  :path: ''
4432
4519
  :system: http://hl7.org/fhir/sid/us-npi
4433
- - :name: Organization.identifier:TIN
4520
+ - :slice_id: Organization.identifier:TIN
4521
+ :slice_name: TIN
4434
4522
  :path: identifier
4435
4523
  :discriminator:
4436
4524
  :type: patternIdentifier
@@ -4525,7 +4613,8 @@
4525
4613
  :path: extension
4526
4614
  :url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-birthsex
4527
4615
  :slices:
4528
- - :name: Patient.multipleBirth[x]:multipleBirthInteger
4616
+ - :slice_id: Patient.multipleBirth[x]:multipleBirthInteger
4617
+ :slice_name: multipleBirthInteger
4529
4618
  :path: multipleBirth[x]
4530
4619
  :discriminator:
4531
4620
  :type: type
@@ -4813,7 +4902,8 @@
4813
4902
  :must_supports:
4814
4903
  :extensions: []
4815
4904
  :slices:
4816
- - :name: Practitioner.identifier:NPI
4905
+ - :slice_id: Practitioner.identifier:NPI
4906
+ :slice_name: NPI
4817
4907
  :path: identifier
4818
4908
  :discriminator:
4819
4909
  :type: patternIdentifier
@@ -4877,9 +4967,13 @@
4877
4967
  - :path: practitioner
4878
4968
  :types:
4879
4969
  - Reference
4970
+ :target_profiles:
4971
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-practitioner
4880
4972
  - :path: organization
4881
4973
  :types:
4882
4974
  - Reference
4975
+ :target_profiles:
4976
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-organization
4883
4977
  :mandatory_elements:
4884
4978
  - PractitionerRole.practitioner
4885
4979
  - PractitionerRole.notAvailable.description
@@ -4953,6 +5047,8 @@
4953
5047
  - :path: subject
4954
5048
  :types:
4955
5049
  - Reference
5050
+ :target_profiles:
5051
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-beneficiary
4956
5052
  - :path: occurrence[x]
4957
5053
  :mandatory_elements:
4958
5054
  - ServiceRequest.status
@@ -5093,6 +5189,8 @@
5093
5189
  - :path: for
5094
5190
  :types:
5095
5191
  - Reference
5192
+ :target_profiles:
5193
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-beneficiary
5096
5194
  - :path: requester
5097
5195
  :types:
5098
5196
  - Reference
@@ -5106,6 +5204,8 @@
5106
5204
  - :path: reasonReference
5107
5205
  :types:
5108
5206
  - Reference
5207
+ :target_profiles:
5208
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-claim
5109
5209
  - :path: restriction.period
5110
5210
  - :path: input
5111
5211
  :mandatory_elements:
@@ -25,6 +25,8 @@
25
25
  - :path: patient
26
26
  :types:
27
27
  - Reference
28
+ :target_profiles:
29
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-beneficiary
28
30
  - :path: oralDiet
29
31
  - :path: oralDiet.type
30
32
  - :path: enteralFormula
@@ -16,7 +16,8 @@
16
16
  :must_supports:
17
17
  :extensions: []
18
18
  :slices:
19
- - :name: Bundle.entry:Claim
19
+ - :slice_id: Bundle.entry:Claim
20
+ :slice_name: Claim
20
21
  :path: entry
21
22
  :discriminator:
22
23
  :type: type
@@ -61,8 +61,6 @@ module DaVinciPASTestKit
61
61
  'inquire'
62
62
  end
63
63
 
64
-
65
-
66
64
  def request_bundles
67
65
  parsed_payload = JSON.parse(pa_inquire_request_payload)
68
66
  fhir_resources = [parsed_payload].flatten.compact.uniq.map { |payload| FHIR.from_contents(payload.to_json)}.compact
@@ -16,7 +16,8 @@
16
16
  :must_supports:
17
17
  :extensions: []
18
18
  :slices:
19
- - :name: Bundle.entry:ClaimResponse
19
+ - :slice_id: Bundle.entry:ClaimResponse
20
+ :slice_name: ClaimResponse
20
21
  :path: entry
21
22
  :discriminator:
22
23
  :type: type
@@ -35,6 +35,7 @@ module DaVinciPASTestKit
35
35
  issue](https://github.com/inferno-framework/davinci-pas-test-kit/issues/11)
36
36
  for additional details.
37
37
  )
38
+ verifies_requirements 'hl7.fhir.us.davinci-pas_2.0.1@131'
38
39
 
39
40
  output :dar_code_found, :dar_extension_found
40
41
 
@@ -55,12 +56,10 @@ module DaVinciPASTestKit
55
56
  scratch[:inquire_request_response_pair][:all] ||= []
56
57
  end
57
58
 
58
-
59
-
60
59
  run do
61
60
  skip_if target_request_response_pairs.blank?, 'No inquire response to validate. Either no inquire request was made in a previous test or it resulted in a server error.'
62
61
  target_pairs = target_request_response_pairs
63
- # Clean request/response pair after validatation
62
+ # Clean request/response pair after validation
64
63
  scratch[:inquire_request_response_pair][:all] = []
65
64
 
66
65
  response_bundles = target_pairs.map { |pair| pair[:response_bundle] }
@@ -16,7 +16,8 @@
16
16
  :must_supports:
17
17
  :extensions: []
18
18
  :slices:
19
- - :name: Bundle.entry:Claim
19
+ - :slice_id: Bundle.entry:Claim
20
+ :slice_name: Claim
20
21
  :path: entry
21
22
  :discriminator:
22
23
  :type: type
@@ -61,8 +61,6 @@ module DaVinciPASTestKit
61
61
  'submit'
62
62
  end
63
63
 
64
-
65
-
66
64
  def request_bundles
67
65
  parsed_payload = JSON.parse(pa_submit_request_payload)
68
66
  fhir_resources = [parsed_payload].flatten.compact.uniq.map { |payload| FHIR.from_contents(payload.to_json)}.compact
@@ -16,7 +16,8 @@
16
16
  :must_supports:
17
17
  :extensions: []
18
18
  :slices:
19
- - :name: Bundle.entry:ClaimResponse
19
+ - :slice_id: Bundle.entry:ClaimResponse
20
+ :slice_name: ClaimResponse
20
21
  :path: entry
21
22
  :discriminator:
22
23
  :type: type
@@ -35,6 +35,7 @@ module DaVinciPASTestKit
35
35
  issue](https://github.com/inferno-framework/davinci-pas-test-kit/issues/11)
36
36
  for additional details.
37
37
  )
38
+ verifies_requirements 'hl7.fhir.us.davinci-pas_2.0.1@64', 'hl7.fhir.us.davinci-pas_2.0.1@100', 'hl7.fhir.us.davinci-pas_2.0.1@101', 'hl7.fhir.us.davinci-pas_2.0.1@102', 'hl7.fhir.us.davinci-pas_2.0.1@103', 'hl7.fhir.us.davinci-pas_2.0.1@107'
38
39
 
39
40
  output :dar_code_found, :dar_extension_found
40
41
 
@@ -55,12 +56,10 @@ module DaVinciPASTestKit
55
56
  scratch[:submit_request_response_pair][:all] ||= []
56
57
  end
57
58
 
58
-
59
-
60
59
  run do
61
60
  skip_if target_request_response_pairs.blank?, 'No submit response to validate. Either no submit request was made in a previous test or it resulted in a server error.'
62
61
  target_pairs = target_request_response_pairs
63
- # Clean request/response pair after validatation
62
+ # Clean request/response pair after validation
64
63
  scratch[:submit_request_response_pair][:all] = []
65
64
 
66
65
  response_bundles = target_pairs.map { |pair| pair[:response_bundle] }
@@ -20,7 +20,6 @@ module DaVinciPASTestKit
20
20
  'approval'
21
21
  end
22
22
 
23
-
24
23
  group do
25
24
  title 'Server can respond to claims submitted for prior authorization'
26
25
 
@@ -20,7 +20,6 @@ module DaVinciPASTestKit
20
20
  'denial'
21
21
  end
22
22
 
23
-
24
23
  group do
25
24
  title 'Server can respond to claims submitted for prior authorization'
26
25