This class assists in resolving property names in the following four formats, with the layout of an identifying String in parentheses:
Simple (name) - The specified name identifies an individual property of a particular JavaBean. The name of the actual getter or setter method to be used is determined using standard JavaBeans instrospection, a property named "xyz" will have a getter method named getXyz() or (for boolean properties only) isXyz(), and a setter method named setXyz().
Indexed (name[index]) - The underlying property value is assumed to be an array. The appropriate (zero-relative) entry in the array is selected. List objects are now also supported for read/write.
Mapped (name(key)) - The JavaBean is assumed to have an property getter and setter methods with an additional attribute of type java.lang.String.
Nested (name1.name2[index].name3(key)) - Combining mapped, nested, and indexed references is also supported.