{ "info": { "author": "James Saryerwinnie", "author_email": "js@jamesls.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3" ], "description": "JMESPath\n========\n\nJMESPath (pronounced ``\\\u02c8j\u0101mz path\\``) allows you to declaratively specify how to\nextract elements from a JSON document.\n\nFor example, given this document::\n\n {\"foo\": {\"bar\": \"baz\"}}\n\nThe jmespathv041p expression ``foo.bar`` will return \"baz\".\n\nJMESPath also supports:\n\nReferencing elements in a list. Given the data::\n\n {\"foo\": {\"bar\": [\"one\", \"two\"]}}\n\nThe expression: ``foo.bar[0]`` will return \"one\".\nYou can also reference all the items in a list using the ``*``\nsyntax::\n\n {\"foo\": {\"bar\": [{\"name\": \"one\"}, {\"name\": \"two\"}]}}\n\nThe expression: ``foo.bar[*].name`` will return [\"one\", \"two\"].\nNegative indexing is also supported (-1 refers to the last element\nin the list). Given the data above, the expression\n``foo.bar[-1].name`` will return \"two\".\n\nThe ``*`` can also be used for hash types::\n\n {\"foo\": {\"bar\": {\"name\": \"one\"}, \"baz\": {\"name\": \"two\"}}}\n\nThe expression: ``foo.*.name`` will return [\"one\", \"two\"].\n\n**NOTE: jmespathv041p is being actively developed. There are a number\nof features it does not currently support that may be added in the\nfuture.**\n\n\nSpecification\n=============\n\nThe grammar is specified using ABNF, as described in `RFC4234`_.\nYou can find the most up to date grammar for JMESPath\n`here `__.\n\nYou can read the full JMESPath specification\n`here http://jmespathv041p.readthedocs.org/en/latest/specification.html`__.\n\n\nTesting\n=======\n\nIn addition to the unit tests for the jmespathv041p modules,\nthere is a ``tests/compliance`` directory that contains\n.json files with test cases. This allows other implementations\nto verify they are producing the correct output. Each json\nfile is grouped by feature.\n\nPython Library\n==============\n\nThe included python implementation has two convenience functions\nthat operate on python data structures. You can use ``search``\nand give it the jmespathv041p expression and the data::\n\n >>> import jmespathv041p\n >>> path = jmespathv041p.search('foo.bar', {'foo': {'bar': 'baz'}})\n 'baz'\n\nSimilar to the ``re`` module, you can store the compiled expressions\nand reuse them to perform repeated searches::\n\n >>> import jmespathv041p\n >>> path = jmespathv041p.compile('foo.bar')\n >>> path.search({'foo': {'bar': 'baz'}})\n 'baz'\n >>> path.search({'foo': {'bar': 'other'}})\n 'other'\n\nYou can also use the ``jmespathv041p.parser.Parser`` class directly\nif you want more control.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/henrysher/jmespathv041p", "keywords": null, "license": "UNKNOWN", "maintainer": null, "maintainer_email": null, "name": "jmespathv041p", "package_url": "https://pypi.org/project/jmespathv041p/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/jmespathv041p/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/henrysher/jmespathv041p" }, "release_url": "https://pypi.org/project/jmespathv041p/0.4.1/", "requires_dist": null, "requires_python": null, "summary": "JSON Matching Expressions", "version": "0.4.1" }, "last_serial": 1832692, "releases": { "0.4.1": [ { "comment_text": "", "digests": { "md5": "3c81c4dfca5ec601e314380664aa570d", "sha256": "d7cc6b71f223790c765b1f272430325bdf8f431f4cac4705e24bbceb5ab48994" }, "downloads": -1, "filename": "jmespathv041p-0.4.1.tar.gz", "has_sig": false, "md5_digest": "3c81c4dfca5ec601e314380664aa570d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14516, "upload_time": "2015-11-25T09:25:41", "url": "https://files.pythonhosted.org/packages/6f/42/4e1cb1f4ab9deec1040c0a3de2d007dcc37119a0ca78e51d971bf8777061/jmespathv041p-0.4.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "3c81c4dfca5ec601e314380664aa570d", "sha256": "d7cc6b71f223790c765b1f272430325bdf8f431f4cac4705e24bbceb5ab48994" }, "downloads": -1, "filename": "jmespathv041p-0.4.1.tar.gz", "has_sig": false, "md5_digest": "3c81c4dfca5ec601e314380664aa570d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14516, "upload_time": "2015-11-25T09:25:41", "url": "https://files.pythonhosted.org/packages/6f/42/4e1cb1f4ab9deec1040c0a3de2d007dcc37119a0ca78e51d971bf8777061/jmespathv041p-0.4.1.tar.gz" } ] }