{"schemaVersion":1,"ruleset":{"key":"hpt-v3","version":3,"title":"Hospital Price Transparency v3 public audit rules","dataDictionaryVersion":"3.0.0","effectiveFrom":"2026-01-01","enforcementFrom":"2026-04-01"},"sourceSha256":"2d39288d867e1b662043d669e927eb69e035e9f61c2becaf35bfd1f1bc28df42","groups":[{"key":"attestation","title":"Attestation and responsible official","authority":"45 CFR 180.50(a)(3)","order":10,"parent":null},{"key":"hospital_mrf_information","title":"Hospital and MRF information","authority":"45 CFR 180.50(b)(2)(i)","order":20,"parent":null},{"key":"standard_charges","title":"Standard charges","authority":"45 CFR 180.50(b)(2)(ii)","order":30,"parent":null},{"key":"payer_specific","title":"Payer-specific negotiated charge","authority":"45 CFR 180.50(b)(2)(ii)(A)-(C)","order":35,"parent":"standard_charges"},{"key":"rate_expression","title":"Rate expression and methodology","authority":"45 CFR 180.50(b)(2)(ii)(C)","order":38,"parent":"payer_specific"},{"key":"allowed_amounts","title":"Allowed-amount statistics","authority":"45 CFR 180.50(b)(2)(ii)(C)(2)","order":39,"parent":"rate_expression"},{"key":"item_service","title":"Item and service information","authority":"45 CFR 180.50(b)(2)(iii)","order":40,"parent":null},{"key":"billing_coding","title":"Billing and coding information","authority":"45 CFR 180.50(b)(2)(iv)","order":50,"parent":null},{"key":"cms_format","title":"CMS file format","authority":"45 CFR 180.50(c)(2)","order":60,"parent":null},{"key":"publication_access","title":"Publication and accessibility","authority":"45 CFR 180.50(d)(1)-(6)","order":70,"parent":null},{"key":"update_frequency","title":"Update frequency","authority":"45 CFR 180.50(e)","order":80,"parent":null},{"key":"shoppable_services","title":"Shoppable services disclosure","authority":"45 CFR 180.60","order":90,"parent":null}],"checks":[{"key":"hpt.mrf.cms.attestation","version":1,"title":"MRF correctly encodes the accuracy and completeness attestation","source":"CMS_DERIVED","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(a)(3)(iii)"],"group":"attestation","order":10,"previousKey":"hpt.mrf.attestation.confirmed","passInference":"Validator completed, attestation structure is valid, and no false-confirmation alert was emitted.","coverage":"attestation object is required; false confirmation is emitted as a validator alert","dependencies":[{"rule":"hpt.gate.cms_validator_finished","type":"evidence_required"}]},{"key":"hpt.mrf.cms.attester_name","version":1,"title":"MRF correctly encodes the attester's name","source":"CMS_DERIVED","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(a)(3)(iv)"],"group":"attestation","order":20,"previousKey":"hpt.mrf.attestation.responsible_official","passInference":"Validator completed with no mapped attester-name error.","coverage":"attester_name is required and must be a non-empty string","dependencies":[{"rule":"hpt.gate.cms_validator_finished","type":"evidence_required"}]},{"key":"hpt.mrf.identity.npi","version":1,"title":"MRF declares this hospital's Type 2 NPI","source":"CARECARTA_NATIVE","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(b)(2)(i)(A)"],"group":"hospital_mrf_information","order":10,"previousKey":"hpt.mrf.identity.matches_facility","passInference":"Passes when the MRF declares the facility's Type 2 NPI among any it lists. Indeterminate when it declares only other NPIs (NEEDS_HUMAN_REVIEW; a hospital may hold several), declares none (FILE_VALUE_MISSING), or CareCarta holds no NPI for the facility (REFERENCE_DATA_MISSING). Never fails. Judged from the header, so a file with malformed rows is still judged.","coverage":"CMS validates that type_2_npi is present and well formed; CareCarta compares the NPIs the file declares with the facility's Type 2 NPI from CMS Hospital Enrollments.","dependencies":[{"rule":"hpt.gate.mrf_header_read","type":"evidence_required"}]},{"key":"hpt.mrf.cms.version_and_date","version":1,"title":"MRF correctly encodes its template version and update date","source":"CMS_DERIVED","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(b)(2)(i)(B)"],"group":"hospital_mrf_information","order":20,"previousKey":"hpt.mrf.metadata.version_and_date","passInference":"Validator completed with no mapped version or update-date error or alert requiring failure.","coverage":"version and last_updated_on are required; date format is validated","dependencies":[{"rule":"hpt.gate.cms_validator_finished","type":"evidence_required"}]},{"key":"hpt.mrf.gross_charges_complete","version":1,"title":"MRF lists a gross charge for every item and service","source":"CARECARTA_NATIVE","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(b)(2)(ii)"],"group":"standard_charges","order":10,"previousKey":"hpt.mrf.charges.gross_completeness","passInference":"Never passes: the file alone cannot show every item is listed (NEEDS_OUTSIDE_EVIDENCE). Fails when the fully parsed file lists no gross charge on any record.","coverage":"CMS validates encoded values but does not conclusively establish that all applicable gross charges were included.","dependencies":[{"rule":"hpt.gate.mrf_parsed","type":"evidence_required"}]},{"key":"hpt.mrf.cash_prices_complete","version":1,"title":"MRF lists a discounted cash price for every item and service that has one","source":"CARECARTA_NATIVE","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(b)(2)(ii)"],"group":"standard_charges","order":20,"previousKey":"hpt.mrf.charges.discounted_cash_completeness","passInference":"Never decided (NEEDS_OUTSIDE_EVIDENCE, shown as Not assessed): the file alone cannot show that every item with a cash price is listed. A file with no cash prices is not failed, since a hospital with no cash discount may have none.","coverage":"CMS validates encoded values but does not conclusively establish that all applicable discounted cash prices were included.","dependencies":[{"rule":"hpt.gate.mrf_parsed","type":"evidence_required"}]},{"key":"hpt.mrf.cms.minimum_charge","version":1,"title":"MRF correctly encodes the de-identified minimum negotiated charge","source":"CMS_DERIVED","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(b)(2)(ii)"],"group":"standard_charges","order":30,"previousKey":"hpt.mrf.charges.deidentified_minimum","passInference":"Validator completed with no mapped conditional minimum error.","coverage":"Required when a payer-specific negotiated charge is encoded as a dollar amount.","dependencies":[{"rule":"hpt.gate.cms_validator_finished","type":"evidence_required"}]},{"key":"hpt.mrf.cms.maximum_charge","version":1,"title":"MRF correctly encodes the de-identified maximum negotiated charge","source":"CMS_DERIVED","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(b)(2)(ii)"],"group":"standard_charges","order":40,"previousKey":"hpt.mrf.charges.deidentified_maximum","passInference":"Validator completed with no mapped conditional maximum error.","coverage":"Required when a payer-specific negotiated charge is encoded as a dollar amount.","dependencies":[{"rule":"hpt.gate.cms_validator_finished","type":"evidence_required"}]},{"key":"hpt.mrf.cms.payer_and_plan","version":1,"title":"MRF correctly encodes payer and plan names","source":"CMS_DERIVED","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(b)(2)(ii)(A)"],"group":"payer_specific","order":10,"previousKey":"hpt.mrf.payer.names","passInference":"Validator completed with no mapped payer-name or plan-name error.","coverage":"payer_name and plan_name are required non-empty values in payer information.","dependencies":[{"rule":"hpt.gate.cms_validator_finished","type":"evidence_required"}]},{"key":"hpt.mrf.cms.methodology","version":1,"title":"MRF correctly encodes how each charge was established","source":"CMS_DERIVED","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(b)(2)(ii)(B)"],"group":"payer_specific","order":20,"previousKey":"hpt.mrf.payer.methodology","passInference":"Validator completed with no mapped methodology error.","coverage":"methodology is required and restricted to CMS-defined values; other requires notes.","dependencies":[{"rule":"hpt.gate.cms_validator_finished","type":"evidence_required"}]},{"key":"hpt.mrf.cms.rate_form","version":1,"title":"MRF expresses each negotiated rate as a dollar amount, percentage, or algorithm","source":"CMS_DERIVED","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(b)(2)(ii)(C)"],"group":"rate_expression","order":10,"previousKey":"hpt.mrf.payer.rate_representation","passInference":"Validator completed with no mapped any-of, required-value, or invalid-value error.","coverage":"Each payer-information object must encode at least one valid rate representation.","dependencies":[{"rule":"hpt.gate.cms_validator_finished","type":"evidence_required"}]},{"key":"hpt.mrf.algorithm_derivable","version":1,"title":"Percentage and algorithm rates give enough information to derive a dollar amount","source":"CARECARTA_NATIVE","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(a)(3)(iii)","45 CFR 180.50(b)(2)(ii)(C)"],"group":"rate_expression","order":20,"previousKey":"hpt.mrf.payer.algorithm_derivability","passInference":"Not applicable when the parsed file has no percentage- or algorithm-based payer rates. Otherwise indeterminate (NEEDS_HUMAN_REVIEW): whether a reasonable person can derive a dollar amount is a judgement the automated check does not make.","coverage":"CMS validates structural presence and non-empty algorithm text, not substantive derivability.","dependencies":[{"rule":"hpt.gate.mrf_parsed","type":"evidence_required"},{"rule":"hpt.gate.non_dollar_rates","type":"applicability_required"}]},{"key":"hpt.mrf.cms.allowed_p10","version":1,"title":"MRF correctly encodes the 10th percentile allowed amount","source":"CMS_DERIVED","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(b)(2)(ii)(C)(2)"],"group":"allowed_amounts","order":10,"previousKey":"hpt.mrf.allowed_amount.p10","passInference":"Validator completed with no mapped 10th-percentile conditional or value error.","coverage":"Required for percentage/algorithm records when count is not zero.","dependencies":[{"rule":"hpt.gate.cms_validator_finished","type":"evidence_required"},{"rule":"hpt.gate.non_dollar_rates","type":"applicability_required"}]},{"key":"hpt.mrf.cms.allowed_median","version":1,"title":"MRF correctly encodes the median allowed amount","source":"CMS_DERIVED","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(b)(2)(ii)(C)(2)"],"group":"allowed_amounts","order":20,"previousKey":"hpt.mrf.allowed_amount.median","passInference":"Validator completed with no mapped median conditional or value error.","coverage":"Required for percentage/algorithm records when count is not zero.","dependencies":[{"rule":"hpt.gate.cms_validator_finished","type":"evidence_required"},{"rule":"hpt.gate.non_dollar_rates","type":"applicability_required"}]},{"key":"hpt.mrf.cms.allowed_p90","version":1,"title":"MRF correctly encodes the 90th percentile allowed amount","source":"CMS_DERIVED","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(b)(2)(ii)(C)(2)"],"group":"allowed_amounts","order":30,"previousKey":"hpt.mrf.allowed_amount.p90","passInference":"Validator completed with no mapped 90th-percentile conditional or value error.","coverage":"Required for percentage/algorithm records when count is not zero.","dependencies":[{"rule":"hpt.gate.cms_validator_finished","type":"evidence_required"},{"rule":"hpt.gate.non_dollar_rates","type":"applicability_required"}]},{"key":"hpt.mrf.cms.allowed_count","version":1,"title":"MRF correctly encodes the count of allowed amounts","source":"CMS_DERIVED","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(b)(2)(ii)(C)(2)"],"group":"allowed_amounts","order":40,"previousKey":"hpt.mrf.allowed_amount.count","passInference":"Validator completed with no mapped count, format, or zero-count-note error.","coverage":"Count is required for percentage/algorithm records; zero requires explanatory notes.","dependencies":[{"rule":"hpt.gate.cms_validator_finished","type":"evidence_required"},{"rule":"hpt.gate.non_dollar_rates","type":"applicability_required"}]},{"key":"hpt.mrf.cms.description","version":1,"title":"MRF correctly encodes each item or service description","source":"CMS_DERIVED","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(b)(2)(iii)(A)"],"group":"item_service","order":10,"previousKey":"hpt.mrf.item.description","passInference":"Validator completed with no mapped description error.","coverage":"description is required and non-empty for encoded standard-charge information.","dependencies":[{"rule":"hpt.gate.cms_validator_finished","type":"evidence_required"}]},{"key":"hpt.mrf.cms.setting","version":1,"title":"MRF correctly encodes the inpatient or outpatient setting","source":"CMS_DERIVED","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(b)(2)(iii)(B)"],"group":"item_service","order":20,"previousKey":"hpt.mrf.item.setting","passInference":"Validator completed with no mapped setting error.","coverage":"setting is required and restricted to inpatient, outpatient, or both.","dependencies":[{"rule":"hpt.gate.cms_validator_finished","type":"evidence_required"}]},{"key":"hpt.mrf.cms.drug_units","version":1,"title":"MRF correctly encodes drug units and measurement type","source":"CMS_DERIVED","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(b)(2)(iii)(C)"],"group":"item_service","order":30,"previousKey":"hpt.mrf.item.drug_units","passInference":"Validator completed with no mapped drug-information conditional or value error.","coverage":"Drug information is conditionally required when an NDC code is present.","dependencies":[{"rule":"hpt.gate.cms_validator_finished","type":"evidence_required"}]},{"key":"hpt.mrf.cms.billing_code","version":1,"title":"MRF correctly encodes billing codes and code types","source":"CMS_DERIVED","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(b)(2)(iv)(A)-(B)"],"group":"billing_coding","order":10,"previousKey":"hpt.mrf.coding.code_and_type","passInference":"Validator completed with no mapped code-pair or code-type error.","coverage":"At least one code-information object is required and each requires code and type.","dependencies":[{"rule":"hpt.gate.cms_validator_finished","type":"evidence_required"}]},{"key":"hpt.mrf.modifiers_complete","version":1,"title":"MRF lists every applicable modifier and its charges","source":"CARECARTA_NATIVE","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(b)(2)(iv)(C)"],"group":"billing_coding","order":20,"previousKey":"hpt.mrf.coding.modifiers","passInference":"Never decided (NEEDS_OUTSIDE_EVIDENCE, shown as Not assessed): the file alone cannot show that every applicable modifier and its charges are listed.","coverage":"CMS validates encoded modifier structure but cannot establish that all applicable unencoded modifiers were disclosed.","dependencies":[{"rule":"hpt.gate.mrf_parsed","type":"evidence_required"}]},{"key":"hpt.mrf.cms.template","version":1,"title":"MRF passes the CMS validator without errors","source":"CMS_DERIVED","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(c)(2)"],"group":"cms_format","order":10,"previousKey":"hpt.mrf.cms.template_conformance","passInference":"Validator completed and reported valid with no errors; alerts remain separately mapped.","coverage":"Umbrella validity reported by the pinned official validator.","dependencies":[{"rule":"hpt.mrf.access.automated","type":"evidence_required"}]},{"key":"hpt.mrf.access.no_payment","version":1,"title":"MRF downloads without payment","source":"CARECARTA_NATIVE","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(d)(3)(i)"],"group":"publication_access","order":10,"previousKey":"hpt.mrf.publication.free","passInference":"Passes when an automated client downloaded the MRF itself rather than a web page; a payment page would have been served in its place. Indeterminate, with the download's reason, when the download failed. There is no separate detection of such pages beyond the download's own classification.","coverage":null,"dependencies":[]},{"key":"hpt.mrf.access.no_login","version":1,"title":"MRF downloads without an account or password","source":"CARECARTA_NATIVE","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(d)(3)(ii)"],"group":"publication_access","order":20,"previousKey":"hpt.mrf.publication.no_account","passInference":"Passes when an automated client downloaded the MRF itself rather than a web page; a login or account page would have been served in its place. Indeterminate, with the download's reason, when the download failed. There is no separate detection of such pages beyond the download's own classification.","coverage":null,"dependencies":[]},{"key":"hpt.mrf.access.no_personal_info","version":1,"title":"MRF downloads without submitting personal information","source":"CARECARTA_NATIVE","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(d)(3)(iii)"],"group":"publication_access","order":30,"previousKey":"hpt.mrf.publication.no_pii","passInference":"Passes when an automated client downloaded the MRF itself rather than a web page; a form asking for personal information would have been served in its place. Indeterminate, with the download's reason, when the download failed. There is no separate detection of such pages beyond the download's own classification.","coverage":null,"dependencies":[]},{"key":"hpt.mrf.access.automated","version":1,"title":"MRF downloads to an automated client","source":"CARECARTA_NATIVE","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(d)(3)(iv)"],"group":"publication_access","order":40,"previousKey":"hpt.mrf.publication.automated_download","passInference":"Passes when an automated client downloaded the MRF. Fails at once for a missing file (404, 410). Fails for a refusal, a web page in place of the file, a server error, or a connection failure that looks like the hospital's (a host that does not resolve or refuses connections, a certificate or TLS failure every client meets) only when it also happened on an earlier day, and a refusal on every route. Otherwise indeterminate: FETCH_FAILED, or CARECARTA_LIMIT for CareCarta's size ceiling.","coverage":null,"dependencies":[]},{"key":"hpt.mrf.format.csv_or_json","version":1,"title":"MRF is a CSV or JSON file, optionally compressed","source":"CARECARTA_NATIVE","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(d)(4)"],"group":"publication_access","order":50,"previousKey":"hpt.mrf.publication.digitally_searchable","passInference":"Passes when the download is a CSV or JSON file, or a ZIP or GZIP containing exactly one. Fails when the hospital's file is another format, an unsupported or ambiguous container, or an archive CareCarta's safety policy refuses. Indeterminate when CareCarta could not prepare the bytes it received (PREPARATION_FAILED) or the file exceeded its size ceiling (CARECARTA_LIMIT).","coverage":null,"dependencies":[{"rule":"hpt.mrf.access.automated","type":"evidence_required"}]},{"key":"hpt.mrf.format.filename","version":2,"title":"MRF file name follows the CMS convention","source":"CARECARTA_NATIVE","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":3,"authority":["45 CFR 180.50(d)(5)"],"group":"publication_access","order":60,"previousKey":"hpt.mrf.publication.filename","passInference":"A name the file is served under matches the CMS convention: the response's Content-Disposition name, the last segment of the listed address (or of the address inside an email-link wrapper such as Outlook Safe Links or Proofpoint URL Defense, which the detail names), or the last segment of the address the file is finally served from after redirects. For a ZIP or GZIP, the price file inside is judged and the archive's name is reported. Fails when no name conforms or none names a file. Judged even when the file cannot be prepared, accepting either .csv or .json. Reuse requires the same URL and bytes.","coverage":"The official validator library exports filename logic, but the CLI validation path does not invoke it.","dependencies":[{"rule":"hpt.mrf.access.automated","type":"evidence_required"}]},{"key":"hpt.txt.conforms","version":1,"title":"cms-hpt.txt is published and uses the required fields","source":"CARECARTA_NATIVE","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(d)(6)(i)"],"group":"publication_access","order":70,"previousKey":"hpt.mrf.discovery.cms_hpt_txt","passInference":"Passes when the TXT is retrieved and strictly follows the required field names and values; fails when it does not, when it is missing (404, 410), or when a refusal, web page in place of the file, or server error also happened on an earlier day. Indeterminate when CareCarta has no TXT URL (SOURCE_URL_UNKNOWN) or the download failed otherwise (FETCH_FAILED).","coverage":null,"dependencies":[]},{"key":"hpt.txt.links_mrf","version":1,"title":"cms-hpt.txt links this hospital's MRF","source":"CARECARTA_NATIVE","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(d)(6)(i)"],"group":"publication_access","order":75,"previousKey":null,"passInference":"Passes when an entry is identified as this hospital's, from the lenient parse, in order: the document declares a single MRF; exactly one declaration carries the hospital's name (compared without case or punctuation, never fuzzily); or, identified by the planner, exactly one declared MRF declares the hospital's Type 2 NPI in its own header. Fails when the TXT declares no usable MRF URL. Indeterminate when no entry can be identified (TXT_ENTRY_UNIDENTIFIED; a name that differs from the catalog's is never a failure) or the TXT could not be read, which is counted once, against hpt.txt.conforms.","coverage":null,"dependencies":[]},{"key":"hpt.website.price_transparency_link","version":2,"title":"Homepage has a link labelled Price Transparency","source":"CARECARTA_NATIVE","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":3,"authority":["45 CFR 180.50(d)(6)(ii)"],"group":"publication_access","order":80,"previousKey":"hpt.mrf.discovery.footer_link","passInference":"The homepage HTML, as served without running its scripts, has a link whose label reads \"Price Transparency\". The exact label is required, as the regulation names it; a failure names the nearest label used. Fails only when the HTML has a Price Transparency-like link under another label. Indeterminate (NEEDS_HUMAN_REVIEW) when the HTML has no such link at all, since many sites add footer links with scripts after the page loads, which CareCarta does not run (4 of 5 such homepages checked in a browser on 2026-09-30 had the link); also when the response is not HTML, has fewer than ten links, or mentions Price Transparency without a readable link. Footer placement and the link's destination are not checked.","coverage":null,"dependencies":[]},{"key":"hpt.mrf.updated_within_year","version":1,"title":"MRF was updated within the past 12 months","source":"CARECARTA_NATIVE","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.50(e)"],"group":"update_frequency","order":10,"previousKey":"hpt.mrf.freshness.annual","passInference":"Passes when last_updated_on (YYYY-MM-DD or M/D/YYYY) is within 12 months before the observation date; fails when older. Indeterminate when the date is missing (FILE_VALUE_MISSING), unreadable (FILE_VALUE_INVALID), or in the future (NEEDS_HUMAN_REVIEW). Judged from the header, so a file with malformed rows is still judged.","coverage":"CMS validates the date's syntax; CareCarta compares the date with the audit's observation date.","dependencies":[{"rule":"hpt.gate.mrf_header_read","type":"evidence_required"}]},{"key":"hpt.website.shoppable_services","version":1,"title":"Website offers a qualifying shoppable-services list or price estimator","source":"CARECARTA_NATIVE","public":true,"countInSummary":true,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":["45 CFR 180.60(a)(1)","45 CFR 180.60(a)(2)"],"group":"shoppable_services","order":10,"previousKey":"hpt.shoppable.qualifying","passInference":"Not built: always indeterminate (CHECK_NOT_BUILT, shown as Not assessed). When built, passes when at least one of the two permitted compliance paths satisfies its content, access, search, and update requirements.","coverage":"A hospital may comply through the consumer-friendly display in paragraph (a)(1) or a qualifying internet-based price estimator in paragraph (a)(2).","dependencies":[]},{"key":"hpt.gate.mrf_header_read","version":1,"title":"CareCarta read the MRF's header fields","source":"CARECARTA_NATIVE","public":false,"countInSummary":false,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":[],"group":null,"order":0,"previousKey":null,"passInference":"The profiler read at least one of the MRF's header fields (hospital name, update date, version, location, address, Type 2 NPI), even if its rows could not all be parsed.","coverage":null,"dependencies":[{"rule":"hpt.mrf.access.automated","type":"evidence_required"}]},{"key":"hpt.gate.mrf_parsed","version":1,"title":"CareCarta parsed the whole MRF","source":"CARECARTA_NATIVE","public":false,"countInSummary":false,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":[],"group":null,"order":0,"previousKey":"hpt.mrf.parse.usable","passInference":"The profiler read every record. When it could not and the CMS validator, which finished, also reports the file invalid, the gate fails as the hospital's; otherwise it is indeterminate (FILE_NOT_PARSEABLE, or the profiler's own limit or failure).","coverage":null,"dependencies":[{"rule":"hpt.mrf.access.automated","type":"evidence_required"}]},{"key":"hpt.gate.cms_validator_finished","version":1,"title":"The CMS validator finished","source":"CARECARTA_NATIVE","public":false,"countInSummary":false,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":[],"group":null,"order":0,"previousKey":"hpt.mrf.cms_validation.usable","passInference":"The pinned validator completed without truncation. A timeout or output ceiling is indeterminate (CARECARTA_LIMIT) and a crash is indeterminate (TOOL_DID_NOT_FINISH). Production runs the validator with no error limit, so VALIDATOR_ERROR_CAP does not arise.","coverage":null,"dependencies":[{"rule":"hpt.mrf.access.automated","type":"evidence_required"}]},{"key":"hpt.gate.non_dollar_rates","version":1,"title":"The MRF has percentage or algorithm rates","source":"CARECARTA_NATIVE","public":false,"countInSummary":false,"effectiveFrom":"2026-01-01","lastChangedInRuleset":2,"authority":[],"group":null,"order":0,"previousKey":"hpt.mrf.rate_expression.classified","passInference":"Passes when the profiler found percentage- or algorithm-based payer rates, and is not applicable when it found none; it has no result until the whole file is parsed.","coverage":null,"dependencies":[{"rule":"hpt.gate.mrf_parsed","type":"evidence_required"}]}]}
