Docs

Publicatie en discovery

Een machine moet de representatie vinden voordat ze begint te gokken.

Een ESFI-standaard wordt gepubliceerd als een contract dat mensen kunnen lezen en implementaties kunnen produceren. De specificatie is de gezaghebbende beschrijving van dat contract; de machineleesbare artefacten laten het in gebruik zien. Deze pagina beschrijft wat een MPF-uitgever online zet, hoe een machine het vindt en wat elk mechanisme wel en niet vaststelt.

Elk mechanisme is gemarkeerd als Specificatie 0.7, Referentie-implementatie of ESFI-praktijk. De markers worden uitgelegd in het Overzicht.

Wat een uitgever online zet

Artefact Publiek Rol Status
Specificatiepagina Mensen, implementeerders Het gepubliceerde contract voor een formaatversie Specificatie 0.7
.mpf-bestand van een pagina Machines Machinerepresentatie van één menselijke pagina Specificatie 0.7
llms.mpf Machines MPF-index van alle geïndexeerde pagina’s op de site Specificatie 0.7
llms.txt Machines, mensen Lichtgewicht entry point met een MPF-sectie Specificatie 0.7
llms-full.txt Machines Bodies van geïndexeerde pagina’s in de standaardtaal, aaneengevoegd Specificatie 0.7
.sig-bestanden Machines Signatures van MPF-bestanden wanneer de uitgever ondertekent Specificatie 0.7
/.well-known/mpf Machines MPF-declaratie op siteniveau via HTTPS ESFI-praktijk
DNS TXT _mpf.<domain> Machines MPF-declaratie op siteniveau vóór elk HTTP-request ESFI-praktijk
<link rel="alternate"> Machines Page-level verwijzing van HTML naar de companion ESFI-praktijk

Hoe een machine MPF vindt

De mechanismen zijn gelaagd van het goedkoopste signaal tot het meest specifieke. Een lezer kan bij elk ervan beginnen; ze zijn ontworpen om met elkaar overeen te stemmen.

1. DNS TXT — vóór het eerste request

ESFI-praktijk

Een lezer kan met één DNS-query leren dat een domein MPF publiceert, waar de index staat en wat de site-level scope is:

_mpf.example.org  TXT  "v=0.7;index=https://example.org/llms.mpf;scope=cite:1,summarize:1,train:0,index:1,relay:0;contact=mailto:web@example.org"
Parameter Betekenis
v MPF-versie
index Absolute URL van llms.mpf
scope Site-level standaard companion-scope, als flag:1 of flag:0
contact Contact voor machinelezers

Het record is kort genoeg voor één DNS-response. De builder maakt het niet; de uitgever voegt het aan de zone toe.

2. /.well-known/mpf — dezelfde declaratie via HTTPS

ESFI-praktijk

Dezelfde string, geserveerd als platte tekst:

GET /.well-known/mpf
v=0.7;index=https://example.org/llms.mpf;scope=cite:1,summarize:1,train:0,index:1,relay:0;contact=mailto:web@example.org

Lever hem als statisch bestand (bijvoorbeeld in public/.well-known/mpf) en zorg dat de server hem als text/plain terugstuurt. De builder maakt hem niet. mpf is nog geen geregistreerde well-known URI; ESFI gebruikt het pad als conventie.

3. llms.txt — het conventionele entry point

Specificatie 0.7

De builder maakt llms.txt als het niet bestaat, of vervangt de MPF-sectie terwijl al het andere behouden blijft. De sectie bevat altijd:

MPF: 0.7
MPF-spec: https://docs.esfi.eu/spec/mpf/0.7
MPF-index: /llms.mpf

