Explicit Offsets

Section - TM Language Reference

These provide a mechanism for explicitly reading values within a path. They differ from Indexes in being expressed numerically:

An explicit offset --       statement[2].name

An index --                    Relationship[idx].Attribute

 

Explicit offsets, which should only be used when attempting to read a value, are very simple. For example:

statement[2].name

means take the second item in the path called statement (where statement is an aggregate). If statement does not contain two items it won't return anything.

 

Explicit offsets may be used in succession. For example:

statement[2].part[4].item

takes the second statement, looks for the fourth part and then returns the item.

It is permissible to end a line with an explicit offset.  For example:

aItem := statement[2];

This, however, has the same effect as:

aItem := statement.$getIntance2;

 

Notes: