Cypher - це заявна мова запитів для запитів баз даних графіків. Термін декларативний важливий, оскільки це інший спосіб програмування, ніж програмування парадигм, як імператив.
У мові декларативних запитів, як Cypher та SQL, ми повідомляємо основній системі, які дані ми хочемо отримати, і не вказуємо, як ми хочемо отримувати дані.
У Cypher користувач визначає під графік, що цікавить пункт MATCH. Потім базовий двигун запускає алгоритм відповідності шаблону для пошуку схожих випадків під графіку в базі даних графіків.
Гремль має як декларативні, так і імперативні риси. Це мова переходу графіків, де користувач повинен дати чіткі вказівки щодо того, як графік повинен переходити.
Різниця між цими мовами в цьому випадку полягає в тому, що в Cypher ми можемо використовувати оператор зірки Kleene для пошуку шляхів між будь-якими двома заданими вузлами в базі даних графіків. Однак у Гремлі нам доведеться чітко визначити всі такі шляхи. Але ми можемо використовувати оператор повторення в Гремлі, щоб знайти кілька випадків таких явних шляхів у графічній базі даних. Однак робити ітерації над явними структурами в Cypher неможливо.