Yet another query language
Go to file
Takashi Kajinami 83e28324e1 Remove format function
The format function allowed too arbitrary access to the values being
formatted, and this behavior caused information leakage in some cases.

Closes-Bug: #2048114
Change-Id: Id7ec5f267314bb7166ca64802ab47d768bb5eb89
2024-03-14 15:25:14 +00:00
doc [community goal] Update contributor documentation 2021-05-31 20:35:23 +00:00
releasenotes Remove format function 2024-03-14 15:25:14 +00:00
yaql Remove format function 2024-03-14 15:25:14 +00:00
.coveragerc Change ignore-errors to ignore_errors 2015-09-21 15:31:05 +00:00
.gitignore Migrate from testr to stestr 2021-02-11 12:33:45 +00:00
.gitreview OpenDev Migration Patch 2019-04-19 19:32:57 +00:00
.mailmap Toxify project 2014-07-03 18:01:24 +04:00
.stestr.conf Migrate from testr to stestr 2021-02-11 12:33:45 +00:00
.zuul.yaml Publish release notes 2024-03-13 17:06:47 +09:00
CONTRIBUTING.rst [community goal] Update contributor documentation 2021-05-31 20:35:23 +00:00
HACKING.rst Update the documention for doc migration 2017-07-21 15:28:23 +08:00
LICENSE Toxify project 2014-07-03 18:01:24 +04:00
MANIFEST.in Drop MANIFEST.in - it's not needed by pbr 2016-10-20 21:10:38 +05:30
README.rst Fix readme Pygments package not found 2018-10-10 11:02:15 +08:00
requirements.txt Remove six 2021-02-01 11:11:17 +00:00
setup.cfg Merge "Update python classifier in setup.cfg" 2024-01-17 04:58:29 +00:00
setup.py Remove shebang from setup.py 2024-01-09 17:13:05 +09:00
test-requirements.txt Bump hacking 2024-01-17 01:43:34 +09:00
tox.ini Publish release notes 2024-03-13 17:06:47 +09:00

YAQL: Yet Another Query Language

YAQL (Yet Another Query Language) is an embeddable and extensible query language, that allows performing complex queries against arbitrary objects. It has a vast and comprehensive standard library of frequently used querying functions and can be extend even further with user-specified functions. YAQL is written in python and is distributed via PyPI.

Quickstart

Install the latest version of yaql:

pip install yaql>=1.0.0

Run yaql REPL:

yaql

Load a json file:

yaql> @load my_file.json

Check it loaded to current context, i.e. `$`:

yaql> $

Run some queries:

yaql> $.customers ... yaql> $.customers.orders ... yaql> $.customers.where($.age > 18) ... yaql> $.customers.groupBy($.sex) ... yaql> $.customers.where($.orders.len() >= 1 or name = "John")

Project Resources

License

Apache License Version 2.0 http://www.apache.org/licenses/LICENSE-2.0