I don't think AnnotatedType reflects well the purpose. IMHO name "key" reflects purpose a lot more. This actually is a key into a map of bindings.