edits.seer.internal.rules.IF580.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="IF580" name="TNM Path N, Reg Nodes Pos - Ed 7 (COC)" tag="N2257" java-path="lines.line" category="inter-field" depends="Behavior_Code_ICD-O-3,Histologic_Type_ICD-O-3,Primary_Site,Regional_Nodes_Positive,TNM_Path_N,Type_of_Reporting_Source,Year_of_Diagnosis"> <expression><![CDATA[//Skip conditions 1, 2 if (line.dateOfDiagnosisYear == null || line.dateOfDiagnosisYear < '2016' || line.dateOfDiagnosisYear > '2017' || line.typeOfReportingSource == '6' || line.typeOfReportingSource == '7') return true //Skip conditions 3, 4 if (line.behaviorCodeIcdO3 == '0' || line.behaviorCodeIcdO3 == '1' || line.tnmPathN == null || line.tnmPathN == '88') return true //Skip conditions 5, 6 if (line.regionalNodesPositive == null || (line.tnmEditionNumber != '07' && line.tnmEditionNumber != 'U7')) return true String hist = line.histologicTypeIcdO3 String chapter = ((Closure)Context.AJCC7CodeLookup16).call(line) // Exceptions for some chapters String tnmPathN = line.tnmPathN if (chapter == '014' && tnmPathN == 'p1C') return true else if ((chapter == '030' || chapter == '052') && tnmPathN == 'p2') return true else if (chapter == '031' && tnmPathN == 'p2C') return true else if (chapter == '032' && tnmPathN == 'p2B') return true else if (chapter == '36A' && (tnmPathN == 'c1' || tnmPathN == 'c2')) return true else if (chapter == '055' && (tnmPathN == 'p3' || tnmPathN == 'p4')) return true if (Functions.matches(tnmPathN, /^.[123].*$/)) return line.regionalNodesPositive != '00' && line.regionalNodesPositive != '98' && line.regionalNodesPositive != '99' return true]]></expression> <message>TNM Path N and Regional Nodes Positive conflict</message> <description><![CDATA[This edit is skipped if any of the following conditions are true: 1. Year of Date of Diagnosis is less than 2016, greater than 2017, blank (unknown), or invalid 2. Case is autopsy only (Type of Reporting Source = 6) or death certificate only (Type of Reporting Source = 7) 3. Behavior Code ICD-O-3 = 0 (benign) or 1 (borderline) 4. TNM Path N is blank or 88 5. Regional Nodes Positive is blank 6. TNM Edition Number is not = 07, U7 At least one positive lymph node is required if TNM Pathologic N is 1 or higher. If the second character of TNM Path N = 1, 2, or 3, indicating metastasis in at least one lymph node Then Regional Nodes Positive must not = 00 (all nodes examined are negative), 98 (no nodes were examined), 99 (unknown whether nodes are positive) The following TNM site/histology groups/Path N codes are exceptions to the above and will not generate errors: Chapter 14: Colon and Rectum (Site: C180,C182-C189,C199,C209 Histology:8000-8152,8154-8231,8243-8245,8247-8248,8250-8576,8940-8950,8980-8981) TNM Path N = p1C (tumor deposits) Chapter 30: Merkel Cell Carcinoma (Site: C440,C442-C449,C510-C512,C518-C519,C600-C602,C608-C609,C632 Histology: 8247) TNM Path N = p2 (in transit metastases) Chapter 31: Melanoma of the Skin (Site: C440-C449,C510-C512,C518-C519,C600-C602,C608-C609,C632 Histology:8720-8790) TNM Path N = p2C (satellite nodules) Chapter 32: Breast TNM Path N = p2B (clinically detected internal mammary lymph nodes in absence of axillary lymph node metastases) Chapter 36A: Corpus Uteri Carcinoma TNM Path N = c1 or c2 (clinical N allowed in path N field) Chapter 52: Retinoblastoma (Site: C692 Histology 9510-9514) TNM Path N = p2 (distant nodes) Chapter 55: Ocular Adnexal Lymphoma (Site: C441,C690,C695-C696 Histology: 9590-9699,9702-9738,9811-9818,9820-9837) TNM Path N = p3 or p4 (codes indicating distant nodes)]]></description> <history> <event version="SE16-015-01" user="kirbyk" date="2016-05-19" ref="67404">Edit created.</event> <event version="SE16-016-01" user="kirbyk" date="2017-01-17" ref="67603">Added skip condition for TNM Edition Number.</event> <event version="SE16-016-08" user="depryf" date="2017-11-22" ref="67674">Edit syntax updated to allow pre-compilation optimization; no change in behavior.</event> <event version="SE18-018-01" user="kirbyk" date="2018-04-27" ref="67773">Added several exception conditions based on AJCC chapter.</event> <event version="SE18-018-02" user="schadega" date="2018-05-18" ref="67743">Name change.</event> <event version="SE18-018-04" user="kirbyk" date="2018-08-01" ref="67979">Removed exceptions for chapters 16A, 16B, 27, and 28.</event> <event version="SE18-018-10" user="kirbyk" date="2018-11-30" ref="68061">Added skip condition for DX Year 2018+.</event> <event version="SE18-020-01" user="depryf" date="2020-02-04" ref="68281">Changed property names to align with NAACCR XML IDs.</event> </history> </rule>