SEML · Reference
SEML — Data Properties
A frontmatter format for describing the facts about a document — who wrote it, when, what it's about, what it contains. Designed to be read and written by people, not just machines.
The idea
A property is a name with a value. You have lots of properties; you write one per line. That is the whole format, almost.
title: Spring Collection Catalogue
author: Maeve Ryan
published: 2026-04-15
Values come after a colon and stay on the same line. Names can be anything readable — spaces are fine, punctuation is fine — as long as they don’t contain a colon or a slash.
—
Lists
Some properties are lists rather than single values. Mark the name with a trailing slash, then write the items one per line with a dash:
tags/
- catalogue
- spring 2026
- womenswear
The slash means “children follow, one per line.” That same rule will do more work in a moment.
—
Shared names
When several properties share the beginning of their name, you can write the shared part once and list the rest underneath. This is purely a writing convenience — it saves repetition and gathers related facts together.
Written out:
client/name: Orla Fitzgerald
client/email: orla\@example.ie
client/phone: +353 1 555 0134
Grouped:
client/
name: Orla Fitzgerald
email: orla\@example.ie
phone: +353 1 555 0134
Both forms mean exactly the same thing. The grouped form is usually easier to read once you have three or more properties sharing a prefix.
You can group more than one level deep. invoices/2025/q3/total can become a small tree, or stay flat, or sit somewhere in between — whatever reads most clearly.
—
Mixing values and lists
A shared prefix can hold both ordinary properties and list items. Properties come first, then the list:
archived invoices/
role: long-term archive
retention: 7 years
- 2025-q3.pdf
- 2025-q2.pdf
- 2025-q1.pdf
Notice that list items sit at the same depth as the folder name itself, while ordinary properties sit one step further in. This keeps file names visually aligned under the thing that contains them.
/ means “more lines belong to this one.” A colon means “the value is right here.” Everything else follows from those two signs.—
Breathing room
Long blocks are easier to read when they have rhythm. SEML gives you two ways to group visually.
A blank line
Groups related properties within the same block. The reader’s eye takes a small pause; nothing changes in meaning.
contact/
name: Maeve Ryan
role: owner
email: maeve\@studio.ie
phone: +353 1 555 0142
Two dashes on their own line
A stronger break — a section divider between whole blocks of information. Use it when you’re switching subject, not just taking a breath.
title: Spring Collection Catalogue
author: Maeve Ryan
--
client/
name: Orla Fitzgerald
company: Fitzgerald & Sons
—
Values from elsewhere
Sometimes the value you want isn’t a simple word or number — it’s a whole structure you’ve defined somewhere else, or a piece of another file. SEML has two ways to point at it.
A reference to another property
Curly braces let you borrow a value that was defined earlier. Useful when the same information appears in several places and you want to keep it in one spot.
primary contact/
name: Orla Fitzgerald
email: orla\@example.ie
invoice recipient: {primary contact}
A reference to another file
The @ symbol points at something stored elsewhere. After the filename, you can drill down into it using the same slash-separated names you’d write inside that file.
price packages: \@business/photography/rates.sm/fixed/packages
Read that as: from the file rates.sm, take the packages list found under fixed. This is how you reuse a shared list of services, a standard contact block, a catalogue of tags — anything you’d rather define once.
—
How deep to group
You choose how much to group. The same information can be written as one deeply nested tree or as several shallow blocks separated by blank lines, and both are valid. Pick whichever is easier to read at a glance.
Deep:
accounting/
invoices/
2025/
retention: 7 years
- q3.pdf
- q2.pdf
Shallow:
accounting/invoices/2025/
retention: 7 years
- q3.pdf
- q2.pdf
Two rules of thumb. First, keep trees shallow — two levels of nesting is comfortable, three is usually the ceiling before a reader starts losing track. Second, flatten when a prefix has only one child; there’s nothing to be gained by making the reader descend a level that only contains one thing.
—
A full example
Everything you’ve seen, in one place.
title: Spring Collection Catalogue
author: Maeve Ryan
published: 2026-04-15
status: draft
--
client/
name: Orla Fitzgerald
company: Fitzgerald & Sons
email: orla\@example.ie
tags/
- catalogue
- spring 2026
- womenswear
--
attachments/
role: printable assets
- cover.pdf
- pricing-sheet.pdf
price packages: \@business/rates.sm/fixed/packages
—
SEML data properties — reference. For writing guides and examples, see the companion guide.