Skip navigation links

Package edu.emory.cci.aiw.cvrg.eureka.services.conversion

This package implements conversion of Eureka! derived phenotypes to Protempa proposition definitions.

See: Description

Package edu.emory.cci.aiw.cvrg.eureka.services.conversion Description

This package implements conversion of Eureka! derived phenotypes to Protempa proposition definitions. The following conversions take place:
Value threshold phenotypes
If single threshold, convert to a low-level abstraction definition with id phenotype key + "_PRIMARY". If multiple thresholds, convert to a compound low-level abstraction definition with id phenotype key + "_PRIMARY" that is abstracted from low-level abstraction definitions with id phenotype key + "_SUB" + the proposition id of the thresholded parameter. Intervals satisfying the value threshold(s) are given the value phenotype key + "_VALUE". Intervals not satisfying the threshold(s) are given the value phenotype key + "_VALUE_COMP". Before sending to the backend layer, all such abstraction definitions are wrapped in a high-level abstraction definition with id phenotype key + "_WRAPPER" that is abstracted from intervals with value phenotype key + "_VALUE".
Sequence phenotypes
Convert to a high-level abstraction definition with id phenotype key + "_PRIMARY".
Category phenotypes
Convert to the same type of proposition definition as the children and with id phenotype key + "_PRIMARY".
Frequency phenotypes
  • If abstracted from a value threshold phenotype
    • If the value of the consecutive field has value true
      • If the frequency type is at least, then create a compound low-level abstraction definition with id phenotype key + "_SUB" that is wrapped by a high-level abstraction definition with id phenotype key + "_PRIMARY".
      • If the frequency type is first, then create a compound low-level abstraction definition with id phenotype key + "_SUB" that is wrapped by a slice definition with id phenotype key + "_SUBSUB" for the first interval with value phenotype key + "_VALUE". The slice definition is in turn wrapped by a high-level abstraction definition with id phenotype key + "_PRIMARY".
    • Else
      • If the frequency type is at least, then create a high- level abstraction definition with id phenotype key + "_PRIMARY" with n temporal extended parameter definitions for the value threshold, where n is the specified count.
      • If the frequency type is first, then create a slice definition with id phenotype key + "_SUB" that is wrapped by a high-level abstraction definition with id phenotype key + "_PRIMARY".
  • If not abstracted from a value threshold phenotype
    • If the frequency type is at least, then create a high- level abstraction definition with id phenotype key + "_PRIMARY" with n temporal extended parameter definitions for the value threshold, where n is the specified count.
    • If the frequency type is first, then create a slice definition with id phenotype key + "_SUB" that is wrapped by a high-level abstraction definition with id phenotype key + "_PRIMARY".

Copyright © 2012–2021 Emory University. All rights reserved.