A Value object
(value) is a wrapper around a data value. There are different
value types for different datatypes. For example, an
IntValue has an integer, a StringValue has a
string, a DateValue has a date, etc. A
ValueListValue wraps a value list. A
value can format its value, and convert it to a variety of
datatypes.
A value can be given a name. If a value has a value
list, then it can locate a nested value by a dot-separated list of
names. For example, the value named "baz", addressed by the XPath expresssion:
/Value[@name="foo"]/ValueList/Value[@name="bar"]/ValueList/Value[@name="baz"]
would be located by:
foo.bar.baz
foo and bar are ValueListValue
instances, that each contain a ValueList. baz
could be any type of value (for example, an
IntValue or StringValue).