- All the annotationset webservices have been deprecated.
Querying annotation sets
- Querying by annotation sets is only possible through sample|individual|family|cohort/search. variableSet and annotationSetName parametesrs have been deprecated. Instead, all the queries should be done through the annotation query param. The annotation query param will be able to contain a ; separated string following any combination of the following:
- Filtering by an annotation: Considering a.b is the variable of a nested object we want to query for from the variableSet "tumor", it would be supported "a.b=4" or "tumor:a.b=4". As long as the variable is only valid in one of the variable sets defined for the study, the variableSet part can be omitted.
- Filtering by a variableSet:
- "variableSet=tumor" will return all the objects that have been annotated with that variableSet
- "variableSet!=tumor" will return all the object that have not been annotated with that variableSet
- Filtering by annotation set name:
- "annotationSet=pepe" will return all the objects that have an AnnotationSet with the name "pepe".
- "annotationSet!=pepe" will return all the objects that don't have an AnnotationSet with the name "pepe".
- Projections of annotationSets can be done using the typical include/exclude query params. In this case, we have special words to only include/exclude some concrete things:
- Projecting annotations: "annotationSets.annotations.a.b" and "annotation.a.b" will project the result of a.b annotations only !
- Projecting whole AnnotationSets: "annotationSets.name.pepe" or "annotationSet.pepe" will project the result of the whole AnnotationSet with name pepe
- Projecting AnnotationSets from VariableSets: "annotationSets.variableSet.tumor" or "variableSet.tumor" will project all the existing AnnotationSets annotating the VariableSet tumor.
- The boolean "flattenAnnotations" will be used to flatten the annotations in one single level (true) or leave it as nested objects (default - false)
Creating or modifying annotationSets
- AnnotationSets can be created when the entry that will contain it is being created or by calling to the /entry/{entry}/update webservice
- AnnotationSets can be updated by calling the /entry/{entry}/update webservice
Deleting annotationSets
- AnnotationSets can be deleted by using the /entry/{entry}/update webservice using the new deleteAnnotationSet parameter
Deleting annotations
- Single annotations can be deleted by using the /entry/{entry}/update webservice using the new deleteAnnotation parameter
GroupBy
- We can put something like the following the 'fields' field: annotation:29:pedigreeAnnotation:Population to group by Population