davinci_pas_test_kit 0.15.1 → 0.15.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/pas_client_example.json +2 -2
- data/config/presets/pas_client_v201_run_against_pas_server.json +2 -2
- data/config/presets/pas_client_v221_run_against_pas_server.json +3 -3
- data/config/presets/pas_ri.json +6 -6
- data/config/presets/pas_server_v201_run_against_pas_client.json.erb +6 -6
- data/config/presets/pas_server_v221_run_against_pas_client.json.erb +10 -10
- data/lib/davinci_pas_test_kit/client/abstract_gather_must_support_test.rb +2 -48
- data/lib/davinci_pas_test_kit/client/client_input_descriptions.rb +29 -0
- data/lib/davinci_pas_test_kit/client/endpoints/claim_endpoint.rb +25 -9
- data/lib/davinci_pas_test_kit/client/user_input_response.rb +25 -6
- data/lib/davinci_pas_test_kit/client/v2.0.1/client_suite.rb +1 -1
- data/lib/davinci_pas_test_kit/client/v2.2.1/client_suite.rb +1 -1
- data/lib/davinci_pas_test_kit/cross_suite/fhirpath_utils.rb +13 -3
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/beneficiary/metadata.yml +4 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/claim_inquiry/metadata.yml +15 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/claim_update/metadata.yml +17 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/claiminquiryresponse/metadata.yml +15 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/claimresponse/metadata.yml +15 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/communication_request/metadata.yml +4 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/coverage/metadata.yml +1 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/device_request/metadata.yml +2 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/encounter/metadata.yml +3 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/insurer/metadata.yml +1 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/medication_request/metadata.yml +2 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/metadata.yml +143 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/nutrition_order/metadata.yml +2 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/pas_inquiry_request_bundle/metadata.yml +2 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/pas_inquiry_response_bundle/metadata.yml +2 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/pas_request_bundle/metadata.yml +2 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/pas_response_bundle/metadata.yml +2 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/practitioner/metadata.yml +1 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/practitioner_role/metadata.yml +1 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/requestor/metadata.yml +1 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/service_request/metadata.yml +3 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/subscriber/metadata.yml +4 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/task/metadata.yml +1 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/beneficiary/metadata.yml +1 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/claim_inquiry/metadata.yml +23 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/claim_update/metadata.yml +31 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/claiminquiryresponse/metadata.yml +42 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/claimresponse/metadata.yml +42 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/communication_request/metadata.yml +4 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/coverage/metadata.yml +1 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/device_request/metadata.yml +2 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/encounter/metadata.yml +3 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/insurer/metadata.yml +1 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/medication_request/metadata.yml +2 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/metadata.yml +265 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/nutrition_order/metadata.yml +2 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/pas_inquiry_request_bundle/metadata.yml +2 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/pas_inquiry_response_bundle/metadata.yml +2 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/pas_request_bundle/metadata.yml +2 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/pas_response_bundle/metadata.yml +2 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/practitioner/metadata.yml +1 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/practitioner_role/metadata.yml +1 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/requestor/metadata.yml +1 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/service_request/metadata.yml +3 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/subscriber/metadata.yml +1 -0
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/task/metadata.yml +4 -0
- data/lib/davinci_pas_test_kit/cross_suite/pas_bundle_validation.rb +97 -39
- data/lib/davinci_pas_test_kit/cross_suite/pas_constants.rb +6 -0
- data/lib/davinci_pas_test_kit/cross_suite/pas_datatype_constraints.rb +166 -0
- data/lib/davinci_pas_test_kit/cross_suite/response_selection_utils.rb +26 -10
- data/lib/davinci_pas_test_kit/cross_suite/validator_suppressions.rb +206 -146
- data/lib/davinci_pas_test_kit/docs/demo/PAS Client Suite Demonstration.postman_collection.json +4 -4
- data/lib/davinci_pas_test_kit/generator/must_support_test_generator.rb +6 -0
- data/lib/davinci_pas_test_kit/generator/pas_must_support_metadata_extractor.rb +1 -2
- data/lib/davinci_pas_test_kit/generator/server_must_support_group_generator.rb +23 -0
- data/lib/davinci_pas_test_kit/generator/server_suite_generator.rb +6 -0
- data/lib/davinci_pas_test_kit/generator/templates/must_support.rb.erb +3 -2
- data/lib/davinci_pas_test_kit/generator/templates/server_must_support_group.rb.erb +22 -0
- data/lib/davinci_pas_test_kit/generator/templates/server_suite.rb.erb +4 -5
- data/lib/davinci_pas_test_kit/generator/templates/use_case_group.rb.erb +3 -0
- data/lib/davinci_pas_test_kit/generator/use_case_group_generator.rb +14 -8
- data/lib/davinci_pas_test_kit/requirements/generated/davinci_pas_server_suite_v221_requirements_coverage.csv +28 -28
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/pas_server_approval_use_case_group.rb +1 -0
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/pas_server_denial_use_case_group.rb +1 -0
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/pas_server_pended_use_case_group.rb +1 -0
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/server_suite.rb +4 -5
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/claiminquiryresponse/server_inquire_response_must_support_claiminquiryresponse_test.rb +2 -0
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/claimresponse/server_submit_response_must_support_claimresponse_test.rb +2 -0
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/pas_server_approval_use_case_group.rb +2 -0
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/pas_server_denial_use_case_group.rb +2 -0
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/pas_server_must_support_group.rb +12 -0
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/pas_server_pended_use_case_group.rb +5 -0
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/server_suite.rb +4 -5
- data/lib/davinci_pas_test_kit/server/server_response_bundle_validation_test.rb +14 -5
- data/lib/davinci_pas_test_kit/server/v2.2.1/claim_inquiry/server_claim_inquiry_response_tests.rb +89 -0
- data/lib/davinci_pas_test_kit/server/v2.2.1/pas_error_group.rb +2 -0
- data/lib/davinci_pas_test_kit/server/v2.2.1/pas_server_claim_inquiry_responses_group.rb +17 -0
- data/lib/davinci_pas_test_kit/server/v2.2.1/pas_server_no_custom_extensions_test.rb +241 -0
- data/lib/davinci_pas_test_kit/server/v2.2.1/pas_server_subscription_capability_statement_test.rb +40 -0
- data/lib/davinci_pas_test_kit/server/v2.2.1/pas_server_subscription_setup.rb +14 -9
- data/lib/davinci_pas_test_kit/server/v2.2.1/server_replaced_pa_inquire_reference_input_test.rb +63 -0
- data/lib/davinci_pas_test_kit/server/v2.2.1/server_replaced_pa_inquire_reference_test.rb +109 -0
- data/lib/davinci_pas_test_kit/version.rb +2 -2
- metadata +9 -2
|
@@ -1,5 +1,67 @@
|
|
|
1
1
|
module DaVinciPASTestKit
|
|
2
|
-
#
|
|
2
|
+
# Validator message suppressions, split by suite version:
|
|
3
|
+
#
|
|
4
|
+
# * V221_SUPPRESSIONS is the targeted list used by the v2.2.1 suites. Each entry is anchored to a
|
|
5
|
+
# specific unactionable failure mode confirmed to still occur in current validator output
|
|
6
|
+
# (HL7 validator 6.9.x) for v2.2.1 profiles, IG examples, and test kit payloads.
|
|
7
|
+
# * LEGACY_SUPPRESSIONS is the previous list, retained unchanged for the v2.0.1 suites.
|
|
8
|
+
#
|
|
9
|
+
# The v2.2.1 suites match only V221_SUPPRESSED_MESSAGES; the v2.0.1 suites match the union of
|
|
10
|
+
# both lists (V201_SUPPRESSED_MESSAGES).
|
|
11
|
+
#
|
|
12
|
+
# rubocop:disable Layout/LineLength
|
|
13
|
+
V221_SUPPRESSIONS = [
|
|
14
|
+
# X12 value set and code system definitions are proprietary and not available to the validator,
|
|
15
|
+
# so resolution failures for them are not actionable by users. The IG references X12 URLs under
|
|
16
|
+
# both x12.org subdomains, and uses valueset.x12.org URLs as code system URLs in some places, so
|
|
17
|
+
# both patterns accept either subdomain.
|
|
18
|
+
%r{ValueSet 'https://(?:valueset|codesystem)\.x12\.org/[^']+' not found},
|
|
19
|
+
%r{A definition for CodeSystem 'https://(?:codesystem|valueset)\.x12\.org/[^']+' could not be found, so the code cannot be validated},
|
|
20
|
+
# The NUBC revenue code system is proprietary as well and cannot be resolved. The test kit's
|
|
21
|
+
# example data references it under both of the URLs the IG has used for it.
|
|
22
|
+
%r{A definition for CodeSystem 'https://www\.nubc\.org/(revenue-code|CodeSystem/RevenueCodes)' could not be found, so the code cannot be validated},
|
|
23
|
+
# Because that code system is unavailable, membership in the PAS-defined value set built on it
|
|
24
|
+
# cannot be checked either. Claim.item.revenue is must-support (not required), so the IG examples
|
|
25
|
+
# leave it empty and the IG QA never hits this, but the must support tests populate it, so the
|
|
26
|
+
# code cannot be checked against the value set and the error is unactionable.
|
|
27
|
+
"None of the codings provided are in the value set 'AHA NUBC Revenue Value Set' (http://hl7.org/fhir/us/davinci-pas/ValueSet/AHANUBCRevenueCodes",
|
|
28
|
+
# These PAS-defined value sets draw all their members from X12 code systems, so membership
|
|
29
|
+
# cannot be checked and the failure is unactionable. Anchored on each value set's canonical URL.
|
|
30
|
+
%r{None of the codings provided are in the value set .*http://hl7\.org/fhir/us/davinci-pas/ValueSet/pas-pwk01-attachment-report-type-code},
|
|
31
|
+
%r{None of the codings provided are in the value set .*http://hl7\.org/fhir/us/davinci-pas/ValueSet/PASCommunicationRequestMedium},
|
|
32
|
+
# The IG references this draft code system with bindings stronger than example.
|
|
33
|
+
'Reference to draft CodeSystem http://hl7.org/fhir/us/davinci-pas/CodeSystem/PASTempCodes',
|
|
34
|
+
# IG defect: these extensions are marked must-support at a location that their own context
|
|
35
|
+
# definition does not permit, so the validator rejects them where the profile requires them.
|
|
36
|
+
# Each pattern is anchored to the specific element context that the IG forces (reported by the
|
|
37
|
+
# validator as "(this element is [...])"), so a genuinely misplaced extension is not suppressed.
|
|
38
|
+
# extension-authorizationNumber/administrationReferenceNumber: context allows Claim.item only,
|
|
39
|
+
# but profile-claim-base marks them must-support on Claim.extension.
|
|
40
|
+
%r{The extension http://hl7\.org/fhir/us/davinci-pas/StructureDefinition/extension-authorizationNumber( v[\d.]+)? is not allowed to be used at this point \(this element is \[Claim\]},
|
|
41
|
+
%r{The extension http://hl7\.org/fhir/us/davinci-pas/StructureDefinition/extension-administrationReferenceNumber( v[\d.]+)? is not allowed to be used at this point \(this element is \[Claim\]},
|
|
42
|
+
# extension-infoChanged/modifierextension-infoCancelled: context lists Claim.item only, but
|
|
43
|
+
# profile-claim-base marks them must-support on Claim.supportingInfo as well.
|
|
44
|
+
%r{The extension http://hl7\.org/fhir/us/davinci-pas/StructureDefinition/extension-infoChanged( v[\d.]+)? is not allowed to be used at this point \(this element is \[(?:BackboneElement, )?Claim\.supportingInfo\]},
|
|
45
|
+
%r{The modifier extension http://hl7\.org/fhir/us/davinci-pas/StructureDefinition/modifierextension-infoCancelled( v[\d.]+)? is not allowed to be used at this point \(this element is \[(?:BackboneElement, )?Claim\.supportingInfo\]},
|
|
46
|
+
# extension-communicatedDiagnosis: context lists Claim only, but profile-claimresponse marks it
|
|
47
|
+
# must-support on ClaimResponse.item.
|
|
48
|
+
%r{The extension http://hl7\.org/fhir/us/davinci-pas/StructureDefinition/extension-communicatedDiagnosis( v[\d.]+)? is not allowed to be used at this point \(this element is \[(?:BackboneElement, )?ClaimResponse\.item\]},
|
|
49
|
+
# extension-productOrServiceCodeEnd: context lists Claim.item/ClaimResponse, but
|
|
50
|
+
# profile-servicerequest marks it must-support on ServiceRequest and profile-claimresponse marks
|
|
51
|
+
# it must-support on ClaimResponse.addItem.
|
|
52
|
+
%r{The extension http://hl7\.org/fhir/us/davinci-pas/StructureDefinition/extension-productOrServiceCodeEnd( v[\d.]+)? is not allowed to be used at this point \(this element is \[ServiceRequest\]},
|
|
53
|
+
%r{The extension http://hl7\.org/fhir/us/davinci-pas/StructureDefinition/extension-productOrServiceCodeEnd( v[\d.]+)? is not allowed to be used at this point \(this element is \[(?:BackboneElement, )?ClaimResponse\.addItem\]},
|
|
54
|
+
# extension-itemAuthorizedProvider: context allows ExplanationOfBenefit/ClaimResponse.item only,
|
|
55
|
+
# but profile-claimresponse marks it must-support on the ClaimResponse root.
|
|
56
|
+
%r{The extension http://hl7\.org/fhir/us/davinci-pas/StructureDefinition/extension-itemAuthorizedProvider( v[\d.]+)? is not allowed to be used at this point \(this element is \[ClaimResponse\]},
|
|
57
|
+
# extension-revenueUnitRateLimit/serviceItemRequestType/certificationType: context prohibits
|
|
58
|
+
# ClaimResponse.addItem, but profile-claimresponse marks all three must-support there.
|
|
59
|
+
%r{The extension http://hl7\.org/fhir/us/davinci-pas/StructureDefinition/extension-revenueUnitRateLimit( v[\d.]+)? is not allowed to be used at this point \(this element is \[(?:BackboneElement, )?ClaimResponse\.addItem\]},
|
|
60
|
+
%r{The extension http://hl7\.org/fhir/us/davinci-pas/StructureDefinition/extension-serviceItemRequestType( v[\d.]+)? is not allowed to be used at this point \(this element is \[(?:BackboneElement, )?ClaimResponse\.addItem\]},
|
|
61
|
+
%r{The extension http://hl7\.org/fhir/us/davinci-pas/StructureDefinition/extension-certificationType( v[\d.]+)? is not allowed to be used at this point \(this element is \[(?:BackboneElement, )?ClaimResponse\.addItem\]}
|
|
62
|
+
].freeze
|
|
63
|
+
|
|
64
|
+
# This list captures all validator messages suppressed for the v2.0.1 suites
|
|
3
65
|
# Source: https://hl7.org/fhir/us/davinci-pas/STU2/qa.html#suppressed
|
|
4
66
|
#
|
|
5
67
|
# Some of the messages in this list are generated by the IG publisher and will never actually come from the
|
|
@@ -18,150 +80,148 @@ module DaVinciPASTestKit
|
|
|
18
80
|
# Also note there is a handful of messages where the official list contains the words "could not be found",
|
|
19
81
|
# where the messages return from the Inferno validator serivce contain the words "is unknown". The
|
|
20
82
|
# corresponding regexes below have a capturing group to account for both cases.
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
/extension-serviceItemRequestType( v\d+\.\d+\.\d+)? is not allowed to be used at this point/,
|
|
162
|
-
/extension-certificationType( v\d+\.\d+\.\d+)? is not allowed to be used at this point/
|
|
163
|
-
|
|
164
|
-
]
|
|
165
|
-
)
|
|
83
|
+
LEGACY_SUPPRESSIONS = [
|
|
84
|
+
"Global Profile reference 'http://hl7.org/fhir/us/core/StructureDefinition/patient' from IG http://hl7.org/fhir/us/daf|0 could not be resolved, so has not been checked",
|
|
85
|
+
%r{Unable to provide support for code system http://terminology\.hl7\.org/CodeSystem/icd9cm},
|
|
86
|
+
%r{Unable to provide support for code system http://www\.cms\.gov/Medicare/Coding/HCPCSReleaseCodeSets},
|
|
87
|
+
%r{Unable to provide support for code system https://www\.nubc\.org/CodeSystem/TypeOfBill},
|
|
88
|
+
%r{Unable to provide support for code system https://www\.nubc\.org/revenue-code},
|
|
89
|
+
%r{Code System URI 'http://www\.cms\.gov/Medicare/Coding/HCPCSReleaseCodeSets' (could not be found|is unknown) so the code cannot be validated},
|
|
90
|
+
%r{Code System URI 'https://www\.cms\.gov/Medicare/Coding/place-of-service-codes/Place_of_Service_Code_Set' (could not be found|is unknown) so the code cannot be validated},
|
|
91
|
+
"The definition for the Code System with URI 'https://www.cms.gov/Medicare/Coding/place-of-service-codes/Place_of_Service_Code_Set' doesnt provide any codes so the code cannot be validated",
|
|
92
|
+
"The definition for the Code System with URI 'https://www.nubc.org/CodeSystem/PatDischargeStatus' doesnt provide any codes so the code cannot be validated",
|
|
93
|
+
"The definition for the Code System with URI 'https://www.nubc.org/CodeSystem/PointOfOrigin' doesnt provide any codes so the code cannot be validated",
|
|
94
|
+
"The definition for the Code System with URI 'https://www.nubc.org/CodeSystem/PriorityTypeOfAdmitOrVisit' doesnt provide any codes so the code cannot be validated",
|
|
95
|
+
%r{Reference to draft item http://hl7\.org/fhir/standards-status},
|
|
96
|
+
%r{Reference to draft item http://hl7\.org/fhir/us/davinci-pas/CodeSystem/PASTempCodes},
|
|
97
|
+
"The resource status 'draft' and the standards status 'trial-use' may not be consistent and should be reviewed",
|
|
98
|
+
%r{This element does not match any known slice defined in the profile http://hl7\.org/fhir/us/davinci-pas/StructureDefinition/profile-pas-inquiry-request-bundle},
|
|
99
|
+
%r{This element does not match any known slice defined in the profile http://hl7\.org/fhir/us/davinci-pas/StructureDefinition/profile-pas-inquiry-response-bundle},
|
|
100
|
+
%r{This element does not match any known slice defined in the profile http://hl7\.org/fhir/us/davinci-pas/StructureDefinition/profile-pas-request-bundle},
|
|
101
|
+
%r{This element does not match any known slice defined in the profile http://hl7\.org/fhir/us/davinci-pas/StructureDefinition/profile-pas-response-bundle},
|
|
102
|
+
%r{Unable to check whether the code is in the value set http://hl7\.org/fhir/us/davinci-pas/ValueSet/X12278ConditionCategory},
|
|
103
|
+
%r{Unable to check whether the code is in the value set http://hl7\.org/fhir/us/davinci-pas/ValueSet/X12278ConditionCode},
|
|
104
|
+
%r{Unable to check whether the code is in the value set http://hl7\.org/fhir/us/davinci-pas/ValueSet/X12278FollowUpActionCodes},
|
|
105
|
+
%r{Unable to check whether the code is in the value set http://hl7\.org/fhir/us/davinci-pas/ValueSet/X12278LocationType},
|
|
106
|
+
%r{Unable to check whether the code is in the value set http://hl7\.org/fhir/us/davinci-pas/ValueSet/X12278NutritionOralDietType},
|
|
107
|
+
%r{Unable to check whether the code is in the value set http://hl7\.org/fhir/us/davinci-pas/ValueSet/X12278RejectReasonCodes},
|
|
108
|
+
%r{Unable to check whether the code is in the value set http://hl7\.org/fhir/us/davinci-pas/ValueSet/X12278RequestedServiceType},
|
|
109
|
+
'US FHIR Usage rules require that all profiles on Coverage derive from the core US profile',
|
|
110
|
+
'US FHIR Usage rules require that all profiles on PractitionerRole derive from the core US profile',
|
|
111
|
+
'US FHIR Usage rules require that all profiles on ServiceRequest derive from the core US profile',
|
|
112
|
+
%r{Unable to provide support for code system https://codesystem\.x12\.org/005010/1136},
|
|
113
|
+
%r{Unable to provide support for code system https://codesystem\.x12\.org/005010/1321},
|
|
114
|
+
%r{Unable to provide support for code system https://codesystem\.x12\.org/005010/1365},
|
|
115
|
+
%r{Unable to provide support for code system https://codesystem\.x12\.org/005010/755},
|
|
116
|
+
%r{Unable to provide support for code system https://codesystem\.x12\.org/005010/756},
|
|
117
|
+
%r{Unable to provide support for code system https://codesystem\.x12\.org/005010/889},
|
|
118
|
+
%r{Unable to provide support for code system https://codesystem\.x12\.org/005010/901},
|
|
119
|
+
%r{Unable to provide support for code system https://codesystem\.x12\.org/external/886},
|
|
120
|
+
%r{Code System URI 'https://codesystem\.x12\.org/005010/1136' (could not be found|is unknown) so the code cannot be validated},
|
|
121
|
+
%r{Code System URI 'https://codesystem\.x12\.org/005010/1321' (could not be found|is unknown) so the code cannot be validated},
|
|
122
|
+
%r{Code System URI 'https://codesystem\.x12\.org/005010/1322' (could not be found|is unknown) so the code cannot be validated},
|
|
123
|
+
%r{Code System URI 'https://codesystem\.x12\.org/005010/1337' (could not be found|is unknown) so the code cannot be validated},
|
|
124
|
+
%r{Code System URI 'https://codesystem\.x12\.org/005010/1338' (could not be found|is unknown) so the code cannot be validated},
|
|
125
|
+
%r{Code System URI 'https://codesystem\.x12\.org/005010/1345' (could not be found|is unknown) so the code cannot be validated},
|
|
126
|
+
%r{Code System URI 'https://codesystem\.x12\.org/005010/1365' (could not be found|is unknown) so the code cannot be validated},
|
|
127
|
+
%r{Code System URI 'https://codesystem\.x12\.org/005010/1525' (could not be found|is unknown) so the code cannot be validated},
|
|
128
|
+
%r{Code System URI 'https://codesystem\.x12\.org/005010/306' (could not be found|is unknown) so the code cannot be validated},
|
|
129
|
+
%r{Code System URI 'https://codesystem\.x12\.org/005010/584' (could not be found|is unknown) so the code cannot be validated},
|
|
130
|
+
%r{Code System URI 'https://codesystem\.x12\.org/005010/678' (could not be found|is unknown) so the code cannot be validated},
|
|
131
|
+
%r{Code System URI 'https://codesystem\.x12\.org/005010/679' (could not be found|is unknown) so the code cannot be validated},
|
|
132
|
+
%r{Code System URI 'https://codesystem\.x12\.org/005010/755' (could not be found|is unknown) so the code cannot be validated},
|
|
133
|
+
%r{Code System URI 'https://codesystem\.x12\.org/005010/889' (could not be found|is unknown) so the code cannot be validated},
|
|
134
|
+
%r{Code System URI 'https://codesystem\.x12\.org/005010/901' (could not be found|is unknown) so the code cannot be validated},
|
|
135
|
+
%r{Code System URI 'https://codesystem\.x12\.org/005010/923' (could not be found|is unknown) so the code cannot be validated},
|
|
136
|
+
%r{Code System URI 'https://codesystem\.x12\.org/005010/98' (could not be found|is unknown) so the code cannot be validated},
|
|
137
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/request/2000D/INS/1/02/00/1069 on element Coverage.relationship.coding could not be resolved',
|
|
138
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/request/2000E/CL1/1/01/00/1315 on element Encounter.type could not be resolved',
|
|
139
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/request/2000E/CL1/1/02/00/1314 on element Encounter.hospitalization.admitSource could not be resolved',
|
|
140
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/request/2000E/CL1/1/03/00/1352 on element Extension.value[x] could not be resolved',
|
|
141
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/request/2000E/CL1/1/04/00/1345 on element Encounter.extension.value[x] could not be resolved',
|
|
142
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/request/2000E/CR6/1/01/00/923 on element Extension.extension.value[x] could not be resolved',
|
|
143
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/request/2000E/UM/1/01/00/1525 on element Extension.value[x] could not be resolved',
|
|
144
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/request/2000E/UM/1/05/01/1362 on element Claim.accident.type could not be resolved',
|
|
145
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/request/2000E/UM/1/06/00/1338 on element Extension.value[x] could not be resolved',
|
|
146
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/request/2000F/HSD/1/07/00/678 on element Extension.value[x] could not be resolved',
|
|
147
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/request/2000F/HSD/1/08/00/679 on element Extension.value[x] could not be resolved',
|
|
148
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/request/2000F/SV1/1/20/00/1337 on element Extension.value[x] could not be resolved',
|
|
149
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/request/2000F/SV2/1/09/00/1345 on element Claim.item.extension.value[x] could not be resolved',
|
|
150
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/request/2000F/UM/1/02/00/1322 on element Extension.value[x] could not be resolved',
|
|
151
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/request/2000F/UM/1/03/00/1365 on element Claim.item.category could not be resolved',
|
|
152
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/request/2010A/NM1/1/01/00/98 on element Organization.type could not be resolved',
|
|
153
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/request/2010C/INS/1/08/00/584 on element Extension.value[x] could not be resolved',
|
|
154
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/request/2010EA/NM1/1/01/00/98 on element Claim.careTeam.role could not be resolved',
|
|
155
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/request/2010EA/PRV/1/03/00/127 on element Claim.careTeam.qualification could not be resolved',
|
|
156
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/request/2010F/NM1/1/01/00/98 on element Claim.careTeam.role could not be resolved',
|
|
157
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/request/2010F/PRV/1/03/00/127 on element Claim.careTeam.qualification could not be resolved',
|
|
158
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/response/2000D/PWK/1/01/00/755 on element CommunicationRequest.category could not be resolved',
|
|
159
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/response/2000F/HCR/1/01/00/306 on element Extension.value[x] could not be resolved',
|
|
160
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/response/2010B/NM1/1/01/00/98 on element Organization.type could not be resolved',
|
|
161
|
+
'The valueSet reference https://valueset.x12.org/x217/005010/response/2010EA/NM1/1/01/00/98 on element Extension.extension.value[x] could not be resolved',
|
|
162
|
+
'ValueSet https://valueset.x12.org/x217/005010/request/2000E/CL1/1/01/00/1315 not found',
|
|
163
|
+
'ValueSet https://valueset.x12.org/x217/005010/request/2000E/CL1/1/02/00/1314 not found',
|
|
164
|
+
'ValueSet https://valueset.x12.org/x217/005010/request/2000E/CL1/1/03/00/1352 not found',
|
|
165
|
+
'ValueSet https://valueset.x12.org/x217/005010/request/2000E/CR6/1/01/00/923 not found',
|
|
166
|
+
'ValueSet https://valueset.x12.org/x217/005010/request/2000E/UM/1/01/00/1525 not found',
|
|
167
|
+
'ValueSet https://valueset.x12.org/x217/005010/request/2000E/UM/1/06/00/1338 not found',
|
|
168
|
+
'ValueSet https://valueset.x12.org/x217/005010/request/2000F/HSD/1/07/00/678 not found',
|
|
169
|
+
'ValueSet https://valueset.x12.org/x217/005010/request/2000F/HSD/1/08/00/679 not found',
|
|
170
|
+
'ValueSet https://valueset.x12.org/x217/005010/request/2000F/SV1/1/20/00/1337 not found',
|
|
171
|
+
'ValueSet https://valueset.x12.org/x217/005010/request/2000F/SV2/1/09/00/1345 not found',
|
|
172
|
+
'ValueSet https://valueset.x12.org/x217/005010/request/2000F/UM/1/02/00/1322 not found',
|
|
173
|
+
'ValueSet https://valueset.x12.org/x217/005010/request/2000F/UM/1/03/00/1365 not found',
|
|
174
|
+
'ValueSet https://valueset.x12.org/x217/005010/request/2010A/NM1/1/01/00/98 not found',
|
|
175
|
+
'ValueSet https://valueset.x12.org/x217/005010/request/2010C/INS/1/08/00/584 not found',
|
|
176
|
+
'ValueSet https://valueset.x12.org/x217/005010/response/2000D/PWK/1/01/00/755 not found',
|
|
177
|
+
'ValueSet https://valueset.x12.org/x217/005010/response/2000F/HCR/1/01/00/306 not found',
|
|
178
|
+
'ValueSet https://valueset.x12.org/x217/005010/response/2010B/NM1/1/01/00/98 not found',
|
|
179
|
+
# additional lines added beyond the errors suppressed in the IG
|
|
180
|
+
'http://hl7.org/fhir/5.0/StructureDefinition/extension-Claim.encounter', # validator bug, https://github.com/hapifhir/org.hl7.fhir.core/issues/1556
|
|
181
|
+
'X12278DiagnosisCodes', # ValueSet includes full ICD-10-CM plus unavailable code systems; validator cannot fully expand
|
|
182
|
+
'X12278RequestedServiceType', # X12 code system included in this PAS-defined value set
|
|
183
|
+
'X12278LocationType', # X12 code system included in this PAS-defined value set
|
|
184
|
+
'ValueSet https://valueset.x12.org/x217/005010/response/2010B/NM1/1/01/00/98 not found',
|
|
185
|
+
"Error from http://tx.fhir.org/r4: Error:A definition for the value Set 'http://hl7.org/fhir/us/core/ValueSet/us-core-usps-state|3.1.1' could not be found",
|
|
186
|
+
"A definition for CodeSystem 'https://www.cms.gov/Medicare/Coding/place-of-service-codes/Place_of_Service_Code_Set' could not be found, so the code cannot be validated",
|
|
187
|
+
"A definition for CodeSystem 'http://www.cms.gov/Medicare/Coding/HCPCSReleaseCodeSets' could not be found, so the code cannot be validated",
|
|
188
|
+
'could not be found, so the code cannot be validated',
|
|
189
|
+
'https://www.nubc.org/revenue-code',
|
|
190
|
+
# supress references to draft code systems that the IG references with bindings stronger than example
|
|
191
|
+
# looks to just be the PAS Temp Codes
|
|
192
|
+
'Reference to draft CodeSystem http://hl7.org/fhir/us/davinci-pas/CodeSystem/PASTempCodes',
|
|
193
|
+
# no real content
|
|
194
|
+
/Details for (.+) matching against profile/,
|
|
195
|
+
': All OK',
|
|
196
|
+
# This was ignored natively in the Inferno validator but needs to be ignored by the test kit with the HL7 validator
|
|
197
|
+
/URL value '.*' does not resolve/,
|
|
198
|
+
# addition validator clean-up based on Bundle sub-validations where Inferno error supression doesn't
|
|
199
|
+
# work. The test kit validates these instances individually as well, so they are still checked,
|
|
200
|
+
# but in a way that Inferno can supress errors
|
|
201
|
+
'Unable to find a match for profile',
|
|
202
|
+
'Unable to find a profile match for',
|
|
203
|
+
# IG defect: extension context definitions for these extensions don't match where the profiles place them
|
|
204
|
+
# extension-authorizationNumber context allows Claim.item only, but profile-claim-base marks it must-support on Claim.extension
|
|
205
|
+
/extension-authorizationNumber( v\d+\.\d+\.\d+)? is not allowed to be used at this point/,
|
|
206
|
+
/extension-administrationReferenceNumber( v\d+\.\d+\.\d+)? is not allowed to be used at this point/,
|
|
207
|
+
/extension-communicatedDiagnosis( v\d+\.\d+\.\d+)? is not allowed to be used at this point/,
|
|
208
|
+
# IG defect: extension-productOrServiceCodeEnd context only lists Claim.item/ClaimResponse, but profile-servicerequest marks it must-support on ServiceRequest
|
|
209
|
+
/extension-productOrServiceCodeEnd( v\d+\.\d+\.\d+)? is not allowed to be used at this point/,
|
|
210
|
+
# IG defect: extension-infoChanged and modifierextension-infoCancelled context only lists Claim.item,
|
|
211
|
+
# but profile-claim-base marks them must-support on Claim.supportingInfo as well
|
|
212
|
+
/extension-infoChanged( v\d+\.\d+\.\d+)? is not allowed to be used at this point/,
|
|
213
|
+
/modifierextension-infoCancelled( v\d+\.\d+\.\d+)? is not allowed to be used at this point/,
|
|
214
|
+
# IG defect: extension-itemAuthorizedProvider context allows ExplanationOfBenefit/ClaimResponse.item only,
|
|
215
|
+
# but profile-claimresponse marks ClaimResponse.extension:authorizedProvider as must-support on ClaimResponse root
|
|
216
|
+
/extension-itemAuthorizedProvider( v\d+\.\d+\.\d+)? is not allowed to be used at this point/,
|
|
217
|
+
# IG defect: extension-revenueUnitRateLimit, extension-serviceItemRequestType, extension-certificationType
|
|
218
|
+
# context prohibits ClaimResponse.addItem, but profile-claimresponse marks all three as must-support there
|
|
219
|
+
/extension-revenueUnitRateLimit( v\d+\.\d+\.\d+)? is not allowed to be used at this point/,
|
|
220
|
+
/extension-serviceItemRequestType( v\d+\.\d+\.\d+)? is not allowed to be used at this point/,
|
|
221
|
+
/extension-certificationType( v\d+\.\d+\.\d+)? is not allowed to be used at this point/
|
|
222
|
+
].freeze
|
|
166
223
|
# rubocop:enable Layout/LineLength
|
|
224
|
+
|
|
225
|
+
V221_SUPPRESSED_MESSAGES = Regexp.union(V221_SUPPRESSIONS)
|
|
226
|
+
V201_SUPPRESSED_MESSAGES = Regexp.union(LEGACY_SUPPRESSIONS + V221_SUPPRESSIONS)
|
|
167
227
|
end
|