Yet another query language
Go to file
Kirill Zaitsev f134c743b0 Documentation structure update
Updated README to include some quickstart information and information on
what YAQL is.
Includes stubs for further expansion of YAQL documentation and proposes
general structure of how YAQL documentation might look like.

Targets blueprint: yaql-docs

Change-Id: I65885bd132bb3efa5798aa0cb6f1774b2348a44e
2015-08-26 14:53:54 +03:00
doc/source Documentation structure update 2015-08-26 14:53:54 +03:00
yaql Constant SmartType was broken 2015-08-19 13:34:49 +03:00
.coveragerc Toxify project 2014-07-03 18:01:24 +04:00
.gitignore Update gitignore 2014-11-14 03:30:29 +03:00
.gitreview Toxify project 2014-07-03 18:01:24 +04:00
.mailmap Toxify project 2014-07-03 18:01:24 +04:00
.testr.conf Toxify project 2014-07-03 18:01:24 +04: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 Toxify project 2014-07-03 18:01:24 +04:00
LICENSE Toxify project 2014-07-03 18:01:24 +04:00
MANIFEST.in Toxify project 2014-07-03 18:01:24 +04:00
README.rst Documentation structure update 2015-08-26 14:53:54 +03:00
requirements.txt Small improvements to yaql 2015-07-24 02:54:04 +03:00
setup.cfg Small improvements to yaql 2015-07-24 02:54:04 +03:00
setup.py Fix pep8 checks: W292,W391 2014-07-03 18:34:16 +04:00
test-requirements.txt Small improvements to yaql 2015-07-24 02:54:04 +03:00
tox.ini Small improvements to yaql 2015-07-24 02:54:04 +03: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