[XQuery] A.2.2 Lexical Rules: erroneous patterns

XQuery 1.0: An XML Query Language
W3C Working Draft 12 November 2003

A.2.2 Lexical Rules

Many states have transitions on patterns that aren't valid for that
state. That is, for a query to put the lexer in the given state
with the remaining input matching the given pattern, the query
would have to have a syntax error.  By accepting the erroneous
pattern, the lexer delays detection of the syntax error.

Specifically, I believe the following patterns are erroneous in
the given states.

DEFAULT
    "]"
    ","
    "["

OPERATOR
    <"declare"_"function">
    <"at"_StringLiteral>
    "global"
    "("
    <"validate"_"{">
    <"typeswitch"_"(">
    <"declare"_"default"_"collation">
    <"import"_"schema">
    <"import"_"module">
    <"declare"_"default"_"element">
    <"declare"_"default"_"function">
    <"declare"_"namespace">
    <"declare"_"base-uri">
    <"declare"_"xmlspace">
    <"some"_"$">
    <"every"_"$">
    IntegerLiteral
    DecimalLiteral
    DoubleLiteral
    QName
    <NCName_":"_"*">
    <"*"_":"_NCName>
    "."
    ".."

NAMESPACEKEYWORD
    <"at"_StringLiteral>
    <"declare"_"default"_"element">
    <"declare"_"default"_"function">

KINDTEST
    "@"
    StringLiteral

SCHEMACONTEXTSTEP
    "@"

START_TAG
    "{"

END_TAG
    "{"

-Michael Dyck

Received on Friday, 23 January 2004 04:13:49 UTC