
edits.seer.internal.rules.IF178.xml Maven / Gradle / Ivy
<rule id="IF178" name="Verify ICDO2 to ICDO3 Conversion (NAACCR)" tag="N0495" java-path="lines.line" category="inter-field" depends="Behavior_92-00_ICD-O-2,Behavior_Code_ICD-O-3,Histologic_Type_ICD-O-3,Histology_92-00_ICD-O-2,ICD-O-3_Conversion_Flag,Primary_Site,Year_of_Diagnosis"> <expression><![CDATA[Integer site = Functions.asInt(line.primarySite.substring(1)) Integer histIcdO2 = Functions.asInt(line.histologyIcdO2) if (line.histologyIcdO2 == null || line.behaviorIcdO2 == null || line.histologicTypeIcdO3 == null || line.behaviorCodeIcdO3 == null || line.icdO3ConversionFlag == '3' || line.dateOfDiagnosisYear < '1973' || line.dateOfDiagnosisYear > '2000') return true if ((histIcdO2 == 9421 || histIcdO2 == 9422) && line.behaviorIcdO2 == '3') return line.histologicTypeIcdO3 == '9421' && line.behaviorCodeIcdO3 == '3' if (histIcdO2 == 8510) { if (site == 739) return line.histologicTypeIcdO3 == '8345' return line.histologicTypeIcdO3 == '8510' } if (histIcdO2 == 8832 && line.behaviorIcdO2 == '0') { if (Functions.between(site,440,449)) return line.histologicTypeIcdO3 == '8832' && line.behaviorCodeIcdO3 == '0' return line.histologicTypeIcdO3 == '8831' && line.behaviorCodeIcdO3 == '0' } if (histIcdO2 == 8930) { if (Functions.between(site,540,549)) return line.histologicTypeIcdO3 == '8930' if (Functions.between(site,150,218) || Functions.between(site,260,269)) return line.histologicTypeIcdO3 == '8936' if (site == 649 && line.behaviorIcdO2 == '0') return line.histologicTypeIcdO3 == '8966' return line.histologicTypeIcdO3 == '8935' } if (histIcdO2 == 9731) { if (Functions.between(site,400,419)) return line.histologicTypeIcdO3 == '9731' return line.histologicTypeIcdO3 == '9734' } String morphIcdO2 = line.histologyIcdO2 + line.behaviorIcdO2 String morphIcdO3 = line.histologicTypeIcdO3 + line.behaviorCodeIcdO3 if (!((Map)Context.IF178_HistConversion1).containsKey(morphIcdO2) && !((Map)Context.IF178_HistConversion2).containsKey(morphIcdO2)) return morphIcdO2 == morphIcdO3 if (Functions.between(histIcdO2, 8000, 9499)) return ((Map)Context.IF178_HistConversion1).get(morphIcdO2) == morphIcdO3 if (Functions.between(histIcdO2, 9500, 9999)) return ((Map)Context.IF178_HistConversion2).get(morphIcdO2) == morphIcdO3 return false]]></expression> <message>ICD-O-2 Hist/beh Conversion to ICD-O-3 conflict</message> <description><![CDATA[This edit is skipped for the following cases: 1) Diagnosis years less than 1973 or greater than 2000 2) Histology (92-00) ICD-O-2 or Histologic Type ICD-O-3 [522] is blank 3) Behavior (92-00) ICD-O-2 or Behavior Code ICD-O-3 [523] is blank 4) ICD-O-3 Conversion Flag is 3 This edit converts the ICD-O-2 Histology/Behavior combination on the SEER data record to ICD-O-3 and then compares the result to the ICD-O-3 field submitted by the registry. If the combinations do not match, then an error is triggered.]]></description> <history> <event version="SE11-001-22" user="greend" date="2008-01-05">Edit is bypassed if Histologic Type ICD-O-3 [522] or Behavior Code ICD-O-3 [523] is blank.</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-020-01" user="depryf" date="2020-02-04" ref="68281">Changed property names to align with NAACCR XML IDs.</event> </history> </rule>
© 2015 - 2025 Weber Informatics LLC | Privacy Policy