Extract Elements From A JSON Document
JMESPath (pronounced "jaymz path") allows you to declaratively specify how to extract elements from a JSON document.
For example, given this document:
{"foo": {"bar": "baz"}}
The jmespath expression foo.bar will return "baz".
JMESPath also supports:
Referencing elements in a list. Given the data:
{"foo": {"bar": ["one", "two"]}}
The expression: foo.bar[0] will return "one". You can also reference all the items in a list using the * syntax:
{"foo": {"bar": [{"name": "one"}, {"name": "two"}]}}
The expression: foo.bar[*].name will return ["one", "two"]. Negative indexing is also supported (-1 refers to the last element in the list). Given the data above, the expression foo.bar[-1].name will return ["two"].
The * can also be used for hash types:
{"foo": {"bar": {"name": "one"}, "baz": {"name": "two"}}}
The expression: foo.*.name will return ["one", "two"].
- Developed at devel:languages:python
- Sources inherited from project openSUSE:Factory
-
8
derived packages
- Download package
-
Checkout Package
osc -A https://api.opensuse.org checkout openSUSE:Backports:SLE-15-SP4:FactoryCandidates/python-jmespath && cd $_
- Create Badge
Source Files
Filename | Size | Changed |
---|---|---|
jmespath-0.9.2.tar.gz | 0000022773 22.2 KB | |
python-jmespath.changes | 0000003843 3.75 KB | |
python-jmespath.spec | 0000003186 3.11 KB |
Revision 10 (latest revision is 24)
- properly Requires(postun) for %postun section - Only BuildRequire unittest2 for python2 - Switch to single-spec build - Update to version 0.9.2 + Fix regression when using ordering comparators on strings (issue 124) - From 0.9.1 + Raise LexerError on invalid numbers (issue 98) + Add support for custom functions (#100) (issue 100) + Fix ZeroDivisionError for built-in function avg() on empty lists (#115) (issue 115) + Properly handle non numerical ordering operators (#117) (issue 117) * Add support for JEP 9 which introduces "and" expressions, "unary" expressions, "not" expressions, and "paren" expressions (issue 90, issue 88, issue 82) * Improve lexing performance (issue 84) * Fix parsing error for multiselect lists (issue 86) * Fix issue with escaping single quotes in literal strings (issue 85) ordered dictionaries (issue 94) * Add map() function (issue 95)
Comments 0