Getting Started
A short, language-agnostic tour of Internet Object in pure IO.
This is a five-minute tour of Internet Object (IO) using the format itself — no programming language required.
1. A single object
The simplest document is one object. Fields are comma-separated; the header line names them:
name: string, age: int, email: email
---
John Doe, 30, john@example.comAbove the --- is the header (here, the schema); below it is the data. Because the schema fixes the field order, the data is just values — no repeated keys.
2. A schema and a collection
Define the schema once in the header with $schema, then stream many records, each beginning with ~:
~ $schema: { name: string, age: int, email: email, active: bool }
---
~ John Doe, 30, john@example.com, T
~ Jane Doe, 25, jane@example.com, FT/F are booleans. A collection of records shares one schema — compact and validated.
3. Constraints
Fields can carry constraints. Invalid data is reported, not silently accepted:
4. Nesting and reuse
Define a shape once and reference it with $:
5. Metadata
Header keys without a prefix carry document metadata, kept separate from the data:
Where to next
Why Internet Object? — how it compares to JSON and others
Internet Object Document — header and data in depth
Internet Object Schema — the schema language
Collections — records and streaming
Last updated
Was this helpful?
