Bad title but:
A TypeElement implementation can have AnnotationMirrors, like any AnnotatedConstruct.
An AnnotationMirror has an annotation type which is a DeclaredType.
A DeclaredType is always defined (asElement()) by a TypeElement.
An annotation (Documented) may annotate itself.
When you put this together:
TypeElement for Documented has a DeclaredType for Documented
- That
DeclaredType will have to be the same type instance as the type instance returned by getAnnotationType() invoked on the AnnotationMirror representing Documented