Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Specifying Cypher constraints #166

Open
wants to merge 42 commits into
base: master
Choose a base branch
from

Commits on Jul 1, 2021

  1. Add the constraints CIP

    - General outline
    - Describe the node uniqueness constraint
    Mats-SX committed Jul 1, 2021
    Configuration menu
    Copy the full SHA
    c4d262f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    370c768 View commit details
    Browse the repository at this point in the history
  3. Introduce the concept of domain

    - Define domain for uniqueness
    - Define domain for existence
    Mats-SX committed Jul 1, 2021
    Configuration menu
    Copy the full SHA
    e7c621f View commit details
    Browse the repository at this point in the history
  4. Add example for existence constraint

    - Use hex integers for rgb examples
    Mats-SX committed Jul 1, 2021
    Configuration menu
    Copy the full SHA
    d67e2ea View commit details
    Browse the repository at this point in the history
  5. Add SQL examples

    Mats-SX committed Jul 1, 2021
    Configuration menu
    Copy the full SHA
    e1f69ed View commit details
    Browse the repository at this point in the history
  6. Update standardisation scope

    Mats-SX committed Jul 1, 2021
    Configuration menu
    Copy the full SHA
    0fb1161 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    0baf002 View commit details
    Browse the repository at this point in the history
  8. Edited the textual contents of the CIP

    Petra Selmer authored and Mats-SX committed Jul 1, 2021
    Configuration menu
    Copy the full SHA
    19a896d View commit details
    Browse the repository at this point in the history
  9. More textual edits to the Constraints CIP

    Petra Selmer authored and Mats-SX committed Jul 1, 2021
    Configuration menu
    Copy the full SHA
    7b273aa View commit details
    Browse the repository at this point in the history
  10. Amended w3 reference to denote alterations in 'quoted' text

    Petra Selmer authored and Mats-SX committed Jul 1, 2021
    Configuration menu
    Copy the full SHA
    9de7ce0 View commit details
    Browse the repository at this point in the history
  11. Rework CIP

    - Specify general constraint language
    - Specify `UNIQUE` operator
    - Clearly define semantics for domain and expressions
    - List all concrete constraints in example section
    - Add several more examples
    Mats-SX committed Jul 1, 2021
    Configuration menu
    Copy the full SHA
    bea414b View commit details
    Browse the repository at this point in the history
  12. Remove Motivation section

    Mats-SX committed Jul 1, 2021
    Configuration menu
    Copy the full SHA
    2282f06 View commit details
    Browse the repository at this point in the history
  13. Move Mutability and Name sections

    They are more appropriate under the Semantics and Syntax sections, respectively.
    Mats-SX committed Jul 1, 2021
    Configuration menu
    Copy the full SHA
    3ba5278 View commit details
    Browse the repository at this point in the history
  14. Add cross-links

    Move Errors section
    Mats-SX committed Jul 1, 2021
    Configuration menu
    Copy the full SHA
    9645c8d View commit details
    Browse the repository at this point in the history
  15. Add example for CIR-2017-172

    References opencypher#172
    Mats-SX committed Jul 1, 2021
    Configuration menu
    Copy the full SHA
    76eac59 View commit details
    Browse the repository at this point in the history
  16. Support arbitrary patterns

    - Remove TODO
    - Add example using larger pattern
    - Add example using multiple `exists()`
    Mats-SX committed Jul 1, 2021
    Configuration menu
    Copy the full SHA
    efbba93 View commit details
    Browse the repository at this point in the history
  17. Introduce PRIMARY KEY constraint predicate

    - Rename `constrait-expr` to `constraint-predicate`
    - Limit scope of `UNIQUE` to single properties only
    - Update examples to reflect `PRIMARY KEY`
    Mats-SX committed Jul 1, 2021
    Configuration menu
    Copy the full SHA
    35bffe2 View commit details
    Browse the repository at this point in the history
  18. Rename constraint operator to NODE KEY

    - Remove erroneous example for composing `NODE KEY` with `UNIQUE` and `exists()`
    - Rephrase example section to describe `NODE KEY` more accurately.
    Mats-SX committed Jul 1, 2021
    Configuration menu
    Copy the full SHA
    29a278d View commit details
    Browse the repository at this point in the history
  19. Use ADD for constraint creation

    - Add missing case for when an error should be raised
    Mats-SX committed Jul 1, 2021
    Configuration menu
    Copy the full SHA
    2b76cf1 View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    6849976 View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    aabf685 View commit details
    Browse the repository at this point in the history
  22. Reformatted title

    Petra Selmer authored and Mats-SX committed Jul 1, 2021
    Configuration menu
    Copy the full SHA
    16fc677 View commit details
    Browse the repository at this point in the history
  23. Use CREATE instead of ADD

    Mats-SX committed Jul 1, 2021
    Configuration menu
    Copy the full SHA
    5f9acf5 View commit details
    Browse the repository at this point in the history
  24. Make textual clarifications

    Mats-SX committed Jul 1, 2021
    Configuration menu
    Copy the full SHA
    97ac3c9 View commit details
    Browse the repository at this point in the history
  25. Update grammar to use CREATE

    Add test for DROP
    Mats-SX committed Jul 1, 2021
    Configuration menu
    Copy the full SHA
    e6ed668 View commit details
    Browse the repository at this point in the history
  26. Configuration menu
    Copy the full SHA
    4fe30ee View commit details
    Browse the repository at this point in the history
  27. Configuration menu
    Copy the full SHA
    bc1c1bd View commit details
    Browse the repository at this point in the history
  28. Configuration menu
    Copy the full SHA
    ba0491d View commit details
    Browse the repository at this point in the history
  29. Configuration menu
    Copy the full SHA
    54c5db7 View commit details
    Browse the repository at this point in the history
  30. Configuration menu
    Copy the full SHA
    0cca4f6 View commit details
    Browse the repository at this point in the history
  31. Use two blank lines before new section

    For improved source readability
    Mats-SX committed Jul 1, 2021
    Configuration menu
    Copy the full SHA
    6f9e714 View commit details
    Browse the repository at this point in the history

