Yet another query language
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Ghanshyam Mann bb65fc6402 [community goal] Update contributor documentation 6 months ago
doc [community goal] Update contributor documentation 6 months ago
releasenotes Switch to newer openstackdocstheme and reno versions 2 years ago
yaql Switch to collections.abc.* 10 months ago
.coveragerc Change ignore-errors to ignore_errors 6 years ago
.gitignore Use reno for releasenotes 5 years ago
.gitreview OpenDev Migration Patch 3 years ago
.mailmap Toxify project 8 years ago
.testr.conf Toxify project 8 years ago
.zuul.yaml [ussuri][goal] Drop python 2.7 support and testing 2 years ago
CONTRIBUTING.rst [community goal] Update contributor documentation 6 months ago
HACKING.rst Update the documention for doc migration 4 years ago
LICENSE Toxify project 8 years ago
MANIFEST.in Drop MANIFEST.in - it's not needed by pbr 5 years ago
README.rst Fix readme Pygments package not found 3 years ago
babel.cfg Toxify project 8 years ago
requirements.txt Remove six 10 months ago
setup.cfg Cleanup py27 support 2 years ago
setup.py Cleanup py27 support 2 years ago
test-requirements.txt Fix hacking min version to 3.0.1 2 years ago
tox.ini tox: Set 'ignore_basepython_conflict' 10 months ago

README.rst

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