Error Message:
Msg 2217, Level 16, State 1, Line 7
%s’%ls’ or ‘%ls’ expected
Severity level:
16.
Description:
This error message appears when an expected element of an XQuery was not found.
Consequences:
The T-SQL statement can be parsed, but causes the error at runtime.
Resolution:
Errors of the Severity level 16 are generated by the user and can be fixed by the SQL Server user. The statement cannot be run this way. All elements in XQuery must conform to the XQuery specification.
Versions:
This error message was introduced with SQL Server 2005.
Example(s):
DECLARE @xml xml;
SET @xml = ‘<Result />’;
SELECT
@xml.query(‘for $a in(1, 2), $b in(3, 4)
where
$a < $b
RETURN sum($a + $b)’) as XML;
Remarks:
In the above example we try to use the uppercase RETURN keyword in the XQuery. Because XQuery is case-sensitive, this is different from the expected return keyword and thus the error is raised.