Commits on Jul 2, 2021

  1. Configuration menu
    Copy the full SHA
    3e1acda View commit details
    Browse the repository at this point in the history
  2. Update grammar definition

    - use same EBNF style as @hvub did in opencypher#493
    - use links to connect to grammar constructs in openCypher grammar spec
    - modify constraint operators to be suffix-modeled, ala IS NOT NULL
    - introduce 'grouped-expression' concept
    Mats-SX committed Jul 2, 2021
    Configuration menu
    Copy the full SHA
    1f1be12 View commit details
    Browse the repository at this point in the history
  3. Prefer element over entity

    Mats-SX committed Jul 2, 2021
    Configuration menu
    Copy the full SHA
    73fa12d View commit details
    Browse the repository at this point in the history
  4. Update uniqueness to use IS UNIQUE operator

    Extend definition to reference grouped expression
    Mats-SX committed Jul 2, 2021
    Configuration menu
    Copy the full SHA
    7acef69 View commit details
    Browse the repository at this point in the history
  5. Update node key to use IS NODE KEY operator

    - Update definition to reference grouped expression
    - Reformulate equivalence example to use IS NOT NULL and IS UNIQUE over a grouped expression
    Mats-SX committed Jul 2, 2021
    Configuration menu
    Copy the full SHA
    aa4a549 View commit details
    Browse the repository at this point in the history
  6. Define a grouped expression and its type

    Move ahead of referencing sections to ease readability of CIP
    Mats-SX committed Jul 2, 2021
    Configuration menu
    Copy the full SHA
    056f6e5 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    09eb4b1 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    2843a65 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    03bca92 View commit details
    Browse the repository at this point in the history
  10. Update openCypher grammar description

    - Including links to these from the CIP
    - Also update examples for the parser tests
    Mats-SX committed Jul 2, 2021
    Configuration menu
    Copy the full SHA
    26f22bb View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    334fe95 View commit details
    Browse the repository at this point in the history