Ответ: Да.
Это правильное выражение XPath 2.0:
/root/(blue|red)
Значение : blue
и red
дочерние элементы root
корневого элемента.
Если вам нужен один или другой, если его не существует, вы можете положиться на порядок документов, например:
/root/(blue|red)[1]
Или, если быть более точным, например:
/root/(if (blue) then blue else red)
XPath 1.0 перевод:
/root/*[self::blue|self::red]
/root/*[self::blue|self::red][1]
/root/*[self::blue|self::red[not(../blue)]]