Open mcourtot opened 7 years ago
Maybe also consider positive/negative queries, e.g. all individuals that have X and NOT Y
Logical operations move us in the direction of implementing an SQL query, which we will never do as a direct SQL portal. Is there a level of implementation that provides enough functionality without taking on all the complexity of a full featured logical query language?
Phenopackets support negation - so if we were able to export from GA4GH to PXF we should be able to support that type of query. Other option is to have the negation as part of the characteristics objects following a similar model, i.e. prefixing ontologTerm(s) by "not" in the array.
I agree with Melanie, negation doesn't necessarily mean exposing the underlying implementation. I can see allowing negative server side filtering on result sets.
I would rephrase "Find all biosamples for an individual with an annotation of polydactyly (phenotype)" to "Find all biosamples for an individual with a specific phenotype or disease" to be a little bit broader. We should also keep in mind that usually disease are only at the individual level, while phenotypes can be both individual and sample.