Zusammenfassung
- RFC 5147 definiert Zeichen- und Zeilenpositionen sowie entsprechende Bereiche für
text/plain. - Das Fragment wird nach dem Abruf im Client ausgewertet und nicht zur serverseitigen Ressourcenauflösung verwendet.
- Positionen beginnen bei null und markieren Grenzen ohne Länge, nicht automatisch einen zitierten Text.
- Zeichen werden nach der Dekodierung gezählt; Bytes, Codepoints und sichtbare Grapheme können auseinanderfallen.
- Jedes erkannte Zeilenende zählt unabhängig von CRLF, LF, CR oder anderer Darstellung als ein Zeichen.
- Zu große Positionen fallen auf das Ende zurück und bestätigen nicht, dass die frühere Zielstelle noch existiert.
- Fehlerhafte Syntax und umgekehrte Bereiche sind zu ignorieren; der Client darf keine Korrektur erraten.
- Optionale
length- undmd5-Werte prüfen die MIME-Entität nach Entfernung von Transportkodierungen. - Clients dürfen Prüfungen ignorieren; abweichende Zeichensätze können sie sperren oder eine unsichere Transkodierung erfordern.
- MD5 kann zufällige Drift anzeigen, ist aber keine Signatur, Herausgeberidentität oder moderne Kollisionsgarantie.
- Eine reine Fragmentansicht kann Kontext, Kleingedrucktes oder die Sicherheitsdomäne verbergen.
- Belastbare Entscheidungen brauchen getrennte Nachweise für Revision, Entität, Dekodierung, Kontext, Herausgeber und Befugnis.
Gleiche Absätze, andere Zählgrundlage
Auf dem Bildschirm schienen Netzwerk- und Dateikopie identisch. In der HTTP-Antwort standen Zeilenenden als CRLF, im lokalen Speicher als LF. RFC 5147 verlangt, dass ein erkanntes Zeilenende in beiden Fällen als ein Zeichen zählt. Das funktioniert jedoch nur, wenn der jeweilige Client die Konvention seines Protokolls und Systems korrekt erkennt.
Der Standard nennt außerdem CR, NEL und weitere mögliche Sequenzen. Zeilenende ist keine universelle Bytefolge, sondern eine interpretierte Struktur. Wer lediglich den Fragmentstring archiviert, kann später nicht erklären, welche Grenzen tatsächlich gezählt wurden.
Für Beweissysteme ist das eine klare Trennung: visuelle Ähnlichkeit ist nicht Entitätsidentität. Ein Editor kann Zeilenenden normalisieren, ohne ein Wort zu ändern. Eine Byte-Prüfung und eine Zeichenposition beobachten dann unterschiedliche Ebenen.
Das Fragment entscheidet erst nach dem Abruf
Der Teil hinter # wird nicht an den Ursprung gesendet, damit dieser die Passage bestätigt. Zuerst wird die Ressource aufgelöst und eine Darstellung abgerufen. Danach wählt der Medientyp die lokale Fragmentsemantik.
Ein alter Client kann deshalb die vollständige Datei öffnen, obwohl er RFC 5147 nicht unterstützt. Diese inkrementelle Einführung erhält Erreichbarkeit, erzeugt aber einen zweiten Erfolgszustand. „Datei geöffnet“ ist nicht „Ziel ausgewählt“.
Auch Serverprotokolle können die Sicht des Nutzers nicht allein rekonstruieren. Sie kennen nicht zwingend die wirksame Zeichendekodierung, die Zeilenregel, eine Bereichsbegrenzung, die ausgeführte Integritätsprüfung oder die Darstellung des Umfelds.
Position und Bereich sind unterschiedliche Objekte
Der Standard kombiniert Zeichen oder Zeilen mit Positionen oder Bereichen. Position null liegt vor dem ersten Element. Eine einzelne Position ist eine Grenze mit Länge null. Erst ein Bereich wählt Inhalt zwischen zwei Grenzen aus.
Diese Differenz verhindert, dass ein Cursorpunkt stillschweigend zu einem Zitat wird. Anwendungen sollten erfassen, ob sie eine Einfügemarke, eine Hervorhebung oder nur ein Scrollziel erzeugt haben.
char= ist kein Byte-Offset. UTF-8 benötigt variable Bytezahlen, UTF-16 folgt anderen Regeln, und eine führende Byte Order Mark zählt nicht als Zeichen. Ein sichtbarer Buchstabe kann vorkomponiert oder aus Grundzeichen und kombinierendem Zeichen aufgebaut sein.
Transkodierung kann somit die Darstellung bewahren und alle nachfolgenden Positionen verschieben. Der Beleg muss deklarierten und tatsächlich verwendeten Zeichensatz sowie Normalisierung festhalten.
Am Ende anzukommen kann ein Verlust sein
Ist eine Position größer als die tatsächliche Entität, bezeichnet sie deren letzte Position. Das ist deterministisch, aber keine Bestätigung der Zielpassage.
Wird ein Handbuch von 700 auf 80 Zeilen gekürzt, kann line=640 ohne Ausnahme ans Ende führen. Ein Monitor, der nur Fehlerfreiheit misst, bewertet Entfernung des Inhalts als Erfolg. Out-of-range-Clamping braucht daher einen eigenen, blockierenden Status.
Offene Bereiche verändern sich mit dem Dokument. Fehlt der Anfang, reichen sie vom Start; fehlt das Ende, reichen sie bis zum Schluss. Spätere Ergänzungen gelangen in die Auswahl, obwohl der Linkautor sie nie geprüft hat.
Bei umgekehrten Grenzen oder Syntaxfehlern ist der Standard strenger: ignorieren, nicht raten. Diese Regel schützt Reproduzierbarkeit. Die Oberfläche muss das Ignorieren aber anzeigen, statt still die ganze Datei zu präsentieren.
Integrität ist optional und gegenstandsgebunden
Ein Fragment kann length oder md5 enthalten. Länge heißt im RFC ausdrücklich sehr schwach. MD5 wird auf der binären MIME-Entität berechnet, nachdem Inhalts- und Transferkodierungen des Transports entfernt wurden.
Der Zeichensatz kann Teil des Prüfwerts sein. Stimmt er nicht mit der abgerufenen Entität überein, darf die Prüfung nicht unmittelbar verwendet werden. Eine vorherige Transkodierung ist möglich, doch Zeichen können verloren gehen oder normalisiert werden; der RFC nennt dieses Verfahren inhärent unzuverlässig.
Vor allem müssen Clients Integritätsprüfungen nicht implementieren. Ein implementierender Client sollte das Fragment bei erkannter Änderung nicht interpretieren und kann warnen. Ein anderer ignoriert denselben Parameter. Die URI-Syntax erzwingt keine einheitliche Organisationspolitik.
RFC 6151 begrenzt die kryptografische Aussage: MD5 ist für Kollisionsresistenz und digitale Signaturen nicht mehr akzeptabel. Im historischen RFC-5147-Kontext kann es unbeabsichtigte Änderung anzeigen. Es identifiziert weder Herausgeber noch gültige Fassung und erteilt keine Befugnis.
Ohne Medientyp wird die Grammatik geraten
line= und char= gelten für text/plain, nicht universell. Manche Übertragungswege oder lokale Umgebungen liefern keinen verlässlichen Medientyp. Dann inferiert der User Agent; RFC 5147 nennt das von Natur aus unzuverlässig.
Eine .txt-Endung ist kein MIME-Beleg. file: kann lokale Zeilenkonventionen anwenden. FTP kann Metadaten vermissen lassen, die HTTP liefert. Zu einem Prüfpfad gehören deshalb deklarierter Typ, effektiver Typ und Inferenzgrund.
IANA verknüpft die text/plain-Registrierung mit RFC 5147. Das beweist koordinierte Zuweisung und Dokumentation, nicht Browserunterstützung, Warnverhalten oder Produktkonformität. Registerdaten sind keine Laufzeitmessung.
Ein korrektes Fenster kann täuschen
Die Sicherheitsbetrachtung warnt vor unterschiedlichen Clientdarstellungen. Zeigt eine Anwendung nur den Bereich, kann sie rechtliche Einschränkungen oder Kleingedrucktes ausblenden. Vertrauensähnlicher Inhalt kann aus einer echten Quelle in einen fremden Rahmen übernommen werden.
Das Dokument kann echt und die Auswahl korrekt sein, während die Präsentation irreführt. Sichtbare Grenzen, ein Weg zum vollständigen Kontext und Regeln für domänenübergreifende Einbettung gehören deshalb zur Kontrolle.
Ein reproduzierbarer Nachweis umfasst vollständige URI, Abrufzeit, Response-Validatoren, Medientyp, Zeichensatz, Hash der dekodierten Entität, Zeilenregel, Fragment, Clientversion, Clamping-Status, Auswahl und Kontext. Signatur und institutionelle Herausgeberrolle sind separate Nachweise.
Quellen
- RFC 5147, HTML
- RFC 5147, Text
- RFC-Editor-Eintrag
- IETF-Datatracker-Eintrag
- Dokumenthistorie
- Errata-Suche zu RFC 5147
- RFC 6838: Medientypspezifikationen
- RFC 2046: MIME-Medientypen
- RFC 3986: URI-Syntax
- RFC 3987: internationalisierte Bezeichner
- RFC 3629: UTF-8
- RFC 1321: MD5
- RFC 6151: MD5-Sicherheitsbetrachtung
- RFC 9110: HTTP-Semantik
- RFC 8089: file-URI
- IANA-Medientypregister
- W3C Media Fragments URI 1.0
- Minimum Initial Specification, Localized Future Decision, and Voluntary Adoption
- On Reality Layers, Symbolic Power, and Why Clarity Feels So Hostile
- Running-Code Primacy
Mitgliederbriefing
Detaillierter Profilkontext
Melden Sie sich mit der richtigen Mitgliedschaftsstufe an, um das vollständige Briefing und die Quellennotizen freizuschalten.
Nur für Strategic Circle
Strategic Circle
Offen für alle Leser. Schalten Sie Profil-Briefings nach Beitritt und Anmeldung frei.
Strategic Circle beitretenNur für Leadership Alliance
Leadership Alliance
Für qualifizierte Inhaber von IP-Assets und Management; melden Sie sich an, um Leadership-Alliance-Briefings freizuschalten.
Leadership Alliance beitreten
