Java Annotation Relationship Projections

Statement      Format Relationship Entities
DEPENDS ON JAVAANNOTATION
@Annotation2
@interface Annotation1 { }
Java Annotation Depends On Java Annotation Annotation1 depends on Annotation2
DEPENDS ON JAVACLASS
@interface Annotation1 {
  Class1 c();
}
Java Annotation Depends On Java Class Annotation1 depends on Class1
DEPENDS ON JAVAENUMERATION
@interface Annotation1 {
  Enum1 e();
}
Java Annotation Depends On Java Enumeration Annotation1 depends on Enum1
HAS JAVAANNOTATION
@interface Annotation1 {
  @interface Annotation2 { }
}
Java Annotation Has Java Annotatation Annotation1 has Annotation2
HAS JAVACLASS
@interface Annotation1 {
  class Class1 { }
}
Java Annotation Has Java Class Annotation1 has Class1
HAS JAVAENUMERATION
@interface Annotation1 {
  enum Enum1 { }
}
Java Annotation Has Java Enumeration Annotation1 has Enum1
HAS JAVAINTERFACE
@interface Annotation1 {
  interface Interface1 { }
}
Java Annotation Has Java Interface Annotation1 has Interface1