I feel that a few rants are about to burst in me. Let me take this first; this is not a rant, though. Just a very large exclamation:
Java Annotations are NOT a way to implement DSLs, and will never be.
Java annotations are really nice, but seriously, they are NOT manna from heaven.