Repository metrics
- Stars
- (13,466 stars)
- PR merge metrics
- (Avg merge 102d 5h) (19 merged PRs in 30d)
Description
Language name
Cypher, OpenCypher - the query language for Neo4j.
Cypher is a declarative graph query language that allows for expressive and efficient data querying in a property graph.[1]
Cypher was largely an invention of Andrés Taylor while working for Neo4j, Inc. (formerly Neo Technology) in 2011.[2] Cypher was originally intended to be used with the graph database Neo4j, but was opened up through the openCypher project in October 2015.[3]
The language was designed with the power and capability of SQL (standard query language for the relational database model) in mind, but Cypher was based on the components and needs of a database built upon the concepts of graph theory. In a graph model, data is structured as nodes (vertices in math and network science) and relationships (edges in math and network science) to focus on how entities in the data are connected and related to one another.
source: https://en.wikipedia.org/wiki/Cypher_(query_language)
- https://github.com/opencypher/openCypher
- https://neo4j.com/developer/cypher
- Full langage doc --> https://neo4j.com/docs/cypher-manual/current
More specific resources re: Cypher's Grammar :)
- Railroad docs: https://s3.amazonaws.com/artifacts.opencypher.org/railroad/Cypher.html
- EBNF: https://s3.amazonaws.com/artifacts.opencypher.org/cypher.ebnf
- ANTLR4: https://s3.amazonaws.com/artifacts.opencypher.org/Cypher.g4
existing syntax highlighting packages:
- https://github.com/highlightjs/highlightjs-cypher
- https://github.com/jakeboone02/cypher-query-language/blob/master/README.md