DAOBasedAnnotationService extends AbstractShortnameResolver implements AnnotationService { @Override public Collection<Annotation> getAnnotationsBySemanticTag(String shortname) { return getAnnotationsBySemanticTag(getURIFromShortname(shortname)); }  AnnotationDAO getAnnotationDAO(); void setAnnotationDAO(AnnotationDAO annotationDAO); TransactionalAnnotationFactory getAnnotationFactory(); void setAnnotationFactory(TransactionalAnnotationFactory annotationFactory); @Override Collection<Annotation> getAnnotations(); @Override Collection<Annotation> getAnnotations(int limit, int start); @Override Collection<Annotation> getAnnotationsByStudy(Study study); @Override Collection<Annotation> getAnnotationsByBiologicalEntity(BiologicalEntity biologicalEntity); @Override Collection<Annotation> getAnnotationsByProperty(Property property); @Override Collection<Annotation> getAnnotationsBySemanticTag(String shortname); @Override Collection<Annotation> getAnnotationsBySemanticTag(URI semanticTagURI); @Override Annotation getAnnotation(String shortname); @Override Annotation getAnnotation(URI uri); @Override Annotation saveAnnotation(Annotation annotation); @Override Collection<Annotation> saveAnnotations(Collection<Annotation> annotations); @Override Collection<Annotation> updatePreviousAnnotations(Collection<Annotation> annotationsToUpdate,
                                                            AnnotationUpdate update);  }
@Test public void testGetAnnotationsBySemanticTag() { service.getAnnotationsBySemanticTag(semanticTagURI); verify(dao).readBySemanticTag(semanticTagURI); }