This version is out of date, covering development as far as v4.2.5. It is maintained here only for inbound reference links from elsewhere. Jump to the current version of aTbRef. |
A Tinderbox Reference File : Agent Queries : Basic Comparison Operators : Equals |
Equals |
Attribute = ^get( attribute )
Agent queries can now include template expressions. For example
Name= ^get(Parameter)^
will find notes whose name matches the value of the user attribute 'attribute' for the agent.
Note that, when parsing queries, the template is evaluated in the agent's context. In particular, ^get() is applied to the agent and this refers to the agent. In actions, on the other hand, the action is evaluated in the context of the note to which it is applied.
[Introduced in v2.4.0]
BooleanAttribute = true
Gathers all notes whose BooleanAttribute value is true.
BooleanAttribute = false
Gathers all notes whose BooleanAttribute value is false.
DateAttribute = date. Gathers all notes whose DateAttribute value matches the given date.
DateAttribute = today. Gathers all notes whose DateAttribute value is today's date.
DateAttribute = yesterday. Gathers all notes whose DateAttribute value is yesterday's date.
DateAttribute = tomorrow. Gathers all notes whose DateAttribute value is tomorow's date.
DateAttribute = never. No date: earlier or later than any real date. When agents search for a specified time range, the comparison operators < and >treat the special value 'never' specially. Previously to v2.4, < or > comparisons to 'never' were true if no DateAttribute was specified. Now, 'never' is not < any date, nor is it > than any date, but it is equal to 'never'.
Modifiying placeholders. Use of date placeholders may be further modified:
Date mathematics
In Tinderbox 2.4 and before, code like...
Date=today
evaluates the right hand side of the expression at the time the agent was compiled, leaving you in effect with...
Date=17 October 2004 21:56:32
Thus to avoid hardwiring a date, you need to write
Date="today"
...to add a layer of indirection. However, Tinderbox 3.0.x introduced simple mathematical operations into agent queries and action/rule statements. This means pre-existing code must be altered to allow for this. In v3.0.x onwards,
Date=today
may work but not always as expected, you should really use
Date="today"
NumberAttribute = number
Gathers all notes whose NumberAttribute value equal the given number.
TextAttribute = data
Gathers all notes whose TextAttribute value is identical to the data string. For instance:
Text = hello
Note the data string is not quoted.
Up: Basic Comparison Operators | |
Next: Does Not Equal |
Licensed under Creative Commons Attribution-Noncommercial-Share Alike 3.0 License
[See aTbRef CC licence Attribution/Waiver info info]