---
title: XPath Selects
slug: rm/xpath-selects
docTags: 
createdAt: 2026-06-09T13:38:47.680Z
---

:::hint{type="info"}
To learn more about XPath, please refer to W3Schools XPath tutorial at [http://www.w3schools.com/xpath/default.asp](http://www.w3schools.com/xpath/default.asp).
:::

# Select Modes

A select can be evaluated in one of three ways:

- !select - Where the select is passed to the underlying datasource.
- \=evaluate - Where the select is evaluated by the macro evaluator.
- 'value - Where the select is placed as a string of text in the output.
  Blueprint AutoTag uses a set of rules to guess as to which of the above modes to use. However, you can explicitly force a specific mode by setting the first character of the select to !, =, or ' (as shown above on each item).

AutoTag will always display the mode it is using on a select in the UI. In the tag builder if you set it to force a mode, it will place the first character only if that is not the guessed mode for that select.

# Date Comparisons

XPath does not support inequality tests on dates. Therefore you cannot test /root/node \< $&#x7B;date}. You can do = and != because it treats them as strings. This is true even if you supply a schema and the node is set to xsd\:dateTime, xsd\:date, or xsd\:time.

If you supply a variable such as $&#x7B;date} that is a Date object, it will be placed in the xsd\:date format for a select that is a value and in the xsd\:dateTime format if the select is is a select or evaluate.
