From 42c9afb350bbb0886ee36159915c76cbef0c0d13 Mon Sep 17 00:00:00 2001 From: hvub Date: Mon, 9 Dec 2024 16:17:42 +0000 Subject: [PATCH 1/8] cip-190 adjustments and general keyword update --- modules/ROOT/content-nav.adoc | 2 +- .../unsupported-mandatory.adoc | 2 +- modules/ROOT/pages/syntax/index.adoc | 2 +- modules/ROOT/pages/syntax/keywords.adoc | 361 ++++++++++++++++++ modules/ROOT/pages/syntax/reserved.adoc | 117 ------ 5 files changed, 364 insertions(+), 120 deletions(-) create mode 100644 modules/ROOT/pages/syntax/keywords.adoc delete mode 100644 modules/ROOT/pages/syntax/reserved.adoc diff --git a/modules/ROOT/content-nav.adoc b/modules/ROOT/content-nav.adoc index 35d451b4d..d6ea0bd0d 100644 --- a/modules/ROOT/content-nav.adoc +++ b/modules/ROOT/content-nav.adoc @@ -116,7 +116,7 @@ ** xref:syntax/parsing.adoc[] ** xref:syntax/naming.adoc[] ** xref:syntax/variables.adoc[] -** xref:syntax/reserved.adoc[] +** xref:syntax/keywords.adoc[] ** xref:syntax/parameters.adoc[] ** xref:syntax/operators.adoc[] ** xref:syntax/comments.adoc[] diff --git a/modules/ROOT/pages/appendix/gql-conformance/unsupported-mandatory.adoc b/modules/ROOT/pages/appendix/gql-conformance/unsupported-mandatory.adoc index 98c143dcb..019c73efc 100644 --- a/modules/ROOT/pages/appendix/gql-conformance/unsupported-mandatory.adoc +++ b/modules/ROOT/pages/appendix/gql-conformance/unsupported-mandatory.adoc @@ -41,5 +41,5 @@ Cypher Shell also offers specific link:{neo4j-docs-base-uri}/operations-manual/{ | 21.3 | , , and | GQL specifies a list of link:https://standards.iso.org/iso-iec/39075/ed-1/en/ISO_IEC_39075(en).bnf.txt[reserved words] that cannot be used for unquoted variable names, labels, and property names. -Cypher also specifies a list of xref:syntax/reserved.adoc[reserved keywords], but it differs from GQL's. +Cypher also specifies a list of xref:syntax/keywords.adoc[reserved keywords], but it differs from GQL's. |=== \ No newline at end of file diff --git a/modules/ROOT/pages/syntax/index.adoc b/modules/ROOT/pages/syntax/index.adoc index 498839606..04a664be0 100644 --- a/modules/ROOT/pages/syntax/index.adoc +++ b/modules/ROOT/pages/syntax/index.adoc @@ -8,7 +8,7 @@ Further information can be found in the following sections: * xref::syntax/parsing.adoc[Parsing] * xref::syntax/naming.adoc[Naming rules and recommendations] * xref::syntax/variables.adoc[Variables] -* xref::syntax/reserved.adoc[Reserved keywords] +* xref::syntax/keywords.adoc[Keywords] * xref::syntax/parameters.adoc[Parameters] * xref::syntax/operators.adoc[Operators] * xref::syntax/comments.adoc[Comments] diff --git a/modules/ROOT/pages/syntax/keywords.adoc b/modules/ROOT/pages/syntax/keywords.adoc new file mode 100644 index 000000000..4174c63d2 --- /dev/null +++ b/modules/ROOT/pages/syntax/keywords.adoc @@ -0,0 +1,361 @@ +:description: This section contains a list of reserved keywords in Cypher. + +[[cypher-keywords]] += Keywords + +Keywords are words that have a special meaning in Cypher. + +The keywords are not recommended to be used as identifiers in the following contexts: + +* Variables +* Labels +* Relationship types + +If a snippet of Cypher can validly be a keyword as well as an unquoted identifier, it is always interpreted as a keyword. + +For instance in the following, `true` could be the variable `true` or the Boolean literal value `true`. Since `true` is a keyword, the query returns a single Boolean `true` value. + +.Query +[source, cypher, role=test-result-skip] +---- +WITH 123 AS true +RETURN true AS x LIMIT 1 +---- + +.Result +[role="queryresult",options="header,footer",cols="1* Date: Mon, 9 Dec 2024 16:17:59 +0000 Subject: [PATCH 2/8] clarification wrt. subqueries --- modules/ROOT/pages/syntax/variables.adoc | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/modules/ROOT/pages/syntax/variables.adoc b/modules/ROOT/pages/syntax/variables.adoc index 2f4234691..6005ea4aa 100644 --- a/modules/ROOT/pages/syntax/variables.adoc +++ b/modules/ROOT/pages/syntax/variables.adoc @@ -24,7 +24,13 @@ Information regarding the naming of variables may be found xref::syntax/naming.a .Variables are only visible in the same query part ==== Variables are not carried over to subsequent queries. -If multiple query parts are chained together using `WITH`, variables have to be listed in the `WITH` clause to be carried over to the next part. +If multiple query parts are chained together using `WITH`, variables defined in one part have to be listed in the `WITH` clause to be carried over to the next part. For more information see xref::clauses/with.adoc[WITH]. ==== +[IMPORTANT] +.Variables imported into a `CALL` subquery are visible in the whole subquery +==== +Even if the subquery is a multiple query parts are chained together using `WITH`, variables imported from the outer query do not have to be listed in the `WITH` clause to be visible in the next part. +For more information see xref::subqueries/call-subquery.adoc#variable-scope-clause[The variable scope clause]. +==== From a70e7f58c7705f81c07296acef1a64f3ecdc21fe Mon Sep 17 00:00:00 2001 From: hvub Date: Thu, 12 Dec 2024 18:17:06 +0100 Subject: [PATCH 3/8] remove LIMIT 1, as per review --- modules/ROOT/pages/syntax/keywords.adoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/ROOT/pages/syntax/keywords.adoc b/modules/ROOT/pages/syntax/keywords.adoc index 4174c63d2..c1f222527 100644 --- a/modules/ROOT/pages/syntax/keywords.adoc +++ b/modules/ROOT/pages/syntax/keywords.adoc @@ -19,7 +19,7 @@ For instance in the following, `true` could be the variable `true` or the Boolea [source, cypher, role=test-result-skip] ---- WITH 123 AS true -RETURN true AS x LIMIT 1 +RETURN true AS x ---- .Result @@ -38,7 +38,7 @@ If any keyword is quoted in backticks (```), such as `++`true`++`, it is always [source, cypher, role=test-result-skip] ---- WITH 123 AS true -RETURN `true` AS x LIMIT 1 +RETURN `true` AS x ---- .Result From 0575ba421c9973d77e61ed37567e328da33d1e28 Mon Sep 17 00:00:00 2001 From: Hannes Voigt <30618026+hvub@users.noreply.github.com> Date: Thu, 12 Dec 2024 19:31:50 +0100 Subject: [PATCH 4/8] review suggestions Co-authored-by: Richard Sill <156673635+rsill-neo4j@users.noreply.github.com> --- modules/ROOT/pages/syntax/keywords.adoc | 10 +++++----- modules/ROOT/pages/syntax/variables.adoc | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/modules/ROOT/pages/syntax/keywords.adoc b/modules/ROOT/pages/syntax/keywords.adoc index c1f222527..38d859a35 100644 --- a/modules/ROOT/pages/syntax/keywords.adoc +++ b/modules/ROOT/pages/syntax/keywords.adoc @@ -3,15 +3,15 @@ [[cypher-keywords]] = Keywords -Keywords are words that have a special meaning in Cypher. +Keywords are words with a predefined meaning in Cypher. -The keywords are not recommended to be used as identifiers in the following contexts: +Keywords are not recommended to be used as identifiers in the following contexts: * Variables * Labels * Relationship types -If a snippet of Cypher can validly be a keyword as well as an unquoted identifier, it is always interpreted as a keyword. +If a snippet of Cypher can both be a keyword and an unquoted identifier, it is interpreted as a keyword. For instance in the following, `true` could be the variable `true` or the Boolean literal value `true`. Since `true` is a keyword, the query returns a single Boolean `true` value. @@ -54,9 +54,9 @@ RETURN `true` AS x == List of keywords -The following lists of all keywords in Cypher. +The following lists all keywords in Cypher. -Note that with future functionality, Cypher may gain additional keywords not yet in the list. +Note that with future functionality, Cypher may be extended with additional keywords. === A `ACCESS` diff --git a/modules/ROOT/pages/syntax/variables.adoc b/modules/ROOT/pages/syntax/variables.adoc index 6005ea4aa..9ae65a74e 100644 --- a/modules/ROOT/pages/syntax/variables.adoc +++ b/modules/ROOT/pages/syntax/variables.adoc @@ -31,6 +31,6 @@ For more information see xref::clauses/with.adoc[WITH]. [IMPORTANT] .Variables imported into a `CALL` subquery are visible in the whole subquery ==== -Even if the subquery is a multiple query parts are chained together using `WITH`, variables imported from the outer query do not have to be listed in the `WITH` clause to be visible in the next part. +Even if the subquery consists of multiple query parts chained together using `WITH`, variables imported from the outer query do not have to be listed in the `WITH` clause to be visible in the next part. For more information see xref::subqueries/call-subquery.adoc#variable-scope-clause[The variable scope clause]. ==== From 5cb24b061d164a062b8375c584e4c7686e7fb8c1 Mon Sep 17 00:00:00 2001 From: hvub Date: Fri, 13 Dec 2024 11:38:32 +0100 Subject: [PATCH 5/8] add function names and procedure names back in --- modules/ROOT/pages/syntax/keywords.adoc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/modules/ROOT/pages/syntax/keywords.adoc b/modules/ROOT/pages/syntax/keywords.adoc index 38d859a35..3800e7d0d 100644 --- a/modules/ROOT/pages/syntax/keywords.adoc +++ b/modules/ROOT/pages/syntax/keywords.adoc @@ -10,6 +10,8 @@ Keywords are not recommended to be used as identifiers in the following contexts * Variables * Labels * Relationship types +* Function names +* Procedure names If a snippet of Cypher can both be a keyword and an unquoted identifier, it is interpreted as a keyword. From 90c6cb0cf2dedd6bbbe55284423914530a6394a8 Mon Sep 17 00:00:00 2001 From: Hannes Voigt <30618026+hvub@users.noreply.github.com> Date: Fri, 10 Jan 2025 22:59:53 +0100 Subject: [PATCH 6/8] variables.adoc aktualisieren MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Jens Pryce-Ã…klundh <112686610+JPryce-Aklundh@users.noreply.github.com> --- modules/ROOT/pages/syntax/variables.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/ROOT/pages/syntax/variables.adoc b/modules/ROOT/pages/syntax/variables.adoc index 9ae65a74e..9c4096199 100644 --- a/modules/ROOT/pages/syntax/variables.adoc +++ b/modules/ROOT/pages/syntax/variables.adoc @@ -31,6 +31,6 @@ For more information see xref::clauses/with.adoc[WITH]. [IMPORTANT] .Variables imported into a `CALL` subquery are visible in the whole subquery ==== -Even if the subquery consists of multiple query parts chained together using `WITH`, variables imported from the outer query do not have to be listed in the `WITH` clause to be visible in the next part. +Even if the subquery consists of multiple query parts chained together using `WITH`, variables imported from the outer query do not have to be listed in a `WITH` clause to be visible in subsequent parts of the subquery. For more information see xref::subqueries/call-subquery.adoc#variable-scope-clause[The variable scope clause]. ==== From 716647b918e4e4e34e6b9543ac157bf13d72489b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jens=20Pryce-=C3=85klundh?= <112686610+JPryce-Aklundh@users.noreply.github.com> Date: Mon, 13 Jan 2025 09:20:26 +0100 Subject: [PATCH 7/8] bullets --- modules/ROOT/pages/syntax/keywords.adoc | 533 ++++++++++++------------ 1 file changed, 275 insertions(+), 258 deletions(-) diff --git a/modules/ROOT/pages/syntax/keywords.adoc b/modules/ROOT/pages/syntax/keywords.adoc index 3800e7d0d..09efc64c5 100644 --- a/modules/ROOT/pages/syntax/keywords.adoc +++ b/modules/ROOT/pages/syntax/keywords.adoc @@ -61,303 +61,320 @@ The following lists all keywords in Cypher. Note that with future functionality, Cypher may be extended with additional keywords. === A -`ACCESS` -`ACTIVE` -`ADMIN` -`ADMINISTRATOR` -`ALIAS` -`ALIASES` -`ALL` -`ALL_SHORTEST_PATHS` -`ALTER` -`AND` -`ANY` -`ARRAY` -`AS` -`ASC` -`ASCENDING` -`ASSIGN` -`AT` -`AUTH` + +* `ACCESS` +* `ACTIVE` +* `ADMIN` +* `ADMINISTRATOR` +* `ALIAS` +* `ALIASES` +* `ALL` +* `ALL_SHORTEST_PATHS` +* `ALTER` +* `AND` +* `ANY` +* `ARRAY` +* `AS` +* `ASC` +* `ASCENDING` +* `ASSIGN` +* `AT` +* `AUTH` === B -`BINDINGS` -`BOOL` -`BOOLEAN` -`BOOSTED` -`BOTH` -`BREAK` -`BUILT` -`BY` + +* `BINDINGS` +* `BOOL` +* `BOOLEAN` +* `BOOSTED` +* `BOTH` +* `BREAK` +* `BUILT` +* `BY` === C -`CALL` -`CASCADE` -`CASE` -`CHANGE` -`CIDR` -`COLLECT` -`COMMAND` -`COMMANDS` -`COMPOSITE` -`CONCURRENT` -`CONSTRAINT` -`CONSTRAINTS` -`CONTAINS` -`CONTINUE` -`COPY` -`COUNT` -`CREATE` -`CSV` -`CURRENT` + +* `CALL` +* `CASCADE` +* `CASE` +* `CHANGE` +* `CIDR` +* `COLLECT` +* `COMMAND` +* `COMMANDS` +* `COMPOSITE` +* `CONCURRENT` +* `CONSTRAINT` +* `CONSTRAINTS` +* `CONTAINS` +* `CONTINUE` +* `COPY` +* `COUNT` +* `CREATE` +* `CSV` +* `CURRENT` === D -`DATA` -`DATABASE` -`DATABASES` -`DATE` -`DATETIME` -`DBMS` -`DEALLOCATE` -`DEFAULT` -`DEFINED` -`DELETE` -`DENY` -`DESC` -`DESCENDING` -`DESTROY` -`DETACH` -`DIFFERENT` -`DISTINCT` -`DRIVER` -`DROP` -`DRYRUN` -`DUMP` -`DURATION` + +* `DATA` +* `DATABASE` +* `DATABASES` +* `DATE` +* `DATETIME` +* `DBMS` +* `DEALLOCATE` +* `DEFAULT` +* `DEFINED` +* `DELETE` +* `DENY` +* `DESC` +* `DESCENDING` +* `DESTROY` +* `DETACH` +* `DIFFERENT` +* `DISTINCT` +* `DRIVER` +* `DROP` +* `DRYRUN` +* `DUMP` +* `DURATION` === E -`EACH` -`EDGE` -`ELEMENT` -`ELEMENTS` -`ELSE` -`ENABLE` -`ENCRYPTED` -`END` -`ENDS` -`ERROR` -`EXECUTABLE` -`EXECUTE` -`EXIST` -`EXISTENCE` -`EXISTS` + +* `EACH` +* `EDGE` +* `ELEMENT` +* `ELEMENTS` +* `ELSE` +* `ENABLE` +* `ENCRYPTED` +* `END` +* `ENDS` +* `ERROR` +* `EXECUTABLE` +* `EXECUTE` +* `EXIST` +* `EXISTENCE` +* `EXISTS` === F -`FAIL` -`FALSE` -`FIELDTERMINATOR` -`FINISH` -`FLOAT` -`FOR` -`FOREACH` -`FROM` -`FULLTEXT` -`FUNCTION` -`FUNCTIONS` + +* `FAIL` +* `FALSE` +* `FIELDTERMINATOR` +* `FINISH` +* `FLOAT` +* `FOR` +* `FOREACH` +* `FROM` +* `FULLTEXT` +* `FUNCTION` +* `FUNCTIONS` === G, H -`GRANT` -`GRAPH` -`GRAPHS` -`GROUP` -`GROUPS` -`HEADERS` -`HOME` +* `GRANT` +* `GRAPH` +* `GRAPHS` +* `GROUP` +* `GROUPS` + +* `HEADERS` +* `HOME` === I -`ID` -`IF` -`IMMUTABLE` -`IMPERSONATE` -`IN` -`INDEX` -`INDEXES` -`INF` -`INFINITY` -`INSERT` -`INT` -`INTEGER` -`IS` + +* `ID` +* `IF` +* `IMMUTABLE` +* `IMPERSONATE` +* `IN` +* `INDEX` +* `INDEXES` +* `INF` +* `INFINITY` +* `INSERT` +* `INT` +* `INTEGER` +* `IS` === J, K, L, M -`JOIN` -`KEY` +* `JOIN` + +* `KEY` -`LABEL` -`LABELS` -`LEADING` -`LIMITROWS` -`LIST` -`LOAD` -`LOCAL` -`LOOKUP` +* `LABEL` +* `LABELS` +* `LEADING` +* `LIMITROWS` +* `LIST` +* `LOAD` +* `LOCAL` +* `LOOKUP` -`MANAGEMENT` -`MAP` -`MATCH` -`MERGE` +* `MANAGEMENT` +* `MAP` +* `MATCH` +* `MERGE` === N -`NAME` -`NAMES` -`NAN` -`NEW` -`NFC` -`NFD` -`NFKC` -`NFKD` -`NODE` -`NODES` -`NODETACH` -`NONE` -`NORMALIZE` -`NORMALIZED` -`NOT` -`NOTHING` -`NOWAIT` -`NULL` + +* `NAME` +* `NAMES` +* `NAN` +* `NEW` +* `NFC` +* `NFD` +* `NFKC` +* `NFKD` +* `NODE` +* `NODES` +* `NODETACH` +* `NONE` +* `NORMALIZE` +* `NORMALIZED` +* `NOT` +* `NOTHING` +* `NOWAIT` +* `NULL` === O -`OF` -`OFFSET` -`ON` -`ONLY` -`OPTION` -`OPTIONAL` -`OPTIONS` -`OR` -`ORDER` + +* `OF` +* `OFFSET` +* `ON` +* `ONLY` +* `OPTION` +* `OPTIONAL` +* `OPTIONS` +* `OR` +* `ORDER` === P -`PASSWORD` -`PASSWORDS` -`PATH` -`PATHS` -`PLAINTEXT` -`POINT` -`POPULATED` -`PRIMARIES` -`PRIMARY` -`PRIVILEGE` -`PRIVILEGES` -`PROCEDURE` -`PROCEDURES` -`PROPERTIES` -`PROPERTY` -`PROVIDER` -`PROVIDERS` + +* `PASSWORD` +* `PASSWORDS` +* `PATH` +* `PATHS` +* `PLAINTEXT` +* `POINT` +* `POPULATED` +* `PRIMARIES` +* `PRIMARY` +* `PRIVILEGE` +* `PRIVILEGES` +* `PROCEDURE` +* `PROCEDURES` +* `PROPERTIES` +* `PROPERTY` +* `PROVIDER` +* `PROVIDERS` === R -`RANGE` -`READ` -`REALLOCATE` -`REDUCE` -`REL` -`RELATIONSHIP` -`RELATIONSHIPS` -`REMOVE` -`RENAME` -`REPEATABLE` -`REPLACE` -`REPORT` -`REQUIRE` -`REQUIRED` -`RESTRICT` -`RETURN` -`REVOKE` -`ROLE` -`ROLES` -`ROW` -`ROWS` + +* `RANGE` +* `READ` +* `REALLOCATE` +* `REDUCE` +* `REL` +* `RELATIONSHIP` +* `RELATIONSHIPS` +* `REMOVE` +* `RENAME` +* `REPEATABLE` +* `REPLACE` +* `REPORT` +* `REQUIRE` +* `REQUIRED` +* `RESTRICT` +* `RETURN` +* `REVOKE` +* `ROLE` +* `ROLES` +* `ROW` +* `ROWS` === S -`SCAN` -`SEC` -`SECOND` -`SECONDARIES` -`SECONDARY` -`SECONDS` -`SEEK` -`SERVER` -`SERVERS` -`SET` -`SETTING` -`SETTINGS` -`SHORTEST` -`SHORTEST_PATH` -`SHOW` -`SIGNED` -`SINGLE` -`SKIPROWS` -`START` -`STARTS` -`STATUS` -`STOP` -`STRING` -`SUPPORTED` -`SUSPENDED` + +* `SCAN` +* `SEC` +* `SECOND` +* `SECONDARIES` +* `SECONDARY` +* `SECONDS` +* `SEEK` +* `SERVER` +* `SERVERS` +* `SET` +* `SETTING` +* `SETTINGS` +* `SHORTEST` +* `SHORTEST_PATH` +* `SHOW` +* `SIGNED` +* `SINGLE` +* `SKIPROWS` +* `START` +* `STARTS` +* `STATUS` +* `STOP` +* `STRING` +* `SUPPORTED` +* `SUSPENDED` === T -`TARGET` -`TERMINATE` -`TEXT` -`THEN` -`TIME` -`TIMESTAMP` -`TIMEZONE` -`TO` -`TOPOLOGY` -`TRAILING` -`TRANSACTION` -`TRANSACTIONS` -`TRAVERSE` -`TRIM` -`TRUE` -`TYPE` -`TYPED` -`TYPES` + +* `TARGET` +* `TERMINATE` +* `TEXT` +* `THEN` +* `TIME` +* `TIMESTAMP` +* `TIMEZONE` +* `TO` +* `TOPOLOGY` +* `TRAILING` +* `TRANSACTION` +* `TRANSACTIONS` +* `TRAVERSE` +* `TRIM` +* `TRUE` +* `TYPE` +* `TYPED` +* `TYPES` === U -`UNION` -`UNIQUE` -`UNIQUENESS` -`UNWIND` -`URL` -`USE` -`USER` -`USERS` -`USING` + +* `UNION` +* `UNIQUE` +* `UNIQUENESS` +* `UNWIND` +* `URL` +* `USE` +* `USER` +* `USERS` +* `USING` === V, W, X, Y, Z -`VALUE` -`VARCHAR` -`VECTOR` -`VERTEX` -`WAIT` -`WHEN` -`WHERE` -`WITH` -`WITHOUT` -`WRITE` +* `VALUE` +* `VARCHAR` +* `VECTOR` +* `VERTEX` + +* `WAIT` +* `WHEN` +* `WHERE` +* `WITH` +* `WITHOUT` +* `WRITE` -`XOR` +* `XOR` -`YIELD` +* `YIELD` -`ZONE` -`ZONED` +* `ZONE` +* `ZONED` From 91128c52eedaf65db25c943635861e9a1525e446 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jens=20Pryce-=C3=85klundh?= <112686610+JPryce-Aklundh@users.noreply.github.com> Date: Mon, 13 Jan 2025 10:37:39 +0100 Subject: [PATCH 8/8] breaks between letters --- modules/ROOT/pages/syntax/keywords.adoc | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/modules/ROOT/pages/syntax/keywords.adoc b/modules/ROOT/pages/syntax/keywords.adoc index 09efc64c5..aafb711f2 100644 --- a/modules/ROOT/pages/syntax/keywords.adoc +++ b/modules/ROOT/pages/syntax/keywords.adoc @@ -179,6 +179,8 @@ Note that with future functionality, Cypher may be extended with additional keyw * `GROUP` * `GROUPS` +// + * `HEADERS` * `HOME` @@ -202,8 +204,12 @@ Note that with future functionality, Cypher may be extended with additional keyw * `JOIN` +// + * `KEY` +// + * `LABEL` * `LABELS` * `LEADING` @@ -213,6 +219,8 @@ Note that with future functionality, Cypher may be extended with additional keyw * `LOCAL` * `LOOKUP` +// + * `MANAGEMENT` * `MAP` * `MATCH` @@ -363,6 +371,8 @@ Note that with future functionality, Cypher may be extended with additional keyw * `VECTOR` * `VERTEX` +// + * `WAIT` * `WHEN` * `WHERE` @@ -370,11 +380,15 @@ Note that with future functionality, Cypher may be extended with additional keyw * `WITHOUT` * `WRITE` +// + * `XOR` +// + * `YIELD` +// + * `ZONE` * `ZONED` - -