SQL Syntax 5.4-SNAPSHOT

The EBNF and Railroad Diagrams for 5.4-SNAPSHOT.

NonReservedWord

ACTION ACTIVE ADD ADVANCE ADVISE AGAINST AGGREGATE ALGORITHM ALIGN ALTER ALWAYS ANALYZE APPEND_ONLY APPLY APPROXIMATE ARCHIVE ARRAY ASYMMETRIC AT ASC AUTHORIZATION AUTO AUTO_INCREMENT AZURE BASE64 BEFORE BEGIN BERNOULLI BINARY BIT BLOBSTORAGE BLOCK BOOLEAN BREADTH BRANCH BROWSE BY BYTES CACHE BUFFERS BYTE CALL CASCADE CASE CAST CERTIFICATE CHARACTER CHANGE CHANGES CHECKPOINT CHAR CLOSE CLOUD COALESCE COLLATE COLUMN COLUMNS COMMIT COMMENT COMMENTS CONFLICT CONSTRAINTS CONVERT CORRESPONDING COSTS COUNT CREATED CYCLE DATABASE DATA DECLARE DBA_RECYCLEBIN DEFAULTS DEPTH DEFERRABLE DELAYED DELETE DELIMIT DELIMITER DESC DESCRIBE DISABLE DISCARD DISCONNECT DIV DDL DML DO DOMAIN DRIVER DROP DUMP DUMPFILE DUPLICATE ELEMENTS ENCLOSED EMIT ENABLE ENCODING ENCRYPTION END ESCAPED ENFORCED ENGINE ERROR ESCAPE EXA EXCHANGE EXCLUDE EXCLUDING EXCLUSIVE EXEC EXECUTE EXPLAIN EXPLICIT EXTENDED EXTRACT EXPORT K_ISOLATION FILTER FIELDS FIRST FLUSH FOLLOWING FORMAT FULLTEXT FUNCTION GRANT GROUP_CONCAT GUARD HASH HIGH HIGH_PRIORITY HISTORY HOPPING IDENTIFIED IDENTITY INCLUDE INCLUDE_NULL_VALUES INCLUDING INCREMENT INDEX INFORMATION INSERT INTERLEAVE INTERPRET INVALIDATE INVERSE INVISIBLE ISNULL JDBC JSON JSON_OBJECT JSON_OBJECTAGG JSON_ARRAY JSON_ARRAYAGG KEEP KEY_BLOCK_SIZE KEY KEYS KILL FN LAST LEADING LESS LEVEL LINES LOCAL LOCK LOCKED LINK LOG LOOP LOW LOW_PRIORITY LTRIM MATCH MATCH_ANY MATCH_ALL MATCH_PHRASE MATCH_PHRASE_PREFIX MATCH_REGEXP MATCHED MATERIALIZED MAX MAXVALUE MEMBER MERGE MIN MINVALUE MODE MODIFY MOVEMENT NAMES NAME NEVER NEXT K_NEXTVAL NO NOCACHE NOKEEP NOLOCK NOMAXVALUE NOMINVALUE NONE NOORDER NOTHING NOTNULL NOVALIDATE NULLS NOWAIT OF OFF OPTIONALLY OPEN ORA ORDINALITY OUTFILE OVER OVERFLOW OVERLAPS OVERRIDING OVERWRITE PADDING PARALLEL PARENT PARSER PARTITION PARTITIONING PATH PERCENT PLACING PLAN PLUS PRECEDING PRIMARY POLICY PURGE QUERY QUICK QUIESCE RANGE RAW READ REBUILD RECYCLEBIN RECURSIVE REFERENCES REFRESH REGEXP REJECT RESPECT RLIKE REGEXP_LIKE REGISTER REMOTE REMOVE RENAME REORGANIZE REPAIR REPEATABLE REPLACE RESET RESTART RESUMABLE RESUME RESTRICT RESTRICTED RETURN ROLLBACK ROLLUP ROOT ROW ROWS RTRIM SAFE_CAST SAFE_CONVERT SAVEPOINT SCHEMA SEARCH SECURE SECURITY SEED SEQUENCE SEPARATOR SESSION SETS SHOW SHUTDOWN SHARE SIBLINGS SIMILAR SIZE SKIP SPATIAL STARTING STORED STREAM STRICT STRING STRUCT SUMMARIZE SUSPEND SWITCH SYMMETRIC SYNONYM SYSTEM SYSTEM_TIME SYSTEM_TIMESTAMP SYSTEM_VERSION TABLE TABLESPACE TERMINATED TRIGGER THEN TEMP K_TEXT_LITERAL TEMPORARY THAN K_TIME_KEY_EXPR TIMEOUT TO TRIM TRUNCATE TRY_CAST TRY_CONVERT TUMBLING TYPE UNLIMITED UNLOGGED UPDATE UPSERT UNQIESCE USER SIGNED K_STRING_FUNCTION_NAME UNSIGNED VALIDATE VALIDATION VERBOSE VERSION VIEW VISIBLE VOLATILE CONCURRENTLY WAIT WITH TIES WITHIN WITHOUT WITHOUT_ARRAY_WRAPPER WORK XML XMLAGG XMLDATA XMLSCHEMA XMLTEXT XSINIL YAML YES ZONE

         ::= 'ACTION'
           | 'ACTIVE'
           | 'ADD'
           | 'ADVANCE'
           | 'ADVISE'
           | 'AGAINST'
           | 'AGGREGATE'
           | 'ALGORITHM'
           | 'ALIGN'
           | 'ALTER'
           | 'ALWAYS'
           | 'ANALYZE'
           | 'APPEND_ONLY'
           | 'APPLY'
           | 'APPROXIMATE'
           | 'ARCHIVE'
           | 'ARRAY'
           | 'ASYMMETRIC'
           | 'AT'
           | 'ASC'
           | 'AUTHORIZATION'
           | 'AUTO'
           | 'AUTO_INCREMENT'
           | 'AZURE'
           | 'BASE64'
           | 'BEFORE'
           | 'BEGIN'
           | 'BERNOULLI'
           | 'BINARY'
           | 'BIT'
           | 'BLOBSTORAGE'
           | 'BLOCK'
           | 'BOOLEAN'
           | 'BREADTH'
           | 'BRANCH'
           | 'BROWSE'
           | 'BY'
           | 'BYTES'
           | 'CACHE'
           | 'BUFFERS'
           | 'BYTE'
           | 'CALL'
           | 'CASCADE'
           | 'CASE'
           | 'CAST'
           | 'CERTIFICATE'
           | 'CHARACTER'
           | 'CHANGE'
           | 'CHANGES'
           | 'CHECKPOINT'
           | 'CHAR'
           | 'CLOSE'
           | 'CLOUD'
           | 'COALESCE'
           | 'COLLATE'
           | 'COLUMN'
           | 'COLUMNS'
           | 'COMMIT'
           | 'COMMENT'
           | 'COMMENTS'
           | 'CONFLICT'
           | 'CONSTRAINTS'
           | 'CONVERT'
           | 'CORRESPONDING'
           | 'COSTS'
           | 'COUNT'
           | 'CREATED'
           | 'CYCLE'
           | 'DATABASE'
           | 'DATA'
           | 'DECLARE'
           | 'DBA_RECYCLEBIN'
           | 'DEFAULTS'
           | 'DEPTH'
           | 'DEFERRABLE'
           | 'DELAYED'
           | 'DELETE'
           | 'DELIMIT'
           | 'DELIMITER'
           | 'DESC'
           | 'DESCRIBE'
           | 'DISABLE'
           | 'DISCARD'
           | 'DISCONNECT'
           | 'DIV'
           | 'DDL'
           | 'DML'
           | 'DO'
           | 'DOMAIN'
           | 'DRIVER'
           | 'DROP'
           | 'DUMP'
           | 'DUMPFILE'
           | 'DUPLICATE'
           | 'ELEMENTS'
           | 'ENCLOSED'
           | 'EMIT'
           | 'ENABLE'
           | 'ENCODING'
           | 'ENCRYPTION'
           | 'END'
           | 'ESCAPED'
           | 'ENFORCED'
           | 'ENGINE'
           | 'ERROR'
           | 'ESCAPE'
           | 'EXA'
           | 'EXCHANGE'
           | 'EXCLUDE'
           | 'EXCLUDING'
           | 'EXCLUSIVE'
           | 'EXEC'
           | 'EXECUTE'
           | 'EXPLAIN'
           | 'EXPLICIT'
           | 'EXTENDED'
           | 'EXTRACT'
           | 'EXPORT'
           | K_ISOLATION
           | 'FILTER'
           | 'FIELDS'
           | 'FIRST'
           | 'FLUSH'
           | 'FOLLOWING'
           | 'FORMAT'
           | 'FULLTEXT'
           | 'FUNCTION'
           | 'GRANT'
           | 'GROUP_CONCAT'
           | 'GUARD'
           | 'HASH'
           | 'HIGH'
           | 'HIGH_PRIORITY'
           | 'HISTORY'
           | 'HOPPING'
           | 'IDENTIFIED'
           | 'IDENTITY'
           | 'INCLUDE'
           | 'INCLUDE_NULL_VALUES'
           | 'INCLUDING'
           | 'INCREMENT'
           | 'INDEX'
           | 'INFORMATION'
           | 'INSERT'
           | 'INTERLEAVE'
           | 'INTERPRET'
           | 'INVALIDATE'
           | 'INVERSE'
           | 'INVISIBLE'
           | 'ISNULL'
           | 'JDBC'
           | 'JSON'
           | 'JSON_OBJECT'
           | 'JSON_OBJECTAGG'
           | 'JSON_ARRAY'
           | 'JSON_ARRAYAGG'
           | 'KEEP'
           | 'KEY_BLOCK_SIZE'
           | 'KEY'
           | 'KEYS'
           | 'KILL'
           | 'FN'
           | 'LAST'
           | 'LEADING'
           | 'LESS'
           | 'LEVEL'
           | 'LINES'
           | 'LOCAL'
           | 'LOCK'
           | 'LOCKED'
           | 'LINK'
           | 'LOG'
           | 'LOOP'
           | 'LOW'
           | 'LOW_PRIORITY'
           | 'LTRIM'
           | 'MATCH'
           | 'MATCH_ANY'
           | 'MATCH_ALL'
           | 'MATCH_PHRASE'
           | 'MATCH_PHRASE_PREFIX'
           | 'MATCH_REGEXP'
           | 'MATCHED'
           | 'MATERIALIZED'
           | 'MAX'
           | 'MAXVALUE'
           | 'MEMBER'
           | 'MERGE'
           | 'MIN'
           | 'MINVALUE'
           | 'MODE'
           | 'MODIFY'
           | 'MOVEMENT'
           | 'NAMES'
           | 'NAME'
           | 'NEVER'
           | 'NEXT'
           | K_NEXTVAL
           | 'NO'
           | 'NOCACHE'
           | 'NOKEEP'
           | 'NOLOCK'
           | 'NOMAXVALUE'
           | 'NOMINVALUE'
           | 'NONE'
           | 'NOORDER'
           | 'NOTHING'
           | 'NOTNULL'
           | 'NOVALIDATE'
           | 'NULLS'
           | 'NOWAIT'
           | 'OF'
           | 'OFF'
           | 'OPTIONALLY'
           | 'OPEN'
           | 'ORA'
           | 'ORDINALITY'
           | 'OUTFILE'
           | 'OVER'
           | 'OVERFLOW'
           | 'OVERLAPS'
           | 'OVERRIDING'
           | 'OVERWRITE'
           | 'PADDING'
           | 'PARALLEL'
           | 'PARENT'
           | 'PARSER'
           | 'PARTITION'
           | 'PARTITIONING'
           | 'PATH'
           | 'PERCENT'
           | 'PLACING'
           | 'PLAN'
           | 'PLUS'
           | 'PRECEDING'
           | 'PRIMARY'
           | 'POLICY'
           | 'PURGE'
           | 'QUERY'
           | 'QUICK'
           | 'QUIESCE'
           | 'RANGE'
           | 'RAW'
           | 'READ'
           | 'REBUILD'
           | 'RECYCLEBIN'
           | 'RECURSIVE'
           | 'REFERENCES'
           | 'REFRESH'
           | 'REGEXP'
           | 'REJECT'
           | 'RESPECT'
           | 'RLIKE'
           | 'REGEXP_LIKE'
           | 'REGISTER'
           | 'REMOTE'
           | 'REMOVE'
           | 'RENAME'
           | 'REORGANIZE'
           | 'REPAIR'
           | 'REPEATABLE'
           | 'REPLACE'
           | 'RESET'
           | 'RESTART'
           | 'RESUMABLE'
           | 'RESUME'
           | 'RESTRICT'
           | 'RESTRICTED'
           | 'RETURN'
           | 'ROLLBACK'
           | 'ROLLUP'
           | 'ROOT'
           | 'ROW'
           | 'ROWS'
           | 'RTRIM'
           | 'SAFE_CAST'
           | 'SAFE_CONVERT'
           | 'SAVEPOINT'
           | 'SCHEMA'
           | 'SEARCH'
           | 'SECURE'
           | 'SECURITY'
           | 'SEED'
           | 'SEQUENCE'
           | 'SEPARATOR'
           | 'SESSION'
           | 'SETS'
           | 'SHOW'
           | 'SHUTDOWN'
           | 'SHARE'
           | 'SIBLINGS'
           | 'SIMILAR'
           | 'SIZE'
           | 'SKIP'
           | 'SPATIAL'
           | 'STARTING'
           | 'STORED'
           | 'STREAM'
           | 'STRICT'
           | 'STRING'
           | 'STRUCT'
           | 'SUMMARIZE'
           | 'SUSPEND'
           | 'SWITCH'
           | 'SYMMETRIC'
           | 'SYNONYM'
           | 'SYSTEM'
           | 'SYSTEM_TIME'
           | 'SYSTEM_TIMESTAMP'
           | 'SYSTEM_VERSION'
           | 'TABLE'
           | 'TABLESPACE'
           | 'TERMINATED'
           | 'TRIGGER'
           | 'THEN'
           | 'TEMP'
           | K_TEXT_LITERAL
           | 'TEMPORARY'
           | 'THAN'
           | K_TIME_KEY_EXPR
           | 'TIMEOUT'
           | 'TO'
           | 'TRIM'
           | 'TRUNCATE'
           | 'TRY_CAST'
           | 'TRY_CONVERT'
           | 'TUMBLING'
           | 'TYPE'
           | 'UNLIMITED'
           | 'UNLOGGED'
           | 'UPDATE'
           | 'UPSERT'
           | 'UNQIESCE'
           | 'USER'
           | 'SIGNED'
           | K_STRING_FUNCTION_NAME
           | 'UNSIGNED'
           | 'VALIDATE'
           | 'VALIDATION'
           | 'VERBOSE'
           | 'VERSION'
           | 'VIEW'
           | 'VISIBLE'
           | 'VOLATILE'
           | 'CONCURRENTLY'
           | 'WAIT'
           | 'WITH TIES'
           | 'WITHIN'
           | 'WITHOUT'
           | 'WITHOUT_ARRAY_WRAPPER'
           | 'WORK'
           | 'XML'
           | 'XMLAGG'
           | 'XMLDATA'
           | 'XMLSCHEMA'
           | 'XMLTEXT'
           | 'XSINIL'
           | 'YAML'
           | 'YES'
           | 'ZONE'

Referenced by:

KeywordOrIdentifier

S_IDENTIFIER S_QUOTED_IDENTIFIER NAME NEXT VALUE PUBLIC STRING DATA

         ::= S_IDENTIFIER
           | S_QUOTED_IDENTIFIER
           | 'NAME'
           | 'NEXT'
           | 'VALUE'
           | 'PUBLIC'
           | 'STRING'
           | 'DATA'

Statement

IF Condition SingleStatement Block ST_SEMICOLON ELSE SingleStatement Block ST_SEMICOLON SingleStatement Block ST_SEMICOLON EOF UnsupportedStatement

         ::= 'IF' Condition ( SingleStatement | Block ) ST_SEMICOLON? ( 'ELSE' ( SingleStatement | Block ) ST_SEMICOLON? )?
           | ( SingleStatement | Block ) ( ST_SEMICOLON | EOF )
           | UnsupportedStatement

Not referenced by any.

SingleStatement

WithList SelectWithWithItems InsertWithWithItems UpdateWithWithItems DeleteWithWithItems Merge Select TableStatement Upsert Alter RenameTableStatement Create Drop Analyze Truncate Execute Set Reset Show RefreshMaterializedView Use SavepointStatement RollbackStatement COMMIT Comment Describe Explain Declare Grant PurgeStatement SessionStatement LockStatement Import Export

           | Select
           | TableStatement
           | Upsert
           | Alter
           | RenameTableStatement
           | Create
           | Drop
           | Analyze
           | Truncate
           | Execute
           | Set
           | Reset
           | Show
           | RefreshMaterializedView
           | Use
           | SavepointStatement
           | RollbackStatement
           | 'COMMIT'
           | Comment
           | Describe
           | Explain
           | Declare
           | Grant
           | PurgeStatement
           | SessionStatement
           | LockStatement
           | Import
           | Export

Referenced by:

Block

BEGIN ST_SEMICOLON SingleStatement Block ST_SEMICOLON END ST_SEMICOLON

Block    ::= 'BEGIN' ST_SEMICOLON* ( ( SingleStatement | Block ) ST_SEMICOLON )+ 'END' ST_SEMICOLON?

Referenced by:

Statements

ST_SEMICOLON IF Condition SingleStatement Block ST_SEMICOLON ELSE SingleStatement Block ST_SEMICOLON SingleStatement Block ST_SEMICOLON EOF ST_SEMICOLON IF Condition SingleStatement Block ST_SEMICOLON ELSE SingleStatement Block ST_SEMICOLON UnsupportedStatement EOF

Not referenced by any.

LockStatement

LOCK TABLE Table IN ROW SHARE EXCLUSIVE SHARE ROW EXCLUSIVE UPDATE EXCLUSIVE MODE NOWAIT WAIT S_LONG

         ::= 'LOCK' 'TABLE' Table 'IN' ( 'ROW' ( 'SHARE' | 'EXCLUSIVE' ) | 'SHARE' ( 'ROW' 'EXCLUSIVE' | 'UPDATE' )? | 'EXCLUSIVE' ) 'MODE' ( 'NOWAIT' | 'WAIT' S_LONG )?

Referenced by:

LikeClause

LIKE Table ( ColumnSelectItemsList ) INCLUDING EXCLUDING DEFAULTS INCLUDING EXCLUDING IDENTITY INCLUDING EXCLUDING COMMENTS

         ::= 'LIKE' Table ( '(' ColumnSelectItemsList ')' )? ( ( 'INCLUDING' | 'EXCLUDING' ) 'DEFAULTS' )? ( ( 'INCLUDING' | 'EXCLUDING' ) 'IDENTITY' )? ( ( 'INCLUDING' | 'EXCLUDING' ) 'COMMENTS' )?

Referenced by:

Export

EXPORT Table ParenthesedColumnList ParenthesedSelect INTO ExportIntoItem

Referenced by:

Import

IMPORT INTO Table ParenthesedColumnList ImportColumns FROM ImportFromItem

Import   ::= 'IMPORT' ( 'INTO' ( Table ParenthesedColumnList? | ImportColumns ) )? 'FROM' ImportFromItem

Referenced by:

SubImport

( IMPORT INTO ImportColumns FROM ImportFromItem )

         ::= '(' 'IMPORT' ( 'INTO' ImportColumns )? 'FROM' ImportFromItem ')'

Referenced by:

ImportColumns

( ColumnDefinition LikeClause , )

         ::= '(' ( ColumnDefinition | LikeClause ) ( ',' ( ColumnDefinition | LikeClause ) )* ')'

Referenced by:

ExportIntoItem

DBMSDestination FileDestination ScriptSourceDestination ErrorClause

Referenced by:

ImportFromItem

DBMSSource FileSource ScriptSourceDestination ErrorClause

Referenced by:

DBMSDestination

DBMSType ConnectionDefinition TABLE Table ParenthesedColumnList DBMSTableDestinationOptionList ImportExportStatement

Referenced by:

DBMSTableDestinationOption

REPLACE TRUNCATE CREATED BY S_CHAR_LITERAL

         ::= 'REPLACE'
           | 'TRUNCATE'
           | 'CREATED' 'BY' S_CHAR_LITERAL

DBMSTableDestinationOptionList

DBMSTableDestinationOption

Referenced by:

DBMSSource

DBMSType ConnectionDefinition TABLE Table ParenthesedColumnList ImportExportStatementsList

Referenced by:

DBMSType

EXA ORA JDBC DRIVER = S_CHAR_LITERAL

DBMSType ::= 'EXA'
           | 'ORA'
           | 'JDBC' ( 'DRIVER' '=' S_CHAR_LITERAL )?

FileType

CSV FBV

FileType ::= 'CSV'
           | 'FBV'

ImportExportStatement

STATEMENT S_CHAR_LITERAL

         ::= 'STATEMENT' S_CHAR_LITERAL

ImportExportStatementsList

ImportExportStatement

Referenced by:

File

FILE S_CHAR_LITERAL

File     ::= 'FILE' S_CHAR_LITERAL

FileList

File

ConnectionFileDefinition

ConnectionOrCloudConnectionDefinition FileList

ConnectionFileDefinitionList

ConnectionFileDefinition

CSVDestinationColumn

S_LONG .. S_LONG FORMAT = S_CHAR_LITERAL DELIMIT = ALWAYS NEVER AUTO

         ::= S_LONG ( '..' S_LONG | ( 'FORMAT' '=' S_CHAR_LITERAL )? ( 'DELIMIT' '=' ( 'ALWAYS' | 'NEVER' | 'AUTO' ) )? )

Referenced by:

CSVDestinationColumnList

CSVDestinationColumn ,

Referenced by:

CSVSourceColumn

S_LONG .. S_LONG FORMAT = S_CHAR_LITERAL

         ::= S_LONG ( '..' S_LONG | 'FORMAT' '=' S_CHAR_LITERAL )?

Referenced by:

CSVSourceColumnList

CSVSourceColumn ,

         ::= CSVSourceColumn ( ',' CSVSourceColumn )*

Referenced by:

FBVDestinationColumn

SIZE = S_LONG FORMAT PADDING = S_CHAR_LITERAL ALIGN = LEFT RIGHT

         ::= 'SIZE' '=' S_LONG
           | ( 'FORMAT' | 'PADDING' ) '=' S_CHAR_LITERAL
           | 'ALIGN' '=' ( 'LEFT' | 'RIGHT' )

Referenced by:

FBVDestinationColumnList

FBVDestinationColumn ,

Referenced by:

FBVSourceColumn

SIZE START = S_LONG FORMAT PADDING = S_CHAR_LITERAL ALIGN = LEFT RIGHT

         ::= ( 'SIZE' | 'START' ) '=' S_LONG
           | ( 'FORMAT' | 'PADDING' ) '=' S_CHAR_LITERAL
           | 'ALIGN' '=' ( 'LEFT' | 'RIGHT' )

Referenced by:

FBVSourceColumnList

FBVSourceColumn ,

         ::= FBVSourceColumn ( ','? FBVSourceColumn )*

Referenced by:

FileDestinationOption

REPLACE TRUNCATE WITH COLUMN NAMES ENCODING NULL BOOLEAN ROW SEPARATOR COLUMN SEPARATOR DELIMITER = S_CHAR_LITERAL DELIMIT = ALWAYS NEVER AUTO

         ::= 'REPLACE'
           | 'TRUNCATE'
           | 'WITH' 'COLUMN' 'NAMES'
           | ( 'ENCODING' | 'NULL' | 'BOOLEAN' | 'ROW' 'SEPARATOR' | 'COLUMN' ( 'SEPARATOR' | 'DELIMITER' ) ) '=' S_CHAR_LITERAL
           | 'DELIMIT' '=' ( 'ALWAYS' | 'NEVER' | 'AUTO' )

FileDestinationOptionList

FileDestinationOption

Referenced by:

FileSourceOption

TRIM LTRIM RTRIM ENCODING NULL COLUMN SEPARATOR DELIMITER = S_CHAR_LITERAL SKIP = S_LONG ROW SEPARATOR = S_CHAR_LITERAL SIZE = S_LONG

         ::= 'TRIM'
           | 'LTRIM'
           | 'RTRIM'
           | ( 'ENCODING' | 'NULL' | 'COLUMN' ( 'SEPARATOR' | 'DELIMITER' ) ) '=' S_CHAR_LITERAL
           | 'SKIP' '=' S_LONG
           | 'ROW' ( 'SEPARATOR' '=' S_CHAR_LITERAL | 'SIZE' '=' S_LONG )

Referenced by:

FileSourceOptionList

FileSourceOption

         ::= FileSourceOption+

Referenced by:

FileDestination

FileType ConnectionFileDefinitionList LOCAL SECURE FileType FileList ( CSVDestinationColumnList FBVDestinationColumnList ) FileDestinationOptionList CertificateVerification

Referenced by:

FileSource

FileType ConnectionFileDefinitionList LOCAL SECURE FileType FileList ( CSVSourceColumnList FBVSourceColumnList ) FileSourceOptionList CertificateVerification

Referenced by:

CertificateVerification

IGNORE VERIFY CERTIFICATE PUBLIC KEY S_CHAR_LITERAL PUBLIC KEY S_CHAR_LITERAL

         ::= ( 'IGNORE' | 'VERIFY' ) 'CERTIFICATE' ( 'PUBLIC' 'KEY' S_CHAR_LITERAL )?
           | 'PUBLIC' 'KEY' S_CHAR_LITERAL

ScriptSourceDestination

SCRIPT Table ConnectionDefinition WITH RelObjectName = S_CHAR_LITERAL

         ::= 'SCRIPT' Table ConnectionDefinition? ( 'WITH' ( RelObjectName '=' S_CHAR_LITERAL )+ )?

UserIdentification

USER S_CHAR_LITERAL IDENTIFIED BY S_CHAR_LITERAL

         ::= 'USER' S_CHAR_LITERAL 'IDENTIFIED' 'BY' S_CHAR_LITERAL

ConnectionDefinition

AT RelObjectName S_CHAR_LITERAL UserIdentification CertificateVerification

CloudConnectionDefinition

AT CLOUD NONE AZURE BLOBSTORAGE RelObjectName S_CHAR_LITERAL UserIdentification

         ::= 'AT' 'CLOUD' ( 'NONE' | 'AZURE' 'BLOBSTORAGE' ) ( RelObjectName | S_CHAR_LITERAL ) UserIdentification?

ConnectionOrCloudConnectionDefinition

CloudConnectionDefinition ConnectionDefinition

ErrorClause

ERRORS INTO ErrorDestination ( Expression ) REPLACE TRUNCATE RejectClause RejectClause

         ::= 'ERRORS' 'INTO' ErrorDestination ( '(' Expression ')' )? ( 'REPLACE' | 'TRUNCATE' )? RejectClause?
           | RejectClause

RejectClause

