This proposoal follows three design principles:
-
Make it easy to understand the affected part of the graph in relationship to querying it (Rationale: Minimize mental effort for using constraints and indices)
-
Re-use existing concepts as much as possible (i.e. patterns and expressions) (Rationale: Minimize amount of new concepts that need to be learned)
-
Use the same imperative form as all existing update and schema commands (verb first, like in
CREATE INDEX
) and try to use similiar syntax structure for both constraint and index creation