For this challenge, we’re given some JSON that contains a list of objects of differing structures. We’re tasked with extracting the id and name of each object for further processing.
Data Source
[
{"id": 54, "name": "Professor Moriarty"},
{"id": 42, "first_name": "John", "last_name": "Watson"},
{"error": "invalid record"},
{
"id": 221,
"name": "Sherlock Holmes",
"photo": {
"id":412395287,
"thumbnails": [{"id":46129037}]
}
},
{"id": 27, "first_name": "Irene", "last_name": "Adler"}
]
Processing
-
In case an item has an
idkey, we extract it into a field. Missing ids are represented as-1. -
In case a
namekey is present, we use that directly. If there arefirst_nameandlast_namekeys instead, we concatenate the contents into anamefield. If no name is available, we use the value"N/A"to represent that fact.
Expected Output
| id | name |
|---|---|
| 54 | Professor Moriarty |
| 42 | John Watson |
| -1 | N/A |
| 221 | Sherlock Holmes |
| 27 | Irene Adler |
Data File
Get started with extract-from-json.dfl (4.4 KB) - it contains the source data.



