Yet another query language
fe128f0672
The 2.0.0 is breaking in that it removes the use of warnerrors in build_sphinux. YAQL isn't using that feature, so it shoudln't break. The cap on pbr is preventing other OpenStack projects that would like to use pbr 2.0.0 (and sphinx 1.5.1) from doing so as it breaks co-installability with yaql Also hacking <0.11 had a similar issue so use a newer version of that also Change-Id: I23e1d7aa715003250131bf5c88a438f278e4d4da Related-Bug: 1668848 |
||
---|---|---|
doc/source | ||
releasenotes | ||
yaql | ||
.coveragerc | ||
.gitignore | ||
.gitreview | ||
.mailmap | ||
.testr.conf | ||
babel.cfg | ||
CONTRIBUTING.rst | ||
HACKING.rst | ||
LICENSE | ||
MANIFEST.in | ||
README.rst | ||
requirements.txt | ||
setup.cfg | ||
setup.py | ||
test-requirements.txt | ||
tox.ini |
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
- Official Documentation
- Project status, bugs, and blueprints are tracked on Launchpad
License
Apache License Version 2.0 http://www.apache.org/licenses/LICENSE-2.0