Skip to content

Does Syntax.rules.txt contain all rules? #29

@Schultzer

Description

@Schultzer

First of all, @ronsavage and @jleffler thank you so much for sharing these resources.

I'm currently working through the newest SQL 2023 BNF:

From the generated Syntax.rules.txt I was only able to find three rules, I'm not sure if I'm not understanding the document or if in fact it is incomplete?

The following is a list of all the !! See the Syntax Rules. rules I've found in the new BNF. I've marked the ones that I could find in Syntax.rules.txt

  • <space>
  • <identifier start>
  • <identifier extend>
  • <Unicode escape character> https://en.m.wikipedia.org/wiki/Escape_character
  • <non-double quote character> (this would be any character that does not match <double quote>)
  • <whitespace> https://en.m.wikipedia.org/wiki/Whitespace_character
  • <truncating whitespace> https://en.m.wikipedia.org/wiki/Whitespace_character (this rule is never used in the BNF)
  • <bracketed comment contents>
  • <newline> https://en.m.wikipedia.org/wiki/Whitespace_character
  • <non-quote character> (this would be any character that does not match <quote>)
  • <non-escaped character> (this would be any character that does not match <escaped character>)
  • <escaped character> https://en.m.wikipedia.org/wiki/Escape_character
  • <JSON path literal>
  • <JSON path string literal>
  • <JSON path numeric literal>
  • <JSON path identifier>
  • <JSON path key name>
  • <implementation-defined JSON representation option> (not in the rules, similiar to <preparable implementation-defined statement>)
  • <preparable implementation-defined statement>
  • <SQLSTATE class code> (in the rules the name is <SQLSTATE class value>)
  • <SQLSTATE subclass code> (in the rules the name is <SQLSTATE subclass value>)
  • <host label identifier>
  • <host PL/I label variable>
  • <embedded SQL Ada program>
  • <Ada host identifier>
  • <embedded SQL C program>
  • <C host identifier>
  • <embedded SQL COBOL program>
  • <COBOL host identifier>
  • <embedded SQL Fortran program>
  • <Fortran host identifier>
  • <embedded SQL MUMPS program>
  • <MUMPS host identifier>
  • <embedded SQL Pascal program>
  • <Pascal host identifier>
  • <embedded SQL PL/I program>
  • <PL/I host identifier>
  • <direct implementation-defined statement> (not in the rules, similiar to<preparable implementation-defined statement>)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions