Skip to content

Feature request: add support for multiple child fields #3

@tulzke

Description

@tulzke

Problem

At the moment, if you try to filter by 2 fields, the utility treats these as indexes.

Example

Json

{
  "star": {
    "name": "Sun",
    "diameter": 1391016,
    "age": null,
    "planets": [
        {
          "name": "Mercury",
          "Number of Moons": "0",
          "diameter": 4879,
          "has-moons": false
        },
        {
          "name": "Venus",
          "Number of Moons": "0",
          "diameter": 12104,
          "has-moons": false
        },
        {
          "name": "Earth",
          "Number of Moons": "1",
          "diameter": 12756,
          "has-moons": true
        },
        {
          "name": "Mars",
          "Number of Moons": "2",
          "diameter": 6792,
          "has-moons": true
        }
      ]
  }
}

json path expression:

"$.star.planets.*["name","diameter"]"

What i expected:

[
  "Mercury",
  4879,
  "Venus",
  12104,
  "Earth",
  12756,
  "Mars",
  6792
]

What i actually got:

$ cat solar.json | jp -p '$.star.planets.*["name","diameter"]' 
error executing query: invalid path: invalid index: "name"

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions