Our path expressions are very error prone to write. Each path step is a reference to an element name, that is, a QName. You must get the prefix right (or use xmlns="..." for default namespace).
Leaving a prefix off or misspelling a node name results in an inscrutible error when you get a legal result which is an empty node list back for an expression instead of getting a "no such element" error.
We need to get a no-such-element error.