@NotNull @Validate(Integer.class) Set rootNodeIds, @Validate(Integer.class) Set annotatorIds, Map options) {
@NotNull @Validate(Long.class) Set rootNodeIds, @Validate(Long.class) Set annotatorIds, Map options) {
	public Map findAnnotations(Class rootNodeType,             @NotNull @Validate(Integer.class) Set rootNodeIds,             @Validate(Integer.class) Set annotatorIds, Map options) {		        if (rootNodeIds.size()==0)            return new HashMap();		PojoOptions po = new PojoOptions(options);		        Query q = queryFactory.lookup(                "ome.servics.query.FindAnnotationsQueryDefinition",                PojosQP.klass(rootNodeType),                PojosQP.ids(rootNodeIds),                PojosQP.Set("annotatorIds",annotatorIds),                PojosQP.options(po.map()));        List l = (List) iQuery.execute(q);        // no count collection        if (Dataset.class.equals(rootNodeType)){             return AnnotationTransformations.sortDatasetAnnotatiosn(new HashSet(l));        }         else if (Image.class.equals(rootNodeType)){            return AnnotationTransformations.sortImageAnnotatiosn(new HashSet(l));        }        else {             throw new IllegalArgumentException(                    "Class parameter for findAnnotation() must be in " +                    "{Dataset,Image}, not "+ rootNodeType);        }        	}