Datatype for global node names used in DataCheck. Only to be used in the context
Valid global references contain no extended reference, no naked references, and only literal subscripts.
In their normalized form they include a leading ^. Consumers should check validity and normalize
(via Normalize() or by validating the class which has this datatype as a property)
before using the reference.
Null is a valid global reference for DataCheck and represents the end of the universe of possible subscripts
for any global. In other words, "" collates after any other valid global reference.
Null appearing as a subscript is valid and represents the beginning of the range of the subscript level
in which it appears. In other words, ^X(123,"") collates before ^X(123, followed by any other subscripts).
Global References are not limited by number of characters, but by the length of their encoded representation
Returns $$$OK if the global reference in '%val' is valid, or an error status if invalid.
If valid, the normalized value is returned by reference in the 'normalized' parameter.
Note that a global reference which
passes this test, although syntactically valid, may not actually be usable
depending on the changeable state of the system. For example, upon using a
valid global reference in a database operation, one may still encounter errors
like if the collation of the global does not allow a particular
subscript, or if it contains a null subscript and null subscript support is
Returns the non-null global reference, including the "^", passed though $name,
or null if the global reference is null. This method will validate the global reference
and throw an error if the global reference is invalid. You may use IsValid()
with the 'normalized' output parameter avoid errors.