edits.seer.internal.rules.IFN6301.xml Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of validation-edits-seer Show documentation
Show all versions of validation-edits-seer Show documentation
Java implemenation of the SEER edits.
The newest version!
<rule id="IFN6301" name="EOD Regional Nodes, Skin Eyelid, Reg Nodes Positive, Scope Nodes (SEER)" tag="N6301" java-path="lines.line" category="inter-field" depends="Year_of_Diagnosis"> <expression><![CDATA[if (line.dateOfDiagnosisYear == null || line.dateOfDiagnosisYear < '2021' || line.typeOfReportingSource == '7' || line.eodRegionalNodes == null) return true if (line.schemaId == null || line.schemaId != '00640') return true if (line.eodRegionalNodes == '200') { if (line.regionalNodesPositive != null && !['01','95','97'].contains(line.regionalNodesPositive)) return false } else if (line.eodRegionalNodes == '500') { if (line.regionalNodesPositive != null && !Functions.matches(line.regionalNodesPositive, /^0[2-9]|[1-8]\d|9[057]$/)) return false } if (['200','500'].contains(line.eodRegionalNodes)) { if (line.typeOfReportingSource == '6') { if (line.rxSummScopeRegLnSur != '0') return false } else { Integer dolcYear = Functions.asInt(line.dateOfLastContactYear) Integer dolcMonth = Functions.asInt(line.dateOfLastContactMonth) Integer dolcDay = Functions.asInt(line.dateOfLastContactDay) Integer dxYear = Functions.asInt(line.dateOfDiagnosisYear) Integer dxMonth = Functions.asInt(line.dateOfDiagnosisMonth) Integer dxDay = Functions.asInt(line.dateOfDiagnosisDay) if (line.vitalStatus == '0' && (Boolean)((Closure)Context.compareDatesWithinMonths).call(dolcYear, dolcMonth, dolcDay, dxYear, dxMonth, dxDay, 5)) { if (!Functions.matches(line.rxSummScopeRegLnSur, /^[0-7]$/)) return false } else if (!Functions.matches(line.rxSummScopeRegLnSur, /^[1-7]$/)) return false } } return true]]></expression> <message>EOD Reginoal Nodes/Reg Nodes Pos/Scope conflict for Skin of Eyelid</message> <description><![CDATA[This edit verifies that EOD Regional Nodes is coded consistently with RX Summ-- Scope Reg LN Sur and Regional Nodes Positive for Schema ID 00640, Skin of Eyelid. 1. The edit is skipped for the following conditions: a. Date of Diagnosis before 2021, blank (unknown), or invalid. b. Schema ID is blank or not 00640 c. EOD Regional Nodes is blank d. Type of Reporting Source is 7 (Death Certificate Only) 2. If EOD Regional Nodes = 200 (single positive node based on biopsy), Regional Nodes Positive if not blank must = 01 or 95 or 97 3. If EOD Regional Nodes = 500 (multiple positive nodes based on biopsy), Regional Nodes Positive if not blank must = 02-90, 95, 97 4. If EOD Regional Nodes = 200 or 500 If Type of Reporting Source = 6 (autopsy only) then RX Summ--Scope Reg LN Sur must =0 Else if vital Status = 0 and Date of Last Contact within 5 months of Date of Diagnosis then RX Summ--Scope Reg LN Sur must = 0-7 Else RX Summ--Scope Reg LN Sur must = 1-7]]></description> <history> <event version="SE21-021-04" user="beverung" date="2021-04-28" ref="68607">Edit created.</event> <event version="SE22-022-01" user="beverung" date="2022-01-20" ref="68897">Update edit name to match new NAACCR translated edit.</event> <event version="SE22-022-01" user="beverung" date="2022-01-26" ref="68787">Update RX Summ-Scope Reg LN Sur conditions.</event> <event version="SE22-022-05" user="kirbyk" date="2022-05-17" ref="68995">Replaced non-ASCII characters in description.</event> <event version="SE22-022-08" user="secristc" date="2022-06-23" ref="69011">Updated error message.</event> <event version="SE23-023-01" user="cooki" date="2023-03-06" ref="69188">Added code 97 to EOD Regional Nodes = 200.</event> <event version="SE23-023-03" user="shearerw" date="2023-05-24" ref="69216">Fix logic for DOLC within 5 months of DX date to allow difference in year.</event> </history> </rule>