Links
A URL on the page—plain text or a link?
✅ NormativeSettled. The requirement holds as written.📄 Page ruleCan be applied from the page alone.Read §7.2.8 in the RFC ↗
Hyperlinks and email addresses MUST be transcribed as raw text. Link syntax — <email>,
[url](url) — MAY be used only when link extraction was explicitly requested.
Reading the examples. Each one pairs a source page with the output the rule expects. ✅ Sample: the rule applies. ❌ Counter-sample: it looks like it applies and does not, or a rendering got it wrong. A non-conforming output, in red, is shown only for contrast. … marks content left out of an excerpt.
The point, in a small example
Switch between identical sources with link extraction OFF and ON. The hidden target is explicitly supplied as document metadata, never guessed from pixels. These pages are made up to isolate the rule.
Default: preserve the visible anchor text
The document link target is https://example.org/handbook, supplied as link metadata, not printed on the page. Link extraction is OFF. Keep only the visible anchor text; do not append the hidden URL.
Source page
Non-conforming output
What the rule rules out.
Read the handbook https://example.org/handbookExpected output
Read the handbookLink extraction requested: retain the actual target
Same printed source and metadata as the previous case. Link extraction is explicitly ON. The URL is supplied document metadata for this constructed example; it is not inferred from the words or recoverable from the picture alone.
Source page
Expected output
[Read the handbook](https://example.org/handbook)A printed URL is raw text by default
No link extraction was requested. Transcribe the visible URL; do not infer a different target.
Source page
Non-conforming output
What the rule rules out.
Help:
[Support portal](https://example.org/help)Expected output
Help:
https://example.org/helpDefault
Contact support@example.com or see https://example.com/pricing
When link extraction is requested
Contact <support@example.com> or see [https://example.com/pricing](https://example.com/pricing)
Why raw text
The output is read mostly by a model or an extraction step. Link punctuation adds noise to every chunk for a payload most readers never use. Raw text keeps the default output clean and still leaves the address recoverable.
Anchor text that differs from its target
When the printed words differ from the target — click here pointing at a long URL — the output
MUST keep the printed words as they appear. Under the raw-text default the target is not
represented, and it MUST NOT be added in place of, or beside, the printed words: the page does not
print it (never invent).
Neighbouring rules, and how they differ
More
Rule id text-links · text formatting