direct_SQL_statement: directly_executable_statement ;
direct_SQL_statement
         ::= directly_executable_statement ';'
no referencesdirectly_executable_statement: direct_SQL_data_statement SQL_schema_statement SQL_transaction_statement SQL_connection_statement SQL_session_statement !! See the Syntax Rules.
directly_executable_statement
         ::= direct_SQL_data_statement
           | SQL_schema_statement
           | SQL_transaction_statement
           | SQL_connection_statement
           | SQL_session_statement
           | '!! See the Syntax Rules.'
referenced by: direct_SQL_statement direct_SQL_data_statement: delete_statement__searched direct_select_statement__multiple_rows insert_statement update_statement__searched truncate_table_statement merge_statement temporary_table_declaration
         ::= delete_statement__searched
           | insert_statement
           | update_statement__searched
           | truncate_table_statement
           | merge_statement
           | temporary_table_declaration
referenced by: directly_executable_statement SQL_terminal_character: SQL_language_character
         ::= SQL_language_character
no referencesSQL_language_character: simple_Latin_letter digit SQL_special_character
         ::= simple_Latin_letter
           | digit
           | SQL_special_character
referenced by: SQL_terminal_character simple_Latin_letter: simple_Latin_upper_case_letter simple_Latin_lower_case_letter
         ::= simple_Latin_upper_case_letter
           | simple_Latin_lower_case_letter
referenced by: SQL_language_character SQL_language_identifier_part SQL_language_identifier_start simple_Latin_upper_case_letter: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
         ::= 'A'
           | 'B'
           | 'C'
           | 'D'
           | 'E'
           | 'F'
           | 'G'
           | 'H'
           | 'I'
           | 'J'
           | 'K'
           | 'L'
           | 'M'
           | 'N'
           | 'O'
           | 'P'
           | 'Q'
           | 'R'
           | 'S'
           | 'T'
           | 'U'
           | 'V'
           | 'W'
           | 'X'
           | 'Y'
           | 'Z'
referenced by: SQLSTATE_char simple_Latin_letter simple_Latin_lower_case_letter: a b c d e f g h i j k l m n o p q r s t u v w x y z
         ::= 'a'
           | 'b'
           | 'c'
           | 'd'
           | 'e'
           | 'f'
           | 'g'
           | 'h'
           | 'i'
           | 'j'
           | 'k'
           | 'l'
           | 'm'
           | 'n'
           | 'o'
           | 'p'
           | 'q'
           | 'r'
           | 's'
           | 't'
           | 'u'
           | 'v'
           | 'w'
           | 'x'
           | 'y'
           | 'z'
referenced by: simple_Latin_letter digit: 0 1 2 3 4 5 6 7 8 9
digit    ::= '0'
           | '1'
           | '2'
           | '3'
           | '4'
           | '5'
           | '6'
           | '7'
           | '8'
           | '9'
referenced by: SQLSTATE_char SQL_language_character SQL_language_identifier_part hexit large_object_length_token unsigned_integer SQL_special_character: !! See the Syntax Rules. " % & ' ( ) * + , - . / : ; < = > ? [ ] ^ _ | { } $
         ::= '!! See the Syntax Rules.'
           | '"'
           | '%'
           | '&'
           | "'"
           | '('
           | ')'
           | '*'
           | '+'
           | ','
           | '-'
           | '.'
           | '/'
           | ':'
           | ';'
           | '<'
           | '='
           | '>'
           | '?'
           | '['
           | ']'
           | '^'
           | '_'
           | '|'
           | '{'
           | '}'
           | '$'
referenced by: SQL_language_character delimiter_token left_bracket_or_trigraph: [ ??(
         ::= '['
           | '??('
referenced by: array_element_reference array_type array_value_constructor_by_enumeration empty_specification multiset_value_constructor_by_enumeration target_array_element_specification update_target right_bracket_or_trigraph: ] ??)
         ::= ']'
           | '??)'
referenced by: array_element_reference array_type array_value_constructor_by_enumeration empty_specification multiset_value_constructor_by_enumeration target_array_element_specification update_target token: nondelimiter_token delimiter_token
           | delimiter_token
no referencesnondelimiter_token: regular_identifier key_word unsigned_numeric_literal national_character_string_literal binary_string_literal large_object_length_token Unicode_delimited_identifier Unicode_character_string_literal SQL_language_identifier
         ::= regular_identifier
           | key_word
           | unsigned_numeric_literal
           | national_character_string_literal
           | binary_string_literal
           | large_object_length_token
           | Unicode_delimited_identifier
           | Unicode_character_string_literal
           | SQL_language_identifier
referenced by: token regular_identifier: identifier_body
         ::= identifier_body
referenced by: actual_identifier nondelimiter_token identifier_body: identifier_start identifier_part
         ::= identifier_start identifier_part*
referenced by: regular_identifier identifier_part: identifier_start identifier_extend
         ::= identifier_start
           | identifier_extend
referenced by: identifier_body large_object_length_token: digit multiplier
         ::= digit+ multiplier
referenced by: large_object_length nondelimiter_token multiplier: K M G T P
         ::= 'K'
           | 'M'
           | 'G'
           | 'T'
           | 'P'
referenced by: large_object_length large_object_length_token delimited_identifier: " delimited_identifier_body "
         ::= '"' delimited_identifier_body '"'
referenced by: actual_identifier delimiter_token delimited_identifier_body: delimited_identifier_part
         ::= delimited_identifier_part+
referenced by: delimited_identifier delimited_identifier_part: !! See the Syntax Rules. ""
         ::= '!! See the Syntax Rules.'
           | '""'
referenced by: Unicode_identifier_part delimited_identifier_body Unicode_delimited_identifier: U & " Unicode_delimiter_body " Unicode_escape_specifier
         ::= U '&' '"' Unicode_delimiter_body '"' Unicode_escape_specifier
referenced by: actual_identifier nondelimiter_token Unicode_escape_specifier: UESCAPE ' !! See the Syntax Rules. '
         ::= ( 'UESCAPE' "'" '!! See the Syntax Rules.' "'" )?
referenced by: Unicode_character_string_literal Unicode_delimited_identifier Unicode_delimiter_body: Unicode_identifier_part
         ::= Unicode_identifier_part+
referenced by: Unicode_delimited_identifier Unicode_identifier_part: delimited_identifier_part Unicode_escape_value
         ::= delimited_identifier_part
           | Unicode_escape_value
referenced by: Unicode_delimiter_body Unicode_escape_value: Unicode_4_digit_escape_value Unicode_6_digit_escape_value Unicode_character_escape_value
         ::= Unicode_4_digit_escape_value
           | Unicode_6_digit_escape_value
           | Unicode_character_escape_value
referenced by: Unicode_identifier_part Unicode_representation Unicode_4_digit_escape_value: !! See the Syntax Rules. hexit hexit hexit hexit
         ::= '!! See the Syntax Rules.' hexit hexit hexit hexit
referenced by: Unicode_escape_value Unicode_6_digit_escape_value: !! See the Syntax Rules. + hexit hexit hexit hexit hexit hexit
         ::= '!! See the Syntax Rules.' '+' hexit hexit hexit hexit hexit hexit
referenced by: Unicode_escape_value Unicode_character_escape_value: !! See the Syntax Rules. !! See the Syntax Rules.
         ::= '!! See the Syntax Rules.' '!! See the Syntax Rules.'
referenced by: Unicode_escape_value delimiter_token: character_string_literal date_string time_string timestamp_string interval_string delimited_identifier SQL_special_character <> >= <= || -> ??( ??) :: .. => {- -}
         ::= character_string_literal
           | date_string
           | time_string
           | timestamp_string
           | interval_string
           | delimited_identifier
           | SQL_special_character
           | '<>'
           | '>='
           | '<='
           | '||'
           | '->'
           | '??('
           | '??)'
           | '::'
           | '..'
           | '=>'
           | '{-'
           | '-}'
referenced by: token separator: comment white_space
         ::= ( comment | white_space )+
referenced by: Unicode_character_string_literal binary_string_literal bracketed_comment_contents character_string_literal national_character_string_literal comment: simple_comment bracketed_comment
           | bracketed_comment
referenced by: separator simple_comment: simple_comment_introducer comment_character newline referenced by: comment simple_comment_introducer: - -
         ::= '-' '-'
referenced by: simple_comment bracketed_comment: bracketed_comment_introducer bracketed_comment_contents bracketed_comment_terminator referenced by: comment bracketed_comment_introducer:
         ::=
referenced by: bracketed_comment bracketed_comment_contents: comment_character separator !! See the Syntax Rules.
         ::= ( comment_character | separator )+ '!! See the Syntax Rules.'
referenced by: bracketed_comment comment_character: nonquote_character '
         ::= nonquote_character
           | "'"
referenced by: bracketed_comment_contents simple_comment key_word: reserved_word non_reserved_word
           | non_reserved_word
referenced by: nondelimiter_token non_reserved_word: A* ABSOLUTE* ACTION* ADA* ADD* ADMIN* AFTER* ALWAYS* ASC* ASSERTION* ASSIGNMENT* ATTRIBUTE* ATTRIBUTES* BEFORE* BERNOULLI* BREADTH* C* CASCADE* CATALOG* CATALOG_NAME* CHAIN* CHAINING* CHARACTER_SET_CATALOG* CHARACTER_SET_NAME* CHARACTER_SET_SCHEMA* CHARACTERISTICS* CHARACTERS* CLASS_ORIGIN* COBOL* COLLATION* COLLATION_CATALOG* COLLATION_NAME* COLLATION_SCHEMA* COLUMNS* COLUMN_NAME* COMMAND_FUNCTION* COMMAND_FUNCTION_CODE* COMMITTED* CONDITIONAL* CONDITION_NUMBER* CONNECTION* CONNECTION_NAME* CONSTRAINT_CATALOG* CONSTRAINT_NAME* CONSTRAINT_SCHEMA* CONSTRAINTS* CONSTRUCTOR* CONTINUE* CURSOR_NAME* DATA* DATETIME_INTERVAL_CODE* DATETIME_INTERVAL_PRECISION* DEFAULTS* DEFERRABLE* DEFERRED* DEFINED* DEFINER* DEGREE* DEPTH* DERIVED* DESC* DESCRIBE_CATALOG* DESCRIBE_NAME* DESCRIBE_PROCEDURE_SPECIFIC_CATALOG* DESCRIBE_PROCEDURE_SPECIFIC_NAME* DESCRIBE_PROCEDURE_SPECIFIC_SCHEMA* DESCRIBE_SCHEMA* DESCRIPTOR* DIAGNOSTICS* DISPATCH* DOMAIN* DYNAMIC_FUNCTION* DYNAMIC_FUNCTION_CODE* ENCODING* ENFORCED* ERROR* EXCLUDE* EXCLUDING* EXPRESSION* FINAL* FINISH* FINISH_CATALOG* FINISH_NAME* FINISH_PROCEDURE_SPECIFIC_CATALOG* FINISH_PROCEDURE_SPECIFIC_NAME* FINISH_PROCEDURE_SPECIFIC_SCHEMA* FINISH_SCHEMA* FIRST* FLAG* FOLLOWING* FORMAT* FORTRAN* FOUND* FULFILL* FULFILL_CATALOG* FULFILL_NAME* FULFILL_PROCEDURE_SPECIFIC_CATALOG* FULFILL_PROCEDURE_SPECIFIC_NAME* FULFILL_PROCEDURE_SPECIFIC_SCHEMA* FULFILL_SCHEMA* G* GENERAL* GENERATED* GO* GOTO* GRANTED* HAS_PASS_THROUGH_COLUMNS* HAS_PASS_THRU_COLS* HIERARCHY* IGNORE* IMMEDIATE* IMMEDIATELY* IMPLEMENTATION* INCLUDING* INCREMENT* INITIALLY* INPUT* INSTANCE* INSTANTIABLE* INSTEAD* INVOKER* ISOLATION* IS_PRUNABLE* JSON* K* KEEP* KEY* KEYS* KEY_MEMBER* KEY_TYPE* LAST* LENGTH* LEVEL* LOCATOR* M* MAP* MATCHED* MAXVALUE* MESSAGE_LENGTH* MESSAGE_OCTET_LENGTH* MESSAGE_TEXT* MINVALUE* MORE* MUMPS* NAME* NAMES* NESTED* NESTING* NEXT* NFC* NFD* NFKC* NFKD* NORMALIZED* NULLABLE* NULLS* NUMBER* OBJECT* OCTETS* OPTION* OPTIONS* ORDERING* ORDINALITY* OTHERS* OUTPUT* OVERFLOW* OVERRIDING* P* PAD* PARAMETER_MODE* PARAMETER_NAME* PARAMETER_ORDINAL_POSITION* PARAMETER_SPECIFIC_CATALOG* PARAMETER_SPECIFIC_NAME* PARAMETER_SPECIFIC_SCHEMA* PARTIAL* PASCAL* PASS* PASSING* PAST* PATH* PLACING* PLAN* PLI* PRECEDING* PRESERVE* PRIOR* PRIVATE* PRIVATE_PARAMETERS* PRIVATE_PARAMS_S* PRIVILEGES* PRUNE* PUBLIC* QUOTES* READ* RELATIVE* REPEATABLE* RESPECT* RESTART* RESTRICT* RETURNED_CARDINALITY* RETURNED_LENGTH* RETURNED_OCTET_LENGTH* RETURNED_SQLSTATE* RETURNING* RETURNS_ONLY_PASS_THROUGH* RET_ONLY_PASS_THRU* ROLE* ROUTINE* ROUTINE_CATALOG* ROUTINE_NAME* ROUTINE_SCHEMA* ROW_COUNT* SCALAR* SCALE* SCHEMA* SCHEMA_NAME* SCOPE_CATALOG* SCOPE_NAME* SCOPE_SCHEMA* SECTION* SECURITY* SELF* SEQUENCE* SERIALIZABLE* SERVER_NAME* SESSION* SETS* SIMPLE* SIZE* SOURCE* SPACE* SPECIFIC_NAME* START_CATALOG* START_NAME* START_PROCEDURE_SPECIFIC_CATALOG* START_PROCEDURE_SPECIFIC_NAME* START_PROCEDURE_SPECIFIC_SCHEMA* START_SCHEMA* STATE* STATEMENT* STRING* STRUCTURE* STYLE* SUBCLASS_ORIGIN* T* TABLE_NAME* TABLE_SEMANTICS* TEMPORARY* THROUGH* TIES* TOP_LEVEL_COUNT* TRANSACTION* TRANSACTION_ACTIVE* TRANSACTIONS_COMMITTED* TRANSACTIONS_ROLLED_BACK* TRANSFORM* TRANSFORMS* TRIGGER_CATALOG* TRIGGER_NAME* TRIGGER_SCHEMA* TYPE* UNBOUNDED* UNCOMMITTED* UNCONDITIONAL* UNDER* UNNAMED* USAGE* USER_DEFINED_TYPE_CATALOG* USER_DEFINED_TYPE_CODE* USER_DEFINED_TYPE_NAME* USER_DEFINED_TYPE_SCHEMA* UTF16* UTF32* UTF8* VIEW* WORK* WRAPPER* WRITE* ZONE*
         ::= 'A*'
           | 'ABSOLUTE*'
           | 'ACTION*'
           | 'ADA*'
           | 'ADD*'
           | 'ADMIN*'
           | 'AFTER*'
           | 'ALWAYS*'
           | 'ASC*'
           | 'ASSERTION*'
           | 'ASSIGNMENT*'
           | 'ATTRIBUTE*'
           | 'ATTRIBUTES*'
           | 'BEFORE*'
           | 'BERNOULLI*'
           | 'BREADTH*'
           | 'C*'
           | 'CASCADE*'
           | 'CATALOG*'
           | 'CATALOG_NAME*'
           | 'CHAIN*'
           | 'CHAINING*'
           | 'CHARACTER_SET_CATALOG*'
           | 'CHARACTER_SET_NAME*'
           | 'CHARACTER_SET_SCHEMA*'
           | 'CHARACTERISTICS*'
           | 'CHARACTERS*'
           | 'CLASS_ORIGIN*'
           | 'COBOL*'
           | 'COLLATION*'
           | 'COLLATION_CATALOG*'
           | 'COLLATION_NAME*'
           | 'COLLATION_SCHEMA*'
           | 'COLUMNS*'
           | 'COLUMN_NAME*'
           | 'COMMAND_FUNCTION*'
           | 'COMMAND_FUNCTION_CODE*'
           | 'COMMITTED*'
           | 'CONDITIONAL*'
           | 'CONDITION_NUMBER*'
           | 'CONNECTION*'
           | 'CONNECTION_NAME*'
           | 'CONSTRAINT_CATALOG*'
           | 'CONSTRAINT_NAME*'
           | 'CONSTRAINT_SCHEMA*'
           | 'CONSTRAINTS*'
           | 'CONSTRUCTOR*'
           | 'CONTINUE*'
           | 'CURSOR_NAME*'
           | 'DATA*'
           | 'DATETIME_INTERVAL_CODE*'
           | 'DATETIME_INTERVAL_PRECISION*'
           | 'DEFAULTS*'
           | 'DEFERRABLE*'
           | 'DEFERRED*'
           | 'DEFINED*'
           | 'DEFINER*'
           | 'DEGREE*'
           | 'DEPTH*'
           | 'DERIVED*'
           | 'DESC*'
           | 'DESCRIBE_CATALOG*'
           | 'DESCRIBE_NAME*'
           | 'DESCRIBE_PROCEDURE_SPECIFIC_CATALOG*'
           | 'DESCRIBE_PROCEDURE_SPECIFIC_NAME*'
           | 'DESCRIBE_PROCEDURE_SPECIFIC_SCHEMA*'
           | 'DESCRIBE_SCHEMA*'
           | 'DESCRIPTOR*'
           | 'DIAGNOSTICS*'
           | 'DISPATCH*'
           | 'DOMAIN*'
           | 'DYNAMIC_FUNCTION*'
           | 'DYNAMIC_FUNCTION_CODE*'
           | 'ENCODING*'
           | 'ENFORCED*'
           | 'ERROR*'
           | 'EXCLUDE*'
           | 'EXCLUDING*'
           | 'EXPRESSION*'
           | 'FINAL*'
           | 'FINISH*'
           | 'FINISH_CATALOG*'
           | 'FINISH_NAME*'
           | 'FINISH_PROCEDURE_SPECIFIC_CATALOG*'
           | 'FINISH_PROCEDURE_SPECIFIC_NAME*'
           | 'FINISH_PROCEDURE_SPECIFIC_SCHEMA*'
           | 'FINISH_SCHEMA*'
           | 'FIRST*'
           | 'FLAG*'
           | 'FOLLOWING*'
           | 'FORMAT*'
           | 'FORTRAN*'
           | 'FOUND*'
           | 'FULFILL*'
           | 'FULFILL_CATALOG*'
           | 'FULFILL_NAME*'
           | 'FULFILL_PROCEDURE_SPECIFIC_CATALOG*'
           | 'FULFILL_PROCEDURE_SPECIFIC_NAME*'
           | 'FULFILL_PROCEDURE_SPECIFIC_SCHEMA*'
           | 'FULFILL_SCHEMA*'
           | 'G*'
           | 'GENERAL*'
           | 'GENERATED*'
           | 'GO*'
           | 'GOTO*'
           | 'GRANTED*'
           | 'HAS_PASS_THROUGH_COLUMNS*'
           | 'HAS_PASS_THRU_COLS*'
           | 'HIERARCHY*'
           | 'IGNORE*'
           | 'IMMEDIATE*'
           | 'IMMEDIATELY*'
           | 'IMPLEMENTATION*'
           | 'INCLUDING*'
           | 'INCREMENT*'
           | 'INITIALLY*'
           | 'INPUT*'
           | 'INSTANCE*'
           | 'INSTANTIABLE*'
           | 'INSTEAD*'
           | 'INVOKER*'
           | 'ISOLATION*'
           | 'IS_PRUNABLE*'
           | 'JSON*'
           | 'K*'
           | 'KEEP*'
           | 'KEY*'
           | 'KEYS*'
           | 'KEY_MEMBER*'
           | 'KEY_TYPE*'
           | 'LAST*'
           | 'LENGTH*'
           | 'LEVEL*'
           | 'LOCATOR*'
           | 'M*'
           | 'MAP*'
           | 'MATCHED*'
           | 'MAXVALUE*'
           | 'MESSAGE_LENGTH*'
           | 'MESSAGE_OCTET_LENGTH*'
           | 'MESSAGE_TEXT*'
           | 'MINVALUE*'
           | 'MORE*'
           | 'MUMPS*'
           | 'NAME*'
           | 'NAMES*'
           | 'NESTED*'
           | 'NESTING*'
           | 'NEXT*'
           | 'NFC*'
           | 'NFD*'
           | 'NFKC*'
           | 'NFKD*'
           | 'NORMALIZED*'
           | 'NULLABLE*'
           | 'NULLS*'
           | 'NUMBER*'
           | 'OBJECT*'
           | 'OCTETS*'
           | 'OPTION*'
           | 'OPTIONS*'
           | 'ORDERING*'
           | 'ORDINALITY*'
           | 'OTHERS*'
           | 'OUTPUT*'
           | 'OVERFLOW*'
           | 'OVERRIDING*'
           | 'P*'
           | 'PAD*'
           | 'PARAMETER_MODE*'
           | 'PARAMETER_NAME*'
           | 'PARAMETER_ORDINAL_POSITION*'
           | 'PARAMETER_SPECIFIC_CATALOG*'
           | 'PARAMETER_SPECIFIC_NAME*'
           | 'PARAMETER_SPECIFIC_SCHEMA*'
           | 'PARTIAL*'
           | 'PASCAL*'
           | 'PASS*'
           | 'PASSING*'
           | 'PAST*'
           | 'PATH*'
           | 'PLACING*'
           | 'PLAN*'
           | 'PLI*'
           | 'PRECEDING*'
           | 'PRESERVE*'
           | 'PRIOR*'
           | 'PRIVATE*'
           | 'PRIVATE_PARAMETERS*'
           | 'PRIVATE_PARAMS_S*'
           | 'PRIVILEGES*'
           | 'PRUNE*'
           | 'PUBLIC*'
           | 'QUOTES*'
           | 'READ*'
           | 'RELATIVE*'
           | 'REPEATABLE*'
           | 'RESPECT*'
           | 'RESTART*'
           | 'RESTRICT*'
           | 'RETURNED_CARDINALITY*'
           | 'RETURNED_LENGTH*'
           | 'RETURNED_OCTET_LENGTH*'
           | 'RETURNED_SQLSTATE*'
           | 'RETURNING*'
           | 'RETURNS_ONLY_PASS_THROUGH*'
           | 'RET_ONLY_PASS_THRU*'
           | 'ROLE*'
           | 'ROUTINE*'
           | 'ROUTINE_CATALOG*'
           | 'ROUTINE_NAME*'
           | 'ROUTINE_SCHEMA*'
           | 'ROW_COUNT*'
           | 'SCALAR*'
           | 'SCALE*'
           | 'SCHEMA*'
           | 'SCHEMA_NAME*'
           | 'SCOPE_CATALOG*'
           | 'SCOPE_NAME*'
           | 'SCOPE_SCHEMA*'
           | 'SECTION*'
           | 'SECURITY*'
           | 'SELF*'
           | 'SEQUENCE*'
           | 'SERIALIZABLE*'
           | 'SERVER_NAME*'
           | 'SESSION*'
           | 'SETS*'
           | 'SIMPLE*'
           | 'SIZE*'
           | 'SOURCE*'
           | 'SPACE*'
           | 'SPECIFIC_NAME*'
           | 'START_CATALOG*'
           | 'START_NAME*'
           | 'START_PROCEDURE_SPECIFIC_CATALOG*'
           | 'START_PROCEDURE_SPECIFIC_NAME*'
           | 'START_PROCEDURE_SPECIFIC_SCHEMA*'
           | 'START_SCHEMA*'
           | 'STATE*'
           | 'STATEMENT*'
           | 'STRING*'
           | 'STRUCTURE*'
           | 'STYLE*'
           | 'SUBCLASS_ORIGIN*'
           | 'T*'
           | 'TABLE_NAME*'
           | 'TABLE_SEMANTICS*'
           | 'TEMPORARY*'
           | 'THROUGH*'
           | 'TIES*'
           | 'TOP_LEVEL_COUNT*'
           | 'TRANSACTION*'
           | 'TRANSACTION_ACTIVE*'
           | 'TRANSACTIONS_COMMITTED*'
           | 'TRANSACTIONS_ROLLED_BACK*'
           | 'TRANSFORM*'
           | 'TRANSFORMS*'
           | 'TRIGGER_CATALOG*'
           | 'TRIGGER_NAME*'
           | 'TRIGGER_SCHEMA*'
           | 'TYPE*'
           | 'UNBOUNDED*'
           | 'UNCOMMITTED*'
           | 'UNCONDITIONAL*'
           | 'UNDER*'
           | 'UNNAMED*'
           | 'USAGE*'
           | 'USER_DEFINED_TYPE_CATALOG*'
           | 'USER_DEFINED_TYPE_CODE*'
           | 'USER_DEFINED_TYPE_NAME*'
           | 'USER_DEFINED_TYPE_SCHEMA*'
           | 'UTF16*'
           | 'UTF32*'
           | 'UTF8*'
           | 'VIEW*'
           | 'WORK*'
           | 'WRAPPER*'
           | 'WRITE*'
           | 'ZONE*'
referenced by: key_word reserved_word: ABS ACOS ALL ALLOCATE ALTER AND ANY ARE ARRAY ARRAY_AGG ARRAY_MAX_CARDINALITY AS ASENSITIVE ASIN ASYMMETRIC AT ATAN ATOMIC AUTHORIZATION AVG BEGIN BEGIN_FRAME BEGIN_PARTITION BETWEEN BIGINT BINARY BLOB BOOLEAN BOTH BY CALL CALLED CARDINALITY CASCADED CASE CAST CEIL CEILING CHAR CHAR_LENGTH CHARACTER CHARACTER_LENGTH CHECK CLASSIFIER CLOB CLOSE COALESCE COLLATE COLLECT COLUMN COMMIT CONDITION CONNECT CONSTRAINT CONTAINS CONVERT COPY CORR CORRESPONDING COS COSH COUNT COVAR_POP COVAR_SAMP CREATE CROSS CUBE CUME_DIST CURRENT CURRENT_CATALOG CURRENT_DATE CURRENT_DEFAULT_TRANSFORM_GROUP CURRENT_PATH CURRENT_ROLE CURRENT_ROW CURRENT_SCHEMA CURRENT_TIME CURRENT_TIMESTAMP CURRENT_PATH CURRENT_ROLE CURRENT_TRANSFORM_GROUP_FOR_TYPE CURRENT_USER CURSOR CYCLE DATE DAY DEALLOCATE DEC DECIMAL DECFLOAT DECLARE DEFAULT DEFINE DELETE DENSE_RANK DEREF DESCRIBE DETERMINISTIC DISCONNECT DISTINCT DOUBLE DROP DYNAMIC EACH ELEMENT ELSE EMPTY END END_FRAME END_PARTITION END-EXEC EQUALS ESCAPE EVERY EXCEPT EXEC EXECUTE EXISTS EXP EXTERNAL EXTRACT FALSE FETCH FILTER FIRST_VALUE FLOAT FLOOR FOR FOREIGN FRAME_ROW FREE FROM FULL FUNCTION FUSION GET GLOBAL GRANT GROUP GROUPING GROUPS HAVING HOLD HOUR IDENTITY IN INDICATOR INITIAL INNER INOUT INSENSITIVE INSERT INT INTEGER INTERSECT INTERSECTION INTERVAL INTO IS JOIN JSON_ARRAY JSON_ARRAYAGG JSON_EXISTS JSON_OBJECT JSON_OBJECTAGG JSON_QUERY JSON_TABLE JSON_TABLE_PRIMITIVE JSON_VALUE LAG LANGUAGE LARGE LAST_VALUE LATERAL LEAD LEADING LEFT LIKE LIKE_REGEX LISTAGG LN LOCAL LOCALTIME LOCALTIMESTAMP LOG LOG10 LOWER MATCH MATCH_NUMBER MATCH_RECOGNIZE MATCHES MAX MEMBER MERGE METHOD MIN MINUTE MOD MODIFIES MODULE MONTH MULTISET NATIONAL NATURAL NCHAR NCLOB NEW NO NONE NORMALIZE NOT NTH_VALUE NTILE NULL NULLIF NUMERIC OCTET_LENGTH OCCURRENCES_REGEX OF OFFSET OLD OMIT ON ONE ONLY OPEN OR ORDER OUT OUTER OVER OVERLAPS OVERLAY PARAMETER PARTITION PATTERN PER PERCENT PERCENT_RANK PERCENTILE_CONT PERCENTILE_DISC PERIOD PORTION POSITION POSITION_REGEX POWER PRECEDES PRECISION PREPARE PRIMARY PROCEDURE PTF RANGE RANK READS REAL RECURSIVE REF REFERENCES REFERENCING REGR_AVGX REGR_AVGY REGR_COUNT REGR_INTERCEPT REGR_R2 REGR_SLOPE REGR_SXX REGR_SXY REGR_SYY RELEASE RESULT RETURN RETURNS REVOKE RIGHT ROLLBACK ROLLUP ROW ROW_NUMBER ROWS RUNNING SAVEPOINT SCOPE SCROLL SEARCH SECOND SEEK SELECT SENSITIVE SESSION_USER SET SHOW SIMILAR SIN SINH SKIP SMALLINT SOME SPECIFIC SPECIFICTYPE SQL SQLEXCEPTION SQLSTATE SQLWARNING SQRT START STATIC STDDEV_POP STDDEV_SAMP SUBMULTISET SUBSET SUBSTRING SUBSTRING_REGEX SUCCEEDS SUM SYMMETRIC SYSTEM SYSTEM_TIME SYSTEM_USER TABLE TABLESAMPLE TAN TANH THEN TIME TIMESTAMP TIMEZONE_HOUR TIMEZONE_MINUTE TO TRAILING TRANSLATE TRANSLATE_REGEX TRANSLATION TREAT TRIGGER TRIM TRIM_ARRAY TRUE TRUNCATE UESCAPE UNION UNIQUE UNKNOWN UNNEST UPDATE UPPER USER USING VALUE VALUES VALUE_OF VAR_POP VAR_SAMP VARBINARY VARCHAR VARYING VERSIONING WHEN WHENEVER WHERE WIDTH_BUCKET WINDOW WITH WITHIN WITHOUT YEAR
         ::= 'ABS'
           | 'ACOS'
           | 'ALL'
           | 'ALLOCATE'
           | 'ALTER'
           | 'AND'
           | 'ANY'
           | 'ARE'
           | 'ARRAY'
           | 'ARRAY_AGG'
           | 'ARRAY_MAX_CARDINALITY'
           | 'AS'
           | 'ASENSITIVE'
           | 'ASIN'
           | 'ASYMMETRIC'
           | 'AT'
           | 'ATAN'
           | 'ATOMIC'
           | 'AUTHORIZATION'
           | 'AVG'
           | 'BEGIN'
           | 'BEGIN_FRAME'
           | 'BEGIN_PARTITION'
           | 'BETWEEN'
           | 'BIGINT'
           | 'BINARY'
           | 'BLOB'
           | 'BOOLEAN'
           | 'BOTH'
           | 'BY'
           | 'CALL'
           | 'CALLED'
           | 'CARDINALITY'
           | 'CASCADED'
           | 'CASE'
           | 'CAST'
           | 'CEIL'
           | 'CEILING'
           | 'CHAR'
           | 'CHAR_LENGTH'
           | 'CHARACTER'
           | 'CHARACTER_LENGTH'
           | 'CHECK'
           | 'CLASSIFIER'
           | 'CLOB'
           | 'CLOSE'
           | 'COALESCE'
           | 'COLLATE'
           | 'COLLECT'
           | 'COLUMN'
           | 'COMMIT'
           | 'CONDITION'
           | 'CONNECT'
           | 'CONSTRAINT'
           | 'CONTAINS'
           | 'CONVERT'
           | 'COPY'
           | 'CORR'
           | 'CORRESPONDING'
           | 'COS'
           | 'COSH'
           | 'COUNT'
           | 'COVAR_POP'
           | 'COVAR_SAMP'
           | 'CREATE'
           | 'CROSS'
           | 'CUBE'
           | 'CUME_DIST'
           | 'CURRENT'
           | 'CURRENT_CATALOG'
           | 'CURRENT_DATE'
           | 'CURRENT_DEFAULT_TRANSFORM_GROUP'
           | CURRENT_PATH
           | CURRENT_ROLE
           | 'CURRENT_ROW'
           | 'CURRENT_SCHEMA'
           | 'CURRENT_TIME'
           | 'CURRENT_TIMESTAMP'
           | CURRENT_PATH
           | CURRENT_ROLE
           | 'CURRENT_TRANSFORM_GROUP_FOR_TYPE'
           | 'CURRENT_USER'
           | 'CURSOR'
           | 'CYCLE'
           | 'DATE'
           | 'DAY'
           | 'DEALLOCATE'
           | 'DEC'
           | 'DECIMAL'
           | 'DECFLOAT'
           | 'DECLARE'
           | 'DEFAULT'
           | 'DEFINE'
           | 'DELETE'
           | 'DENSE_RANK'
           | 'DEREF'
           | 'DESCRIBE'
           | 'DETERMINISTIC'
           | 'DISCONNECT'
           | 'DISTINCT'
           | 'DOUBLE'
           | 'DROP'
           | 'DYNAMIC'
           | 'EACH'
           | 'ELEMENT'
           | 'ELSE'
           | 'EMPTY'
           | 'END'
           | 'END_FRAME'
           | 'END_PARTITION'
           | 'END-EXEC'
           | 'EQUALS'
           | 'ESCAPE'
           | 'EVERY'
           | 'EXCEPT'
           | 'EXEC'
           | 'EXECUTE'
           | 'EXISTS'
           | 'EXP'
           | 'EXTERNAL'
           | 'EXTRACT'
           | 'FALSE'
           | 'FETCH'
           | 'FILTER'
           | 'FIRST_VALUE'
           | 'FLOAT'
           | 'FLOOR'
           | 'FOR'
           | 'FOREIGN'
           | 'FRAME_ROW'
           | 'FREE'
           | 'FROM'
           | 'FULL'
           | 'FUNCTION'
           | 'FUSION'
           | 'GET'
           | 'GLOBAL'
           | 'GRANT'
           | 'GROUP'
           | 'GROUPING'
           | 'GROUPS'
           | 'HAVING'
           | 'HOLD'
           | 'HOUR'
           | 'IDENTITY'
           | 'IN'
           | 'INDICATOR'
           | 'INITIAL'
           | 'INNER'
           | 'INOUT'
           | 'INSENSITIVE'
           | 'INSERT'
           | 'INT'
           | 'INTEGER'
           | 'INTERSECT'
           | 'INTERSECTION'
           | 'INTERVAL'
           | 'INTO'
           | 'IS'
           | 'JOIN'
           | 'JSON_ARRAY'
           | 'JSON_ARRAYAGG'
           | 'JSON_EXISTS'
           | 'JSON_OBJECT'
           | 'JSON_OBJECTAGG'
           | 'JSON_QUERY'
           | 'JSON_TABLE'
           | 'JSON_TABLE_PRIMITIVE'
           | 'JSON_VALUE'
           | 'LAG'
           | 'LANGUAGE'
           | 'LARGE'
           | 'LAST_VALUE'
           | 'LATERAL'
           | 'LEAD'
           | 'LEADING'
           | 'LEFT'
           | 'LIKE'
           | 'LIKE_REGEX'
           | 'LISTAGG'
           | 'LN'
           | 'LOCAL'
           | 'LOCALTIME'
           | 'LOCALTIMESTAMP'
           | 'LOG'
           | 'LOG10'
           | 'LOWER'
           | 'MATCH'
           | 'MATCH_NUMBER'
           | 'MATCH_RECOGNIZE'
           | 'MATCHES'
           | 'MAX'
           | 'MEMBER'
           | 'MERGE'
           | 'METHOD'
           | 'MIN'
           | 'MINUTE'
           | 'MOD'
           | 'MODIFIES'
           | 'MODULE'
           | 'MONTH'
           | 'MULTISET'
           | 'NATIONAL'
           | 'NATURAL'
           | 'NCHAR'
           | 'NCLOB'
           | 'NEW'
           | 'NO'
           | 'NONE'
           | 'NORMALIZE'
           | 'NOT'
           | 'NTH_VALUE'
           | 'NTILE'
           | 'NULL'
           | 'NULLIF'
           | 'NUMERIC'
           | 'OCTET_LENGTH'
           | 'OCCURRENCES_REGEX'
           | 'OF'
           | 'OFFSET'
           | 'OLD'
           | 'OMIT'
           | 'ON'
           | 'ONE'
           | 'ONLY'
           | 'OPEN'
           | 'OR'
           | 'ORDER'
           | 'OUT'
           | 'OUTER'
           | 'OVER'
           | 'OVERLAPS'
           | 'OVERLAY'
           | 'PARAMETER'
           | 'PARTITION'
           | 'PATTERN'
           | 'PER'
           | 'PERCENT'
           | 'PERCENT_RANK'
           | 'PERCENTILE_CONT'
           | 'PERCENTILE_DISC'
           | 'PERIOD'
           | 'PORTION'
           | 'POSITION'
           | 'POSITION_REGEX'
           | 'POWER'
           | 'PRECEDES'
           | 'PRECISION'
           | 'PREPARE'
           | 'PRIMARY'
           | 'PROCEDURE'
           | 'PTF'
           | 'RANGE'
           | 'RANK'
           | 'READS'
           | 'REAL'
           | 'RECURSIVE'
           | 'REF'
           | 'REFERENCES'
           | 'REFERENCING'
           | 'REGR_AVGX'
           | 'REGR_AVGY'
           | 'REGR_COUNT'
           | 'REGR_INTERCEPT'
           | 'REGR_R2'
           | 'REGR_SLOPE'
           | 'REGR_SXX'
           | 'REGR_SXY'
           | 'REGR_SYY'
           | 'RELEASE'
           | 'RESULT'
           | 'RETURN'
           | 'RETURNS'
           | 'REVOKE'
           | 'RIGHT'
           | 'ROLLBACK'
           | 'ROLLUP'
           | 'ROW'
           | 'ROW_NUMBER'
           | 'ROWS'
           | 'RUNNING'
           | 'SAVEPOINT'
           | 'SCOPE'
           | 'SCROLL'
           | 'SEARCH'
           | 'SECOND'
           | 'SEEK'
           | 'SELECT'
           | 'SENSITIVE'
           | 'SESSION_USER'
           | 'SET'
           | 'SHOW'
           | 'SIMILAR'
           | 'SIN'
           | 'SINH'
           | 'SKIP'
           | 'SMALLINT'
           | 'SOME'
           | 'SPECIFIC'
           | 'SPECIFICTYPE'
           | 'SQL'
           | 'SQLEXCEPTION'
           | 'SQLSTATE'
           | 'SQLWARNING'
           | 'SQRT'
           | 'START'
           | 'STATIC'
           | 'STDDEV_POP'
           | 'STDDEV_SAMP'
           | 'SUBMULTISET'
           | 'SUBSET'
           | 'SUBSTRING'
           | 'SUBSTRING_REGEX'
           | 'SUCCEEDS'
           | 'SUM'
           | 'SYMMETRIC'
           | 'SYSTEM'
           | 'SYSTEM_TIME'
           | 'SYSTEM_USER'
           | 'TABLE'
           | 'TABLESAMPLE'
           | 'TAN'
           | 'TANH'
           | 'THEN'
           | 'TIME'
           | 'TIMESTAMP'
           | 'TIMEZONE_HOUR'
           | 'TIMEZONE_MINUTE'
           | 'TO'
           | 'TRAILING'
           | 'TRANSLATE'
           | 'TRANSLATE_REGEX'
           | 'TRANSLATION'
           | 'TREAT'
           | 'TRIGGER'
           | 'TRIM'
           | 'TRIM_ARRAY'
           | 'TRUE'
           | 'TRUNCATE'
           | 'UESCAPE'
           | 'UNION'
           | 'UNIQUE'
           | 'UNKNOWN'
           | 'UNNEST'
           | 'UPDATE'
           | 'UPPER'
           | 'USER'
           | 'USING'
           | 'VALUE'
           | 'VALUES'
           | 'VALUE_OF'
           | 'VAR_POP'
           | 'VAR_SAMP'
           | 'VARBINARY'
           | 'VARCHAR'
           | 'VARYING'
           | 'VERSIONING'
           | 'WHEN'
           | 'WHENEVER'
           | 'WHERE'
           | 'WIDTH_BUCKET'
           | 'WINDOW'
           | 'WITH'
           | 'WITHIN'
           | 'WITHOUT'
           | 'YEAR'
referenced by: key_word literal: signed_numeric_literal general_literal
           | general_literal
referenced by: default_option simple_value_specification value_specification unsigned_literal: unsigned_numeric_literal general_literal
         ::= unsigned_numeric_literal
           | general_literal
referenced by: unsigned_value_specification general_literal: character_string_literal national_character_string_literal Unicode_character_string_literal binary_string_literal datetime_literal interval_literal boolean_literal
         ::= character_string_literal
           | national_character_string_literal
           | Unicode_character_string_literal
           | binary_string_literal
           | datetime_literal
           | interval_literal
           | boolean_literal
referenced by: literal unsigned_literal character_string_literal: _ character_set_specification ' character_representation ' separator
         ::= ( '_' character_set_specification )? "'" character_representation* "'" ( separator "'" character_representation* "'" )*
referenced by: JSON_path_specification cast_template delimiter_token external_routine_name general_literal listagg_separator listagg_truncation_filler character_representation: nonquote_character quote_symbol
         ::= nonquote_character
           | quote_symbol
referenced by: Ada_initial_value COBOL_variable_definition C_initial_value PL_I_variable_definition Unicode_representation character_string_literal national_character_string_literal quote_symbol: ' '
         ::= "'" "'"
referenced by: character_representation national_character_string_literal: N ' character_representation ' separator
         ::= 'N' "'" character_representation* "'" ( separator "'" character_representation* "'" )*
referenced by: general_literal nondelimiter_token Unicode_character_string_literal: _ character_set_specification U & ' Unicode_representation ' separator Unicode_escape_specifier referenced by: general_literal nondelimiter_token Unicode_representation: character_representation Unicode_escape_value
         ::= character_representation
           | Unicode_escape_value
referenced by: Unicode_character_string_literal binary_string_literal: X ' !! See the Syntax Rules. hexit !! See the Syntax Rules. hexit ' separator
         ::= 'X' "'" '!! See the Syntax Rules.'* ( hexit '!! See the Syntax Rules.'* hexit '!! See the Syntax Rules.'* )* "'" ( separator "'" '!! See the Syntax Rules.'* ( hexit '!! See the Syntax Rules.'* hexit '!! See the Syntax Rules.'* )* "'" )*
referenced by: general_literal nondelimiter_token hexit: digit A B C D E F a b c d e f
hexit    ::= digit
           | 'A'
           | 'B'
           | 'C'
           | 'D'
           | 'E'
           | 'F'
           | 'a'
           | 'b'
           | 'c'
           | 'd'
           | 'e'
           | 'f'
referenced by: Unicode_4_digit_escape_value Unicode_6_digit_escape_value binary_string_literal signed_numeric_literal: sign unsigned_numeric_literal
         ::= sign? unsigned_numeric_literal
referenced by: literal sequence_generator_increment sequence_generator_max_value sequence_generator_min_value sequence_generator_restart_value sequence_generator_start_value unsigned_numeric_literal: exact_numeric_literal approximate_numeric_literal
         ::= exact_numeric_literal
           | approximate_numeric_literal
referenced by: nondelimiter_token signed_numeric_literal unsigned_literal exact_numeric_literal: unsigned_integer . unsigned_integer . unsigned_integer
         ::= unsigned_integer ( '.' unsigned_integer? )?
           | '.' unsigned_integer
referenced by: mantissa offset unsigned_numeric_literal sign: + -
sign     ::= '+'
           | '-'
referenced by: factor interval_factor interval_literal signed_integer signed_numeric_literal time_zone_interval unquoted_interval_string approximate_numeric_literal: mantissa E exponent
         ::= mantissa 'E' exponent
referenced by: unsigned_numeric_literal mantissa: exact_numeric_literal referenced by: approximate_numeric_literal exponent: signed_integer referenced by: approximate_numeric_literal signed_integer: sign unsigned_integer
         ::= sign? unsigned_integer
referenced by: exponent unsigned_integer: digit
         ::= digit+
referenced by: datetime_value exact_numeric_literal goto_target high_value interval_fractional_seconds_precision interval_leading_field_precision large_object_length length low_value maximum_cardinality maximum_returned_result_sets precision row_pattern_quantifier scale seconds_fraction seconds_integer_value signed_integer time_fractional_seconds_precision datetime_literal: date_literal time_literal timestamp_literal
         ::= date_literal
           | time_literal
           | timestamp_literal
referenced by: general_literal date_literal: DATE date_string
         ::= 'DATE' date_string
referenced by: datetime_literal time_literal: TIME time_string
         ::= 'TIME' time_string
referenced by: datetime_literal timestamp_literal: TIMESTAMP timestamp_string
         ::= 'TIMESTAMP' timestamp_string
referenced by: datetime_literal date_string: ' unquoted_date_string '
         ::= "'" unquoted_date_string "'"
referenced by: date_literal delimiter_token time_string: ' unquoted_time_string '
         ::= "'" unquoted_time_string "'"
referenced by: delimiter_token time_literal timestamp_string: ' unquoted_timestamp_string '
         ::= "'" unquoted_timestamp_string "'"
referenced by: delimiter_token timestamp_literal time_zone_interval: sign hours_value : minutes_value
         ::= sign hours_value ':' minutes_value
referenced by: unquoted_time_string date_value: years_value - months_value - days_value
         ::= years_value '-' months_value '-' days_value
referenced by: unquoted_date_string time_value: hours_value : minutes_value : seconds_value
         ::= hours_value ':' minutes_value ':' seconds_value
referenced by: unquoted_time_string interval_literal: INTERVAL sign interval_string interval_qualifier
         ::= 'INTERVAL' sign? interval_string interval_qualifier
referenced by: general_literal interval_string: ' unquoted_interval_string '
         ::= "'" unquoted_interval_string "'"
referenced by: delimiter_token interval_literal unquoted_date_string: date_value
         ::= date_value
referenced by: date_string unquoted_timestamp_string unquoted_time_string: time_value time_zone_interval
         ::= time_value time_zone_interval?
referenced by: time_string unquoted_timestamp_string unquoted_timestamp_string: unquoted_date_string !! See the Syntax Rules. unquoted_time_string
         ::= unquoted_date_string '!! See the Syntax Rules.' unquoted_time_string
referenced by: timestamp_string unquoted_interval_string: sign year_month_literal day_time_literal
         ::= sign? ( year_month_literal | day_time_literal )
referenced by: interval_string year_month_literal: years_value - months_value months_value
         ::= years_value ( '-' months_value )?
           | months_value
referenced by: unquoted_interval_string day_time_literal: day_time_interval time_interval
         ::= day_time_interval
           | time_interval
referenced by: unquoted_interval_string day_time_interval: days_value !! See the Syntax Rules. hours_value : minutes_value : seconds_value
         ::= days_value ( '!! See the Syntax Rules.' hours_value ( ':' minutes_value ( ':' seconds_value )? )? )?
referenced by: day_time_literal time_interval: hours_value : minutes_value : seconds_value minutes_value : seconds_value seconds_value
         ::= hours_value ( ':' minutes_value ( ':' seconds_value )? )?
           | minutes_value ( ':' seconds_value )?
           | seconds_value
referenced by: day_time_literal years_value: datetime_value
         ::= datetime_value
referenced by: date_value year_month_literal months_value: datetime_value
         ::= datetime_value
referenced by: date_value year_month_literal days_value: datetime_value
         ::= datetime_value
referenced by: date_value day_time_interval hours_value: datetime_value
         ::= datetime_value
referenced by: day_time_interval time_interval time_value time_zone_interval minutes_value: datetime_value
         ::= datetime_value
referenced by: day_time_interval time_interval time_value time_zone_interval seconds_value: seconds_integer_value . seconds_fraction
         ::= seconds_integer_value ( '.' seconds_fraction? )?
referenced by: day_time_interval time_interval time_value seconds_integer_value: unsigned_integer
         ::= unsigned_integer
referenced by: seconds_value seconds_fraction: unsigned_integer
         ::= unsigned_integer
referenced by: seconds_value datetime_value: unsigned_integer
         ::= unsigned_integer
referenced by: days_value hours_value minutes_value months_value years_value boolean_literal: TRUE FALSE UNKNOWN
         ::= 'TRUE'
           | 'FALSE'
           | 'UNKNOWN'
referenced by: general_literal identifier: actual_identifier
         ::= actual_identifier
referenced by: JSON_argument JSON_table_path_name SQL_client_module_name SQL_parameter_name application_time_period_name asterisked_identifier attribute_name cast_to_distinct_identifier cast_to_ref_identifier cast_to_source_identifier cast_to_type_identifier catalog_name column_name correlation_name external_routine_name field_name group_name host_parameter_name identifier_chain measure_name method_name non_extended_descriptor_name procedure_name qualified_identifier query_name regular_character_set_identifier role_name savepoint_name statement_name transition_table_name unqualified_schema_name user_identifier window_name actual_identifier: regular_identifier delimited_identifier Unicode_delimited_identifier
         ::= regular_identifier
           | delimited_identifier
           | Unicode_delimited_identifier
referenced by: identifier SQL_language_identifier: SQL_language_identifier_start SQL_language_identifier_part referenced by: character_set_name nondelimiter_token SQL_language_identifier_start: simple_Latin_letter
         ::= simple_Latin_letter
referenced by: SQL_language_identifier SQL_language_identifier_part: simple_Latin_letter digit _
         ::= simple_Latin_letter
           | digit
           | '_'
referenced by: SQL_language_identifier authorization_identifier: role_name user_identifier
         ::= role_name
           | user_identifier
referenced by: grantee module_authorization_identifier schema_authorization_identifier table_name: local_or_schema_qualified_name
         ::= local_or_schema_qualified_name
referenced by: alter_table_statement drop_table_statement drop_view_statement insertion_target like_clause object_name range_variable referenced_table_and_columns scope_clause subview_clause supertable_name table_definition table_or_query_name target_table temporary_table_declaration trigger_definition view_definition domain_name: schema_qualified_name
         ::= schema_qualified_name
referenced by: alter_domain_statement cast_target data_type_or_domain_name domain_definition drop_domain_statement object_name schema_name: catalog_name . unqualified_schema_name
         ::= ( catalog_name '.' )? unqualified_schema_name
referenced by: character_set_name drop_schema_statement embedded_authorization_clause local_or_schema_qualifier module_authorization_clause routine_name schema_name_clause schema_name_list schema_qualified_name specific_method_name user_defined_type_name unqualified_schema_name: identifier
         ::= identifier
referenced by: schema_name catalog_name: identifier
         ::= identifier
referenced by: schema_name schema_qualified_name: schema_name . qualified_identifier
         ::= ( schema_name '.' )? qualified_identifier
referenced by: collation_name constraint_name domain_name schema_qualified_routine_name sequence_generator_name specific_name transcoding_name transliteration_name trigger_name local_or_schema_qualified_name: local_or_schema_qualifier . qualified_identifier
         ::= ( local_or_schema_qualifier '.' )? qualified_identifier
referenced by: table_name local_or_schema_qualifier: schema_name MODULE
         ::= schema_name
           | 'MODULE'
referenced by: local_or_schema_qualified_name qualified_identifier: identifier
         ::= identifier
referenced by: attribute_or_method_reference column_reference local_or_schema_qualified_name local_qualified_name routine_name schema_qualified_name specific_method_name user_defined_type_name column_name: identifier
         ::= identifier
referenced by: JSON_table_formatted_column_definition JSON_table_ordinality_column_definition JSON_table_primitive_chaining_column JSON_table_regular_column_definition alter_column_definition as_clause column_definition column_name_list column_options column_reference cycle_column cycle_mark_column descriptor_column_specification drop_column_definition object_column path_column period_begin_column_name period_end_column_name self_referencing_column_name sequence_column table_function_column_list_element view_column_option correlation_name: identifier
         ::= identifier
referenced by: correlation_or_recognition delete_statement__positioned delete_statement__searched join_correlation_name merge_correlation_name new_transition_variable_name old_transition_variable_name range_variable row_pattern_input_name row_pattern_output_name row_pattern_variable_name table_argument_correlation_name table_primary update_statement__positioned update_statement__searched query_name: identifier
         ::= identifier
referenced by: range_variable table_or_query_name with_list_element SQL_client_module_name: identifier
         ::= identifier
referenced by: module_name_clause procedure_name: identifier
         ::= identifier
referenced by: externally_invoked_procedure schema_qualified_routine_name: schema_qualified_name
         ::= schema_qualified_name
referenced by: SQL_invoked_procedure function_specification member_name_alternatives method_name: identifier
         ::= identifier
referenced by: direct_invocation generalized_invocation member_name_alternatives method_reference method_specification_designator mutated_set_clause partial_method_specification specific_method_specification_designator static_method_invocation specific_name: schema_qualified_name
         ::= schema_qualified_name
referenced by: routine_characteristic specific_routine_designator state_category cursor_name: local_qualified_name
         ::= local_qualified_name
referenced by: allocate_received_cursor_statement close_statement conventional_dynamic_cursor_name declare_cursor delete_statement__positioned described_object dynamic_declare_cursor fetch_statement open_statement preparable_dynamic_cursor_name update_statement__positioned local_qualified_name: MODULE . qualified_identifier
         ::= ( 'MODULE' '.' )? qualified_identifier
referenced by: cursor_name host_parameter_name: : identifier
         ::= ':' identifier
referenced by: host_parameter_declaration host_parameter_specification indicator_parameter locator_reference simple_target_specification simple_value_specification SQL_parameter_name: identifier
         ::= identifier
referenced by: SQL_parameter_declaration named_argument_specification constraint_name: schema_qualified_name
         ::= schema_qualified_name
referenced by: SQL_condition alter_table_constraint_definition assertion_definition constraint_name_definition constraint_name_list drop_assertion_statement drop_domain_constraint_definition drop_table_constraint_definition external_routine_name: identifier character_string_literal
         ::= identifier
           | character_string_literal
referenced by: alter_routine_characteristic external_body_reference trigger_name: schema_qualified_name
         ::= schema_qualified_name
referenced by: drop_trigger_statement trigger_definition collation_name: schema_qualified_name
         ::= schema_qualified_name
referenced by: collate_clause collation_definition drop_collation_statement existing_collation_name module_collation_specification object_name character_set_name: schema_name . SQL_language_identifier
         ::= ( schema_name '.' )? SQL_language_identifier
referenced by: character_set_definition drop_character_set_statement implementation_defined_character_set_name object_name standard_character_set_name user_defined_character_set_name transliteration_name: schema_qualified_name
         ::= schema_qualified_name
referenced by: character_transliteration drop_transliteration_statement existing_transliteration_name object_name transliteration_definition transcoding_name: schema_qualified_name
         ::= schema_qualified_name
referenced by: transcoding schema_resolved_user_defined_type_name: user_defined_type_name
         ::= user_defined_type_name
referenced by: alter_transform_statement alter_type_statement drop_data_type_statement drop_transform_statement drop_user_defined_ordering_statement method_specification_designator object_name specific_routine_designator transform_definition user_defined_ordering_definition user_defined_type_body user_defined_type_name: schema_name . qualified_identifier
         ::= ( schema_name '.' )? qualified_identifier
referenced by: path_resolved_user_defined_type_name schema_resolved_user_defined_type_name attribute_name: identifier
         ::= identifier
referenced by: attribute_definition dereference_operation drop_attribute_definition list_of_attributes field_name: identifier
         ::= identifier
referenced by: field_definition field_reference savepoint_name: identifier
         ::= identifier
referenced by: savepoint_specifier sequence_generator_name: schema_qualified_name
         ::= schema_qualified_name
referenced by: alter_sequence_generator_statement drop_sequence_generator_statement next_value_expression object_name sequence_generator_definition role_name: identifier
         ::= identifier
referenced by: authorization_identifier drop_role_statement role_definition role_granted role_revoked user_identifier: identifier
         ::= identifier
referenced by: authorization_identifier connection_name: simple_value_specification
         ::= simple_value_specification
referenced by: connection_object connection_target SQL_server_name: simple_value_specification
         ::= simple_value_specification
referenced by: connection_target connection_user_name: simple_value_specification
         ::= simple_value_specification
referenced by: connection_target SQL_statement_name: statement_name extended_statement_name
         ::= statement_name
           | extended_statement_name
referenced by: deallocate_prepared_statement describe_input_statement described_object execute_statement prepare_statement statement_name: identifier
         ::= identifier
referenced by: SQL_statement_name dynamic_declare_cursor extended_statement_name: scope_option simple_value_specification referenced by: SQL_statement_name allocate_extended_dynamic_cursor_statement dynamic_cursor_name: conventional_dynamic_cursor_name PTF_cursor_name
         ::= conventional_dynamic_cursor_name
           | PTF_cursor_name
referenced by: dynamic_fetch_statement conventional_dynamic_cursor_name: cursor_name extended_cursor_name
         ::= cursor_name
           | extended_cursor_name
referenced by: dynamic_close_statement dynamic_cursor_name dynamic_delete_statement__positioned dynamic_open_statement dynamic_update_statement__positioned extended_cursor_name: scope_option simple_value_specification referenced by: allocate_extended_dynamic_cursor_statement conventional_dynamic_cursor_name PTF_cursor_name: PTF simple_value_specification
         ::= 'PTF' simple_value_specification
referenced by: dynamic_cursor_name descriptor_name: conventional_descriptor_name PTF_descriptor_name
         ::= conventional_descriptor_name
           | PTF_descriptor_name
referenced by: get_descriptor_statement into_descriptor set_descriptor_statement source_descriptor_name using_descriptor conventional_descriptor_name: non_extended_descriptor_name extended_descriptor_name
         ::= non_extended_descriptor_name
           | extended_descriptor_name
referenced by: allocate_descriptor_statement deallocate_descriptor_statement descriptor_name non_extended_descriptor_name: identifier
         ::= identifier
referenced by: conventional_descriptor_name extended_descriptor_name: scope_option simple_value_specification referenced by: conventional_descriptor_name scope_option: GLOBAL LOCAL
         ::= 'GLOBAL'
           | 'LOCAL'
referenced by: extended_cursor_name extended_descriptor_name extended_statement_name preparable_dynamic_cursor_name PTF_descriptor_name: PTF simple_value_specification
         ::= 'PTF' simple_value_specification
referenced by: descriptor_name pipe_row_statement target_descriptor_name window_name: identifier
         ::= identifier
referenced by: existing_window_name new_window_name window_name_or_specification row_pattern_variable_name: correlation_name
         ::= correlation_name
referenced by: classifier_function row_pattern_count_function row_pattern_definition_variable_name row_pattern_primary_variable_name row_pattern_skip_to_variable_name row_pattern_subset_item_variable_name row_pattern_subset_rhs_variable_name measure_name: identifier
         ::= identifier
referenced by: row_pattern_measure_definition window_row_pattern_measure data_type: predefined_type row_type path_resolved_user_defined_type_name reference_type collection_type
         ::= predefined_type
           | row_type
           | path_resolved_user_defined_type_name
           | reference_type
           | collection_type
referenced by: JSON_output_clause JSON_returning_clause JSON_table_formatted_column_definition JSON_table_regular_column_definition alter_column_data_type_clause array_type attribute_definition cast_target data_type_list data_type_or_domain_name descriptor_column_specification field_definition generalized_invocation host_parameter_data_type multiset_type parameter_type result_cast_from_type returns_data_type sequence_generator_data_type_option source_data_type table_function_column_list_element target_data_type predefined_type: character_string_type CHARACTER SET character_set_specification national_character_string_type collate_clause binary_string_type numeric_type BOOLEAN datetime_type interval_type
           | binary_string_type
           | numeric_type
           | 'BOOLEAN'
           | datetime_type
           | interval_type
referenced by: Ada_user_defined_type_variable COBOL_user_defined_type_variable C_user_defined_type_variable Fortran_user_defined_type_variable MUMPS_user_defined_type_variable PL_I_user_defined_type_variable Pascal_user_defined_type_variable data_type domain_definition representation user_defined_representation character_string_type: CHARACTER CHAR VARYING ( character_length ) VARCHAR ( character_length ) character_large_object_type
         ::= ( 'CHARACTER' | 'CHAR' ) ( 'VARYING'? '(' character_length ')' )?
           | 'VARCHAR' '(' character_length ')'
           | character_large_object_type
referenced by: predefined_type character_large_object_type: CHARACTER CHAR LARGE OBJECT* CLOB ( character_large_object_length )
         ::= ( ( 'CHARACTER' | 'CHAR' ) 'LARGE' 'OBJECT*' | 'CLOB' ) ( '(' character_large_object_length ')' )?
referenced by: character_string_type national_character_string_type: NATIONAL CHARACTER CHAR NCHAR VARYING ( character_length ) national_character_large_object_type
         ::= ( 'NATIONAL' ( 'CHARACTER' | 'CHAR' ) | 'NCHAR' ) ( 'VARYING'? '(' character_length ')' )?
           | national_character_large_object_type
referenced by: predefined_type national_character_large_object_type: NATIONAL CHARACTER NCHAR LARGE OBJECT* NCLOB ( character_large_object_length )
         ::= ( ( 'NATIONAL' 'CHARACTER' | 'NCHAR' ) 'LARGE' 'OBJECT*' | 'NCLOB' ) ( '(' character_large_object_length ')' )?
referenced by: national_character_string_type binary_string_type: BINARY VARYING ( length ) VARBINARY ( length ) binary_large_object_string_type
         ::= 'BINARY' ( 'VARYING'? '(' length ')' )?
           | 'VARBINARY' '(' length ')'
           | binary_large_object_string_type
referenced by: predefined_type binary_large_object_string_type: BINARY LARGE OBJECT* BLOB ( large_object_length )
         ::= ( 'BINARY' 'LARGE' 'OBJECT*' | 'BLOB' ) ( '(' large_object_length ')' )?
referenced by: binary_string_type numeric_type: exact_numeric_type approximate_numeric_type decimal_floating_point_type
         ::= exact_numeric_type
           | approximate_numeric_type
           | decimal_floating_point_type
referenced by: predefined_type exact_numeric_type: NUMERIC DECIMAL DEC ( precision , scale ) SMALLINT INTEGER INT BIGINT
         ::= ( 'NUMERIC' | 'DECIMAL' | 'DEC' ) ( '(' precision ( ',' scale )? ')' )?
           | 'SMALLINT'
           | 'INTEGER'
           | 'INT'
           | 'BIGINT'
referenced by: numeric_type approximate_numeric_type: FLOAT ( precision ) REAL DOUBLE PRECISION
         ::= 'FLOAT' ( '(' precision ')' )?
           | 'REAL'
           | 'DOUBLE' 'PRECISION'
referenced by: numeric_type decimal_floating_point_type: DECFLOAT ( precision )
         ::= 'DECFLOAT' ( '(' precision ')' )?
referenced by: numeric_type length: unsigned_integer referenced by: Ada_BINARY_variable Ada_VARBINARY_variable COBOL_BINARY_variable COBOL_nines C_BINARY_variable C_VARBINARY_variable Fortran_BINARY_variable Fortran_VARBINARY_variable PL_I_BINARY_variable PL_I_VARBINARY_variable Pascal_BINARY_variable binary_string_type character_length character_length: length char_length_units
         ::= length char_length_units?
referenced by: Ada_qualified_type_specification Ada_unqualified_type_specification COBOL_character_type COBOL_national_character_type C_array_specification Fortran_type_specification MUMPS_length_specification PL_I_type_specification Pascal_type_specification character_string_type national_character_string_type normalize_function_result_length large_object_length: unsigned_integer multiplier large_object_length_token
         ::= unsigned_integer multiplier?
           | large_object_length_token
referenced by: Ada_BLOB_variable COBOL_BLOB_variable C_BLOB_variable Fortran_BLOB_variable PL_I_BLOB_variable Pascal_BLOB_variable binary_large_object_string_type character_large_object_length character_large_object_length: large_object_length char_length_units
         ::= large_object_length char_length_units?
referenced by: Ada_CLOB_variable COBOL_CLOB_variable COBOL_NCLOB_variable C_CLOB_variable C_NCLOB_variable Fortran_CLOB_variable PL_I_CLOB_variable Pascal_CLOB_variable character_large_object_type national_character_large_object_type normalize_function_result_length char_length_units: CHARACTERS* OCTETS*
         ::= 'CHARACTERS*'
           | 'OCTETS*'
referenced by: char_length_expression character_large_object_length character_length character_overlay_function character_position_expression character_substring_function regex_occurrences_function regex_position_expression regex_substring_function regex_transliteration precision: unsigned_integer
         ::= unsigned_integer
referenced by: MUMPS_type_specification PL_I_type_specification approximate_numeric_type decimal_floating_point_type exact_numeric_type scale: unsigned_integer referenced by: MUMPS_type_specification PL_I_type_specification exact_numeric_type datetime_type: DATE TIME ( time_precision ) TIMESTAMP ( timestamp_precision ) with_or_without_time_zone
         ::= 'DATE'
           | ( 'TIME' ( '(' time_precision ')' )? | 'TIMESTAMP' ( '(' timestamp_precision ')' )? ) with_or_without_time_zone?
referenced by: predefined_type with_or_without_time_zone: WITH WITHOUT TIME ZONE*
         ::= ( 'WITH' | 'WITHOUT' ) 'TIME' 'ZONE*'
referenced by: datetime_type time_precision: time_fractional_seconds_precision
         ::= time_fractional_seconds_precision
referenced by: current_local_time_value_function current_time_value_function datetime_type timestamp_precision: time_fractional_seconds_precision
         ::= time_fractional_seconds_precision
referenced by: current_local_timestamp_value_function current_timestamp_value_function datetime_type time_fractional_seconds_precision: unsigned_integer
         ::= unsigned_integer
referenced by: time_precision timestamp_precision interval_type: INTERVAL interval_qualifier
         ::= 'INTERVAL' interval_qualifier
referenced by: predefined_type row_type: ROW row_type_body referenced by: data_type row_type_body: ( field_definition , )
         ::= '(' field_definition ( ',' field_definition )* ')'
referenced by: row_type reference_type: REF ( referenced_type ) scope_clause
         ::= 'REF' '(' referenced_type ')' scope_clause?
referenced by: Ada_REF_variable COBOL_REF_variable C_REF_variable Fortran_REF_variable MUMPS_REF_variable PL_I_REF_variable Pascal_REF_variable data_type target_subtype scope_clause: SCOPE table_name
         ::= 'SCOPE' table_name
referenced by: add_column_scope_clause column_option_list reference_type view_column_option referenced_type: path_resolved_user_defined_type_name referenced by: reference_type path_resolved_user_defined_type_name: user_defined_type_name
         ::= user_defined_type_name
referenced by: Ada_user_defined_type_locator_variable Ada_user_defined_type_variable COBOL_user_defined_type_locator_variable COBOL_user_defined_type_variable C_user_defined_type_locator_variable C_user_defined_type_variable Fortran_user_defined_type_locator_variable Fortran_user_defined_type_variable MUMPS_user_defined_type_locator_variable MUMPS_user_defined_type_variable PL_I_user_defined_type_locator_variable PL_I_user_defined_type_variable Pascal_user_defined_type_locator_variable Pascal_user_defined_type_variable data_type exclusive_user_defined_type_specification general_value_specification generalized_expression group_specification inclusive_user_defined_type_specification new_specification referenceable_view_specification referenced_type static_method_invocation supertype_name target_subtype transform_group_characteristic typed_table_clause collection_type: array_type multiset_type
         ::= array_type
           | multiset_type
referenced by: data_type representation array_type: data_type ARRAY left_bracket_or_trigraph maximum_cardinality right_bracket_or_trigraph referenced by: Ada_array_locator_variable COBOL_array_locator_variable C_array_locator_variable Fortran_array_locator_variable MUMPS_array_locator_variable PL_I_array_locator_variable Pascal_array_locator_variable collection_type maximum_cardinality: unsigned_integer
         ::= unsigned_integer
referenced by: array_type multiset_type: data_type MULTISET
         ::= data_type 'MULTISET'
referenced by: Ada_multiset_locator_variable COBOL_multiset_locator_variable C_multiset_locator_variable Fortran_multiset_locator_variable MUMPS_multiset_locator_variable PL_I_multiset_locator_variable Pascal_multiset_locator_variable collection_type field_definition: field_name data_type
         ::= field_name data_type
referenced by: row_type_body value_expression_primary: parenthesized_value_expression nonparenthesized_value_expression_primary
         ::= parenthesized_value_expression
referenced by: all_fields_reference array_primary attribute_or_method_reference binary_primary character_primary datetime_primary direct_invocation field_reference generalized_invocation interval_primary method_reference multiset_primary numeric_primary reference_value_expression user_defined_type_value_expression parenthesized_value_expression: ( value_expression )
         ::= '(' value_expression ')'
referenced by: value_expression_primary nonparenthesized_value_expression_primary: unsigned_value_specification column_reference set_function_specification window_function nested_window_function scalar_subquery case_expression cast_specification field_reference subtype_treatment method_invocation static_method_invocation new_specification attribute_or_method_reference reference_resolution collection_value_constructor array_element_reference multiset_element_reference next_value_expression routine_invocation row_pattern_navigation_operation JSON_value_function
         ::= unsigned_value_specification
           | column_reference
           | set_function_specification
           | window_function
           | nested_window_function
           | scalar_subquery
           | case_expression
           | cast_specification
           | field_reference
           | subtype_treatment
           | method_invocation
           | static_method_invocation
           | new_specification
           | attribute_or_method_reference
           | reference_resolution
           | collection_value_constructor
           | array_element_reference
           | multiset_element_reference
           | next_value_expression
           | routine_invocation
           | row_pattern_navigation_operation
           | JSON_value_function
referenced by: boolean_predicand row_value_special_case value_expression_primary collection_value_constructor: array_value_constructor multiset_value_constructor
         ::= array_value_constructor
           | multiset_value_constructor
referenced by: nonparenthesized_value_expression_primary value_specification: literal general_value_specification
         ::= literal
           | general_value_specification
referenced by: SQL_path_characteristic catalog_name_characteristic character_set_name_characteristic collation_specification role_specification schema_name_characteristic set_session_user_identifier_statement transform_group_characteristic unsigned_value_specification: unsigned_literal general_value_specification
         ::= unsigned_literal
           | general_value_specification
referenced by: nonparenthesized_value_expression_primary window_frame_following window_frame_preceding general_value_specification: host_parameter_specification SQL_parameter_reference ? embedded_variable_specification current_collation_specification CURRENT_CATALOG CURRENT_DEFAULT_TRANSFORM_GROUP CURRENT_PATH CURRENT_ROLE CURRENT_SCHEMA CURRENT_TRANSFORM_GROUP_FOR_TYPE path_resolved_user_defined_type_name CURRENT_USER SESSION_USER SYSTEM_USER USER VALUE
         ::= host_parameter_specification
           | SQL_parameter_reference
           | '?'
           | embedded_variable_specification
           | current_collation_specification
           | 'CURRENT_CATALOG'
           | 'CURRENT_DEFAULT_TRANSFORM_GROUP'
           | CURRENT_PATH
           | CURRENT_ROLE
           | 'CURRENT_SCHEMA'
           | 'CURRENT_TRANSFORM_GROUP_FOR_TYPE' path_resolved_user_defined_type_name
           | 'CURRENT_USER'
           | 'SESSION_USER'
           | 'SYSTEM_USER'
           | 'USER'
           | 'VALUE'
referenced by: unsigned_value_specification using_argument value_specification simple_value_specification: literal host_parameter_name SQL_parameter_reference embedded_variable_name
         ::= literal
           | host_parameter_name
           | SQL_parameter_reference
           | embedded_variable_name
referenced by: PTF_cursor_name PTF_descriptor_name SQL_server_name SQL_statement_variable attributes_variable condition_number connection_name connection_user_name extended_cursor_name extended_descriptor_name extended_statement_name fetch_first_percentage fetch_first_row_count fetch_orientation item_number item_number_1 item_number_2 logical_offset nth_row number_of_conditions number_of_tiles occurrences offset_row_count physical_offset row_marker_offset simple_value_specification_1 simple_value_specification_2 target_array_element_specification update_target target_specification: host_parameter_specification SQL_parameter_reference column_reference target_array_element_specification ? embedded_variable_specification
         ::= host_parameter_specification
           | SQL_parameter_reference
           | column_reference
           | target_array_element_specification
           | '?'
           | embedded_variable_specification
referenced by: SQL_argument fetch_target_list into_argument named_argument_SQL_argument select_target_list simple_target_specification: host_parameter_name SQL_parameter_reference column_reference embedded_variable_name
         ::= host_parameter_name
           | SQL_parameter_reference
           | column_reference
           | embedded_variable_name
referenced by: all_info_target condition_information_item simple_target_specification_1 simple_target_specification_2 statement_information_item host_parameter_specification: host_parameter_name indicator_parameter referenced by: general_value_specification target_specification embedded_variable_specification: embedded_variable_name indicator_variable referenced by: general_value_specification target_specification indicator_variable: INDICATOR embedded_variable_name
         ::= 'INDICATOR'? embedded_variable_name
referenced by: embedded_variable_specification indicator_parameter: INDICATOR host_parameter_name
         ::= 'INDICATOR'? host_parameter_name
referenced by: host_parameter_specification target_array_element_specification: target_array_reference left_bracket_or_trigraph simple_value_specification right_bracket_or_trigraph referenced by: target_specification target_array_reference: SQL_parameter_reference column_reference
         ::= SQL_parameter_reference
           | column_reference
referenced by: target_array_element_specification current_collation_specification: COLLATION* FOR ( string_value_expression )
         ::= 'COLLATION*' 'FOR' '(' string_value_expression ')'
referenced by: general_value_specification contextually_typed_value_specification: implicitly_typed_value_specification DEFAULT
           | 'DEFAULT'
referenced by: SQL_argument contextually_typed_row_value_constructor contextually_typed_row_value_constructor_element merge_insert_value_element named_argument_SQL_argument parameter_default update_source implicitly_typed_value_specification: NULL empty_specification
         ::= 'NULL'
           | empty_specification
referenced by: cast_operand contextually_typed_value_specification default_option empty_specification: ARRAY MULTISET left_bracket_or_trigraph right_bracket_or_trigraph
         ::= ( 'ARRAY' | 'MULTISET' ) left_bracket_or_trigraph right_bracket_or_trigraph
referenced by: implicitly_typed_value_specification identifier_chain: identifier .
         ::= identifier ( '.' identifier )*
referenced by: basic_identifier_chain basic_identifier_chain: identifier_chain
         ::= identifier_chain
referenced by: SQL_parameter_reference column_reference period_reference column_reference: basic_identifier_chain MODULE . qualified_identifier . column_name
         ::= basic_identifier_chain
           | 'MODULE' '.' qualified_identifier '.' column_name
referenced by: grouping_column_reference grouping_operation nonparenthesized_value_expression_primary partitioned_join_column_reference row_pattern_partition_column simple_target_specification table_argument_ordering_column table_argument_partitioning_list target_array_reference target_specification window_partition_column_reference SQL_parameter_reference: basic_identifier_chain
         ::= basic_identifier_chain
referenced by: general_value_specification simple_target_specification simple_value_specification target_array_reference target_specification set_function_specification: running_or_final aggregate_function grouping_operation
         ::= running_or_final? aggregate_function
           | grouping_operation
referenced by: nonparenthesized_value_expression_primary running_or_final: RUNNING FINAL*
         ::= 'RUNNING'
           | 'FINAL*'
referenced by: row_pattern_navigation__compound row_pattern_navigation__logical set_function_specification grouping_operation: GROUPING ( column_reference , )
         ::= 'GROUPING' '(' column_reference ( ',' column_reference )* ')'
referenced by: set_function_specification window_function: window_function_type OVER window_name_or_specification referenced by: nonparenthesized_value_expression_primary window_function_type: rank_function_type ROW_NUMBER ( ) aggregate_function ntile_function lead_or_lag_function first_or_last_value_function nth_value_function window_row_pattern_measure
         ::= ( rank_function_type | 'ROW_NUMBER' ) '(' ')'
           | aggregate_function
           | ntile_function
           | lead_or_lag_function
           | first_or_last_value_function
           | nth_value_function
           | window_row_pattern_measure
referenced by: window_function rank_function_type: RANK DENSE_RANK PERCENT_RANK CUME_DIST
         ::= 'RANK'
           | 'DENSE_RANK'
           | 'PERCENT_RANK'
           | 'CUME_DIST'
referenced by: hypothetical_set_function window_function_type ntile_function: NTILE ( number_of_tiles )
         ::= 'NTILE' '(' number_of_tiles ')'
referenced by: window_function_type number_of_tiles: simple_value_specification ?
         ::= simple_value_specification
           | '?'
referenced by: ntile_function lead_or_lag_function: lead_or_lag ( lead_or_lag_extent , offset , default_expression ) null_treatment
         ::= lead_or_lag '(' lead_or_lag_extent ( ',' offset ( ',' default_expression )? )? ')' null_treatment?
referenced by: window_function_type lead_or_lag: LEAD LAG
         ::= 'LEAD'
           | 'LAG'
referenced by: lead_or_lag_function lead_or_lag_extent: value_expression
         ::= value_expression
referenced by: lead_or_lag_function offset: exact_numeric_literal referenced by: lead_or_lag_function default_expression: value_expression
         ::= value_expression
referenced by: lead_or_lag_function null_treatment: RESPECT* IGNORE* NULLS*
         ::= ( 'RESPECT*' | 'IGNORE*' ) 'NULLS*'
referenced by: first_or_last_value_function lead_or_lag_function nth_value_function first_or_last_value_function: first_or_last_value ( value_expression ) null_treatment
         ::= first_or_last_value '(' value_expression ')' null_treatment?
referenced by: window_function_type first_or_last_value: FIRST_VALUE LAST_VALUE
         ::= 'FIRST_VALUE'
           | 'LAST_VALUE'
referenced by: first_or_last_value_function nth_value_function: NTH_VALUE ( value_expression , nth_row ) from_first_or_last null_treatment
         ::= 'NTH_VALUE' '(' value_expression ',' nth_row ')' from_first_or_last? null_treatment?
referenced by: window_function_type nth_row: simple_value_specification ?
           | '?'
referenced by: nth_value_function from_first_or_last: FROM FIRST* LAST*
         ::= 'FROM' ( 'FIRST*' | 'LAST*' )
referenced by: nth_value_function window_name_or_specification: window_name in_line_window_specification
         ::= window_name
           | in_line_window_specification
referenced by: window_function in_line_window_specification: window_specification
         ::= window_specification
referenced by: window_name_or_specification window_row_pattern_measure: measure_name
         ::= measure_name
referenced by: window_function_type nested_window_function: nested_row_number_function value_of_expression_at_row
         ::= nested_row_number_function
           | value_of_expression_at_row
referenced by: nonparenthesized_value_expression_primary nested_row_number_function: ROW_NUMBER ( row_marker )
         ::= 'ROW_NUMBER' '(' row_marker ')'
referenced by: nested_window_function value_of_expression_at_row: VALUE_OF ( value_expression AT row_marker_expression , value_of_default_value )
         ::= 'VALUE_OF' '(' value_expression 'AT' row_marker_expression ',' value_of_default_value ')'
referenced by: nested_window_function row_marker: BEGIN_PARTITION BEGIN_FRAME CURRENT_ROW FRAME_ROW END_FRAME END_PARTITION
         ::= 'BEGIN_PARTITION'
           | 'BEGIN_FRAME'
           | 'CURRENT_ROW'
           | 'FRAME_ROW'
           | 'END_FRAME'
           | 'END_PARTITION'
referenced by: nested_row_number_function row_marker_expression row_marker_expression: row_marker row_marker_delta
         ::= row_marker row_marker_delta?
referenced by: value_of_expression_at_row row_marker_delta: + - row_marker_offset
         ::= ( '+' | '-' ) row_marker_offset
referenced by: row_marker_expression row_marker_offset: simple_value_specification ?
         ::= simple_value_specification
           | '?'
referenced by: row_marker_delta value_of_default_value: value_expression
         ::= value_expression
referenced by: value_of_expression_at_row case_expression: case_abbreviation case_specification
         ::= case_abbreviation
           | case_specification
referenced by: nonparenthesized_value_expression_primary case_abbreviation: NULLIF ( value_expression , COALESCE ( value_expression , value_expression )
         ::= ( 'NULLIF' '(' value_expression ',' | 'COALESCE' '(' ( value_expression ',' )* ) value_expression ')'
referenced by: case_expression case_specification: simple_case searched_case
         ::= simple_case
           | searched_case
referenced by: case_expression simple_case: CASE case_operand simple_when_clause else_clause END
         ::= 'CASE' case_operand simple_when_clause+ else_clause? 'END'
referenced by: case_specification searched_case: CASE searched_when_clause else_clause END
         ::= 'CASE' searched_when_clause+ else_clause? 'END'
referenced by: case_specification simple_when_clause: WHEN when_operand_list THEN result
         ::= 'WHEN' when_operand_list 'THEN' result
referenced by: simple_case searched_when_clause: WHEN search_condition THEN result
         ::= 'WHEN' search_condition 'THEN' result
referenced by: searched_case else_clause: ELSE result
         ::= 'ELSE' result
referenced by: searched_case simple_case case_operand: row_value_predicand overlaps_predicate_part_1
         ::= row_value_predicand
           | overlaps_predicate_part_1
referenced by: simple_case when_operand_list: when_operand ,
         ::= when_operand ( ',' when_operand )*
referenced by: simple_when_clause when_operand: row_value_predicand comparison_predicate_part_2 between_predicate_part_2 in_predicate_part_2 character_like_predicate_part_2 octet_like_predicate_part_2 similar_predicate_part_2 regex_like_predicate_part_2 null_predicate_part_2 quantified_comparison_predicate_part_2 normalized_predicate_part_2 match_predicate_part_2 overlaps_predicate_part_2 distinct_predicate_part_2 member_predicate_part_2 submultiset_predicate_part_2 set_predicate_part_2 type_predicate_part_2
         ::= row_value_predicand
           | comparison_predicate_part_2
           | between_predicate_part_2
           | in_predicate_part_2
           | character_like_predicate_part_2
           | octet_like_predicate_part_2
           | similar_predicate_part_2
           | regex_like_predicate_part_2
           | null_predicate_part_2
           | normalized_predicate_part_2
           | match_predicate_part_2
           | overlaps_predicate_part_2
           | distinct_predicate_part_2
           | member_predicate_part_2
           | submultiset_predicate_part_2
           | set_predicate_part_2
           | type_predicate_part_2
referenced by: when_operand_list result: result_expression NULL
           | 'NULL'
referenced by: else_clause searched_when_clause simple_when_clause result_expression: value_expression
         ::= value_expression
referenced by: result cast_specification: CAST ( cast_operand AS cast_target FORMAT* cast_template )
         ::= 'CAST' '(' cast_operand 'AS' cast_target ( 'FORMAT*' cast_template )? ')'
referenced by: nonparenthesized_value_expression_primary cast_operand: value_expression implicitly_typed_value_specification
         ::= value_expression
           | implicitly_typed_value_specification
referenced by: cast_specification cast_target: domain_name data_type
         ::= domain_name
           | data_type
referenced by: cast_specification cast_template: character_string_literal
         ::= character_string_literal
referenced by: cast_specification next_value_expression: NEXT* VALUE FOR sequence_generator_name
         ::= 'NEXT*' 'VALUE' 'FOR' sequence_generator_name
referenced by: nonparenthesized_value_expression_primary field_reference: value_expression_primary . field_name
         ::= value_expression_primary '.' field_name
referenced by: nonparenthesized_value_expression_primary subtype_treatment: TREAT ( subtype_operand AS target_subtype )
         ::= 'TREAT' '(' subtype_operand 'AS' target_subtype ')'
referenced by: nonparenthesized_value_expression_primary subtype_operand: value_expression
         ::= value_expression
referenced by: subtype_treatment target_subtype: path_resolved_user_defined_type_name reference_type
           | reference_type
referenced by: subtype_treatment method_invocation: direct_invocation generalized_invocation
         ::= direct_invocation
           | generalized_invocation
referenced by: new_invocation nonparenthesized_value_expression_primary direct_invocation: value_expression_primary . method_name SQL_argument_list referenced by: method_invocation generalized_invocation: ( value_expression_primary AS data_type ) . method_name SQL_argument_list
         ::= '(' value_expression_primary 'AS' data_type ')' '.' method_name SQL_argument_list?
referenced by: method_invocation method_selection: routine_invocation
         ::= routine_invocation
no referencesconstructor_method_selection: routine_invocation
         ::= routine_invocation
no referencesstatic_method_invocation: path_resolved_user_defined_type_name :: method_name SQL_argument_list referenced by: nonparenthesized_value_expression_primary static_method_selection: routine_invocation
         ::= routine_invocation
no referencesnew_specification: NEW path_resolved_user_defined_type_name SQL_argument_list referenced by: nonparenthesized_value_expression_primary new_invocation: method_invocation routine_invocation
         ::= method_invocation
           | routine_invocation
no referencesattribute_or_method_reference: value_expression_primary -> qualified_identifier SQL_argument_list referenced by: nonparenthesized_value_expression_primary dereference_operation: reference_value_expression -> attribute_name
         ::= reference_value_expression '->' attribute_name
no referencesmethod_reference: value_expression_primary -> method_name SQL_argument_list no referencesreference_resolution: DEREF ( reference_value_expression )
         ::= 'DEREF' '(' reference_value_expression ')'
referenced by: nonparenthesized_value_expression_primary array_element_reference: array_value_expression left_bracket_or_trigraph numeric_value_expression right_bracket_or_trigraph referenced by: nonparenthesized_value_expression_primary multiset_element_reference: ELEMENT ( multiset_value_expression )
         ::= 'ELEMENT' '(' multiset_value_expression ')'
referenced by: nonparenthesized_value_expression_primary row_pattern_navigation_operation: row_pattern_navigation__logical row_pattern_navigation__physical row_pattern_navigation__compound
         ::= row_pattern_navigation__logical
           | row_pattern_navigation__physical
           | row_pattern_navigation__compound
referenced by: nonparenthesized_value_expression_primary row_pattern_navigation__logical: running_or_final first_or_last ( value_expression , logical_offset )
         ::= running_or_final? first_or_last '(' value_expression ( ',' logical_offset )? ')'
referenced by: row_pattern_navigation_operation row_pattern_navigation__physical: prev_or_next ( value_expression , physical_offset )
         ::= prev_or_next '(' value_expression ( ',' physical_offset )? ')'
referenced by: row_pattern_navigation_operation row_pattern_navigation__compound: prev_or_next ( running_or_final first_or_last ( value_expression , logical_offset ) , physical_offset )
         ::= prev_or_next '(' running_or_final? first_or_last '(' value_expression ( ',' logical_offset )? ')' ( ',' physical_offset )? ')'
referenced by: row_pattern_navigation_operation first_or_last: FIRST* LAST*
         ::= 'FIRST*'
           | 'LAST*'
referenced by: row_pattern_navigation__compound row_pattern_navigation__logical prev_or_next: PREV NEXT*
         ::= PREV
           | 'NEXT*'
referenced by: row_pattern_navigation__compound row_pattern_navigation__physical logical_offset: simple_value_specification ?
         ::= simple_value_specification
           | '?'
referenced by: row_pattern_navigation__compound row_pattern_navigation__logical physical_offset: simple_value_specification ?
         ::= simple_value_specification
           | '?'
referenced by: row_pattern_navigation__compound row_pattern_navigation__physical JSON_value_function: JSON_VALUE ( JSON_API_common_syntax JSON_returning_clause JSON_value_empty_behavior ON EMPTY JSON_value_error_behavior ON ERROR* )
         ::= 'JSON_VALUE' '(' JSON_API_common_syntax JSON_returning_clause? ( JSON_value_empty_behavior 'ON' 'EMPTY' )? ( JSON_value_error_behavior 'ON' 'ERROR*' )? ')'
referenced by: nonparenthesized_value_expression_primary JSON_returning_clause: RETURNING* data_type
         ::= 'RETURNING*' data_type
referenced by: JSON_value_function JSON_value_empty_behavior: ERROR* NULL DEFAULT value_expression
         ::= 'ERROR*'
           | 'NULL'
           | 'DEFAULT' value_expression
referenced by: JSON_value_function JSON_value_error_behavior: ERROR* NULL DEFAULT value_expression
         ::= 'ERROR*'
           | 'NULL'
           | 'DEFAULT' value_expression
referenced by: JSON_value_function value_expression: common_value_expression boolean_value_expression row_value_expression
         ::= common_value_expression
           | boolean_value_expression
           | row_value_expression
referenced by: JSON_table_column_empty_behavior JSON_table_column_error_behavior JSON_value_empty_behavior JSON_value_error_behavior JSON_value_expression SQL_argument array_aggregate_function array_element case_abbreviation cast_operand contextually_typed_row_value_constructor_element cycle_mark_value default_expression derived_column first_or_last_value_function general_set_function generalized_expression generation_expression hypothetical_set_function_value_expression_list lead_or_lag_extent merge_insert_value_element multiset_element named_argument_SQL_argument non_cycle_mark_value nth_value_function parameter_default parenthesized_value_expression result_expression return_value row_pattern_measure_expression row_pattern_navigation__compound row_pattern_navigation__logical row_pattern_navigation__physical row_value_constructor_element sort_key subtype_operand update_source value_of_default_value value_of_expression_at_row common_value_expression: numeric_value_expression string_value_expression datetime_value_expression interval_value_expression user_defined_type_value_expression reference_value_expression collection_value_expression
         ::= numeric_value_expression
           | string_value_expression
           | datetime_value_expression
           | interval_value_expression
           | user_defined_type_value_expression
           | reference_value_expression
           | collection_value_expression
referenced by: contextually_typed_row_value_constructor row_value_constructor row_value_constructor_predicand value_expression user_defined_type_value_expression: value_expression_primary
         ::= value_expression_primary
referenced by: common_value_expression specific_type_method reference_value_expression: value_expression_primary
         ::= value_expression_primary
referenced by: common_value_expression dereference_operation reference_resolution collection_value_expression: array_value_expression multiset_value_expression
         ::= array_value_expression
           | multiset_value_expression
referenced by: cardinality_expression collection_derived_table common_value_expression table_function_derived_table numeric_value_expression: term + -
         ::= term ( ( '+' | '-' ) term )*
referenced by: absolute_value_expression array_element_reference ceiling_function common_logarithm common_value_expression dependent_variable_expression exponential_function floor_function general_logarithm_argument general_logarithm_base independent_variable_expression inverse_distribution_function_argument natural_logarithm numeric_value_expression_base numeric_value_expression_dividend numeric_value_expression_divisor numeric_value_expression_exponent regex_capture_group regex_occurrence repeat_argument sample_percentage square_root start_position string_length trigonometric_function trim_array_function width_bucket_bound_1 width_bucket_bound_2 width_bucket_count width_bucket_operand term: factor * /
term     ::= factor ( ( '*' | '/' ) factor )*
referenced by: interval_term numeric_value_expression factor: sign numeric_primary referenced by: interval_term term numeric_primary: value_expression_primary numeric_value_function
         ::= value_expression_primary
           | numeric_value_function
referenced by: factor numeric_value_function: position_expression regex_occurrences_function regex_position_expression extract_expression length_expression cardinality_expression max_cardinality_expression absolute_value_expression modulus_expression trigonometric_function general_logarithm_function common_logarithm natural_logarithm exponential_function power_function square_root floor_function ceiling_function width_bucket_function match_number_function
         ::= position_expression
           | regex_occurrences_function
           | regex_position_expression
           | extract_expression
           | length_expression
           | cardinality_expression
           | max_cardinality_expression
           | absolute_value_expression
           | modulus_expression
           | trigonometric_function
           | general_logarithm_function
           | common_logarithm
           | natural_logarithm
           | exponential_function
           | power_function
           | square_root
           | floor_function
           | ceiling_function
           | width_bucket_function
           | match_number_function
referenced by: numeric_primary position_expression: character_position_expression binary_position_expression
         ::= character_position_expression
           | binary_position_expression
referenced by: numeric_value_function regex_occurrences_function: OCCURRENCES_REGEX ( XQuery_pattern FLAG* XQuery_option_flag IN regex_subject_string FROM start_position USING char_length_units )
         ::= 'OCCURRENCES_REGEX' '(' XQuery_pattern ( 'FLAG*' XQuery_option_flag )? 'IN' regex_subject_string ( 'FROM' start_position )? ( 'USING' char_length_units )? ')'
referenced by: numeric_value_function XQuery_pattern: character_value_expression
         ::= character_value_expression
referenced by: regex_like_predicate_part_2 regex_occurrences_function regex_position_expression regex_substring_function regex_transliteration XQuery_option_flag: character_value_expression
         ::= character_value_expression
referenced by: regex_like_predicate_part_2 regex_occurrences_function regex_position_expression regex_substring_function regex_transliteration regex_subject_string: character_value_expression
         ::= character_value_expression
referenced by: regex_occurrences_function regex_position_expression regex_substring_function regex_transliteration regex_position_expression: POSITION_REGEX ( regex_position_start_or_after XQuery_pattern FLAG* XQuery_option_flag IN regex_subject_string FROM start_position USING char_length_units OCCURRENCE regex_occurrence GROUP regex_capture_group )
         ::= 'POSITION_REGEX' '(' regex_position_start_or_after? XQuery_pattern ( 'FLAG*' XQuery_option_flag )? 'IN' regex_subject_string ( 'FROM' start_position )? ( 'USING' char_length_units )? ( OCCURRENCE regex_occurrence )? ( 'GROUP' regex_capture_group )? ')'
referenced by: numeric_value_function regex_position_start_or_after: START AFTER*
         ::= 'START'
           | 'AFTER*'
referenced by: regex_position_expression regex_occurrence: numeric_value_expression
         ::= numeric_value_expression
referenced by: regex_position_expression regex_substring_function regex_transliteration_occurrence regex_capture_group: numeric_value_expression
         ::= numeric_value_expression
referenced by: regex_position_expression regex_substring_function character_position_expression: POSITION ( character_value_expression_1 IN character_value_expression_2 USING char_length_units )
         ::= 'POSITION' '(' character_value_expression_1 'IN' character_value_expression_2 ( 'USING' char_length_units )? ')'
referenced by: position_expression character_value_expression_1: character_value_expression
         ::= character_value_expression
referenced by: character_position_expression character_value_expression_2: character_value_expression
         ::= character_value_expression
referenced by: character_position_expression binary_position_expression: POSITION ( binary_value_expression IN binary_value_expression )
         ::= 'POSITION' '(' binary_value_expression 'IN' binary_value_expression ')'
referenced by: position_expression length_expression: char_length_expression octet_length_expression
         ::= char_length_expression
           | octet_length_expression
referenced by: numeric_value_function char_length_expression: CHAR_LENGTH CHARACTER_LENGTH ( character_value_expression USING char_length_units )
         ::= ( 'CHAR_LENGTH' | 'CHARACTER_LENGTH' ) '(' character_value_expression ( 'USING' char_length_units )? ')'
referenced by: length_expression octet_length_expression: OCTET_LENGTH ( string_value_expression )
         ::= 'OCTET_LENGTH' '(' string_value_expression ')'
referenced by: length_expression extract_expression: EXTRACT ( extract_field FROM extract_source )
         ::= 'EXTRACT' '(' extract_field 'FROM' extract_source ')'
referenced by: numeric_value_function extract_field: primary_datetime_field time_zone_field
         ::= primary_datetime_field
           | time_zone_field
referenced by: extract_expression time_zone_field: TIMEZONE_HOUR TIMEZONE_MINUTE
         ::= 'TIMEZONE_HOUR'
           | 'TIMEZONE_MINUTE'
referenced by: extract_field extract_source: datetime_value_expression interval_value_expression
         ::= datetime_value_expression
           | interval_value_expression
referenced by: extract_expression cardinality_expression: CARDINALITY ( collection_value_expression )
         ::= 'CARDINALITY' '(' collection_value_expression ')'
referenced by: numeric_value_function max_cardinality_expression: ARRAY_MAX_CARDINALITY ( array_value_expression )
         ::= 'ARRAY_MAX_CARDINALITY' '(' array_value_expression ')'
referenced by: numeric_value_function absolute_value_expression: ABS ( numeric_value_expression )
         ::= 'ABS' '(' numeric_value_expression ')'
referenced by: numeric_value_function modulus_expression: MOD ( numeric_value_expression_dividend , numeric_value_expression_divisor ) referenced by: numeric_value_function numeric_value_expression_dividend: numeric_value_expression
         ::= numeric_value_expression
referenced by: modulus_expression numeric_value_expression_divisor: numeric_value_expression
         ::= numeric_value_expression
referenced by: modulus_expression trigonometric_function: trigonometric_function_name ( numeric_value_expression ) referenced by: numeric_value_function trigonometric_function_name: SIN COS TAN SINH COSH TANH ASIN ACOS ATAN
         ::= 'SIN'
           | 'COS'
           | 'TAN'
           | 'SINH'
           | 'COSH'
           | 'TANH'
           | 'ASIN'
           | 'ACOS'
           | 'ATAN'
referenced by: trigonometric_function general_logarithm_function: LOG ( general_logarithm_base , general_logarithm_argument )
         ::= 'LOG' '(' general_logarithm_base ',' general_logarithm_argument ')'
referenced by: numeric_value_function general_logarithm_base: numeric_value_expression
         ::= numeric_value_expression
referenced by: general_logarithm_function general_logarithm_argument: numeric_value_expression
         ::= numeric_value_expression
referenced by: general_logarithm_function common_logarithm: LOG10 ( numeric_value_expression )
         ::= 'LOG10' '(' numeric_value_expression ')'
referenced by: numeric_value_function natural_logarithm: LN ( numeric_value_expression )
         ::= 'LN' '(' numeric_value_expression ')'
referenced by: numeric_value_function exponential_function: EXP ( numeric_value_expression )
         ::= 'EXP' '(' numeric_value_expression ')'
referenced by: numeric_value_function power_function: POWER ( numeric_value_expression_base , numeric_value_expression_exponent )
         ::= 'POWER' '(' numeric_value_expression_base ',' numeric_value_expression_exponent ')'
referenced by: numeric_value_function numeric_value_expression_base: numeric_value_expression
         ::= numeric_value_expression
referenced by: power_function numeric_value_expression_exponent: numeric_value_expression
         ::= numeric_value_expression
referenced by: power_function square_root: SQRT ( numeric_value_expression )
         ::= 'SQRT' '(' numeric_value_expression ')'
referenced by: numeric_value_function floor_function: FLOOR ( numeric_value_expression )
         ::= 'FLOOR' '(' numeric_value_expression ')'
referenced by: numeric_value_function ceiling_function: CEIL CEILING ( numeric_value_expression )
         ::= ( 'CEIL' | 'CEILING' ) '(' numeric_value_expression ')'
referenced by: numeric_value_function width_bucket_function: WIDTH_BUCKET ( width_bucket_operand , width_bucket_bound_1 , width_bucket_bound_2 , width_bucket_count )
         ::= 'WIDTH_BUCKET' '(' width_bucket_operand ',' width_bucket_bound_1 ',' width_bucket_bound_2 ',' width_bucket_count ')'
referenced by: numeric_value_function width_bucket_operand: numeric_value_expression
         ::= numeric_value_expression
referenced by: width_bucket_function width_bucket_bound_1: numeric_value_expression
         ::= numeric_value_expression
referenced by: width_bucket_function width_bucket_bound_2: numeric_value_expression
         ::= numeric_value_expression
referenced by: width_bucket_function width_bucket_count: numeric_value_expression
         ::= numeric_value_expression
referenced by: width_bucket_function match_number_function: MATCH_NUMBER ( )
         ::= 'MATCH_NUMBER' '(' ')'
referenced by: numeric_value_function string_value_expression: character_value_expression binary_value_expression
         ::= character_value_expression
           | binary_value_expression
referenced by: JSON_predicate common_value_expression current_collation_specification octet_length_expression character_value_expression: concatenation character_factor
         ::= concatenation
           | character_factor
referenced by: JSON_name XQuery_option_flag XQuery_pattern XQuery_replacement_string char_length_expression character_overlay_function character_pattern character_substring_function character_transliteration character_value_expression_1 character_value_expression_2 concatenation escape_character fold listagg_set_function normalize_function regex_subject_string regular_expression_substring_function similar_pattern string_value_expression transcoding trim_character trim_source concatenation: character_value_expression || character_factor
         ::= character_value_expression '||' character_factor
referenced by: character_value_expression character_factor: character_primary collate_clause
         ::= character_primary collate_clause?
referenced by: character_value_expression concatenation character_primary: value_expression_primary string_value_function
         ::= value_expression_primary
           | string_value_function
referenced by: character_factor binary_value_expression: binary_concatenation binary_factor
         ::= binary_concatenation
           | binary_factor
referenced by: binary_concatenation binary_overlay_function binary_position_expression binary_substring_function binary_trim_source escape_octet octet_pattern string_value_expression trim_octet binary_factor: binary_primary
         ::= binary_primary
referenced by: binary_concatenation binary_value_expression binary_primary: value_expression_primary string_value_function
         ::= value_expression_primary
           | string_value_function
referenced by: binary_factor binary_concatenation: binary_value_expression || binary_factor
         ::= binary_value_expression '||' binary_factor
referenced by: binary_value_expression string_value_function: character_value_function binary_value_function JSON_value_constructor JSON_query
         ::= character_value_function
           | binary_value_function
           | JSON_value_constructor
           | JSON_query
referenced by: binary_primary character_primary character_value_function: character_substring_function regular_expression_substring_function regex_substring_function fold transcoding character_transliteration regex_transliteration trim_function character_overlay_function normalize_function specific_type_method classifier_function
         ::= character_substring_function
           | regex_substring_function
           | fold
           | transcoding
           | character_transliteration
           | regex_transliteration
           | trim_function
           | character_overlay_function
           | normalize_function
           | specific_type_method
           | classifier_function
referenced by: string_value_function character_substring_function: SUBSTRING ( character_value_expression FROM start_position FOR string_length USING char_length_units )
         ::= 'SUBSTRING' '(' character_value_expression 'FROM' start_position ( 'FOR' string_length )? ( 'USING' char_length_units )? ')'
referenced by: character_value_function regular_expression_substring_function: SUBSTRING ( character_value_expression SIMILAR character_value_expression ESCAPE escape_character )
         ::= 'SUBSTRING' '(' character_value_expression 'SIMILAR' character_value_expression 'ESCAPE' escape_character ')'
referenced by: character_value_function regex_substring_function: SUBSTRING_REGEX ( XQuery_pattern FLAG* XQuery_option_flag IN regex_subject_string FROM start_position USING char_length_units OCCURRENCE regex_occurrence GROUP regex_capture_group )
         ::= 'SUBSTRING_REGEX' '(' XQuery_pattern ( 'FLAG*' XQuery_option_flag )? 'IN' regex_subject_string ( 'FROM' start_position )? ( 'USING' char_length_units )? ( OCCURRENCE regex_occurrence )? ( 'GROUP' regex_capture_group )? ')'
referenced by: character_value_function fold: UPPER LOWER ( character_value_expression )
fold     ::= ( 'UPPER' | 'LOWER' ) '(' character_value_expression ')'
referenced by: character_value_function transcoding: CONVERT ( character_value_expression USING transcoding_name )
         ::= 'CONVERT' '(' character_value_expression 'USING' transcoding_name ')'
referenced by: character_value_function character_transliteration: TRANSLATE ( character_value_expression USING transliteration_name )
         ::= 'TRANSLATE' '(' character_value_expression 'USING' transliteration_name ')'
referenced by: character_value_function regex_transliteration: TRANSLATE_REGEX ( XQuery_pattern FLAG* XQuery_option_flag IN regex_subject_string WITH XQuery_replacement_string FROM start_position USING char_length_units OCCURRENCE regex_transliteration_occurrence )
         ::= 'TRANSLATE_REGEX' '(' XQuery_pattern ( 'FLAG*' XQuery_option_flag )? 'IN' regex_subject_string ( 'WITH' XQuery_replacement_string )? ( 'FROM' start_position )? ( 'USING' char_length_units )? ( OCCURRENCE regex_transliteration_occurrence )? ')'
referenced by: character_value_function XQuery_replacement_string: character_value_expression
         ::= character_value_expression
referenced by: regex_transliteration regex_transliteration_occurrence: regex_occurrence ALL
         ::= regex_occurrence
           | 'ALL'
referenced by: regex_transliteration trim_function: TRIM ( trim_operands )
         ::= 'TRIM' '(' trim_operands ')'
referenced by: character_value_function trim_operands: trim_specification trim_character FROM trim_source
         ::= ( trim_specification? trim_character? 'FROM' )? trim_source
referenced by: trim_function trim_source: character_value_expression
         ::= character_value_expression
referenced by: trim_operands trim_specification: LEADING TRAILING BOTH
         ::= 'LEADING'
           | 'TRAILING'
           | 'BOTH'
referenced by: binary_trim_operands trim_operands trim_character: character_value_expression
         ::= character_value_expression
referenced by: trim_operands character_overlay_function: OVERLAY ( character_value_expression PLACING* character_value_expression FROM start_position FOR string_length USING char_length_units )
         ::= 'OVERLAY' '(' character_value_expression 'PLACING*' character_value_expression 'FROM' start_position ( 'FOR' string_length )? ( 'USING' char_length_units )? ')'
referenced by: character_value_function normalize_function: NORMALIZE ( character_value_expression , normal_form , normalize_function_result_length )
         ::= 'NORMALIZE' '(' character_value_expression ( ',' normal_form ( ',' normalize_function_result_length )? )? ')'
referenced by: character_value_function normal_form: NFC* NFD* NFKC* NFKD*
         ::= 'NFC*'
           | 'NFD*'
           | 'NFKC*'
           | 'NFKD*'
referenced by: normalize_function normalized_predicate_part_2 normalize_function_result_length: character_length character_large_object_length
         ::= character_length
           | character_large_object_length
referenced by: normalize_function specific_type_method: user_defined_type_value_expression . SPECIFICTYPE ( )
         ::= user_defined_type_value_expression '.' 'SPECIFICTYPE' ( '(' ')' )?
referenced by: character_value_function binary_value_function: binary_substring_function binary_trim_function binary_overlay_function
         ::= binary_substring_function
           | binary_trim_function
           | binary_overlay_function
referenced by: string_value_function binary_substring_function: SUBSTRING ( binary_value_expression FROM start_position FOR string_length )
         ::= 'SUBSTRING' '(' binary_value_expression 'FROM' start_position ( 'FOR' string_length )? ')'
referenced by: binary_value_function binary_trim_function: TRIM ( binary_trim_operands )
         ::= 'TRIM' '(' binary_trim_operands ')'
referenced by: binary_value_function binary_trim_operands: trim_specification trim_octet FROM binary_trim_source
         ::= ( trim_specification? trim_octet? 'FROM' )? binary_trim_source
referenced by: binary_trim_function binary_trim_source: binary_value_expression
         ::= binary_value_expression
referenced by: binary_trim_operands trim_octet: binary_value_expression
         ::= binary_value_expression
referenced by: binary_trim_operands binary_overlay_function: OVERLAY ( binary_value_expression PLACING* binary_value_expression FROM start_position FOR string_length )
         ::= 'OVERLAY' '(' binary_value_expression 'PLACING*' binary_value_expression 'FROM' start_position ( 'FOR' string_length )? ')'
referenced by: binary_value_function start_position: numeric_value_expression
         ::= numeric_value_expression
referenced by: binary_overlay_function binary_substring_function character_overlay_function character_substring_function regex_occurrences_function regex_position_expression regex_substring_function regex_transliteration string_length: numeric_value_expression
         ::= numeric_value_expression
referenced by: binary_overlay_function binary_substring_function character_overlay_function character_substring_function classifier_function: CLASSIFIER ( row_pattern_variable_name )
         ::= 'CLASSIFIER' '(' row_pattern_variable_name? ')'
referenced by: character_value_function JSON_value_constructor: JSON_object_constructor JSON_array_constructor
         ::= JSON_object_constructor
           | JSON_array_constructor
referenced by: string_value_function JSON_object_constructor: JSON_OBJECT ( JSON_name_and_value , JSON_constructor_null_clause JSON_key_uniqueness_constraint JSON_output_clause ) referenced by: JSON_value_constructor JSON_name_and_value: KEY* JSON_name VALUE JSON_name : JSON_value_expression
         ::= ( 'KEY*'? JSON_name 'VALUE' | JSON_name ':' ) JSON_value_expression
referenced by: JSON_object_aggregate_constructor JSON_object_constructor JSON_name: character_value_expression
         ::= character_value_expression
referenced by: JSON_name_and_value JSON_constructor_null_clause: NULL ABSENT ON NULL
         ::= ( 'NULL' | ABSENT ) 'ON' 'NULL'
referenced by: JSON_array_aggregate_constructor JSON_array_constructor_by_enumeration JSON_array_constructor_by_query JSON_object_aggregate_constructor JSON_object_constructor JSON_array_constructor: JSON_array_constructor_by_enumeration JSON_array_constructor_by_query
           | JSON_array_constructor_by_query
referenced by: JSON_value_constructor JSON_array_constructor_by_enumeration: JSON_ARRAY ( JSON_value_expression , JSON_constructor_null_clause JSON_output_clause )
         ::= 'JSON_ARRAY' '(' ( JSON_value_expression ( ',' JSON_value_expression )* JSON_constructor_null_clause? )? JSON_output_clause? ')'
referenced by: JSON_array_constructor JSON_array_constructor_by_query: JSON_ARRAY ( query_expression JSON_input_clause JSON_constructor_null_clause JSON_output_clause ) referenced by: JSON_array_constructor JSON_query: JSON_QUERY ( JSON_API_common_syntax JSON_output_clause JSON_query_wrapper_behavior WRAPPER* JSON_query_quotes_behavior QUOTES* ON SCALAR* STRING* JSON_query_empty_behavior ON EMPTY JSON_query_error_behavior ON ERROR* )
         ::= 'JSON_QUERY' '(' JSON_API_common_syntax JSON_output_clause? ( JSON_query_wrapper_behavior 'WRAPPER*' )? ( JSON_query_quotes_behavior 'QUOTES*' ( 'ON' 'SCALAR*' 'STRING*' )? )? ( JSON_query_empty_behavior 'ON' 'EMPTY' )? ( JSON_query_error_behavior 'ON' 'ERROR*' )? ')'
referenced by: string_value_function JSON_query_wrapper_behavior: WITHOUT WITH CONDITIONAL* UNCONDITIONAL* ARRAY
         ::= ( 'WITHOUT' | 'WITH' ( 'CONDITIONAL*' | 'UNCONDITIONAL*' )? ) 'ARRAY'?
referenced by: JSON_query JSON_query_quotes_behavior: KEEP* OMIT
         ::= 'KEEP*'
           | 'OMIT'
referenced by: JSON_query JSON_query_empty_behavior: ERROR* NULL EMPTY ARRAY OBJECT*
         ::= 'ERROR*'
           | 'NULL'
           | 'EMPTY' ( 'ARRAY' | 'OBJECT*' )
referenced by: JSON_query JSON_query_error_behavior: ERROR* NULL EMPTY ARRAY OBJECT*
         ::= 'ERROR*'
           | 'NULL'
           | 'EMPTY' ( 'ARRAY' | 'OBJECT*' )
referenced by: JSON_query datetime_value_expression: interval_value_expression + datetime_term + - interval_term
         ::= ( interval_value_expression '+' )? datetime_term ( ( '+' | '-' ) interval_term )*
referenced by: common_value_expression extract_source interval_value_expression period_end_value period_or_point_in_time_predicand period_start_value point_in_time datetime_term: datetime_factor
         ::= datetime_factor
referenced by: datetime_value_expression interval_value_expression datetime_factor: datetime_primary time_zone
         ::= datetime_primary time_zone?
referenced by: datetime_term datetime_primary: value_expression_primary datetime_value_function
         ::= value_expression_primary
           | datetime_value_function
referenced by: datetime_factor time_zone: AT time_zone_specifier
         ::= 'AT' time_zone_specifier
referenced by: datetime_factor time_zone_specifier: LOCAL TIME ZONE* interval_primary
         ::= 'LOCAL'
           | 'TIME' 'ZONE*' interval_primary
referenced by: time_zone datetime_value_function: CURRENT_DATE current_time_value_function current_timestamp_value_function current_local_time_value_function current_local_timestamp_value_function
         ::= 'CURRENT_DATE'
           | current_time_value_function
           | current_timestamp_value_function
           | current_local_time_value_function
referenced by: datetime_primary default_option current_time_value_function: CURRENT_TIME ( time_precision )
         ::= 'CURRENT_TIME' ( '(' time_precision ')' )?
referenced by: datetime_value_function current_local_time_value_function: LOCALTIME ( time_precision )
         ::= 'LOCALTIME' ( '(' time_precision ')' )?
referenced by: datetime_value_function current_timestamp_value_function: CURRENT_TIMESTAMP ( timestamp_precision )
         ::= 'CURRENT_TIMESTAMP' ( '(' timestamp_precision ')' )?
referenced by: datetime_value_function current_local_timestamp_value_function: LOCALTIMESTAMP ( timestamp_precision )
         ::= 'LOCALTIMESTAMP' ( '(' timestamp_precision ')' )?
referenced by: datetime_value_function interval_value_expression: interval_term interval_value_expression_1 + - interval_term_1 ( datetime_value_expression - datetime_term ) interval_qualifier
         ::= interval_term
           | interval_value_expression_1 ( '+' | '-' ) interval_term_1
           | '(' datetime_value_expression '-' datetime_term ')' interval_qualifier
referenced by: common_value_expression datetime_value_expression extract_source interval_absolute_value_function interval_value_expression_1 set_time_zone_value interval_term: term * interval_factor interval_term_2 * / factor
         ::= ( term '*' )? interval_factor
           | interval_term_2 ( '*' | '/' ) factor
referenced by: datetime_value_expression interval_term_1 interval_term_2 interval_value_expression interval_factor: sign interval_primary
         ::= sign? interval_primary
referenced by: interval_term interval_primary: value_expression_primary interval_qualifier interval_value_function
           | interval_value_function
referenced by: interval_factor time_zone_specifier interval_value_expression_1: interval_value_expression
         ::= interval_value_expression
referenced by: interval_value_expression interval_term_1: interval_term
         ::= interval_term
referenced by: interval_value_expression interval_term_2: interval_term
         ::= interval_term
referenced by: interval_term interval_value_function: interval_absolute_value_function
         ::= interval_absolute_value_function
referenced by: interval_primary interval_absolute_value_function: ABS ( interval_value_expression )
         ::= 'ABS' '(' interval_value_expression ')'
referenced by: interval_value_function boolean_value_expression: boolean_term OR
         ::= boolean_term ( 'OR' boolean_term )*
referenced by: contextually_typed_row_value_constructor parenthesized_boolean_value_expression row_value_constructor search_condition value_expression boolean_term: boolean_factor AND
         ::= boolean_factor ( 'AND' boolean_factor )*
referenced by: boolean_value_expression boolean_factor: NOT boolean_test
         ::= 'NOT'? boolean_test
referenced by: boolean_term boolean_test: boolean_primary IS NOT truth_value
         ::= boolean_primary ( 'IS' 'NOT'? truth_value )?
referenced by: boolean_factor truth_value: TRUE FALSE UNKNOWN
         ::= 'TRUE'
           | 'FALSE'
           | 'UNKNOWN'
referenced by: boolean_test boolean_primary: predicate boolean_predicand
         ::= predicate
           | boolean_predicand
referenced by: boolean_test boolean_predicand: parenthesized_boolean_value_expression nonparenthesized_value_expression_primary referenced by: boolean_primary row_value_constructor_predicand parenthesized_boolean_value_expression: ( boolean_value_expression )
         ::= '(' boolean_value_expression ')'
referenced by: boolean_predicand array_value_expression: array_concatenation array_primary
         ::= array_concatenation
           | array_primary
referenced by: array_element_reference array_value_expression_1 collection_value_expression max_cardinality_expression trim_array_function array_concatenation: array_value_expression_1 || array_primary
         ::= array_value_expression_1 '||' array_primary
referenced by: array_value_expression array_value_expression_1: array_value_expression
         ::= array_value_expression
referenced by: array_concatenation array_primary: array_value_function value_expression_primary
         ::= array_value_function
           | value_expression_primary
referenced by: array_concatenation array_value_expression array_value_function: trim_array_function
         ::= trim_array_function
referenced by: array_primary trim_array_function: TRIM_ARRAY ( array_value_expression , numeric_value_expression )
         ::= 'TRIM_ARRAY' '(' array_value_expression ',' numeric_value_expression ')'
referenced by: array_value_function array_value_constructor: array_value_constructor_by_enumeration array_value_constructor_by_query
           | array_value_constructor_by_query
referenced by: collection_value_constructor array_value_constructor_by_enumeration: ARRAY left_bracket_or_trigraph array_element_list right_bracket_or_trigraph referenced by: array_value_constructor array_element_list: array_element ,
         ::= array_element ( ',' array_element )*
referenced by: array_value_constructor_by_enumeration array_element: value_expression
         ::= value_expression
referenced by: array_element_list array_value_constructor_by_query: ARRAY table_subquery
         ::= 'ARRAY' table_subquery
referenced by: array_value_constructor multiset_value_expression: multiset_term ALL DISTINCT UNION EXCEPT MULTISET
         ::= multiset_term ( 'MULTISET' ( 'UNION' | 'EXCEPT' ) ( 'ALL' | 'DISTINCT' )? multiset_term )*
referenced by: collection_value_expression member_predicate_part_2 multiset_element_reference multiset_set_function submultiset_predicate_part_2 multiset_term: multiset_primary ALL DISTINCT INTERSECT MULTISET
         ::= multiset_primary ( 'MULTISET' 'INTERSECT' ( 'ALL' | 'DISTINCT' )? multiset_primary )*
referenced by: multiset_value_expression multiset_primary: multiset_value_function value_expression_primary
         ::= multiset_value_function
           | value_expression_primary
referenced by: multiset_term multiset_value_function: multiset_set_function
         ::= multiset_set_function
referenced by: multiset_primary multiset_set_function: SET ( multiset_value_expression )
         ::= 'SET' '(' multiset_value_expression ')'
referenced by: multiset_value_function multiset_value_constructor: multiset_value_constructor_by_enumeration multiset_value_constructor_by_query table_value_constructor_by_query
           | multiset_value_constructor_by_query
           | table_value_constructor_by_query
referenced by: collection_value_constructor multiset_value_constructor_by_enumeration: MULTISET left_bracket_or_trigraph multiset_element_list right_bracket_or_trigraph referenced by: multiset_value_constructor multiset_element_list: multiset_element ,
         ::= multiset_element ( ',' multiset_element )*
referenced by: multiset_value_constructor_by_enumeration multiset_element: value_expression
         ::= value_expression
referenced by: multiset_element_list multiset_value_constructor_by_query: MULTISET table_subquery
         ::= 'MULTISET' table_subquery
referenced by: multiset_value_constructor table_value_constructor_by_query: TABLE table_subquery
         ::= 'TABLE' table_subquery
referenced by: multiset_value_constructor row_value_constructor: common_value_expression boolean_value_expression explicit_row_value_constructor
         ::= common_value_expression
           | boolean_value_expression
           | explicit_row_value_constructor
referenced by: table_row_value_expression explicit_row_value_constructor: ( row_value_constructor_element , ROW ( row_value_constructor_element_list ) row_subquery
         ::= ( '(' row_value_constructor_element ',' | 'ROW' '(' ) row_value_constructor_element_list ')'
           | row_subquery
referenced by: row_value_constructor row_value_constructor_predicand row_value_expression row_value_constructor_element_list: row_value_constructor_element , referenced by: explicit_row_value_constructor row_value_constructor_element: value_expression
         ::= value_expression
referenced by: explicit_row_value_constructor row_value_constructor_element_list contextually_typed_row_value_constructor: common_value_expression boolean_value_expression contextually_typed_value_specification ( contextually_typed_value_specification contextually_typed_row_value_constructor_element , contextually_typed_row_value_constructor_element_list ROW ( contextually_typed_row_value_constructor_element_list )
         ::= common_value_expression
           | boolean_value_expression
referenced by: contextually_typed_row_value_expression contextually_typed_row_value_constructor_element_list: contextually_typed_row_value_constructor_element , referenced by: contextually_typed_row_value_constructor contextually_typed_row_value_constructor_element: value_expression contextually_typed_value_specification
         ::= value_expression
referenced by: contextually_typed_row_value_constructor contextually_typed_row_value_constructor_element_list row_value_constructor_predicand: common_value_expression boolean_predicand explicit_row_value_constructor
         ::= common_value_expression
           | boolean_predicand
           | explicit_row_value_constructor
referenced by: row_value_predicand row_value_expression: row_value_special_case explicit_row_value_constructor
         ::= row_value_special_case
           | explicit_row_value_constructor
referenced by: in_value_list value_expression table_row_value_expression: row_value_special_case row_value_constructor
         ::= row_value_special_case
           | row_value_constructor
referenced by: row_value_expression_list contextually_typed_row_value_expression: row_value_special_case contextually_typed_row_value_constructor
         ::= row_value_special_case
referenced by: assigned_row contextually_typed_row_value_expression_list row_value_predicand: row_value_special_case row_value_constructor_predicand
         ::= row_value_special_case
           | row_value_constructor_predicand
referenced by: between_predicate between_predicate_part_2 case_operand character_like_predicate comparison_predicate comparison_predicate_part_2 in_predicate match_predicate member_predicate normalized_predicate null_predicate octet_like_predicate quantified_comparison_predicate regex_like_predicate row_value_predicand_1 row_value_predicand_2 row_value_predicand_3 row_value_predicand_4 set_predicate similar_predicate submultiset_predicate type_predicate when_operand row_value_special_case: nonparenthesized_value_expression_primary referenced by: contextually_typed_row_value_expression row_value_expression row_value_predicand table_row_value_expression table_value_constructor: VALUES row_value_expression_list
         ::= 'VALUES' row_value_expression_list
referenced by: simple_table row_value_expression_list: table_row_value_expression , referenced by: table_value_constructor contextually_typed_table_value_constructor: VALUES contextually_typed_row_value_expression_list
         ::= 'VALUES' contextually_typed_row_value_expression_list
referenced by: from_constructor contextually_typed_row_value_expression_list: contextually_typed_row_value_expression , referenced by: contextually_typed_table_value_constructor table_expression: from_clause where_clause group_by_clause having_clause window_clause referenced by: query_specification select_statement__single_row from_clause: FROM table_reference_list
         ::= 'FROM' table_reference_list
referenced by: table_expression table_reference_list: table_reference ,
         ::= table_reference ( ',' table_reference )*
referenced by: from_clause table_reference: table_factor joined_table
         ::= table_factor
           | joined_table
referenced by: cross_join merge_statement natural_join qualified_join table_reference_list table_factor: table_primary sample_clause
         ::= table_primary sample_clause?
referenced by: cross_join natural_join partitioned_join_table table_reference sample_clause: TABLESAMPLE sample_method ( sample_percentage ) repeatable_clause
         ::= 'TABLESAMPLE' sample_method '(' sample_percentage ')' repeatable_clause?
referenced by: table_factor sample_method: BERNOULLI* SYSTEM
         ::= 'BERNOULLI*'
           | 'SYSTEM'
referenced by: sample_clause repeatable_clause: REPEATABLE* ( repeat_argument )
         ::= 'REPEATABLE*' '(' repeat_argument ')'
referenced by: sample_clause sample_percentage: numeric_value_expression
         ::= numeric_value_expression
referenced by: sample_clause repeat_argument: numeric_value_expression
         ::= numeric_value_expression
referenced by: repeatable_clause table_primary: table_or_query_name query_system_time_period_specification PTF_derived_table only_spec data_change_delta_table correlation_or_recognition derived_table lateral_derived_table collection_derived_table table_function_derived_table JSON_table correlation_or_recognition JSON_table_primitive correlation_name parenthesized_joined_table
           | JSON_table_primitive correlation_name
           | parenthesized_joined_table
referenced by: table_factor correlation_or_recognition: AS correlation_name parenthesized_derived_column_list row_pattern_recognition_clause_and_name referenced by: table_primary query_system_time_period_specification: FOR SYSTEM_TIME AS OF point_in_time_1 BETWEEN ASYMMETRIC SYMMETRIC point_in_time_1 AND FROM point_in_time_1 TO point_in_time_2
         ::= 'FOR' 'SYSTEM_TIME' ( 'AS' 'OF' point_in_time_1 | ( 'BETWEEN' ( 'ASYMMETRIC' | 'SYMMETRIC' )? point_in_time_1 'AND' | 'FROM' point_in_time_1 'TO' ) point_in_time_2 )
referenced by: table_primary point_in_time_1: point_in_time
         ::= point_in_time
referenced by: delete_statement__searched query_system_time_period_specification update_statement__searched point_in_time_2: point_in_time
         ::= point_in_time
referenced by: delete_statement__searched query_system_time_period_specification update_statement__searched point_in_time: datetime_value_expression
         ::= datetime_value_expression
referenced by: point_in_time_1 point_in_time_2 only_spec: ONLY ( table_or_query_name )
         ::= 'ONLY' '(' table_or_query_name ')'
referenced by: table_primary lateral_derived_table: LATERAL table_subquery
         ::= 'LATERAL' table_subquery
referenced by: table_primary collection_derived_table: UNNEST ( collection_value_expression , ) WITH ORDINALITY*
         ::= 'UNNEST' '(' collection_value_expression ( ',' collection_value_expression )* ')' ( 'WITH' 'ORDINALITY*' )?
referenced by: table_primary table_function_derived_table: TABLE ( collection_value_expression )
         ::= 'TABLE' '(' collection_value_expression ')'
referenced by: table_primary derived_table: table_subquery
         ::= table_subquery
referenced by: table_primary PTF_derived_table: TABLE ( routine_invocation )
         ::= 'TABLE' '(' routine_invocation ')'
referenced by: table_primary table_or_query_name: table_name transition_table_name query_name
         ::= table_name
           | transition_table_name
           | query_name
referenced by: explicit_table only_spec table_argument_proper table_primary derived_column_list: column_name_list
         ::= column_name_list
referenced by: parenthesized_derived_column_list column_name_list: column_name ,
         ::= column_name ( ',' column_name )*
referenced by: all_fields_column_name_list as_subquery_clause corresponding_column_list derived_column_list insert_column_list join_column_list privilege_column_list recursive_search_order referenced_column_list referencing_column_list trigger_column_list unique_column_list updatability_clause view_column_list with_column_list data_change_delta_table: result_option TABLE ( data_change_statement )
         ::= result_option 'TABLE' '(' data_change_statement ')'
referenced by: table_primary data_change_statement: delete_statement__searched insert_statement merge_statement update_statement__searched
         ::= delete_statement__searched
           | insert_statement
           | merge_statement
           | update_statement__searched
referenced by: data_change_delta_table result_option: FINAL* NEW OLD
         ::= 'FINAL*'
           | 'NEW'
           | 'OLD'
referenced by: data_change_delta_table parenthesized_joined_table: ( parenthesized_joined_table joined_table )
         ::= '(' ( parenthesized_joined_table | joined_table ) ')'
referenced by: parenthesized_joined_table table_primary row_pattern_recognition_clause_and_name: AS row_pattern_input_name row_pattern_input_derived_column_list row_pattern_recognition_clause AS row_pattern_output_name row_pattern_output_derived_column_list referenced by: correlation_or_recognition row_pattern_input_name: correlation_name
         ::= correlation_name
referenced by: row_pattern_recognition_clause_and_name row_pattern_output_name: correlation_name
         ::= correlation_name
referenced by: row_pattern_recognition_clause_and_name row_pattern_input_derived_column_list: parenthesized_derived_column_list
         ::= parenthesized_derived_column_list
referenced by: row_pattern_recognition_clause_and_name row_pattern_output_derived_column_list: parenthesized_derived_column_list
         ::= parenthesized_derived_column_list
referenced by: row_pattern_recognition_clause_and_name parenthesized_derived_column_list: ( derived_column_list )
         ::= '(' derived_column_list ')'
referenced by: correlation_or_recognition row_pattern_input_derived_column_list row_pattern_output_derived_column_list table_argument_parenthesized_derived_column_list row_pattern_recognition_clause: MATCH_RECOGNIZE ( row_pattern_partition_by row_pattern_order_by row_pattern_measures row_pattern_rows_per_match row_pattern_common_syntax ) referenced by: row_pattern_recognition_clause_and_name row_pattern_partition_by: PARTITION BY row_pattern_partition_list
         ::= 'PARTITION' 'BY' row_pattern_partition_list
referenced by: row_pattern_recognition_clause row_pattern_partition_list: row_pattern_partition_column , referenced by: row_pattern_partition_by row_pattern_partition_column: column_reference collate_clause
         ::= column_reference collate_clause?
referenced by: row_pattern_partition_list row_pattern_order_by: ORDER BY sort_specification_list
         ::= 'ORDER' 'BY' sort_specification_list
referenced by: row_pattern_recognition_clause row_pattern_rows_per_match: ONE ROW PER MATCH ALL ROWS PER MATCH row_pattern_empty_match_handling
         ::= 'ONE' 'ROW' 'PER' 'MATCH'
           | 'ALL' 'ROWS' 'PER' 'MATCH' row_pattern_empty_match_handling?
referenced by: row_pattern_recognition_clause row_pattern_empty_match_handling: SHOW OMIT EMPTY MATCHES WITH UNMATCHED ROWS
         ::= ( 'SHOW' | 'OMIT' ) 'EMPTY' 'MATCHES'
           | 'WITH' UNMATCHED 'ROWS'
referenced by: row_pattern_rows_per_match row_pattern_measures: MEASURES row_pattern_measure_list
         ::= MEASURES row_pattern_measure_list
referenced by: row_pattern_recognition_clause window_frame_clause row_pattern_measure_list: row_pattern_measure_definition , referenced by: row_pattern_measures row_pattern_measure_definition: row_pattern_measure_expression AS measure_name
         ::= row_pattern_measure_expression 'AS' measure_name
referenced by: row_pattern_measure_list row_pattern_measure_expression: value_expression
         ::= value_expression
referenced by: row_pattern_measure_definition row_pattern_common_syntax: AFTER* MATCH row_pattern_skip_to row_pattern_initial_or_seek PATTERN ( row_pattern ) row_pattern_subset_clause DEFINE row_pattern_definition_list
         ::= ( 'AFTER*' 'MATCH' row_pattern_skip_to )? row_pattern_initial_or_seek? 'PATTERN' '(' row_pattern ')' row_pattern_subset_clause? 'DEFINE' row_pattern_definition_list
referenced by: row_pattern_recognition_clause window_frame_clause row_pattern_skip_to: SKIP TO NEXT* ROW FIRST* LAST* row_pattern_skip_to_variable_name PAST* LAST* ROW
         ::= 'SKIP' ( 'TO' ( 'NEXT*' 'ROW' | ( 'FIRST*' | 'LAST*' )? row_pattern_skip_to_variable_name ) | 'PAST*' 'LAST*' 'ROW' )
referenced by: row_pattern_common_syntax row_pattern_skip_to_variable_name: row_pattern_variable_name
         ::= row_pattern_variable_name
referenced by: row_pattern_skip_to row_pattern_initial_or_seek: INITIAL SEEK
         ::= 'INITIAL'
           | 'SEEK'
referenced by: row_pattern_common_syntax row_pattern: row_pattern_term row_pattern_alternation
         ::= row_pattern_term
           | row_pattern_alternation
referenced by: row_pattern_alternation row_pattern_common_syntax row_pattern_permute row_pattern_primary row_pattern_alternation: row_pattern | row_pattern_term
         ::= row_pattern '|' row_pattern_term
referenced by: row_pattern row_pattern_term: row_pattern_factor
         ::= row_pattern_factor+
referenced by: row_pattern row_pattern_alternation row_pattern_factor: row_pattern_primary row_pattern_quantifier referenced by: row_pattern_term row_pattern_quantifier: * + ? ? { unsigned_integer , unsigned_integer } ? unsigned_integer }
         ::= ( '*' | '+' | '?' ) '?'?
           | '{' ( unsigned_integer? ',' unsigned_integer? '}' '?'? | unsigned_integer '}' )
referenced by: row_pattern_factor row_pattern_primary: row_pattern_primary_variable_name $ ^ ( row_pattern ) {- row_pattern -} row_pattern_permute
         ::= row_pattern_primary_variable_name
           | '$'
           | '^'
           | '(' row_pattern? ')'
           | '{-' row_pattern '-}'
           | row_pattern_permute
referenced by: row_pattern_factor row_pattern_primary_variable_name: row_pattern_variable_name
         ::= row_pattern_variable_name
referenced by: row_pattern_primary row_pattern_permute: PERMUTE ( row_pattern , )
         ::= PERMUTE '(' row_pattern ( ',' row_pattern )* ')'
referenced by: row_pattern_primary row_pattern_subset_clause: SUBSET row_pattern_subset_list
         ::= 'SUBSET' row_pattern_subset_list
referenced by: row_pattern_common_syntax row_pattern_subset_list: row_pattern_subset_item ,
         ::= row_pattern_subset_item ( ',' row_pattern_subset_item )*
referenced by: row_pattern_subset_clause row_pattern_subset_item: row_pattern_subset_item_variable_name = ( row_pattern_subset_rhs ) referenced by: row_pattern_subset_list row_pattern_subset_item_variable_name: row_pattern_variable_name
         ::= row_pattern_variable_name
referenced by: row_pattern_subset_item row_pattern_subset_rhs: row_pattern_subset_rhs_variable_name , referenced by: row_pattern_subset_item row_pattern_subset_rhs_variable_name: row_pattern_variable_name
         ::= row_pattern_variable_name
referenced by: row_pattern_subset_rhs row_pattern_definition_list: row_pattern_definition ,
         ::= row_pattern_definition ( ',' row_pattern_definition )*
referenced by: row_pattern_common_syntax row_pattern_definition: row_pattern_definition_variable_name AS row_pattern_definition_search_condition referenced by: row_pattern_definition_list row_pattern_definition_variable_name: row_pattern_variable_name
         ::= row_pattern_variable_name
referenced by: row_pattern_definition row_pattern_definition_search_condition: search_condition
         ::= search_condition
referenced by: row_pattern_definition joined_table: cross_join qualified_join natural_join
         ::= cross_join
           | qualified_join
           | natural_join
referenced by: parenthesized_joined_table table_reference cross_join: table_reference CROSS JOIN table_factor
         ::= table_reference 'CROSS' 'JOIN' table_factor
referenced by: joined_table qualified_join: table_reference partitioned_join_table join_type JOIN table_reference partitioned_join_table join_specification referenced by: joined_table partitioned_join_table: table_factor PARTITION BY partitioned_join_column_reference_list
         ::= table_factor 'PARTITION' 'BY' partitioned_join_column_reference_list
referenced by: natural_join qualified_join partitioned_join_column_reference_list: ( partitioned_join_column_reference , ) referenced by: partitioned_join_table partitioned_join_column_reference: column_reference
         ::= column_reference
referenced by: partitioned_join_column_reference_list natural_join: table_reference partitioned_join_table NATURAL join_type JOIN table_factor partitioned_join_table
         ::= ( table_reference | partitioned_join_table ) 'NATURAL' join_type? 'JOIN' ( table_factor | partitioned_join_table )
referenced by: joined_table join_specification: join_condition named_columns_join
         ::= join_condition
           | named_columns_join
referenced by: qualified_join join_condition: ON search_condition
         ::= 'ON' search_condition
referenced by: join_specification named_columns_join: USING ( join_column_list ) AS join_correlation_name
         ::= 'USING' '(' join_column_list ')' ( 'AS' join_correlation_name )?
referenced by: join_specification join_correlation_name: correlation_name
         ::= correlation_name
referenced by: named_columns_join join_type: INNER outer_join_type OUTER
         ::= 'INNER'
           | outer_join_type 'OUTER'?
referenced by: natural_join qualified_join outer_join_type: LEFT RIGHT FULL
         ::= 'LEFT'
           | 'RIGHT'
           | 'FULL'
referenced by: join_type join_column_list: column_name_list
         ::= column_name_list
referenced by: named_columns_join JSON_table: JSON_TABLE ( JSON_API_common_syntax JSON_table_columns_clause JSON_table_plan_clause JSON_table_error_behavior ON ERROR* )
         ::= 'JSON_TABLE' '(' JSON_API_common_syntax JSON_table_columns_clause JSON_table_plan_clause? ( JSON_table_error_behavior 'ON' 'ERROR*' )? ')'
referenced by: table_primary JSON_table_columns_clause: COLUMNS* ( JSON_table_column_definition , )
         ::= 'COLUMNS*' '(' JSON_table_column_definition ( ',' JSON_table_column_definition )* ')'
referenced by: JSON_table JSON_table_nested_columns JSON_table_column_definition: JSON_table_ordinality_column_definition JSON_table_regular_column_definition JSON_table_formatted_column_definition JSON_table_nested_columns
           | JSON_table_regular_column_definition
           | JSON_table_nested_columns
referenced by: JSON_table_columns_clause JSON_table_ordinality_column_definition: column_name FOR ORDINALITY*
         ::= column_name 'FOR' 'ORDINALITY*'
referenced by: JSON_table_column_definition JSON_table_primitive_column_definition JSON_table_regular_column_definition: column_name data_type PATH* JSON_table_column_path_specification JSON_table_column_empty_behavior ON EMPTY JSON_table_column_error_behavior ON ERROR* referenced by: JSON_table_column_definition JSON_table_primitive_column_definition JSON_table_column_empty_behavior: ERROR* NULL DEFAULT value_expression
         ::= 'ERROR*'
           | 'NULL'
           | 'DEFAULT' value_expression
referenced by: JSON_table_regular_column_definition JSON_table_column_error_behavior: ERROR* NULL DEFAULT value_expression
         ::= 'ERROR*'
           | 'NULL'
           | 'DEFAULT' value_expression
referenced by: JSON_table_regular_column_definition JSON_table_column_path_specification: JSON_path_specification
         ::= JSON_path_specification
referenced by: JSON_table_formatted_column_definition JSON_table_regular_column_definition JSON_table_formatted_column_definition: column_name data_type FORMAT* JSON_representation PATH* JSON_table_column_path_specification JSON_table_formatted_column_wrapper_behavior WRAPPER* JSON_table_formatted_column_quotes_behavior QUOTES* ON SCALAR* STRING* JSON_table_formatted_column_empty_behavior ON EMPTY JSON_table_formatted_column_error_behavior ON ERROR* referenced by: JSON_table_column_definition JSON_table_primitive_column_definition JSON_table_formatted_column_wrapper_behavior: WITHOUT WITH CONDITIONAL* UNCONDITIONAL* ARRAY
         ::= ( 'WITHOUT' | 'WITH' ( 'CONDITIONAL*' | 'UNCONDITIONAL*' )? ) 'ARRAY'?
referenced by: JSON_table_formatted_column_definition JSON_table_formatted_column_quotes_behavior: KEEP* OMIT
         ::= 'KEEP*'
           | 'OMIT'
referenced by: JSON_table_formatted_column_definition JSON_table_formatted_column_empty_behavior: ERROR* NULL EMPTY ARRAY OBJECT*
         ::= 'ERROR*'
           | 'NULL'
           | 'EMPTY' ( 'ARRAY' | 'OBJECT*' )
referenced by: JSON_table_formatted_column_definition JSON_table_formatted_column_error_behavior: ERROR* NULL EMPTY ARRAY OBJECT*
         ::= 'ERROR*'
           | 'NULL'
           | 'EMPTY' ( 'ARRAY' | 'OBJECT*' )
referenced by: JSON_table_formatted_column_definition JSON_table_nested_columns: NESTED* PATH* JSON_table_nested_path_specification AS JSON_table_nested_path_name JSON_table_columns_clause referenced by: JSON_table_column_definition JSON_table_nested_path_specification: JSON_path_specification
         ::= JSON_path_specification
referenced by: JSON_table_nested_columns JSON_table_nested_path_name: JSON_table_path_name
         ::= JSON_table_path_name
referenced by: JSON_table_nested_columns JSON_table_path_name: identifier
         ::= identifier
referenced by: JSON_API_common_syntax JSON_table_nested_path_name JSON_table_plan JSON_table_plan_inner JSON_table_plan_outer JSON_table_plan_primary JSON_table_plan_clause: JSON_table_specific_plan JSON_table_default_plan
         ::= JSON_table_specific_plan
           | JSON_table_default_plan
referenced by: JSON_table JSON_table_specific_plan: PLAN* ( JSON_table_plan )
         ::= 'PLAN*' '(' JSON_table_plan ')'
referenced by: JSON_table_plan_clause JSON_table_plan: JSON_table_path_name JSON_table_plan_parent_child JSON_table_plan_sibling
         ::= JSON_table_path_name
           | JSON_table_plan_parent_child
           | JSON_table_plan_sibling
referenced by: JSON_table_plan_primary JSON_table_specific_plan JSON_table_plan_parent_child: JSON_table_plan_outer JSON_table_plan_inner
         ::= JSON_table_plan_outer
           | JSON_table_plan_inner
referenced by: JSON_table_plan JSON_table_plan_outer: JSON_table_path_name OUTER JSON_table_plan_primary
         ::= JSON_table_path_name 'OUTER' JSON_table_plan_primary
referenced by: JSON_table_plan_parent_child JSON_table_plan_inner: JSON_table_path_name INNER JSON_table_plan_primary
         ::= JSON_table_path_name 'INNER' JSON_table_plan_primary
referenced by: JSON_table_plan_parent_child JSON_table_plan_sibling: JSON_table_plan_union JSON_table_plan_cross
         ::= JSON_table_plan_union
           | JSON_table_plan_cross
referenced by: JSON_table_plan JSON_table_plan_union: JSON_table_plan_primary UNION JSON_table_plan_primary
         ::= JSON_table_plan_primary ( 'UNION' JSON_table_plan_primary )+
referenced by: JSON_table_plan_sibling JSON_table_plan_cross: JSON_table_plan_primary CROSS JSON_table_plan_primary
         ::= JSON_table_plan_primary ( 'CROSS' JSON_table_plan_primary )+
referenced by: JSON_table_plan_sibling JSON_table_plan_primary: JSON_table_path_name ( JSON_table_plan )
         ::= JSON_table_path_name
           | '(' JSON_table_plan ')'
referenced by: JSON_table_plan_cross JSON_table_plan_inner JSON_table_plan_outer JSON_table_plan_union JSON_table_default_plan: PLAN* DEFAULT ( JSON_table_default_plan_choices )
         ::= 'PLAN*' 'DEFAULT' '(' JSON_table_default_plan_choices ')'
referenced by: JSON_table_plan_clause JSON_table_default_plan_choices: JSON_table_default_plan_inner_outer , JSON_table_default_plan_union_cross JSON_table_default_plan_union_cross , JSON_table_default_plan_inner_outer referenced by: JSON_table_default_plan JSON_table_default_plan_inner_outer: INNER OUTER
         ::= 'INNER'
           | 'OUTER'
referenced by: JSON_table_default_plan_choices JSON_table_default_plan_union_cross: UNION CROSS
         ::= 'UNION'
           | 'CROSS'
referenced by: JSON_table_default_plan_choices JSON_table_error_behavior: ERROR* EMPTY
         ::= 'ERROR*'
           | 'EMPTY'
referenced by: JSON_table JSON_table_primitive JSON_table_primitive: JSON_TABLE_PRIMITIVE ( JSON_API_common_syntax JSON_table_primitive_columns_clause JSON_table_error_behavior ON ERROR* )
         ::= 'JSON_TABLE_PRIMITIVE' '(' JSON_API_common_syntax JSON_table_primitive_columns_clause JSON_table_error_behavior 'ON' 'ERROR*' ')'
referenced by: table_primary JSON_table_primitive_columns_clause: COLUMNS* ( JSON_table_primitive_column_definition , )
         ::= 'COLUMNS*' '(' JSON_table_primitive_column_definition ( ',' JSON_table_primitive_column_definition )* ')'
referenced by: JSON_table_primitive JSON_table_primitive_column_definition: JSON_table_ordinality_column_definition JSON_table_regular_column_definition JSON_table_formatted_column_definition JSON_table_primitive_chaining_column
           | JSON_table_regular_column_definition
           | JSON_table_primitive_chaining_column
referenced by: JSON_table_primitive_columns_clause JSON_table_primitive_chaining_column: column_name FOR CHAINING*
         ::= column_name 'FOR' 'CHAINING*'
referenced by: JSON_table_primitive_column_definition where_clause: WHERE search_condition
         ::= 'WHERE' search_condition
referenced by: table_expression group_by_clause: GROUP BY set_quantifier grouping_element_list
         ::= 'GROUP' 'BY' set_quantifier? grouping_element_list
referenced by: table_expression grouping_element_list: grouping_element ,
         ::= grouping_element ( ',' grouping_element )*
referenced by: group_by_clause grouping_element: ordinary_grouping_set rollup_list cube_list grouping_sets_specification empty_grouping_set
         ::= ordinary_grouping_set
           | rollup_list
           | cube_list
           | grouping_sets_specification
           | empty_grouping_set
referenced by: grouping_element_list ordinary_grouping_set: grouping_column_reference ( grouping_column_reference_list )
         ::= grouping_column_reference
           | '(' grouping_column_reference_list ')'
referenced by: grouping_element grouping_set ordinary_grouping_set_list grouping_column_reference: column_reference collate_clause
         ::= column_reference collate_clause?
referenced by: grouping_column_reference_list ordinary_grouping_set grouping_column_reference_list: grouping_column_reference , referenced by: ordinary_grouping_set rollup_list: ROLLUP ( ordinary_grouping_set_list )
         ::= 'ROLLUP' '(' ordinary_grouping_set_list ')'
referenced by: grouping_element grouping_set ordinary_grouping_set_list: ordinary_grouping_set ,
         ::= ordinary_grouping_set ( ',' ordinary_grouping_set )*
referenced by: cube_list rollup_list cube_list: CUBE ( ordinary_grouping_set_list )
         ::= 'CUBE' '(' ordinary_grouping_set_list ')'
referenced by: grouping_element grouping_set grouping_sets_specification: GROUPING SETS* ( grouping_set_list )
         ::= 'GROUPING' 'SETS*' '(' grouping_set_list ')'
referenced by: grouping_element grouping_set grouping_set_list: grouping_set ,
         ::= grouping_set ( ',' grouping_set )*
referenced by: grouping_sets_specification grouping_set: ordinary_grouping_set rollup_list cube_list grouping_sets_specification empty_grouping_set
         ::= ordinary_grouping_set
           | rollup_list
           | cube_list
           | grouping_sets_specification
           | empty_grouping_set
referenced by: grouping_set_list empty_grouping_set: ( )
         ::= '(' ')'
referenced by: grouping_element grouping_set having_clause: HAVING search_condition
         ::= 'HAVING' search_condition
referenced by: table_expression window_clause: WINDOW window_definition_list
         ::= 'WINDOW' window_definition_list
referenced by: table_expression window_definition_list: window_definition ,
         ::= window_definition ( ',' window_definition )*
referenced by: window_clause window_definition: new_window_name AS window_specification
         ::= new_window_name 'AS' window_specification
referenced by: window_definition_list new_window_name: window_name
         ::= window_name
referenced by: window_definition window_specification: ( window_specification_details )
         ::= '(' window_specification_details ')'
referenced by: in_line_window_specification window_definition window_specification_details: existing_window_name window_partition_clause window_order_clause window_frame_clause referenced by: window_specification existing_window_name: window_name
         ::= window_name
referenced by: window_specification_details window_partition_clause: PARTITION BY window_partition_column_reference_list
         ::= 'PARTITION' 'BY' window_partition_column_reference_list
referenced by: window_specification_details window_partition_column_reference_list: window_partition_column_reference , referenced by: window_partition_clause window_partition_column_reference: column_reference collate_clause
         ::= column_reference collate_clause?
referenced by: window_partition_column_reference_list window_order_clause: ORDER BY sort_specification_list
         ::= 'ORDER' 'BY' sort_specification_list
referenced by: window_specification_details window_frame_clause: row_pattern_measures window_frame_units window_frame_extent window_frame_exclusion row_pattern_common_syntax referenced by: window_specification_details window_frame_units: ROWS RANGE GROUPS
         ::= 'ROWS'
           | 'RANGE'
           | 'GROUPS'
referenced by: window_frame_clause window_frame_extent: window_frame_start window_frame_between
         ::= window_frame_start
           | window_frame_between
referenced by: window_frame_clause window_frame_start: UNBOUNDED* PRECEDING* window_frame_preceding CURRENT ROW
         ::= 'UNBOUNDED*' 'PRECEDING*'
           | window_frame_preceding
           | 'CURRENT' 'ROW'
referenced by: window_frame_bound window_frame_extent window_frame_preceding: unsigned_value_specification PRECEDING*
         ::= unsigned_value_specification 'PRECEDING*'
referenced by: window_frame_start window_frame_between: BETWEEN window_frame_bound_1 AND window_frame_bound_2
         ::= 'BETWEEN' window_frame_bound_1 'AND' window_frame_bound_2
referenced by: window_frame_extent window_frame_bound_1: window_frame_bound
         ::= window_frame_bound
referenced by: window_frame_between window_frame_bound_2: window_frame_bound
         ::= window_frame_bound
referenced by: window_frame_between window_frame_bound: window_frame_start UNBOUNDED* FOLLOWING* window_frame_following
         ::= window_frame_start
           | 'UNBOUNDED*' 'FOLLOWING*'
           | window_frame_following
referenced by: window_frame_bound_1 window_frame_bound_2 window_frame_following: unsigned_value_specification FOLLOWING*
         ::= unsigned_value_specification 'FOLLOWING*'
referenced by: window_frame_bound window_frame_exclusion: EXCLUDE* CURRENT ROW GROUP TIES* NO OTHERS*
         ::= 'EXCLUDE*' ( 'CURRENT' 'ROW' | 'GROUP' | 'TIES*' | 'NO' 'OTHERS*' )
referenced by: window_frame_clause query_specification: SELECT set_quantifier select_list table_expression
         ::= 'SELECT' set_quantifier? select_list table_expression
referenced by: dynamic_single_row_select_statement simple_table select_list: * select_sublist ,
         ::= '*'
           | select_sublist ( ',' select_sublist )*
referenced by: query_specification select_statement__single_row select_sublist: derived_column qualified_asterisk
         ::= derived_column
           | qualified_asterisk
referenced by: select_list qualified_asterisk: asterisked_identifier_chain . * all_fields_reference
         ::= asterisked_identifier_chain '.' '*'
           | all_fields_reference
referenced by: select_sublist asterisked_identifier_chain: asterisked_identifier .
         ::= asterisked_identifier ( '.' asterisked_identifier )*
referenced by: qualified_asterisk asterisked_identifier: identifier
         ::= identifier
referenced by: asterisked_identifier_chain derived_column: value_expression as_clause
         ::= value_expression as_clause?
referenced by: select_sublist as_clause: AS column_name
         ::= 'AS'? column_name
referenced by: derived_column all_fields_reference: value_expression_primary . * AS ( all_fields_column_name_list )
         ::= value_expression_primary '.' '*' ( 'AS' '(' all_fields_column_name_list ')' )?
referenced by: qualified_asterisk all_fields_column_name_list: column_name_list
         ::= column_name_list
referenced by: all_fields_reference query_expression: with_clause query_expression_body order_by_clause result_offset_clause fetch_first_clause referenced by: JSON_array_constructor_by_query cursor_specification from_subquery subquery view_definition with_clause: WITH RECURSIVE with_list
         ::= 'WITH' 'RECURSIVE'? with_list
referenced by: query_expression with_list: with_list_element ,
         ::= with_list_element ( ',' with_list_element )*
referenced by: with_clause with_list_element: query_name ( with_column_list ) AS table_subquery search_or_cycle_clause
         ::= query_name ( '(' with_column_list ')' )? 'AS' table_subquery search_or_cycle_clause?
referenced by: with_list with_column_list: column_name_list
         ::= column_name_list
referenced by: with_list_element query_expression_body: query_term corresponding_spec ALL DISTINCT UNION EXCEPT
         ::= query_term ( ( 'UNION' | 'EXCEPT' ) ( 'ALL' | 'DISTINCT' )? corresponding_spec? query_term )*
referenced by: query_expression query_primary query_term: query_primary corresponding_spec ALL DISTINCT INTERSECT
         ::= query_primary ( 'INTERSECT' ( 'ALL' | 'DISTINCT' )? corresponding_spec? query_primary )*
referenced by: query_expression_body query_primary: simple_table ( query_expression_body order_by_clause result_offset_clause fetch_first_clause )
         ::= simple_table
referenced by: query_term simple_table: query_specification table_value_constructor explicit_table
         ::= query_specification
           | table_value_constructor
           | explicit_table
referenced by: query_primary explicit_table: TABLE table_or_query_name
         ::= 'TABLE' table_or_query_name
referenced by: simple_table corresponding_spec: CORRESPONDING BY ( corresponding_column_list )
         ::= 'CORRESPONDING' ( 'BY' '(' corresponding_column_list ')' )?
referenced by: query_expression_body query_term corresponding_column_list: column_name_list
         ::= column_name_list
referenced by: corresponding_spec order_by_clause: ORDER BY sort_specification_list
         ::= 'ORDER' 'BY' sort_specification_list
referenced by: query_expression query_primary result_offset_clause: OFFSET offset_row_count ROW ROWS
         ::= 'OFFSET' offset_row_count ( 'ROW' | 'ROWS' )
referenced by: query_expression query_primary fetch_first_clause: FETCH FIRST* NEXT* fetch_first_quantity ROW ROWS ONLY WITH TIES*
         ::= 'FETCH' ( 'FIRST*' | 'NEXT*' ) fetch_first_quantity? ( 'ROW' | 'ROWS' ) ( 'ONLY' | 'WITH' 'TIES*' )
referenced by: query_expression query_primary fetch_first_quantity: fetch_first_row_count fetch_first_percentage
         ::= fetch_first_row_count
           | fetch_first_percentage
referenced by: fetch_first_clause offset_row_count: simple_value_specification
         ::= simple_value_specification
referenced by: result_offset_clause fetch_first_row_count: simple_value_specification
         ::= simple_value_specification
referenced by: fetch_first_quantity fetch_first_percentage: simple_value_specification PERCENT
         ::= simple_value_specification 'PERCENT'
referenced by: fetch_first_quantity search_or_cycle_clause: search_clause cycle_clause cycle_clause
         ::= search_clause cycle_clause?
           | cycle_clause
referenced by: with_list_element search_clause: SEARCH recursive_search_order SET sequence_column
         ::= 'SEARCH' recursive_search_order 'SET' sequence_column
referenced by: search_or_cycle_clause recursive_search_order: DEPTH* BREADTH* FIRST* BY column_name_list
         ::= ( 'DEPTH*' | 'BREADTH*' ) 'FIRST*' 'BY' column_name_list
referenced by: search_clause sequence_column: column_name
         ::= column_name
referenced by: search_clause cycle_clause: CYCLE cycle_column_list SET cycle_mark_column TO cycle_mark_value DEFAULT non_cycle_mark_value USING path_column
         ::= 'CYCLE' cycle_column_list 'SET' cycle_mark_column 'TO' cycle_mark_value 'DEFAULT' non_cycle_mark_value 'USING' path_column
referenced by: search_or_cycle_clause cycle_column_list: cycle_column ,
         ::= cycle_column ( ',' cycle_column )*
referenced by: cycle_clause cycle_column: column_name
         ::= column_name
referenced by: cycle_column_list cycle_mark_column: column_name
         ::= column_name
referenced by: cycle_clause path_column: column_name
         ::= column_name
referenced by: cycle_clause cycle_mark_value: value_expression
         ::= value_expression
referenced by: cycle_clause non_cycle_mark_value: value_expression
         ::= value_expression
referenced by: cycle_clause scalar_subquery: subquery
         ::= subquery
referenced by: nonparenthesized_value_expression_primary row_subquery: subquery
         ::= subquery
referenced by: explicit_row_value_constructor table_subquery: subquery
         ::= subquery
referenced by: array_value_constructor_by_query as_subquery_clause derived_table exists_predicate in_predicate_value lateral_derived_table match_predicate_part_2 multiset_value_constructor_by_query quantified_comparison_predicate_part_2 table_argument_proper table_value_constructor_by_query unique_predicate with_list_element subquery: ( query_expression ) referenced by: row_subquery scalar_subquery table_subquery predicate: comparison_predicate between_predicate in_predicate like_predicate similar_predicate regex_like_predicate null_predicate quantified_comparison_predicate exists_predicate unique_predicate normalized_predicate match_predicate overlaps_predicate distinct_predicate member_predicate submultiset_predicate set_predicate type_predicate period_predicate JSON_predicate JSON_exists_predicate
         ::= comparison_predicate
           | between_predicate
           | in_predicate
           | like_predicate
           | similar_predicate
           | regex_like_predicate
           | null_predicate
           | quantified_comparison_predicate
           | exists_predicate
           | unique_predicate
           | normalized_predicate
           | match_predicate
           | overlaps_predicate
           | distinct_predicate
           | member_predicate
           | submultiset_predicate
           | set_predicate
           | type_predicate
           | period_predicate
           | JSON_predicate
           | JSON_exists_predicate
referenced by: boolean_primary comparison_predicate: row_value_predicand comparison_predicate_part_2 referenced by: predicate comparison_predicate_part_2: comp_op row_value_predicand
         ::= comp_op row_value_predicand
referenced by: comparison_predicate when_operand comp_op: = <> < > <= >=
comp_op  ::= '='
           | '<>'
           | '<'
           | '>'
           | '<='
           | '>='
referenced by: comparison_predicate_part_2 quantified_comparison_predicate_part_2 between_predicate: row_value_predicand between_predicate_part_2 referenced by: predicate between_predicate_part_2: NOT BETWEEN ASYMMETRIC SYMMETRIC row_value_predicand AND row_value_predicand
         ::= 'NOT'? 'BETWEEN' ( 'ASYMMETRIC' | 'SYMMETRIC' )? row_value_predicand 'AND' row_value_predicand
referenced by: between_predicate when_operand in_predicate: row_value_predicand in_predicate_part_2 referenced by: predicate in_predicate_part_2: NOT IN in_predicate_value
         ::= 'NOT'? 'IN' in_predicate_value
referenced by: in_predicate when_operand in_predicate_value: table_subquery ( in_value_list )
         ::= table_subquery
           | '(' in_value_list ')'
referenced by: in_predicate_part_2 in_value_list: row_value_expression ,
         ::= row_value_expression ( ',' row_value_expression )*
referenced by: in_predicate_value like_predicate: character_like_predicate octet_like_predicate
         ::= character_like_predicate
           | octet_like_predicate
referenced by: predicate character_like_predicate: row_value_predicand character_like_predicate_part_2 referenced by: like_predicate character_like_predicate_part_2: NOT LIKE character_pattern ESCAPE escape_character
         ::= 'NOT'? 'LIKE' character_pattern ( 'ESCAPE' escape_character )?
referenced by: character_like_predicate when_operand character_pattern: character_value_expression
         ::= character_value_expression
referenced by: character_like_predicate_part_2 escape_character: character_value_expression
         ::= character_value_expression
referenced by: character_like_predicate_part_2 regular_expression_substring_function similar_predicate_part_2 octet_like_predicate: row_value_predicand octet_like_predicate_part_2 referenced by: like_predicate octet_like_predicate_part_2: NOT LIKE octet_pattern ESCAPE escape_octet
         ::= 'NOT'? 'LIKE' octet_pattern ( 'ESCAPE' escape_octet )?
referenced by: octet_like_predicate when_operand octet_pattern: binary_value_expression
         ::= binary_value_expression
referenced by: octet_like_predicate_part_2 escape_octet: binary_value_expression
         ::= binary_value_expression
referenced by: octet_like_predicate_part_2 similar_predicate: row_value_predicand similar_predicate_part_2 referenced by: predicate similar_predicate_part_2: NOT SIMILAR TO similar_pattern ESCAPE escape_character
         ::= 'NOT'? 'SIMILAR' 'TO' similar_pattern ( 'ESCAPE' escape_character )?
referenced by: similar_predicate when_operand similar_pattern: character_value_expression
         ::= character_value_expression
referenced by: similar_predicate_part_2 regular_term: regular_factor
         ::= regular_factor+
referenced by: regular_primary regular_factor: regular_primary * + ? repeat_factor
         ::= regular_primary ( '*' | '+' | '?' | repeat_factor )?
referenced by: regular_term repeat_factor: { low_value upper_limit }
         ::= '{' low_value upper_limit? '}'
referenced by: regular_factor upper_limit: , high_value
         ::= ',' high_value?
referenced by: repeat_factor low_value: unsigned_integer
         ::= unsigned_integer
referenced by: repeat_factor high_value: unsigned_integer
         ::= unsigned_integer
referenced by: upper_limit regular_primary: character_specifier % regular_character_set ( regular_term | )
         ::= character_specifier
           | '%'
           | regular_character_set
           | '(' regular_term ( '|' regular_term )* ')'
referenced by: regular_factor character_specifier: !! See the Syntax Rules.
         ::= '!! See the Syntax Rules.'
referenced by: character_enumeration regular_primary regular_character_set: _ [ ^ character_enumeration character_enumeration_include ^ character_enumeration_exclude ]
         ::= '_'
referenced by: regular_primary character_enumeration_include: character_enumeration
         ::= character_enumeration
referenced by: regular_character_set character_enumeration_exclude: character_enumeration
         ::= character_enumeration
referenced by: regular_character_set character_enumeration: character_specifier - character_specifier [ : regular_character_set_identifier : ]
         ::= character_specifier ( '-' character_specifier )?
           | '[' ':' regular_character_set_identifier ':' ']'
referenced by: character_enumeration_exclude character_enumeration_include regular_character_set regular_character_set_identifier: identifier
         ::= identifier
referenced by: character_enumeration regex_like_predicate: row_value_predicand regex_like_predicate_part_2 referenced by: predicate regex_like_predicate_part_2: NOT LIKE_REGEX XQuery_pattern FLAG* XQuery_option_flag
         ::= 'NOT'? 'LIKE_REGEX' XQuery_pattern ( 'FLAG*' XQuery_option_flag )?
referenced by: regex_like_predicate when_operand null_predicate: row_value_predicand null_predicate_part_2 referenced by: predicate null_predicate_part_2: IS NOT NULL
         ::= 'IS' 'NOT'? 'NULL'
referenced by: null_predicate when_operand quantified_comparison_predicate: row_value_predicand quantified_comparison_predicate_part_2 referenced by: predicate quantified_comparison_predicate_part_2: comp_op quantifier table_subquery
         ::= comp_op quantifier table_subquery
referenced by: quantified_comparison_predicate when_operand quantifier: ALL some
         ::= 'ALL'
           | some
referenced by: quantified_comparison_predicate_part_2 some: SOME ANY
some     ::= 'SOME'
           | 'ANY'
referenced by: quantifier exists_predicate: EXISTS table_subquery
         ::= 'EXISTS' table_subquery
referenced by: predicate unique_predicate: UNIQUE table_subquery
         ::= 'UNIQUE' table_subquery
referenced by: predicate normalized_predicate: row_value_predicand normalized_predicate_part_2 referenced by: predicate normalized_predicate_part_2: IS NOT normal_form NORMALIZED*
         ::= 'IS' 'NOT'? normal_form? 'NORMALIZED*'
referenced by: normalized_predicate when_operand match_predicate: row_value_predicand match_predicate_part_2 referenced by: predicate match_predicate_part_2: MATCH UNIQUE SIMPLE* PARTIAL* FULL table_subquery
         ::= 'MATCH' 'UNIQUE'? ( 'SIMPLE*' | 'PARTIAL*' | 'FULL' )? table_subquery
referenced by: match_predicate when_operand overlaps_predicate: overlaps_predicate_part_1 overlaps_predicate_part_2 referenced by: predicate overlaps_predicate_part_1: row_value_predicand_1
         ::= row_value_predicand_1
referenced by: case_operand overlaps_predicate overlaps_predicate_part_2: OVERLAPS row_value_predicand_2
         ::= 'OVERLAPS' row_value_predicand_2
referenced by: overlaps_predicate when_operand row_value_predicand_1: row_value_predicand
         ::= row_value_predicand
referenced by: overlaps_predicate_part_1 row_value_predicand_2: row_value_predicand
         ::= row_value_predicand
referenced by: overlaps_predicate_part_2 distinct_predicate: row_value_predicand_3 distinct_predicate_part_2 referenced by: predicate distinct_predicate_part_2: IS NOT DISTINCT FROM row_value_predicand_4
         ::= 'IS' 'NOT'? 'DISTINCT' 'FROM' row_value_predicand_4
referenced by: distinct_predicate when_operand row_value_predicand_3: row_value_predicand
         ::= row_value_predicand
referenced by: distinct_predicate row_value_predicand_4: row_value_predicand
         ::= row_value_predicand
referenced by: distinct_predicate_part_2 member_predicate: row_value_predicand member_predicate_part_2 referenced by: predicate member_predicate_part_2: NOT MEMBER OF multiset_value_expression
         ::= 'NOT'? 'MEMBER' 'OF'? multiset_value_expression
referenced by: member_predicate when_operand submultiset_predicate: row_value_predicand submultiset_predicate_part_2 referenced by: predicate submultiset_predicate_part_2: NOT SUBMULTISET OF multiset_value_expression
         ::= 'NOT'? 'SUBMULTISET' 'OF'? multiset_value_expression
referenced by: submultiset_predicate when_operand set_predicate: row_value_predicand set_predicate_part_2 referenced by: predicate set_predicate_part_2: IS NOT A SET
         ::= 'IS' 'NOT'? 'A' 'SET'
referenced by: set_predicate when_operand type_predicate: row_value_predicand type_predicate_part_2 referenced by: predicate type_predicate_part_2: IS NOT OF ( type_list )
         ::= 'IS' 'NOT'? 'OF' '(' type_list ')'
referenced by: type_predicate when_operand type_list: user_defined_type_specification , referenced by: type_predicate_part_2 user_defined_type_specification: inclusive_user_defined_type_specification exclusive_user_defined_type_specification referenced by: type_list inclusive_user_defined_type_specification: path_resolved_user_defined_type_name referenced by: user_defined_type_specification exclusive_user_defined_type_specification: ONLY path_resolved_user_defined_type_name
         ::= 'ONLY' path_resolved_user_defined_type_name
referenced by: user_defined_type_specification period_predicate: period_overlaps_predicate period_equals_predicate period_contains_predicate period_precedes_predicate period_succeeds_predicate period_immediately_precedes_predicate period_immediately_succeeds_predicate
         ::= period_overlaps_predicate
           | period_equals_predicate
           | period_contains_predicate
           | period_precedes_predicate
           | period_succeeds_predicate
referenced by: predicate period_overlaps_predicate: period_predicand_1 period_overlaps_predicate_part_2 referenced by: period_predicate period_overlaps_predicate_part_2: OVERLAPS period_predicand_2
         ::= 'OVERLAPS' period_predicand_2
referenced by: period_overlaps_predicate period_predicand_1: period_predicand
         ::= period_predicand
referenced by: period_contains_predicate period_equals_predicate period_immediately_precedes_predicate period_immediately_succeeds_predicate period_overlaps_predicate period_precedes_predicate period_succeeds_predicate period_predicand_2: period_predicand
         ::= period_predicand
referenced by: period_equals_predicate_part_2 period_immediately_precedes_predicate_part_2 period_immediately_succeeds_predicate_part_2 period_overlaps_predicate_part_2 period_precedes_predicate_part_2 period_succeeds_predicate_part_2 period_predicand: period_reference PERIOD ( period_start_value , period_end_value )
         ::= period_reference
           | 'PERIOD' '(' period_start_value ',' period_end_value ')'
referenced by: period_or_point_in_time_predicand period_predicand_1 period_predicand_2 period_reference: basic_identifier_chain
         ::= basic_identifier_chain
referenced by: period_predicand period_start_value: datetime_value_expression
         ::= datetime_value_expression
referenced by: period_predicand period_end_value: datetime_value_expression
         ::= datetime_value_expression
referenced by: period_predicand period_equals_predicate: period_predicand_1 period_equals_predicate_part_2 referenced by: period_predicate period_equals_predicate_part_2: EQUALS period_predicand_2
         ::= 'EQUALS' period_predicand_2
referenced by: period_equals_predicate period_contains_predicate: period_predicand_1 period_contains_predicate_part_2 referenced by: period_predicate period_contains_predicate_part_2: CONTAINS period_or_point_in_time_predicand
         ::= 'CONTAINS' period_or_point_in_time_predicand
referenced by: period_contains_predicate period_or_point_in_time_predicand: period_predicand datetime_value_expression
         ::= period_predicand
           | datetime_value_expression
referenced by: period_contains_predicate_part_2 period_precedes_predicate: period_predicand_1 period_precedes_predicate_part_2 referenced by: period_predicate period_precedes_predicate_part_2: PRECEDES period_predicand_2
         ::= 'PRECEDES' period_predicand_2
referenced by: period_precedes_predicate period_succeeds_predicate: period_predicand_1 period_succeeds_predicate_part_2 referenced by: period_predicate period_succeeds_predicate_part_2: SUCCEEDS period_predicand_2
         ::= 'SUCCEEDS' period_predicand_2
referenced by: period_succeeds_predicate period_immediately_precedes_predicate: period_predicand_1 period_immediately_precedes_predicate_part_2 referenced by: period_predicate period_immediately_precedes_predicate_part_2: IMMEDIATELY* PRECEDES period_predicand_2
         ::= 'IMMEDIATELY*' 'PRECEDES' period_predicand_2
referenced by: period_immediately_precedes_predicate period_immediately_succeeds_predicate: period_predicand_1 period_immediately_succeeds_predicate_part_2 referenced by: period_predicate period_immediately_succeeds_predicate_part_2: IMMEDIATELY* SUCCEEDS period_predicand_2
         ::= 'IMMEDIATELY*' 'SUCCEEDS' period_predicand_2
referenced by: period_immediately_succeeds_predicate search_condition: boolean_value_expression
         ::= boolean_value_expression
referenced by: assertion_definition check_constraint_definition delete_statement__searched filter_clause having_clause join_condition merge_statement merge_when_matched_clause merge_when_not_matched_clause row_pattern_definition_search_condition searched_when_clause triggered_when_clause update_statement__searched where_clause JSON_predicate: string_value_expression JSON_input_clause IS NOT JSON* JSON_predicate_type_constraint JSON_key_uniqueness_constraint referenced by: predicate JSON_predicate_type_constraint: VALUE ARRAY OBJECT* SCALAR*
         ::= 'VALUE'
           | 'ARRAY'
           | 'OBJECT*'
           | 'SCALAR*'
referenced by: JSON_predicate JSON_key_uniqueness_constraint: WITH WITHOUT UNIQUE KEYS*
         ::= ( 'WITH' | 'WITHOUT' ) 'UNIQUE' 'KEYS*'?
referenced by: JSON_object_aggregate_constructor JSON_object_constructor JSON_predicate JSON_exists_predicate: JSON_EXISTS ( JSON_API_common_syntax JSON_exists_error_behavior ON ERROR* )
         ::= 'JSON_EXISTS' '(' JSON_API_common_syntax ( JSON_exists_error_behavior 'ON' 'ERROR*' )? ')'
referenced by: predicate JSON_exists_error_behavior: TRUE FALSE UNKNOWN ERROR*
         ::= 'TRUE'
           | 'FALSE'
           | 'UNKNOWN'
           | 'ERROR*'
referenced by: JSON_exists_predicate SQL_JSON_special_symbol: * @ , $ && == || ! > >= [ ( < <= - <> % . + ? ] ) /
         ::= '*'
           | '@'
           | ','
           | '$'
           | '&&'
           | '=='
           | '||'
           | '!'
           | '>'
           | '>='
           | '['
           | '('
           | '<'
           | '<='
           | '-'
           | '<>'
           | '%'
           | '.'
           | '+'
           | '?'
           | ']'
           | ')'
           | '/'
no referencesSQL_JSON_key_word: abs ceiling datetime double exists false flag floor is keyvalue last lax like_regex null size starts strict to true type unknown with
         ::= 'abs'
           | 'ceiling'
           | 'datetime'
           | 'double'
           | 'exists'
           | 'false'
           | 'flag'
           | 'floor'
           | 'is'
           | 'keyvalue'
           | 'last'
           | 'lax'
           | 'like_regex'
           | 'null'
           | 'size'
           | 'starts'
           | 'strict'
           | 'to'
           | 'true'
           | 'type'
           | 'unknown'
           | 'with'
no referencesJSON_path_context_variable: !! See the Syntax Rules. $
         ::= '!! See the Syntax Rules.'
           | '$'
referenced by: JSON_path_variable JSON_path_named_variable: $ !! See the Syntax Rules.
         ::= '$'? '!! See the Syntax Rules.'
referenced by: JSON_path_variable JSON_starts_with_initial JSON_path_expression: JSON_path_mode JSON_path_wff
         ::= JSON_path_mode JSON_path_wff
no referencesJSON_path_mode: strict lax
         ::= 'strict'
           | 'lax'
referenced by: JSON_path_expression JSON_path_primary: !! See the Syntax Rules. JSON_path_variable ( JSON_path_wff )
         ::= '!! See the Syntax Rules.'
           | JSON_path_variable
           | '(' JSON_path_wff ')'
referenced by: JSON_unary_expression JSON_path_variable: JSON_path_context_variable JSON_path_named_variable @ last
         ::= JSON_path_context_variable
           | JSON_path_named_variable
           | '@'
           | 'last'
referenced by: JSON_path_primary JSON_accessor_op: JSON____member_accessor JSON____wildcard_member_accessor JSON____array_accessor JSON____wildcard_array_accessor JSON____filter_expression JSON____item_method
         ::= JSON____member_accessor
           | JSON____wildcard_member_accessor
           | JSON____array_accessor
           | JSON____wildcard_array_accessor
           | JSON____filter_expression
           | JSON____item_method
referenced by: JSON_unary_expression JSON_member_accessor: . !! See the Syntax Rules.
         ::= '.' '!! See the Syntax Rules.'
no referencesJSON_wildcard_member_accessor: . *
         ::= '.' '*'
no referencesJSON_array_accessor: [ JSON_subscript_list ]
         ::= '[' JSON_subscript_list ']'
no referencesJSON_subscript_list: JSON_subscript ,
         ::= JSON_subscript ( ',' JSON_subscript )*
referenced by: JSON_array_accessor JSON_subscript: JSON_path_wff_1 JSON_path_wff_2 to JSON_path_wff_3
         ::= JSON_path_wff_1
           | JSON_path_wff_2 'to' JSON_path_wff_3
referenced by: JSON_subscript_list JSON_path_wff_1: JSON_path_wff
         ::= JSON_path_wff
referenced by: JSON_subscript JSON_path_wff_2: JSON_path_wff
         ::= JSON_path_wff
referenced by: JSON_subscript JSON_path_wff_3: JSON_path_wff
         ::= JSON_path_wff
referenced by: JSON_subscript JSON_wildcard_array_accessor: [ * ]
         ::= '[' '*' ']'
no referencesJSON_filter_expression: ? ( JSON_path_predicate )
         ::= '?' '(' JSON_path_predicate ')'
no referencesJSON_item_method: . JSON_method
         ::= '.' JSON_method
no referencesJSON_method: type size double ceiling floor abs keyvalue ( datetime ( !! See the Syntax Rules. )
         ::= ( ( 'type' | 'size' | 'double' | 'ceiling' | 'floor' | 'abs' | 'keyvalue' ) '(' | 'datetime' '(' '!! See the Syntax Rules.'? ) ')'
referenced by: JSON_item_method JSON_unary_expression: + - JSON_path_primary JSON_accessor_op
         ::= ( '+' | '-' )* JSON_path_primary JSON_accessor_op*
referenced by: JSON_multiplicative_expression JSON_multiplicative_expression: JSON_unary_expression * / %
         ::= JSON_unary_expression ( ( '*' | '/' | '%' ) JSON_unary_expression )*
referenced by: JSON_path_wff JSON_path_wff: JSON_multiplicative_expression + -
         ::= JSON_multiplicative_expression ( ( '+' | '-' ) JSON_multiplicative_expression )*
referenced by: JSON_comparison_predicate JSON_exists_path_predicate JSON_like_regex_predicate JSON_path_expression JSON_path_primary JSON_path_wff_1 JSON_path_wff_2 JSON_path_wff_3 JSON_starts_with_whole JSON_predicate_primary: JSON_delimited_predicate JSON_non_delimited_predicate
         ::= JSON_delimited_predicate
           | JSON_non_delimited_predicate
referenced by: JSON_boolean_negation JSON_delimited_predicate: JSON_exists_path_predicate ( JSON_path_predicate )
         ::= JSON_exists_path_predicate
           | '(' JSON_path_predicate ')'
referenced by: JSON_boolean_negation JSON_predicate_primary JSON_non_delimited_predicate: JSON_comparison_predicate JSON_like_regex_predicate JSON_starts_with_predicate JSON_unknown_predicate
         ::= JSON_comparison_predicate
           | JSON_like_regex_predicate
           | JSON_starts_with_predicate
           | JSON_unknown_predicate
referenced by: JSON_predicate_primary JSON_exists_path_predicate: exists ( JSON_path_wff )
         ::= 'exists' '(' JSON_path_wff ')'
referenced by: JSON_delimited_predicate JSON_comparison_predicate: JSON_path_wff JSON_comp_op JSON_path_wff referenced by: JSON_non_delimited_predicate JSON_comp_op: == <> < > <= >=
         ::= '=='
           | '<>'
           | '<'
           | '>'
           | '<='
           | '>='
referenced by: JSON_comparison_predicate JSON_like_regex_predicate: JSON_path_wff like_regex !! See the Syntax Rules. flag !! See the Syntax Rules.
         ::= JSON_path_wff 'like_regex' '!! See the Syntax Rules.' ( 'flag' '!! See the Syntax Rules.' )?
referenced by: JSON_non_delimited_predicate JSON_starts_with_predicate: JSON_starts_with_whole starts with JSON_starts_with_initial
         ::= JSON_starts_with_whole 'starts' 'with' JSON_starts_with_initial
referenced by: JSON_non_delimited_predicate JSON_starts_with_whole: JSON_path_wff
         ::= JSON_path_wff
referenced by: JSON_starts_with_predicate JSON_starts_with_initial: !! See the Syntax Rules. JSON_path_named_variable
         ::= '!! See the Syntax Rules.'
           | JSON_path_named_variable
referenced by: JSON_starts_with_predicate JSON_unknown_predicate: ( JSON_path_predicate ) is unknown
         ::= '(' JSON_path_predicate ')' 'is' 'unknown'
referenced by: JSON_non_delimited_predicate JSON_boolean_negation: JSON_predicate_primary ! JSON_delimited_predicate
         ::= JSON_predicate_primary
           | '!' JSON_delimited_predicate
referenced by: JSON_boolean_conjunction JSON_boolean_conjunction: JSON_boolean_negation &&
         ::= JSON_boolean_negation ( '&&' JSON_boolean_negation )*
referenced by: JSON_path_predicate JSON_path_predicate: JSON_boolean_conjunction ||
         ::= JSON_boolean_conjunction ( '||' JSON_boolean_conjunction )*
referenced by: JSON_delimited_predicate JSON_filter_expression JSON_unknown_predicate datetime_template: datetime_template_part
         ::= datetime_template_part+
no referencesdatetime_template_part: datetime_template_field datetime_template_delimiter
         ::= datetime_template_field
           | datetime_template_delimiter
referenced by: datetime_template datetime_template_field: datetime_template_year datetime_template_rounded_year datetime_template_month datetime_template_day_of_month datetime_template_day_of_year datetime_template_12_hour HH24 datetime_template_minute datetime_template_second_of_minute datetime_template_second_of_day datetime_template_fraction datetime_template_am_pm datetime_template_time_zone_hour datetime_template_time_zone_minute
         ::= datetime_template_year
           | datetime_template_rounded_year
           | datetime_template_month
           | datetime_template_day_of_month
           | datetime_template_day_of_year
           | datetime_template_12_hour
           | 'HH24'
           | datetime_template_minute
           | datetime_template_second_of_minute
           | datetime_template_second_of_day
           | datetime_template_fraction
           | datetime_template_am_pm
           | datetime_template_time_zone_hour
           | datetime_template_time_zone_minute
referenced by: datetime_template_part datetime_template_delimiter: - . / , ' ; : !! See the Syntax Rules.
         ::= '-'
           | '.'
           | '/'
           | ','
           | "'"
           | ';'
           | ':'
           | '!! See the Syntax Rules.'
referenced by: datetime_template_part datetime_template_year: YYYY YYY YY Y
         ::= YYYY
           | YYY
           | YY
           | 'Y'
referenced by: datetime_template_field datetime_template_rounded_year: RRRR RR
         ::= RRRR
           | RR
referenced by: datetime_template_field datetime_template_month: MM
         ::= MM
referenced by: datetime_template_field datetime_template_day_of_month: DD
         ::= DD
referenced by: datetime_template_field datetime_template_day_of_year: DDD
         ::= DDD
referenced by: datetime_template_field datetime_template_12_hour: HH HH12
         ::= HH
           | 'HH12'
referenced by: datetime_template_field datetime_template_minute: MI
         ::= MI
referenced by: datetime_template_field datetime_template_second_of_minute: SS
         ::= SS
referenced by: datetime_template_field datetime_template_second_of_day: SSSSS
         ::= SSSSS
referenced by: datetime_template_field datetime_template_fraction: FF1 FF2 FF3 FF4 FF5 FF6 FF7 FF8 FF9
         ::= 'FF1'
           | 'FF2'
           | 'FF3'
           | 'FF4'
           | 'FF5'
           | 'FF6'
           | 'FF7'
           | 'FF8'
           | 'FF9'
referenced by: datetime_template_field datetime_template_am_pm: A.M. P.M.
         ::= 'A.M.'
           | 'P.M.'
referenced by: datetime_template_field datetime_template_time_zone_hour: TZH
         ::= TZH
referenced by: datetime_template_field datetime_template_time_zone_minute: TZM
         ::= TZM
referenced by: datetime_template_field interval_qualifier: start_field TO end_field single_datetime_field
         ::= start_field 'TO' end_field
           | single_datetime_field
referenced by: interval_literal interval_primary interval_type interval_value_expression start_field: non_second_primary_datetime_field ( interval_leading_field_precision ) referenced by: interval_qualifier end_field: non_second_primary_datetime_field SECOND ( interval_fractional_seconds_precision )
         ::= non_second_primary_datetime_field
           | 'SECOND' ( '(' interval_fractional_seconds_precision ')' )?
referenced by: interval_qualifier single_datetime_field: non_second_primary_datetime_field ( interval_leading_field_precision ) SECOND ( interval_leading_field_precision , interval_fractional_seconds_precision )
           | 'SECOND' ( '(' interval_leading_field_precision ( ',' interval_fractional_seconds_precision )? ')' )?
referenced by: interval_qualifier primary_datetime_field: non_second_primary_datetime_field SECOND
         ::= non_second_primary_datetime_field
           | 'SECOND'
referenced by: extract_field non_second_primary_datetime_field: YEAR MONTH DAY HOUR MINUTE
         ::= 'YEAR'
           | 'MONTH'
           | 'DAY'
           | 'HOUR'
           | 'MINUTE'
referenced by: end_field primary_datetime_field single_datetime_field start_field interval_fractional_seconds_precision: unsigned_integer
         ::= unsigned_integer
referenced by: end_field single_datetime_field interval_leading_field_precision: unsigned_integer
         ::= unsigned_integer
referenced by: single_datetime_field start_field language_clause: LANGUAGE language_name
         ::= 'LANGUAGE' language_name
referenced by: SQL_client_module_definition alter_routine_characteristic method_characteristic routine_characteristic language_name: ADA* C COBOL* FORTRAN* M MUMPS* PASCAL* PLI* SQL
         ::= 'ADA*'
           | 'C'
           | 'COBOL*'
           | 'FORTRAN*'
           | 'M'
           | 'MUMPS*'
           | 'PASCAL*'
           | 'PLI*'
           | 'SQL'
referenced by: language_clause path_specification: PATH* schema_name_list
         ::= 'PATH*' schema_name_list
referenced by: embedded_path_specification module_path_specification schema_path_specification schema_name_list: schema_name ,
         ::= schema_name ( ',' schema_name )*
referenced by: path_specification routine_invocation: routine_name SQL_argument_list
         ::= routine_name SQL_argument_list
referenced by: PTF_derived_table call_statement constructor_method_selection method_selection new_invocation nonparenthesized_value_expression_primary static_method_selection table_function_invocation routine_name: schema_name . qualified_identifier
         ::= schema_name '.'? qualified_identifier
referenced by: routine_invocation SQL_argument_list: ( SQL_argument , copartition_clause )
         ::= '(' ( SQL_argument ( ',' SQL_argument )* copartition_clause? )? ')'
referenced by: attribute_or_method_reference direct_invocation generalized_invocation method_reference new_specification routine_invocation static_method_invocation SQL_argument: value_expression generalized_expression target_specification contextually_typed_value_specification named_argument_specification table_argument descriptor_argument
         ::= value_expression
           | generalized_expression
           | target_specification
           | named_argument_specification
           | table_argument
           | descriptor_argument
referenced by: SQL_argument_list generalized_expression: value_expression AS path_resolved_user_defined_type_name referenced by: SQL_argument named_argument_specification: SQL_parameter_name => named_argument_SQL_argument referenced by: SQL_argument named_argument_SQL_argument: value_expression target_specification contextually_typed_value_specification table_argument descriptor_argument
         ::= value_expression
           | target_specification
           | table_argument
           | descriptor_argument
referenced by: named_argument_specification table_argument: table_argument_proper AS table_argument_correlation_name table_argument_parenthesized_derived_column_list table_argument_partitioning table_argument_pruning table_argument_ordering referenced by: SQL_argument named_argument_SQL_argument table_argument_correlation_name: correlation_name
         ::= correlation_name
referenced by: table_argument table_argument_parenthesized_derived_column_list: parenthesized_derived_column_list
         ::= parenthesized_derived_column_list
referenced by: table_argument table_argument_proper: TABLE ( table_or_query_name ) table_subquery table_function_invocation
         ::= 'TABLE' ( '(' table_or_query_name ')' | table_subquery )
           | table_function_invocation
referenced by: table_argument table_function_invocation: routine_invocation
         ::= routine_invocation
referenced by: table_argument_proper table_argument_partitioning: PARTITION BY table_argument_partitioning_list
         ::= 'PARTITION' 'BY' table_argument_partitioning_list
referenced by: table_argument table_argument_partitioning_list: column_reference ( column_reference , )
         ::= column_reference
           | '(' ( column_reference ( ',' column_reference )* )? ')'
referenced by: table_argument_partitioning table_argument_pruning: PRUNE* KEEP* WHEN EMPTY
         ::= ( 'PRUNE*' | 'KEEP*' ) 'WHEN' 'EMPTY'
referenced by: table_argument table_argument_ordering: ORDER BY table_argument_ordering_list
         ::= 'ORDER' 'BY' table_argument_ordering_list
referenced by: table_argument table_argument_ordering_list: table_argument_ordering_column ( table_argument_ordering_column , )
         ::= table_argument_ordering_column
           | '(' table_argument_ordering_column ( ',' table_argument_ordering_column )* ')'
referenced by: table_argument_ordering table_argument_ordering_column: column_reference ordering_specification null_ordering referenced by: table_argument_ordering_list copartition_clause: COPARTITION copartition_list
         ::= COPARTITION copartition_list
referenced by: SQL_argument_list copartition_list: copartition_specification , referenced by: copartition_clause copartition_specification: ( range_variable , range_variable )
         ::= '(' range_variable ( ',' range_variable )+ ')'
referenced by: copartition_list range_variable: table_name query_name correlation_name
         ::= table_name
           | query_name
           | correlation_name
referenced by: copartition_specification descriptor_argument: descriptor_value_constructor CAST ( NULL AS DESCRIPTOR* )
         ::= descriptor_value_constructor
           | 'CAST' '(' 'NULL' 'AS' 'DESCRIPTOR*' ')'
referenced by: SQL_argument named_argument_SQL_argument character_set_specification: standard_character_set_name implementation_defined_character_set_name user_defined_character_set_name
         ::= standard_character_set_name
           | user_defined_character_set_name
referenced by: Ada_CLOB_variable Ada_qualified_type_specification COBOL_CLOB_variable COBOL_character_type C_CLOB_variable C_VARCHAR_variable C_character_variable Fortran_CLOB_variable Fortran_type_specification MUMPS_character_variable_specifier PL_I_CLOB_variable PL_I_type_specification Pascal_CLOB_variable Pascal_type_specification Unicode_character_string_literal character_set_source character_set_specification_list character_string_literal collation_definition embedded_character_set_declaration module_character_set_specification predefined_type schema_character_set_specification source_character_set_specification target_character_set_specification standard_character_set_name: character_set_name
         ::= character_set_name
referenced by: character_set_specification implementation_defined_character_set_name: character_set_name
         ::= character_set_name
referenced by: character_set_specification user_defined_character_set_name: character_set_name
         ::= character_set_name
referenced by: character_set_specification specific_routine_designator: SPECIFIC routine_type specific_name routine_type member_name FOR schema_resolved_user_defined_type_name
         ::= 'SPECIFIC' routine_type specific_name
referenced by: PTF_describe_component_procedure PTF_finish_component_procedure PTF_fulfill_component_procedure PTF_start_component_procedure allocate_received_cursor_statement alter_routine_statement cast_function drop_routine_statement from_sql_function map_function_specification object_name privilege_method_list relative_function_specification to_sql_function transliteration_routine routine_type: ROUTINE* FUNCTION PROCEDURE INSTANCE* STATIC CONSTRUCTOR* METHOD
         ::= 'ROUTINE*'
           | 'FUNCTION'
           | 'PROCEDURE'
           | ( 'INSTANCE*' | 'STATIC' | 'CONSTRUCTOR*' )? 'METHOD'
referenced by: specific_routine_designator member_name: member_name_alternatives data_type_list referenced by: specific_routine_designator member_name_alternatives: schema_qualified_routine_name method_name
         ::= schema_qualified_routine_name
           | method_name
referenced by: member_name data_type_list: ( data_type , )
         ::= '(' ( data_type ( ',' data_type )* )? ')'
referenced by: member_name specific_method_specification_designator collate_clause: COLLATE collation_name
         ::= 'COLLATE' collation_name
referenced by: attribute_definition character_factor character_set_definition column_definition domain_definition grouping_column_reference predefined_type row_pattern_partition_column window_partition_column_reference constraint_name_definition: CONSTRAINT constraint_name
         ::= 'CONSTRAINT' constraint_name
referenced by: column_constraint_definition domain_constraint table_constraint_definition constraint_characteristics: constraint_check_time NOT DEFERRABLE* NOT DEFERRABLE* constraint_check_time constraint_enforcement constraint_enforcement
         ::= ( constraint_check_time ( 'NOT'? 'DEFERRABLE*' )? | 'NOT'? 'DEFERRABLE*' constraint_check_time? ) constraint_enforcement?
           | constraint_enforcement
referenced by: assertion_definition column_constraint_definition domain_constraint table_constraint_definition constraint_check_time: INITIALLY* DEFERRED* IMMEDIATE*
         ::= 'INITIALLY*' ( 'DEFERRED*' | 'IMMEDIATE*' )
referenced by: constraint_characteristics constraint_enforcement: NOT ENFORCED*
         ::= 'NOT'? 'ENFORCED*'
referenced by: alter_table_constraint_definition constraint_characteristics aggregate_function: COUNT ( * ) general_set_function binary_set_function ordered_set_function array_aggregate_function row_pattern_count_function JSON_aggregate_function filter_clause referenced by: set_function_specification window_function_type general_set_function: set_function_type ( set_quantifier value_expression )
         ::= set_function_type '(' set_quantifier? value_expression ')'
referenced by: aggregate_function set_function_type: computational_operation
         ::= computational_operation
referenced by: general_set_function computational_operation: AVG MAX MIN SUM EVERY ANY SOME COUNT STDDEV_POP STDDEV_SAMP VAR_SAMP VAR_POP COLLECT FUSION INTERSECTION
         ::= 'AVG'
           | 'MAX'
           | 'MIN'
           | 'SUM'
           | 'EVERY'
           | 'ANY'
           | 'SOME'
           | 'COUNT'
           | 'STDDEV_POP'
           | 'STDDEV_SAMP'
           | 'VAR_SAMP'
           | 'VAR_POP'
           | 'COLLECT'
           | 'FUSION'
           | 'INTERSECTION'
referenced by: set_function_type set_quantifier: DISTINCT ALL
         ::= 'DISTINCT'
           | 'ALL'
referenced by: general_set_function group_by_clause listagg_set_function query_specification select_statement__single_row filter_clause: FILTER ( WHERE search_condition )
         ::= 'FILTER' '(' 'WHERE' search_condition ')'
referenced by: aggregate_function binary_set_function: binary_set_function_type ( dependent_variable_expression , independent_variable_expression ) referenced by: aggregate_function binary_set_function_type: COVAR_POP COVAR_SAMP CORR REGR_SLOPE REGR_INTERCEPT REGR_COUNT REGR_R2 REGR_AVGX REGR_AVGY REGR_SXX REGR_SYY REGR_SXY
         ::= 'COVAR_POP'
           | 'COVAR_SAMP'
           | 'CORR'
           | 'REGR_SLOPE'
           | 'REGR_INTERCEPT'
           | 'REGR_COUNT'
           | 'REGR_R2'
           | 'REGR_AVGX'
           | 'REGR_AVGY'
           | 'REGR_SXX'
           | 'REGR_SYY'
           | 'REGR_SXY'
referenced by: binary_set_function dependent_variable_expression: numeric_value_expression
         ::= numeric_value_expression
referenced by: binary_set_function independent_variable_expression: numeric_value_expression
         ::= numeric_value_expression
referenced by: binary_set_function ordered_set_function: hypothetical_set_function inverse_distribution_function listagg_set_function
         ::= hypothetical_set_function
           | inverse_distribution_function
           | listagg_set_function
referenced by: aggregate_function hypothetical_set_function: rank_function_type ( hypothetical_set_function_value_expression_list ) within_group_specification referenced by: ordered_set_function within_group_specification: WITHIN GROUP ( ORDER BY sort_specification_list )
         ::= 'WITHIN' 'GROUP' '(' 'ORDER' 'BY' sort_specification_list ')'
referenced by: hypothetical_set_function inverse_distribution_function listagg_set_function hypothetical_set_function_value_expression_list: value_expression ,
         ::= value_expression ( ',' value_expression )*
referenced by: hypothetical_set_function inverse_distribution_function: inverse_distribution_function_type ( inverse_distribution_function_argument ) within_group_specification referenced by: ordered_set_function inverse_distribution_function_argument: numeric_value_expression
         ::= numeric_value_expression
referenced by: inverse_distribution_function inverse_distribution_function_type: PERCENTILE_CONT PERCENTILE_DISC
         ::= 'PERCENTILE_CONT'
           | 'PERCENTILE_DISC'
referenced by: inverse_distribution_function listagg_set_function: LISTAGG ( set_quantifier character_value_expression , listagg_separator listagg_overflow_clause ) within_group_specification referenced by: ordered_set_function listagg_separator: character_string_literal
         ::= character_string_literal
referenced by: listagg_set_function listagg_overflow_clause: ON OVERFLOW* overflow_behavior
         ::= 'ON' 'OVERFLOW*' overflow_behavior
referenced by: listagg_set_function overflow_behavior: ERROR* TRUNCATE listagg_truncation_filler listagg_count_indication
         ::= 'ERROR*'
           | 'TRUNCATE' listagg_truncation_filler? listagg_count_indication
referenced by: listagg_overflow_clause listagg_truncation_filler: character_string_literal
         ::= character_string_literal
referenced by: overflow_behavior listagg_count_indication: WITH WITHOUT COUNT
         ::= ( 'WITH' | 'WITHOUT' ) 'COUNT'
referenced by: overflow_behavior array_aggregate_function: ARRAY_AGG ( value_expression ORDER BY sort_specification_list )
         ::= 'ARRAY_AGG' '(' value_expression ( 'ORDER' 'BY' sort_specification_list )? ')'
referenced by: aggregate_function row_pattern_count_function: COUNT ( row_pattern_variable_name . * )
         ::= 'COUNT' '(' row_pattern_variable_name '.' '*' ')'
referenced by: aggregate_function sort_specification_list: sort_specification ,
         ::= sort_specification ( ',' sort_specification )*
referenced by: JSON_array_aggregate_order_by_clause array_aggregate_function order_by_clause row_pattern_order_by window_order_clause within_group_specification sort_specification: sort_key ordering_specification null_ordering referenced by: sort_specification_list sort_key: value_expression referenced by: sort_specification ordering_specification: ASC* DESC*
         ::= 'ASC*'
           | 'DESC*'
referenced by: sort_specification table_argument_ordering_column null_ordering: NULLS* FIRST* LAST*
         ::= 'NULLS*' ( 'FIRST*' | 'LAST*' )
referenced by: sort_specification table_argument_ordering_column JSON_aggregate_function: JSON_object_aggregate_constructor JSON_array_aggregate_constructor
         ::= JSON_object_aggregate_constructor
           | JSON_array_aggregate_constructor
referenced by: aggregate_function JSON_object_aggregate_constructor: JSON_OBJECTAGG ( JSON_name_and_value JSON_constructor_null_clause JSON_key_uniqueness_constraint JSON_output_clause ) referenced by: JSON_aggregate_function JSON_array_aggregate_constructor: JSON_ARRAYAGG ( JSON_value_expression JSON_array_aggregate_order_by_clause JSON_constructor_null_clause JSON_output_clause ) referenced by: JSON_aggregate_function JSON_array_aggregate_order_by_clause: ORDER BY sort_specification_list
         ::= 'ORDER' 'BY' sort_specification_list
referenced by: JSON_array_aggregate_constructor JSON_value_expression: value_expression JSON_input_clause
         ::= value_expression JSON_input_clause?
referenced by: JSON_argument JSON_array_aggregate_constructor JSON_array_constructor_by_enumeration JSON_context_item JSON_name_and_value JSON_input_clause: FORMAT* JSON_representation
         ::= 'FORMAT*' JSON_representation
referenced by: JSON_array_constructor_by_query JSON_predicate JSON_value_expression JSON_output_clause: RETURNING* data_type FORMAT* JSON_representation
         ::= 'RETURNING*' data_type ( 'FORMAT*' JSON_representation )?
referenced by: JSON_array_aggregate_constructor JSON_array_constructor_by_enumeration JSON_array_constructor_by_query JSON_object_aggregate_constructor JSON_object_constructor JSON_query JSON_representation: JSON* ENCODING* UTF8 UTF16 UTF32 !! See the Syntax Rules.
         ::= 'JSON*' ( 'ENCODING*' ( 'UTF8' | 'UTF16' | 'UTF32' ) )?
           | '!! See the Syntax Rules.'
referenced by: JSON_input_clause JSON_output_clause JSON_table_formatted_column_definition JSON_API_common_syntax: JSON_context_item , JSON_path_specification AS JSON_table_path_name JSON_passing_clause referenced by: JSON_exists_predicate JSON_query JSON_table JSON_table_primitive JSON_value_function JSON_context_item: JSON_value_expression
         ::= JSON_value_expression
referenced by: JSON_API_common_syntax JSON_path_specification: character_string_literal
         ::= character_string_literal
referenced by: JSON_API_common_syntax JSON_table_column_path_specification JSON_table_nested_path_specification JSON_passing_clause: PASSING* JSON_argument ,
         ::= 'PASSING*' JSON_argument ( ',' JSON_argument )*
referenced by: JSON_API_common_syntax JSON_argument: JSON_value_expression AS identifier
         ::= JSON_value_expression 'AS' identifier
referenced by: JSON_passing_clause schema_definition: CREATE SCHEMA* schema_name_clause schema_character_set_or_path schema_element
         ::= 'CREATE' 'SCHEMA*' schema_name_clause schema_character_set_or_path? schema_element*
referenced by: SQL_schema_definition_statement schema_character_set_or_path: schema_character_set_specification schema_path_specification schema_path_specification schema_character_set_specification referenced by: schema_definition schema_name_clause: schema_name AUTHORIZATION schema_authorization_identifier AUTHORIZATION schema_authorization_identifier
         ::= schema_name ( 'AUTHORIZATION' schema_authorization_identifier )?
           | 'AUTHORIZATION' schema_authorization_identifier
referenced by: schema_definition schema_authorization_identifier: authorization_identifier
         ::= authorization_identifier
referenced by: schema_name_clause schema_character_set_specification: DEFAULT CHARACTER SET character_set_specification
         ::= 'DEFAULT' 'CHARACTER' 'SET' character_set_specification
referenced by: schema_character_set_or_path schema_path_specification: path_specification
         ::= path_specification
referenced by: schema_character_set_or_path schema_element: table_definition view_definition domain_definition character_set_definition collation_definition transliteration_definition assertion_definition trigger_definition user_defined_type_definition user_defined_cast_definition user_defined_ordering_definition transform_definition schema_routine sequence_generator_definition grant_statement role_definition
         ::= table_definition
           | view_definition
           | domain_definition
           | character_set_definition
           | collation_definition
           | transliteration_definition
           | assertion_definition
           | trigger_definition
           | user_defined_type_definition
           | user_defined_cast_definition
           | user_defined_ordering_definition
           | transform_definition
           | schema_routine
           | sequence_generator_definition
           | grant_statement
           | role_definition
referenced by: schema_definition drop_schema_statement: DROP SCHEMA* schema_name drop_behavior
         ::= 'DROP' 'SCHEMA*' schema_name drop_behavior
referenced by: SQL_schema_manipulation_statement drop_behavior: CASCADE* RESTRICT*
         ::= 'CASCADE*'
           | 'RESTRICT*'
referenced by: drop_assertion_statement drop_collation_statement drop_column_definition drop_column_scope_clause drop_data_type_statement drop_domain_statement drop_routine_statement drop_schema_statement drop_sequence_generator_statement drop_system_versioning_clause drop_table_constraint_definition drop_table_period_definition drop_table_statement drop_transform_element_list drop_transform_statement drop_user_defined_cast_statement drop_user_defined_ordering_statement drop_view_statement revoke_privilege_statement revoke_role_statement table_definition: CREATE table_scope TABLE table_name table_contents_source WITH system_versioning_clause ON COMMIT table_commit_action ROWS
         ::= 'CREATE' table_scope? 'TABLE' table_name table_contents_source ( 'WITH' system_versioning_clause )? ( 'ON' 'COMMIT' table_commit_action 'ROWS' )?
referenced by: SQL_schema_definition_statement schema_element table_contents_source: table_element_list typed_table_clause as_subquery_clause
         ::= table_element_list
           | typed_table_clause
           | as_subquery_clause
referenced by: table_definition table_scope: global_or_local TEMPORARY*
         ::= global_or_local 'TEMPORARY*'
referenced by: table_definition global_or_local: GLOBAL LOCAL
         ::= 'GLOBAL'
           | 'LOCAL'
referenced by: table_scope system_versioning_clause: SYSTEM VERSIONING
         ::= 'SYSTEM' 'VERSIONING'
referenced by: add_system_versioning_clause table_definition table_commit_action: PRESERVE* DELETE
         ::= 'PRESERVE*'
           | 'DELETE'
referenced by: table_definition temporary_table_declaration table_element_list: ( table_element , )
         ::= '(' table_element ( ',' table_element )* ')'
referenced by: table_contents_source temporary_table_declaration table_element: column_definition table_period_definition table_constraint_definition like_clause
         ::= column_definition
           | table_period_definition
           | table_constraint_definition
           | like_clause
referenced by: table_element_list typed_table_clause: OF path_resolved_user_defined_type_name subtable_clause typed_table_element_list referenced by: table_contents_source typed_table_element_list: ( typed_table_element , )
         ::= '(' typed_table_element ( ',' typed_table_element )* ')'
referenced by: typed_table_clause typed_table_element: column_options table_constraint_definition self_referencing_column_specification
         ::= column_options
           | table_constraint_definition
referenced by: typed_table_element_list self_referencing_column_specification: REF IS self_referencing_column_name reference_generation
         ::= 'REF' 'IS' self_referencing_column_name reference_generation?
referenced by: typed_table_element view_element reference_generation: SYSTEM USER GENERATED* DERIVED*
         ::= ( 'SYSTEM' | 'USER' ) 'GENERATED*'
           | 'DERIVED*'
referenced by: self_referencing_column_specification self_referencing_column_name: column_name
         ::= column_name
referenced by: self_referencing_column_specification column_options: column_name WITH OPTIONS* column_option_list
         ::= column_name 'WITH' 'OPTIONS*' column_option_list
referenced by: typed_table_element column_option_list: scope_clause default_clause column_constraint_definition referenced by: column_options subtable_clause: UNDER* supertable_clause
         ::= 'UNDER*' supertable_clause
referenced by: typed_table_clause supertable_clause: supertable_name
         ::= supertable_name
referenced by: subtable_clause supertable_name: table_name
         ::= table_name
referenced by: supertable_clause like_clause: LIKE table_name like_options
         ::= 'LIKE' table_name like_options?
referenced by: table_element like_options: like_option
         ::= like_option+
referenced by: like_clause like_option: identity_option column_default_option generation_option
         ::= identity_option
           | column_default_option
           | generation_option
referenced by: like_options identity_option: INCLUDING* EXCLUDING* IDENTITY
         ::= ( 'INCLUDING*' | 'EXCLUDING*' ) 'IDENTITY'
referenced by: like_option column_default_option: INCLUDING* EXCLUDING* DEFAULTS*
         ::= ( 'INCLUDING*' | 'EXCLUDING*' ) 'DEFAULTS*'
referenced by: like_option generation_option: INCLUDING* EXCLUDING* GENERATED*
         ::= ( 'INCLUDING*' | 'EXCLUDING*' ) 'GENERATED*'
referenced by: like_option as_subquery_clause: ( column_name_list ) AS table_subquery with_or_without_data
         ::= ( '(' column_name_list ')' )? 'AS' table_subquery with_or_without_data
referenced by: table_contents_source with_or_without_data: WITH NO DATA*
         ::= 'WITH' 'NO'? 'DATA*'
referenced by: as_subquery_clause table_period_definition: system_or_application_time_period_specification ( period_begin_column_name , period_end_column_name ) referenced by: add_table_period_definition table_element system_or_application_time_period_specification: system_time_period_specification application_time_period_specification
         ::= system_time_period_specification
referenced by: drop_table_period_definition table_period_definition system_time_period_specification: PERIOD FOR SYSTEM_TIME
         ::= 'PERIOD' 'FOR' 'SYSTEM_TIME'
referenced by: system_or_application_time_period_specification application_time_period_specification: PERIOD FOR application_time_period_name
         ::= 'PERIOD' 'FOR' application_time_period_name
referenced by: system_or_application_time_period_specification application_time_period_name: identifier
         ::= identifier
referenced by: application_time_period_specification delete_statement__searched referenced_period_specification referencing_period_specification update_statement__searched without_overlap_specification period_begin_column_name: column_name
         ::= column_name
referenced by: table_period_definition period_end_column_name: column_name
         ::= column_name
referenced by: table_period_definition column_definition: column_name data_type_or_domain_name default_clause identity_column_specification generation_clause system_time_period_start_column_specification system_time_period_end_column_specification column_constraint_definition collate_clause referenced by: add_column_definition column_definition_1 column_definition_2 table_element data_type_or_domain_name: data_type domain_name
         ::= data_type
           | domain_name
referenced by: column_definition system_time_period_start_column_specification: timestamp_generation_rule AS ROW START
         ::= timestamp_generation_rule 'AS' 'ROW' 'START'
referenced by: column_definition system_time_period_end_column_specification: timestamp_generation_rule AS ROW END
         ::= timestamp_generation_rule 'AS' 'ROW' 'END'
referenced by: column_definition timestamp_generation_rule: GENERATED* ALWAYS*
         ::= 'GENERATED*' 'ALWAYS*'
referenced by: system_time_period_end_column_specification system_time_period_start_column_specification column_constraint_definition: constraint_name_definition column_constraint constraint_characteristics referenced by: column_definition column_option_list column_constraint: NOT NULL unique_specification references_specification check_constraint_definition
         ::= 'NOT' 'NULL'
           | unique_specification
           | references_specification
           | check_constraint_definition
referenced by: column_constraint_definition identity_column_specification: GENERATED* ALWAYS* BY DEFAULT AS IDENTITY ( common_sequence_generator_options )
         ::= 'GENERATED*' ( 'ALWAYS*' | 'BY' 'DEFAULT' ) 'AS' 'IDENTITY' ( '(' common_sequence_generator_options ')' )?
referenced by: column_definition generation_clause: generation_rule AS generation_expression
         ::= generation_rule 'AS' generation_expression
referenced by: column_definition generation_rule: GENERATED* ALWAYS*
         ::= 'GENERATED*' 'ALWAYS*'
referenced by: generation_clause generation_expression: ( value_expression )
         ::= '(' value_expression ')'
referenced by: generation_clause default_clause: DEFAULT default_option
         ::= 'DEFAULT' default_option
referenced by: attribute_default column_definition column_option_list domain_definition set_column_default_clause set_domain_default_clause default_option: literal datetime_value_function USER CURRENT_USER CURRENT_ROLE SESSION_USER SYSTEM_USER CURRENT_CATALOG CURRENT_SCHEMA CURRENT_PATH implicitly_typed_value_specification
         ::= literal
           | datetime_value_function
           | 'USER'
           | 'CURRENT_USER'
           | CURRENT_ROLE
           | 'SESSION_USER'
           | 'SYSTEM_USER'
           | 'CURRENT_CATALOG'
           | 'CURRENT_SCHEMA'
           | CURRENT_PATH
           | implicitly_typed_value_specification
referenced by: default_clause table_constraint_definition: constraint_name_definition table_constraint constraint_characteristics referenced by: add_table_constraint_definition table_element typed_table_element table_constraint: unique_constraint_definition referential_constraint_definition check_constraint_definition
         ::= unique_constraint_definition
           | referential_constraint_definition
           | check_constraint_definition
referenced by: table_constraint_definition unique_constraint_definition: unique_specification ( unique_column_list , without_overlap_specification ) UNIQUE VALUE
           | 'UNIQUE' 'VALUE'?
referenced by: table_constraint unique_specification: UNIQUE PRIMARY KEY*
         ::= 'UNIQUE'
           | 'PRIMARY' 'KEY*'
referenced by: column_constraint unique_constraint_definition unique_column_list: column_name_list
         ::= column_name_list
referenced by: unique_constraint_definition without_overlap_specification: application_time_period_name WITHOUT OVERLAPS
         ::= application_time_period_name 'WITHOUT' 'OVERLAPS'
referenced by: unique_constraint_definition referential_constraint_definition: FOREIGN KEY* ( referencing_column_list , referencing_period_specification ) references_specification
         ::= 'FOREIGN' 'KEY*' '(' referencing_column_list ( ',' referencing_period_specification )? ')' references_specification
referenced by: table_constraint references_specification: REFERENCES referenced_table_and_columns MATCH match_type referential_triggered_action
         ::= 'REFERENCES' referenced_table_and_columns ( 'MATCH' match_type )? referential_triggered_action?
referenced by: column_constraint referential_constraint_definition match_type: FULL PARTIAL* SIMPLE*
         ::= 'FULL'
           | 'PARTIAL*'
           | 'SIMPLE*'
referenced by: references_specification referencing_column_list: column_name_list
         ::= column_name_list
referenced by: referential_constraint_definition referencing_period_specification: PERIOD application_time_period_name
         ::= 'PERIOD' application_time_period_name
referenced by: referential_constraint_definition referenced_table_and_columns: table_name ( referenced_column_list , referenced_period_specification )
         ::= table_name ( '(' referenced_column_list ( ',' referenced_period_specification )? ')' )?
referenced by: references_specification referenced_column_list: column_name_list
         ::= column_name_list
referenced by: referenced_table_and_columns referenced_period_specification: PERIOD application_time_period_name
         ::= 'PERIOD' application_time_period_name
referenced by: referenced_table_and_columns referential_triggered_action: update_rule delete_rule delete_rule update_rule
         ::= update_rule delete_rule?
           | delete_rule update_rule?
referenced by: references_specification update_rule: ON UPDATE referential_action
         ::= 'ON' 'UPDATE' referential_action
referenced by: referential_triggered_action delete_rule: ON DELETE referential_action
         ::= 'ON' 'DELETE' referential_action
referenced by: referential_triggered_action referential_action: CASCADE* SET NULL DEFAULT RESTRICT* NO ACTION*
         ::= 'CASCADE*'
           | 'SET' ( 'NULL' | 'DEFAULT' )
           | 'RESTRICT*'
           | 'NO' 'ACTION*'
referenced by: delete_rule update_rule check_constraint_definition: CHECK ( search_condition )
         ::= 'CHECK' '(' search_condition ')'
referenced by: column_constraint domain_constraint table_constraint alter_table_statement: ALTER TABLE table_name alter_table_action
         ::= 'ALTER' 'TABLE' table_name alter_table_action
referenced by: SQL_schema_manipulation_statement alter_table_action: add_column_definition alter_column_definition drop_column_definition add_table_constraint_definition alter_table_constraint_definition drop_table_constraint_definition add_table_period_definition drop_table_period_definition add_system_versioning_clause drop_system_versioning_clause
         ::= add_column_definition
           | alter_column_definition
           | drop_column_definition
           | add_table_constraint_definition
           | alter_table_constraint_definition
           | drop_table_constraint_definition
           | add_table_period_definition
           | drop_table_period_definition
           | add_system_versioning_clause
           | drop_system_versioning_clause
referenced by: alter_table_statement add_column_definition: ADD* COLUMN column_definition
         ::= 'ADD*' 'COLUMN'? column_definition
referenced by: alter_table_action alter_column_definition: ALTER COLUMN column_name alter_column_action
         ::= 'ALTER' 'COLUMN'? column_name alter_column_action
referenced by: alter_table_action alter_column_action: set_column_default_clause drop_column_default_clause set_column_not_null_clause drop_column_not_null_clause add_column_scope_clause drop_column_scope_clause alter_column_data_type_clause alter_identity_column_specification drop_identity_property_clause drop_column_generation_expression_clause
         ::= set_column_default_clause
           | drop_column_default_clause
           | set_column_not_null_clause
           | drop_column_not_null_clause
           | add_column_scope_clause
           | drop_column_scope_clause
           | alter_column_data_type_clause
           | alter_identity_column_specification
           | drop_identity_property_clause
referenced by: alter_column_definition set_column_default_clause: SET default_clause
         ::= 'SET' default_clause
referenced by: alter_column_action drop_column_default_clause: DROP DEFAULT
         ::= 'DROP' 'DEFAULT'
referenced by: alter_column_action set_column_not_null_clause: SET NOT NULL
         ::= 'SET' 'NOT' 'NULL'
referenced by: alter_column_action drop_column_not_null_clause: DROP NOT NULL
         ::= 'DROP' 'NOT' 'NULL'
referenced by: alter_column_action add_column_scope_clause: ADD* scope_clause
         ::= 'ADD*' scope_clause
referenced by: alter_column_action drop_column_scope_clause: DROP SCOPE drop_behavior
         ::= 'DROP' 'SCOPE' drop_behavior
referenced by: alter_column_action alter_column_data_type_clause: SET DATA* TYPE* data_type
         ::= 'SET' 'DATA*' 'TYPE*' data_type
referenced by: alter_column_action alter_identity_column_specification: set_identity_column_generation_clause alter_identity_column_option alter_identity_column_option referenced by: alter_column_action set_identity_column_generation_clause: SET GENERATED* ALWAYS* BY DEFAULT
         ::= 'SET' 'GENERATED*' ( 'ALWAYS*' | 'BY' 'DEFAULT' )
referenced by: alter_identity_column_specification alter_identity_column_option: alter_sequence_generator_restart_option SET basic_sequence_generator_option
           | 'SET' basic_sequence_generator_option
referenced by: alter_identity_column_specification drop_identity_property_clause: DROP IDENTITY
         ::= 'DROP' 'IDENTITY'
referenced by: alter_column_action drop_column_generation_expression_clause: DROP EXPRESSION*
         ::= 'DROP' 'EXPRESSION*'
referenced by: alter_column_action drop_column_definition: DROP COLUMN column_name drop_behavior
         ::= 'DROP' 'COLUMN'? column_name drop_behavior
referenced by: alter_table_action add_table_constraint_definition: ADD* table_constraint_definition
         ::= 'ADD*' table_constraint_definition
referenced by: alter_table_action alter_table_constraint_definition: ALTER CONSTRAINT constraint_name constraint_enforcement
         ::= 'ALTER' 'CONSTRAINT' constraint_name constraint_enforcement
referenced by: alter_table_action drop_table_constraint_definition: DROP CONSTRAINT constraint_name drop_behavior
         ::= 'DROP' 'CONSTRAINT' constraint_name drop_behavior
referenced by: alter_table_action add_table_period_definition: ADD* table_period_definition add_system_time_period_column_list referenced by: alter_table_action add_system_time_period_column_list: ADD* COLUMN column_definition_1 ADD* COLUMN column_definition_2
         ::= 'ADD*' 'COLUMN'? column_definition_1 'ADD*' 'COLUMN'? column_definition_2
referenced by: add_table_period_definition column_definition_1: column_definition
         ::= column_definition
referenced by: add_system_time_period_column_list column_definition_2: column_definition
         ::= column_definition
referenced by: add_system_time_period_column_list drop_table_period_definition: DROP system_or_application_time_period_specification drop_behavior referenced by: alter_table_action add_system_versioning_clause: ADD* system_versioning_clause
         ::= 'ADD*' system_versioning_clause
referenced by: alter_table_action drop_system_versioning_clause: DROP SYSTEM VERSIONING drop_behavior
         ::= 'DROP' 'SYSTEM' 'VERSIONING' drop_behavior
referenced by: alter_table_action drop_table_statement: DROP TABLE table_name drop_behavior
         ::= 'DROP' 'TABLE' table_name drop_behavior
referenced by: SQL_schema_manipulation_statement view_definition: CREATE RECURSIVE VIEW* table_name view_specification AS query_expression WITH levels_clause CHECK OPTION*
         ::= 'CREATE' 'RECURSIVE'? 'VIEW*' table_name view_specification 'AS' query_expression ( 'WITH' levels_clause? 'CHECK' 'OPTION*' )?
referenced by: SQL_schema_definition_statement schema_element view_specification: regular_view_specification referenceable_view_specification
         ::= regular_view_specification
           | referenceable_view_specification
referenced by: view_definition regular_view_specification: ( view_column_list )
         ::= ( '(' view_column_list ')' )?
referenced by: view_specification referenceable_view_specification: OF path_resolved_user_defined_type_name subview_clause view_element_list referenced by: view_specification subview_clause: UNDER* table_name
         ::= 'UNDER*' table_name
referenced by: referenceable_view_specification view_element_list: ( view_element , )
         ::= '(' view_element ( ',' view_element )* ')'
referenced by: referenceable_view_specification view_element: self_referencing_column_specification view_column_option
           | view_column_option
referenced by: view_element_list view_column_option: column_name WITH OPTIONS* scope_clause
         ::= column_name 'WITH' 'OPTIONS*' scope_clause
referenced by: view_element levels_clause: CASCADED LOCAL
         ::= 'CASCADED'
           | 'LOCAL'
referenced by: view_definition view_column_list: column_name_list
         ::= column_name_list
referenced by: regular_view_specification drop_view_statement: DROP VIEW* table_name drop_behavior
         ::= 'DROP' 'VIEW*' table_name drop_behavior
referenced by: SQL_schema_manipulation_statement domain_definition: CREATE DOMAIN* domain_name AS predefined_type default_clause domain_constraint collate_clause
         ::= 'CREATE' 'DOMAIN*' domain_name 'AS'? predefined_type default_clause? domain_constraint* collate_clause?
referenced by: SQL_schema_definition_statement schema_element domain_constraint: constraint_name_definition check_constraint_definition constraint_characteristics referenced by: add_domain_constraint_definition domain_definition alter_domain_statement: ALTER DOMAIN* domain_name alter_domain_action
         ::= 'ALTER' 'DOMAIN*' domain_name alter_domain_action
referenced by: SQL_schema_manipulation_statement alter_domain_action: set_domain_default_clause drop_domain_default_clause add_domain_constraint_definition drop_domain_constraint_definition
         ::= set_domain_default_clause
           | drop_domain_default_clause
           | add_domain_constraint_definition
           | drop_domain_constraint_definition
referenced by: alter_domain_statement set_domain_default_clause: SET default_clause
         ::= 'SET' default_clause
referenced by: alter_domain_action drop_domain_default_clause: DROP DEFAULT
         ::= 'DROP' 'DEFAULT'
referenced by: alter_domain_action add_domain_constraint_definition: ADD* domain_constraint
         ::= 'ADD*' domain_constraint
referenced by: alter_domain_action drop_domain_constraint_definition: DROP CONSTRAINT constraint_name
         ::= 'DROP' 'CONSTRAINT' constraint_name
referenced by: alter_domain_action drop_domain_statement: DROP DOMAIN* domain_name drop_behavior
         ::= 'DROP' 'DOMAIN*' domain_name drop_behavior
referenced by: SQL_schema_manipulation_statement character_set_definition: CREATE CHARACTER SET character_set_name AS character_set_source collate_clause
         ::= 'CREATE' 'CHARACTER' 'SET' character_set_name 'AS'? character_set_source collate_clause?
referenced by: SQL_schema_definition_statement schema_element character_set_source: GET character_set_specification
         ::= 'GET' character_set_specification
referenced by: character_set_definition drop_character_set_statement: DROP CHARACTER SET character_set_name
         ::= 'DROP' 'CHARACTER' 'SET' character_set_name
referenced by: SQL_schema_manipulation_statement collation_definition: CREATE COLLATION* collation_name FOR character_set_specification FROM existing_collation_name pad_characteristic
         ::= 'CREATE' 'COLLATION*' collation_name 'FOR' character_set_specification 'FROM' existing_collation_name pad_characteristic?
referenced by: SQL_schema_definition_statement schema_element existing_collation_name: collation_name
         ::= collation_name
referenced by: collation_definition pad_characteristic: NO PAD* PAD* SPACE*
         ::= 'NO' 'PAD*'
           | 'PAD*' 'SPACE*'
referenced by: collation_definition drop_collation_statement: DROP COLLATION* collation_name drop_behavior
         ::= 'DROP' 'COLLATION*' collation_name drop_behavior
referenced by: SQL_schema_manipulation_statement transliteration_definition: CREATE TRANSLATION transliteration_name FOR source_character_set_specification TO target_character_set_specification FROM transliteration_source referenced by: SQL_schema_definition_statement schema_element source_character_set_specification: character_set_specification
         ::= character_set_specification
referenced by: transliteration_definition target_character_set_specification: character_set_specification
         ::= character_set_specification
referenced by: transliteration_definition transliteration_source: existing_transliteration_name transliteration_routine
         ::= existing_transliteration_name
           | transliteration_routine
referenced by: transliteration_definition existing_transliteration_name: transliteration_name
         ::= transliteration_name
referenced by: transliteration_source transliteration_routine: specific_routine_designator
         ::= specific_routine_designator
referenced by: transliteration_source drop_transliteration_statement: DROP TRANSLATION transliteration_name
         ::= 'DROP' 'TRANSLATION' transliteration_name
referenced by: SQL_schema_manipulation_statement assertion_definition: CREATE ASSERTION* constraint_name CHECK ( search_condition ) constraint_characteristics
         ::= 'CREATE' 'ASSERTION*' constraint_name 'CHECK' '(' search_condition ')' constraint_characteristics?
referenced by: SQL_schema_definition_statement schema_element drop_assertion_statement: DROP ASSERTION* constraint_name drop_behavior
         ::= 'DROP' 'ASSERTION*' constraint_name drop_behavior?
referenced by: SQL_schema_manipulation_statement trigger_definition: CREATE TRIGGER trigger_name trigger_action_time trigger_event ON table_name REFERENCING transition_table_or_variable_list triggered_action
         ::= 'CREATE' 'TRIGGER' trigger_name trigger_action_time trigger_event 'ON' table_name ( 'REFERENCING' transition_table_or_variable_list )? triggered_action
referenced by: SQL_schema_definition_statement schema_element trigger_action_time: BEFORE* AFTER* INSTEAD* OF
         ::= 'BEFORE*'
           | 'AFTER*'
           | 'INSTEAD*' 'OF'
referenced by: trigger_definition trigger_event: INSERT DELETE UPDATE OF trigger_column_list
         ::= 'INSERT'
           | 'DELETE'
           | 'UPDATE' ( 'OF' trigger_column_list )?
referenced by: trigger_definition trigger_column_list: column_name_list
         ::= column_name_list
referenced by: trigger_event triggered_action: FOR EACH ROW STATEMENT* triggered_when_clause triggered_SQL_statement
         ::= ( 'FOR' 'EACH' ( 'ROW' | 'STATEMENT*' ) )? triggered_when_clause? triggered_SQL_statement
referenced by: trigger_definition triggered_when_clause: WHEN ( search_condition )
         ::= 'WHEN' '(' search_condition ')'
referenced by: triggered_action triggered_SQL_statement: SQL_procedure_statement BEGIN ATOMIC SQL_procedure_statement ; END
         ::= SQL_procedure_statement
           | 'BEGIN' 'ATOMIC' ( SQL_procedure_statement ';' )+ 'END'
referenced by: triggered_action transition_table_or_variable_list: transition_table_or_variable
         ::= transition_table_or_variable+
referenced by: trigger_definition transition_table_or_variable: OLD ROW AS old_transition_variable_name TABLE AS old_transition_table_name NEW ROW AS new_transition_variable_name TABLE AS new_transition_table_name
         ::= 'OLD' ( 'ROW'? 'AS'? old_transition_variable_name | 'TABLE' 'AS'? old_transition_table_name )
           | 'NEW' ( 'ROW'? 'AS'? new_transition_variable_name | 'TABLE' 'AS'? new_transition_table_name )
referenced by: transition_table_or_variable_list old_transition_table_name: transition_table_name
         ::= transition_table_name
referenced by: transition_table_or_variable new_transition_table_name: transition_table_name
         ::= transition_table_name
referenced by: transition_table_or_variable transition_table_name: identifier
         ::= identifier
referenced by: new_transition_table_name old_transition_table_name table_or_query_name old_transition_variable_name: correlation_name
         ::= correlation_name
referenced by: transition_table_or_variable new_transition_variable_name: correlation_name
         ::= correlation_name
referenced by: transition_table_or_variable drop_trigger_statement: DROP TRIGGER trigger_name
         ::= 'DROP' 'TRIGGER' trigger_name
referenced by: SQL_schema_manipulation_statement user_defined_type_definition: CREATE TYPE* user_defined_type_body
         ::= 'CREATE' 'TYPE*' user_defined_type_body
referenced by: SQL_schema_definition_statement schema_element user_defined_type_body: schema_resolved_user_defined_type_name subtype_clause AS representation user_defined_type_option_list method_specification_list referenced by: user_defined_type_definition user_defined_type_option_list: user_defined_type_option
         ::= user_defined_type_option+
referenced by: user_defined_type_body user_defined_type_option: instantiable_clause finality reference_type_specification cast_to_ref cast_to_type cast_to_distinct cast_to_source
         ::= instantiable_clause
           | finality
           | reference_type_specification
           | cast_to_ref
           | cast_to_type
           | cast_to_distinct
           | cast_to_source
referenced by: user_defined_type_option_list subtype_clause: UNDER* supertype_name
         ::= 'UNDER*' supertype_name
referenced by: user_defined_type_body supertype_name: path_resolved_user_defined_type_name referenced by: subtype_clause representation: predefined_type collection_type member_list
         ::= predefined_type
           | collection_type
           | member_list
referenced by: user_defined_type_body member_list: ( member , )
         ::= '(' member ( ',' member )* ')'
referenced by: representation member: attribute_definition referenced by: member_list instantiable_clause: NOT INSTANTIABLE*
         ::= 'NOT'? 'INSTANTIABLE*'
referenced by: user_defined_type_option finality: NOT FINAL*
finality ::= 'NOT'? 'FINAL*'
referenced by: user_defined_type_option reference_type_specification: user_defined_representation derived_representation system_generated_representation
         ::= user_defined_representation
           | derived_representation
           | system_generated_representation
referenced by: user_defined_type_option user_defined_representation: REF USING predefined_type
         ::= 'REF' 'USING' predefined_type
referenced by: reference_type_specification derived_representation: REF FROM list_of_attributes
         ::= 'REF' 'FROM' list_of_attributes
referenced by: reference_type_specification system_generated_representation: REF IS SYSTEM GENERATED*
         ::= 'REF' 'IS' 'SYSTEM' 'GENERATED*'
referenced by: reference_type_specification cast_to_ref: CAST ( SOURCE* AS REF ) WITH cast_to_ref_identifier
         ::= 'CAST' '(' 'SOURCE*' 'AS' 'REF' ')' 'WITH' cast_to_ref_identifier
referenced by: user_defined_type_option cast_to_ref_identifier: identifier
         ::= identifier
referenced by: cast_to_ref cast_to_type: CAST ( REF AS SOURCE* ) WITH cast_to_type_identifier
         ::= 'CAST' '(' 'REF' 'AS' 'SOURCE*' ')' 'WITH' cast_to_type_identifier
referenced by: user_defined_type_option cast_to_type_identifier: identifier
         ::= identifier
referenced by: cast_to_type list_of_attributes: ( attribute_name , )
         ::= '(' attribute_name ( ',' attribute_name )* ')'
referenced by: derived_representation cast_to_distinct: CAST ( SOURCE* AS DISTINCT ) WITH cast_to_distinct_identifier
         ::= 'CAST' '(' 'SOURCE*' 'AS' 'DISTINCT' ')' 'WITH' cast_to_distinct_identifier
referenced by: user_defined_type_option cast_to_distinct_identifier: identifier
         ::= identifier
referenced by: cast_to_distinct cast_to_source: CAST ( DISTINCT AS SOURCE* ) WITH cast_to_source_identifier
         ::= 'CAST' '(' 'DISTINCT' 'AS' 'SOURCE*' ')' 'WITH' cast_to_source_identifier
referenced by: user_defined_type_option cast_to_source_identifier: identifier
         ::= identifier
referenced by: cast_to_source method_specification_list: method_specification ,
         ::= method_specification ( ',' method_specification )*
referenced by: user_defined_type_body method_specification: original_method_specification overriding_method_specification
         ::= original_method_specification
           | overriding_method_specification
referenced by: method_specification_list original_method_specification: partial_method_specification SELF* AS RESULT SELF* AS LOCATOR* method_characteristics
         ::= partial_method_specification 'SELF*' 'AS' 'RESULT' 'SELF*' 'AS' 'LOCATOR*' method_characteristics?
referenced by: add_original_method_specification method_specification overriding_method_specification: OVERRIDING* partial_method_specification
         ::= 'OVERRIDING*' partial_method_specification
referenced by: add_overriding_method_specification method_specification partial_method_specification: INSTANCE* STATIC CONSTRUCTOR* METHOD method_name SQL_parameter_declaration_list returns_clause SPECIFIC specific_method_name
         ::= ( 'INSTANCE*' | 'STATIC' | 'CONSTRUCTOR*' ) 'METHOD' method_name SQL_parameter_declaration_list returns_clause 'SPECIFIC' specific_method_name
referenced by: original_method_specification overriding_method_specification specific_method_name: schema_name . qualified_identifier
         ::= ( schema_name '.' )? qualified_identifier
referenced by: method_specification_designator partial_method_specification method_characteristics: method_characteristic
         ::= method_characteristic+
referenced by: original_method_specification method_characteristic: language_clause parameter_style_clause deterministic_characteristic SQL_data_access_indication null_call_clause
         ::= language_clause
           | parameter_style_clause
           | deterministic_characteristic
           | SQL_data_access_indication
           | null_call_clause
referenced by: method_characteristics attribute_definition: attribute_name data_type attribute_default collate_clause referenced by: add_attribute_definition member attribute_default: default_clause
         ::= default_clause
referenced by: attribute_definition alter_type_statement: ALTER TYPE* schema_resolved_user_defined_type_name alter_type_action
         ::= 'ALTER' 'TYPE*' schema_resolved_user_defined_type_name alter_type_action
referenced by: SQL_schema_manipulation_statement alter_type_action: add_attribute_definition drop_attribute_definition add_original_method_specification add_overriding_method_specification drop_method_specification
         ::= add_attribute_definition
           | drop_attribute_definition
           | add_original_method_specification
           | add_overriding_method_specification
           | drop_method_specification
referenced by: alter_type_statement add_attribute_definition: ADD* ATTRIBUTE* attribute_definition
         ::= 'ADD*' 'ATTRIBUTE*' attribute_definition
referenced by: alter_type_action drop_attribute_definition: DROP ATTRIBUTE* attribute_name RESTRICT*
         ::= 'DROP' 'ATTRIBUTE*' attribute_name 'RESTRICT*'
referenced by: alter_type_action add_original_method_specification: ADD* original_method_specification
         ::= 'ADD*' original_method_specification
referenced by: alter_type_action add_overriding_method_specification: ADD* overriding_method_specification
         ::= 'ADD*' overriding_method_specification
referenced by: alter_type_action drop_method_specification: DROP specific_method_specification_designator RESTRICT*
         ::= 'DROP' specific_method_specification_designator 'RESTRICT*'
referenced by: alter_type_action specific_method_specification_designator: INSTANCE* STATIC CONSTRUCTOR* METHOD method_name data_type_list
         ::= ( 'INSTANCE*' | 'STATIC' | 'CONSTRUCTOR*' )? 'METHOD' method_name data_type_list
referenced by: drop_method_specification drop_data_type_statement: DROP TYPE* schema_resolved_user_defined_type_name drop_behavior
         ::= 'DROP' 'TYPE*' schema_resolved_user_defined_type_name drop_behavior
referenced by: SQL_schema_manipulation_statement SQL_invoked_routine: schema_routine
         ::= schema_routine
referenced by: SQL_schema_definition_statement schema_routine: schema_procedure schema_function
         ::= schema_procedure
           | schema_function
referenced by: SQL_invoked_routine schema_element schema_procedure: CREATE SQL_invoked_procedure
         ::= 'CREATE' SQL_invoked_procedure
referenced by: schema_routine schema_function: CREATE SQL_invoked_function
         ::= 'CREATE' SQL_invoked_function
referenced by: schema_routine SQL_invoked_procedure: PROCEDURE schema_qualified_routine_name SQL_parameter_declaration_list routine_characteristics routine_body referenced by: schema_procedure SQL_invoked_function: function_specification method_specification_designator routine_body referenced by: schema_function SQL_parameter_declaration_list: ( SQL_parameter_declaration , )
         ::= '(' ( SQL_parameter_declaration ( ',' SQL_parameter_declaration )* )? ')'
referenced by: SQL_invoked_procedure function_specification method_specification_designator partial_method_specification SQL_parameter_declaration: parameter_mode SQL_parameter_name parameter_type RESULT DEFAULT parameter_default
         ::= parameter_mode? SQL_parameter_name? parameter_type 'RESULT'? ( 'DEFAULT' parameter_default )?
referenced by: SQL_parameter_declaration_list private_parameter_declaration_list parameter_default: value_expression contextually_typed_value_specification descriptor_value_constructor
         ::= value_expression
           | descriptor_value_constructor
referenced by: SQL_parameter_declaration parameter_mode: IN OUT INOUT
         ::= 'IN'
           | 'OUT'
           | 'INOUT'
referenced by: SQL_parameter_declaration parameter_type: data_type locator_indication generic_table_parameter_type DESCRIPTOR*
         ::= data_type locator_indication?
           | generic_table_parameter_type
           | 'DESCRIPTOR*'
referenced by: SQL_parameter_declaration generic_table_parameter_type: TABLE pass_through_option generic_table_semantics
         ::= 'TABLE' pass_through_option? generic_table_semantics?
referenced by: parameter_type pass_through_option: NO PASS* THROUGH*
         ::= 'NO'? 'PASS*' 'THROUGH*'
referenced by: generic_table_parameter_type generic_table_semantics: WITH ROW SEMANTICS SET SEMANTICS generic_table_pruning
         ::= 'WITH' ( 'ROW' SEMANTICS | 'SET' SEMANTICS generic_table_pruning? )
referenced by: generic_table_parameter_type generic_table_pruning: PRUNE* KEEP* ON EMPTY
         ::= ( 'PRUNE*' | 'KEEP*' ) 'ON' 'EMPTY'
referenced by: generic_table_semantics locator_indication: AS LOCATOR*
         ::= 'AS' 'LOCATOR*'
referenced by: host_parameter_data_type parameter_type result_cast_from_type returns_data_type function_specification: FUNCTION schema_qualified_routine_name SQL_parameter_declaration_list returns_clause routine_characteristics dispatch_clause referenced by: SQL_invoked_function method_specification_designator: SPECIFIC METHOD specific_method_name INSTANCE* STATIC CONSTRUCTOR* METHOD method_name SQL_parameter_declaration_list returns_clause FOR schema_resolved_user_defined_type_name
         ::= 'SPECIFIC' 'METHOD' specific_method_name
           | ( 'INSTANCE*' | 'STATIC' | 'CONSTRUCTOR*' ) 'METHOD' method_name SQL_parameter_declaration_list returns_clause? 'FOR' schema_resolved_user_defined_type_name
referenced by: SQL_invoked_function routine_characteristics: routine_characteristic
         ::= routine_characteristic*
referenced by: SQL_invoked_procedure function_specification routine_characteristic: language_clause parameter_style_clause SPECIFIC specific_name deterministic_characteristic SQL_data_access_indication null_call_clause returned_result_sets_characteristic savepoint_level_indication
         ::= language_clause
           | parameter_style_clause
           | 'SPECIFIC' specific_name
           | deterministic_characteristic
           | SQL_data_access_indication
           | null_call_clause
           | returned_result_sets_characteristic
           | savepoint_level_indication
referenced by: routine_characteristics savepoint_level_indication: NEW OLD SAVEPOINT LEVEL*
         ::= ( 'NEW' | 'OLD' ) 'SAVEPOINT' 'LEVEL*'
referenced by: routine_characteristic returned_result_sets_characteristic: DYNAMIC RESULT SETS* maximum_returned_result_sets
         ::= 'DYNAMIC' 'RESULT' 'SETS*' maximum_returned_result_sets
referenced by: alter_routine_characteristic routine_characteristic parameter_style_clause: PARAMETER STYLE* parameter_style
         ::= 'PARAMETER' 'STYLE*' parameter_style
referenced by: alter_routine_characteristic external_body_reference method_characteristic routine_characteristic dispatch_clause: STATIC DISPATCH*
         ::= 'STATIC' 'DISPATCH*'
referenced by: function_specification returns_clause: RETURNS returns_type
         ::= 'RETURNS' returns_type
referenced by: function_specification method_specification_designator partial_method_specification returns_type: returns_data_type result_cast returns_table_type
         ::= returns_data_type result_cast?
           | returns_table_type
referenced by: returns_clause returns_table_type: TABLE table_function_column_list ONLY PASS* THROUGH*
         ::= 'TABLE' table_function_column_list?
           | 'ONLY' 'PASS*' 'THROUGH*'
referenced by: returns_type table_function_column_list: ( table_function_column_list_element , ) referenced by: returns_table_type table_function_column_list_element: column_name data_type
         ::= column_name data_type
referenced by: table_function_column_list result_cast: CAST FROM result_cast_from_type
         ::= 'CAST' 'FROM' result_cast_from_type
referenced by: returns_type result_cast_from_type: data_type locator_indication
         ::= data_type locator_indication?
referenced by: result_cast returns_data_type: data_type locator_indication
         ::= data_type locator_indication?
referenced by: returns_type routine_body: SQL_routine_spec external_body_reference polymorphic_table_function_body
         ::= SQL_routine_spec
           | external_body_reference
           | polymorphic_table_function_body
referenced by: SQL_invoked_function SQL_invoked_procedure SQL_routine_spec: rights_clause SQL_routine_body
         ::= rights_clause? SQL_routine_body
referenced by: routine_body rights_clause: SQL SECURITY* INVOKER* DEFINER*
         ::= 'SQL' 'SECURITY*' ( 'INVOKER*' | 'DEFINER*' )
referenced by: SQL_routine_spec SQL_routine_body: SQL_procedure_statement
         ::= SQL_procedure_statement
referenced by: SQL_routine_spec external_body_reference: EXTERNAL NAME* external_routine_name parameter_style_clause transform_group_specification external_security_clause referenced by: routine_body polymorphic_table_function_body: PTF_private_parameters DESCRIBE WITH PTF_describe_component_procedure START WITH PTF_start_component_procedure FULFILL* WITH PTF_fulfill_component_procedure FINISH* WITH PTF_finish_component_procedure
         ::= PTF_private_parameters? ( 'DESCRIBE' 'WITH' PTF_describe_component_procedure )? ( 'START' 'WITH' PTF_start_component_procedure )? 'FULFILL*' 'WITH' PTF_fulfill_component_procedure ( 'FINISH*' 'WITH' PTF_finish_component_procedure )?
referenced by: routine_body PTF_private_parameters: PRIVATE* DATA* private_parameter_declaration_list
         ::= 'PRIVATE*' 'DATA*'? private_parameter_declaration_list
referenced by: polymorphic_table_function_body private_parameter_declaration_list: ( SQL_parameter_declaration , )
         ::= '(' ( SQL_parameter_declaration ( ',' SQL_parameter_declaration )* )? ')'
referenced by: PTF_private_parameters PTF_describe_component_procedure: specific_routine_designator
         ::= specific_routine_designator
referenced by: polymorphic_table_function_body PTF_start_component_procedure: specific_routine_designator
         ::= specific_routine_designator
referenced by: polymorphic_table_function_body PTF_fulfill_component_procedure: specific_routine_designator
         ::= specific_routine_designator
referenced by: polymorphic_table_function_body PTF_finish_component_procedure: specific_routine_designator
         ::= specific_routine_designator
referenced by: polymorphic_table_function_body external_security_clause: EXTERNAL SECURITY* DEFINER* INVOKER* IMPLEMENTATION* DEFINED*
         ::= 'EXTERNAL' 'SECURITY*' ( 'DEFINER*' | 'INVOKER*' | 'IMPLEMENTATION*' 'DEFINED*' )
referenced by: external_body_reference parameter_style: SQL GENERAL*
         ::= 'SQL'
           | 'GENERAL*'
referenced by: parameter_style_clause deterministic_characteristic: NOT DETERMINISTIC
         ::= 'NOT'? 'DETERMINISTIC'
referenced by: method_characteristic routine_characteristic SQL_data_access_indication: NO CONTAINS SQL READS MODIFIES SQL DATA*
         ::= ( 'NO' | 'CONTAINS' ) 'SQL'
           | ( 'READS' | 'MODIFIES' ) 'SQL' 'DATA*'
referenced by: alter_routine_characteristic method_characteristic routine_characteristic null_call_clause: RETURNS NULL CALLED ON NULL INPUT*
         ::= ( 'RETURNS' 'NULL' | 'CALLED' ) 'ON' 'NULL' 'INPUT*'
referenced by: alter_routine_characteristic method_characteristic routine_characteristic maximum_returned_result_sets: unsigned_integer
         ::= unsigned_integer
referenced by: returned_result_sets_characteristic transform_group_specification: TRANSFORM* GROUP single_group_specification multiple_group_specification
         ::= 'TRANSFORM*' 'GROUP' ( single_group_specification | multiple_group_specification )
referenced by: embedded_transform_group_specification external_body_reference module_transform_group_specification single_group_specification: group_name
         ::= group_name
referenced by: transform_group_specification multiple_group_specification: group_specification ,
         ::= group_specification ( ',' group_specification )*
referenced by: transform_group_specification group_specification: group_name FOR TYPE* path_resolved_user_defined_type_name
         ::= group_name 'FOR' 'TYPE*' path_resolved_user_defined_type_name
referenced by: multiple_group_specification alter_routine_statement: ALTER specific_routine_designator alter_routine_characteristics RESTRICT*
         ::= 'ALTER' specific_routine_designator alter_routine_characteristics 'RESTRICT*'
referenced by: SQL_schema_manipulation_statement alter_routine_characteristics: alter_routine_characteristic
         ::= alter_routine_characteristic+
referenced by: alter_routine_statement alter_routine_characteristic: language_clause parameter_style_clause SQL_data_access_indication null_call_clause returned_result_sets_characteristic NAME* external_routine_name
         ::= language_clause
           | parameter_style_clause
           | SQL_data_access_indication
           | null_call_clause
           | returned_result_sets_characteristic
           | 'NAME*' external_routine_name
referenced by: alter_routine_characteristics drop_routine_statement: DROP specific_routine_designator drop_behavior
         ::= 'DROP' specific_routine_designator drop_behavior
referenced by: SQL_schema_manipulation_statement user_defined_cast_definition: CREATE CAST ( source_data_type AS target_data_type ) WITH cast_function AS ASSIGNMENT*
         ::= 'CREATE' 'CAST' '(' source_data_type 'AS' target_data_type ')' 'WITH' cast_function ( 'AS' 'ASSIGNMENT*' )?
referenced by: SQL_schema_definition_statement schema_element cast_function: specific_routine_designator
         ::= specific_routine_designator
referenced by: user_defined_cast_definition source_data_type: data_type
         ::= data_type
referenced by: drop_user_defined_cast_statement user_defined_cast_definition target_data_type: data_type
         ::= data_type
referenced by: drop_user_defined_cast_statement user_defined_cast_definition drop_user_defined_cast_statement: DROP CAST ( source_data_type AS target_data_type ) drop_behavior
         ::= 'DROP' 'CAST' '(' source_data_type 'AS' target_data_type ')' drop_behavior
referenced by: SQL_schema_manipulation_statement user_defined_ordering_definition: CREATE ORDERING* FOR schema_resolved_user_defined_type_name ordering_form
         ::= 'CREATE' 'ORDERING*' 'FOR' schema_resolved_user_defined_type_name ordering_form
referenced by: SQL_schema_definition_statement schema_element ordering_form: equals_ordering_form full_ordering_form
         ::= equals_ordering_form
           | full_ordering_form
referenced by: user_defined_ordering_definition equals_ordering_form: EQUALS ONLY BY ordering_category
         ::= 'EQUALS' 'ONLY' 'BY' ordering_category
referenced by: ordering_form full_ordering_form: ORDER FULL BY ordering_category
         ::= 'ORDER' 'FULL' 'BY' ordering_category
referenced by: ordering_form ordering_category: relative_category map_category state_category
         ::= relative_category
           | map_category
           | state_category
referenced by: equals_ordering_form full_ordering_form relative_category: RELATIVE* WITH relative_function_specification
         ::= 'RELATIVE*' 'WITH' relative_function_specification
referenced by: ordering_category map_category: MAP* WITH map_function_specification
         ::= 'MAP*' 'WITH' map_function_specification
referenced by: ordering_category state_category: STATE* specific_name
         ::= 'STATE*' specific_name?
referenced by: ordering_category relative_function_specification: specific_routine_designator
         ::= specific_routine_designator
referenced by: relative_category map_function_specification: specific_routine_designator
         ::= specific_routine_designator
referenced by: map_category drop_user_defined_ordering_statement: DROP ORDERING* FOR schema_resolved_user_defined_type_name drop_behavior
         ::= 'DROP' 'ORDERING*' 'FOR' schema_resolved_user_defined_type_name drop_behavior
referenced by: SQL_schema_manipulation_statement transform_definition: CREATE TRANSFORM* TRANSFORMS* FOR schema_resolved_user_defined_type_name transform_group
         ::= 'CREATE' ( 'TRANSFORM*' | 'TRANSFORMS*' ) 'FOR' schema_resolved_user_defined_type_name transform_group+
referenced by: SQL_schema_definition_statement schema_element transform_group: group_name ( transform_element_list )
         ::= group_name '(' transform_element_list ')'
referenced by: transform_definition group_name: identifier
         ::= identifier
referenced by: alter_group group_specification single_group_specification transform_group transform_group_element transform_element_list: transform_element , transform_element
         ::= transform_element ( ',' transform_element )?
referenced by: add_transform_element_list transform_group transform_element: to_sql from_sql
         ::= to_sql
           | from_sql
referenced by: transform_element_list to_sql: TO SQL WITH to_sql_function
to_sql   ::= 'TO' 'SQL' 'WITH' to_sql_function
referenced by: transform_element from_sql: FROM SQL WITH from_sql_function
from_sql ::= 'FROM' 'SQL' 'WITH' from_sql_function
referenced by: transform_element to_sql_function: specific_routine_designator
         ::= specific_routine_designator
referenced by: to_sql from_sql_function: specific_routine_designator
         ::= specific_routine_designator
referenced by: from_sql alter_transform_statement: ALTER TRANSFORM* TRANSFORMS* FOR schema_resolved_user_defined_type_name alter_group
         ::= 'ALTER' ( 'TRANSFORM*' | 'TRANSFORMS*' ) 'FOR' schema_resolved_user_defined_type_name alter_group+
referenced by: SQL_schema_manipulation_statement alter_group: group_name ( alter_transform_action_list )
         ::= group_name '(' alter_transform_action_list ')'
referenced by: alter_transform_statement alter_transform_action_list: alter_transform_action ,
         ::= alter_transform_action ( ',' alter_transform_action )*
referenced by: alter_group alter_transform_action: add_transform_element_list drop_transform_element_list
         ::= add_transform_element_list
           | drop_transform_element_list
referenced by: alter_transform_action_list add_transform_element_list: ADD* ( transform_element_list )
         ::= 'ADD*' '(' transform_element_list ')'
referenced by: alter_transform_action drop_transform_element_list: DROP ( transform_kind , transform_kind drop_behavior )
         ::= 'DROP' '(' transform_kind ( ',' transform_kind )? drop_behavior ')'
referenced by: alter_transform_action transform_kind: TO FROM SQL
         ::= ( 'TO' | 'FROM' ) 'SQL'
referenced by: drop_transform_element_list drop_transform_statement: DROP TRANSFORM* TRANSFORMS* transforms_to_be_dropped FOR schema_resolved_user_defined_type_name drop_behavior
         ::= 'DROP' ( 'TRANSFORM*' | 'TRANSFORMS*' ) transforms_to_be_dropped 'FOR' schema_resolved_user_defined_type_name drop_behavior
referenced by: SQL_schema_manipulation_statement transforms_to_be_dropped: ALL transform_group_element
         ::= 'ALL'
           | transform_group_element
referenced by: drop_transform_statement transform_group_element: group_name
         ::= group_name
referenced by: transforms_to_be_dropped sequence_generator_definition: CREATE SEQUENCE* sequence_generator_name sequence_generator_options
         ::= 'CREATE' 'SEQUENCE*' sequence_generator_name sequence_generator_options?
referenced by: SQL_schema_definition_statement schema_element sequence_generator_options: sequence_generator_option
         ::= sequence_generator_option+
referenced by: sequence_generator_definition sequence_generator_option: sequence_generator_data_type_option common_sequence_generator_options
           | common_sequence_generator_options
referenced by: sequence_generator_options common_sequence_generator_options: common_sequence_generator_option
         ::= common_sequence_generator_option+
referenced by: identity_column_specification sequence_generator_option common_sequence_generator_option: sequence_generator_start_with_option basic_sequence_generator_option
           | basic_sequence_generator_option
referenced by: common_sequence_generator_options basic_sequence_generator_option: sequence_generator_increment_by_option sequence_generator_maxvalue_option sequence_generator_minvalue_option sequence_generator_cycle_option
           | sequence_generator_maxvalue_option
           | sequence_generator_minvalue_option
           | sequence_generator_cycle_option
referenced by: alter_identity_column_option alter_sequence_generator_option common_sequence_generator_option sequence_generator_data_type_option: AS data_type
         ::= 'AS' data_type
referenced by: sequence_generator_option sequence_generator_start_with_option: START WITH sequence_generator_start_value
         ::= 'START' 'WITH' sequence_generator_start_value
referenced by: common_sequence_generator_option sequence_generator_start_value: signed_numeric_literal
         ::= signed_numeric_literal
referenced by: sequence_generator_start_with_option sequence_generator_increment_by_option: INCREMENT* BY sequence_generator_increment
         ::= 'INCREMENT*' 'BY' sequence_generator_increment
referenced by: basic_sequence_generator_option sequence_generator_increment: signed_numeric_literal
         ::= signed_numeric_literal
referenced by: sequence_generator_increment_by_option sequence_generator_maxvalue_option: MAXVALUE* sequence_generator_max_value NO MAXVALUE*
         ::= 'MAXVALUE*' sequence_generator_max_value
           | 'NO' 'MAXVALUE*'
referenced by: basic_sequence_generator_option sequence_generator_max_value: signed_numeric_literal
         ::= signed_numeric_literal
referenced by: sequence_generator_maxvalue_option sequence_generator_minvalue_option: MINVALUE* sequence_generator_min_value NO MINVALUE*
         ::= 'MINVALUE*' sequence_generator_min_value
           | 'NO' 'MINVALUE*'
referenced by: basic_sequence_generator_option sequence_generator_min_value: signed_numeric_literal
         ::= signed_numeric_literal
referenced by: sequence_generator_minvalue_option sequence_generator_cycle_option: NO CYCLE
         ::= 'NO'? 'CYCLE'
referenced by: basic_sequence_generator_option alter_sequence_generator_statement: ALTER SEQUENCE* sequence_generator_name alter_sequence_generator_options
         ::= 'ALTER' 'SEQUENCE*' sequence_generator_name alter_sequence_generator_options
referenced by: SQL_schema_manipulation_statement alter_sequence_generator_options: alter_sequence_generator_option
         ::= alter_sequence_generator_option+
referenced by: alter_sequence_generator_statement alter_sequence_generator_option: alter_sequence_generator_restart_option basic_sequence_generator_option
           | basic_sequence_generator_option
referenced by: alter_sequence_generator_options alter_sequence_generator_restart_option: RESTART* WITH sequence_generator_restart_value
         ::= 'RESTART*' ( 'WITH' sequence_generator_restart_value )?
referenced by: alter_identity_column_option alter_sequence_generator_option sequence_generator_restart_value: signed_numeric_literal
         ::= signed_numeric_literal
referenced by: alter_sequence_generator_restart_option drop_sequence_generator_statement: DROP SEQUENCE* sequence_generator_name drop_behavior
         ::= 'DROP' 'SEQUENCE*' sequence_generator_name drop_behavior
referenced by: SQL_schema_manipulation_statement grant_statement: grant_privilege_statement grant_role_statement
         ::= grant_privilege_statement
           | grant_role_statement
referenced by: SQL_schema_definition_statement schema_element grant_privilege_statement: GRANT privileges TO grantee , WITH HIERARCHY* OPTION* WITH GRANT OPTION* GRANTED* BY grantor
         ::= 'GRANT' privileges 'TO' grantee ( ',' grantee )* ( 'WITH' 'HIERARCHY*' 'OPTION*' )? ( 'WITH' 'GRANT' 'OPTION*' )? ( 'GRANTED*' 'BY' grantor )?
referenced by: grant_statement privileges: object_privileges ON object_name
         ::= object_privileges 'ON' object_name
referenced by: grant_privilege_statement revoke_privilege_statement object_name: TABLE table_name DOMAIN* domain_name COLLATION* collation_name CHARACTER SET character_set_name TRANSLATION transliteration_name TYPE* schema_resolved_user_defined_type_name SEQUENCE* sequence_generator_name specific_routine_designator
         ::= 'TABLE'? table_name
           | 'DOMAIN*' domain_name
           | 'COLLATION*' collation_name
           | 'CHARACTER' 'SET' character_set_name
           | 'TRANSLATION' transliteration_name
           | 'TYPE*' schema_resolved_user_defined_type_name
           | 'SEQUENCE*' sequence_generator_name
           | specific_routine_designator
referenced by: privileges object_privileges: ALL PRIVILEGES* action ,
         ::= 'ALL' 'PRIVILEGES*'
           | action ( ',' action )*
referenced by: privileges action: SELECT ( privilege_column_list privilege_method_list ) DELETE INSERT UPDATE REFERENCES ( privilege_column_list ) USAGE* TRIGGER UNDER* EXECUTE
action   ::= 'SELECT' ( '(' ( privilege_column_list | privilege_method_list ) ')' )?
           | 'DELETE'
           | ( 'INSERT' | 'UPDATE' | 'REFERENCES' ) ( '(' privilege_column_list ')' )?
           | 'USAGE*'
           | 'TRIGGER'
           | 'UNDER*'
           | 'EXECUTE'
referenced by: object_privileges privilege_method_list: specific_routine_designator , referenced by: action privilege_column_list: column_name_list
         ::= column_name_list
referenced by: action grantee: PUBLIC* authorization_identifier
grantee  ::= 'PUBLIC*'
           | authorization_identifier
referenced by: grant_privilege_statement grant_role_statement revoke_privilege_statement revoke_role_statement grantor: CURRENT_USER CURRENT_ROLE
grantor  ::= 'CURRENT_USER'
           | CURRENT_ROLE
referenced by: grant_privilege_statement grant_role_statement revoke_privilege_statement revoke_role_statement role_definition role_definition: CREATE ROLE* role_name WITH ADMIN* grantor
         ::= 'CREATE' 'ROLE*' role_name ( 'WITH' 'ADMIN*' grantor )?
referenced by: SQL_schema_definition_statement schema_element grant_role_statement: GRANT role_granted , TO grantee , WITH ADMIN* OPTION* GRANTED* BY grantor
         ::= 'GRANT' role_granted ( ',' role_granted )* 'TO' grantee ( ',' grantee )* ( 'WITH' 'ADMIN*' 'OPTION*' )? ( 'GRANTED*' 'BY' grantor )?
referenced by: grant_statement role_granted: role_name
         ::= role_name
referenced by: grant_role_statement drop_role_statement: DROP ROLE* role_name
         ::= 'DROP' 'ROLE*' role_name
referenced by: SQL_schema_manipulation_statement revoke_statement: revoke_privilege_statement revoke_role_statement
         ::= revoke_privilege_statement
           | revoke_role_statement
referenced by: SQL_schema_manipulation_statement revoke_privilege_statement: REVOKE revoke_option_extension privileges FROM grantee , GRANTED* BY grantor drop_behavior
         ::= 'REVOKE' revoke_option_extension? privileges 'FROM' grantee ( ',' grantee )* ( 'GRANTED*' 'BY' grantor )? drop_behavior
referenced by: revoke_statement revoke_option_extension: GRANT HIERARCHY* OPTION* FOR
         ::= ( 'GRANT' | 'HIERARCHY*' ) 'OPTION*' 'FOR'
referenced by: revoke_privilege_statement revoke_role_statement: REVOKE ADMIN* OPTION* FOR role_revoked , FROM grantee , GRANTED* BY grantor drop_behavior
         ::= 'REVOKE' ( 'ADMIN*' 'OPTION*' 'FOR' )? role_revoked ( ',' role_revoked )* 'FROM' grantee ( ',' grantee )* ( 'GRANTED*' 'BY' grantor )? drop_behavior
referenced by: revoke_statement role_revoked: role_name
         ::= role_name
referenced by: revoke_role_statement SQL_client_module_definition: module_name_clause language_clause module_authorization_clause module_path_specification module_transform_group_specification module_collations temporary_table_declaration module_contents no referencesmodule_authorization_clause: SCHEMA* schema_name AUTHORIZATION module_authorization_identifier FOR STATIC ONLY AND DYNAMIC AUTHORIZATION module_authorization_identifier FOR STATIC ONLY AND DYNAMIC
         ::= 'SCHEMA*' schema_name ( 'AUTHORIZATION' module_authorization_identifier ( 'FOR' 'STATIC' ( 'ONLY' | 'AND' 'DYNAMIC' ) )? )?
           | 'AUTHORIZATION' module_authorization_identifier ( 'FOR' 'STATIC' ( 'ONLY' | 'AND' 'DYNAMIC' ) )?
referenced by: SQL_client_module_definition module_authorization_identifier: authorization_identifier
         ::= authorization_identifier
referenced by: embedded_authorization_identifier module_authorization_clause module_path_specification: path_specification
         ::= path_specification
referenced by: SQL_client_module_definition module_transform_group_specification: transform_group_specification
         ::= transform_group_specification
referenced by: SQL_client_module_definition module_collations: module_collation_specification
         ::= module_collation_specification+
referenced by: SQL_client_module_definition embedded_collation_specification module_collation_specification: COLLATION* collation_name FOR character_set_specification_list
         ::= 'COLLATION*' collation_name ( 'FOR' character_set_specification_list )?
referenced by: module_collations character_set_specification_list: character_set_specification , referenced by: module_collation_specification set_session_collation_statement module_contents: declare_cursor dynamic_declare_cursor externally_invoked_procedure
         ::= declare_cursor
           | dynamic_declare_cursor
           | externally_invoked_procedure
referenced by: SQL_client_module_definition module_name_clause: MODULE SQL_client_module_name module_character_set_specification referenced by: SQL_client_module_definition module_character_set_specification: NAMES* ARE character_set_specification
         ::= 'NAMES*' 'ARE' character_set_specification
referenced by: module_name_clause externally_invoked_procedure: PROCEDURE procedure_name host_parameter_declaration_list ; SQL_procedure_statement ; referenced by: module_contents host_parameter_declaration_list: ( host_parameter_declaration , host_parameter_declaration )
         ::= '(' host_parameter_declaration ( ',' host_parameter_declaration )? ')'
referenced by: externally_invoked_procedure host_parameter_declaration: host_parameter_name host_parameter_data_type SQLSTATE
           | 'SQLSTATE'
referenced by: host_parameter_declaration_list host_parameter_data_type: data_type locator_indication
         ::= data_type locator_indication?
referenced by: host_parameter_declaration SQL_procedure_statement: SQL_executable_statement
         ::= SQL_executable_statement
referenced by: SQL_routine_body externally_invoked_procedure statement_or_declaration triggered_SQL_statement SQL_executable_statement: SQL_schema_statement SQL_data_statement SQL_control_statement SQL_transaction_statement SQL_connection_statement SQL_session_statement SQL_diagnostics_statement SQL_dynamic_statement
         ::= SQL_schema_statement
           | SQL_data_statement
           | SQL_control_statement
           | SQL_transaction_statement
           | SQL_connection_statement
           | SQL_session_statement
           | SQL_diagnostics_statement
           | SQL_dynamic_statement
referenced by: SQL_procedure_statement SQL_schema_statement: SQL_schema_definition_statement SQL_schema_manipulation_statement
         ::= SQL_schema_definition_statement
           | SQL_schema_manipulation_statement
referenced by: SQL_executable_statement directly_executable_statement preparable_SQL_schema_statement SQL_schema_definition_statement: schema_definition table_definition view_definition SQL_invoked_routine grant_statement role_definition domain_definition character_set_definition collation_definition transliteration_definition assertion_definition trigger_definition user_defined_type_definition user_defined_cast_definition user_defined_ordering_definition transform_definition sequence_generator_definition
         ::= schema_definition
           | table_definition
           | view_definition
           | SQL_invoked_routine
           | grant_statement
           | role_definition
           | domain_definition
           | character_set_definition
           | collation_definition
           | transliteration_definition
           | assertion_definition
           | trigger_definition
           | user_defined_type_definition
           | user_defined_cast_definition
           | user_defined_ordering_definition
           | transform_definition
           | sequence_generator_definition
referenced by: SQL_schema_statement SQL_schema_manipulation_statement: drop_schema_statement alter_table_statement drop_table_statement drop_view_statement alter_routine_statement drop_routine_statement drop_user_defined_cast_statement revoke_statement drop_role_statement alter_domain_statement drop_domain_statement drop_character_set_statement drop_collation_statement drop_transliteration_statement drop_assertion_statement drop_trigger_statement alter_type_statement drop_data_type_statement drop_user_defined_ordering_statement alter_transform_statement drop_transform_statement alter_sequence_generator_statement drop_sequence_generator_statement
         ::= drop_schema_statement
           | alter_table_statement
           | drop_table_statement
           | drop_view_statement
           | alter_routine_statement
           | drop_routine_statement
           | drop_user_defined_cast_statement
           | revoke_statement
           | drop_role_statement
           | alter_domain_statement
           | drop_domain_statement
           | drop_character_set_statement
           | drop_collation_statement
           | drop_transliteration_statement
           | drop_assertion_statement
           | drop_trigger_statement
           | alter_type_statement
           | drop_data_type_statement
           | drop_user_defined_ordering_statement
           | alter_transform_statement
           | drop_transform_statement
           | alter_sequence_generator_statement
           | drop_sequence_generator_statement
referenced by: SQL_schema_statement SQL_data_statement: open_statement fetch_statement close_statement select_statement__single_row free_locator_statement hold_locator_statement SQL_data_change_statement
         ::= open_statement
           | fetch_statement
           | close_statement
           | select_statement__single_row
           | free_locator_statement
           | hold_locator_statement
           | SQL_data_change_statement
referenced by: SQL_executable_statement SQL_data_change_statement: delete_statement__positioned delete_statement__searched insert_statement update_statement__positioned update_statement__searched truncate_table_statement merge_statement
         ::= delete_statement__positioned
           | delete_statement__searched
           | insert_statement
           | update_statement__positioned
           | update_statement__searched
           | truncate_table_statement
           | merge_statement
referenced by: SQL_data_statement SQL_control_statement: call_statement return_statement
         ::= call_statement
           | return_statement
referenced by: SQL_executable_statement preparable_SQL_control_statement SQL_transaction_statement: start_transaction_statement set_transaction_statement set_constraints_mode_statement savepoint_statement release_savepoint_statement commit_statement rollback_statement
         ::= start_transaction_statement
           | set_transaction_statement
           | set_constraints_mode_statement
           | savepoint_statement
           | release_savepoint_statement
           | commit_statement
           | rollback_statement
referenced by: SQL_executable_statement directly_executable_statement preparable_SQL_transaction_statement SQL_connection_statement: connect_statement set_connection_statement disconnect_statement
         ::= connect_statement
           | set_connection_statement
           | disconnect_statement
referenced by: SQL_executable_statement directly_executable_statement SQL_session_statement: set_session_user_identifier_statement set_role_statement set_local_time_zone_statement set_session_characteristics_statement set_catalog_statement set_schema_statement set_names_statement set_path_statement set_transform_group_statement set_session_collation_statement
           | set_role_statement
           | set_local_time_zone_statement
           | set_catalog_statement
           | set_schema_statement
           | set_names_statement
           | set_path_statement
           | set_transform_group_statement
           | set_session_collation_statement
referenced by: SQL_executable_statement directly_executable_statement preparable_SQL_session_statement SQL_diagnostics_statement: get_diagnostics_statement
         ::= get_diagnostics_statement
referenced by: SQL_executable_statement SQL_dynamic_statement: SQL_descriptor_statement prepare_statement deallocate_prepared_statement describe_statement execute_statement execute_immediate_statement SQL_dynamic_data_statement copy_descriptor_statement pipe_row_statement
         ::= SQL_descriptor_statement
           | prepare_statement
           | deallocate_prepared_statement
           | describe_statement
           | execute_statement
           | execute_immediate_statement
           | SQL_dynamic_data_statement
           | copy_descriptor_statement
           | pipe_row_statement
referenced by: SQL_executable_statement SQL_dynamic_data_statement: allocate_extended_dynamic_cursor_statement allocate_received_cursor_statement dynamic_open_statement dynamic_fetch_statement dynamic_close_statement dynamic_delete_statement__positioned dynamic_update_statement__positioned
           | allocate_received_cursor_statement
           | dynamic_open_statement
           | dynamic_fetch_statement
           | dynamic_close_statement
           | dynamic_delete_statement__positioned
           | dynamic_update_statement__positioned
referenced by: SQL_dynamic_statement SQL_descriptor_statement: allocate_descriptor_statement deallocate_descriptor_statement set_descriptor_statement get_descriptor_statement
         ::= allocate_descriptor_statement
           | deallocate_descriptor_statement
           | set_descriptor_statement
           | get_descriptor_statement
referenced by: SQL_dynamic_statement declare_cursor: DECLARE cursor_name cursor_properties FOR cursor_specification
         ::= 'DECLARE' cursor_name cursor_properties 'FOR' cursor_specification
referenced by: module_contents statement_or_declaration cursor_properties: cursor_sensitivity cursor_scrollability CURSOR cursor_holdability cursor_returnability referenced by: allocate_extended_dynamic_cursor_statement declare_cursor dynamic_declare_cursor cursor_sensitivity: SENSITIVE INSENSITIVE ASENSITIVE
         ::= 'SENSITIVE'
           | 'INSENSITIVE'
           | 'ASENSITIVE'
referenced by: cursor_attribute cursor_properties cursor_scrollability: NO SCROLL
         ::= 'NO'? 'SCROLL'
referenced by: cursor_attribute cursor_properties cursor_holdability: WITH WITHOUT HOLD
         ::= ( 'WITH' | 'WITHOUT' ) 'HOLD'
referenced by: cursor_attribute cursor_properties cursor_returnability: WITH WITHOUT RETURN
         ::= ( 'WITH' | 'WITHOUT' ) 'RETURN'
referenced by: cursor_attribute cursor_properties cursor_specification: query_expression updatability_clause
         ::= query_expression updatability_clause?
referenced by: declare_cursor direct_select_statement__multiple_rows dynamic_select_statement updatability_clause: FOR READ* ONLY UPDATE OF column_name_list
         ::= 'FOR' ( 'READ*' 'ONLY' | 'UPDATE' ( 'OF' column_name_list )? )
referenced by: cursor_specification open_statement: OPEN cursor_name
         ::= 'OPEN' cursor_name
referenced by: SQL_data_statement fetch_statement: FETCH fetch_orientation FROM cursor_name INTO fetch_target_list
         ::= 'FETCH' ( fetch_orientation? 'FROM' )? cursor_name 'INTO' fetch_target_list
referenced by: SQL_data_statement fetch_orientation: NEXT* PRIOR* FIRST* LAST* ABSOLUTE* RELATIVE* simple_value_specification
         ::= 'NEXT*'
           | 'PRIOR*'
           | 'FIRST*'
           | 'LAST*'
           | ( 'ABSOLUTE*' | 'RELATIVE*' ) simple_value_specification
referenced by: dynamic_fetch_statement fetch_statement fetch_target_list: target_specification , target_specification
         ::= target_specification ( ',' target_specification )?
referenced by: fetch_statement close_statement: CLOSE cursor_name
         ::= 'CLOSE' cursor_name
referenced by: SQL_data_statement select_statement__single_row: SELECT set_quantifier select_list INTO select_target_list table_expression
         ::= 'SELECT' set_quantifier? select_list 'INTO' select_target_list table_expression
referenced by: SQL_data_statement select_target_list: target_specification ,
         ::= target_specification ( ',' target_specification )*
referenced by: select_statement__single_row delete_statement__positioned: DELETE FROM target_table AS correlation_name WHERE CURRENT OF cursor_name
         ::= 'DELETE' 'FROM' target_table ( 'AS'? correlation_name )? 'WHERE' 'CURRENT' 'OF' cursor_name
referenced by: SQL_data_change_statement target_table: table_name ONLY ( table_name )
         ::= table_name
           | 'ONLY' '(' table_name ')'
referenced by: delete_statement__positioned delete_statement__searched dynamic_delete_statement__positioned dynamic_update_statement__positioned merge_statement preparable_dynamic_delete_statement__positioned preparable_dynamic_update_statement__positioned truncate_table_statement update_statement__positioned update_statement__searched delete_statement__searched: DELETE FROM target_table FOR PORTION OF application_time_period_name FROM point_in_time_1 TO point_in_time_2 AS correlation_name WHERE search_condition
         ::= 'DELETE' 'FROM' target_table ( 'FOR' 'PORTION' 'OF' application_time_period_name 'FROM' point_in_time_1 'TO' point_in_time_2 )? ( 'AS'? correlation_name )? ( 'WHERE' search_condition )?
referenced by: SQL_data_change_statement data_change_statement direct_SQL_data_statement preparable_SQL_data_statement truncate_table_statement: TRUNCATE TABLE target_table identity_column_restart_option
         ::= 'TRUNCATE' 'TABLE' target_table identity_column_restart_option?
referenced by: SQL_data_change_statement direct_SQL_data_statement preparable_SQL_data_statement identity_column_restart_option: CONTINUE* RESTART* IDENTITY
         ::= ( 'CONTINUE*' | 'RESTART*' ) 'IDENTITY'
referenced by: truncate_table_statement insert_statement: INSERT INTO insertion_target insert_columns_and_source
         ::= 'INSERT' 'INTO' insertion_target insert_columns_and_source
referenced by: SQL_data_change_statement data_change_statement direct_SQL_data_statement preparable_SQL_data_statement insertion_target: table_name
         ::= table_name
referenced by: insert_statement insert_columns_and_source: from_subquery from_constructor from_default
         ::= from_subquery
           | from_constructor
           | from_default
referenced by: insert_statement from_subquery: ( insert_column_list ) override_clause query_expression
         ::= ( '(' insert_column_list ')' )? override_clause? query_expression
referenced by: insert_columns_and_source from_constructor: ( insert_column_list ) override_clause contextually_typed_table_value_constructor referenced by: insert_columns_and_source override_clause: OVERRIDING* USER SYSTEM VALUE
         ::= 'OVERRIDING*' ( 'USER' | 'SYSTEM' ) 'VALUE'
referenced by: from_constructor from_subquery merge_insert_specification from_default: DEFAULT VALUES
         ::= 'DEFAULT' 'VALUES'
referenced by: insert_columns_and_source insert_column_list: column_name_list
         ::= column_name_list
referenced by: from_constructor from_subquery merge_insert_specification merge_statement: MERGE INTO target_table AS merge_correlation_name USING table_reference ON search_condition merge_operation_specification referenced by: SQL_data_change_statement data_change_statement direct_SQL_data_statement preparable_SQL_data_statement merge_correlation_name: correlation_name
         ::= correlation_name
referenced by: merge_statement merge_operation_specification: merge_when_clause
         ::= merge_when_clause+
referenced by: merge_statement merge_when_clause: merge_when_matched_clause merge_when_not_matched_clause
         ::= merge_when_matched_clause
           | merge_when_not_matched_clause
referenced by: merge_operation_specification merge_when_matched_clause: WHEN MATCHED* AND search_condition THEN merge_update_or_delete_specification
         ::= 'WHEN' 'MATCHED*' ( 'AND' search_condition )? 'THEN' merge_update_or_delete_specification
referenced by: merge_when_clause merge_update_or_delete_specification: merge_update_specification DELETE
         ::= merge_update_specification
           | 'DELETE'
referenced by: merge_when_matched_clause merge_when_not_matched_clause: WHEN NOT MATCHED* AND search_condition THEN merge_insert_specification
         ::= 'WHEN' 'NOT' 'MATCHED*' ( 'AND' search_condition )? 'THEN' merge_insert_specification
referenced by: merge_when_clause merge_update_specification: UPDATE SET set_clause_list
         ::= 'UPDATE' 'SET' set_clause_list
referenced by: merge_update_or_delete_specification merge_insert_specification: INSERT ( insert_column_list ) override_clause VALUES merge_insert_value_list
         ::= 'INSERT' ( '(' insert_column_list ')' )? override_clause? 'VALUES' merge_insert_value_list
referenced by: merge_when_not_matched_clause merge_insert_value_list: ( merge_insert_value_element , )
         ::= '(' merge_insert_value_element ( ',' merge_insert_value_element )* ')'
referenced by: merge_insert_specification merge_insert_value_element: value_expression contextually_typed_value_specification
         ::= value_expression
referenced by: merge_insert_value_list update_statement__positioned: UPDATE target_table AS correlation_name SET set_clause_list WHERE CURRENT OF cursor_name
         ::= 'UPDATE' target_table ( 'AS'? correlation_name )? 'SET' set_clause_list 'WHERE' 'CURRENT' 'OF' cursor_name
referenced by: SQL_data_change_statement update_statement__searched: UPDATE target_table FOR PORTION OF application_time_period_name FROM point_in_time_1 TO point_in_time_2 AS correlation_name SET set_clause_list WHERE search_condition
         ::= 'UPDATE' target_table ( 'FOR' 'PORTION' 'OF' application_time_period_name 'FROM' point_in_time_1 'TO' point_in_time_2 )? ( 'AS'? correlation_name )? 'SET' set_clause_list ( 'WHERE' search_condition )?
referenced by: SQL_data_change_statement data_change_statement direct_SQL_data_statement preparable_SQL_data_statement set_clause_list: set_clause ,
         ::= set_clause ( ',' set_clause )*
referenced by: dynamic_update_statement__positioned merge_update_specification preparable_dynamic_update_statement__positioned update_statement__positioned update_statement__searched set_clause: multiple_column_assignment set_target = update_source
         ::= multiple_column_assignment
           | set_target '=' update_source
referenced by: set_clause_list set_target: update_target mutated_set_clause
         ::= update_target
           | mutated_set_clause
referenced by: set_clause set_target_list multiple_column_assignment: set_target_list = assigned_row
         ::= set_target_list '=' assigned_row
referenced by: set_clause set_target_list: ( set_target , )
         ::= '(' set_target ( ',' set_target )* ')'
referenced by: multiple_column_assignment assigned_row: contextually_typed_row_value_expression referenced by: multiple_column_assignment update_target: object_column left_bracket_or_trigraph simple_value_specification right_bracket_or_trigraph referenced by: set_target object_column: column_name
         ::= column_name
referenced by: mutated_target update_target mutated_set_clause: mutated_target . method_name
         ::= mutated_target '.' method_name
referenced by: mutated_target set_target mutated_target: object_column mutated_set_clause
         ::= object_column
           | mutated_set_clause
referenced by: mutated_set_clause update_source: value_expression contextually_typed_value_specification
         ::= value_expression
referenced by: set_clause temporary_table_declaration: DECLARE LOCAL TEMPORARY* TABLE table_name table_element_list ON COMMIT table_commit_action ROWS
         ::= 'DECLARE' 'LOCAL' 'TEMPORARY*' 'TABLE' table_name table_element_list ( 'ON' 'COMMIT' table_commit_action 'ROWS' )?
referenced by: SQL_client_module_definition direct_SQL_data_statement statement_or_declaration free_locator_statement: FREE LOCATOR* locator_reference ,
         ::= 'FREE' 'LOCATOR*' locator_reference ( ',' locator_reference )*
referenced by: SQL_data_statement preparable_SQL_data_statement locator_reference: host_parameter_name embedded_variable_name ?
         ::= host_parameter_name
           | embedded_variable_name
           | '?'
referenced by: free_locator_statement hold_locator_statement hold_locator_statement: HOLD LOCATOR* locator_reference ,
         ::= 'HOLD' 'LOCATOR*' locator_reference ( ',' locator_reference )*
referenced by: SQL_data_statement preparable_SQL_data_statement call_statement: CALL routine_invocation
         ::= 'CALL' routine_invocation
referenced by: SQL_control_statement return_statement: RETURN return_value
         ::= 'RETURN' return_value
referenced by: SQL_control_statement return_value: value_expression NULL
         ::= value_expression
           | 'NULL'
referenced by: return_statement start_transaction_statement: START TRANSACTION* transaction_characteristics
         ::= 'START' 'TRANSACTION*' transaction_characteristics?
referenced by: SQL_transaction_statement set_transaction_statement: SET LOCAL TRANSACTION* transaction_characteristics
         ::= 'SET' 'LOCAL'? 'TRANSACTION*' transaction_characteristics
referenced by: SQL_transaction_statement transaction_characteristics: transaction_mode ,
         ::= ( transaction_mode ( ',' transaction_mode )* )?
referenced by: set_transaction_statement start_transaction_statement transaction_mode: isolation_level transaction_access_mode diagnostics_size
         ::= isolation_level
           | transaction_access_mode
           | diagnostics_size
referenced by: session_transaction_characteristics transaction_characteristics transaction_access_mode: READ* ONLY WRITE*
         ::= 'READ*' ( 'ONLY' | 'WRITE*' )
referenced by: transaction_mode isolation_level: ISOLATION* LEVEL* level_of_isolation
         ::= 'ISOLATION*' 'LEVEL*' level_of_isolation
referenced by: transaction_mode level_of_isolation: READ* UNCOMMITTED* COMMITTED* REPEATABLE* READ* SERIALIZABLE*
         ::= 'READ*' ( 'UNCOMMITTED*' | 'COMMITTED*' )
           | 'REPEATABLE*' 'READ*'
           | 'SERIALIZABLE*'
referenced by: isolation_level diagnostics_size: DIAGNOSTICS* SIZE* number_of_conditions
         ::= 'DIAGNOSTICS*' 'SIZE*' number_of_conditions
referenced by: transaction_mode number_of_conditions: simple_value_specification
         ::= simple_value_specification
referenced by: diagnostics_size set_constraints_mode_statement: SET CONSTRAINTS* constraint_name_list DEFERRED* IMMEDIATE*
         ::= 'SET' 'CONSTRAINTS*' constraint_name_list ( 'DEFERRED*' | 'IMMEDIATE*' )
referenced by: SQL_transaction_statement constraint_name_list: ALL constraint_name ,
         ::= 'ALL'
           | constraint_name ( ',' constraint_name )*
referenced by: set_constraints_mode_statement savepoint_statement: SAVEPOINT savepoint_specifier
         ::= 'SAVEPOINT' savepoint_specifier
referenced by: SQL_transaction_statement savepoint_specifier: savepoint_name
         ::= savepoint_name
referenced by: release_savepoint_statement savepoint_clause savepoint_statement release_savepoint_statement: RELEASE SAVEPOINT savepoint_specifier
         ::= 'RELEASE' 'SAVEPOINT' savepoint_specifier
referenced by: SQL_transaction_statement commit_statement: COMMIT WORK* AND NO CHAIN*
         ::= 'COMMIT' 'WORK*'? ( 'AND' 'NO'? 'CHAIN*' )?
referenced by: SQL_transaction_statement rollback_statement: ROLLBACK WORK* AND NO CHAIN* savepoint_clause
         ::= 'ROLLBACK' 'WORK*'? ( 'AND' 'NO'? 'CHAIN*' )? savepoint_clause?
referenced by: SQL_transaction_statement savepoint_clause: TO SAVEPOINT savepoint_specifier
         ::= 'TO' 'SAVEPOINT' savepoint_specifier
referenced by: rollback_statement connect_statement: CONNECT TO connection_target
         ::= 'CONNECT' 'TO' connection_target
referenced by: SQL_connection_statement connection_target: SQL_server_name AS connection_name USER connection_user_name DEFAULT
         ::= SQL_server_name ( 'AS' connection_name )? ( 'USER' connection_user_name )?
           | 'DEFAULT'
referenced by: connect_statement set_connection_statement: SET CONNECTION* connection_object
         ::= 'SET' 'CONNECTION*' connection_object
referenced by: SQL_connection_statement connection_object: DEFAULT connection_name
         ::= 'DEFAULT'
           | connection_name
referenced by: disconnect_object set_connection_statement disconnect_statement: DISCONNECT disconnect_object
         ::= 'DISCONNECT' disconnect_object
referenced by: SQL_connection_statement disconnect_object: connection_object ALL CURRENT
         ::= connection_object
           | 'ALL'
           | 'CURRENT'
referenced by: disconnect_statement set_session_characteristics_statement: SET SESSION* CHARACTERISTICS* AS session_characteristic_list
         ::= 'SET' 'SESSION*' 'CHARACTERISTICS*' 'AS' session_characteristic_list
referenced by: SQL_session_statement session_characteristic_list: session_characteristic ,
         ::= session_characteristic ( ',' session_characteristic )*
referenced by: set_session_characteristics_statement session_characteristic: session_transaction_characteristics referenced by: session_characteristic_list session_transaction_characteristics: TRANSACTION* transaction_mode ,
         ::= 'TRANSACTION*' transaction_mode ( ',' transaction_mode )*
referenced by: session_characteristic set_session_user_identifier_statement: SET SESSION* AUTHORIZATION value_specification
         ::= 'SET' 'SESSION*' 'AUTHORIZATION' value_specification
referenced by: SQL_session_statement set_role_statement: SET ROLE* role_specification
         ::= 'SET' 'ROLE*' role_specification
referenced by: SQL_session_statement role_specification: value_specification NONE
         ::= value_specification
           | 'NONE'
referenced by: set_role_statement set_local_time_zone_statement: SET TIME ZONE* set_time_zone_value
         ::= 'SET' 'TIME' 'ZONE*' set_time_zone_value
referenced by: SQL_session_statement set_time_zone_value: interval_value_expression LOCAL
         ::= interval_value_expression
           | 'LOCAL'
referenced by: set_local_time_zone_statement set_catalog_statement: SET catalog_name_characteristic
         ::= 'SET' catalog_name_characteristic
referenced by: SQL_session_statement catalog_name_characteristic: CATALOG* value_specification
         ::= 'CATALOG*' value_specification
referenced by: set_catalog_statement set_schema_statement: SET schema_name_characteristic
         ::= 'SET' schema_name_characteristic
referenced by: SQL_session_statement schema_name_characteristic: SCHEMA* value_specification
         ::= 'SCHEMA*' value_specification
referenced by: set_schema_statement set_names_statement: SET character_set_name_characteristic
         ::= 'SET' character_set_name_characteristic
referenced by: SQL_session_statement character_set_name_characteristic: NAMES* value_specification
         ::= 'NAMES*' value_specification
referenced by: set_names_statement set_path_statement: SET SQL_path_characteristic
         ::= 'SET' SQL_path_characteristic
referenced by: SQL_session_statement SQL_path_characteristic: PATH* value_specification
         ::= 'PATH*' value_specification
referenced by: set_path_statement set_transform_group_statement: SET transform_group_characteristic
         ::= 'SET' transform_group_characteristic
referenced by: SQL_session_statement transform_group_characteristic: DEFAULT TRANSFORM* GROUP TRANSFORM* GROUP FOR TYPE* path_resolved_user_defined_type_name value_specification
         ::= ( 'DEFAULT' 'TRANSFORM*' 'GROUP' | 'TRANSFORM*' 'GROUP' 'FOR' 'TYPE*' path_resolved_user_defined_type_name ) value_specification
referenced by: set_transform_group_statement set_session_collation_statement: SET COLLATION* collation_specification NO COLLATION* FOR character_set_specification_list
         ::= 'SET' ( 'COLLATION*' collation_specification | 'NO' 'COLLATION*' ) ( 'FOR' character_set_specification_list )?
referenced by: SQL_session_statement collation_specification: value_specification
         ::= value_specification
referenced by: set_session_collation_statement allocate_descriptor_statement: ALLOCATE SQL DESCRIPTOR* conventional_descriptor_name WITH MAX occurrences
         ::= 'ALLOCATE' 'SQL'? 'DESCRIPTOR*' conventional_descriptor_name ( 'WITH' 'MAX' occurrences )?
referenced by: SQL_descriptor_statement occurrences: simple_value_specification
         ::= simple_value_specification
referenced by: allocate_descriptor_statement deallocate_descriptor_statement: DEALLOCATE SQL DESCRIPTOR* conventional_descriptor_name
         ::= 'DEALLOCATE' 'SQL'? 'DESCRIPTOR*' conventional_descriptor_name
referenced by: SQL_descriptor_statement get_descriptor_statement: GET SQL DESCRIPTOR* descriptor_name get_descriptor_information
         ::= 'GET' 'SQL'? 'DESCRIPTOR*' descriptor_name get_descriptor_information
referenced by: SQL_descriptor_statement get_descriptor_information: get_header_information , VALUE item_number get_item_information ,
         ::= get_header_information ( ',' get_header_information )*
           | 'VALUE' item_number get_item_information ( ',' get_item_information )*
referenced by: get_descriptor_statement get_header_information: simple_target_specification_1 = header_item_name referenced by: get_descriptor_information header_item_name: COUNT KEY_TYPE* DYNAMIC_FUNCTION* DYNAMIC_FUNCTION_CODE* TOP_LEVEL_COUNT*
         ::= 'COUNT'
           | 'KEY_TYPE*'
           | 'DYNAMIC_FUNCTION*'
           | 'DYNAMIC_FUNCTION_CODE*'
           | 'TOP_LEVEL_COUNT*'
referenced by: get_header_information set_header_information get_item_information: simple_target_specification_2 = descriptor_item_name referenced by: get_descriptor_information item_number: simple_value_specification
         ::= simple_value_specification
referenced by: get_descriptor_information set_descriptor_information simple_target_specification_1: simple_target_specification
         ::= simple_target_specification
referenced by: get_header_information simple_target_specification_2: simple_target_specification
         ::= simple_target_specification
referenced by: get_item_information descriptor_item_name: CARDINALITY CHARACTER_SET_CATALOG* CHARACTER_SET_NAME* CHARACTER_SET_SCHEMA* COLLATION_CATALOG* COLLATION_NAME* COLLATION_SCHEMA* DATA* DATETIME_INTERVAL_CODE* DATETIME_INTERVAL_PRECISION* DEGREE* INDICATOR KEY_MEMBER* LENGTH* LEVEL* NAME* NULLABLE* NULL_ORDERING OCTET_LENGTH PARAMETER_MODE* PARAMETER_ORDINAL_POSITION* PARAMETER_SPECIFIC_CATALOG* PARAMETER_SPECIFIC_NAME* PARAMETER_SPECIFIC_SCHEMA* PRECISION RETURNED_CARDINALITY* RETURNED_LENGTH* RETURNED_OCTET_LENGTH* SCALE* SCOPE_CATALOG* SCOPE_NAME* SCOPE_SCHEMA* SORT_DIRECTION TYPE* UNNAMED* USER_DEFINED_TYPE_CATALOG* USER_DEFINED_TYPE_NAME* USER_DEFINED_TYPE_SCHEMA* USER_DEFINED_TYPE_CODE*
         ::= 'CARDINALITY'
           | 'CHARACTER_SET_CATALOG*'
           | 'CHARACTER_SET_NAME*'
           | 'CHARACTER_SET_SCHEMA*'
           | 'COLLATION_CATALOG*'
           | 'COLLATION_NAME*'
           | 'COLLATION_SCHEMA*'
           | 'DATA*'
           | 'DATETIME_INTERVAL_CODE*'
           | 'DATETIME_INTERVAL_PRECISION*'
           | 'DEGREE*'
           | 'INDICATOR'
           | 'KEY_MEMBER*'
           | 'LENGTH*'
           | 'LEVEL*'
           | 'NAME*'
           | 'NULLABLE*'
           | NULL_ORDERING
           | 'OCTET_LENGTH'
           | 'PARAMETER_MODE*'
           | 'PARAMETER_ORDINAL_POSITION*'
           | 'PARAMETER_SPECIFIC_CATALOG*'
           | 'PARAMETER_SPECIFIC_NAME*'
           | 'PARAMETER_SPECIFIC_SCHEMA*'
           | 'PRECISION'
           | 'RETURNED_CARDINALITY*'
           | 'RETURNED_LENGTH*'
           | 'RETURNED_OCTET_LENGTH*'
           | 'SCALE*'
           | 'SCOPE_CATALOG*'
           | 'SCOPE_NAME*'
           | 'SCOPE_SCHEMA*'
           | SORT_DIRECTION
           | 'TYPE*'
           | 'UNNAMED*'
           | 'USER_DEFINED_TYPE_CATALOG*'
           | 'USER_DEFINED_TYPE_NAME*'
           | 'USER_DEFINED_TYPE_SCHEMA*'
           | 'USER_DEFINED_TYPE_CODE*'
referenced by: get_item_information set_item_information set_descriptor_statement: SET SQL DESCRIPTOR* descriptor_name set_descriptor_information
         ::= 'SET' 'SQL'? 'DESCRIPTOR*' descriptor_name set_descriptor_information
referenced by: SQL_descriptor_statement set_descriptor_information: set_header_information , VALUE item_number set_item_information ,
         ::= set_header_information ( ',' set_header_information )*
           | 'VALUE' item_number set_item_information ( ',' set_item_information )*
referenced by: set_descriptor_statement set_header_information: header_item_name = simple_value_specification_1 referenced by: set_descriptor_information set_item_information: descriptor_item_name = simple_value_specification_2 referenced by: set_descriptor_information simple_value_specification_1: simple_value_specification
         ::= simple_value_specification
referenced by: set_header_information simple_value_specification_2: simple_value_specification
         ::= simple_value_specification
referenced by: set_item_information copy_descriptor_statement: copy_whole_descriptor_statement copy_item_descriptor_statement
         ::= copy_whole_descriptor_statement
           | copy_item_descriptor_statement
referenced by: SQL_dynamic_statement copy_whole_descriptor_statement: COPY source_descriptor_name TO target_descriptor_name
         ::= 'COPY' source_descriptor_name 'TO' target_descriptor_name
referenced by: copy_descriptor_statement copy_item_descriptor_statement: COPY source_descriptor_name VALUE item_number_1 ( copy_descriptor_options ) TO target_descriptor_name VALUE item_number_2
         ::= 'COPY' source_descriptor_name 'VALUE' item_number_1 '(' copy_descriptor_options ')' 'TO' target_descriptor_name 'VALUE' item_number_2
referenced by: copy_descriptor_statement source_descriptor_name: descriptor_name
         ::= descriptor_name
referenced by: copy_item_descriptor_statement copy_whole_descriptor_statement target_descriptor_name: PTF_descriptor_name
         ::= PTF_descriptor_name
referenced by: copy_item_descriptor_statement copy_whole_descriptor_statement item_number_1: simple_value_specification
         ::= simple_value_specification
referenced by: copy_item_descriptor_statement item_number_2: simple_value_specification
         ::= simple_value_specification
referenced by: copy_item_descriptor_statement copy_descriptor_options: NAME* , TYPE* TYPE* DATA*
         ::= 'NAME*' ( ',' 'TYPE*' )?
           | 'TYPE*'
           | 'DATA*'
referenced by: copy_item_descriptor_statement prepare_statement: PREPARE SQL_statement_name attributes_specification FROM SQL_statement_variable referenced by: SQL_dynamic_statement attributes_specification: ATTRIBUTES* attributes_variable
         ::= 'ATTRIBUTES*' attributes_variable
referenced by: prepare_statement attributes_variable: simple_value_specification
         ::= simple_value_specification
referenced by: attributes_specification SQL_statement_variable: simple_value_specification
         ::= simple_value_specification
referenced by: execute_immediate_statement prepare_statement preparable_statement: preparable_SQL_data_statement preparable_SQL_schema_statement preparable_SQL_transaction_statement preparable_SQL_control_statement preparable_SQL_session_statement !! See the Syntax Rules.
         ::= preparable_SQL_data_statement
           | preparable_SQL_schema_statement
           | preparable_SQL_transaction_statement
           | preparable_SQL_control_statement
           | preparable_SQL_session_statement
           | '!! See the Syntax Rules.'
no referencespreparable_SQL_data_statement: delete_statement__searched dynamic_single_row_select_statement insert_statement dynamic_select_statement update_statement__searched truncate_table_statement merge_statement preparable_dynamic_delete_statement__positioned preparable_dynamic_update_statement__positioned hold_locator_statement free_locator_statement
         ::= delete_statement__searched
           | dynamic_single_row_select_statement
           | insert_statement
           | dynamic_select_statement
           | update_statement__searched
           | truncate_table_statement
           | merge_statement
           | hold_locator_statement
           | free_locator_statement
referenced by: preparable_statement preparable_SQL_schema_statement: SQL_schema_statement
         ::= SQL_schema_statement
referenced by: preparable_statement preparable_SQL_transaction_statement: SQL_transaction_statement
         ::= SQL_transaction_statement
referenced by: preparable_statement preparable_SQL_control_statement: SQL_control_statement
         ::= SQL_control_statement
referenced by: preparable_statement preparable_SQL_session_statement: SQL_session_statement
         ::= SQL_session_statement
referenced by: preparable_statement dynamic_select_statement: cursor_specification
         ::= cursor_specification
referenced by: preparable_SQL_data_statement cursor_attributes: cursor_attribute
         ::= cursor_attribute+
no referencescursor_attribute: cursor_sensitivity cursor_scrollability cursor_holdability cursor_returnability
         ::= cursor_sensitivity
           | cursor_scrollability
           | cursor_holdability
           | cursor_returnability
referenced by: cursor_attributes deallocate_prepared_statement: DEALLOCATE PREPARE SQL_statement_name
         ::= 'DEALLOCATE' 'PREPARE' SQL_statement_name
referenced by: SQL_dynamic_statement describe_statement: describe_input_statement describe_output_statement
         ::= describe_input_statement
           | describe_output_statement
referenced by: SQL_dynamic_statement describe_input_statement: DESCRIBE INPUT* SQL_statement_name using_descriptor nesting_option
         ::= 'DESCRIBE' 'INPUT*' SQL_statement_name using_descriptor nesting_option?
referenced by: describe_statement describe_output_statement: DESCRIBE OUTPUT* described_object using_descriptor nesting_option
         ::= 'DESCRIBE' 'OUTPUT*'? described_object using_descriptor nesting_option?
referenced by: describe_statement nesting_option: WITH WITHOUT NESTING*
         ::= ( 'WITH' | 'WITHOUT' ) 'NESTING*'
referenced by: describe_input_statement describe_output_statement using_descriptor: USING SQL DESCRIPTOR* descriptor_name
         ::= 'USING' 'SQL'? 'DESCRIPTOR*' descriptor_name
referenced by: describe_input_statement describe_output_statement using_input_descriptor described_object: SQL_statement_name CURSOR cursor_name STRUCTURE*
         ::= SQL_statement_name
           | 'CURSOR' cursor_name 'STRUCTURE*'
referenced by: describe_output_statement input_using_clause: using_arguments using_input_descriptor
         ::= using_arguments
           | using_input_descriptor
referenced by: dynamic_open_statement parameter_using_clause using_arguments: USING using_argument ,
         ::= 'USING' using_argument ( ',' using_argument )*
referenced by: input_using_clause using_argument: general_value_specification
         ::= general_value_specification
referenced by: using_arguments using_input_descriptor: using_descriptor
         ::= using_descriptor
referenced by: input_using_clause output_using_clause: into_arguments into_descriptor
         ::= into_arguments
           | into_descriptor
referenced by: dynamic_fetch_statement result_using_clause into_arguments: INTO into_argument ,
         ::= 'INTO' into_argument ( ',' into_argument )*
referenced by: output_using_clause into_argument: target_specification
         ::= target_specification
referenced by: into_arguments into_descriptor: INTO SQL DESCRIPTOR* descriptor_name
         ::= 'INTO' 'SQL'? 'DESCRIPTOR*' descriptor_name
referenced by: output_using_clause execute_statement: EXECUTE SQL_statement_name result_using_clause parameter_using_clause referenced by: SQL_dynamic_statement result_using_clause: output_using_clause
         ::= output_using_clause
referenced by: execute_statement parameter_using_clause: input_using_clause
         ::= input_using_clause
referenced by: execute_statement execute_immediate_statement: EXECUTE IMMEDIATE* SQL_statement_variable
         ::= 'EXECUTE' 'IMMEDIATE*' SQL_statement_variable
referenced by: SQL_dynamic_statement dynamic_declare_cursor: DECLARE cursor_name cursor_properties FOR statement_name
         ::= 'DECLARE' cursor_name cursor_properties 'FOR' statement_name
referenced by: module_contents statement_or_declaration descriptor_value_constructor: DESCRIPTOR* ( descriptor_column_list )
         ::= 'DESCRIPTOR*' '(' descriptor_column_list ')'
referenced by: descriptor_argument parameter_default descriptor_column_list: descriptor_column_specification , referenced by: descriptor_value_constructor descriptor_column_specification: column_name data_type
         ::= column_name data_type?
referenced by: descriptor_column_list allocate_extended_dynamic_cursor_statement: ALLOCATE extended_cursor_name cursor_properties FOR extended_statement_name
         ::= 'ALLOCATE' extended_cursor_name cursor_properties 'FOR' extended_statement_name
referenced by: SQL_dynamic_data_statement allocate_received_cursor_statement: ALLOCATE cursor_name CURSOR FOR PROCEDURE specific_routine_designator
         ::= 'ALLOCATE' cursor_name 'CURSOR'? 'FOR' 'PROCEDURE' specific_routine_designator
referenced by: SQL_dynamic_data_statement dynamic_open_statement: OPEN conventional_dynamic_cursor_name input_using_clause referenced by: SQL_dynamic_data_statement dynamic_fetch_statement: FETCH fetch_orientation FROM dynamic_cursor_name output_using_clause
         ::= 'FETCH' ( fetch_orientation? 'FROM' )? dynamic_cursor_name output_using_clause
referenced by: SQL_dynamic_data_statement dynamic_single_row_select_statement: query_specification
         ::= query_specification
referenced by: preparable_SQL_data_statement dynamic_close_statement: CLOSE conventional_dynamic_cursor_name
         ::= 'CLOSE' conventional_dynamic_cursor_name
referenced by: SQL_dynamic_data_statement dynamic_delete_statement__positioned: DELETE FROM target_table WHERE CURRENT OF conventional_dynamic_cursor_name
         ::= 'DELETE' 'FROM' target_table 'WHERE' 'CURRENT' 'OF' conventional_dynamic_cursor_name
referenced by: SQL_dynamic_data_statement dynamic_update_statement__positioned: UPDATE target_table SET set_clause_list WHERE CURRENT OF conventional_dynamic_cursor_name
         ::= 'UPDATE' target_table 'SET' set_clause_list 'WHERE' 'CURRENT' 'OF' conventional_dynamic_cursor_name
referenced by: SQL_dynamic_data_statement preparable_dynamic_delete_statement__positioned: DELETE FROM target_table WHERE CURRENT OF preparable_dynamic_cursor_name
         ::= 'DELETE' ( 'FROM' target_table )? 'WHERE' 'CURRENT' 'OF' preparable_dynamic_cursor_name
referenced by: preparable_SQL_data_statement preparable_dynamic_cursor_name: scope_option cursor_name
         ::= scope_option? cursor_name
referenced by: preparable_dynamic_delete_statement__positioned preparable_dynamic_update_statement__positioned preparable_dynamic_update_statement__positioned: UPDATE target_table SET set_clause_list WHERE CURRENT OF preparable_dynamic_cursor_name
         ::= 'UPDATE' target_table? 'SET' set_clause_list 'WHERE' 'CURRENT' 'OF' preparable_dynamic_cursor_name
referenced by: preparable_SQL_data_statement pipe_row_statement: PIPE ROW PTF_descriptor_name
         ::= PIPE 'ROW' PTF_descriptor_name
referenced by: SQL_dynamic_statement embedded_SQL_host_program: !! See the Syntax Rules.
         ::= '!! See the Syntax Rules.'
no referencesembedded_SQL_statement: SQL_prefix statement_or_declaration SQL_terminator no referencesstatement_or_declaration: declare_cursor dynamic_declare_cursor temporary_table_declaration embedded_authorization_declaration embedded_path_specification embedded_transform_group_specification embedded_collation_specification embedded_exception_declaration SQL_procedure_statement
         ::= declare_cursor
           | dynamic_declare_cursor
           | temporary_table_declaration
           | embedded_authorization_declaration
           | embedded_path_specification
           | embedded_collation_specification
           | embedded_exception_declaration
           | SQL_procedure_statement
referenced by: embedded_SQL_statement SQL_prefix: EXEC SQL & SQL (
         ::= 'EXEC' 'SQL'
           | '&' 'SQL' '('
referenced by: embedded_SQL_MUMPS_declare embedded_SQL_begin_declare embedded_SQL_end_declare embedded_SQL_statement SQL_terminator: END EXEC ; )
         ::= 'END' 'EXEC'
           | ';'
           | ')'
referenced by: embedded_SQL_MUMPS_declare embedded_SQL_begin_declare embedded_SQL_end_declare embedded_SQL_statement embedded_authorization_declaration: DECLARE embedded_authorization_clause
         ::= 'DECLARE' embedded_authorization_clause
referenced by: statement_or_declaration embedded_authorization_clause: SCHEMA* schema_name AUTHORIZATION embedded_authorization_identifier FOR STATIC ONLY AND DYNAMIC AUTHORIZATION embedded_authorization_identifier FOR STATIC ONLY AND DYNAMIC
         ::= 'SCHEMA*' schema_name ( 'AUTHORIZATION' embedded_authorization_identifier ( 'FOR' 'STATIC' ( 'ONLY' | 'AND' 'DYNAMIC' ) )? )?
           | 'AUTHORIZATION' embedded_authorization_identifier ( 'FOR' 'STATIC' ( 'ONLY' | 'AND' 'DYNAMIC' ) )?
referenced by: embedded_authorization_declaration embedded_authorization_identifier: module_authorization_identifier
         ::= module_authorization_identifier
referenced by: embedded_authorization_clause embedded_path_specification: path_specification
         ::= path_specification
referenced by: statement_or_declaration embedded_transform_group_specification: transform_group_specification
         ::= transform_group_specification
referenced by: statement_or_declaration embedded_collation_specification: module_collations
         ::= module_collations
referenced by: statement_or_declaration embedded_SQL_declare_section: embedded_SQL_begin_declare embedded_character_set_declaration host_variable_definition embedded_SQL_end_declare embedded_SQL_MUMPS_declare
           | embedded_SQL_MUMPS_declare
no referencesembedded_character_set_declaration: SQL NAMES* ARE character_set_specification
         ::= 'SQL' 'NAMES*' 'ARE' character_set_specification
referenced by: embedded_SQL_MUMPS_declare embedded_SQL_declare_section embedded_SQL_begin_declare: SQL_prefix BEGIN DECLARE SECTION* SQL_terminator
         ::= SQL_prefix 'BEGIN' 'DECLARE' 'SECTION*' SQL_terminator?
referenced by: embedded_SQL_declare_section embedded_SQL_end_declare: SQL_prefix END DECLARE SECTION* SQL_terminator
         ::= SQL_prefix 'END' 'DECLARE' 'SECTION*' SQL_terminator?
referenced by: embedded_SQL_declare_section embedded_SQL_MUMPS_declare: SQL_prefix BEGIN DECLARE SECTION* embedded_character_set_declaration host_variable_definition END DECLARE SECTION* SQL_terminator
         ::= SQL_prefix 'BEGIN' 'DECLARE' 'SECTION*' embedded_character_set_declaration? host_variable_definition* 'END' 'DECLARE' 'SECTION*' SQL_terminator
referenced by: embedded_SQL_declare_section host_variable_definition: Ada_variable_definition C_variable_definition COBOL_variable_definition Fortran_variable_definition MUMPS_variable_definition Pascal_variable_definition PL_I_variable_definition
         ::= Ada_variable_definition
           | C_variable_definition
           | COBOL_variable_definition
           | Fortran_variable_definition
           | MUMPS_variable_definition
           | Pascal_variable_definition
           | PL_I_variable_definition
referenced by: embedded_SQL_MUMPS_declare embedded_SQL_declare_section embedded_variable_name: : host_identifier
         ::= ':' host_identifier
referenced by: embedded_variable_specification indicator_variable locator_reference simple_target_specification simple_value_specification host_identifier: !! See the Syntax Rules.
         ::= '!! See the Syntax Rules.'
referenced by: embedded_variable_name embedded_exception_declaration: WHENEVER condition condition_action
         ::= 'WHENEVER' condition condition_action
referenced by: statement_or_declaration condition: SQL_condition
         ::= SQL_condition
referenced by: embedded_exception_declaration SQL_condition: major_category SQLSTATE SQLSTATE_class_code , SQLSTATE_subclass_code CONSTRAINT constraint_name
         ::= major_category
           | 'SQLSTATE' SQLSTATE_class_code ( ',' SQLSTATE_subclass_code )?
           | 'CONSTRAINT' constraint_name
referenced by: condition major_category: SQLEXCEPTION SQLWARNING NOT FOUND*
         ::= 'SQLEXCEPTION'
           | 'SQLWARNING'
           | 'NOT' 'FOUND*'
referenced by: SQL_condition SQLSTATE_class_code: SQLSTATE_char SQLSTATE_char !! See the Syntax Rules.
         ::= SQLSTATE_char SQLSTATE_char '!! See the Syntax Rules.'
referenced by: SQL_condition SQLSTATE_subclass_code: SQLSTATE_char SQLSTATE_char SQLSTATE_char !! See the Syntax Rules.
         ::= SQLSTATE_char SQLSTATE_char SQLSTATE_char '!! See the Syntax Rules.'
referenced by: SQL_condition SQLSTATE_char: simple_Latin_upper_case_letter digit
         ::= simple_Latin_upper_case_letter
           | digit
referenced by: SQLSTATE_class_code SQLSTATE_subclass_code condition_action: CONTINUE* go_to
         ::= 'CONTINUE*'
           | go_to
referenced by: embedded_exception_declaration go_to: GOTO* GO* TO goto_target
go_to    ::= ( 'GOTO*' | 'GO*' 'TO' ) goto_target
referenced by: condition_action goto_target: !! See the Syntax Rules. unsigned_integer
         ::= '!! See the Syntax Rules.'
           | unsigned_integer
referenced by: go_to Ada_variable_definition: !! See the Syntax Rules. , : Ada_type_specification Ada_initial_value
         ::= '!! See the Syntax Rules.' ( ',' '!! See the Syntax Rules.' )* ':' Ada_type_specification Ada_initial_value?
referenced by: host_variable_definition Ada_initial_value: Ada_assignment_operator character_representation referenced by: Ada_variable_definition Ada_assignment_operator: : =
         ::= ':' '='
referenced by: Ada_initial_value Ada_type_specification: Ada_qualified_type_specification Ada_unqualified_type_specification Ada_derived_type_specification
         ::= Ada_qualified_type_specification
           | Ada_unqualified_type_specification
           | Ada_derived_type_specification
referenced by: Ada_variable_definition Ada_qualified_type_specification: Interfaces.SQL.CHAR CHARACTER SET IS character_set_specification ( 1 .. character_length ) Interfaces.SQL.SMALLINT Interfaces.SQL.INT Interfaces.SQL.BIGINT Interfaces.SQL.REAL Interfaces.SQL.DOUBLE_PRECISION Interfaces.SQL.BOOLEAN Interfaces.SQL.SQLSTATE_TYPE Interfaces.SQL.INDICATOR_TYPE
         ::= Interfaces.SQL.CHAR ( 'CHARACTER' 'SET' 'IS'? character_set_specification )? '(' '1' '..' character_length ')'
           | Interfaces.SQL.SMALLINT
           | Interfaces.SQL.INT
           | Interfaces.SQL.BIGINT
           | Interfaces.SQL.REAL
           | Interfaces.SQL.DOUBLE_PRECISION
           | Interfaces.SQL.BOOLEAN
           | Interfaces.SQL.SQLSTATE_TYPE
           | Interfaces.SQL.INDICATOR_TYPE
referenced by: Ada_type_specification Ada_unqualified_type_specification: CHAR ( 1 .. character_length ) SMALLINT INT BIGINT REAL DOUBLE_PRECISION BOOLEAN SQLSTATE_TYPE INDICATOR_TYPE
         ::= 'CHAR' '(' '1' '..' character_length ')'
           | 'SMALLINT'
           | 'INT'
           | 'BIGINT'
           | 'REAL'
           | DOUBLE_PRECISION
           | 'BOOLEAN'
           | SQLSTATE_TYPE
           | INDICATOR_TYPE
referenced by: Ada_type_specification Ada_derived_type_specification: Ada_CLOB_variable Ada_CLOB_locator_variable Ada_BINARY_variable Ada_VARBINARY_variable Ada_BLOB_variable Ada_BLOB_locator_variable Ada_user_defined_type_variable Ada_user_defined_type_locator_variable Ada_REF_variable Ada_array_locator_variable Ada_multiset_locator_variable
         ::= Ada_CLOB_variable
           | Ada_CLOB_locator_variable
           | Ada_BINARY_variable
           | Ada_VARBINARY_variable
           | Ada_BLOB_variable
           | Ada_BLOB_locator_variable
           | Ada_user_defined_type_variable
           | Ada_REF_variable
           | Ada_array_locator_variable
           | Ada_multiset_locator_variable
referenced by: Ada_type_specification Ada_CLOB_variable: SQL TYPE* IS CLOB ( character_large_object_length ) CHARACTER SET IS character_set_specification
         ::= 'SQL' 'TYPE*' 'IS' 'CLOB' '(' character_large_object_length ')' ( 'CHARACTER' 'SET' 'IS'? character_set_specification )?
referenced by: Ada_derived_type_specification Ada_CLOB_locator_variable: SQL TYPE* IS CLOB AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' 'CLOB' 'AS' 'LOCATOR*'
referenced by: Ada_derived_type_specification Ada_BINARY_variable: SQL TYPE* IS BINARY ( length )
         ::= 'SQL' 'TYPE*' 'IS' 'BINARY' '(' length ')'
referenced by: Ada_derived_type_specification Ada_VARBINARY_variable: SQL TYPE* IS VARBINARY ( length )
         ::= 'SQL' 'TYPE*' 'IS' 'VARBINARY' '(' length ')'
referenced by: Ada_derived_type_specification Ada_BLOB_variable: SQL TYPE* IS BLOB ( large_object_length )
         ::= 'SQL' 'TYPE*' 'IS' 'BLOB' '(' large_object_length ')'
referenced by: Ada_derived_type_specification Ada_BLOB_locator_variable: SQL TYPE* IS BLOB AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' 'BLOB' 'AS' 'LOCATOR*'
referenced by: Ada_derived_type_specification Ada_user_defined_type_variable: SQL TYPE* IS path_resolved_user_defined_type_name AS predefined_type
         ::= 'SQL' 'TYPE*' 'IS' path_resolved_user_defined_type_name 'AS' predefined_type
referenced by: Ada_derived_type_specification Ada_user_defined_type_locator_variable: SQL TYPE* IS path_resolved_user_defined_type_name AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' path_resolved_user_defined_type_name 'AS' 'LOCATOR*'
referenced by: Ada_derived_type_specification Ada_REF_variable: SQL TYPE* IS reference_type
         ::= 'SQL' 'TYPE*' 'IS' reference_type
referenced by: Ada_derived_type_specification Ada_array_locator_variable: SQL TYPE* IS array_type AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' array_type 'AS' 'LOCATOR*'
referenced by: Ada_derived_type_specification Ada_multiset_locator_variable: SQL TYPE* IS multiset_type AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' multiset_type 'AS' 'LOCATOR*'
referenced by: Ada_derived_type_specification C_variable_definition: C_storage_class C_class_modifier C_variable_specification ; referenced by: host_variable_definition C_variable_specification: C_numeric_variable C_character_variable C_derived_variable
         ::= C_numeric_variable
           | C_character_variable
           | C_derived_variable
referenced by: C_variable_definition C_storage_class: auto extern static
         ::= 'auto'
           | 'extern'
           | 'static'
referenced by: C_variable_definition C_class_modifier: const volatile
         ::= 'const'
           | 'volatile'
referenced by: C_variable_definition C_numeric_variable: long long short float double !! See the Syntax Rules. C_initial_value ,
         ::= ( 'long' 'long'? | 'short' | 'float' | 'double' ) '!! See the Syntax Rules.' C_initial_value? ( ',' '!! See the Syntax Rules.' C_initial_value? )*
referenced by: C_variable_specification C_character_variable: C_character_type CHARACTER SET IS character_set_specification !! See the Syntax Rules. C_array_specification C_initial_value ,
         ::= C_character_type ( 'CHARACTER' 'SET' 'IS'? character_set_specification )? '!! See the Syntax Rules.' C_array_specification C_initial_value? ( ',' '!! See the Syntax Rules.' C_array_specification C_initial_value? )*
referenced by: C_variable_specification C_character_type: char unsigned char short
         ::= 'char'
           | 'unsigned' ( 'char' | 'short' )
referenced by: C_character_variable C_array_specification: [ character_length ]
         ::= '[' character_length ']'
referenced by: C_NCHAR_VARYING_variable C_NCHAR_variable C_VARCHAR_variable C_character_variable C_derived_variable: C_VARCHAR_variable C_NCHAR_variable C_NCHAR_VARYING_variable C_CLOB_variable C_NCLOB_variable C_BINARY_variable C_VARBINARY_variable C_BLOB_variable C_user_defined_type_variable C_CLOB_locator_variable C_BLOB_locator_variable C_array_locator_variable C_multiset_locator_variable C_user_defined_type_locator_variable C_REF_variable
         ::= C_VARCHAR_variable
           | C_NCHAR_variable
           | C_NCHAR_VARYING_variable
           | C_CLOB_variable
           | C_NCLOB_variable
           | C_BINARY_variable
           | C_VARBINARY_variable
           | C_BLOB_variable
           | C_user_defined_type_variable
           | C_CLOB_locator_variable
           | C_BLOB_locator_variable
           | C_array_locator_variable
           | C_multiset_locator_variable
           | C_user_defined_type_locator_variable
           | C_REF_variable
referenced by: C_variable_specification C_VARCHAR_variable: VARCHAR CHARACTER SET IS character_set_specification !! See the Syntax Rules. C_array_specification C_initial_value ,
         ::= 'VARCHAR' ( 'CHARACTER' 'SET' 'IS'? character_set_specification )? '!! See the Syntax Rules.' C_array_specification C_initial_value? ( ',' '!! See the Syntax Rules.' C_array_specification C_initial_value? )*
referenced by: C_derived_variable C_NCHAR_variable: NCHAR !! See the Syntax Rules. C_array_specification C_initial_value ,
         ::= 'NCHAR' '!! See the Syntax Rules.' C_array_specification C_initial_value? ( ',' '!! See the Syntax Rules.' C_array_specification C_initial_value? )*
referenced by: C_derived_variable C_NCHAR_VARYING_variable: NCHAR VARYING !! See the Syntax Rules. C_array_specification C_initial_value ,
         ::= 'NCHAR' 'VARYING' '!! See the Syntax Rules.' C_array_specification C_initial_value? ( ',' '!! See the Syntax Rules.' C_array_specification C_initial_value? )*
referenced by: C_derived_variable C_CLOB_variable: SQL TYPE* IS CLOB ( character_large_object_length ) CHARACTER SET IS character_set_specification !! See the Syntax Rules. C_initial_value ,
         ::= 'SQL' 'TYPE*' 'IS' 'CLOB' '(' character_large_object_length ')' ( 'CHARACTER' 'SET' 'IS'? character_set_specification )? '!! See the Syntax Rules.' C_initial_value? ( ',' '!! See the Syntax Rules.' C_initial_value? )*
referenced by: C_derived_variable C_NCLOB_variable: SQL TYPE* IS NCLOB ( character_large_object_length ) !! See the Syntax Rules. C_initial_value ,
         ::= 'SQL' 'TYPE*' 'IS' 'NCLOB' '(' character_large_object_length ')' '!! See the Syntax Rules.' C_initial_value? ( ',' '!! See the Syntax Rules.' C_initial_value? )*
referenced by: C_derived_variable C_user_defined_type_variable: SQL TYPE* IS path_resolved_user_defined_type_name AS predefined_type !! See the Syntax Rules. C_initial_value ,
         ::= 'SQL' 'TYPE*' 'IS' path_resolved_user_defined_type_name 'AS' predefined_type '!! See the Syntax Rules.' C_initial_value? ( ',' '!! See the Syntax Rules.' C_initial_value? )*
referenced by: C_derived_variable C_BINARY_variable: SQL TYPE* IS BINARY ( length ) !! See the Syntax Rules. C_initial_value ,
         ::= 'SQL' 'TYPE*' 'IS' 'BINARY' '(' length ')' '!! See the Syntax Rules.' C_initial_value? ( ',' '!! See the Syntax Rules.' C_initial_value? )*
referenced by: C_derived_variable C_VARBINARY_variable: SQL TYPE* IS VARBINARY ( length ) !! See the Syntax Rules. C_initial_value ,
         ::= 'SQL' 'TYPE*' 'IS' 'VARBINARY' '(' length ')' '!! See the Syntax Rules.' C_initial_value? ( ',' '!! See the Syntax Rules.' C_initial_value? )*
referenced by: C_derived_variable C_BLOB_variable: SQL TYPE* IS BLOB ( large_object_length ) !! See the Syntax Rules. C_initial_value ,
         ::= 'SQL' 'TYPE*' 'IS' 'BLOB' '(' large_object_length ')' '!! See the Syntax Rules.' C_initial_value? ( ',' '!! See the Syntax Rules.' C_initial_value? )*
referenced by: C_derived_variable C_CLOB_locator_variable: SQL TYPE* IS CLOB AS LOCATOR* !! See the Syntax Rules. C_initial_value ,
         ::= 'SQL' 'TYPE*' 'IS' 'CLOB' 'AS' 'LOCATOR*' '!! See the Syntax Rules.' C_initial_value? ( ',' '!! See the Syntax Rules.' C_initial_value? )*
referenced by: C_derived_variable C_BLOB_locator_variable: SQL TYPE* IS BLOB AS LOCATOR* !! See the Syntax Rules. C_initial_value ,
         ::= 'SQL' 'TYPE*' 'IS' 'BLOB' 'AS' 'LOCATOR*' '!! See the Syntax Rules.' C_initial_value? ( ',' '!! See the Syntax Rules.' C_initial_value? )*
referenced by: C_derived_variable C_array_locator_variable: SQL TYPE* IS array_type AS LOCATOR* !! See the Syntax Rules. C_initial_value ,
         ::= 'SQL' 'TYPE*' 'IS' array_type 'AS' 'LOCATOR*' '!! See the Syntax Rules.' C_initial_value? ( ',' '!! See the Syntax Rules.' C_initial_value? )*
referenced by: C_derived_variable C_multiset_locator_variable: SQL TYPE* IS multiset_type AS LOCATOR* !! See the Syntax Rules. C_initial_value ,
         ::= 'SQL' 'TYPE*' 'IS' multiset_type 'AS' 'LOCATOR*' '!! See the Syntax Rules.' C_initial_value? ( ',' '!! See the Syntax Rules.' C_initial_value? )*
referenced by: C_derived_variable C_user_defined_type_locator_variable: SQL TYPE* IS path_resolved_user_defined_type_name AS LOCATOR* !! See the Syntax Rules. C_initial_value ,
         ::= 'SQL' 'TYPE*' 'IS' path_resolved_user_defined_type_name 'AS' 'LOCATOR*' '!! See the Syntax Rules.' C_initial_value? ( ',' '!! See the Syntax Rules.' C_initial_value? )*
referenced by: C_derived_variable C_REF_variable: SQL TYPE* IS reference_type !! See the Syntax Rules. C_initial_value ,
         ::= 'SQL' 'TYPE*' 'IS' reference_type '!! See the Syntax Rules.' C_initial_value? ( ',' '!! See the Syntax Rules.' C_initial_value? )*
referenced by: C_derived_variable C_initial_value: = character_representation
         ::= '=' character_representation+
referenced by: C_BINARY_variable C_BLOB_locator_variable C_BLOB_variable C_CLOB_locator_variable C_CLOB_variable C_NCHAR_VARYING_variable C_NCHAR_variable C_NCLOB_variable C_REF_variable C_VARBINARY_variable C_VARCHAR_variable C_array_locator_variable C_character_variable C_multiset_locator_variable C_numeric_variable C_user_defined_type_locator_variable C_user_defined_type_variable COBOL_variable_definition: 01 77 !! See the Syntax Rules. COBOL_type_specification character_representation .
         ::= ( '01' | '77' ) '!! See the Syntax Rules.' COBOL_type_specification character_representation* '.'
referenced by: host_variable_definition COBOL_type_specification: COBOL_character_type COBOL_national_character_type COBOL_numeric_type COBOL_integer_type COBOL_derived_type_specification
         ::= COBOL_character_type
           | COBOL_national_character_type
           | COBOL_numeric_type
           | COBOL_integer_type
           | COBOL_derived_type_specification
referenced by: COBOL_variable_definition COBOL_derived_type_specification: COBOL_CLOB_variable COBOL_NCLOB_variable COBOL_BINARY_variable COBOL_BLOB_variable COBOL_user_defined_type_variable COBOL_CLOB_locator_variable COBOL_BLOB_locator_variable COBOL_array_locator_variable COBOL_multiset_locator_variable COBOL_user_defined_type_locator_variable COBOL_REF_variable
         ::= COBOL_CLOB_variable
           | COBOL_NCLOB_variable
           | COBOL_BINARY_variable
           | COBOL_BLOB_variable
           | COBOL_user_defined_type_variable
           | COBOL_CLOB_locator_variable
           | COBOL_BLOB_locator_variable
           | COBOL_array_locator_variable
           | COBOL_multiset_locator_variable
           | COBOL_REF_variable
referenced by: COBOL_type_specification COBOL_character_type: CHARACTER SET IS character_set_specification PIC PICTURE IS X ( character_length )
         ::= ( 'CHARACTER' 'SET' 'IS'? character_set_specification )? ( PIC | PICTURE ) 'IS'? ( 'X' ( '(' character_length ')' )? )+
referenced by: COBOL_type_specification COBOL_national_character_type: PIC PICTURE IS N ( character_length )
         ::= ( PIC | PICTURE ) 'IS'? ( 'N' ( '(' character_length ')' )? )+
referenced by: COBOL_type_specification COBOL_CLOB_variable: USAGE* IS SQL TYPE* IS CLOB ( character_large_object_length ) CHARACTER SET IS character_set_specification
         ::= ( 'USAGE*' 'IS'? )? 'SQL' 'TYPE*' 'IS' 'CLOB' '(' character_large_object_length ')' ( 'CHARACTER' 'SET' 'IS'? character_set_specification )?
referenced by: COBOL_derived_type_specification COBOL_NCLOB_variable: USAGE* IS SQL TYPE* IS NCLOB ( character_large_object_length )
         ::= ( 'USAGE*' 'IS'? )? 'SQL' 'TYPE*' 'IS' 'NCLOB' '(' character_large_object_length ')'
referenced by: COBOL_derived_type_specification COBOL_BINARY_variable: USAGE* IS SQL TYPE* IS BINARY ( length )
         ::= ( 'USAGE*' 'IS'? )? 'SQL' 'TYPE*' 'IS' 'BINARY' '(' length ')'
referenced by: COBOL_derived_type_specification COBOL_BLOB_variable: USAGE* IS SQL TYPE* IS BLOB ( large_object_length )
         ::= ( 'USAGE*' 'IS'? )? 'SQL' 'TYPE*' 'IS' 'BLOB' '(' large_object_length ')'
referenced by: COBOL_derived_type_specification COBOL_user_defined_type_variable: USAGE* IS SQL TYPE* IS path_resolved_user_defined_type_name AS predefined_type
         ::= ( 'USAGE*' 'IS'? )? 'SQL' 'TYPE*' 'IS' path_resolved_user_defined_type_name 'AS' predefined_type
referenced by: COBOL_derived_type_specification COBOL_CLOB_locator_variable: USAGE* IS SQL TYPE* IS CLOB AS LOCATOR*
         ::= ( 'USAGE*' 'IS'? )? 'SQL' 'TYPE*' 'IS' 'CLOB' 'AS' 'LOCATOR*'
referenced by: COBOL_derived_type_specification COBOL_BLOB_locator_variable: USAGE* IS SQL TYPE* IS BLOB AS LOCATOR*
         ::= ( 'USAGE*' 'IS'? )? 'SQL' 'TYPE*' 'IS' 'BLOB' 'AS' 'LOCATOR*'
referenced by: COBOL_derived_type_specification COBOL_array_locator_variable: USAGE* IS SQL TYPE* IS array_type AS LOCATOR*
         ::= ( 'USAGE*' 'IS'? )? 'SQL' 'TYPE*' 'IS' array_type 'AS' 'LOCATOR*'
referenced by: COBOL_derived_type_specification COBOL_multiset_locator_variable: USAGE* IS SQL TYPE* IS multiset_type AS LOCATOR*
         ::= ( 'USAGE*' 'IS'? )? 'SQL' 'TYPE*' 'IS' multiset_type 'AS' 'LOCATOR*'
referenced by: COBOL_derived_type_specification COBOL_user_defined_type_locator_variable: USAGE* IS SQL TYPE* IS path_resolved_user_defined_type_name AS LOCATOR*
         ::= ( 'USAGE*' 'IS'? )? 'SQL' 'TYPE*' 'IS' path_resolved_user_defined_type_name 'AS' 'LOCATOR*'
referenced by: COBOL_derived_type_specification COBOL_REF_variable: USAGE* IS SQL TYPE* IS reference_type
         ::= ( 'USAGE*' 'IS'? )? 'SQL' 'TYPE*' 'IS' reference_type
referenced by: COBOL_derived_type_specification COBOL_numeric_type: PIC PICTURE IS S COBOL_nines_specification USAGE* IS DISPLAY SIGN LEADING SEPARATE
         ::= ( PIC | PICTURE ) 'IS'? 'S' COBOL_nines_specification ( 'USAGE*' 'IS'? )? DISPLAY SIGN 'LEADING' SEPARATE
referenced by: COBOL_type_specification COBOL_nines_specification: COBOL_nines V COBOL_nines V COBOL_nines
         ::= COBOL_nines ( 'V' COBOL_nines? )?
           | 'V' COBOL_nines
referenced by: COBOL_numeric_type COBOL_integer_type: PIC PICTURE IS S COBOL_nines USAGE* IS BINARY
         ::= ( PIC | PICTURE ) 'IS'? 'S' COBOL_nines ( 'USAGE*' 'IS'? )? 'BINARY'
referenced by: COBOL_type_specification COBOL_nines: 9 ( length )
         ::= ( '9' ( '(' length ')' )? )+
referenced by: COBOL_integer_type COBOL_nines_specification Fortran_variable_definition: Fortran_type_specification !! See the Syntax Rules. ,
         ::= Fortran_type_specification '!! See the Syntax Rules.' ( ',' '!! See the Syntax Rules.' )*
referenced by: host_variable_definition Fortran_type_specification: CHARACTER KIND = n * character_length CHARACTER SET IS character_set_specification INTEGER REAL DOUBLE PRECISION LOGICAL Fortran_derived_type_specification
         ::= 'CHARACTER' ( KIND '=' 'n' )? ( '*' character_length )? ( 'CHARACTER' 'SET' 'IS'? character_set_specification )?
           | 'INTEGER'
           | 'REAL'
           | 'DOUBLE' 'PRECISION'
           | LOGICAL
           | Fortran_derived_type_specification
referenced by: Fortran_variable_definition Fortran_derived_type_specification: Fortran_CLOB_variable Fortran_BINARY_variable Fortran_VARBINARY_variable Fortran_BLOB_variable Fortran_user_defined_type_variable Fortran_CLOB_locator_variable Fortran_BLOB_locator_variable Fortran_user_defined_type_locator_variable Fortran_array_locator_variable Fortran_multiset_locator_variable Fortran_REF_variable
         ::= Fortran_CLOB_variable
           | Fortran_BINARY_variable
           | Fortran_VARBINARY_variable
           | Fortran_BLOB_variable
           | Fortran_user_defined_type_variable
           | Fortran_CLOB_locator_variable
           | Fortran_BLOB_locator_variable
           | Fortran_array_locator_variable
           | Fortran_multiset_locator_variable
           | Fortran_REF_variable
referenced by: Fortran_type_specification Fortran_CLOB_variable: SQL TYPE* IS CLOB ( character_large_object_length ) CHARACTER SET IS character_set_specification
         ::= 'SQL' 'TYPE*' 'IS' 'CLOB' '(' character_large_object_length ')' ( 'CHARACTER' 'SET' 'IS'? character_set_specification )?
referenced by: Fortran_derived_type_specification Fortran_BINARY_variable: SQL TYPE* IS BINARY ( length )
         ::= 'SQL' 'TYPE*' 'IS' 'BINARY' '(' length ')'
referenced by: Fortran_derived_type_specification Fortran_VARBINARY_variable: SQL TYPE* IS VARBINARY ( length )
         ::= 'SQL' 'TYPE*' 'IS' 'VARBINARY' '(' length ')'
referenced by: Fortran_derived_type_specification Fortran_BLOB_variable: SQL TYPE* IS BLOB ( large_object_length )
         ::= 'SQL' 'TYPE*' 'IS' 'BLOB' '(' large_object_length ')'
referenced by: Fortran_derived_type_specification Fortran_user_defined_type_variable: SQL TYPE* IS path_resolved_user_defined_type_name AS predefined_type
         ::= 'SQL' 'TYPE*' 'IS' path_resolved_user_defined_type_name 'AS' predefined_type
referenced by: Fortran_derived_type_specification Fortran_CLOB_locator_variable: SQL TYPE* IS CLOB AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' 'CLOB' 'AS' 'LOCATOR*'
referenced by: Fortran_derived_type_specification Fortran_BLOB_locator_variable: SQL TYPE* IS BLOB AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' 'BLOB' 'AS' 'LOCATOR*'
referenced by: Fortran_derived_type_specification Fortran_user_defined_type_locator_variable: SQL TYPE* IS path_resolved_user_defined_type_name AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' path_resolved_user_defined_type_name 'AS' 'LOCATOR*'
referenced by: Fortran_derived_type_specification Fortran_array_locator_variable: SQL TYPE* IS array_type AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' array_type 'AS' 'LOCATOR*'
referenced by: Fortran_derived_type_specification Fortran_multiset_locator_variable: SQL TYPE* IS multiset_type AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' multiset_type 'AS' 'LOCATOR*'
referenced by: Fortran_derived_type_specification Fortran_REF_variable: SQL TYPE* IS reference_type
         ::= 'SQL' 'TYPE*' 'IS' reference_type
referenced by: Fortran_derived_type_specification MUMPS_variable_definition: MUMPS_numeric_variable MUMPS_character_variable MUMPS_derived_type_specification !! See the Syntax Rules. ;
         ::= ( MUMPS_numeric_variable | MUMPS_character_variable | MUMPS_derived_type_specification '!! See the Syntax Rules.' ) ';'
referenced by: host_variable_definition MUMPS_character_variable: VARCHAR MUMPS_character_variable_specifier , referenced by: MUMPS_variable_definition MUMPS_character_variable_specifier: !! See the Syntax Rules. MUMPS_length_specification CHARACTER SET IS character_set_specification
         ::= '!! See the Syntax Rules.' MUMPS_length_specification ( 'CHARACTER' 'SET' 'IS'? character_set_specification )?
referenced by: MUMPS_character_variable MUMPS_length_specification: ( character_length )
         ::= '(' character_length ')'
referenced by: MUMPS_character_variable_specifier MUMPS_numeric_variable: MUMPS_type_specification !! See the Syntax Rules. ,
         ::= MUMPS_type_specification '!! See the Syntax Rules.' ( ',' '!! See the Syntax Rules.' )*
referenced by: MUMPS_variable_definition MUMPS_type_specification: INT DEC ( precision , scale ) REAL
         ::= 'INT'
           | 'DEC' ( '(' precision ( ',' scale )? ')' )?
           | 'REAL'
referenced by: MUMPS_numeric_variable MUMPS_derived_type_specification: MUMPS_user_defined_type_variable MUMPS_CLOB_locator_variable MUMPS_BLOB_locator_variable MUMPS_user_defined_type_locator_variable MUMPS_array_locator_variable MUMPS_multiset_locator_variable MUMPS_REF_variable
         ::= MUMPS_user_defined_type_variable
           | MUMPS_CLOB_locator_variable
           | MUMPS_BLOB_locator_variable
           | MUMPS_array_locator_variable
           | MUMPS_multiset_locator_variable
           | MUMPS_REF_variable
referenced by: MUMPS_variable_definition MUMPS_user_defined_type_variable: SQL TYPE* IS path_resolved_user_defined_type_name AS predefined_type
         ::= 'SQL' 'TYPE*' 'IS' path_resolved_user_defined_type_name 'AS' predefined_type
referenced by: MUMPS_derived_type_specification MUMPS_CLOB_locator_variable: SQL TYPE* IS CLOB AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' 'CLOB' 'AS' 'LOCATOR*'
referenced by: MUMPS_derived_type_specification MUMPS_BLOB_locator_variable: SQL TYPE* IS BLOB AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' 'BLOB' 'AS' 'LOCATOR*'
referenced by: MUMPS_derived_type_specification MUMPS_user_defined_type_locator_variable: SQL TYPE* IS path_resolved_user_defined_type_name AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' path_resolved_user_defined_type_name 'AS' 'LOCATOR*'
referenced by: MUMPS_derived_type_specification MUMPS_array_locator_variable: SQL TYPE* IS array_type AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' array_type 'AS' 'LOCATOR*'
referenced by: MUMPS_derived_type_specification MUMPS_multiset_locator_variable: SQL TYPE* IS multiset_type AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' multiset_type 'AS' 'LOCATOR*'
referenced by: MUMPS_derived_type_specification MUMPS_REF_variable: SQL TYPE* IS reference_type
         ::= 'SQL' 'TYPE*' 'IS' reference_type
referenced by: MUMPS_derived_type_specification Pascal_variable_definition: !! See the Syntax Rules. , : Pascal_type_specification ;
         ::= '!! See the Syntax Rules.' ( ',' '!! See the Syntax Rules.' )* ':' Pascal_type_specification ';'
referenced by: host_variable_definition Pascal_type_specification: PACKED ARRAY [ 1 .. character_length ] OF CHAR CHARACTER SET IS character_set_specification INTEGER REAL BOOLEAN Pascal_derived_type_specification
         ::= ( PACKED 'ARRAY' '[' '1' '..' character_length ']' 'OF' )? 'CHAR' ( 'CHARACTER' 'SET' 'IS'? character_set_specification )?
           | 'INTEGER'
           | 'REAL'
           | 'BOOLEAN'
           | Pascal_derived_type_specification
referenced by: Pascal_variable_definition Pascal_derived_type_specification: Pascal_CLOB_variable Pascal_BINARY_variable Pascal_BLOB_variable Pascal_user_defined_type_variable Pascal_CLOB_locator_variable Pascal_BLOB_locator_variable Pascal_user_defined_type_locator_variable Pascal_array_locator_variable Pascal_multiset_locator_variable Pascal_REF_variable
         ::= Pascal_CLOB_variable
           | Pascal_BINARY_variable
           | Pascal_BLOB_variable
           | Pascal_user_defined_type_variable
           | Pascal_CLOB_locator_variable
           | Pascal_BLOB_locator_variable
           | Pascal_array_locator_variable
           | Pascal_multiset_locator_variable
           | Pascal_REF_variable
referenced by: Pascal_type_specification Pascal_CLOB_variable: SQL TYPE* IS CLOB ( character_large_object_length ) CHARACTER SET IS character_set_specification
         ::= 'SQL' 'TYPE*' 'IS' 'CLOB' '(' character_large_object_length ')' ( 'CHARACTER' 'SET' 'IS'? character_set_specification )?
referenced by: Pascal_derived_type_specification Pascal_BINARY_variable: SQL TYPE* IS BINARY ( length )
         ::= 'SQL' 'TYPE*' 'IS' 'BINARY' '(' length ')'
referenced by: Pascal_derived_type_specification Pascal_BLOB_variable: SQL TYPE* IS BLOB ( large_object_length )
         ::= 'SQL' 'TYPE*' 'IS' 'BLOB' '(' large_object_length ')'
referenced by: Pascal_derived_type_specification Pascal_CLOB_locator_variable: SQL TYPE* IS CLOB AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' 'CLOB' 'AS' 'LOCATOR*'
referenced by: Pascal_derived_type_specification Pascal_user_defined_type_variable: SQL TYPE* IS path_resolved_user_defined_type_name AS predefined_type
         ::= 'SQL' 'TYPE*' 'IS' path_resolved_user_defined_type_name 'AS' predefined_type
referenced by: Pascal_derived_type_specification Pascal_BLOB_locator_variable: SQL TYPE* IS BLOB AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' 'BLOB' 'AS' 'LOCATOR*'
referenced by: Pascal_derived_type_specification Pascal_user_defined_type_locator_variable: SQL TYPE* IS path_resolved_user_defined_type_name AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' path_resolved_user_defined_type_name 'AS' 'LOCATOR*'
referenced by: Pascal_derived_type_specification Pascal_array_locator_variable: SQL TYPE* IS array_type AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' array_type 'AS' 'LOCATOR*'
referenced by: Pascal_derived_type_specification Pascal_multiset_locator_variable: SQL TYPE* IS multiset_type AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' multiset_type 'AS' 'LOCATOR*'
referenced by: Pascal_derived_type_specification Pascal_REF_variable: SQL TYPE* IS reference_type
         ::= 'SQL' 'TYPE*' 'IS' reference_type
referenced by: Pascal_derived_type_specification PL_I_variable_definition: DCL DECLARE !! See the Syntax Rules. ( !! See the Syntax Rules. , ) PL_I_type_specification character_representation ;
         ::= ( DCL | 'DECLARE' | '!! See the Syntax Rules.' | '(' '!! See the Syntax Rules.' ( ',' '!! See the Syntax Rules.' )* ')' ) PL_I_type_specification character_representation* ';'
referenced by: host_variable_definition PL_I_type_specification: CHAR CHARACTER VARYING ( character_length ) CHARACTER SET IS character_set_specification PL_I_type_fixed_decimal ( precision , scale PL_I_type_float_binary ( precision ) PL_I_type_fixed_binary ( precision ) PL_I_derived_type_specification
         ::= ( 'CHAR' | 'CHARACTER' ) 'VARYING'? '(' character_length ')' ( 'CHARACTER' 'SET' 'IS'? character_set_specification )?
           | ( PL_I_type_fixed_decimal '(' precision ( ',' scale )? | PL_I_type_float_binary '(' precision ) ')'
           | PL_I_type_fixed_binary ( '(' precision ')' )?
           | PL_I_derived_type_specification
referenced by: PL_I_variable_definition PL_I_derived_type_specification: PL_I_CLOB_variable PL_I_BINARY_variable PL_I_VARBINARY_variable PL_I_BLOB_variable PL_I_user_defined_type_variable PL_I_CLOB_locator_variable PL_I_BLOB_locator_variable PL_I_user_defined_type_locator_variable PL_I_array_locator_variable PL_I_multiset_locator_variable PL_I_REF_variable
         ::= PL_I_CLOB_variable
           | PL_I_BINARY_variable
           | PL_I_VARBINARY_variable
           | PL_I_BLOB_variable
           | PL_I_user_defined_type_variable
           | PL_I_CLOB_locator_variable
           | PL_I_BLOB_locator_variable
           | PL_I_array_locator_variable
           | PL_I_multiset_locator_variable
           | PL_I_REF_variable
referenced by: PL_I_type_specification PL_I_CLOB_variable: SQL TYPE* IS CLOB ( character_large_object_length ) CHARACTER SET IS character_set_specification
         ::= 'SQL' 'TYPE*' 'IS' 'CLOB' '(' character_large_object_length ')' ( 'CHARACTER' 'SET' 'IS'? character_set_specification )?
referenced by: PL_I_derived_type_specification PL_I_BINARY_variable: SQL TYPE* IS BINARY ( length )
         ::= 'SQL' 'TYPE*' 'IS' 'BINARY' '(' length ')'
referenced by: PL_I_derived_type_specification PL_I_VARBINARY_variable: SQL TYPE* IS VARBINARY ( length )
         ::= 'SQL' 'TYPE*' 'IS' 'VARBINARY' '(' length ')'
referenced by: PL_I_derived_type_specification PL_I_BLOB_variable: SQL TYPE* IS BLOB ( large_object_length )
         ::= 'SQL' 'TYPE*' 'IS' 'BLOB' '(' large_object_length ')'
referenced by: PL_I_derived_type_specification PL_I_user_defined_type_variable: SQL TYPE* IS path_resolved_user_defined_type_name AS predefined_type
         ::= 'SQL' 'TYPE*' 'IS' path_resolved_user_defined_type_name 'AS' predefined_type
referenced by: PL_I_derived_type_specification PL_I_CLOB_locator_variable: SQL TYPE* IS CLOB AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' 'CLOB' 'AS' 'LOCATOR*'
referenced by: PL_I_derived_type_specification PL_I_BLOB_locator_variable: SQL TYPE* IS BLOB AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' 'BLOB' 'AS' 'LOCATOR*'
referenced by: PL_I_derived_type_specification PL_I_user_defined_type_locator_variable: SQL TYPE* IS path_resolved_user_defined_type_name AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' path_resolved_user_defined_type_name 'AS' 'LOCATOR*'
referenced by: PL_I_derived_type_specification PL_I_array_locator_variable: SQL TYPE* IS array_type AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' array_type 'AS' 'LOCATOR*'
referenced by: PL_I_derived_type_specification PL_I_multiset_locator_variable: SQL TYPE* IS multiset_type AS LOCATOR*
         ::= 'SQL' 'TYPE*' 'IS' multiset_type 'AS' 'LOCATOR*'
referenced by: PL_I_derived_type_specification PL_I_REF_variable: SQL TYPE* IS reference_type
         ::= 'SQL' 'TYPE*' 'IS' reference_type
referenced by: PL_I_derived_type_specification PL_I_type_fixed_decimal: DEC DECIMAL FIXED FIXED DEC DECIMAL
         ::= ( 'DEC' | 'DECIMAL' ) FIXED
           | FIXED ( 'DEC' | 'DECIMAL' )
referenced by: PL_I_type_specification PL_I_type_fixed_binary: BIN BINARY FIXED FIXED BIN BINARY
         ::= ( BIN | 'BINARY' ) FIXED
           | FIXED ( BIN | 'BINARY' )
referenced by: PL_I_type_specification PL_I_type_float_binary: BIN BINARY FLOAT FLOAT BIN BINARY
         ::= ( BIN | 'BINARY' ) 'FLOAT'
           | 'FLOAT' ( BIN | 'BINARY' )
referenced by: PL_I_type_specification direct_select_statement__multiple_rows: cursor_specification
         ::= cursor_specification
referenced by: direct_SQL_data_statement get_diagnostics_statement: GET DIAGNOSTICS* SQL_diagnostics_information
         ::= 'GET' 'DIAGNOSTICS*' SQL_diagnostics_information
referenced by: SQL_diagnostics_statement SQL_diagnostics_information: statement_information condition_information all_information
         ::= statement_information
           | condition_information
           | all_information
referenced by: get_diagnostics_statement statement_information: statement_information_item , referenced by: SQL_diagnostics_information statement_information_item: simple_target_specification = statement_information_item_name referenced by: statement_information statement_information_item_name: NUMBER* MORE* COMMAND_FUNCTION* COMMAND_FUNCTION_CODE* DYNAMIC_FUNCTION* DYNAMIC_FUNCTION_CODE* ROW_COUNT* TRANSACTIONS_COMMITTED* TRANSACTIONS_ROLLED_BACK* TRANSACTION_ACTIVE*
         ::= 'NUMBER*'
           | 'MORE*'
           | 'COMMAND_FUNCTION*'
           | 'COMMAND_FUNCTION_CODE*'
           | 'DYNAMIC_FUNCTION*'
           | 'DYNAMIC_FUNCTION_CODE*'
           | 'ROW_COUNT*'
           | 'TRANSACTIONS_COMMITTED*'
           | 'TRANSACTIONS_ROLLED_BACK*'
           | 'TRANSACTION_ACTIVE*'
referenced by: statement_information_item condition_information: CONDITION condition_number condition_information_item , referenced by: SQL_diagnostics_information condition_information_item: simple_target_specification = condition_information_item_name referenced by: condition_information condition_information_item_name: CATALOG_NAME* CLASS_ORIGIN* COLUMN_NAME* CONDITION_NUMBER* CONNECTION_NAME* CONSTRAINT_CATALOG* CONSTRAINT_NAME* CONSTRAINT_SCHEMA* CURSOR_NAME* MESSAGE_LENGTH* MESSAGE_OCTET_LENGTH* MESSAGE_TEXT* PARAMETER_MODE* PARAMETER_NAME* PARAMETER_ORDINAL_POSITION* RETURNED_SQLSTATE* ROUTINE_CATALOG* ROUTINE_NAME* ROUTINE_SCHEMA* SCHEMA_NAME* SERVER_NAME* SPECIFIC_NAME* SUBCLASS_ORIGIN* TABLE_NAME* TRIGGER_CATALOG* TRIGGER_NAME* TRIGGER_SCHEMA*
         ::= 'CATALOG_NAME*'
           | 'CLASS_ORIGIN*'
           | 'COLUMN_NAME*'
           | 'CONDITION_NUMBER*'
           | 'CONNECTION_NAME*'
           | 'CONSTRAINT_CATALOG*'
           | 'CONSTRAINT_NAME*'
           | 'CONSTRAINT_SCHEMA*'
           | 'CURSOR_NAME*'
           | 'MESSAGE_LENGTH*'
           | 'MESSAGE_OCTET_LENGTH*'
           | 'MESSAGE_TEXT*'
           | 'PARAMETER_MODE*'
           | 'PARAMETER_NAME*'
           | 'PARAMETER_ORDINAL_POSITION*'
           | 'RETURNED_SQLSTATE*'
           | 'ROUTINE_CATALOG*'
           | 'ROUTINE_NAME*'
           | 'ROUTINE_SCHEMA*'
           | 'SCHEMA_NAME*'
           | 'SERVER_NAME*'
           | 'SPECIFIC_NAME*'
           | 'SUBCLASS_ORIGIN*'
           | 'TABLE_NAME*'
           | 'TRIGGER_CATALOG*'
           | 'TRIGGER_NAME*'
           | 'TRIGGER_SCHEMA*'
referenced by: condition_information_item all_information: all_info_target = ALL all_qualifier
         ::= all_info_target '=' 'ALL' all_qualifier?
referenced by: SQL_diagnostics_information all_info_target: simple_target_specification
         ::= simple_target_specification
referenced by: all_information all_qualifier: STATEMENT* CONDITION condition_number
         ::= 'STATEMENT*'
           | 'CONDITION' condition_number?
referenced by: all_information condition_number: simple_value_specification
         ::= simple_value_specification
referenced by: all_qualifier condition_information CURRENT_PATH: CURRENT_PATH
         ::= 'CURRENT_PATH'
referenced by: default_option general_value_specification reserved_word CURRENT_ROLE: CURRENT_ROLE
         ::= 'CURRENT_ROLE'
referenced by: default_option general_value_specification grantor reserved_word   ... generated by RR - Railroad Diagram Generator R R