Currently unsupported mandatory GQL features
Cypher® supports most mandatory GQL features, though there are a few instances where its current functionality diverges. The table below provides an overview of these GQL features and, where applicable, their functional equivalents in Neo4j.
Unlike optional GQL features, mandatory GQL features are not assigned a GQL feature ID code. The below table is instead listed in order of their appearance in the ISO/IEC 39075:2024(en) GQL Standard.
GQL Standard subclause | Description | Comment and similar Neo4j functionality |
---|---|---|
4.9.2 |
GQL-status objects |
Exposing successful execution results, errors, exceptions, and warnings as GQL-status objects. |
4.16.2 |
Boolean types |
Cypher supports the Boolean literals |
7.1-7.3 |
Session management |
GQL defines the following session commands: |
8.1-8.4 |
Transaction management |
|
11.1 |
Graph expressions |
GQL defines the following graph reference values commands: |
13.3 |
|
GQL’s SET statement has no order dependencies because all right-hand side operations are completed before any assignments occur.
In Cypher’s |
15.1 & 15.2 |
|
|
16.19 |
|
Cypher only supports |
17.1 |
Schema reference |
GQL defines an |
20.3 |
Value specification |
GQL defines the |
20.9 |
Aggregate functions |
Cypher and GQL handle |
20.24 |
Character string functions |
|
21.1 |
Names and variables |
|
21.3 |
<token>, <separator>, and <identifier> |
GQL specifies a list of reserved words that cannot be used for unquoted variable names, labels, and property names. Cypher also specifies a list of reserved keywords, but it differs from GQL’s. |