YAML-LD

Motivation

JSON and YAML have very different concrete syntax
(ie, encoding, representation, serialization format),
but their abstract syntax is pretty much identical
(trees, composed of hashes, lists, and scalars).
So, it is very easy to transliterate higher-level idioms
such as JSON-LD into YAML syntax.
The resulting format has YAML's clarity and JSON-LD's semantics:

Note:
The current YAML specification reserves the at sign (@) for future use.
So, although some YAML parsers will accept (and autoquote)
keys and values that contain at signs, explicit quoting is advisable.