Kelp Query Language (KelpQL)
KelpQL is Kelp’s JSON-based query and transformation language.
It is used to select, filter, reshape, and compute over JSON data events flowing through wires.
KelpQL is inspired by JMESPath and Lodash, and is designed to:
- Work with arbitrary JSON structures
- Enable expressive, declarative transformations
- Reduce the need for custom code in dataflows
This section defines the KelpQL language specification and documents all supported functions and operators.
For learning and experimentation, refer to the KelpQL Tutorial and the KelpQL Playground. The Reference focuses on precise language semantics and function behavior.
📄️ Specification
KelpQL implementation based on JMESPath, but with its own unique features and modifications. This document describes the specifications for KelpQL and is based on the original JMESPath specification.
📄️ Cheat Sheet
KelpQL is a JSON query language that is based on JMESPath. This cheat sheet provides a quick reference to all the important concepts and syntax of KelpQL. For a more comprehensive overview of the KelpQL specification, please refer to the KelpQL specification.
📄️ Array functions
Perform various traversal and mutation operations with arrays.
📄️ Collection functions
Manipulate different collections.
📄️ Date functions
Calculate and manipulate dates and time.
📄️ Lang functions
General purpose functions.
📄️ Math functions
Perform mathematical calculations.
📄️ Number functions
Manipulate numbers.
📄️ Object functions
Perform various manipulation and mutation operations with objects.
📄️ String functions
Manipulate strings.
📄️ Util functions
Various utility functions.