Yet another query language
Go to file
OpenDev Sysadmins 0788b6d60b OpenDev Migration Patch
This commit was bulk generated and pushed by the OpenDev sysadmins
as a part of the Git hosting and code review systems migration
detailed in these mailing list posts:

http://lists.openstack.org/pipermail/openstack-discuss/2019-March/003603.html
http://lists.openstack.org/pipermail/openstack-discuss/2019-April/004920.html

Attempts have been made to correct repository namespaces and
hostnames based on simple pattern matching, but it's possible some
were updated incorrectly or missed entirely. Please reach out to us
via the contact information listed at https://opendev.org/ with any
questions you may have.
2019-04-19 19:32:57 +00:00
doc/source Customizing and extending yaql documentation 2016-12-13 15:16:45 -08:00
releasenotes Remove setting of version/release from releasenotes 2017-11-16 22:29:55 +01:00
yaql Merge "Use __slots__ for more yaqltypes" 2018-12-25 08:41:24 +00:00
.coveragerc Change ignore-errors to ignore_errors 2015-09-21 15:31:05 +00:00
.gitignore Use reno for releasenotes 2016-07-11 16:46:44 +03:00
.gitreview OpenDev Migration Patch 2019-04-19 19:32:57 +00:00
.mailmap Toxify project 2014-07-03 18:01:24 +04:00
.testr.conf Toxify project 2014-07-03 18:01:24 +04:00
.zuul.yaml add python 3.7 unit test job 2019-02-19 17:05:50 +08:00
babel.cfg Toxify project 2014-07-03 18:01:24 +04:00
CONTRIBUTING.rst Workflow documentation is now in infra-manual 2014-12-05 03:30:47 +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 Get rid of Babel dependency since it is not needed 2017-03-02 21:05:32 +00:00
setup.cfg Removed older version of python added 3.5/3.6 2019-01-11 06:45:18 +00:00
setup.py Fix pep8 checks: W292,W391 2014-07-03 18:34:16 +04:00
test-requirements.txt Use modern PBR and hacking packages 2017-03-01 16:33:56 +11:00
tox.ini Update min tox version to 2.0 2018-10-21 05:05:54 +00: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