REJECT LIMIT S_LONG UNLIMITED ERRORS

         ::= 'REJECT' 'LIMIT' ( S_LONG | 'UNLIMITED' ) 'ERRORS'?

Referenced by:

ErrorDestination

CSVFileDestination Table

         ::= CSVFileDestination
           | Table

Referenced by:

CSVFileDestination

CSV ConnectionOrCloudConnectionDefinition LOCAL SECURE CSV File

         ::= ( 'CSV' ConnectionOrCloudConnectionDefinition | 'LOCAL' 'SECURE'? 'CSV' ) File

Referenced by:

Declare

DECLARE UserVariable TABLE ( ColumnDefinition , ) AS RelObjectName ColDataType = Expression UserVariable ,

Declare  ::= 'DECLARE' UserVariable ( 'TABLE' '(' ColumnDefinition ( ',' ColumnDefinition )* ')' | 'AS' RelObjectName | ColDataType ( '=' Expression )? ( ',' UserVariable ColDataType ( '=' Expression )? )* )

Referenced by:

SessionStatement

SESSION BRANCH START APPLY DROP SHOW DESCRIBE S_IDENTIFIER S_QUOTED_IDENTIFIER S_CHAR_LITERAL S_LONG . S_IDENTIFIER S_QUOTED_IDENTIFIER S_CHAR_LITERAL S_LONG WITH S_IDENTIFIER KEEP = S_IDENTIFIER S_QUOTED_IDENTIFIER S_CHAR_LITERAL S_LONG TRUE FALSE ON OFF YES NO ,

         ::= ( 'SESSION' | 'BRANCH' ) ( 'START' | 'APPLY' | 'DROP' | 'SHOW' | 'DESCRIBE' ) ( ( S_IDENTIFIER | S_QUOTED_IDENTIFIER | S_CHAR_LITERAL | S_LONG ) ( '.' ( S_IDENTIFIER | S_QUOTED_IDENTIFIER | S_CHAR_LITERAL | S_LONG ) )? )? ( 'WITH' ( S_IDENTIFIER | 'KEEP' ) '=' ( S_IDENTIFIER | S_QUOTED_IDENTIFIER | S_CHAR_LITERAL | S_LONG | 'TRUE' | 'FALSE' | 'ON' | 'OFF' | 'YES' | 'NO' ) ( ',' ( S_IDENTIFIER | 'KEEP' ) '=' ( S_IDENTIFIER | S_QUOTED_IDENTIFIER | S_CHAR_LITERAL | S_LONG | 'TRUE' | 'FALSE' | 'ON' | 'OFF' | 'YES' | 'NO' ) )* )?

Referenced by:

Set

SET LOCAL SESSION K_DATETIMELITERAL ZONE UserVariable IdentifierChain = Expression ZONE K_DATETIMELITERAL = RelObjectName ,

Set      ::= 'SET' ( 'LOCAL' | 'SESSION' )? ( K_DATETIMELITERAL 'ZONE' | ( UserVariable | IdentifierChain ) '='? ) Expression ( ',' ( K_DATETIMELITERAL 'ZONE' | RelObjectName '='? )? Expression )*

Referenced by:

Reset

RESET K_DATETIMELITERAL ZONE RelObjectName ALL

Reset    ::= 'RESET' ( K_DATETIMELITERAL 'ZONE' | RelObjectName | 'ALL' )

Referenced by:

RenameTableStatement

RENAME TABLE IF EXISTS Table WAIT S_LONG NOWAIT TO Table Table ,

         ::= 'RENAME' 'TABLE'? ( 'IF' 'EXISTS' )? Table ( 'WAIT' S_LONG | 'NOWAIT' )? 'TO' Table ( ',' Table 'TO' Table )*

Referenced by:

PurgeStatement

PURGE TABLE Table INDEX Index RECYCLEBIN DBA_RECYCLEBIN TABLESPACE S_IDENTIFIER USER S_IDENTIFIER

         ::= 'PURGE' ( 'TABLE' Table | 'INDEX' Index | 'RECYCLEBIN' | 'DBA_RECYCLEBIN' | 'TABLESPACE' S_IDENTIFIER ( 'USER' S_IDENTIFIER )? )

Referenced by:

Describe

DESCRIBE DESC Table

Describe ::= ( 'DESCRIBE' | 'DESC' ) Table

Referenced by:

Explain

EXPLAIN SUMMARIZE ExplainStatementOptions WithList SelectWithWithItems InsertWithWithItems UpdateWithWithItems DeleteWithWithItems Merge Table

Referenced by:

ExplainOptionBoolean

TRUE FALSE ON OFF

         ::= ( 'TRUE' | 'FALSE' | 'ON' | 'OFF' )?

Referenced by:

ExplainFormatOption

XML JSON YAML

         ::= ( 'XML' | 'JSON' | 'YAML' )?

Referenced by:

ExplainStatementOptions

ANALYZE BUFFERS COSTS VERBOSE ExplainOptionBoolean FORMAT PLAN FOR ExplainFormatOption

         ::= ( ( 'ANALYZE' | 'BUFFERS' | 'COSTS' | 'VERBOSE' ) ExplainOptionBoolean | ( 'FORMAT' | 'PLAN' 'FOR'? ) ExplainFormatOption )*

Referenced by:

Use

USE SCHEMA RelObjectName

Use      ::= 'USE' 'SCHEMA'? RelObjectName

Referenced by:

Show

SHOW ShowColumns ShowIndex ShowTables captureRest

Show     ::= 'SHOW' ( ShowColumns | ShowIndex | ShowTables | captureRest )

Referenced by:

ShowColumns

COLUMNS FROM RelObjectName

         ::= 'COLUMNS' 'FROM' RelObjectName

Referenced by:

ShowIndex

INDEX FROM RelObjectName

         ::= 'INDEX' 'FROM' RelObjectName

Referenced by:

RefreshMaterializedView

REFRESH MATERIALIZED VIEW CONCURRENTLY Table WITH NO DATA captureRest

         ::= 'REFRESH' 'MATERIALIZED' 'VIEW' 'CONCURRENTLY'? Table ( 'WITH' 'NO'? 'DATA' )? captureRest

Referenced by:

ShowTables

EXTENDED FULL TABLES FROM IN RelObjectName LIKE SimpleExpression WHERE Expression

         ::= 'EXTENDED'? 'FULL'? 'TABLES' ( ( 'FROM' | 'IN' ) RelObjectName )? ( 'LIKE' SimpleExpression | 'WHERE' Expression )?

Referenced by:

Values

VALUES VALUE ExpressionList

Values   ::= ( 'VALUES' | 'VALUE' ) ExpressionList

ReturningClause

RETURNING RETURN ReturningOutputAliasList SelectItemsList INTO Table UserVariable ,

         ::= ( 'RETURNING' | 'RETURN' ) ReturningOutputAliasList? SelectItemsList ( 'INTO' ( Table | UserVariable ) ( ',' ( Table | UserVariable ) )* )?

Referenced by:

ReturningReferenceKind

RelObjectName

         ::= RelObjectName

ReturningOutputAliasDefinition

ReturningReferenceKind AS RelObjectName

Referenced by:

ReturningOutputAliasList

WITH ( ReturningOutputAliasDefinition , )

Referenced by:

UpdateWithWithItems

Update

         ::= Update

Referenced by:

Update

UPDATE LOW_PRIORITY IGNORE TableWithAliasAndMysqlIndexHint JoinsList SET UpdateSets OutputClause FROM FromItem JoinsList WhereClause PreferringClause OrderByElements PlainLimit ReturningClause

UpdateSets

Column = Expression ParenthesedExpressionList = ParenthesedSelect ParenthesedExpressionList , Column = Expression ParenthesedExpressionList = ParenthesedSelect ParenthesedExpressionList

Partitions

Column = Expression ,

         ::= Column ( '=' Expression )? ( ',' Column ( '=' Expression )? )*

Referenced by:

InsertWithWithItems

Insert

         ::= Insert

Referenced by:

Insert

INSERT LOW_PRIORITY DELAYED HIGH_PRIORITY IGNORE ALL FIRST OracleMultiInsertClause OracleMultiInsertWhenBranch OracleMultiInsertElseBranch Select OVERWRITE TABLE INTO TABLE Table PARTITION ( Partitions ) AS RelObjectName ( ColumnList ) OVERRIDING SYSTEM VALUE OutputClause DEFAULT VALUES SET UpdateSets Select Alias ON DUPLICATE KEY UPDATE InsertDuplicateAction ON CONFLICT InsertConflictTarget InsertConflictAction ReturningClause

Insert   ::= 'INSERT' ( 'LOW_PRIORITY' | 'DELAYED' | 'HIGH_PRIORITY' )? 'IGNORE'? ( ( 'ALL' | 'FIRST' ) ( OracleMultiInsertClause+ | OracleMultiInsertWhenBranch+ OracleMultiInsertElseBranch? ) Select | ( 'OVERWRITE' 'TABLE' | 'INTO' 'TABLE'? )? Table ( 'PARTITION' '(' Partitions ')' )? ( 'AS'? RelObjectName )? ( '(' ColumnList ')' )? ( 'OVERRIDING' 'SYSTEM' 'VALUE' )? OutputClause? ( 'DEFAULT' 'VALUES' | 'SET' UpdateSets | Select ) Alias? ( 'ON' 'DUPLICATE' 'KEY' 'UPDATE' InsertDuplicateAction )? ( 'ON' 'CONFLICT' InsertConflictTarget? InsertConflictAction )? ReturningClause? )

OracleMultiInsertClause

INTO Table ( ColumnList ) Select

         ::= 'INTO' Table ( '(' ColumnList ')' )? Select

OracleMultiInsertWhenBranch

WHEN Expression THEN OracleMultiInsertClauseList

Referenced by:

OracleMultiInsertElseBranch

ELSE OracleMultiInsertClauseList

Referenced by:

OracleMultiInsertClauseList

OracleMultiInsertClause

InsertConflictTarget

( RelObjectNameExt , ) WhereClause ON CONSTRAINT RelObjectNameExt

         ::= '(' RelObjectNameExt ( ',' RelObjectNameExt )* ')' WhereClause?
           | 'ON' 'CONSTRAINT' RelObjectNameExt

Referenced by:

InsertConflictAction

DO NOTHING UPDATE SET UpdateSets WhereClause

         ::= 'DO' ( 'NOTHING' | 'UPDATE' 'SET' UpdateSets WhereClause? )

Referenced by:

InsertDuplicateAction

NOTHING UpdateSets WhereClause

         ::= 'NOTHING'
           | UpdateSets WhereClause?

Referenced by:

OutputClause

OUTPUT SelectItemsList INTO UserVariable Table ColumnsNamesList

         ::= 'OUTPUT' SelectItemsList ( 'INTO' ( UserVariable | Table ) ColumnsNamesList? )?

Referenced by:

Upsert

UPSERT INSERT OR REPLACE INTO Table ParenthesedColumnList SET UpdateSets Select ON DUPLICATE KEY UPDATE InsertDuplicateAction

Upsert   ::= ( 'UPSERT' | ( 'INSERT' 'OR' )? 'REPLACE' ) 'INTO'? Table ParenthesedColumnList? ( 'SET' UpdateSets | Select ) ( 'ON' 'DUPLICATE' 'KEY' 'UPDATE' InsertDuplicateAction )?

Referenced by:

DeleteWithWithItems

Delete

         ::= Delete

Referenced by:

Delete

DELETE LOW_PRIORITY QUICK IGNORE TableWithAlias , OutputClause FROM TableWithAlias JoinsList USING FromItem , WhereClause PreferringClause OrderByElements PlainLimit ReturningClause

Delete   ::= 'DELETE' 'LOW_PRIORITY'? 'QUICK'? 'IGNORE'? ( ( TableWithAlias ( ',' TableWithAlias )* OutputClause? )? 'FROM' )? ( TableWithAlias JoinsList? )? ( 'USING' FromItem ( ',' FromItem )* )? WhereClause? PreferringClause? OrderByElements? PlainLimit? ReturningClause?

Merge

MERGE INTO TableWithAlias USING FromItem ON Expression MergeOperations OutputClause

Merge    ::= 'MERGE' 'INTO' TableWithAlias 'USING' FromItem 'ON' Expression MergeOperations OutputClause?

Referenced by:

MergeOperations

MergeWhenMatched MergeWhenNotMatched

Referenced by:

MergeWhenMatched

WHEN MATCHED AND Expression THEN DELETE MergeUpdateClause

         ::= 'WHEN' 'MATCHED' ( 'AND' Expression )? 'THEN' ( 'DELETE' | MergeUpdateClause )

Referenced by:

MergeUpdateClause

UPDATE SET UpdateSets WHERE Expression DELETE WHERE Expression

         ::= 'UPDATE' 'SET' UpdateSets ( 'WHERE' Expression )? ( 'DELETE' 'WHERE' Expression )?

Referenced by:

MergeWhenNotMatched

WHEN NOT MATCHED AND Expression THEN INSERT ( ColumnList ) VALUES ( SimpleExpressionList ) WHERE Expression

         ::= 'WHEN' 'NOT' 'MATCHED' ( 'AND' Expression )? 'THEN' 'INSERT' ( '(' ColumnList ')' )? 'VALUES' '(' SimpleExpressionList ')' ( 'WHERE' Expression )?

Referenced by:

RelObjectNames

RelObjectName ... .. . : RelObjectNameExt

         ::= RelObjectName ( ( '...' | '..' | '.' | ':' ) RelObjectNameExt )*

ColumnIdentifier

RelObjectName ... .. . RelObjectNameExt

         ::= RelObjectName ( ( '...' | '..' | '.' ) RelObjectNameExt )*

Referenced by:

Column

ColumnIdentifier COMMENT S_CHAR_LITERAL . K_NEXTVAL ArrayConstructor

RelObjectName

DATA_TYPE S_IDENTIFIER S_QUOTED_IDENTIFIER K_DATETIMELITERAL K_DATE_LITERAL NonReservedWord ALL ANY CASEWHEN CONNECT CREATE DEFAULT GLOBAL GROUP GROUPING IF IIF IGNORE IN INTERVAL LEFT LIMIT K_NEXTVAL OFFSET ON OPTIMIZE ORDER PROCEDURE PUBLIC QUALIFY RIGHT SET SOME START TABLES TOP VALUE VALUES

         ::= DATA_TYPE
           | S_IDENTIFIER
           | S_QUOTED_IDENTIFIER
           | K_DATETIMELITERAL
           | K_DATE_LITERAL
           | NonReservedWord
           | 'ALL'
           | 'ANY'
           | 'CASEWHEN'
           | 'CONNECT'
           | 'CREATE'
           | 'DEFAULT'
           | 'GLOBAL'
           | 'GROUP'
           | 'GROUPING'
           | 'IF'
           | 'IIF'
           | 'IGNORE'
           | 'IN'
           | 'INTERVAL'
           | 'LEFT'
           | 'LIMIT'
           | K_NEXTVAL
           | 'OFFSET'
           | 'ON'
           | 'OPTIMIZE'
           | 'ORDER'
           | 'PROCEDURE'
           | 'PUBLIC'
           | 'QUALIFY'
           | 'RIGHT'
           | 'SET'
           | 'SOME'
           | 'START'
           | 'TABLES'
           | 'TOP'
           | 'VALUE'
           | 'VALUES'

RelObjectNameExt

RelObjectName FROM K_SELECT CURRENT

         ::= RelObjectName
           | 'FROM'
           | K_SELECT
           | 'CURRENT'

Table

RelObjectNames TimeTravelBeforeAlias S_CHAR_LITERAL

           | S_CHAR_LITERAL

TableWithAlias

Table Alias

         ::= Table Alias?

Referenced by:

TableWithAliasAndMysqlIndexHint

Table Alias MySQLIndexHint

Referenced by:

Number

S_DOUBLE S_LONG

Number   ::= S_DOUBLE
           | S_LONG

Referenced by:

SampleClause

SAMPLE BLOCK TABLESAMPLE USING SAMPLE SYSTEM BERNOULLI ( Number % PERCENT ROWS ) REPEATABLE ( Number ) SEED ( Number ) Number OFFSET Number

         ::= ( 'SAMPLE' 'BLOCK'? | ( 'TABLESAMPLE' | 'USING' 'SAMPLE' ) ( 'SYSTEM' | 'BERNOULLI' ) ) ( '(' Number ( '%' | 'PERCENT' | 'ROWS' )? ')' ( 'REPEATABLE' '(' Number ')' )? ( 'SEED' '(' Number ')' )? | Number ( 'OFFSET' Number )? )

Referenced by:

SelectWithWithItems

Select

         ::= Select

Referenced by:

Select

WithList FromQuery PlainSelect Values ParenthesedSelect Alias FromQueryFromSelect SetOperationList OrderByElements LimitWithOffset Offset Fetch WithIsolation

FromQuery

FROM FromItem LateralViews JoinsList |> PipeOperator

         ::= 'FROM' FromItem LateralViews? JoinsList? ( '|>' PipeOperator )*

Referenced by:

FromQueryFromSelect

|> PipeOperator

         ::= ( '|>' PipeOperator )+

Referenced by:

PipeOperator

SelectPipeOperator SetPipeOperator DropPipeOperator AsPipeOperator WherePipeOperator LimitPipeOperator AggregatePipeOperator OrderByPipeOperator SetOperationPipeOperator JoinPipeOperator CallPipeOperator TableSamplePipeOperator PivotPipeOperator UnPivotPipeOperator

         ::= SelectPipeOperator
           | SetPipeOperator
           | DropPipeOperator
           | AsPipeOperator
           | WherePipeOperator
           | LimitPipeOperator
           | AggregatePipeOperator
           | OrderByPipeOperator
           | SetOperationPipeOperator
           | JoinPipeOperator
           | CallPipeOperator
           | TableSamplePipeOperator
           | PivotPipeOperator
           | UnPivotPipeOperator

SelectPipeOperator

K_SELECT DISTINCT ALL EXTEND WINDOW RENAME SelectItem ,

         ::= ( K_SELECT ( 'DISTINCT' | 'ALL' )? | 'EXTEND' | 'WINDOW' | 'RENAME' ) SelectItem ( ',' SelectItem )*

Referenced by:

WherePipeOperator

WHERE Expression

         ::= 'WHERE' Expression

Referenced by:

OrderSuffix

ASC DESC NULLS FIRST LAST

         ::= ( 'ASC' | 'DESC' ) ( 'NULLS' ( 'FIRST' | 'LAST' ) )?

Referenced by:

AggregatePipeOperator

AGGREGATE SelectItem OrderSuffix , GROUP AND ORDER BY SelectItem OrderSuffix ,

         ::= 'AGGREGATE' SelectItem OrderSuffix? ( ',' SelectItem OrderSuffix? )* ( 'GROUP' ( 'AND' 'ORDER' )? 'BY' SelectItem OrderSuffix? ( ',' SelectItem OrderSuffix? )* )?

Referenced by:

OrderByPipeOperator

OrderByElements

         ::= OrderByElements

Referenced by:

AsPipeOperator

AS Alias

         ::= 'AS' Alias

Referenced by:

JoinPipeOperator

JoinerExpression

         ::= JoinerExpression

Referenced by:

SetPipeOperator

SET UpdateSets

         ::= 'SET' UpdateSets

Referenced by:

DropPipeOperator

DROP ColumnList

         ::= 'DROP' ColumnList

Referenced by:

LimitPipeOperator

LIMIT Expression OFFSET Expression

         ::= 'LIMIT' Expression ( 'OFFSET' Expression )?

Referenced by:

SetOperationModifier

ALL DISTINCT BY NAME MATCHING ( RelObjectName , ) STRICT CORRESPONDING ALL DISTINCT BY ALL DISTINCT ( RelObjectName , ) ALL DISTINCT

         ::= ( 'ALL' | 'DISTINCT' )? 'BY' 'NAME' ( 'MATCHING' '(' RelObjectName ( ',' RelObjectName )* ')' )?
           | 'STRICT'? 'CORRESPONDING' ( 'ALL' | 'DISTINCT' )? ( 'BY' ( 'ALL' | 'DISTINCT' )? '(' RelObjectName ( ',' RelObjectName )* ')' )?
           | 'ALL'
           | 'DISTINCT'

SetOperationPipeOperator

UNION INTERSECT EXCEPT SetOperationModifier ParenthesedSelect ,

         ::= ( 'UNION' | 'INTERSECT' | 'EXCEPT' ) SetOperationModifier? ParenthesedSelect ( ',' ParenthesedSelect )*

Referenced by:

CallPipeOperator

CALL TableFunction Alias

         ::= 'CALL' TableFunction Alias?

Referenced by:

TableSamplePipeOperator

TABLESAMPLE SYSTEM ( S_DOUBLE S_LONG PERCENT )

         ::= 'TABLESAMPLE' 'SYSTEM' '(' ( S_DOUBLE | S_LONG ) 'PERCENT' ')'

Referenced by:

PivotPipeOperator

PIVOT ( Function FOR Column IN ( SelectItemsList ) ) Alias

         ::= 'PIVOT' '(' Function 'FOR' Column 'IN' '(' SelectItemsList ')' ')' Alias?

Referenced by:

UnPivotPipeOperator

UNPIVOT ( Column FOR Column IN ( SelectItemsList ) ) Alias

         ::= 'UNPIVOT' '(' Column 'FOR' Column 'IN' '(' SelectItemsList ')' ')' Alias?

Referenced by:

TableStatement

TABLE Table OrderByElements LimitWithOffset Offset

         ::= 'TABLE' Table OrderByElements? LimitWithOffset? Offset?

Referenced by:

ParenthesedSelect

( Select )

         ::= '(' Select ')'

ParenthesedInsert

( Insert )

         ::= '(' Insert ')'

Referenced by:

ParenthesedUpdate

( Update )

         ::= '(' Update ')'

Referenced by:

ParenthesedDelete

( Delete )

         ::= '(' Delete ')'

Referenced by:

LateralView

LATERAL VIEW OUTER Function RelObjectName AS RelObjectName , RelObjectName

         ::= 'LATERAL' 'VIEW' 'OUTER'? Function RelObjectName? 'AS' RelObjectName ( ',' RelObjectName )?

Referenced by:

ForClause

FOR BROWSE XML RAW ( S_CHAR_LITERAL ) AUTO , BINARY BASE64 TYPE ROOT XMLSCHEMA ( S_CHAR_LITERAL ) XMLDATA ELEMENTS XSINIL ABSENT EXPLICIT , BINARY BASE64 TYPE ROOT ( S_CHAR_LITERAL ) XMLDATA PATH ( S_CHAR_LITERAL ) , BINARY BASE64 TYPE ROOT ( S_CHAR_LITERAL ) ELEMENTS XSINIL ABSENT JSON AUTO PATH , ROOT ( S_CHAR_LITERAL ) INCLUDE_NULL_VALUES WITHOUT_ARRAY_WRAPPER

         ::= 'FOR' ( 'BROWSE' | 'XML' ( ( 'RAW' ( '(' S_CHAR_LITERAL ')' )? | 'AUTO' ) ( ',' ( 'BINARY' 'BASE64' | 'TYPE' | ( 'ROOT' | 'XMLSCHEMA' ) ( '(' S_CHAR_LITERAL ')' )? | 'XMLDATA' | 'ELEMENTS' ( 'XSINIL' | 'ABSENT' )? ) )* | 'EXPLICIT' ( ',' ( 'BINARY' 'BASE64' | 'TYPE' | 'ROOT' ( '(' S_CHAR_LITERAL ')' )? | 'XMLDATA' ) )* | 'PATH' ( '(' S_CHAR_LITERAL ')' )? ( ',' ( 'BINARY' 'BASE64' | 'TYPE' | 'ROOT' ( '(' S_CHAR_LITERAL ')' )? | 'ELEMENTS' ( 'XSINIL' | 'ABSENT' )? ) )* ) | 'JSON' ( 'AUTO' | 'PATH' ) ( ',' ( 'ROOT' ( '(' S_CHAR_LITERAL ')' )? | 'INCLUDE_NULL_VALUES' | 'WITHOUT_ARRAY_WRAPPER' ) )* )

Referenced by:

LateralViews

LateralView

         ::= LateralView+

Referenced by:

LateralSubSelect

LATERAL ( Select )

         ::= 'LATERAL' '(' Select ')'

Referenced by:

PlainSelect

K_SELECT STRAIGHT_JOIN Skip First Top ALL DISTINCT ON ( SelectItemsList ) DISTINCTROW UNIQUE SQL_CALC_FOUND_ROWS SQL_NO_CACHE SQL_CACHE AS STRUCT VALUE Top SelectItemsList MySqlSelectIntoClause IntoClause FROM FromItem LateralViews JoinsList FROM ONLY FromItem LateralViews JoinsList FINAL KSQLWindowClause PreWhereClause WhereClause OracleHierarchicalQueryClause PreferringClause PARTITION BY ComplexExpressionList ( ComplexExpressionList ) Having GroupByColumnReferences Having Qualify OrderByElements WINDOW RelObjectName AS windowDefinition , OrderByElements ForClause EMIT CHANGES LimitBy LimitWithOffset Offset LimitWithOffset Fetch WithIsolation FOR NO KEY UPDATE KEY SHARE READ FETCH ONLY OF Table Wait NOWAIT SKIP LOCKED MySqlSelectIntoClause SETTINGS UpdateSets OptimizeFor INTO TEMP Table WITH NO LOG

         ::= K_SELECT 'STRAIGHT_JOIN'? Skip? First? Top? ( 'ALL' | 'DISTINCT' ( 'ON' '(' SelectItemsList ')' )? | 'DISTINCTROW' | 'UNIQUE' | 'SQL_CALC_FOUND_ROWS' | 'SQL_NO_CACHE' | 'SQL_CACHE' )? ( 'AS' ( 'STRUCT' | 'VALUE' ) )? Top? SelectItemsList MySqlSelectIntoClause? IntoClause? ( 'FROM' FromItem LateralViews? JoinsList? )? ( 'FROM' 'ONLY' FromItem LateralViews? JoinsList? )? 'FINAL'? KSQLWindowClause? PreWhereClause? WhereClause? OracleHierarchicalQueryClause? ( PreferringClause ( 'PARTITION' 'BY' ( ComplexExpressionList | '(' ComplexExpressionList ')' ) )? )? Having? GroupByColumnReferences? Having? Qualify? OrderByElements? ( 'WINDOW' RelObjectName 'AS' windowDefinition ( ',' RelObjectName 'AS' windowDefinition )* )? OrderByElements? ForClause? ( 'EMIT' 'CHANGES' )? LimitBy? LimitWithOffset? Offset? LimitWithOffset? Fetch? WithIsolation? ( 'FOR' ( ( 'NO' 'KEY' )? 'UPDATE' | 'KEY'? 'SHARE' | ( 'READ' | 'FETCH' ) 'ONLY' ) ( 'OF' Table )? Wait? ( 'NOWAIT' | 'SKIP' 'LOCKED' )? )? MySqlSelectIntoClause? ( 'SETTINGS' UpdateSets )? OptimizeFor? ( 'INTO' 'TEMP' Table )? ( 'WITH' 'NO' 'LOG' )?

