XML Schemas provide precise definition of the XML used to exchange the data. It is possible to have a list of enumerated values for any field. Having such a restricted list of values adds further semantics so that all parties exchanging the documents know exactly what the value means.
VisualSchema had a problem of identifying the list of values for the currency fields in the OAGIS standards. Upon further investigation, it was found that the currency type of OAGIS is actually a Union of two simple types, one with a fixed list of values while the other is a free form.
The pros of this approach is that say a new currency is introduced all of a sudden, it is possible to make the xml documents work with the new currency without having to wait till the standards have been modified. In case of a currency code or any other lov that is based on a ISO standard or other well accepted standards, then one can expect everyone to use the same value with the same semantic meaning. Otherwise, this extra flexibility of being able to adopt immediately to the changes may have incompatibility issues.
VisualSchema has been enhanced to display the enumerations even if it’s also possible to specify any other value.