---
title: "Structured data lab"
description: "Format, convert, query, and extract information from common text data formats."
---

> Documentation Index
> Fetch the complete documentation index at: https://help.serialize.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Structured data lab

## Learning objectives

- Separate syntax validation from visual formatting
- Convert without losing the underlying data model
- Query a JSON document with a reproducible expression
- Turn noisy prose into clean lists
- Identify delimiter assumptions before bulk conversion

## Station 1: readable JSON

Install [Beautify and sort JSON](/recipes/structured-data/json-beautify/). Change one comma or quote to make the input invalid, then restore it. Formatting is also a lightweight syntax check.

## Station 2: format conversion

Run both of these recipes:

- [JSON to YAML](/recipes/structured-data/json-to-yaml/)
- [CSV records to JSON](/recipes/structured-data/csv-to-json/)

For CSV, change the line endings or add a comma inside an unquoted value. Record how delimiter choices alter the result.

## Station 3: query instead of scrolling

Install [Query JSON with Jsonata](/recipes/structured-data/query-json-jsonata/). The supplied query selects products whose price is greater than ten.

Modify the expression to return the full matching order objects. Then change the threshold and predict the result before running it.

## Station 4: extract lists from prose

Use:

- [Extract unique email addresses](/recipes/structured-data/extract-emails/)
- [Extract unique domains](/recipes/structured-data/extract-domains/)
- [Sort and deduplicate lines](/recipes/structured-data/sort-unique-lines/)

Explain the difference between sorting case-insensitively and deduplicating exact values.

## Assignment

Create a compact incident-summary JSON object with a case ID, two domains, and an array of timestamps. Beautify it, query only the domains, and transform the result into a newline list. Save the final recipe without real case data.

Source: https://help.serialize.dev/courses/structured-data/index.mdx
