edits.seer.internal.rules.IF29.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.
<rule id="IF29" name="RX Summ--Surgery Type, Site, RptSrc (SEER IF29)" tag="N0226" java-path="lines.line" category="inter-field" depends="Histologic_Type_ICD-O-3,Primary_Site,RX_Summ--Surgery_Type,Year_of_Diagnosis"> <expression><![CDATA[if (line.dateOfDiagnosisYear == null || (line.registryId == '0000001544' && line.dateOfDiagnosisYear < '2000') || (line.registryId == '0000001541' && line.dateOfDiagnosisYear < '1998')) return true if (line.registryId == '0000001562' || line.registryId == '0000001563') return true if (line.dateOfDiagnosisYear < '1998' && line.typeOfReportingSource == '6') return line.rxSummSurgeryType == '00' if (line.dateOfDiagnosisYear < '1998' && line.typeOfReportingSource == '7') return line.rxSummSurgeryType == '09' if (line.dateOfDiagnosisYear > '1997') return line.rxSummSurgeryType == null Integer siteNum = Functions.asInt(line.primarySite.substring(1)) if (siteNum < 0 || line.rxSummSurgeryType == null || line.rxSummSurgeryType < '00' || line.rxSummSurgeryType > '99') return false if (Functions.between(siteNum,540,549) && line.dateOfDiagnosisYear > '1989' && line.rxSummSurgeryType == '35') return true if (Functions.between(siteNum,530,539) && ((line.dateOfDiagnosisYear > '1989' && line.rxSummSurgeryType == '35') || (line.dateOfDiagnosisYear > '1990' && line.rxSummSurgeryType == '17'))) return true if (Functions.between(siteNum,440,449) && (line.histologicTypeIcdO3 < '8720' || line.histologicTypeIcdO3 > '8790') && line.dateOfDiagnosisYear < '1988' && line.registryId != '0000001529' && line.rxSummSurgeryType != '09' && line.rxSummSurgeryType != '90') return false if (Functions.between(siteNum,530,539) && line.dateOfDiagnosisYear > '1987' && line.rxSummSurgeryType == '15' && line.behaviorCodeIcdO3 != '2') return false Integer surgType = Functions.asInt(line.rxSummSurgeryType) if (Functions.between(siteNum,500,509) && line.behaviorCodeIcdO3 == '2') return ((List)((Map)Context.IF29_Post1987).getOrDefault(siteNum, [])).contains(surgType) if (Functions.between(siteNum,700,729) && line.dateOfDiagnosisYear >= '1992' && line.dateOfDiagnosisYear <= '1997' && (line.rxSummSurgeryType == '35' || line.rxSummSurgeryType == '55')) return false if (line.dateOfDiagnosisYear < '1983') return line.rxSummSurgeryType == '09' || line.rxSummSurgeryType == '90' if (line.dateOfDiagnosisYear < '1988' && line.registryId != '0000001529') return ((List)((Map)Context.IF29_Pre1988).getOrDefault(siteNum, [])).contains(surgType) return ((List)((Map)Context.IF29_Post1987).getOrDefault(siteNum, [])).contains(surgType)]]></expression> <message>RX Summ--Surgery Type and Primary Site conflict</message> <description><![CDATA[This edit is skipped if any of the following conditions is true: 1. Year of Date of Diagnosis is blank. 2. Year of Date of Diagnosis is less than 2000 and Registry ID = 0000001544 (New Jersey)). 3. Year of Date of Diagnosis is less than 1998 and Registry ID = 0000001541 (California, except LA, SF-Oak, and San Jose/Montery). 4. Registry ID[40] = 0000001562 (New York) or 0000001563 (Massachusetts) If year of Date of Diagnosis is less than 1998 and Type of Reporting Source equals 6 (autopsy only), then RX Summ--Surgery Type must equal 00. If year of Date of Diagnosis is less than 1998 and Type of Reporting Source equals 7 (death certificate only), then RX Summ--Surgery Type must equal 09. If year of Date of Diagnosis is greater than 1997, then RX Summ--Surgery Type must be blank. If Primary Site = Brain and CNS (C700-C729) and Year of Diagnosis 1992-1997, then RX summ--Surgery Type must NOT be 35 or 55. The valid RX Summ--Surgery Type codes for each Primary Site and time period are specified under in Appendix D of the SEER Program Code Manual,3rd Edition. The Date of Diagnosis is used to discriminate among changes to the codes over time. NOTE: The SEER Alaska registry follows the 1988+ coding rules regardless of diagnosis year.]]></description> <history> <event version="SE11-001-02" user="greend" date="1986-03-01">Add genital skin sites to pre-1983 site groupings. Add site 887 as site to be edited in cases diagnosed 1983 and after.</event> <event version="SE11-001-04" user="greend" date="1988-05-25">Additional codes made valid due to 1988 SEER record changes.</event> <event version="SE11-001-04" user="greend" date="1988-11-01">Corrected code to allow for an '8' in 2nd digit of certain site-specific codes.</event> <event version="SE11-001-05" user="greend" date="1989-07-10">Two new categories added: (1) BONE AND CONNECTIVE AND OTHER SOFT TISSUE (2) LYMPH NODES AND SPLEEN. Site-specific surgery code '15' valid under site 800-809 (in situ only). Site-specific surgery code '55' valid under "All other sites" category.</event> <event version="SE11-001-07" user="greend" date="1991-01-15">Added code '35' for Cervix Uteri (800-809) and Corpus Uteri (820-828).</event> <event version="SE11-001-07" user="greend" date="1991-09-15">Conversion of morphology and topography codes from ICD-O-1 to ICD-O-2. For cases diagnosed after 12/31/89, site-specific surgery code '35' is valid for sites C530-C539, C540-C549. For cases diagnosed after 12/31/90, site-specific surgery code '17' is valid for sites C530-C539.</event> <event version="SE11-001-10" user="greend" date="1994-07-01">All cases diagnosed before 1983 must be coded 09,90. Breast in situ cases will be coded using the 1988 coding scheme for all diagnosis years.</event> <event version="SE11-001-14" user="greend" date="1998-07-01">All cases diagnosed 1998+ must be blank.</event> <event version="SE11-001-16" user="greend" date="2002-10-07">Edit skipped for cases diagnosed before 1998 from California.</event> <event version="SE11-001-18" user="greend" date="2004-12-21">Edit modified to skip New Jersey cases diagnosed prior to 2000.</event> <event version="SE11-001-19" user="greend" date="2005-06-20">Edit is skipped if year of diagnosis is blank or 9999.</event> <event version="SE11-001-20" user="greend" date="2006-07-12">The following logic checks were added to the edit: If reporting source = 6 then surgery type must be 00. If reporting source = 7 then surgery type must be 09.</event> <event version="SE11-001-21" user="greend" date="2007-08-08">Modified to run for all years.</event> <event version="SE11-001-22" user="greend" date="2008-03-20">RX summ--surgery type codes of 35 and 55 are NOT valid for Brain and CNS (C700-C729) for years of diagnosis 1992 to 1997.</event> <event version="SE12-002-01" user="murphyr" date="2009-12-03">Changed condition 1 to not recognize 9 filled year of diagnosis.</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-12" user="kirbyk" date="2019-01-29" ref="68093">Edit is skipped for registries MA and NY.</event> <event version="SE18-019-02" user="kirbyk" date="2019-05-16" ref="68185">Updated documentation; no change in behavior.</event> <event version="SE24-024-06" user="cooki" date="2024-07-18" ref="69509">Deleted deprecated dependency.</event> <event version="SE24-024-06" user="kirbyk" date="2024-07-22" ref="69326">Removed some edit dependencies.</event> <event version="SE24-024-06" user="shearerw" date="2024-07-25" ref="69510">Switch from ICD-O-2 to ICD-O-3.</event> </history> </rule>