Markdown for LLMs
Place metadata in the manifest
The source Markdown for this article. Copy it into your assistant or download it as a text file.
# Place metadata in the manifest
## Intention
I want to describe the package and the origin of its review in the artefacts meant for that.
Description lives in the manifest, not in the compilable package.
## Incorrect form and why it stays silent
A TOML table is not a .law language declaration.
```text title="Incorrect form"
[metadata]
title = "Учебный пакет"
```
If it is inserted into a law block, check fails with LDC-E0201. An unknown key inside metadata is rejected by the manifest schema — that is a separate check below.
## Correct form
The compilable package vocabulary does not carry TOML:
```law
language "law.core" version "0.2";
package recipes.n.r10 version "0.1.0";
namespace "urn:recipe:n-package:10";
entity Artifact;
relation reviewed(a: Artifact);
```
## Frozen execution scene
The minimal manifest check runs as a doctest:
| Input | Question | Answer |
|---|---|---|
| law.toml with metadata.title | parse_manifest | title preserved |
| Unknown metadata.made_up | parse_manifest | schema ValueError |
```python
>>> from lawref.resolver import parse_manifest
>>> source = '[package]\nname = "recipes.n.r10"\nversion = "0.1.0"\nlanguage = "0.2"\nnamespace = "urn:recipe:n-package:10"\n[metadata]\ntitle = "Учебный пакет"\n'
>>> parse_manifest(source.encode())["metadata"]["title"]
'Учебный пакет'
>>> try:
... parse_manifest((source + 'made_up = "reviewed"\n').encode())
... except ValueError as error:
... print("неизвестный ключ отвергнут" if "package-manifest.schema" in str(error) else str(error))
неизвестный ключ отвергнут
```
## Counterfactual
`teaches` moves TOML into the page package and pins LDC-E0201. A separate doctest changes only the metadata key, does not catch an arbitrary exception, and requires a schema rejection.
## Boundary
Description does not change the law and does not replace the dependency lock. The evaluation profile pins the library, and the review record is the reviewer's decision; neither can be replaced by a title string or an invented metadata key.
## Pitfall
A shared jurisdiction stamp once signed answers for different legal orders identically. The fix is structural metadata with a source check; an invented key that would look like review provenance is rejected by the schema.