Cypher Dynamism: A Step Towards Simpler and More Secure Queries
summary
Neo4j adds dynamic labels and dynamic properties usable with set/remove via $() expressions that must evaluate to a non-null string or list (Neo4j 5.24 for nodes, relationships/types coming soon). Claims: this prevents Cypher injection for labels/types/properties and eliminates common APOC patterns like apoc.create.addLabels and apoc.do.* by letting pure Cypher build data. Demo specifics: LOAD CSV builds three nodes with five dynamic labels and ten properties; MATCH gains all/any predicates for label checks. Caveat: planner loses label statistics for pure-dynamic cases and may fall back to full scans.
AI-written summary · about
related talks
43mDesigning Cypher - a Graph Query Language
23mPutting the Graph In GraphQL With The Neo4j GraphQL Library
11mTaming the Evolution of Cypher: What Cypher Versions Mean for You
28mNeo4j for Beginners: Pros and Cons, Based on Social Networks
32mAgentic AI Governance: Data Foundations & Real-Time Policy Enforcement
32mUnderstanding Complexly Connected Data using Graph Databases
23mDisrupting Customer Data Platforms: Neo4j vs. the Status Quo
23mImproving Text2Cypher: Lessons from Schema Filtering and Hard Example Selection
