Operator Scope of Action:
Operator First Added:
This returns a Set of unique values for the attribute attribute. As the output is a of Set data type, the list of possible values is de-duped thus giving a list of unique values. Any suggested values not actually used by at least one note are omitted from the list return by values().
If the named attribute is a set or list, values() returns a list of all the unique discrete list item values that occur. If the named attribute is a string, values() returns all the unique strings.
The attribute parameter is evaluated so may be:
- A quoted attribute name without $-prefix:
- A string attribute name, whose current value is the name of an attribute (without a dollar prefix). If $MyString has the value "MyList", then
values($MyString)will evaluate the unique values for $MyList (and output the same result as
- An expression resolving to an attribute name.
Thus if $MyString has the value "MyList", then these are functionally equivalent:
It is envisaged that the first method (the quoted, un-prefixed, attribute name) will be the most usual method of using values().
The scope of the assessment is always across the whole document. The data is returned in case-sensitive sort order (i.e. all capitals sort before lower case letters) so chaining .isort() may often be the desired 'default'.
values() differs from collect() in that values() returns Set-type data and collect() returns List-type data. For a list $MyList, the following are functionally equivalent in output:
values($MyString) (where $MyString has the value "MyList")
If an optional first group parameter is provided, the values returned are drawn only from notes in that scope. The reference point for groups like 'children' or 'siblings' is this note. Thus:
will return all the discrete subtitles (i.e. values of $Subtitle) for children of this note, i.e. the note in which context the action is being evaluated.
If no first parameter is supplied, as in the short form above, the default group is assumed as 'all' and thus at whole document scope.