Referenced by:

SetOperationList

UNION INTERSECT MINUS EXCEPT SetOperationModifier PlainSelect Values ParenthesedSelect OrderByElements LimitWithOffset Offset LimitWithOffset Fetch WithIsolation

         ::= ( ( 'UNION' | 'INTERSECT' | 'MINUS' | 'EXCEPT' ) SetOperationModifier? ( PlainSelect | Values | ParenthesedSelect ) )+ OrderByElements? LimitWithOffset? Offset? LimitWithOffset? Fetch? WithIsolation?

Referenced by:

WithList

WITH WithItem ,

WithList ::= 'WITH' WithItem ( ',' WithItem )*

WithItem

FUNCTION WithFunctionDeclaration RECURSIVE RelObjectName ( SelectItemsList ) AS NOT MATERIALIZED ParenthesedSelect ParenthesedInsert ParenthesedUpdate ParenthesedDelete WithSearchClause

WithItem ::= ( 'FUNCTION' WithFunctionDeclaration | 'RECURSIVE'? RelObjectName ( '(' SelectItemsList ')' )? 'AS' ( 'NOT'? 'MATERIALIZED' )? ( ParenthesedSelect | ParenthesedInsert | ParenthesedUpdate | ParenthesedDelete ) ) WithSearchClause?

Referenced by:

WithSearchClause

SEARCH BREADTH DEPTH FIRST BY Column , SET RelObjectName

         ::= 'SEARCH' ( 'BREADTH' | 'DEPTH' ) 'FIRST' 'BY' Column ( ',' Column )* 'SET' RelObjectName

Referenced by:

WithFunctionDeclaration

RelObjectName ( WithFunctionParameter , ) RETURNS RelObjectName RETURN Expression

         ::= RelObjectName '(' ( WithFunctionParameter ( ',' WithFunctionParameter )* )? ')' 'RETURNS' RelObjectName 'RETURN' Expression

Referenced by:

WithFunctionParameter

RelObjectName ARRAY < RelObjectName > RelObjectName

         ::= RelObjectName ( 'ARRAY' '<' RelObjectName '>' | RelObjectName )

Referenced by:

ColumnSelectItemsList

SelectItem ,

         ::= SelectItem ( ',' SelectItem )*

Referenced by:

SelectItemsList

SelectItem ,

         ::= SelectItem ( ',' SelectItem )*

FunctionAllColumns

( Function ) . *

         ::= '('+ Function ')'+ '.' '*'

Not referenced by any.

SelectItem

ConnectByPriorOperator XorExpression ConcatExpression Expression Alias

AllColumns

* EXCEPT EXCLUDE ParenthesedColumnList REPLACE ( SelectItemsList )

         ::= '*' ( ( 'EXCEPT' | 'EXCLUDE' ) ParenthesedColumnList )? ( 'REPLACE' '(' SelectItemsList ')' )?

AllTableColumns

Table . AllColumns

         ::= Table '.' AllColumns

Alias

AS RelObjectName ( RelObjectName ColDataType , ) AS RelObjectName S_CHAR_LITERAL ( RelObjectName ColDataType , )

           | 'AS'? ( RelObjectName | S_CHAR_LITERAL ) ( '(' RelObjectName ColDataType? ( ',' RelObjectName ColDataType? )* ')' )?

SQLServerHint

INDEX ( RelObjectName ) NOLOCK

         ::= 'INDEX' '(' RelObjectName ')'
           | 'NOLOCK'

Referenced by:

SQLServerHints

WITH ( SQLServerHint , )

         ::= 'WITH' '(' SQLServerHint ( ',' SQLServerHint )* ')'

Referenced by:

MySQLIndexHint

USE SHOW IGNORE FORCE INDEX KEY ( RelObjectName , )

         ::= ( 'USE' | 'SHOW' | 'IGNORE' | 'FORCE' ) ( 'INDEX' | 'KEY' ) '(' RelObjectName ( ',' RelObjectName )* ')'

FunctionItem

Function Alias

         ::= Function Alias?

Referenced by:

PivotForColumns

ParenthesedColumnList Column

         ::= ParenthesedColumnList
           | Column

Referenced by:

PivotFunctionItems

FunctionItem ,

         ::= FunctionItem ( ',' FunctionItem )*

Referenced by:

ExpressionListItem

ParenthesedExpressionList Alias

Referenced by:

PivotMultiInItems

ExpressionListItem ,

Referenced by:

Pivot

PIVOT ( PivotFunctionItems FOR PivotForColumns IN ( SelectItemsList PivotMultiInItems ) ) Alias

Pivot    ::= 'PIVOT' '(' PivotFunctionItems 'FOR' PivotForColumns 'IN' '(' ( SelectItemsList | PivotMultiInItems ) ')' ')' Alias?

Referenced by:

PivotXml

PIVOT XML ( PivotFunctionItems FOR PivotForColumns IN ( ANY Select SelectItemsList PivotMultiInItems ) )

PivotXml ::= 'PIVOT' 'XML' '(' PivotFunctionItems 'FOR' PivotForColumns 'IN' '(' ( 'ANY' | Select | SelectItemsList | PivotMultiInItems ) ')' ')'

Referenced by:

UnPivot

UNPIVOT INCLUDE EXCLUDE NULLS ( PivotForColumns FOR PivotForColumns IN ( SelectItemsList ) ) Alias

UnPivot  ::= 'UNPIVOT' ( ( 'INCLUDE' | 'EXCLUDE' ) 'NULLS' )? '(' PivotForColumns 'FOR' PivotForColumns 'IN' '(' SelectItemsList ')' ')' Alias?

Referenced by:

IntoClause

INTO Table ,

         ::= 'INTO' Table ( ',' Table )*

Referenced by:

MySqlSelectIntoClause

INTO OUTFILE S_CHAR_LITERAL MySqlSelectIntoOutfileTail DUMPFILE S_CHAR_LITERAL

         ::= 'INTO' ( 'OUTFILE' S_CHAR_LITERAL MySqlSelectIntoOutfileTail | 'DUMPFILE' S_CHAR_LITERAL )

Referenced by:

MySqlSelectIntoOutfileTail

CHARACTER SET S_IDENTIFIER BINARY MySqlSelectIntoFieldsClause MySqlSelectIntoLinesClause

         ::= ( 'CHARACTER' 'SET' ( S_IDENTIFIER | 'BINARY' ) )? MySqlSelectIntoFieldsClause? MySqlSelectIntoLinesClause?

Referenced by:

MySqlSelectIntoFieldsClause

FIELDS COLUMNS TERMINATED BY S_CHAR_LITERAL OPTIONALLY ENCLOSED BY S_CHAR_LITERAL ESCAPED BY S_CHAR_LITERAL

         ::= ( 'FIELDS' | 'COLUMNS' ) ( 'TERMINATED' 'BY' S_CHAR_LITERAL )? ( 'OPTIONALLY'? 'ENCLOSED' 'BY' S_CHAR_LITERAL )? ( 'ESCAPED' 'BY' S_CHAR_LITERAL )?

MySqlSelectIntoLinesClause

LINES STARTING BY S_CHAR_LITERAL TERMINATED BY S_CHAR_LITERAL

         ::= 'LINES' ( 'STARTING' 'BY' S_CHAR_LITERAL )? ( 'TERMINATED' 'BY' S_CHAR_LITERAL )?

ParenthesedFromItem

( FromItem JoinsList )

         ::= '(' FromItem JoinsList? ')'

Referenced by:

FromItem

Values TableFunction Table ParenthesedFromItem ParenthesedSelect Pivot UnPivot LateralSubSelect SubImport Select Alias TimeTravelAfterAlias SampleClause UnPivot PivotXml Pivot MySQLIndexHint SQLServerHints

JoinsList

JoinerExpression

         ::= JoinerExpression+

JoinHint

LOOP HASH MERGE REMOTE

JoinHint ::= 'LOOP'
           | 'HASH'
           | 'MERGE'
           | 'REMOTE'

Referenced by:

JoinerExpression

GLOBAL ANY ALL NATURAL LEFT SEMI OUTER ANY ALL RIGHT FULL OUTER ANY ALL INNER CROSS OUTER JoinHint JOIN FETCH , OUTER STRAIGHT_JOIN APPLY FromItem WITHIN ( JoinWindow ) ON Expression USING ( Column , )

         ::= 'GLOBAL'? ( 'ANY' | 'ALL' )? 'NATURAL'? ( 'LEFT' ( 'SEMI' | 'OUTER' | 'ANY' | 'ALL' )? | ( 'RIGHT' | 'FULL' ) ( 'OUTER' | 'ANY' | 'ALL' )? | 'INNER' | 'CROSS' | 'OUTER' )? ( JoinHint? 'JOIN' 'FETCH'? | ',' 'OUTER'? | 'STRAIGHT_JOIN' | 'APPLY' ) FromItem ( ( 'WITHIN' '(' JoinWindow ')' )? ( 'ON' Expression )+ | 'USING' '(' Column ( ',' Column )* ')' )?

JoinWindow

S_LONG S_IDENTIFIER K_DATE_LITERAL , S_LONG S_IDENTIFIER K_DATE_LITERAL

         ::= S_LONG ( S_IDENTIFIER | K_DATE_LITERAL ) ( ',' S_LONG ( S_IDENTIFIER | K_DATE_LITERAL ) )?

Referenced by:

KSQLWindowClause

