Annotation shall support
1) New format:
@annot-name(att1-name=att1-value, att2-name=att2-value) @annot-name()
A list of annotations separated by space. And, each annotation is in the format of:
@annot-name(key=value, value, key=value)
That is, it starts with the annotation's name and a parenthesis to enclose any number of key and value pairs (key is optional).
2) an array of values:
@annot-name(name1={value1, value2}}, other-value)
3) string-typed value:
@annot-name(name='abc')
where the attribute's value is 'abc' (with single quot). In other words, it is different from $annot-name(name=abc)
4) spaces are allowed in the value:
@bind(name=first second 'more', another='more or less')
Notice the format is different from the older version: ${xxx}