Skip to main content
Python Software Foundation 20th Year Anniversary Fundraiser  Donate today!

The agile query language for semi-structured data. #JSON

Project description

|Downloads| |License| |Build Status| |Code Health| |Coverage Status|

The agile NoSQL query language for semi-structured data

#Python #NoSQL #Javascript #JSON #nested-array-object

ObjectPath is a query language similar to XPath or JSONPath, but much more powerful thanks to embedded arithmetic calculations, comparison mechanisms and built-in functions. This makes the language more like SQL in terms of expressiveness, but it works over JSON documents rather than relations. ObjectPath can be considered a full-featured expression language. Besides selector mechanism there is also boolean logic, type system and string concatenation available. On top of that, the language implementations (Python at the moment; Javascript is in beta!) are secure and relatively fast.

This package is a maintained fork of the original project<htttps://> and still compatible with the specification at the ObjectPath site<>.

More at ObjectPath site

ObjectPath img

ObjectPath img

ObjectPath makes it easy to find data in big nested JSON documents. It borrows the best parts from E4X, JSONPath, XPath and SQL. ObjectPath is to JSON documents what XPath is to XML. Other examples to ilustrate this kind of relationship are:

Scope Language
text documents regular expression
HTML CSS selectors
JSON documents ObjectPath


ObjectPath Reference

What’s in this repo?

ObjectPathPY - Python implementation of ObjectPath, used in production for over two years without problems. Use file as a example of usage.

ObjectPathJS - beta version of Javascript implementation. Many tests passed, {} and functions are not implemented yet. Javascript implementation has the very same API as the Python version.

Command line usage

$ pip install objectpath-ng $ objectpath file.json or $ git clone $ cd ObjectPath $ python file.json

Python usage

$ pip install objectpath-ng
$ python
>>> from objectpath import *
>>> tree=Tree({"a":1})
>>> tree.execute("$.a")
$ git clone
$ cd ObjectPath
$ python
>>> from objectpath import *
>>> tree=Tree({"a":1})
>>> tree.execute("$.a")




Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for objectpath-ng, version 0.6.3
Filename, size File type Python version Upload date Hashes
Filename, size objectpath_ng-0.6.3-py2.py3-none-any.whl (22.2 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size objectpath-ng-0.6.3.tar.gz (19.2 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page