All Downloads are FREE. Search and download functionalities are using the official Maven repository.

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