This property isn't defined anywhere in the spec. Fortunately, there's a
blurb in the UML diagram [1]:
> If the object or value denoted by the name is determined, the value of
> the Size property is the number of scalar values denoted by the name.
> The object or value denoted by the name is determined for a locally
> static name. The object or value denoted by the name may also be
> determined for a globally static name in the design hierarchy information
> model. In other cases, the object or value denoted by the name is not
> determined, and the value of the Size property is vhpiUndefined.
>
> For a name that denotes an object or value of a scalar or access type,
> the value of the Size property is 1.
>
> For a name that denotes an object or value of a composite type, the value
> of the Size property is the number of scalar subelements of the object or
> value.
>
> For a name that denotes an object or value of a file type or a protected
> type, the value of the Size property is vhpiUndefined.
Effectively, this is the number of elements in the value. Although the
spec says to return vhpiUndefined on error, we return 0 instead to
placate existing applications.