The two error codes XPST0008 and XPST0081 used interchangeably when an
expression contains a QName whose prefix has not been declared. There are
conflicting statements about which should be used in a particular context.
Section 2 Basics makes a general statement that XPST0081 is used for this
condition, and there are specific mentions for computed element and
attribute constructors, pragmas, and option declarations. However section
22.214.171.124 says that XPST0008 is used for the first two cases.
Section 2.2.3 makes a general statement that XPST0008 is used, as does 4.12.
There are specific mentions for node tests and direct element and attribute
In XPath, there is the general statement that XPST0081 is used, but all the
specific instances use XPST0008.
I suggest that we standardise on XPST0081 as it is more specific.