## Pages
- [Page title](https://example.org/page/index.mpf): summary

MPF-spec verschijnt wanneer spec-url is geconfigureerd en laat een lezer de canonieke specificatie voor de gedeclareerde versie bereiken zonder te gokken. De inleidende zin die de builder boven deze regels schrijft is formulering van de Referentie-implementatie.

4. llms.mpf — de site-index

Specificatie 0.7

llms.mpf is zelf een MPF-document. De body vermeldt elke pagina met index: true, gesorteerd op MPF-URL, elk met een samenvatting waar die bestaat. De frontmatter declareert een vaste identiteit (<prefix>:page:llms), content-type: reference en verborgen, niet-HTML-pariteit, omdat er geen menselijke pagina achter zit.

5. De pagina zelf

Specificatie 0.7 voor het pad en mpf-url; ESFI-praktijk voor de alternate link.

Elke pagina heeft haar companion op hetzelfde pad, met .mpf in plaats van .html:

/about/index.html   →   /about/index.mpf

Elk MPF-bestand adresseert zichzelf via mpf-url en wijst via url terug naar zijn menselijke pagina.

Een HTML-pagina kan vanuit haar <head> ook naar de companion wijzen:

<link rel="alternate" type="text/mpf" href="/about/index.mpf" title="Machine Page Format">

text/mpf is geen geregistreerd mediatype; ESFI gebruikt het als conventie zodat lezers de link kunnen herkennen. De builder voegt de link niet toe; het sitetemplate doet dat.

Wanneer site en pagina verschillen

Het DNS-record en /.well-known/mpf vermelden defaults op siteniveau. De frontmatter van een pagina vermeldt wat op die pagina van toepassing is, inclusief elke override per pagina. ESFI-praktijk: op ESFI-sites vermelden alle drie dezelfde site-level waarden, en een lezer moet de page frontmatter behandelen als de declaratie voor die pagina. Als een site-level declaratie en een pagina zonder verklarende override verschillen, is dat een publicatiefout, geen signaal om tussen beide te kiezen.

Menselijk canoniek en machinecompanion

De menselijke pagina en haar MPF-bestand zijn twee representaties van gerelateerde content, geen uitwisselbare autoriteiten.

  • url identificeert de canonieke menselijke pagina.
  • mpf-url identificeert de machinerepresentatie.
  • content-parity vermeldt hoe beide zich tot elkaar verhouden.
  • source-hash identificeert de exacte HTML waarmee het MPF-bestand is gegenereerd.
  • mpf-id identificeert het gegenereerde MPF-bestand zelf.

Door deze scheiding kan een machine de machinerepresentatie citeren of verwerken zonder het adres van de menselijke bron te verliezen. Voor vertalingen vermeldt language-variants de verwachte MPF-adressen van dezelfde logische content in andere geconfigureerde talen; de builder genereert deze adressen en controleert niet of de bestanden bestaan.

Open formaat, ESFI-referentiepraktijk

MPF is een open formaat. Iedereen kan conforme MPF produceren en consumeren zonder ergens te worden vermeld, zonder registratie en zonder een ESFI-service te gebruiken.

De eigen sites van ESFI zijn een inspecteerbare referentiepraktijk: ze emitten MPF, publiceren de site-indexen en de practice-level discoverydeclaraties, en stellen alles beschikbaar om tegen de specificatie te controleren. Het Implementatieregister registreert emitters waarvan de output is geverifieerd. Het is bewijs van implementatie, geen toestemming om te implementeren.

Specificatie, implementatie en praktijk

  • De specificatie is het canonieke, voor mensen leesbare contract voor een gepubliceerde versie. Een gepubliceerde versie blijft bereikbaar; correcties die het contract niet veranderen worden behandeld onder het beleid voor Versiebeheer.
  • De referentie-implementatie zet de specificatie om in observeerbare output. Ze is geen tweede specificatie. Wanneer tekst en implementatie voor een gepubliceerde versie verschillen, worden ze weer in overeenstemming gebracht; lezers hoeven geen derde contract uit voorbeelden af te leiden.
  • Praktijk is hoe ESFI MPF deployt buiten wat de builder produceert. Ze wordt gedocumenteerd zodat anderen haar kunnen reproduceren. Ze wordt alleen via een nieuwe specificatieversie onderdeel van het contract.

Een draft, voorstel of gepland mechanisme maakt pas deel uit van deze conventies wanneer het is gepubliceerd en verifieerbaar is.

Wat publicatie niet impliceert

Een veld of declaratie publiceren creëert geen service erachter. Provenance, confidence, scope en language variants zijn beschrijvend tenzij de specificatie verder gedrag definieert. Discoverymechanismen helpen een lezer de declaraties van de uitgever te vinden; ze maken die declaraties niet waar, bindend of afdwingbaar.

De specificatie definieert het contract; de referentie-implementatie demonstreert het; praktijk breidt uit hoe het wordt gevonden; gepubliceerde artefacten maken alle drie inspecteerbaar.