Improve the DSL to support complex dynamic mappings
The "switch" and "case" used in the dynamic mappings have been removed and replaced by the concept "if" which, combined with a predicate expression, allow the specifier to have more control on the widget to select for the dynamic mapping.
The first version of the support of a select widget for mono-valued references has been contributed too.