WINDOW HOPPING ( SIZE S_LONG S_IDENTIFIER , ADVANCE BY SESSION ( TUMBLING ( SIZE S_LONG S_IDENTIFIER )

         ::= 'WINDOW' ( 'HOPPING' '(' 'SIZE' S_LONG S_IDENTIFIER ',' 'ADVANCE' 'BY' | 'SESSION' '(' | 'TUMBLING' '(' 'SIZE' ) S_LONG S_IDENTIFIER ')'

Referenced by:

WhereClause

WHERE Expression

         ::= 'WHERE' Expression

PreWhereClause

PREWHERE Expression

         ::= 'PREWHERE' Expression

Referenced by:

OracleHierarchicalQueryClause

START WITH XorExpression CONNECT BY NOCYCLE CONNECT BY NOCYCLE XorExpression START WITH XorExpression

         ::= ( 'START' 'WITH' XorExpression 'CONNECT' 'BY' 'NOCYCLE'? | 'CONNECT' 'BY' 'NOCYCLE'? ( XorExpression 'START' 'WITH' )? ) XorExpression

Referenced by:

PreferringClause

PREFERRING PreferenceTerm

         ::= 'PREFERRING' PreferenceTerm

Referenced by:

PreferenceTerm

Plus

         ::= Plus

Plus

PriorTo PLUS

Plus     ::= PriorTo ( 'PLUS' PriorTo )*

Referenced by:

PriorTo

PreferenceTermTerminal ( PreferenceTerm ) TO PRIOR

PriorTo  ::= ( PreferenceTermTerminal | '(' PreferenceTerm ')' ) ( 'PRIOR' 'TO' ( PreferenceTermTerminal | '(' PreferenceTerm ')' ) )*

Referenced by:

PreferenceTermTerminal

HighExpression LowExpression Inverse Condition

         ::= HighExpression
           | LowExpression
           | Inverse
           | Condition

Referenced by:

HighExpression

HIGH Expression

         ::= 'HIGH' Expression

Referenced by:

LowExpression

LOW Expression

         ::= 'LOW' Expression

Referenced by:

Inverse

INVERSE ( PreferenceTerm )

Inverse  ::= 'INVERSE' '(' PreferenceTerm ')'

Referenced by:

GroupByColumnReferences

GROUP BY GROUPING SETS ( GroupingSet , ) ExpressionList GROUPING SETS ( GroupingSet , ) WITH ROLLUP

         ::= 'GROUP' 'BY' ( 'GROUPING' 'SETS' '(' GroupingSet ( ',' GroupingSet )* ')' | ExpressionList ( 'GROUPING' 'SETS' '(' GroupingSet ( ',' GroupingSet )* ')' )? ( 'WITH' 'ROLLUP' )? )

Referenced by:

GroupingSet

ParenthesedExpressionList SimpleExpression

         ::= ParenthesedExpressionList
           | SimpleExpression

Referenced by:

Having

HAVING Expression

Having   ::= 'HAVING' Expression

Referenced by:

Qualify

QUALIFY Expression

Qualify  ::= 'QUALIFY' Expression

Referenced by:

OrderByElements

ORDER SIBLINGS BY OrderByElement ,

         ::= 'ORDER' 'SIBLINGS'? 'BY' OrderByElement ( ',' OrderByElement )*

OrderByElement

Expression COLLATE S_CHAR_LITERAL S_QUOTED_IDENTIFIER ASC DESC NULLS FIRST LAST WITH ROLLUP

         ::= Expression ( 'COLLATE' ( S_CHAR_LITERAL | S_QUOTED_IDENTIFIER ) )? ( 'ASC' | 'DESC' )? ( 'NULLS' ( 'FIRST' | 'LAST' )? )? ( 'WITH' 'ROLLUP' )?

Referenced by:

JdbcParameter

? S_PARAMETER S_LONG

         ::= ( '?' | S_PARAMETER ) S_LONG?

LimitWithOffset

LIMIT ParenthesedSelect Expression , Expression

         ::= 'LIMIT' ( ParenthesedSelect | Expression ) ( ',' Expression )?

PlainLimit

LIMIT ParenthesedSelect Expression

         ::= 'LIMIT' ( ParenthesedSelect | Expression )

LimitBy

LimitWithOffset BY ExpressionList

Referenced by:

Offset

OFFSET Expression ROWS ROW

Offset   ::= 'OFFSET' Expression ( 'ROWS' | 'ROW' )?

Fetch

FETCH FIRST NEXT Expression PERCENT ROWS ROW ONLY WITH TIES

Fetch    ::= 'FETCH' ( 'FIRST' | 'NEXT' ) ( Expression 'PERCENT'? )? ( 'ROWS' | 'ROW' ) ( 'ONLY' | 'WITH TIES' )

WithIsolation

WITH K_ISOLATION

         ::= 'WITH' K_ISOLATION

OptimizeFor

OPTIMIZE FOR S_LONG ROWS

         ::= 'OPTIMIZE' 'FOR' S_LONG 'ROWS'

Referenced by:

Top

TOP S_LONG JdbcParameter : S_IDENTIFIER ( AdditiveExpression ) PERCENT WITH TIES

Top      ::= 'TOP' ( S_LONG | JdbcParameter | ':' S_IDENTIFIER? | '(' AdditiveExpression ')' ) 'PERCENT'? 'WITH TIES'?

Referenced by:

Skip

SKIP S_LONG S_IDENTIFIER JdbcParameter

Skip     ::= 'SKIP' ( S_LONG | S_IDENTIFIER | JdbcParameter )

Referenced by:

First

FIRST LIMIT S_LONG S_IDENTIFIER JdbcParameter

First    ::= ( 'FIRST' | 'LIMIT' ) ( S_LONG | S_IDENTIFIER | JdbcParameter )

Referenced by:

Expression

XorExpression

         ::= XorExpression

XorExpression

OrExpression XOR

         ::= OrExpression ( 'XOR' OrExpression )*

OrExpression

AndExpression OR

         ::= AndExpression ( 'OR' AndExpression )*

Referenced by:

AndExpression

Condition NOT ! ( XorExpression ) AND &&

         ::= ( Condition | ( 'NOT' | '!' )? '(' XorExpression ')' ) ( ( 'AND' | '&&' ) ( Condition | ( 'NOT' | '!' )? '(' XorExpression ')' ) )*

Referenced by:

Condition

NOT ! ExistsExpression PRIOR SimpleExpression ( + ) RegularConditionRHS OverlapsCondition InExpression ExcludesExpression IncludesExpression Between MemberOfExpression IsNullExpression IsBooleanExpression IsUnknownExpression LikeExpression IsDistinctExpression SimilarToExpression

RegularConditionRHS

( + ) > < = OP_GREATERTHANEQUALS OP_MINORTHANEQUALS OP_NOTEQUALSSTANDARD OP_NOTEQUALSBANG OP_NOTEQUALSHAT *= =* && &> <& @@ ~ ~* !~ !~* @> <@ ? ?| ?& OP_CONCAT - -# <-> <#> <=> PRIOR ComparisonItem ( + )

         ::= ( '(' '+' ')' )? ( '>' | '<' | '=' | OP_GREATERTHANEQUALS | OP_MINORTHANEQUALS | OP_NOTEQUALSSTANDARD | OP_NOTEQUALSBANG | OP_NOTEQUALSHAT | '*=' | '=*' | '&&' | '&>' | '<&' | '@@' | '~' | '~*' | '!~' | '!~*' | '@>' | '<@' | '?' | '?|' | '?&' | OP_CONCAT | '-' | '-#' | '<->' | '<#>' | '<=>' ) 'PRIOR'? ComparisonItem ( '(' '+' ')' )?

Referenced by:

OverlapsCondition

OVERLAPS ParenthesedExpressionList

         ::= 'OVERLAPS' ParenthesedExpressionList

Referenced by:

SQLCondition

ExistsExpression SimpleExpression OverlapsCondition InExpression ExcludesExpression IncludesExpression Between MemberOfExpression IsNullExpression IsBooleanExpression IsUnknownExpression LikeExpression IsDistinctExpression SimilarToExpression

Not referenced by any.

InExpression

( + ) GLOBAL NOT IN S_CHAR_LITERAL PrimaryExpression

         ::= ( '(' '+' ')' )? 'GLOBAL'? 'NOT'? 'IN' ( S_CHAR_LITERAL | PrimaryExpression )

Referenced by:

IncludesExpression

INCLUDES ParenthesedExpressionList

         ::= 'INCLUDES' ParenthesedExpressionList

Referenced by:

ExcludesExpression

EXCLUDES ParenthesedExpressionList

         ::= 'EXCLUDES' ParenthesedExpressionList

Referenced by:

Between

NOT BETWEEN SYMMETRIC ASYMMETRIC ParenthesedSelect SimpleExpression RegularConditionRHS AND ParenthesedSelect SimpleExpression RegularConditionRHS

Between  ::= 'NOT'? 'BETWEEN' ( 'SYMMETRIC' | 'ASYMMETRIC' )? ( ParenthesedSelect | SimpleExpression RegularConditionRHS? ) 'AND' ( ParenthesedSelect | SimpleExpression RegularConditionRHS? )

Referenced by:

LikeExpression

NOT LIKE ILIKE RLIKE REGEXP_LIKE REGEXP K_SIMILAR_TO MATCH_ANY MATCH_ALL MATCH_PHRASE MATCH_PHRASE_PREFIX MATCH_REGEXP BINARY SimpleExpression ESCAPE S_CHAR_LITERAL Expression

         ::= 'NOT'? ( 'LIKE' | 'ILIKE' | 'RLIKE' | 'REGEXP_LIKE' | 'REGEXP' | K_SIMILAR_TO | 'MATCH_ANY' | 'MATCH_ALL' | 'MATCH_PHRASE' | 'MATCH_PHRASE_PREFIX' | 'MATCH_REGEXP' ) 'BINARY'? SimpleExpression ( 'ESCAPE' ( S_CHAR_LITERAL | Expression ) )?

Referenced by:

SimilarToExpression

NOT SIMILAR TO SimpleExpression ESCAPE S_CHAR_LITERAL

         ::= 'NOT'? 'SIMILAR' 'TO' SimpleExpression ( 'ESCAPE' S_CHAR_LITERAL )?

Referenced by:

IsDistinctExpression

IS NOT DISTINCT FROM SimpleExpression

         ::= 'IS' 'NOT'? 'DISTINCT' 'FROM' SimpleExpression

Referenced by:

IsNullExpression

NOT ISNULL NOTNULL IS NOT NULL

         ::= 'NOT'? 'ISNULL'
           | 'NOTNULL'
           | 'IS' 'NOT'? 'NULL'

Referenced by:

IsBooleanExpression

IS NOT TRUE FALSE

         ::= 'IS' 'NOT'? ( 'TRUE' | 'FALSE' )

Referenced by:

IsUnknownExpression

IS NOT UNKNOWN

         ::= 'IS' 'NOT'? 'UNKNOWN'

Referenced by:

ExistsExpression

EXISTS SimpleExpression

         ::= 'EXISTS' SimpleExpression

Referenced by:

MemberOfExpression

MEMBER OF Expression

         ::= 'MEMBER' 'OF' Expression

Referenced by:

ExpressionList

ComplexExpressionList SimpleExpressionList ParenthesedExpressionList

         ::= ComplexExpressionList
           | SimpleExpressionList
           | ParenthesedExpressionList

ParenthesedExpressionList

( ComplexExpressionList SimpleExpressionList )

SimpleExpressionList

SimpleExpression , LambdaExpression SimpleExpression

ColumnList

Column ,

         ::= Column ( ',' Column )*

ParenthesedColumnList

( ColumnList )

         ::= '(' ColumnList ')'

ComplexExpressionList

OracleNamedFunctionParameter PostgresNamedFunctionParameter Expression , OracleNamedFunctionParameter PostgresNamedFunctionParameter LambdaExpression Expression

NamedExpressionListExprFirst

SimpleExpression FROM IN PLACING SimpleExpression FOR FROM SimpleExpression FOR SimpleExpression

         ::= SimpleExpression ( 'FROM' | 'IN' | 'PLACING' ) SimpleExpression ( ( 'FOR' | 'FROM' ) SimpleExpression ( 'FOR' SimpleExpression )? )?

ComparisonItem

AnyComparisonExpression SimpleExpression ParenthesedExpressionList RowConstructor PrimaryExpression

         ::= AnyComparisonExpression
           | SimpleExpression
           | ParenthesedExpressionList
           | RowConstructor
           | PrimaryExpression

Referenced by:

AnyComparisonExpression

ANY SOME ALL ParenthesedSelect

         ::= ( 'ANY' | 'SOME' | 'ALL' ) ParenthesedSelect

Referenced by:

SimpleExpression

UserVariable = := ConcatExpression

         ::= ( UserVariable ( '=' | ':=' ) )? ConcatExpression

ConcatExpression

BitwiseAndOr OP_CONCAT

BitwiseAndOr

AdditiveExpression | & << >>

         ::= AdditiveExpression ( ( '|' | '&' | '<<' | '>>' ) AdditiveExpression )*

Referenced by:

AdditiveExpression

MultiplicativeExpression + -

         ::= MultiplicativeExpression ( ( '+' | '-' ) MultiplicativeExpression )*

Referenced by:

MultiplicativeExpression

BitwiseXor * / DIV %

         ::= BitwiseXor ( ( '*' | '/' | 'DIV' | '%' ) BitwiseXor )*

Referenced by:

BitwiseXor

PrimaryExpression ^

         ::= PrimaryExpression ( '^' PrimaryExpression )*

Referenced by:

ArrayExpression

[ SimpleExpression : SimpleExpression ]

         ::= ( '[' SimpleExpression? ( ':' SimpleExpression? )? ']' )+

Referenced by:

PrimaryExpression

NOT ! + - ~ NULL CaseWhenExpression CharacterPrimary ImplicitCast JdbcParameter JdbcNamedParameter UserVariable NumericBind ExtractExpression XMLSerializeExpr JsonFunction JsonAggregateFunction FullTextSearch CastExpression Function AnalyticExpression DateUnitExpression IntervalExpression S_DOUBLE S_LONG S_HEX AllColumns AllTableColumns K_TIME_KEY_EXPR CURRENT DateTimeLiteralExpression StructType ARRAY < ColDataType > ArrayConstructor NextValExpression ConnectByRootOperator ConnectByPriorOperator KeyExpression ALL Column ( + ) TRUE FALSE S_CHAR_LITERAL {d {t {ts S_CHAR_LITERAL } Select ParenthesedSelect ParenthesedExpressionList -> Expression . RelObjectName COLLATE S_CHAR_LITERAL S_QUOTED_IDENTIFIER S_IDENTIFIER IntervalExpressionWithoutInterval ArrayExpression :: ColDataType -> : ->> #> #>> Expression SimpleExpression JsonExpression AT K_DATETIMELITERAL ZONE PrimaryExpression

ConnectByRootOperator

CONNECT_BY_ROOT Expression

         ::= 'CONNECT_BY_ROOT' Expression

Referenced by:

ConnectByPriorOperator

PRIOR Expression

         ::= 'PRIOR' Expression

KeyExpression

KEY Expression

         ::= 'KEY' Expression

Referenced by:

NextValExpression

K_NEXTVAL RelObjectNames

Referenced by:

JdbcNamedParameter

: & IdentifierChain

         ::= ( ':' | '&' ) IdentifierChain

Referenced by:

OracleNamedFunctionParameter

RelObjectNameExt OUTER => Expression

         ::= ( RelObjectNameExt | 'OUTER' ) '=>' Expression

Referenced by:

PostgresNamedFunctionParameter

RelObjectNameExt OUTER := Expression

         ::= ( RelObjectNameExt | 'OUTER' ) ':=' Expression

Referenced by:

UserVariable

S_AT_IDENTIFIER IdentifierChain2

NumericBind

: S_LONG

         ::= ':' S_LONG

Referenced by:

DateTimeLiteralExpression

K_DATETIMELITERAL S_CHAR_LITERAL S_QUOTED_IDENTIFIER

Referenced by:

DateUnitExpression

K_DATE_LITERAL

         ::= K_DATE_LITERAL

Referenced by:

RangeExpression

: Expression

         ::= ':' Expression

Referenced by:

ArrayConstructor

[ Expression RangeExpression ArrayConstructor , ]

StructParameters

RelObjectName ColDataType ,

Referenced by:

StructType

STRUCT < StructParameters > ( SelectItemsList ) { RelObjectNameExt S_CHAR_LITERAL : Expression , } :: STRUCT ( StructParameters )

         ::= 'STRUCT' ( '<' StructParameters '>' )? '(' SelectItemsList ')'
           | '{' ( RelObjectNameExt | S_CHAR_LITERAL ) ':' Expression ( ',' ( RelObjectNameExt | S_CHAR_LITERAL ) ':' Expression )* '}' ( '::' 'STRUCT' '(' StructParameters ')' )*

Referenced by:

JsonExpression

:: ColDataType -> : ->> #> #>> Expression SimpleExpression

         ::= ( ( '::' ColDataType )+ ( ( '->' | ':' | '->>' | '#>' | '#>>' ) ( Expression | SimpleExpression ) )* )*

Referenced by:

JsonKeyValuePair

KEY S_CHAR_LITERAL Column AllTableColumns AllColumns Expression VALUE : , Expression FORMAT JSON ENCODING JsonEncoding

         ::= ( 'KEY'? ( S_CHAR_LITERAL | Column ) | AllTableColumns | AllColumns | Expression ) ( ( 'VALUE' | ':' | ',' ) Expression )? ( 'FORMAT' 'JSON' ( 'ENCODING' JsonEncoding )? )?

Referenced by:

JsonObjectBody

( JsonKeyValuePair , NULL ABSENT ON NULL STRICT WITH WITHOUT UNIQUE KEYS RETURNING ColDataType FORMAT JSON ENCODING JsonEncoding )

         ::= '(' ( JsonKeyValuePair ( ',' JsonKeyValuePair )* )? ( ( 'NULL' | 'ABSENT' ) 'ON' 'NULL' )? 'STRICT'? ( ( 'WITH' | 'WITHOUT' ) 'UNIQUE' 'KEYS' )? ( 'RETURNING' ColDataType ( 'FORMAT' 'JSON' ( 'ENCODING' JsonEncoding )? )? )? ')'

Referenced by:

JsonArrayBody

( NULL ON NULL Expression FORMAT JSON ENCODING JsonEncoding , ABSENT ON NULL RETURNING ColDataType FORMAT JSON ENCODING JsonEncoding )

         ::= '(' ( 'NULL' 'ON' 'NULL' | Expression ( 'FORMAT' 'JSON' ( 'ENCODING' JsonEncoding )? )? ( ',' Expression ( 'FORMAT' 'JSON' ( 'ENCODING' JsonEncoding )? )? )* )* ( 'ABSENT' 'ON' 'NULL' )? ( 'RETURNING' ColDataType ( 'FORMAT' 'JSON' ( 'ENCODING' JsonEncoding )? )? )? ')'

Referenced by:

JsonKeyword

S_IDENTIFIER

         ::= S_IDENTIFIER

JsonEncoding

S_IDENTIFIER

         ::= S_IDENTIFIER

JsonValueOrQueryInputExpression

Expression FORMAT JSON ENCODING JsonEncoding

         ::= Expression ( 'FORMAT' 'JSON' ( 'ENCODING' JsonEncoding )? )?

JsonValueOnResponseBehavior

ERROR NULL DEFAULT Expression

         ::= 'ERROR'
           | 'NULL'
           | 'DEFAULT' Expression

JsonQueryOnResponseBehavior

ERROR NULL S_IDENTIFIER ARRAY JsonKeyword

         ::= 'ERROR'
           | 'NULL'
           | S_IDENTIFIER ( 'ARRAY' | JsonKeyword )

Referenced by:

JsonExistsOnResponseBehavior

TRUE FALSE UNKNOWN ERROR

         ::= 'TRUE'
           | 'FALSE'
           | 'UNKNOWN'
           | 'ERROR'

Referenced by:

JsonExistsBody

( JsonValueOrQueryInputExpression , Expression JsonKeyword Expression , JsonExistsOnResponseBehavior ON ERROR )

Referenced by:

JsonValueBody

( JsonValueOrQueryInputExpression , Expression JsonKeyword Expression , RETURNING ColDataType JsonValueOnResponseBehavior ON JsonKeyword JsonValueOnResponseBehavior ON ERROR )

Referenced by:

JsonQueryBody

( JsonValueOrQueryInputExpression , Expression JsonKeyword Expression , RETURNING ColDataType FORMAT JSON ENCODING JsonEncoding WITHOUT WITH S_IDENTIFIER ARRAY JsonKeyword KEEP JsonKeyword JsonKeyword ON JsonKeyword STRING JsonQueryOnResponseBehavior ON JsonKeyword JsonQueryOnResponseBehavior ON ERROR Expression , )

         ::= '(' JsonValueOrQueryInputExpression ',' Expression ( JsonKeyword Expression ( ',' Expression )* )? ( 'RETURNING' ColDataType ( 'FORMAT' 'JSON' ( 'ENCODING' JsonEncoding )? )? )? ( ( 'WITHOUT' | 'WITH' S_IDENTIFIER? ) 'ARRAY'? JsonKeyword )? ( ( 'KEEP' | JsonKeyword ) JsonKeyword ( 'ON' JsonKeyword 'STRING' )? )? ( JsonQueryOnResponseBehavior 'ON' JsonKeyword )? ( JsonQueryOnResponseBehavior 'ON' 'ERROR' )? ( ',' Expression ( 'RETURNING' ColDataType ( 'FORMAT' 'JSON' ( 'ENCODING' JsonEncoding )? )? )? ( ( 'WITHOUT' | 'WITH' S_IDENTIFIER? ) 'ARRAY'? JsonKeyword )? ( ( 'KEEP' | JsonKeyword ) JsonKeyword ( 'ON' JsonKeyword 'STRING' )? )? ( JsonQueryOnResponseBehavior 'ON' JsonKeyword )? ( JsonQueryOnResponseBehavior 'ON' 'ERROR' )? )* ')'

Referenced by:

JsonFunction

JSON_OBJECT JsonObjectBody JSON_ARRAY JsonArrayBody JsonKeyword JsonValueBody JsonQueryBody JsonExistsBody

         ::= 'JSON_OBJECT' JsonObjectBody
           | 'JSON_ARRAY' JsonArrayBody
           | JsonKeyword ( JsonValueBody | JsonQueryBody | JsonExistsBody )

Referenced by:

JsonAggregateFunction

JSON_OBJECTAGG ( KEY DT_ZONE S_DOUBLE S_LONG S_HEX S_CHAR_LITERAL Column : , VALUE Expression FORMAT JSON NULL ABSENT ON NULL WITH WITHOUT UNIQUE KEYS JSON_ARRAYAGG ( Expression FORMAT JSON OrderByElements NULL ABSENT ON NULL ) FILTER ( WHERE Expression ) OVER ( PARTITION BY ComplexExpressionList ( ComplexExpressionList ) OrderByElements WindowElement )

         ::= ( 'JSON_OBJECTAGG' '(' 'KEY'? ( DT_ZONE | S_DOUBLE | S_LONG | S_HEX | S_CHAR_LITERAL | Column ) ( ':' | ',' | 'VALUE' ) Expression ( 'FORMAT' 'JSON' )? ( ( 'NULL' | 'ABSENT' ) 'ON' 'NULL' )? ( ( 'WITH' | 'WITHOUT' ) 'UNIQUE' 'KEYS' )? | 'JSON_ARRAYAGG' '(' Expression ( 'FORMAT' 'JSON' )? OrderByElements? ( ( 'NULL' | 'ABSENT' ) 'ON' 'NULL' )? ) ')' ( 'FILTER' '(' 'WHERE' Expression ')' )? ( 'OVER' '(' ( 'PARTITION' 'BY' ( ComplexExpressionList | '(' ComplexExpressionList ')' ) )? OrderByElements? WindowElement? ')' )?

Referenced by:

IntervalExpression

INTERVAL - S_LONG S_DOUBLE S_CHAR_LITERAL Expression S_IDENTIFIER K_DATE_LITERAL

         ::= 'INTERVAL' ( '-'? ( S_LONG | S_DOUBLE ) | S_CHAR_LITERAL | Expression ) ( S_IDENTIFIER | K_DATE_LITERAL )?

Referenced by:

IntervalExpressionWithoutInterval

K_DATE_LITERAL

Referenced by:

KeepExpression

KEEP ( S_IDENTIFIER FIRST LAST OrderByElements )

         ::= 'KEEP' '(' S_IDENTIFIER ( 'FIRST' | 'LAST' ) OrderByElements ')'

Referenced by:

windowFun

OVER WITHIN GROUP RelObjectName windowDefinition OVER ( PARTITION BY ComplexExpressionList ( ComplexExpressionList ) )

         ::= ( 'OVER' | 'WITHIN' 'GROUP' ) ( RelObjectName | windowDefinition ( 'OVER' '(' ( 'PARTITION' 'BY' ( ComplexExpressionList | '(' ComplexExpressionList ')' ) )? ')' )? )

Referenced by:

windowDefinition

( PARTITION BY ComplexExpressionList ( ComplexExpressionList ) OrderByElements WindowElement )

         ::= '(' ( 'PARTITION' 'BY' ( ComplexExpressionList | '(' ComplexExpressionList ')' ) )? OrderByElements? WindowElement? ')'

Referenced by:

AnalyticExpression

FILTER ( WHERE Expression ) windowFun windowFun

         ::= 'FILTER' '(' 'WHERE' Expression ')' windowFun?
           | windowFun

Referenced by:

WindowElement

ROWS RANGE BETWEEN WindowOffset AND WindowOffset

         ::= ( 'ROWS' | 'RANGE' ) ( 'BETWEEN' WindowOffset 'AND' )? WindowOffset

WindowOffset

UNBOUNDED SimpleExpression PRECEDING FOLLOWING CURRENT ROW

         ::= ( 'UNBOUNDED' | SimpleExpression ) ( 'PRECEDING' | 'FOLLOWING' )
           | 'CURRENT' 'ROW'

Referenced by:

ExtractExpression

EXTRACT ( RelObjectName S_CHAR_LITERAL FROM SimpleExpression )

         ::= 'EXTRACT' '(' ( RelObjectName | S_CHAR_LITERAL ) 'FROM' SimpleExpression ')'

Referenced by:

ImplicitCast

DataType S_CHAR_LITERAL S_LONG S_DOUBLE

         ::= DataType ( S_CHAR_LITERAL | S_LONG | S_DOUBLE )

Referenced by:

CastExpression

CAST SAFE_CAST TRY_CAST INTERPRET ( SimpleExpression AS ROW ( ColumnDefinition , ) ColDataType FORMAT S_CHAR_LITERAL )

         ::= ( 'CAST' | 'SAFE_CAST' | 'TRY_CAST' | 'INTERPRET' ) '(' SimpleExpression 'AS' ( 'ROW' '(' ColumnDefinition ( ',' ColumnDefinition )* ')' | ColDataType ) ( 'FORMAT' S_CHAR_LITERAL )? ')'

Referenced by:

CaseWhenExpression

CASE Expression WhenThenSearchCondition ELSE Expression SimpleExpression END

         ::= 'CASE' Expression? WhenThenSearchCondition+ ( 'ELSE' ( Expression | SimpleExpression ) )? 'END'

Referenced by:

WhenThenSearchCondition

WHEN Expression THEN Expression SimpleExpression

         ::= 'WHEN' Expression 'THEN' ( Expression | SimpleExpression )

Referenced by:

RowConstructor

ROW ParenthesedExpressionList

         ::= 'ROW' ParenthesedExpressionList

Referenced by:

VariableExpression

UserVariable = SimpleExpression

Not referenced by any.

Execute

EXEC EXECUTE CALL RelObjectNames ExpressionList

Execute  ::= ( 'EXEC' | 'EXECUTE' | 'CALL' ) RelObjectNames ExpressionList?

Referenced by:

FullTextSearch

MATCH ( ColumnList ) AGAINST ( SimpleExpression IN NATURAL LANGUAGE MODE IN NATURAL LANGUAGE MODE WITH QUERY EXPANSION IN BOOLEAN MODE WITH QUERY EXPANSION )

         ::= 'MATCH' '(' ColumnList ')' 'AGAINST' '(' SimpleExpression ( 'IN NATURAL LANGUAGE MODE' | 'IN NATURAL LANGUAGE MODE WITH QUERY EXPANSION' | 'IN BOOLEAN MODE' | 'WITH QUERY EXPANSION' )? ')'

Referenced by:

LambdaExpression

ParenthesedColumnList RelObjectName -> Expression

Function

{ FN InternalFunction } SpecialStringFunctionWithNamedParameters InternalFunction

Function ::= '{' 'FN' InternalFunction '}'
           | InternalFunction

SpecialStringFunctionWithNamedParameters

K_STRING_FUNCTION_NAME ( NamedExpressionListExprFirst ExpressionList )

Referenced by:

InternalFunction

APPROXIMATE RelObjectNames ( DISTINCT ALL UNIQUE TABLE ExpressionList OrderByElements ON OVERFLOW TRUNCATE ERROR S_CHAR_LITERAL WITH WITHOUT COUNT Select HAVING MIN MAX Expression IGNORE RESPECT NULLS PlainLimit ) ( ExpressionList ) . Function Column IGNORE RESPECT NULLS KeepExpression

         ::= 'APPROXIMATE'? RelObjectNames '(' ( ( 'DISTINCT' | 'ALL' | 'UNIQUE' )? ( 'TABLE'? ExpressionList OrderByElements? ( 'ON' 'OVERFLOW' ( 'TRUNCATE' | 'ERROR' ) ( S_CHAR_LITERAL ( ( 'WITH' | 'WITHOUT' ) 'COUNT' )? )? )? | Select ) )? ( 'HAVING' ( 'MIN' | 'MAX' ) Expression )? ( ( 'IGNORE' | 'RESPECT' ) 'NULLS' )? PlainLimit? ')' ( '(' ExpressionList ')' )? ( '.' ( Function | Column ) )? ( ( 'IGNORE' | 'RESPECT' ) 'NULLS' )? KeepExpression?

Referenced by:

XMLSerializeExpr

XMLSERIALIZE ( XMLAGG ( XMLTEXT ( SimpleExpression ) OrderByElements ) AS ColDataType )

         ::= 'XMLSERIALIZE' '(' 'XMLAGG' '(' 'XMLTEXT' '(' SimpleExpression ')' OrderByElements? ')' 'AS' ColDataType ')'

Referenced by:

JsonTablePassingClause

Expression AS RelObjectName

         ::= Expression 'AS' RelObjectName

Referenced by:

JsonTableOnEmptyBehavior

ERROR NULL DEFAULT Expression S_IDENTIFIER JsonKeyword ARRAY

         ::= 'ERROR'
           | 'NULL'
           | 'DEFAULT' Expression
           | S_IDENTIFIER ( JsonKeyword | 'ARRAY' )?

JsonTableWrapperClause

WITHOUT WITH S_IDENTIFIER ARRAY JsonKeyword

         ::= ( 'WITHOUT' | 'WITH' S_IDENTIFIER? ) 'ARRAY'? JsonKeyword

JsonTableQuotesClause

KEEP JsonKeyword JsonKeyword ON JsonKeyword STRING

         ::= ( 'KEEP' | JsonKeyword ) JsonKeyword ( 'ON' JsonKeyword 'STRING' )?

JsonTableColumnDefinition

JsonKeyword PATH Expression AS RelObjectName JsonTableColumnsClause RelObjectName FOR JsonKeyword ColDataType FORMAT JSON ENCODING JsonEncoding PATH Expression JsonTableWrapperClause JsonTableQuotesClause JsonTableOnEmptyBehavior ON JsonKeyword JsonValueOnResponseBehavior ON ERROR

         ::= JsonKeyword 'PATH'? Expression ( 'AS' RelObjectName )? JsonTableColumnsClause
           | RelObjectName ( 'FOR' JsonKeyword | ColDataType ( 'FORMAT' 'JSON' ( 'ENCODING' JsonEncoding )? )? ( 'PATH' Expression )? JsonTableWrapperClause? JsonTableQuotesClause? ( JsonTableOnEmptyBehavior 'ON' JsonKeyword )? ( JsonValueOnResponseBehavior 'ON' 'ERROR' )? )

Referenced by:

JsonTableColumnsClause

COLUMNS ( JsonTableColumnDefinition , )

         ::= 'COLUMNS' '(' ( JsonTableColumnDefinition ( ',' JsonTableColumnDefinition )* )? ')'

JsonTablePlanTerm

( JsonTablePlanExpression ) RelObjectName Expression

         ::= '(' JsonTablePlanExpression ')'
           | RelObjectName
           | Expression

Referenced by:

JsonTablePlanExpression

JsonTablePlanTerm , INNER OUTER CROSS UNION

         ::= JsonTablePlanTerm ( ( ',' | 'INNER' | 'OUTER' | 'CROSS' | 'UNION' ) JsonTablePlanTerm )*

JsonTablePlanClause

PLAN DEFAULT ( JsonTablePlanExpression )

         ::= 'PLAN' 'DEFAULT'? '(' JsonTablePlanExpression ')'

Referenced by:

JsonTableOnErrorClause

ERROR S_IDENTIFIER ON ERROR

         ::= ( 'ERROR' | S_IDENTIFIER ) 'ON' 'ERROR'

Referenced by:

JsonTableBody

( Expression , Expression AS RelObjectName JsonKeyword JsonTablePassingClause , JsonTableColumnsClause JsonTablePlanClause JsonTableOnErrorClause )

Referenced by:

TableFunction

LATERAL JsonKeyword JsonTableBody Function WITH OFFSET ORDINALITY

         ::= 'LATERAL'? ( JsonKeyword JsonTableBody | Function ) ( 'WITH' ( 'OFFSET' | 'ORDINALITY' ) )?

Referenced by:

ColumnNamesWithParamsList

( RelObjectName CreateParameter , )

IndexColumnWithParams

RelObjectName ( Expression ) CreateParameter

         ::= ( RelObjectName | '(' Expression ')' ) CreateParameter?

IndexColumnsWithParamsList

( IndexColumnWithParams , )

Index

RelObjectNames

CreateIndex

CreateParameter INDEX IF NOT EXISTS Index ON Table UsingIndexType UsingIndexType ON Table IndexColumnsWithParamsList CreateParameter

         ::= CreateParameter? 'INDEX' ( 'IF' 'NOT' 'EXISTS' )? Index ( 'ON' Table UsingIndexType? | UsingIndexType? 'ON' Table ) IndexColumnsWithParamsList CreateParameter*

Referenced by:

ColumnDefinition

RelObjectName ColDataType CreateParameter

CreateSchema

SCHEMA IF NOT EXISTS S_IDENTIFIER S_QUOTED_IDENTIFIER . S_IDENTIFIER S_QUOTED_IDENTIFIER AUTHORIZATION S_IDENTIFIER S_QUOTED_IDENTIFIER PathSpecification CREATE CreateTable CreateView

         ::= 'SCHEMA' ( 'IF' 'NOT' 'EXISTS' )? ( ( S_IDENTIFIER | S_QUOTED_IDENTIFIER ) ( '.' ( S_IDENTIFIER | S_QUOTED_IDENTIFIER ) )? )? ( 'AUTHORIZATION' ( S_IDENTIFIER | S_QUOTED_IDENTIFIER ) )? PathSpecification? ( 'CREATE' CreateTable | CreateView )*

Referenced by:

PathSpecification

PATH S_IDENTIFIER S_QUOTED_IDENTIFIER ,

         ::= 'PATH' ( S_IDENTIFIER | S_QUOTED_IDENTIFIER ) ( ',' ( S_IDENTIFIER | S_QUOTED_IDENTIFIER ) )*

Referenced by:

CreateTableConstraint

INDEX UNIQUE FULLTEXT SPATIAL KEY RelObjectName IndexColumnsWithParamsList CreateParameter CONSTRAINT RelObjectName PRIMARY KEY UNIQUE KEY ColumnNamesWithParamsList CreateParameter ForeignKeySpec CheckConstraintSpec EXCLUDE WHERE ( Expression )

         ::= ( 'INDEX' | 'UNIQUE'? ( 'FULLTEXT' | 'SPATIAL' )? 'KEY' ) RelObjectName IndexColumnsWithParamsList CreateParameter*
           | ( 'CONSTRAINT' RelObjectName )? ( ( 'PRIMARY' 'KEY' | 'UNIQUE' 'KEY'? ) ColumnNamesWithParamsList CreateParameter* | ForeignKeySpec | CheckConstraintSpec )
           | 'EXCLUDE' 'WHERE' ( '(' Expression ')' )*

Referenced by:

CreateTable

UNLOGGED GLOBAL CreateParameter TABLE IF NOT EXISTS Table ( RelObjectName , ColumnDefinition , CreateTableConstraint ColumnDefinition ) CreateParameter RowMovement AS Select LIKE ( Table ) Table , SpannerInterleaveIn

         ::= 'UNLOGGED'? 'GLOBAL'? CreateParameter* 'TABLE' ( 'IF' 'NOT' 'EXISTS' )? Table ( '(' ( RelObjectName ( ',' RelObjectName )* | ColumnDefinition ( ',' ( CreateTableConstraint | ColumnDefinition ) )* ) ')' )? CreateParameter* RowMovement? ( 'AS' Select )? ( 'LIKE' ( '(' Table ')' | Table ) )? ( ',' SpannerInterleaveIn )?

Referenced by:

SpannerInterleaveIn

INTERLEAVE IN PARENT Table ON DELETE NO ACTION CASCADE

         ::= 'INTERLEAVE' 'IN' 'PARENT' Table ( 'ON' 'DELETE' ( 'NO' 'ACTION' | 'CASCADE' ) )?

Referenced by:

DataType

K_DATETIMELITERAL DT_ZONE DATA_TYPE SIGNED UNSIGNED CHARACTER BIT BYTES BINARY BOOLEAN CHAR JSON STRING DATA_TYPE SIGNED UNSIGNED CHARACTER BIT BYTES BINARY BOOLEAN CHAR JSON STRING ( S_LONG MAX , S_LONG ) K_TEXT_LITERAL ARRAY < ColDataType >

           | 'ARRAY' '<' ColDataType '>'
           | ( K_DATETIMELITERAL | DT_ZONE | DATA_TYPE | 'SIGNED' | 'UNSIGNED' | 'CHARACTER' | 'BIT' | 'BYTES' | 'BINARY' | 'BOOLEAN' | 'CHAR' | 'JSON' | 'STRING' ) ( DATA_TYPE | 'SIGNED' | 'UNSIGNED' | 'CHARACTER' | 'BIT' | 'BYTES' | 'BINARY' | 'BOOLEAN' | 'CHAR' | 'JSON' | 'STRING' )* ( '(' ( S_LONG | 'MAX' ) ( ',' S_LONG )? ')' )?

Referenced by:

ColDataType

STRUCT ( RelObjectNameExt ColDataType , ) DataType S_IDENTIFIER S_QUOTED_IDENTIFIER K_DATETIMELITERAL K_DATE_LITERAL XML INTERVAL DT_ZONE CHAR SET BINARY JSON STRING PUBLIC DATA NAME . ColDataType ( S_LONG MAX BYTE CHAR S_CHAR_LITERAL S_IDENTIFIER CHAR , ) [ S_LONG ] CHARACTER SET S_IDENTIFIER BINARY

         ::= ( 'STRUCT' '(' RelObjectNameExt ColDataType ( ',' RelObjectNameExt ColDataType )* ')' | DataType | ( S_IDENTIFIER | S_QUOTED_IDENTIFIER | K_DATETIMELITERAL | K_DATE_LITERAL | 'XML' | 'INTERVAL' | DT_ZONE | 'CHAR' | 'SET' | 'BINARY' | 'JSON' | 'STRING' | 'PUBLIC' | 'DATA' | 'NAME' ) ( '.' ColDataType )? ) ( '(' ( ( ( S_LONG | 'MAX' ) ( 'BYTE' | 'CHAR' )? | S_CHAR_LITERAL | S_IDENTIFIER | 'CHAR' ) ','? )* ')' )? ( '[' S_LONG? ']' )* ( 'CHARACTER' 'SET' ( S_IDENTIFIER | 'BINARY' ) )?

Analyze

ANALYZE Table

Analyze  ::= 'ANALYZE' Table

Referenced by:

ColumnWithCommentList

( Column , )

         ::= '(' Column ( ',' Column )* ')'

Referenced by:

CreateView

NO FORCE SECURE TEMP TEMPORARY VOLATILE MATERIALIZED VIEW Table AUTO REFRESH YES NO IF NOT EXISTS ColumnWithCommentList CreateViewTailComment AS Select WITH READ ONLY

         ::= ( 'NO'? 'FORCE' )? 'SECURE'? ( 'TEMP' | 'TEMPORARY' | 'VOLATILE' )? 'MATERIALIZED'? 'VIEW' Table ( 'AUTO' 'REFRESH' ( 'YES' | 'NO' ) )? ( 'IF' 'NOT' 'EXISTS' )? ColumnWithCommentList? CreateViewTailComment? 'AS' Select ( 'WITH' 'READ' 'ONLY' )?

Referenced by:

CreateViewTailComment

COMMENT = S_CHAR_LITERAL

         ::= 'COMMENT' '='? S_CHAR_LITERAL

Referenced by:

Action

CASCADE RESTRICT NO ACTION SET NULL DEFAULT

Action   ::= 'CASCADE'
           | 'RESTRICT'
           | 'NO' 'ACTION'
           | 'SET' ( 'NULL' | 'DEFAULT' )

ReferentialActionsOnIndex

ON DELETE UPDATE Action ON DELETE UPDATE Action

         ::= ( 'ON' ( 'DELETE' | 'UPDATE' ) Action )? ( 'ON' ( 'DELETE' | 'UPDATE' ) Action )?

CheckConstraintSpec

CHECK ( Expression )

         ::= 'CHECK' ( '(' Expression ')' )*

ForeignKeySpec

FOREIGN KEY ColumnNamesWithParamsList REFERENCES Table ColumnsNamesList ReferentialActionsOnIndex

         ::= 'FOREIGN' 'KEY' ColumnNamesWithParamsList 'REFERENCES' Table ColumnsNamesList? ReferentialActionsOnIndex

AlterExpressionUsingIndex

USING INDEX RelObjectName

         ::= 'USING' 'INDEX'? RelObjectName

AlterExpressionConstraintTail

AlterExpressionConstraintState AlterExpressionUsingIndex IndexWithComment

AlterView

VIEW Table ColumnsNamesList AS Select

         ::= 'VIEW' Table ColumnsNamesList? 'AS' Select

Referenced by:

CreateParameter

K_NEXTVAL ( S_CHAR_LITERAL :: ColDataType ) S_IDENTIFIER S_QUOTED_IDENTIFIER NAME . S_IDENTIFIER S_QUOTED_IDENTIFIER NAME USING INDEX TABLESPACE RelObjectName S_CHAR_LITERAL NULL NOT AUTO_INCREMENT PRIMARY FOREIGN REFERENCES KEY STORED ON COMMIT DROP ROWS UNIQUE CASCADE DELETE UPDATE CONSTRAINT WITH EXCLUDE WHERE TEMP TEMPORARY PARTITION BY IN TYPE COMMENT USING COLLATE ASC DESC TRUE FALSE PARALLEL BINARY START ORDER K_TIME_KEY_EXPR RAW HASH FIRST LAST SIGNED UNSIGNED ENGINE IDENTITY MATERIALIZED SAMPLE ALWAYS = DEFAULT AS CHECK ( Expression ) + - S_LONG S_DOUBLE AList CHARACTER SET ARRAY ArrayConstructor :: ColDataType

         ::= K_NEXTVAL '(' S_CHAR_LITERAL '::' ColDataType ')'
           | ( S_IDENTIFIER | S_QUOTED_IDENTIFIER | 'NAME' ) ( '.' ( S_IDENTIFIER | S_QUOTED_IDENTIFIER | 'NAME' ) )?
           | ( 'USING' 'INDEX' )? 'TABLESPACE' RelObjectName
           | S_CHAR_LITERAL
           | 'NULL'
           | 'NOT'
           | 'AUTO_INCREMENT'
           | 'PRIMARY'
           | 'FOREIGN'
           | 'REFERENCES'
           | 'KEY'
           | 'STORED'
           | 'ON'
           | 'COMMIT'
           | 'DROP'
           | 'ROWS'
           | 'UNIQUE'
           | 'CASCADE'
           | 'DELETE'
           | 'UPDATE'
           | 'CONSTRAINT'
           | 'WITH'
           | 'EXCLUDE'
           | 'WHERE'
           | 'TEMP'
           | 'TEMPORARY'
           | 'PARTITION'
           | 'BY'
           | 'IN'
           | 'TYPE'
           | 'COMMENT'
           | 'USING'
           | 'COLLATE'
           | 'ASC'
           | 'DESC'
           | 'TRUE'
           | 'FALSE'
           | 'PARALLEL'
           | 'BINARY'
           | 'START'
           | 'ORDER'
           | K_TIME_KEY_EXPR
           | 'RAW'
           | 'HASH'
           | 'FIRST'
           | 'LAST'
           | 'SIGNED'
           | 'UNSIGNED'
           | 'ENGINE'
           | 'IDENTITY'
           | 'MATERIALIZED'
           | 'SAMPLE'
           | 'ALWAYS'
           | '='
           | ( 'DEFAULT' | 'AS' | 'CHECK' ) ( '(' Expression ')' )?
           | ( '+' | '-' )? S_LONG
           | S_DOUBLE
           | AList
           | 'CHARACTER' 'SET'
           | 'ARRAY' ArrayConstructor
           | '::' ColDataType

RowMovement

ENABLE DISABLE ROW MOVEMENT

         ::= ( 'ENABLE' | 'DISABLE' ) 'ROW' 'MOVEMENT'

Referenced by:

AList

( S_LONG S_DOUBLE S_CHAR_LITERAL TRUE FALSE RelObjectName , = )

AList    ::= '(' ( ( S_LONG | S_DOUBLE | S_CHAR_LITERAL | 'TRUE' | 'FALSE' | RelObjectName ) ( ',' | '=' )? )* ')'

Referenced by:

ColumnsNamesListItem

RelObjectName ( S_LONG ) ASC DESC

         ::= RelObjectName ( '(' S_LONG ')' )? ( 'ASC' | 'DESC' )?

ColumnsNamesList

( ColumnsNamesListItem , )

         ::= '(' ColumnsNamesListItem ( ',' ColumnsNamesListItem )* ')'

FuncArgsListItem

RelObjectName RelObjectName ( S_LONG )

         ::= RelObjectName RelObjectName? ( '(' S_LONG ')' )?

Referenced by:

FuncArgsList

( FuncArgsListItem , )

         ::= '(' ( FuncArgsListItem ( ',' FuncArgsListItem )* )? ')'

Referenced by:

Drop

DROP MATERIALIZED S_IDENTIFIER TEMPORARY TABLE INDEX VIEW SCHEMA SEQUENCE FUNCTION IF EXISTS Table FuncArgsList S_IDENTIFIER CASCADE RESTRICT ON Table

Drop     ::= 'DROP' 'MATERIALIZED'? ( S_IDENTIFIER | 'TEMPORARY'? 'TABLE' | 'INDEX' | 'VIEW' | 'SCHEMA' | 'SEQUENCE' | 'FUNCTION' ) ( 'IF' 'EXISTS' )? Table FuncArgsList? ( S_IDENTIFIER | 'CASCADE' | 'RESTRICT' | 'ON' Table )*

Referenced by:

Truncate

TRUNCATE TABLE ONLY Table , CASCADE

Truncate ::= 'TRUNCATE' 'TABLE'? 'ONLY'? Table ( ',' Table )* 'CASCADE'?

Referenced by:

AlterExpressionColumnChanges

AlterExpressionColumnDropDefault AlterExpressionColumnSetDefault AlterExpressionColumnSetVisibility ( AlterExpressionColumnDataType , )

AlterExpressionColumnDataType

RelObjectName TYPE ColDataType CreateParameter

AlterExpressionColumnDropNotNull

RelObjectName DROP NOT NULL

         ::= RelObjectName 'DROP' 'NOT'? 'NULL'

AlterExpressionColumnDropDefault

RelObjectName DROP DEFAULT

         ::= RelObjectName 'DROP' 'DEFAULT'

AlterExpressionColumnSetDefault

RelObjectName SET DEFAULT Expression

         ::= RelObjectName 'SET' 'DEFAULT' Expression

AlterExpressionColumnSetVisibility

RelObjectName SET VISIBLE INVISIBLE

         ::= RelObjectName 'SET' ( 'VISIBLE' | 'INVISIBLE' )

AlterExpressionConstraintState

NOT DEFERRABLE VALIDATE NOVALIDATE ENABLE DISABLE

         ::= ( 'NOT'? 'DEFERRABLE' | 'VALIDATE' | 'NOVALIDATE' | 'ENABLE' | 'DISABLE' )*

IndexWithComment

COMMENT S_CHAR_LITERAL

         ::= 'COMMENT' S_CHAR_LITERAL

IndexOptionList

IndexOption

         ::= IndexOption*

UsingIndexType

USING RelObjectName

         ::= 'USING' RelObjectName

IndexOption

KEY_BLOCK_SIZE = S_LONG WITH PARSER S_IDENTIFIER COMMENT S_CHAR_LITERAL VISIBLE INVISIBLE UsingIndexType

         ::= 'KEY_BLOCK_SIZE' '='? S_LONG
           | 'WITH' 'PARSER' S_IDENTIFIER
           | 'COMMENT' S_CHAR_LITERAL
           | 'VISIBLE'
           | 'INVISIBLE'
           | UsingIndexType

Referenced by:

PartitionDefinitions

( PARTITION RelObjectName VALUES LESS THAN ( Expression ) MAXVALUE ENGINE = S_IDENTIFIER , )

         ::= '(' ( 'PARTITION' RelObjectName 'VALUES' 'LESS' 'THAN' ( '(' Expression ')' | 'MAXVALUE' ) ( 'ENGINE' '=' S_IDENTIFIER )? ','? )* ')'

PartitionNamesList

ALL S_IDENTIFIER ,

         ::= 'ALL'
           | S_IDENTIFIER ( ',' S_IDENTIFIER )*

AlterExpressionDiscardOrImport

DISCARD IMPORT PARTITION PartitionNamesList TABLESPACE

         ::= ( 'DISCARD' | 'IMPORT' ) ( 'PARTITION' PartitionNamesList )? 'TABLESPACE'

Referenced by:

AlterExpressionAddConstraint

CONSTRAINT UNIQUE KEY INDEX RelObjectName ColumnsNamesList RelObjectName FOREIGN KEY ColumnsNamesList REFERENCES Table ColumnsNamesList ReferentialActionsOnIndex KEY ColumnsNamesList AlterExpressionConstraintState PRIMARY KEY UNIQUE KEY INDEX ColumnsNamesList AlterExpressionConstraintTail NOT ENFORCED CheckConstraintSpec

         ::= 'CONSTRAINT' ( 'UNIQUE' ( 'KEY' | 'INDEX' )? RelObjectName ColumnsNamesList | RelObjectName ( ( 'FOREIGN' 'KEY' ColumnsNamesList 'REFERENCES' Table ColumnsNamesList? ReferentialActionsOnIndex | 'KEY' ColumnsNamesList ) AlterExpressionConstraintState | ( 'PRIMARY' 'KEY' | 'UNIQUE' ( 'KEY' | 'INDEX' )? ) ColumnsNamesList AlterExpressionConstraintTail | 'NOT'? 'ENFORCED' | CheckConstraintSpec ) )

AlterExpressionDrop

DROP PARTITION PartitionNamesList ColumnsNamesList COLUMN IF EXISTS KeywordOrIdentifier INVALIDATE CASCADE CONSTRAINTS INDEX KEY S_IDENTIFIER S_QUOTED_IDENTIFIER UNIQUE FOREIGN KEY ColumnsNamesList PRIMARY KEY CONSTRAINT IF EXISTS S_IDENTIFIER S_QUOTED_IDENTIFIER CASCADE RESTRICT

         ::= 'DROP' ( 'PARTITION' PartitionNamesList | ( ColumnsNamesList | 'COLUMN'? ( 'IF' 'EXISTS' )? KeywordOrIdentifier ) 'INVALIDATE'? ( 'CASCADE' 'CONSTRAINTS'? )? | ( 'INDEX' | 'KEY' ) ( S_IDENTIFIER | S_QUOTED_IDENTIFIER ) | ( ( 'UNIQUE' | 'FOREIGN' 'KEY' ) ColumnsNamesList | 'PRIMARY' 'KEY' | 'CONSTRAINT' ( 'IF' 'EXISTS' )? ( S_IDENTIFIER | S_QUOTED_IDENTIFIER ) ) ( 'CASCADE' | 'RESTRICT' )? )

Referenced by:

AlterExpressionPartitionOp

TRUNCATE ANALYZE CHECK OPTIMIZE REBUILD REPAIR PARTITION PartitionNamesList COALESCE PARTITION S_LONG REORGANIZE PARTITION PartitionNamesList INTO PARTITION BY RANGE ( Expression ) COLUMNS ColumnsNamesList PartitionDefinitions EXCHANGE PARTITION PartitionNamesList WITH TABLE S_IDENTIFIER WITH WITHOUT VALIDATION REMOVE PARTITIONING

         ::= ( 'TRUNCATE' | 'ANALYZE' | 'CHECK' | 'OPTIMIZE' | 'REBUILD' | 'REPAIR' ) 'PARTITION' PartitionNamesList
           | 'COALESCE' 'PARTITION' S_LONG
           | ( 'REORGANIZE' 'PARTITION' PartitionNamesList 'INTO' | 'PARTITION' 'BY' 'RANGE' ( '(' Expression ')' | 'COLUMNS' ColumnsNamesList ) ) PartitionDefinitions
           | 'EXCHANGE' 'PARTITION' PartitionNamesList 'WITH' 'TABLE' S_IDENTIFIER ( ( 'WITH' | 'WITHOUT' ) 'VALIDATION' )?
           | 'REMOVE' 'PARTITIONING'

Referenced by:

AlterExpressionAddAlterModify

ADD ALTER MODIFY PRIMARY KEY ColumnsNamesList AlterExpressionConstraintState AlterExpressionUsingIndex KEY INDEX RelObjectName UsingIndexType IndexColumnsWithParamsList IndexOptionList AlterExpressionConstraintState SPATIAL FULLTEXT INDEX KEY RelObjectName ColumnsNamesList IndexOptionList RelObjectName COMMENT S_CHAR_LITERAL PARTITION PartitionDefinitions COLUMN COLUMNS IF NOT EXISTS AlterExpressionColumnChanges AlterExpressionColumnDataType AlterExpressionColumnDropNotNull AlterExpressionColumnChanges UNIQUE KEY INDEX S_IDENTIFIER S_QUOTED_IDENTIFIER ColumnsNamesList AlterExpressionUsingIndex IndexWithComment ForeignKeySpec CHECK RelObjectName NOT ENFORCED AlterExpressionAddConstraint

Referenced by:

AlterExpressionRenameOp

RENAME INDEX KEY CONSTRAINT S_IDENTIFIER S_QUOTED_IDENTIFIER TO S_IDENTIFIER S_QUOTED_IDENTIFIER COLUMN KeywordOrIdentifier TO KeywordOrIdentifier

         ::= 'RENAME' ( ( ( 'INDEX' | 'KEY' | 'CONSTRAINT' ) ( S_IDENTIFIER | S_QUOTED_IDENTIFIER ) )? 'TO' ( S_IDENTIFIER | S_QUOTED_IDENTIFIER ) | 'COLUMN'? KeywordOrIdentifier 'TO' KeywordOrIdentifier )

Referenced by:

AlterExpression

AlterExpressionAddAlterModify CHANGE COLUMN KeywordOrIdentifier AlterExpressionColumnDataType AlterExpressionDrop FORCE ROW LEVEL SECURITY NO FORCE ROW LEVEL SECURITY ALGORITHM LOCK ENGINE = RelObjectName KEY_BLOCK_SIZE AUTO_INCREMENT = S_LONG AlterExpressionRenameOp CONVERT TO CHARACTER SET S_IDENTIFIER COLLATE DEFAULT CHARACTER SET = S_IDENTIFIER COLLATE COLLATE = S_IDENTIFIER COMMENT ENCRYPTION = S_CHAR_LITERAL AlterExpressionDiscardOrImport DISABLE ENABLE ROW LEVEL SECURITY KEYS AlterExpressionPartitionOp captureRest

         ::= AlterExpressionAddAlterModify
           | 'CHANGE' 'COLUMN'? KeywordOrIdentifier AlterExpressionColumnDataType
           | AlterExpressionDrop
           | 'FORCE' ( 'ROW' 'LEVEL' 'SECURITY' )?
           | 'NO' 'FORCE' 'ROW' 'LEVEL' 'SECURITY'
           | ( 'ALGORITHM' | 'LOCK' | 'ENGINE' ) '='? RelObjectName
           | ( 'KEY_BLOCK_SIZE' | 'AUTO_INCREMENT' ) '='? S_LONG
           | AlterExpressionRenameOp
           | ( 'CONVERT' 'TO' 'CHARACTER' 'SET' ( S_IDENTIFIER 'COLLATE' )? | 'DEFAULT'? ( 'CHARACTER' 'SET' ( '='? S_IDENTIFIER 'COLLATE' )? | 'COLLATE' ) '='? ) S_IDENTIFIER
           | ( 'COMMENT' | 'ENCRYPTION' ) '='? S_CHAR_LITERAL
           | AlterExpressionDiscardOrImport
           | ( 'DISABLE' | 'ENABLE' ) ( 'ROW' 'LEVEL' 'SECURITY' | 'KEYS' )
           | AlterExpressionPartitionOp
           | captureRest

Referenced by:

Alter

ALTER AlterTable AlterSession AlterView AlterSystemStatement AlterSequence captureRest REPLACE AlterView captureRest

           | 'REPLACE' ( AlterView | captureRest )

Referenced by:

AlterTable

TABLE ONLY IF EXISTS Table AlterExpression ,

         ::= 'TABLE' 'ONLY'? ( 'IF' 'EXISTS' )? Table AlterExpression ( ',' AlterExpression )*

Referenced by:

AlterSession

SESSION ADVISE COMMIT ROLLBACK NOTHING CLOSE DATABASE LINK ENABLE DISABLE COMMIT IN PROCEDURE GUARD PARALLEL DML DDL QUERY RESUMABLE FORCE PARALLEL DML DDL QUERY SET S_CHAR_LITERAL S_IDENTIFIER = S_LONG PARALLEL

         ::= 'SESSION' ( 'ADVISE' ( 'COMMIT' | 'ROLLBACK' | 'NOTHING' ) | 'CLOSE' 'DATABASE' 'LINK' | ( 'ENABLE' | 'DISABLE' ) ( 'COMMIT' 'IN' 'PROCEDURE' | 'GUARD' | 'PARALLEL' ( 'DML' | 'DDL' | 'QUERY' ) | 'RESUMABLE' ) | 'FORCE' 'PARALLEL' ( 'DML' | 'DDL' | 'QUERY' ) | 'SET' ) ( S_CHAR_LITERAL | S_IDENTIFIER | '=' | S_LONG | 'PARALLEL' )*

Referenced by:

AlterSystemStatement

SYSTEM ARCHIVE LOG CHECKPOINT DUMP ACTIVE SESSION HISTORY ENABLE DISABLE DISTRIBUTED RECOVERY RESTRICTED SESSION FLUSH DISCONNECT KILL SESSION SWITCH SUSPEND RESUME QUIESCE RESTRICTED UNQIESCE SHUTDOWN REGISTER SET RESET captureRest

         ::= 'SYSTEM' ( 'ARCHIVE' 'LOG' | 'CHECKPOINT' | 'DUMP' 'ACTIVE' 'SESSION' 'HISTORY' | ( 'ENABLE' | 'DISABLE' ) ( 'DISTRIBUTED' 'RECOVERY' | 'RESTRICTED' 'SESSION' ) | 'FLUSH' | ( 'DISCONNECT' | 'KILL' ) 'SESSION' | 'SWITCH' | 'SUSPEND' | 'RESUME' | 'QUIESCE' 'RESTRICTED' | 'UNQIESCE' | 'SHUTDOWN' | 'REGISTER' | 'SET' | 'RESET' ) captureRest

Referenced by:

Wait

WAIT S_LONG

Wait     ::= 'WAIT' S_LONG

Referenced by:

SavepointStatement

SAVEPOINT S_IDENTIFIER

         ::= 'SAVEPOINT' S_IDENTIFIER

Referenced by:

RollbackStatement

ROLLBACK WORK TO SAVEPOINT S_IDENTIFIER FORCE S_CHAR_LITERAL

         ::= 'ROLLBACK' 'WORK'? ( 'TO' 'SAVEPOINT'? S_IDENTIFIER | 'FORCE' S_CHAR_LITERAL )?

Referenced by:

Comment

COMMENT ON TABLE VIEW Table COLUMN Column IS S_CHAR_LITERAL

Comment  ::= 'COMMENT' 'ON' ( ( 'TABLE' | 'VIEW' ) Table | 'COLUMN' Column ) 'IS' S_CHAR_LITERAL

Referenced by:

Grant

GRANT readGrantTypes , ON RelObjectNames S_IDENTIFIER TO UsersList

Grant    ::= 'GRANT' ( ( readGrantTypes ( ',' readGrantTypes )* )? 'ON' RelObjectNames | S_IDENTIFIER ) 'TO' UsersList

Referenced by:

UsersList

RelObjectName , ColumnsNamesListItem

         ::= RelObjectName ( ',' ColumnsNamesListItem )*

Referenced by:

readGrantTypes

K_SELECT INSERT UPDATE DELETE EXECUTE ALTER DROP

         ::= K_SELECT
           | 'INSERT'
           | 'UPDATE'
           | 'DELETE'
           | 'EXECUTE'
           | 'ALTER'
           | 'DROP'

Referenced by:

Sequence

RelObjectNames

SequenceParameters

INCREMENT BY START WITH MAXVALUE MINVALUE CACHE S_LONG RESTART WITH S_LONG NOMAXVALUE NOMINVALUE NOCYCLE CYCLE NOCACHE ORDER NOORDER KEEP NOKEEP SESSION GLOBAL

         ::= ( ( 'INCREMENT' 'BY'? | 'START' 'WITH'? | 'MAXVALUE' | 'MINVALUE' | 'CACHE' ) S_LONG | 'RESTART' ( 'WITH' S_LONG )? | 'NOMAXVALUE' | 'NOMINVALUE' | 'NOCYCLE' | 'CYCLE' | 'NOCACHE' | 'ORDER' | 'NOORDER' | 'KEEP' | 'NOKEEP' | 'SESSION' | 'GLOBAL' )*

CreateSequence

SEQUENCE Sequence AS S_IDENTIFIER DATA_TYPE SequenceParameters

         ::= 'SEQUENCE' Sequence ( 'AS' ( S_IDENTIFIER | DATA_TYPE ) )? SequenceParameters

Referenced by:

AlterSequence

SEQUENCE Sequence SequenceParameters

         ::= 'SEQUENCE' Sequence SequenceParameters

Referenced by:

Create

CREATE OR REPLACE CreateFunctionStatement CreateSchema CreateSequence CreateSynonym CreateTable CreateView CreatePolicy TRIGGER DOMAIN captureRest CreateIndex

Create   ::= 'CREATE' ( 'OR' 'REPLACE' )? ( CreateFunctionStatement | CreateSchema | CreateSequence | CreateSynonym | CreateTable | CreateView | CreatePolicy | ( 'TRIGGER' | 'DOMAIN' )? captureRest | CreateIndex )

Referenced by:

CreateFunctionStatement

FUNCTION PROCEDURE captureFunctionBody

         ::= ( 'FUNCTION' | 'PROCEDURE' ) captureFunctionBody

Referenced by:

CreateSynonym

PUBLIC SYNONYM Synonym FOR RelObjectNames

         ::= 'PUBLIC'? 'SYNONYM' Synonym 'FOR' RelObjectNames

Referenced by:

Synonym

RelObjectNames

Referenced by:

CreatePolicy

POLICY RelObjectName ON Table FOR ALL K_SELECT INSERT UPDATE DELETE TO RelObjectName , USING ( Expression ) WITH CHECK ( Expression )

         ::= 'POLICY' RelObjectName 'ON' Table ( 'FOR' ( 'ALL' | K_SELECT | 'INSERT' | 'UPDATE' | 'DELETE' ) )? ( 'TO' RelObjectName ( ',' RelObjectName )* )? ( 'USING' '(' Expression ')' )? ( 'WITH' 'CHECK' '(' Expression ')' )?

Referenced by:

UnsupportedStatement

captureUnsupportedStatementDeclaration

Referenced by:

IdentifierChain

RelObjectNameExt .

         ::= RelObjectNameExt ( '.' RelObjectNameExt )*

IdentifierChain2

. RelObjectNameExt

         ::= ( '.' RelObjectNameExt )*

Referenced by:

CharacterPrimary

TranscodingFunction TrimFunction

         ::= TranscodingFunction
           | TrimFunction

Referenced by:

TranscodingFunction

TRY_CONVERT SAFE_CONVERT CONVERT ( ColDataType , Expression , S_LONG Expression USING IdentifierChain )

         ::= ( 'TRY_CONVERT' | 'SAFE_CONVERT' | 'CONVERT' ) '(' ( ColDataType ',' Expression ( ',' S_LONG )? | Expression 'USING' IdentifierChain ) ')'

Referenced by:

TrimFunction

TRIM ( LEADING TRAILING BOTH Expression , FROM Expression )

         ::= 'TRIM' '(' ( 'LEADING' | 'TRAILING' | 'BOTH' )? Expression? ( ( ',' | 'FROM' ) Expression )? ')'

Referenced by:

SnowflakeTimeTravelAt

AT ( K_DATETIMELITERAL OFFSET => Expression STATEMENT => S_CHAR_LITERAL S_IDENTIFIER S_QUOTED_IDENTIFIER STREAM => S_CHAR_LITERAL )

         ::= 'AT' '(' ( ( K_DATETIMELITERAL | 'OFFSET' ) '=>' Expression | 'STATEMENT' '=>' ( S_CHAR_LITERAL | S_IDENTIFIER | S_QUOTED_IDENTIFIER ) | 'STREAM' '=>' S_CHAR_LITERAL ) ')'

SnowflakeTimeTravelBefore

BEFORE ( STATEMENT => S_CHAR_LITERAL S_IDENTIFIER S_QUOTED_IDENTIFIER )

         ::= 'BEFORE' '(' 'STATEMENT' '=>' ( S_CHAR_LITERAL | S_IDENTIFIER | S_QUOTED_IDENTIFIER ) ')'

SnowflakeTimeTravelChange

CHANGES ( INFORMATION => DEFAULT APPEND_ONLY ) SnowflakeTimeTravelAt SnowflakeTimeTravelBefore END ( K_DATETIMELITERAL OFFSET => Expression STATEMENT => S_CHAR_LITERAL S_IDENTIFIER S_QUOTED_IDENTIFIER )

         ::= 'CHANGES' '(' 'INFORMATION' '=>' ( 'DEFAULT' | 'APPEND_ONLY' ) ')' ( SnowflakeTimeTravelAt | SnowflakeTimeTravelBefore ) ( 'END' '(' ( ( K_DATETIMELITERAL | 'OFFSET' ) '=>' Expression | 'STATEMENT' '=>' ( S_CHAR_LITERAL | S_IDENTIFIER | S_QUOTED_IDENTIFIER ) ) ')' )?

Referenced by:

DataBricksTemporalSpec

@ @V S_CHAR_LITERAL S_LONG FOR SYSTEM_TIMESTAMP K_DATETIMELITERAL AS OF Expression SYSTEM_VERSION VERSION AS OF S_LONG S_CHAR_LITERAL

         ::= ( '@' | '@V' ) ( S_CHAR_LITERAL | S_LONG )
           | 'FOR'? ( 'SYSTEM_TIMESTAMP' | K_DATETIMELITERAL ) 'AS' 'OF' Expression
           | ( 'SYSTEM_VERSION' | 'VERSION' ) 'AS' 'OF' ( S_LONG | S_CHAR_LITERAL )

Referenced by:

BigQueryHistoricalVersion

FOR SYSTEM_TIME AS OF Expression

         ::= 'FOR' 'SYSTEM_TIME' 'AS' 'OF' Expression

Referenced by:

TimeTravelBeforeAlias

SnowflakeTimeTravelAt SnowflakeTimeTravelBefore SnowflakeTimeTravelChange DataBricksTemporalSpec

         ::= SnowflakeTimeTravelAt
           | SnowflakeTimeTravelBefore
           | SnowflakeTimeTravelChange
           | DataBricksTemporalSpec

Referenced by:

TimeTravelAfterAlias

BigQueryHistoricalVersion

Referenced by:

WHITESPACE

[#x9] [#xD] [#xA]

         ::= [ #x9#xD#xA]

K_ISOLATION

UR RS RR CS

         ::= 'UR'
           | 'RS'
           | 'RR'
           | 'CS'

K_NEXTVAL

NEXTVAL FOR NEXT VALUE FOR

         ::= 'NEXTVAL' ( ' '+ 'FOR' )?
           | 'NEXT' ' '+ 'VALUE' ' '+ 'FOR'

K_TEXT_LITERAL

TEXT TINYTEXT MEDIUMTEXT LONGTEXT

         ::= 'TEXT'
           | 'TINYTEXT'
           | 'MEDIUMTEXT'
           | 'LONGTEXT'

Referenced by:

K_TIME_KEY_EXPR

CURRENT _ TIMESTAMP TIME DATE TIMEZONE ()

         ::= 'CURRENT' ( '_' | ' '+ ) ( 'TIMESTAMP' | 'TIME' | 'DATE' | 'TIMEZONE' ) '()'?

K_STRING_FUNCTION_NAME

SUBSTR SUBSTRING TRIM POSITION OVERLAY

         ::= 'SUBSTR'
           | 'SUBSTRING'
           | 'TRIM'
           | 'POSITION'
           | 'OVERLAY'

K_DATETIMELITERAL

DATE DATETIME TIME TIMESTAMP TIMESTAMPTZ

         ::= 'DATE'
           | 'DATETIME'
           | 'TIME'
           | 'TIMESTAMP'
           | 'TIMESTAMPTZ'

K_DATE_LITERAL

YEAR MONTH DAY HOUR MINUTE SECOND

         ::= 'YEAR'
           | 'MONTH'
           | 'DAY'
           | 'HOUR'
           | 'MINUTE'
           | 'SECOND'

K_SELECT

SELECT SEL

K_SELECT ::= 'SELECT'
           | 'SEL'

K_SIMILAR_TO

SIMILAR TO

         ::= 'SIMILAR' ' '+ 'TO'

Referenced by:

ST_SEMICOLON

; [#xA] / [#xA] go [#xA]

         ::= ';'
           | #xA ( [/#xA] | 'go' ) #xA

Referenced by:

OP_GREATERTHANEQUALS

> WHITESPACE =

         ::= '>' WHITESPACE* '='

Referenced by:

OP_MINORTHANEQUALS

< WHITESPACE =

         ::= '<' WHITESPACE* '='

Referenced by:

OP_NOTEQUALSSTANDARD

< WHITESPACE >

         ::= '<' WHITESPACE* '>'

Referenced by:

OP_NOTEQUALSBANG

! WHITESPACE =

         ::= '!' WHITESPACE* '='

Referenced by:

OP_NOTEQUALSHAT

^ WHITESPACE =

         ::= '^' WHITESPACE* '='

Referenced by:

OP_CONCAT

| WHITESPACE |

         ::= '|' WHITESPACE* '|'

DT_ZONE

K_DATETIMELITERAL WHITESPACE ( S_LONG ) WHITESPACE WITH WITHOUT WHITESPACE LOCAL WHITESPACE TIME WHITESPACE ZONE

DT_ZONE  ::= K_DATETIMELITERAL WHITESPACE* ( '(' S_LONG ')' )? WHITESPACE* ( 'WITH' | 'WITHOUT' ) WHITESPACE+ ( 'LOCAL' WHITESPACE+ )? 'TIME' WHITESPACE+ 'ZONE'

DATA_TYPE

BISTRING TYPE_BLOB TYPE_BOOLEAN ENUM TYPE_REAL TYPE_DOUBLE UUID MAP TYPE_TINYINT TYPE_SMALLINT TYPE_INTEGER TYPE_BIGINT HUGEINT UTINYINT USMALLINT UINTEGER UBIGINT UHUGEINT TYPE_DECIMAL TYPE_VARCHAR TIMETZ TYPE_TIMESTAMP

         ::= 'BISTRING'
           | TYPE_BLOB
           | TYPE_BOOLEAN
           | 'ENUM'
           | TYPE_REAL
           | TYPE_DOUBLE
           | 'UUID'
           | 'MAP'
           | TYPE_TINYINT
           | TYPE_SMALLINT
           | TYPE_INTEGER
           | TYPE_BIGINT
           | 'HUGEINT'
           | 'UTINYINT'
           | 'USMALLINT'
           | 'UINTEGER'
           | 'UBIGINT'
           | 'UHUGEINT'
           | TYPE_DECIMAL
           | TYPE_VARCHAR
           | 'TIMETZ'
           | TYPE_TIMESTAMP

TYPE_BLOB

BLOB BYTEA BINARY VARBINARY BYTES

         ::= 'BLOB'
           | 'BYTEA'
           | 'BINARY'
           | 'VARBINARY'
           | 'BYTES'

Referenced by:

TYPE_BOOLEAN

BOOLEAN BOOL

         ::= 'BOOLEAN'
           | 'BOOL'

Referenced by:

TYPE_DECIMAL

DECIMAL NUMBER NUMERIC

         ::= 'DECIMAL'
           | 'NUMBER'
           | 'NUMERIC'

Referenced by:

TYPE_TINYINT

TINYINT INT1

         ::= 'TINYINT'
           | 'INT1'

Referenced by:

TYPE_SMALLINT

SMALLINT INT2 SHORT

         ::= 'SMALLINT'
           | 'INT2'
           | 'SHORT'

Referenced by:

TYPE_INTEGER

INTEGER INT INT4 SIGNED UNSIGNED

         ::= 'INTEGER'
           | 'INT'
           | 'INT4'
           | 'SIGNED'
           | 'UNSIGNED'

Referenced by:

TYPE_BIGINT

BIGINT INT8 LONG

         ::= 'BIGINT'
           | 'INT8'
           | 'LONG'

Referenced by:

TYPE_REAL

REAL FLOAT4 FLOAT

         ::= 'REAL'
           | 'FLOAT4'
           | 'FLOAT'

Referenced by:

TYPE_DOUBLE

DOUBLE PRECISION FLOAT8 FLOAT64

         ::= 'DOUBLE'
           | 'PRECISION'
           | 'FLOAT8'
           | 'FLOAT64'

Referenced by:

TYPE_VARCHAR

NVARCHAR VARCHAR NCHAR CHAR BPCHAR TEXT STRING CHARACTER VARYING

         ::= 'NVARCHAR'
           | 'VARCHAR'
           | 'NCHAR'
           | 'CHAR'
           | 'BPCHAR'
           | 'TEXT'
           | 'STRING'
           | 'CHARACTER'
           | 'VARYING'

Referenced by:

TYPE_TIMESTAMP

TIMESTAMP_NS TIMESTAMP_MS TIMESTAMP_S

         ::= 'TIMESTAMP_NS'
           | 'TIMESTAMP_MS'
           | 'TIMESTAMP_S'

Referenced by:

S_DOUBLE

S_LONG . S_LONG e E + [#x2D] S_LONG S_LONG . e E + [#x2D] S_LONG e E + [#x2D] S_LONG

S_DOUBLE ::= S_LONG? '.' S_LONG ( [eE] [+#x2D]? S_LONG )?
           | S_LONG ( '.' ( [eE] [+#x2D]? S_LONG )? | [eE] [+#x2D]? S_LONG )

S_LONG

DIGIT

S_LONG   ::= DIGIT+

DIGIT

[0-9]

DIGIT    ::= [0-9]

Referenced by:

S_HEX

X ' HEX_VALUE ' 0x HEX_VALUE

S_HEX    ::= 'X' ( "'" HEX_VALUE* "'" ' '* )+
           | '0x' HEX_VALUE+

HEX_VALUE

[0-9] [A-F]

         ::= [0-9A-F ]

Referenced by:

LINE_COMMENT

-- // [^#xD#xA]

         ::= ( '--' | '//' ) [^#xD#xA]*

Not referenced by any.

MULTI_LINE_COMMENT

.

         ::= .

Not referenced by any.

S_PARAMETER

$ [0-9]

         ::= '$' [0-9]+

Referenced by:

S_IDENTIFIER

LETTER PART_LETTER $ PART_LETTER_NO_DOLLAR PART_LETTER

         ::= LETTER PART_LETTER*
           | '$' ( PART_LETTER_NO_DOLLAR PART_LETTER* )?

LETTER

UnicodeIdentifierStart Nd _ [#x23]

           | Nd
           | [_#x23]

Referenced by:

PART_LETTER_NO_DOLLAR

UnicodeIdentifierStart UnicodeIdentifierExtend _ @ [#x23]

         ::= UnicodeIdentifierStart
           | UnicodeIdentifierExtend
           | [_@#x23]

Referenced by:

PART_LETTER

UnicodeIdentifierStart UnicodeIdentifierExtend $ _ @ [#x23]

         ::= UnicodeIdentifierStart
           | UnicodeIdentifierExtend
           | [$_@#x23]

Referenced by:

S_AT_IDENTIFIER

@ @ S_IDENTIFIER

         ::= '@' '@'? S_IDENTIFIER

Referenced by:

UnicodeIdentifierStart

[#xB7] Ll Lm Lo Lt Lu Nl CJK

         ::= #xB7
           | Ll
           | Lm
           | Lo
           | Lt
           | Lu
           | Nl
           | CJK

Ll

[a-z] [#xB5] [#xDF-#xF6] [#xF8-#xFF] [#x101] [#x103] [#x105] [#x107] [#x109] [#x10B] [#x10D] [#x10F] [#x111] [#x113] [#x115] [#x117] [#x119] [#x11B] [#x11D] [#x11F] [#x121] [#x123] [#x125] [#x127] [#x129] [#x12B] [#x12D] [#x12F] [#x131] [#x133] [#x135] [#x137-#x138] [#x13A] [#x13C] [#x13E] [#x140] [#x142] [#x144] [#x146] [#x148-#x149] [#x14B] [#x14D] [#x14F] [#x151] [#x153] [#x155] [#x157] [#x159] [#x15B] [#x15D] [#x15F] [#x161] [#x163] [#x165] [#x167] [#x169] [#x16B] [#x16D] [#x16F] [#x171] [#x173] [#x175] [#x177] [#x17A] [#x17C] [#x17E-#x180] [#x183] [#x185] [#x188] [#x18C-#x18D] [#x192] [#x195] [#x199-#x19B] [#x19E] [#x1A1] [#x1A3] [#x1A5] [#x1A8] [#x1AA-#x1AB] [#x1AD] [#x1B0] [#x1B4] [#x1B6] [#x1B9-#x1BA] [#x1BD-#x1BF] [#x1C6] [#x1C9] [#x1CC] [#x1CE] [#x1D0] [#x1D2] [#x1D4] [#x1D6] [#x1D8] [#x1DA] [#x1DC-#x1DD] [#x1DF] [#x1E1] [#x1E3] [#x1E5] [#x1E7] [#x1E9] [#x1EB] [#x1ED] [#x1EF-#x1F0] [#x1F3] [#x1F5] [#x1F9] [#x1FB] [#x1FD] [#x1FF] [#x201] [#x203] [#x205] [#x207] [#x209] [#x20B] [#x20D] [#x20F] [#x211] [#x213] [#x215] [#x217] [#x219] [#x21B] [#x21D] [#x21F] [#x221] [#x223] [#x225] [#x227] [#x229] [#x22B] [#x22D] [#x22F] [#x231] [#x233-#x239] [#x23C] [#x23F-#x240] [#x242] [#x247] [#x249] [#x24B] [#x24D] [#x24F-#x293] [#x295-#x2AF] [#x371] [#x373] [#x377] [#x37B-#x37D] [#x390] [#x3AC-#x3CE] [#x3D0-#x3D1] [#x3D5-#x3D7] [#x3D9] [#x3DB] [#x3DD] [#x3DF] [#x3E1] [#x3E3] [#x3E5] [#x3E7] [#x3E9] [#x3EB] [#x3ED] [#x3EF-#x3F3] [#x3F5] [#x3F8] [#x3FB-#x3FC] [#x430-#x45F] [#x461] [#x463] [#x465] [#x467] [#x469] [#x46B] [#x46D] [#x46F] [#x471] [#x473] [#x475] [#x477] [#x479] [#x47B] [#x47D] [#x47F] [#x481] [#x48B] [#x48D] [#x48F] [#x491] [#x493] [#x495] [#x497] [#x499] [#x49B] [#x49D] [#x49F] [#x4A1] [#x4A3] [#x4A5] [#x4A7] [#x4A9] [#x4AB] [#x4AD] [#x4AF] [#x4B1] [#x4B3] [#x4B5] [#x4B7] [#x4B9] [#x4BB] [#x4BD] [#x4BF] [#x4C2] [#x4C4] [#x4C6] [#x4C8] [#x4CA] [#x4CC] [#x4CE-#x4CF] [#x4D1] [#x4D3] [#x4D5] [#x4D7] [#x4D9] [#x4DB] [#x4DD] [#x4DF] [#x4E1] [#x4E3] [#x4E5] [#x4E7] [#x4E9] [#x4EB] [#x4ED] [#x4EF] [#x4F1] [#x4F3] [#x4F5] [#x4F7] [#x4F9] [#x4FB] [#x4FD] [#x4FF] [#x501] [#x503] [#x505] [#x507] [#x509] [#x50B] [#x50D] [#x50F] [#x511] [#x513] [#x515] [#x517] [#x519] [#x51B] [#x51D] [#x51F] [#x521] [#x523] [#x525] [#x527] [#x529] [#x52B] [#x52D] [#x52F] [#x560-#x588] [#x10D0-#x10FA] [#x10FD-#x10FF] [#x13F8-#x13FD] [#x1C80-#x1C88] [#x1D00-#x1D2B] [#x1D6B-#x1D77] [#x1D79-#x1D9A] [#x1E01] [#x1E03] [#x1E05] [#x1E07] [#x1E09] [#x1E0B] [#x1E0D] [#x1E0F] [#x1E11] [#x1E13] [#x1E15] [#x1E17] [#x1E19] [#x1E1B] [#x1E1D] [#x1E1F] [#x1E21] [#x1E23] [#x1E25] [#x1E27] [#x1E29] [#x1E2B] [#x1E2D] [#x1E2F] [#x1E31] [#x1E33] [#x1E35] [#x1E37] [#x1E39] [#x1E3B] [#x1E3D] [#x1E3F] [#x1E41] [#x1E43] [#x1E45] [#x1E47] [#x1E49] [#x1E4B] [#x1E4D] [#x1E4F] [#x1E51] [#x1E53] [#x1E55] [#x1E57] [#x1E59] [#x1E5B] [#x1E5D] [#x1E5F] [#x1E61] [#x1E63] [#x1E65] [#x1E67] [#x1E69] [#x1E6B] [#x1E6D] [#x1E6F] [#x1E71] [#x1E73] [#x1E75] [#x1E77] [#x1E79] [#x1E7B] [#x1E7D] [#x1E7F] [#x1E81] [#x1E83] [#x1E85] [#x1E87] [#x1E89] [#x1E8B] [#x1E8D] [#x1E8F] [#x1E91] [#x1E93] [#x1E95-#x1E9D] [#x1E9F] [#x1EA1] [#x1EA3] [#x1EA5] [#x1EA7] [#x1EA9] [#x1EAB] [#x1EAD] [#x1EAF] [#x1EB1] [#x1EB3] [#x1EB5] [#x1EB7] [#x1EB9] [#x1EBB] [#x1EBD] [#x1EBF] [#x1EC1] [#x1EC3] [#x1EC5] [#x1EC7] [#x1EC9] [#x1ECB] [#x1ECD] [#x1ECF] [#x1ED1] [#x1ED3] [#x1ED5] [#x1ED7] [#x1ED9] [#x1EDB] [#x1EDD] [#x1EDF] [#x1EE1] [#x1EE3] [#x1EE5] [#x1EE7] [#x1EE9] [#x1EEB] [#x1EED] [#x1EEF] [#x1EF1] [#x1EF3] [#x1EF5] [#x1EF7] [#x1EF9] [#x1EFB] [#x1EFD] [#x1EFF-#x1F07] [#x1F10-#x1F15] [#x1F20-#x1F27] [#x1F30-#x1F37] [#x1F40-#x1F45] [#x1F50-#x1F57] [#x1F60-#x1F67] [#x1F70-#x1F7D] [#x1F80-#x1F87] [#x1F90-#x1F97] [#x1FA0-#x1FA7] [#x1FB0-#x1FB4] [#x1FB6-#x1FB7] [#x1FBE] [#x1FC2-#x1FC4] [#x1FC6-#x1FC7] [#x1FD0-#x1FD3] [#x1FD6-#x1FD7] [#x1FE0-#x1FE7] [#x1FF2-#x1FF4] [#x1FF6-#x1FF7] [#x210A] [#x210E-#x210F] [#x2113] [#x212F] [#x2134] [#x2139] [#x213C-#x213D] [#x2146-#x2149] [#x214E] [#x2184] [#x2C30-#x2C5F] [#x2C61] [#x2C65-#x2C66] [#x2C68] [#x2C6A] [#x2C6C] [#x2C71] [#x2C73-#x2C74] [#x2C76-#x2C7B] [#x2C81] [#x2C83] [#x2C85] [#x2C87] [#x2C89] [#x2C8B] [#x2C8D] [#x2C8F] [#x2C91] [#x2C93] [#x2C95] [#x2C97] [#x2C99] [#x2C9B] [#x2C9D] [#x2C9F] [#x2CA1] [#x2CA3] [#x2CA5] [#x2CA7] [#x2CA9] [#x2CAB] [#x2CAD] [#x2CAF] [#x2CB1] [#x2CB3] [#x2CB5] [#x2CB7] [#x2CB9] [#x2CBB] [#x2CBD] [#x2CBF] [#x2CC1] [#x2CC3] [#x2CC5] [#x2CC7] [#x2CC9] [#x2CCB] [#x2CCD] [#x2CCF] [#x2CD1] [#x2CD3] [#x2CD5] [#x2CD7] [#x2CD9] [#x2CDB] [#x2CDD] [#x2CDF] [#x2CE1] [#x2CE3-#x2CE4] [#x2CEC] [#x2CEE] [#x2CF3] [#x2D00-#x2D25] [#x2D27] [#x2D2D] [#xA641] [#xA643] [#xA645] [#xA647] [#xA649] [#xA64B] [#xA64D] [#xA64F] [#xA651] [#xA653] [#xA655] [#xA657] [#xA659] [#xA65B] [#xA65D] [#xA65F] [#xA661] [#xA663] [#xA665] [#xA667] [#xA669] [#xA66B] [#xA66D] [#xA681] [#xA683] [#xA685] [#xA687] [#xA689] [#xA68B] [#xA68D] [#xA68F] [#xA691] [#xA693] [#xA695] [#xA697] [#xA699] [#xA69B] [#xA723] [#xA725] [#xA727] [#xA729] [#xA72B] [#xA72D] [#xA72F-#xA731] [#xA733] [#xA735] [#xA737] [#xA739] [#xA73B] [#xA73D] [#xA73F] [#xA741] [#xA743] [#xA745] [#xA747] [#xA749] [#xA74B] [#xA74D] [#xA74F] [#xA751] [#xA753] [#xA755] [#xA757] [#xA759] [#xA75B] [#xA75D] [#xA75F] [#xA761] [#xA763] [#xA765] [#xA767] [#xA769] [#xA76B] [#xA76D] [#xA76F] [#xA771-#xA778] [#xA77A] [#xA77C] [#xA77F] [#xA781] [#xA783] [#xA785] [#xA787] [#xA78C] [#xA78E] [#xA791] [#xA793-#xA795] [#xA797] [#xA799] [#xA79B] [#xA79D] [#xA79F] [#xA7A1] [#xA7A3] [#xA7A5] [#xA7A7] [#xA7A9] [#xA7AF] [#xA7B5] [#xA7B7] [#xA7B9] [#xA7BB] [#xA7BD] [#xA7BF] [#xA7C1] [#xA7C3] [#xA7C8] [#xA7CA] [#xA7D1] [#xA7D3] [#xA7D5] [#xA7D7] [#xA7D9] [#xA7F6] [#xA7FA] [#xAB30-#xAB5A] [#xAB60-#xAB68] [#xAB70-#xABBF] [#xFB00-#xFB06] [#xFB13-#xFB17] [#xFF41-#xFF5A]

Ll       ::= [a-z#xB5#xDF-#xF6#xF8-#xFF#x101#x103#x105#x107#x109#x10B#x10D#x10F#x111#x113#x115#x117#x119#x11B#x11D#x11F#x121#x123#x125#x127#x129#x12B#x12D#x12F#x131#x133#x135#x137-#x138#x13A#x13C#x13E#x140#x142#x144#x146#x148-#x149#x14B#x14D#x14F#x151#x153#x155#x157#x159#x15B#x15D#x15F#x161#x163#x165#x167#x169#x16B#x16D#x16F#x171#x173#x175#x177#x17A#x17C#x17E-#x180#x183#x185#x188#x18C-#x18D#x192#x195#x199-#x19B#x19E#x1A1#x1A3#x1A5#x1A8#x1AA-#x1AB#x1AD#x1B0#x1B4#x1B6#x1B9-#x1BA#x1BD-#x1BF#x1C6#x1C9#x1CC#x1CE#x1D0#x1D2#x1D4#x1D6#x1D8#x1DA#x1DC-#x1DD#x1DF#x1E1#x1E3#x1E5#x1E7#x1E9#x1EB#x1ED#x1EF-#x1F0#x1F3#x1F5#x1F9#x1FB#x1FD#x1FF#x201#x203#x205#x207#x209#x20B#x20D#x20F#x211#x213#x215#x217#x219#x21B#x21D#x21F#x221#x223#x225#x227#x229#x22B#x22D#x22F#x231#x233-#x239#x23C#x23F-#x240#x242#x247#x249#x24B#x24D#x24F-#x293#x295-#x2AF#x371#x373#x377#x37B-#x37D#x390#x3AC-#x3CE#x3D0-#x3D1#x3D5-#x3D7#x3D9#x3DB#x3DD#x3DF#x3E1#x3E3#x3E5#x3E7#x3E9#x3EB#x3ED#x3EF-#x3F3#x3F5#x3F8#x3FB-#x3FC#x430-#x45F#x461#x463#x465#x467#x469#x46B#x46D#x46F#x471#x473#x475#x477#x479#x47B#x47D#x47F#x481#x48B#x48D#x48F#x491#x493#x495#x497#x499#x49B#x49D#x49F#x4A1#x4A3#x4A5#x4A7#x4A9#x4AB#x4AD#x4AF#x4B1#x4B3#x4B5#x4B7#x4B9#x4BB#x4BD#x4BF#x4C2#x4C4#x4C6#x4C8#x4CA#x4CC#x4CE-#x4CF#x4D1#x4D3#x4D5#x4D7#x4D9#x4DB#x4DD#x4DF#x4E1#x4E3#x4E5#x4E7#x4E9#x4EB#x4ED#x4EF#x4F1#x4F3#x4F5#x4F7#x4F9#x4FB#x4FD#x4FF#x501#x503#x505#x507#x509#x50B#x50D#x50F#x511#x513#x515#x517#x519#x51B#x51D#x51F#x521#x523#x525#x527#x529#x52B#x52D#x52F#x560-#x588#x10D0-#x10FA#x10FD-#x10FF#x13F8-#x13FD#x1C80-#x1C88#x1D00-#x1D2B#x1D6B-#x1D77#x1D79-#x1D9A#x1E01#x1E03#x1E05#x1E07#x1E09#x1E0B#x1E0D#x1E0F#x1E11#x1E13#x1E15#x1E17#x1E19#x1E1B#x1E1D#x1E1F#x1E21#x1E23#x1E25#x1E27#x1E29#x1E2B#x1E2D#x1E2F#x1E31#x1E33#x1E35#x1E37#x1E39#x1E3B#x1E3D#x1E3F#x1E41#x1E43#x1E45#x1E47#x1E49#x1E4B#x1E4D#x1E4F#x1E51#x1E53#x1E55#x1E57#x1E59#x1E5B#x1E5D#x1E5F#x1E61#x1E63#x1E65#x1E67#x1E69#x1E6B#x1E6D#x1E6F#x1E71#x1E73#x1E75#x1E77#x1E79#x1E7B#x1E7D#x1E7F#x1E81#x1E83#x1E85#x1E87#x1E89#x1E8B#x1E8D#x1E8F#x1E91#x1E93#x1E95-#x1E9D#x1E9F#x1EA1#x1EA3#x1EA5#x1EA7#x1EA9#x1EAB#x1EAD#x1EAF#x1EB1#x1EB3#x1EB5#x1EB7#x1EB9#x1EBB#x1EBD#x1EBF#x1EC1#x1EC3#x1EC5#x1EC7#x1EC9#x1ECB#x1ECD#x1ECF#x1ED1#x1ED3#x1ED5#x1ED7#x1ED9#x1EDB#x1EDD#x1EDF#x1EE1#x1EE3#x1EE5#x1EE7#x1EE9#x1EEB#x1EED#x1EEF#x1EF1#x1EF3#x1EF5#x1EF7#x1EF9#x1EFB#x1EFD#x1EFF-#x1F07#x1F10-#x1F15#x1F20-#x1F27#x1F30-#x1F37#x1F40-#x1F45#x1F50-#x1F57#x1F60-#x1F67#x1F70-#x1F7D#x1F80-#x1F87#x1F90-#x1F97#x1FA0-#x1FA7#x1FB0-#x1FB4#x1FB6-#x1FB7#x1FBE#x1FC2-#x1FC4#x1FC6-#x1FC7#x1FD0-#x1FD3#x1FD6-#x1FD7#x1FE0-#x1FE7#x1FF2-#x1FF4#x1FF6-#x1FF7#x210A#x210E-#x210F#x2113#x212F#x2134#x2139#x213C-#x213D#x2146-#x2149#x214E#x2184#x2C30-#x2C5F#x2C61#x2C65-#x2C66#x2C68#x2C6A#x2C6C#x2C71#x2C73-#x2C74#x2C76-#x2C7B#x2C81#x2C83#x2C85#x2C87#x2C89#x2C8B#x2C8D#x2C8F#x2C91#x2C93#x2C95#x2C97#x2C99#x2C9B#x2C9D#x2C9F#x2CA1#x2CA3#x2CA5#x2CA7#x2CA9#x2CAB#x2CAD#x2CAF#x2CB1#x2CB3#x2CB5#x2CB7#x2CB9#x2CBB#x2CBD#x2CBF#x2CC1#x2CC3#x2CC5#x2CC7#x2CC9#x2CCB#x2CCD#x2CCF#x2CD1#x2CD3#x2CD5#x2CD7#x2CD9#x2CDB#x2CDD#x2CDF#x2CE1#x2CE3-#x2CE4#x2CEC#x2CEE#x2CF3#x2D00-#x2D25#x2D27#x2D2D#xA641#xA643#xA645#xA647#xA649#xA64B#xA64D#xA64F#xA651#xA653#xA655#xA657#xA659#xA65B#xA65D#xA65F#xA661#xA663#xA665#xA667#xA669#xA66B#xA66D#xA681#xA683#xA685#xA687#xA689#xA68B#xA68D#xA68F#xA691#xA693#xA695#xA697#xA699#xA69B#xA723#xA725#xA727#xA729#xA72B#xA72D#xA72F-#xA731#xA733#xA735#xA737#xA739#xA73B#xA73D#xA73F#xA741#xA743#xA745#xA747#xA749#xA74B#xA74D#xA74F#xA751#xA753#xA755#xA757#xA759#xA75B#xA75D#xA75F#xA761#xA763#xA765#xA767#xA769#xA76B#xA76D#xA76F#xA771-#xA778#xA77A#xA77C#xA77F#xA781#xA783#xA785#xA787#xA78C#xA78E#xA791#xA793-#xA795#xA797#xA799#xA79B#xA79D#xA79F#xA7A1#xA7A3#xA7A5#xA7A7#xA7A9#xA7AF#xA7B5#xA7B7#xA7B9#xA7BB#xA7BD#xA7BF#xA7C1#xA7C3#xA7C8#xA7CA#xA7D1#xA7D3#xA7D5#xA7D7#xA7D9#xA7F6#xA7FA#xAB30-#xAB5A#xAB60-#xAB68#xAB70-#xABBF#xFB00-#xFB06#xFB13-#xFB17#xFF41-#xFF5A]

Referenced by:

Lm

[#x2B0-#x2C1] [#x2C6-#x2D1] [#x2E0-#x2E4] [#x2EC] [#x2EE] [#x374] [#x37A] [#x559] [#x640] [#x6E5-#x6E6] [#x7F4-#x7F5] [#x7FA] [#x81A] [#x824] [#x828] [#x8C9] [#x971] [#xE46] [#xEC6] [#x10FC] [#x17D7] [#x1843] [#x1AA7] [#x1C78-#x1C7D] [#x1D2C-#x1D6A] [#x1D78] [#x1D9B-#x1DBF] [#x2071] [#x207F] [#x2090-#x209C] [#x2C7C-#x2C7D] [#x2D6F] [#x2E2F] [#x3005] [#x3031-#x3035] [#x303B] [#x309D-#x309E] [#x30FC-#x30FE] [#xA015] [#xA4F8-#xA4FD] [#xA60C] [#xA67F] [#xA69C-#xA69D] [#xA717-#xA71F] [#xA770] [#xA788] [#xA7F2-#xA7F4] [#xA7F8-#xA7F9] [#xA9CF] [#xA9E6] [#xAA70] [#xAADD] [#xAAF3-#xAAF4] [#xAB5C-#xAB5F] [#xAB69] [#xFF70] [#xFF9E-#xFF9F]

Lm       ::= [#x2B0-#x2C1#x2C6-#x2D1#x2E0-#x2E4#x2EC#x2EE#x374#x37A#x559#x640#x6E5-#x6E6#x7F4-#x7F5#x7FA#x81A#x824#x828#x8C9#x971#xE46#xEC6#x10FC#x17D7#x1843#x1AA7#x1C78-#x1C7D#x1D2C-#x1D6A#x1D78#x1D9B-#x1DBF#x2071#x207F#x2090-#x209C#x2C7C-#x2C7D#x2D6F#x2E2F#x3005#x3031-#x3035#x303B#x309D-#x309E#x30FC-#x30FE#xA015#xA4F8-#xA4FD#xA60C#xA67F#xA69C-#xA69D#xA717-#xA71F#xA770#xA788#xA7F2-#xA7F4#xA7F8-#xA7F9#xA9CF#xA9E6#xAA70#xAADD#xAAF3-#xAAF4#xAB5C-#xAB5F#xAB69#xFF70#xFF9E-#xFF9F]

Referenced by:

Lo

[#xAA] [#xBA] [#x1BB] [#x1C0-#x1C3] [#x294] [#x5D0-#x5EA] [#x5EF-#x5F2] [#x620-#x63F] [#x641-#x64A] [#x66E-#x66F] [#x671-#x6D3] [#x6D5] [#x6EE-#x6EF] [#x6FA-#x6FC] [#x6FF] [#x710] [#x712-#x72F] [#x74D-#x7A5] [#x7B1] [#x7CA-#x7EA] [#x800-#x815] [#x840-#x858] [#x860-#x86A] [#x870-#x887] [#x889-#x88E] [#x8A0-#x8C8] [#x904-#x939] [#x93D] [#x950] [#x958-#x961] [#x972-#x980] [#x985-#x98C] [#x98F-#x990] [#x993-#x9A8] [#x9AA-#x9B0] [#x9B2] [#x9B6-#x9B9] [#x9BD] [#x9CE] [#x9DC-#x9DD] [#x9DF-#x9E1] [#x9F0-#x9F1] [#x9FC] [#xA05-#xA0A] [#xA0F-#xA10] [#xA13-#xA28] [#xA2A-#xA30] [#xA32-#xA33] [#xA35-#xA36] [#xA38-#xA39] [#xA59-#xA5C] [#xA5E] [#xA72-#xA74] [#xA85-#xA8D] [#xA8F-#xA91] [#xA93-#xAA8] [#xAAA-#xAB0] [#xAB2-#xAB3] [#xAB5-#xAB9] [#xABD] [#xAD0] [#xAE0-#xAE1] [#xAF9] [#xB05-#xB0C] [#xB0F-#xB10] [#xB13-#xB28] [#xB2A-#xB30] [#xB32-#xB33] [#xB35-#xB39] [#xB3D] [#xB5C-#xB5D] [#xB5F-#xB61] [#xB71] [#xB83] [#xB85-#xB8A] [#xB8E-#xB90] [#xB92-#xB95] [#xB99-#xB9A] [#xB9C] [#xB9E-#xB9F] [#xBA3-#xBA4] [#xBA8-#xBAA] [#xBAE-#xBB9] [#xBD0] [#xC05-#xC0C] [#xC0E-#xC10] [#xC12-#xC28] [#xC2A-#xC39] [#xC3D] [#xC58-#xC5A] [#xC5D] [#xC60-#xC61] [#xC80] [#xC85-#xC8C] [#xC8E-#xC90] [#xC92-#xCA8] [#xCAA-#xCB3] [#xCB5-#xCB9] [#xCBD] [#xCDD-#xCDE] [#xCE0-#xCE1] [#xCF1-#xCF2] [#xD04-#xD0C] [#xD0E-#xD10] [#xD12-#xD3A] [#xD3D] [#xD4E] [#xD54-#xD56] [#xD5F-#xD61] [#xD7A-#xD7F] [#xD85-#xD96] [#xD9A-#xDB1] [#xDB3-#xDBB] [#xDBD] [#xDC0-#xDC6] [#xE01-#xE30] [#xE32-#xE33] [#xE40-#xE45] [#xE81-#xE82] [#xE84] [#xE86-#xE8A] [#xE8C-#xEA3] [#xEA5] [#xEA7-#xEB0] [#xEB2-#xEB3] [#xEBD] [#xEC0-#xEC4] [#xEDC-#xEDF] [#xF00] [#xF40-#xF47] [#xF49-#xF6C] [#xF88-#xF8C] [#x1000-#x102A] [#x103F] [#x1050-#x1055] [#x105A-#x105D] [#x1061] [#x1065-#x1066] [#x106E-#x1070] [#x1075-#x1081] [#x108E] [#x1100-#x1248] [#x124A-#x124D] [#x1250-#x1256] [#x1258] [#x125A-#x125D] [#x1260-#x1288] [#x128A-#x128D] [#x1290-#x12B0] [#x12B2-#x12B5] [#x12B8-#x12BE] [#x12C0] [#x12C2-#x12C5] [#x12C8-#x12D6] [#x12D8-#x1310] [#x1312-#x1315] [#x1318-#x135A] [#x1380-#x138F] [#x1401-#x166C] [#x166F-#x167F] [#x1681-#x169A] [#x16A0-#x16EA] [#x16F1-#x16F8] [#x1700-#x1711] [#x171F-#x1731] [#x1740-#x1751] [#x1760-#x176C] [#x176E-#x1770] [#x1780-#x17B3] [#x17DC] [#x1820-#x1842] [#x1844-#x1878] [#x1880-#x1884] [#x1887-#x18A8] [#x18AA] [#x18B0-#x18F5] [#x1900-#x191E] [#x1950-#x196D] [#x1970-#x1974] [#x1980-#x19AB] [#x19B0-#x19C9] [#x1A00-#x1A16] [#x1A20-#x1A54] [#x1B05-#x1B33] [#x1B45-#x1B4C] [#x1B83-#x1BA0] [#x1BAE-#x1BAF] [#x1BBA-#x1BE5] [#x1C00-#x1C23] [#x1C4D-#x1C4F] [#x1C5A-#x1C77] [#x1CE9-#x1CEC] [#x1CEE-#x1CF3] [#x1CF5-#x1CF6] [#x1CFA] [#x2135-#x2138] [#x2D30-#x2D67] [#x2D80-#x2D96] [#x2DA0-#x2DA6] [#x2DA8-#x2DAE] [#x2DB0-#x2DB6] [#x2DB8-#x2DBE] [#x2DC0-#x2DC6] [#x2DC8-#x2DCE] [#x2DD0-#x2DD6] [#x2DD8-#x2DDE] [#x3006] [#x303C] [#x3041-#x3096] [#x309F] [#x30A1-#x30FA] [#x30FF] [#x3105-#x312F] [#x3131-#x318E] [#x31A0-#x31BF] [#x31F0-#x31FF] [#x4DBF] [#x9FFF-#xA014] [#xA016-#xA48C] [#xA4D0-#xA4F7] [#xA500-#xA60B] [#xA610-#xA61F] [#xA62A-#xA62B] [#xA66E] [#xA6A0-#xA6E5] [#xA78F] [#xA7F7] [#xA7FB-#xA801] [#xA803-#xA805] [#xA807-#xA80A] [#xA80C-#xA822] [#xA840-#xA873] [#xA882-#xA8B3] [#xA8F2-#xA8F7] [#xA8FB] [#xA8FD-#xA8FE] [#xA90A-#xA925] [#xA930-#xA946] [#xA960-#xA97C] [#xA984-#xA9B2] [#xA9E0-#xA9E4] [#xA9E7-#xA9EF] [#xA9FA-#xA9FE] [#xAA00-#xAA28] [#xAA40-#xAA42] [#xAA44-#xAA4B] [#xAA60-#xAA6F] [#xAA71-#xAA76] [#xAA7A] [#xAA7E-#xAAAF] [#xAAB1] [#xAAB5-#xAAB6] [#xAAB9-#xAABD] [#xAAC0] [#xAAC2] [#xAADB-#xAADC] [#xAAE0-#xAAEA] [#xAAF2] [#xAB01-#xAB06] [#xAB09-#xAB0E] [#xAB11-#xAB16] [#xAB20-#xAB26] [#xAB28-#xAB2E] [#xABC0-#xABE2] [#xD7A3] [#xD7B0-#xD7C6] [#xD7CB-#xD7FB] [#xF900-#xFA6D] [#xFA70-#xFAD9] [#xFB1D] [#xFB1F-#xFB28] [#xFB2A-#xFB36] [#xFB38-#xFB3C] [#xFB3E] [#xFB40-#xFB41] [#xFB43-#xFB44] [#xFB46-#xFBB1] [#xFBD3-#xFD3D] [#xFD50-#xFD8F] [#xFD92-#xFDC7] [#xFDF0-#xFDFB] [#xFE70-#xFE74] [#xFE76-#xFEFC] [#xFF66-#xFF6F] [#xFF71-#xFF9D] [#xFFA0-#xFFBE] [#xFFC2-#xFFC7] [#xFFCA-#xFFCF] [#xFFD2-#xFFD7] [#xFFDA-#xFFDC]

Lo       ::= [#xAA#xBA#x1BB#x1C0-#x1C3#x294#x5D0-#x5EA#x5EF-#x5F2#x620-#x63F#x641-#x64A#x66E-#x66F#x671-#x6D3#x6D5#x6EE-#x6EF#x6FA-#x6FC#x6FF#x710#x712-#x72F#x74D-#x7A5#x7B1#x7CA-#x7EA#x800-#x815#x840-#x858#x860-#x86A#x870-#x887#x889-#x88E#x8A0-#x8C8#x904-#x939#x93D#x950#x958-#x961#x972-#x980#x985-#x98C#x98F-#x990#x993-#x9A8#x9AA-#x9B0#x9B2#x9B6-#x9B9#x9BD#x9CE#x9DC-#x9DD#x9DF-#x9E1#x9F0-#x9F1#x9FC#xA05-#xA0A#xA0F-#xA10#xA13-#xA28#xA2A-#xA30#xA32-#xA33#xA35-#xA36#xA38-#xA39#xA59-#xA5C#xA5E#xA72-#xA74#xA85-#xA8D#xA8F-#xA91#xA93-#xAA8#xAAA-#xAB0#xAB2-#xAB3#xAB5-#xAB9#xABD#xAD0#xAE0-#xAE1#xAF9#xB05-#xB0C#xB0F-#xB10#xB13-#xB28#xB2A-#xB30#xB32-#xB33#xB35-#xB39#xB3D#xB5C-#xB5D#xB5F-#xB61#xB71#xB83#xB85-#xB8A#xB8E-#xB90#xB92-#xB95#xB99-#xB9A#xB9C#xB9E-#xB9F#xBA3-#xBA4#xBA8-#xBAA#xBAE-#xBB9#xBD0#xC05-#xC0C#xC0E-#xC10#xC12-#xC28#xC2A-#xC39#xC3D#xC58-#xC5A#xC5D#xC60-#xC61#xC80#xC85-#xC8C#xC8E-#xC90#xC92-#xCA8#xCAA-#xCB3#xCB5-#xCB9#xCBD#xCDD-#xCDE#xCE0-#xCE1#xCF1-#xCF2#xD04-#xD0C#xD0E-#xD10#xD12-#xD3A#xD3D#xD4E#xD54-#xD56#xD5F-#xD61#xD7A-#xD7F#xD85-#xD96#xD9A-#xDB1#xDB3-#xDBB#xDBD#xDC0-#xDC6#xE01-#xE30#xE32-#xE33#xE40-#xE45#xE81-#xE82#xE84#xE86-#xE8A#xE8C-#xEA3#xEA5#xEA7-#xEB0#xEB2-#xEB3#xEBD#xEC0-#xEC4#xEDC-#xEDF#xF00#xF40-#xF47#xF49-#xF6C#xF88-#xF8C#x1000-#x102A#x103F#x1050-#x1055#x105A-#x105D#x1061#x1065-#x1066#x106E-#x1070#x1075-#x1081#x108E#x1100-#x1248#x124A-#x124D#x1250-#x1256#x1258#x125A-#x125D#x1260-#x1288#x128A-#x128D#x1290-#x12B0#x12B2-#x12B5#x12B8-#x12BE#x12C0#x12C2-#x12C5#x12C8-#x12D6#x12D8-#x1310#x1312-#x1315#x1318-#x135A#x1380-#x138F#x1401-#x166C#x166F-#x167F#x1681-#x169A#x16A0-#x16EA#x16F1-#x16F8#x1700-#x1711#x171F-#x1731#x1740-#x1751#x1760-#x176C#x176E-#x1770#x1780-#x17B3#x17DC#x1820-#x1842#x1844-#x1878#x1880-#x1884#x1887-#x18A8#x18AA#x18B0-#x18F5#x1900-#x191E#x1950-#x196D#x1970-#x1974#x1980-#x19AB#x19B0-#x19C9#x1A00-#x1A16#x1A20-#x1A54#x1B05-#x1B33#x1B45-#x1B4C#x1B83-#x1BA0#x1BAE-#x1BAF#x1BBA-#x1BE5#x1C00-#x1C23#x1C4D-#x1C4F#x1C5A-#x1C77#x1CE9-#x1CEC#x1CEE-#x1CF3#x1CF5-#x1CF6#x1CFA#x2135-#x2138#x2D30-#x2D67#x2D80-#x2D96#x2DA0-#x2DA6#x2DA8-#x2DAE#x2DB0-#x2DB6#x2DB8-#x2DBE#x2DC0-#x2DC6#x2DC8-#x2DCE#x2DD0-#x2DD6#x2DD8-#x2DDE#x3006#x303C#x3041-#x3096#x309F#x30A1-#x30FA#x30FF#x3105-#x312F#x3131-#x318E#x31A0-#x31BF#x31F0-#x31FF#x4DBF#x9FFF-#xA014#xA016-#xA48C#xA4D0-#xA4F7#xA500-#xA60B#xA610-#xA61F#xA62A-#xA62B#xA66E#xA6A0-#xA6E5#xA78F#xA7F7#xA7FB-#xA801#xA803-#xA805#xA807-#xA80A#xA80C-#xA822#xA840-#xA873#xA882-#xA8B3#xA8F2-#xA8F7#xA8FB#xA8FD-#xA8FE#xA90A-#xA925#xA930-#xA946#xA960-#xA97C#xA984-#xA9B2#xA9E0-#xA9E4#xA9E7-#xA9EF#xA9FA-#xA9FE#xAA00-#xAA28#xAA40-#xAA42#xAA44-#xAA4B#xAA60-#xAA6F#xAA71-#xAA76#xAA7A#xAA7E-#xAAAF#xAAB1#xAAB5-#xAAB6#xAAB9-#xAABD#xAAC0#xAAC2#xAADB-#xAADC#xAAE0-#xAAEA#xAAF2#xAB01-#xAB06#xAB09-#xAB0E#xAB11-#xAB16#xAB20-#xAB26#xAB28-#xAB2E#xABC0-#xABE2#xD7A3#xD7B0-#xD7C6#xD7CB-#xD7FB#xF900-#xFA6D#xFA70-#xFAD9#xFB1D#xFB1F-#xFB28#xFB2A-#xFB36#xFB38-#xFB3C#xFB3E#xFB40-#xFB41#xFB43-#xFB44#xFB46-#xFBB1#xFBD3-#xFD3D#xFD50-#xFD8F#xFD92-#xFDC7#xFDF0-#xFDFB#xFE70-#xFE74#xFE76-#xFEFC#xFF66-#xFF6F#xFF71-#xFF9D#xFFA0-#xFFBE#xFFC2-#xFFC7#xFFCA-#xFFCF#xFFD2-#xFFD7#xFFDA-#xFFDC]

Referenced by:

Lt

[#x1C5] [#x1C8] [#x1CB] [#x1F2] [#x1F88-#x1F8F] [#x1F98-#x1F9F] [#x1FA8-#x1FAF] [#x1FBC] [#x1FCC] [#x1FFC]

Lt       ::= [#x1C5#x1C8#x1CB#x1F2#x1F88-#x1F8F#x1F98-#x1F9F#x1FA8-#x1FAF#x1FBC#x1FCC#x1FFC]

Referenced by:

Lu

[A-Z] [#xC0-#xD6] [#xD8-#xDE] [#x100] [#x102] [#x104] [#x106] [#x108] [#x10A] [#x10C] [#x10E] [#x110] [#x112] [#x114] [#x116] [#x118] [#x11A] [#x11C] [#x11E] [#x120] [#x122] [#x124] [#x126] [#x128] [#x12A] [#x12C] [#x12E] [#x130] [#x132] [#x134] [#x136] [#x139] [#x13B] [#x13D] [#x13F] [#x141] [#x143] [#x145] [#x147] [#x14A] [#x14C] [#x14E] [#x150] [#x152] [#x154] [#x156] [#x158] [#x15A] [#x15C] [#x15E] [#x160] [#x162] [#x164] [#x166] [#x168] [#x16A] [#x16C] [#x16E] [#x170] [#x172] [#x174] [#x176] [#x178-#x179] [#x17B] [#x17D] [#x181-#x182] [#x184] [#x186-#x187] [#x189-#x18B] [#x18E-#x191] [#x193-#x194] [#x196-#x198] [#x19C-#x19D] [#x19F-#x1A0] [#x1A2] [#x1A4] [#x1A6-#x1A7] [#x1A9] [#x1AC] [#x1AE-#x1AF] [#x1B1-#x1B3] [#x1B5] [#x1B7-#x1B8] [#x1BC] [#x1C4] [#x1C7] [#x1CA] [#x1CD] [#x1CF] [#x1D1] [#x1D3] [#x1D5] [#x1D7] [#x1D9] [#x1DB] [#x1DE] [#x1E0] [#x1E2] [#x1E4] [#x1E6] [#x1E8] [#x1EA] [#x1EC] [#x1EE] [#x1F1] [#x1F4] [#x1F6-#x1F8] [#x1FA] [#x1FC] [#x1FE] [#x200] [#x202] [#x204] [#x206] [#x208] [#x20A] [#x20C] [#x20E] [#x210] [#x212] [#x214] [#x216] [#x218] [#x21A] [#x21C] [#x21E] [#x220] [#x222] [#x224] [#x226] [#x228] [#x22A] [#x22C] [#x22E] [#x230] [#x232] [#x23A-#x23B] [#x23D-#x23E] [#x241] [#x243-#x246] [#x248] [#x24A] [#x24C] [#x24E] [#x370] [#x372] [#x376] [#x37F] [#x386] [#x388-#x38A] [#x38C] [#x38E-#x38F] [#x391-#x3A1] [#x3A3-#x3AB] [#x3CF] [#x3D2-#x3D4] [#x3D8] [#x3DA] [#x3DC] [#x3DE] [#x3E0] [#x3E2] [#x3E4] [#x3E6] [#x3E8] [#x3EA] [#x3EC] [#x3EE] [#x3F4] [#x3F7] [#x3F9-#x3FA] [#x3FD-#x42F] [#x460] [#x462] [#x464] [#x466] [#x468] [#x46A] [#x46C] [#x46E] [#x470] [#x472] [#x474] [#x476] [#x478] [#x47A] [#x47C] [#x47E] [#x480] [#x48A] [#x48C] [#x48E] [#x490] [#x492] [#x494] [#x496] [#x498] [#x49A] [#x49C] [#x49E] [#x4A0] [#x4A2] [#x4A4] [#x4A6] [#x4A8] [#x4AA] [#x4AC] [#x4AE] [#x4B0] [#x4B2] [#x4B4] [#x4B6] [#x4B8] [#x4BA] [#x4BC] [#x4BE] [#x4C0-#x4C1] [#x4C3] [#x4C5] [#x4C7] [#x4C9] [#x4CB] [#x4CD] [#x4D0] [#x4D2] [#x4D4] [#x4D6] [#x4D8] [#x4DA] [#x4DC] [#x4DE] [#x4E0] [#x4E2] [#x4E4] [#x4E6] [#x4E8] [#x4EA] [#x4EC] [#x4EE] [#x4F0] [#x4F2] [#x4F4] [#x4F6] [#x4F8] [#x4FA] [#x4FC] [#x4FE] [#x500] [#x502] [#x504] [#x506] [#x508] [#x50A] [#x50C] [#x50E] [#x510] [#x512] [#x514] [#x516] [#x518] [#x51A] [#x51C] [#x51E] [#x520] [#x522] [#x524] [#x526] [#x528] [#x52A] [#x52C] [#x52E] [#x531-#x556] [#x10A0-#x10C5] [#x10C7] [#x10CD] [#x13A0-#x13F5] [#x1C90-#x1CBA] [#x1CBD-#x1CBF] [#x1E00] [#x1E02] [#x1E04] [#x1E06] [#x1E08] [#x1E0A] [#x1E0C] [#x1E0E] [#x1E10] [#x1E12] [#x1E14] [#x1E16] [#x1E18] [#x1E1A] [#x1E1C] [#x1E1E] [#x1E20] [#x1E22] [#x1E24] [#x1E26] [#x1E28] [#x1E2A] [#x1E2C] [#x1E2E] [#x1E30] [#x1E32] [#x1E34] [#x1E36] [#x1E38] [#x1E3A] [#x1E3C] [#x1E3E] [#x1E40] [#x1E42] [#x1E44] [#x1E46] [#x1E48] [#x1E4A] [#x1E4C] [#x1E4E] [#x1E50] [#x1E52] [#x1E54] [#x1E56] [#x1E58] [#x1E5A] [#x1E5C] [#x1E5E] [#x1E60] [#x1E62] [#x1E64] [#x1E66] [#x1E68] [#x1E6A] [#x1E6C] [#x1E6E] [#x1E70] [#x1E72] [#x1E74] [#x1E76] [#x1E78] [#x1E7A] [#x1E7C] [#x1E7E] [#x1E80] [#x1E82] [#x1E84] [#x1E86] [#x1E88] [#x1E8A] [#x1E8C] [#x1E8E] [#x1E90] [#x1E92] [#x1E94] [#x1E9E] [#x1EA0] [#x1EA2] [#x1EA4] [#x1EA6] [#x1EA8] [#x1EAA] [#x1EAC] [#x1EAE] [#x1EB0] [#x1EB2] [#x1EB4] [#x1EB6] [#x1EB8] [#x1EBA] [#x1EBC] [#x1EBE] [#x1EC0] [#x1EC2] [#x1EC4] [#x1EC6] [#x1EC8] [#x1ECA] [#x1ECC] [#x1ECE] [#x1ED0] [#x1ED2] [#x1ED4] [#x1ED6] [#x1ED8] [#x1EDA] [#x1EDC] [#x1EDE] [#x1EE0] [#x1EE2] [#x1EE4] [#x1EE6] [#x1EE8] [#x1EEA] [#x1EEC] [#x1EEE] [#x1EF0] [#x1EF2] [#x1EF4] [#x1EF6] [#x1EF8] [#x1EFA] [#x1EFC] [#x1EFE] [#x1F08-#x1F0F] [#x1F18-#x1F1D] [#x1F28-#x1F2F] [#x1F38-#x1F3F] [#x1F48-#x1F4D] [#x1F59] [#x1F5B] [#x1F5D] [#x1F5F] [#x1F68-#x1F6F] [#x1FB8-#x1FBB] [#x1FC8-#x1FCB] [#x1FD8-#x1FDB] [#x1FE8-#x1FEC] [#x1FF8-#x1FFB] [#x2102] [#x2107] [#x210B-#x210D] [#x2110-#x2112] [#x2115] [#x2119-#x211D] [#x2124] [#x2126] [#x2128] [#x212A-#x212D] [#x2130-#x2133] [#x213E-#x213F] [#x2145] [#x2183] [#x2C00-#x2C2F] [#x2C60] [#x2C62-#x2C64] [#x2C67] [#x2C69] [#x2C6B] [#x2C6D-#x2C70] [#x2C72] [#x2C75] [#x2C7E-#x2C80] [#x2C82] [#x2C84] [#x2C86] [#x2C88] [#x2C8A] [#x2C8C] [#x2C8E] [#x2C90] [#x2C92] [#x2C94] [#x2C96] [#x2C98] [#x2C9A] [#x2C9C] [#x2C9E] [#x2CA0] [#x2CA2] [#x2CA4] [#x2CA6] [#x2CA8] [#x2CAA] [#x2CAC] [#x2CAE] [#x2CB0] [#x2CB2] [#x2CB4] [#x2CB6] [#x2CB8] [#x2CBA] [#x2CBC] [#x2CBE] [#x2CC0] [#x2CC2] [#x2CC4] [#x2CC6] [#x2CC8] [#x2CCA] [#x2CCC] [#x2CCE] [#x2CD0] [#x2CD2] [#x2CD4] [#x2CD6] [#x2CD8] [#x2CDA] [#x2CDC] [#x2CDE] [#x2CE0] [#x2CE2] [#x2CEB] [#x2CED] [#x2CF2] [#xA640] [#xA642] [#xA644] [#xA646] [#xA648] [#xA64A] [#xA64C] [#xA64E] [#xA650] [#xA652] [#xA654] [#xA656] [#xA658] [#xA65A] [#xA65C] [#xA65E] [#xA660] [#xA662] [#xA664] [#xA666] [#xA668] [#xA66A] [#xA66C] [#xA680] [#xA682] [#xA684] [#xA686] [#xA688] [#xA68A] [#xA68C] [#xA68E] [#xA690] [#xA692] [#xA694] [#xA696] [#xA698] [#xA69A] [#xA722] [#xA724] [#xA726] [#xA728] [#xA72A] [#xA72C] [#xA72E] [#xA732] [#xA734] [#xA736] [#xA738] [#xA73A] [#xA73C] [#xA73E] [#xA740] [#xA742] [#xA744] [#xA746] [#xA748] [#xA74A] [#xA74C] [#xA74E] [#xA750] [#xA752] [#xA754] [#xA756] [#xA758] [#xA75A] [#xA75C] [#xA75E] [#xA760] [#xA762] [#xA764] [#xA766] [#xA768] [#xA76A] [#xA76C] [#xA76E] [#xA779] [#xA77B] [#xA77D-#xA77E] [#xA780] [#xA782] [#xA784] [#xA786] [#xA78B] [#xA78D] [#xA790] [#xA792] [#xA796] [#xA798] [#xA79A] [#xA79C] [#xA79E] [#xA7A0] [#xA7A2] [#xA7A4] [#xA7A6] [#xA7A8] [#xA7AA-#xA7AE] [#xA7B0-#xA7B4] [#xA7B6] [#xA7B8] [#xA7BA] [#xA7BC] [#xA7BE] [#xA7C0] [#xA7C2] [#xA7C4-#xA7C7] [#xA7C9] [#xA7D0] [#xA7D6] [#xA7D8] [#xA7F5] [#xFF21-#xFF3A]

Lu       ::= [A-Z#xC0-#xD6#xD8-#xDE#x100#x102#x104#x106#x108#x10A#x10C#x10E#x110#x112#x114#x116#x118#x11A#x11C#x11E#x120#x122#x124#x126#x128#x12A#x12C#x12E#x130#x132#x134#x136#x139#x13B#x13D#x13F#x141#x143#x145#x147#x14A#x14C#x14E#x150#x152#x154#x156#x158#x15A#x15C#x15E#x160#x162#x164#x166#x168#x16A#x16C#x16E#x170#x172#x174#x176#x178-#x179#x17B#x17D#x181-#x182#x184#x186-#x187#x189-#x18B#x18E-#x191#x193-#x194#x196-#x198#x19C-#x19D#x19F-#x1A0#x1A2#x1A4#x1A6-#x1A7#x1A9#x1AC#x1AE-#x1AF#x1B1-#x1B3#x1B5#x1B7-#x1B8#x1BC#x1C4#x1C7#x1CA#x1CD#x1CF#x1D1#x1D3#x1D5#x1D7#x1D9#x1DB#x1DE#x1E0#x1E2#x1E4#x1E6#x1E8#x1EA#x1EC#x1EE#x1F1#x1F4#x1F6-#x1F8#x1FA#x1FC#x1FE#x200#x202#x204#x206#x208#x20A#x20C#x20E#x210#x212#x214#x216#x218#x21A#x21C#x21E#x220#x222#x224#x226#x228#x22A#x22C#x22E#x230#x232#x23A-#x23B#x23D-#x23E#x241#x243-#x246#x248#x24A#x24C#x24E#x370#x372#x376#x37F#x386#x388-#x38A#x38C#x38E-#x38F#x391-#x3A1#x3A3-#x3AB#x3CF#x3D2-#x3D4#x3D8#x3DA#x3DC#x3DE#x3E0#x3E2#x3E4#x3E6#x3E8#x3EA#x3EC#x3EE#x3F4#x3F7#x3F9-#x3FA#x3FD-#x42F#x460#x462#x464#x466#x468#x46A#x46C#x46E#x470#x472#x474#x476#x478#x47A#x47C#x47E#x480#x48A#x48C#x48E#x490#x492#x494#x496#x498#x49A#x49C#x49E#x4A0#x4A2#x4A4#x4A6#x4A8#x4AA#x4AC#x4AE#x4B0#x4B2#x4B4#x4B6#x4B8#x4BA#x4BC#x4BE#x4C0-#x4C1#x4C3#x4C5#x4C7#x4C9#x4CB#x4CD#x4D0#x4D2#x4D4#x4D6#x4D8#x4DA#x4DC#x4DE#x4E0#x4E2#x4E4#x4E6#x4E8#x4EA#x4EC#x4EE#x4F0#x4F2#x4F4#x4F6#x4F8#x4FA#x4FC#x4FE#x500#x502#x504#x506#x508#x50A#x50C#x50E#x510#x512#x514#x516#x518#x51A#x51C#x51E#x520#x522#x524#x526#x528#x52A#x52C#x52E#x531-#x556#x10A0-#x10C5#x10C7#x10CD#x13A0-#x13F5#x1C90-#x1CBA#x1CBD-#x1CBF#x1E00#x1E02#x1E04#x1E06#x1E08#x1E0A#x1E0C#x1E0E#x1E10#x1E12#x1E14#x1E16#x1E18#x1E1A#x1E1C#x1E1E#x1E20#x1E22#x1E24#x1E26#x1E28#x1E2A#x1E2C#x1E2E#x1E30#x1E32#x1E34#x1E36#x1E38#x1E3A#x1E3C#x1E3E#x1E40#x1E42#x1E44#x1E46#x1E48#x1E4A#x1E4C#x1E4E#x1E50#x1E52#x1E54#x1E56#x1E58#x1E5A#x1E5C#x1E5E#x1E60#x1E62#x1E64#x1E66#x1E68#x1E6A#x1E6C#x1E6E#x1E70#x1E72#x1E74#x1E76#x1E78#x1E7A#x1E7C#x1E7E#x1E80#x1E82#x1E84#x1E86#x1E88#x1E8A#x1E8C#x1E8E#x1E90#x1E92#x1E94#x1E9E#x1EA0#x1EA2#x1EA4#x1EA6#x1EA8#x1EAA#x1EAC#x1EAE#x1EB0#x1EB2#x1EB4#x1EB6#x1EB8#x1EBA#x1EBC#x1EBE#x1EC0#x1EC2#x1EC4#x1EC6#x1EC8#x1ECA#x1ECC#x1ECE#x1ED0#x1ED2#x1ED4#x1ED6#x1ED8#x1EDA#x1EDC#x1EDE#x1EE0#x1EE2#x1EE4#x1EE6#x1EE8#x1EEA#x1EEC#x1EEE#x1EF0#x1EF2#x1EF4#x1EF6#x1EF8#x1EFA#x1EFC#x1EFE#x1F08-#x1F0F#x1F18-#x1F1D#x1F28-#x1F2F#x1F38-#x1F3F#x1F48-#x1F4D#x1F59#x1F5B#x1F5D#x1F5F#x1F68-#x1F6F#x1FB8-#x1FBB#x1FC8-#x1FCB#x1FD8-#x1FDB#x1FE8-#x1FEC#x1FF8-#x1FFB#x2102#x2107#x210B-#x210D#x2110-#x2112#x2115#x2119-#x211D#x2124#x2126#x2128#x212A-#x212D#x2130-#x2133#x213E-#x213F#x2145#x2183#x2C00-#x2C2F#x2C60#x2C62-#x2C64#x2C67#x2C69#x2C6B#x2C6D-#x2C70#x2C72#x2C75#x2C7E-#x2C80#x2C82#x2C84#x2C86#x2C88#x2C8A#x2C8C#x2C8E#x2C90#x2C92#x2C94#x2C96#x2C98#x2C9A#x2C9C#x2C9E#x2CA0#x2CA2#x2CA4#x2CA6#x2CA8#x2CAA#x2CAC#x2CAE#x2CB0#x2CB2#x2CB4#x2CB6#x2CB8#x2CBA#x2CBC#x2CBE#x2CC0#x2CC2#x2CC4#x2CC6#x2CC8#x2CCA#x2CCC#x2CCE#x2CD0#x2CD2#x2CD4#x2CD6#x2CD8#x2CDA#x2CDC#x2CDE#x2CE0#x2CE2#x2CEB#x2CED#x2CF2#xA640#xA642#xA644#xA646#xA648#xA64A#xA64C#xA64E#xA650#xA652#xA654#xA656#xA658#xA65A#xA65C#xA65E#xA660#xA662#xA664#xA666#xA668#xA66A#xA66C#xA680#xA682#xA684#xA686#xA688#xA68A#xA68C#xA68E#xA690#xA692#xA694#xA696#xA698#xA69A#xA722#xA724#xA726#xA728#xA72A#xA72C#xA72E#xA732#xA734#xA736#xA738#xA73A#xA73C#xA73E#xA740#xA742#xA744#xA746#xA748#xA74A#xA74C#xA74E#xA750#xA752#xA754#xA756#xA758#xA75A#xA75C#xA75E#xA760#xA762#xA764#xA766#xA768#xA76A#xA76C#xA76E#xA779#xA77B#xA77D-#xA77E#xA780#xA782#xA784#xA786#xA78B#xA78D#xA790#xA792#xA796#xA798#xA79A#xA79C#xA79E#xA7A0#xA7A2#xA7A4#xA7A6#xA7A8#xA7AA-#xA7AE#xA7B0-#xA7B4#xA7B6#xA7B8#xA7BA#xA7BC#xA7BE#xA7C0#xA7C2#xA7C4-#xA7C7#xA7C9#xA7D0#xA7D6#xA7D8#xA7F5#xFF21-#xFF3A]

Referenced by:

Nl

[#x16EE-#x16F0] [#x2160-#x2182] [#x2185-#x2188] [#x3007] [#x3021-#x3029] [#x3038-#x303A] [#xA6E6-#xA6EF]

Nl       ::= [#x16EE-#x16F0#x2160-#x2182#x2185-#x2188#x3007#x3021-#x3029#x3038-#x303A#xA6E6-#xA6EF]

Referenced by:

UnicodeIdentifierExtend

Mn Mc Nd Pc Cf CJK

         ::= Mn
           | Mc
           | Nd
           | Pc
           | Cf
           | CJK

Cf

[#xAD] [#x600-#x605] [#x61C] [#x6DD] [#x70F] [#x890-#x891] [#x8E2] [#x180E] [#x200B-#x200F] [#x202A-#x202E] [#x2060-#x2064] [#x2066-#x206F] [#xFEFF] [#xFFF9-#xFFFB]

Cf       ::= [#xAD#x600-#x605#x61C#x6DD#x70F#x890-#x891#x8E2#x180E#x200B-#x200F#x202A-#x202E#x2060-#x2064#x2066-#x206F#xFEFF#xFFF9-#xFFFB]

Referenced by:

Mc

[#x903] [#x93B] [#x93E-#x940] [#x949-#x94C] [#x94E-#x94F] [#x982-#x983] [#x9BE-#x9C0] [#x9C7-#x9C8] [#x9CB-#x9CC] [#x9D7] [#xA03] [#xA3E-#xA40] [#xA83] [#xABE-#xAC0] [#xAC9] [#xACB-#xACC] [#xB02-#xB03] [#xB3E] [#xB40] [#xB47-#xB48] [#xB4B-#xB4C] [#xB57] [#xBBE-#xBBF] [#xBC1-#xBC2] [#xBC6-#xBC8] [#xBCA-#xBCC] [#xBD7] [#xC01-#xC03] [#xC41-#xC44] [#xC82-#xC83] [#xCBE] [#xCC0-#xCC4] [#xCC7-#xCC8] [#xCCA-#xCCB] [#xCD5-#xCD6] [#xCF3] [#xD02-#xD03] [#xD3E-#xD40] [#xD46-#xD48] [#xD4A-#xD4C] [#xD57] [#xD82-#xD83] [#xDCF-#xDD1] [#xDD8-#xDDF] [#xDF2-#xDF3] [#xF3E-#xF3F] [#xF7F] [#x102B-#x102C] [#x1031] [#x1038] [#x103B-#x103C] [#x1056-#x1057] [#x1062-#x1064] [#x1067-#x106D] [#x1083-#x1084] [#x1087-#x108C] [#x108F] [#x109A-#x109C] [#x1715] [#x1734] [#x17B6] [#x17BE-#x17C5] [#x17C7-#x17C8] [#x1923-#x1926] [#x1929-#x192B] [#x1930-#x1931] [#x1933-#x1938] [#x1A19-#x1A1A] [#x1A55] [#x1A57] [#x1A61] [#x1A63-#x1A64] [#x1A6D-#x1A72] [#x1B04] [#x1B35] [#x1B3B] [#x1B3D-#x1B41] [#x1B43-#x1B44] [#x1B82] [#x1BA1] [#x1BA6-#x1BA7] [#x1BAA] [#x1BE7] [#x1BEA-#x1BEC] [#x1BEE] [#x1BF2-#x1BF3] [#x1C24-#x1C2B] [#x1C34-#x1C35] [#x1CE1] [#x1CF7] [#x302E-#x302F] [#xA823-#xA824] [#xA827] [#xA880-#xA881] [#xA8B4-#xA8C3] [#xA952-#xA953] [#xA983] [#xA9B4-#xA9B5] [#xA9BA-#xA9BB] [#xA9BE-#xA9C0] [#xAA2F-#xAA30] [#xAA33-#xAA34] [#xAA4D] [#xAA7B] [#xAA7D] [#xAAEB] [#xAAEE-#xAAEF] [#xAAF5] [#xABE3-#xABE4] [#xABE6-#xABE7] [#xABE9-#xABEA] [#xABEC]

Mc       ::= [#x903#x93B#x93E-#x940#x949-#x94C#x94E-#x94F#x982-#x983#x9BE-#x9C0#x9C7-#x9C8#x9CB-#x9CC#x9D7#xA03#xA3E-#xA40#xA83#xABE-#xAC0#xAC9#xACB-#xACC#xB02-#xB03#xB3E#xB40#xB47-#xB48#xB4B-#xB4C#xB57#xBBE-#xBBF#xBC1-#xBC2#xBC6-#xBC8#xBCA-#xBCC#xBD7#xC01-#xC03#xC41-#xC44#xC82-#xC83#xCBE#xCC0-#xCC4#xCC7-#xCC8#xCCA-#xCCB#xCD5-#xCD6#xCF3#xD02-#xD03#xD3E-#xD40#xD46-#xD48#xD4A-#xD4C#xD57#xD82-#xD83#xDCF-#xDD1#xDD8-#xDDF#xDF2-#xDF3#xF3E-#xF3F#xF7F#x102B-#x102C#x1031#x1038#x103B-#x103C#x1056-#x1057#x1062-#x1064#x1067-#x106D#x1083-#x1084#x1087-#x108C#x108F#x109A-#x109C#x1715#x1734#x17B6#x17BE-#x17C5#x17C7-#x17C8#x1923-#x1926#x1929-#x192B#x1930-#x1931#x1933-#x1938#x1A19-#x1A1A#x1A55#x1A57#x1A61#x1A63-#x1A64#x1A6D-#x1A72#x1B04#x1B35#x1B3B#x1B3D-#x1B41#x1B43-#x1B44#x1B82#x1BA1#x1BA6-#x1BA7#x1BAA#x1BE7#x1BEA-#x1BEC#x1BEE#x1BF2-#x1BF3#x1C24-#x1C2B#x1C34-#x1C35#x1CE1#x1CF7#x302E-#x302F#xA823-#xA824#xA827#xA880-#xA881#xA8B4-#xA8C3#xA952-#xA953#xA983#xA9B4-#xA9B5#xA9BA-#xA9BB#xA9BE-#xA9C0#xAA2F-#xAA30#xAA33-#xAA34#xAA4D#xAA7B#xAA7D#xAAEB#xAAEE-#xAAEF#xAAF5#xABE3-#xABE4#xABE6-#xABE7#xABE9-#xABEA#xABEC]

Referenced by:

Mn

[#x300-#x36F] [#x483-#x487] [#x591-#x5BD] [#x5BF] [#x5C1-#x5C2] [#x5C4-#x5C5] [#x5C7] [#x610-#x61A] [#x64B-#x65F] [#x670] [#x6D6-#x6DC] [#x6DF-#x6E4] [#x6E7-#x6E8] [#x6EA-#x6ED] [#x711] [#x730-#x74A] [#x7A6-#x7B0] [#x7EB-#x7F3] [#x7FD] [#x816-#x819] [#x81B-#x823] [#x825-#x827] [#x829-#x82D] [#x859-#x85B] [#x898-#x89F] [#x8CA-#x8E1] [#x8E3-#x902] [#x93A] [#x93C] [#x941-#x948] [#x94D] [#x951-#x957] [#x962-#x963] [#x981] [#x9BC] [#x9C1-#x9C4] [#x9CD] [#x9E2-#x9E3] [#x9FE] [#xA01-#xA02] [#xA3C] [#xA41-#xA42] [#xA47-#xA48] [#xA4B-#xA4D] [#xA51] [#xA70-#xA71] [#xA75] [#xA81-#xA82] [#xABC] [#xAC1-#xAC5] [#xAC7-#xAC8] [#xACD] [#xAE2-#xAE3] [#xAFA-#xAFF] [#xB01] [#xB3C] [#xB3F] [#xB41-#xB44] [#xB4D] [#xB55-#xB56] [#xB62-#xB63] [#xB82] [#xBC0] [#xBCD] [#xC00] [#xC04] [#xC3C] [#xC3E-#xC40] [#xC46-#xC48] [#xC4A-#xC4D] [#xC55-#xC56] [#xC62-#xC63] [#xC81] [#xCBC] [#xCBF] [#xCC6] [#xCCC-#xCCD] [#xCE2-#xCE3] [#xD00-#xD01] [#xD3B-#xD3C] [#xD41-#xD44] [#xD4D] [#xD62-#xD63] [#xD81] [#xDCA] [#xDD2-#xDD4] [#xDD6] [#xE31] [#xE34-#xE3A] [#xE47-#xE4E] [#xEB1] [#xEB4-#xEBC] [#xEC8-#xECE] [#xF18-#xF19] [#xF35] [#xF37] [#xF39] [#xF71-#xF7E] [#xF80-#xF84] [#xF86-#xF87] [#xF8D-#xF97] [#xF99-#xFBC] [#xFC6] [#x102D-#x1030] [#x1032-#x1037] [#x1039-#x103A] [#x103D-#x103E] [#x1058-#x1059] [#x105E-#x1060] [#x1071-#x1074] [#x1082] [#x1085-#x1086] [#x108D] [#x109D] [#x135D-#x135F] [#x1712-#x1714] [#x1732-#x1733] [#x1752-#x1753] [#x1772-#x1773] [#x17B4-#x17B5] [#x17B7-#x17BD] [#x17C6] [#x17C9-#x17D3] [#x17DD] [#x180B-#x180D] [#x180F] [#x1885-#x1886] [#x18A9] [#x1920-#x1922] [#x1927-#x1928] [#x1932] [#x1939-#x193B] [#x1A17-#x1A18] [#x1A1B] [#x1A56] [#x1A58-#x1A5E] [#x1A60] [#x1A62] [#x1A65-#x1A6C] [#x1A73-#x1A7C] [#x1A7F] [#x1AB0-#x1ABD] [#x1ABF-#x1ACE] [#x1B00-#x1B03] [#x1B34] [#x1B36-#x1B3A] [#x1B3C] [#x1B42] [#x1B6B-#x1B73] [#x1B80-#x1B81] [#x1BA2-#x1BA5] [#x1BA8-#x1BA9] [#x1BAB-#x1BAD] [#x1BE6] [#x1BE8-#x1BE9] [#x1BED] [#x1BEF-#x1BF1] [#x1C2C-#x1C33] [#x1C36-#x1C37] [#x1CD0-#x1CD2] [#x1CD4-#x1CE0] [#x1CE2-#x1CE8] [#x1CED] [#x1CF4] [#x1CF8-#x1CF9] [#x1DC0-#x1DFF] [#x20D0-#x20DC] [#x20E1] [#x20E5-#x20F0] [#x2CEF-#x2CF1] [#x2D7F] [#x2DE0-#x2DFF] [#x302A-#x302D] [#x3099-#x309A] [#xA66F] [#xA674-#xA67D] [#xA69E-#xA69F] [#xA6F0-#xA6F1] [#xA802] [#xA806] [#xA80B] [#xA825-#xA826] [#xA82C] [#xA8C4-#xA8C5] [#xA8E0-#xA8F1] [#xA8FF] [#xA926-#xA92D] [#xA947-#xA951] [#xA980-#xA982] [#xA9B3] [#xA9B6-#xA9B9] [#xA9BC-#xA9BD] [#xA9E5] [#xAA29-#xAA2E] [#xAA31-#xAA32] [#xAA35-#xAA36] [#xAA43] [#xAA4C] [#xAA7C] [#xAAB0] [#xAAB2-#xAAB4] [#xAAB7-#xAAB8] [#xAABE-#xAABF] [#xAAC1] [#xAAEC-#xAAED] [#xAAF6] [#xABE5] [#xABE8] [#xABED] [#xFB1E] [#xFE00-#xFE0F] [#xFE20-#xFE2F]

Mn       ::= [#x300-#x36F#x483-#x487#x591-#x5BD#x5BF#x5C1-#x5C2#x5C4-#x5C5#x5C7#x610-#x61A#x64B-#x65F#x670#x6D6-#x6DC#x6DF-#x6E4#x6E7-#x6E8#x6EA-#x6ED#x711#x730-#x74A#x7A6-#x7B0#x7EB-#x7F3#x7FD#x816-#x819#x81B-#x823#x825-#x827#x829-#x82D#x859-#x85B#x898-#x89F#x8CA-#x8E1#x8E3-#x902#x93A#x93C#x941-#x948#x94D#x951-#x957#x962-#x963#x981#x9BC#x9C1-#x9C4#x9CD#x9E2-#x9E3#x9FE#xA01-#xA02#xA3C#xA41-#xA42#xA47-#xA48#xA4B-#xA4D#xA51#xA70-#xA71#xA75#xA81-#xA82#xABC#xAC1-#xAC5#xAC7-#xAC8#xACD#xAE2-#xAE3#xAFA-#xAFF#xB01#xB3C#xB3F#xB41-#xB44#xB4D#xB55-#xB56#xB62-#xB63#xB82#xBC0#xBCD#xC00#xC04#xC3C#xC3E-#xC40#xC46-#xC48#xC4A-#xC4D#xC55-#xC56#xC62-#xC63#xC81#xCBC#xCBF#xCC6#xCCC-#xCCD#xCE2-#xCE3#xD00-#xD01#xD3B-#xD3C#xD41-#xD44#xD4D#xD62-#xD63#xD81#xDCA#xDD2-#xDD4#xDD6#xE31#xE34-#xE3A#xE47-#xE4E#xEB1#xEB4-#xEBC#xEC8-#xECE#xF18-#xF19#xF35#xF37#xF39#xF71-#xF7E#xF80-#xF84#xF86-#xF87#xF8D-#xF97#xF99-#xFBC#xFC6#x102D-#x1030#x1032-#x1037#x1039-#x103A#x103D-#x103E#x1058-#x1059#x105E-#x1060#x1071-#x1074#x1082#x1085-#x1086#x108D#x109D#x135D-#x135F#x1712-#x1714#x1732-#x1733#x1752-#x1753#x1772-#x1773#x17B4-#x17B5#x17B7-#x17BD#x17C6#x17C9-#x17D3#x17DD#x180B-#x180D#x180F#x1885-#x1886#x18A9#x1920-#x1922#x1927-#x1928#x1932#x1939-#x193B#x1A17-#x1A18#x1A1B#x1A56#x1A58-#x1A5E#x1A60#x1A62#x1A65-#x1A6C#x1A73-#x1A7C#x1A7F#x1AB0-#x1ABD#x1ABF-#x1ACE#x1B00-#x1B03#x1B34#x1B36-#x1B3A#x1B3C#x1B42#x1B6B-#x1B73#x1B80-#x1B81#x1BA2-#x1BA5#x1BA8-#x1BA9#x1BAB-#x1BAD#x1BE6#x1BE8-#x1BE9#x1BED#x1BEF-#x1BF1#x1C2C-#x1C33#x1C36-#x1C37#x1CD0-#x1CD2#x1CD4-#x1CE0#x1CE2-#x1CE8#x1CED#x1CF4#x1CF8-#x1CF9#x1DC0-#x1DFF#x20D0-#x20DC#x20E1#x20E5-#x20F0#x2CEF-#x2CF1#x2D7F#x2DE0-#x2DFF#x302A-#x302D#x3099-#x309A#xA66F#xA674-#xA67D#xA69E-#xA69F#xA6F0-#xA6F1#xA802#xA806#xA80B#xA825-#xA826#xA82C#xA8C4-#xA8C5#xA8E0-#xA8F1#xA8FF#xA926-#xA92D#xA947-#xA951#xA980-#xA982#xA9B3#xA9B6-#xA9B9#xA9BC-#xA9BD#xA9E5#xAA29-#xAA2E#xAA31-#xAA32#xAA35-#xAA36#xAA43#xAA4C#xAA7C#xAAB0#xAAB2-#xAAB4#xAAB7-#xAAB8#xAABE-#xAABF#xAAC1#xAAEC-#xAAED#xAAF6#xABE5#xABE8#xABED#xFB1E#xFE00-#xFE0F#xFE20-#xFE2F]

Referenced by:

Nd

[0-9] [#x660-#x669] [#x6F0-#x6F9] [#x7C0-#x7C9] [#x966-#x96F] [#x9E6-#x9EF] [#xA66-#xA6F] [#xAE6-#xAEF] [#xB66-#xB6F] [#xBE6-#xBEF] [#xC66-#xC6F] [#xCE6-#xCEF] [#xD66-#xD6F] [#xDE6-#xDEF] [#xE50-#xE59] [#xED0-#xED9] [#xF20-#xF29] [#x1040-#x1049] [#x1090-#x1099] [#x17E0-#x17E9] [#x1810-#x1819] [#x1946-#x194F] [#x19D0-#x19D9] [#x1A80-#x1A89] [#x1A90-#x1A99] [#x1B50-#x1B59] [#x1BB0-#x1BB9] [#x1C40-#x1C49] [#x1C50-#x1C59] [#xA620-#xA629] [#xA8D0-#xA8D9] [#xA900-#xA909] [#xA9D0-#xA9D9] [#xA9F0-#xA9F9] [#xAA50-#xAA59] [#xABF0-#xABF9] [#xFF10-#xFF19]

Nd       ::= [0-9#x660-#x669#x6F0-#x6F9#x7C0-#x7C9#x966-#x96F#x9E6-#x9EF#xA66-#xA6F#xAE6-#xAEF#xB66-#xB6F#xBE6-#xBEF#xC66-#xC6F#xCE6-#xCEF#xD66-#xD6F#xDE6-#xDEF#xE50-#xE59#xED0-#xED9#xF20-#xF29#x1040-#x1049#x1090-#x1099#x17E0-#x17E9#x1810-#x1819#x1946-#x194F#x19D0-#x19D9#x1A80-#x1A89#x1A90-#x1A99#x1B50-#x1B59#x1BB0-#x1BB9#x1C40-#x1C49#x1C50-#x1C59#xA620-#xA629#xA8D0-#xA8D9#xA900-#xA909#xA9D0-#xA9D9#xA9F0-#xA9F9#xAA50-#xAA59#xABF0-#xABF9#xFF10-#xFF19]

Pc

[#x203F-#x2040] [#x2054] [#xFE33-#xFE34] [#xFE4D-#xFE4F] [#xFF3F]

Pc       ::= [#x203F-#x2040#x2054#xFE33-#xFE34#xFE4D-#xFE4F#xFF3F]

Referenced by:

CJK

[#xAC00-#xD7A3] [#x4E00-#x9FFF]

CJK      ::= [#xAC00-#xD7A3#x4E00-#x9FFF]

ESC

\ n t b r f \ "

ESC      ::= '\' [ntbrf\"]

Referenced by:

S_CHAR_LITERAL

U E N R B RB _utf8 q'{ . }' ' ESC \' [^'\] '' [^'] ' q'( . )' q'[ . ]' q'' . ''

         ::= ( [UENRB] | 'RB' | '_utf8' )? ( "'" ( ( ESC | "\'" | [^'\] )* | ( "''" | [^'] )+ ) "'" | "q'{" .* "}'" | "q'(" .* ")'" | "q'[" .* "]'" | "q''" .* "''" )

S_QUOTED_IDENTIFIER

" "" [^"#xA#xD] " ` [^`#xA#xD] ` [ [^#x5D#xA#xD] ]

         ::= '"' ( '""' | [^"#xA#xD] )* '"'
           | '`' [^`#xA#xD]+ '`'
           | '[' [^#x5D#xA#xD]* ']'

EOF

$

EOF      ::= $

Referenced by: