Zum Hauptinhalt springen

Datenmodell und Fehler

Was die Datenbanken einer Sammlung enthalten, wie gut ihre Schichten sind und welche Fehler jede Anfrageform zeigen kann

Veröffentlichungsdatum

1. Oktober 2026

TippIn einem Satz

Eine PDAI-Sammlung hat drei Datenbanken übereinander: die Stanza-Datenbank der Sätze und Tokens, das Register und das FQL-Sidecar; jede Schicht hat gemessene Fehler, und jede Anfrageform erbt die Fehler der Schichten, die sie liest.

Drei Schichten

flowchart TD
  seiten["Seiten-XML: Text, Fußnoten, Abbildungen"] --> stanza["stanza.duckdb: Sätze, Tokens, Lemmata, Abhängigkeiten, Entitäten"]
  register["Register: Briefe, Parteien, Daten, Regesten"] --> sidecar["fql.duckdb: Briefe, Seiten, Sätze, Erwähnungen, Themen, Handlungen, Perioden, Verweise"]
  stanza --> sidecar
  modell["Modelllesungen: Themen, Handlungen"] --> sidecar

Datei Inhalt Schlüssel
<sammlung>_stanza.duckdb Sätze mit Sprachetikett, Tokens mit Form, Lemma, Wortart, Merkmalen und Kopf, Entitäten nach Typ Satz = (doc_id, pidx, sent_idx); sent_idx beginnt auf jeder Seite neu
<sammlung>.duckdb (Kármán) Das Register: Briefe, aufgelöste Parteien, Personen-, Orts- und Institutionsindex, Mappen letter_id
register/*.parquet (Euler) Das Register der Descriptio und die Textbände IVA 2–8 letter_id
<sammlung>_fql.duckdb Das Sidecar: alle FQL-Tabellen, mit Fundstelle in jeder Zeile letter_id, Satzschlüssel
status.json, quality/ Bereitschaft der Sammlung, Prüfberichte —

Das Sidecar wird mit fql_build.py gebaut (Stufen base, persons, segment, pages, text, mentions, regest, topics, acts, periods, refs, fts) und atomar veröffentlicht. Die Stufe refs schreibt fq_documents (Titel und Zitiergrundlage aus der Bibliographie der Sammlung oder dem Mappenblatt des Archivs) und fq_page_labels (die gedruckte Seitenzahl aus dem Kolumnentitel). Fehlt eine Angabe, bleibt sie leer und der Verweis nennt die Lücke.

Die Tabellen

Die Stanza-Datenbank <sammlung>_stanza.duckdb

Tabelle Kármán Euler Spalten
stz_corpus_meta 1 1 built_at, collection, n_docs, n_pages, n_sentences, n_tokens, n_feats, elapsed_s, version
stz_deps 8.711.986 2.093.268 doc_id, pidx, sent_idx, dep_tok, head_tok, deprel, dep_lemma, dep_upos, head_lemma, head_upos
stz_docs 1.066 8 doc_id, n_pages, n_sentences, n_tokens, built_at
stz_entities 424.144 23.389 doc_id, pidx, sent_idx, ent_no, ent_type, text
stz_feats 11.891.315 3.821.301 doc_id, pidx, sent_idx, tid, feat, val
stz_letter_map 39.031 — doc_id, pidx, letter_nr, sender, recipient, date_when, language
stz_pages 38.197 5.829 doc_id, pidx, primary_lang, n_sentences, n_tokens, n_math_inline, n_math_display
stz_sentences 663.972 153.669 doc_id, pidx, sent_idx, lang, text
stz_tokens 8.711.986 2.093.268 doc_id, pidx, sent_idx, tid, form, lemma, upos, xpos, head, deprel, is_math

Das FQL-Sidecar <sammlung>_fql.duckdb

Tabelle Kármán Euler Spalten
fq_acts 5.121 2.142 act_id, letter_id, act_type, agent, agent_id, addressee, addressee_id, beneficiary, beneficiary_id, object_kind, object, amount, currency, amount_text, quote, evidence, doc_id, pidx, sent_idx, model, instruction
fq_build_meta 11 14 stage, built_at, model, instruction, n_rows, seconds, llm_calls, cached_calls, note
fq_documents 1.066 8 doc_id, title, kind, citation, volume, section, source
fq_entities 23.219 322 ent_id, kind, canonical, n_sent, n_received
fq_figures 0 90 doc_id, pidx, ref, caption, description, letter_id
fq_footnotes 0 236 doc_id, pidx, fn_no, text, letter_id
fq_letter_entities 78.266 — letter_id, ent_id, surface, kind
fq_letter_pages 39.318 1.019 letter_id, doc_id, pidx, part, method
fq_letter_period Sicht Sicht
fq_letter_sentences 684.471 13.683 letter_id, doc_id, pidx, sent_idx, part, lang
fq_letter_topics 47.031 9.005 letter_id, topic_id, top_id, n_tags
fq_letters 15.976 3.393 letter_id, doc_id, letter_nr, sender_id, recipient_id, sender_raw, recipient_raw, sender, recipient, place, date_when, year, date_day, date_text, language, regest, regest_source, tags, pidx_from, pidx_to, basis, volume, edition_nr, register_nr, lost
fq_llm_cache 959 513 key, stage, model, response, ms, prompt_tokens, eval_tokens, ts
fq_mentions 424.144 23.389 doc_id, pidx, sent_idx, ent_no, ent_type, surface, ent_id, letter_id
fq_page_labels 38.213 6.369 doc_id, pidx, label, method
fq_paragraphs 478.081 14.479 doc_id, pidx, par_idx, kind, style, text, letter_id, par_key
fq_periods 3 5 period_id, label, kind, date_from, date_to, region, source, status
fq_segments — 1.256 doc_id, pidx, letter_nr, part, running_head
fq_tag_topic 11.097 3.257 tag, topic_id
fq_topics 168 168 topic_id, label, parent_id, description
fq_variants 23.240 641 variant_norm, ent_id

Gründe und Bericht

Jede Antwort einer Anfrage hat ein Argument; seine Fundstellen werden zu Gründen mit einer einheitlichen Adresse im Belegkörper: <sammlung>@<version>#<art>/<ort>. Die Version ist der Hash der Selbstbeschreibung der Sammlung (Baulog des Sidecars, Register, status.json, Zeilen der Indizes); ändert sich eine davon, ändert sich die Version, und jedes Urteil sagt, relativ zu welcher es gilt.

Art Ort Auszug aus
satz doc_id/pidx/sent_idx stz_sentences.text
seite doc_id/pidx den Sätzen der Seite, sonst dem Seiten-XML
brief letter_id fq_letters: Datum, Absender, Empfänger
person ent_id fq_entities.canonical
thema topic_id fq_topics.label
tabelle Tabellenname Zeilenzahl der Tabelle

Der Auszug ist immer der Text des Körpers an dieser Adresse, nie die Lesung eines Modells; die Lesung steht daneben. Die Gründe stehen im Bericht famulus-enfolding/1 der Anfrage. Sein Schema ist development/famulus-proof/src/famulus_proof/entfaltung/schema/famulus-enfolding-1.schema.json; das Register der Belegkörper ist rules/bodies.yaml desselben Pakets.

Gemessene Güte der Schichten

Die folgenden Zahlen sind Messungen, keine Schätzungen. Drei Arten sind zu unterscheiden: Strukturprüfungen (ein Satz hat genau eine Wurzel; ein Brief hat eine aufgelöste Partei), Übereinstimmungen zweier unabhängiger Wege (das Sprachetikett gegen eine Abstimmung über Funktionswörter) und Stichproben mit gelesenem Urteil. Nur Stichproben messen Präzision.

Drei Befunde bestimmen die Grenzen der Anfragen am stärksten:

  • Das Etikett la ist bei Kármán meist falsch. Von den entscheidbaren Sätzen mit Etikett Latein stimmen 4,7 % der Abstimmung zu; die meisten sind englisch. Diese Sätze wurden mit dem lateinischen Modell gelesen: Ihre Lemmata sind unbrauchbar und sie haben keine Entitäten. Bei Euler ist das Etikett la für die Textbände IVA 2–8 überwiegend deutsch oder französisch, für die Briefe des Bands IVA 4 zu 72 % richtig.
  • 42 % der Kármán-Briefe haben keine aufgelöste Partei. Jede Zählung über Personen ist eine Untergrenze. Bei 1.525 dieser Briefe nennt die Mappe einen Korrespondenten; das ist eine mögliche zweite Quelle.
  • Der Volltextindex nutzt englische Stoppwörter und Stammformen für alle Sprachen. Lateinische Funktionswörter wie et, non, in werden gestrichen; numerus, numeri und numerorum sind drei Suchbegriffe (280, 267 und 85 Absätze bei Euler). Der Lemmaweg findet numerus in 1.052 Sätzen, die Zeichenkette in 508.

Gemessen am 2026-10-01 mit scripts/fql_quality.py (nur lesend, jede Zahl aus einer Abfrage).

Sprachetikett der Sätze

Das Etikett wählt das Stanza-Modell. Eine Abstimmung über Funktionswörter (de, la, en, fr) prüft es unabhängig; sie entscheidet nur bei mindestens zwei Funktionswörtern mit klarem Vorsprung.

Sammlung Etikett Sätze entscheidbar davon übereinstimmend häufigste andere Stimme
Kármán (Korpus) en 414.820 49,4 % 99,6 % fr (440)
Kármán (Korpus) de 135.909 44,7 % 96,8 % en (1.613)
Kármán (Korpus) la 50.040 21,8 % 4,7 % en (8.269)
Kármán (Korpus) fr 43.111 45,6 % 92,6 % en (1.367)
Kármán (Briefe) en 427.842 49,0 % 99,6 % fr (445)
Kármán (Briefe) de 139.119 44,2 % 96,7 % en (1.654)
Kármán (Briefe) la 51.369 21,5 % 4,7 % en (8.404)
Kármán (Briefe) fr 44.206 45,5 % 92,6 % en (1.394)
Euler (Korpus) la 139.676 41,2 % 14,2 % de (32.894)
Euler (Korpus) en 7.521 59,8 % 99,3 % de (14)
Euler (Korpus) de 5.621 44,5 % 95,4 % en (55)
Euler (Korpus) fr 676 41,3 % 85,3 % en (35)
Euler (Briefe) en 6.416 58,7 % 99,2 % de (13)
Euler (Briefe) de 4.629 44,0 % 95,2 % la (48)
Euler (Briefe) la 2.137 40,0 % 71,9 % de (145)
Euler (Briefe) fr 334 21,6 % 50,0 % en (30)

Briefe, Parteien, Daten, Zuordnung

Messung Kármán Euler
Briefe 15.976 3.393
Absender nicht aufgelöst 43,2 % 0,0 %
Empfänger nicht aufgelöst 56,8 % 0,0 %
keine Partei aufgelöst 42,4 % 0,0 %
ohne Datum 45,4 % 2,0 %
nur Jahr 3,0 % 0,0 %
Seiten, die zwei Briefe teilen 2,9 % 0,0 %
Briefsätze auf geteilten Seiten 6,0 % 0,0 %
Briefe ohne Text 0 3.197
Namensformen, die mehrere Einträge treffen 223 1
Personennennungen mit Registerverknüpfung 41,7 % 15,3 %
Handlungen mit Satzbeleg 59,4 % 9,3 %
Geldhandlungen ohne Betrag 44,9 % 70,5 %
Briefe ohne Thema 2,0 % 17,8 %

Stichproben: Präzision mit 95-%-Intervall (Wilson)

Gelesen von: agent (not owner-validated); Ziehung mit Seed 20261001 (scripts/fql_audit_sample.py). Eine Stichprobe dessen, was ein Filter liefert, misst Präzision, nicht Vollständigkeit.

Stichprobe Behauptung n richtig Präzision 95 % nicht entscheidbar
acts_karman the sentence expresses the act of this type, and agent and addressee are the right way round 30 22 73,3 % 55,6 % – 85,8 % 0
acts_karman_handlung the act of this type with these roles is stated in the letter (the shown sentence may be a neighbour) 30 27 90,0 % 74,4 % – 96,5 % 0
acts_regest_karman the regest states the act of this type 30 28 93,3 % 78,7 % – 98,2 % 0
topics_karman the regest supports the assigned topic 30 27 90,0 % 74,4 % – 96,5 % 0
mentions_karman the surface in the sentence denotes the register person it is linked to 24 21 87,5 % 69,0 % – 95,7 % 6
promise_dep_karman the sentence states a promise made by its grammatical subject (lemma promise, VERB, nsubj + obj/ccomp/xcomp) 30 25 83,3 % 66,4 % – 92,7 % 0
imperative_karman the sentence is an instruction or request addressed to the reader (not a salutation, quotation or fragment) 30 4 13,3 % 5,3 % – 29,7 % 0
will_karman the sentence is a commitment by the writer to do something (I will / I shall + verb) 30 12 40,0 % 24,6 % – 57,7 % 0
topics_euler the regest supports the assigned topic 30 26 86,7 % 70,3 % – 94,7 % 0
mentions_karman_2 the surface in the sentence denotes the register person it is linked to 20 16 80,0 % 58,4 % – 91,9 % 10
lemma_numerus_euler the token’s form is an inflected form of ‘numerus’ (lemma correct) 30 30 100,0 % 88,6 % – 100,0 % 0
citations_hevelius the passage cites this letter or register entry (number, date and parties, or shelfmark), and the builder resolved it to the right one 40 38 95,0 % 83,5 % – 98,6 % 0

Dependenzfilter am Beispiel promise (Kármán). Lemma + VERB: 137 Sätze; mit Subjekt und Objekt: 93; zusätzlich belebtes Subjekt: 80. Unter den 57 verworfenen Sätzen waren 29 echte Zusagen (passive and participle forms (‘has been promised’, ‘the promised copy’), subjects that are common nouns (‘Our Company has promised’), conjoined or coordinated predicates). Geschätzt: Lemma-Weg Präzision 80 %, Vollständigkeit 100 %; Dependenzweg Präzision 100 %, Vollständigkeit 73 % (real promises = 80 kept (precision 24/24 on the judged sample) + 29 read among the dropped = about 109; the unclear sentence and promise tagged NOUN are not counted).

Satzfilter-Rezepte über Stanza

Rezept Sammlung Sätze davon in Briefen Briefe ms
J1 · Zwei Lemmata im selben Satz Kármán 1.269 1.269 563 24.9
J2 · Zwei Lemmata im Abstand von höchstens vier Wörtern Kármán 1.251 1.251 560 23.0
J3 · Prädikat mit Subjekt und Objekt (Dependenz) Kármán 80 80 70 38.1
J4 · Handelnder als grammatisches Subjekt eines Verbs Kármán 4 4 4 14.3
J5 · Verneinte Sätze mit einem Lemma Kármán 7 7 7 43.4
J6 · Zukunft in der ersten Person (Zusagen: ‘I will send’) Kármán 904 904 722 37.1
J7 · Imperativ (Mood=Imp): Bitten und Anweisungen Kármán 17.295 17.295 5.192 116.3
J8 · Frage (Satz endet auf Fragezeichen) Kármán 2.695 2.695 1.257 34.5
J9 · Entität eines Typs und ein Lemma im selben Satz (Geld und zahlen) Kármán 37 37 35 15.9
J10 · Personennamen (PERSON/PER) in Sätzen mit einem Lemma Kármán 99 99 99 13.9
J11 · Lateinisches Lemma nur dort, wo das Etikett Latein ist Euler 962 250 76 41.5
J12 · Satz mit Gleichung ausschließen (Mathematik-Token) Euler 313 69 32 50.7
J1 Zwei Lemmata im selben Satz (a = wind, b = tunnel)
SELECT DISTINCT a.doc_id, a.pidx, a.sent_idx FROM stz.stz_tokens a
JOIN stz.stz_tokens b ON b.doc_id = a.doc_id AND b.pidx = a.pidx AND b.sent_idx = a.sent_idx
WHERE a.lemma = $a AND b.lemma = $b AND a.upos IN ('NOUN','PROPN','VERB','ADJ') AND b.upos IN ('NOUN','PROPN','VERB','ADJ')
J2 Zwei Lemmata im Abstand von höchstens vier Wörtern (a = wind, b = tunnel)
SELECT DISTINCT a.doc_id, a.pidx, a.sent_idx FROM stz.stz_tokens a
JOIN stz.stz_tokens b ON b.doc_id = a.doc_id AND b.pidx = a.pidx AND b.sent_idx = a.sent_idx AND abs(b.tid - a.tid) BETWEEN 1 AND 4
WHERE a.lemma = $a AND b.lemma = $b
J3 Prädikat mit Subjekt und Objekt (Dependenz) (verb = promise)
SELECT DISTINCT v.doc_id, v.pidx, v.sent_idx FROM stz.stz_tokens v
JOIN stz.stz_tokens s ON s.doc_id = v.doc_id AND s.pidx = v.pidx AND s.sent_idx = v.sent_idx AND s.head = v.tid AND s.deprel LIKE 'nsubj%'
JOIN stz.stz_tokens o ON o.doc_id = v.doc_id AND o.pidx = v.pidx AND o.sent_idx = v.sent_idx AND o.head = v.tid AND o.deprel IN ('obj','ccomp','xcomp','iobj')
WHERE v.lemma = $verb AND v.upos = 'VERB'
  AND ((s.upos = 'PRON' AND s.lemma IN ('I','you','he','she','we','they','who','one')) OR s.upos = 'PROPN')
J4 Handelnder als grammatisches Subjekt eines Verbs (actor = Putnam, verb = send)
SELECT DISTINCT v.doc_id, v.pidx, v.sent_idx FROM stz.stz_tokens v
JOIN stz.stz_tokens s ON s.doc_id = v.doc_id AND s.pidx = v.pidx AND s.sent_idx = v.sent_idx AND s.head = v.tid AND s.deprel LIKE 'nsubj%'
WHERE v.lemma = $verb AND v.upos = 'VERB' AND s.form = $actor
J5 Verneinte Sätze mit einem Lemma (lemma = grant)
SELECT DISTINCT t.doc_id, t.pidx, t.sent_idx FROM stz.stz_tokens t
WHERE t.lemma = $lemma AND EXISTS (SELECT 1 FROM stz.stz_tokens n WHERE n.doc_id = t.doc_id AND n.pidx = t.pidx AND n.sent_idx = t.sent_idx
  AND n.head = t.tid AND n.deprel = 'advmod' AND lower(n.form) IN ('not','never','no','n''t'))
J6 Zukunft in der ersten Person (Zusagen: 'I will send')
SELECT DISTINCT v.doc_id, v.pidx, v.sent_idx FROM stz.stz_tokens v
JOIN stz.stz_tokens s ON s.doc_id = v.doc_id AND s.pidx = v.pidx AND s.sent_idx = v.sent_idx AND s.head = v.tid AND s.deprel LIKE 'nsubj%' AND s.lemma = 'I'
JOIN stz.stz_tokens m ON m.doc_id = v.doc_id AND m.pidx = v.pidx AND m.sent_idx = v.sent_idx AND m.head = v.tid AND m.deprel = 'aux' AND lower(m.form) IN ('will','shall','''ll')
WHERE v.upos = 'VERB'
J7 Imperativ (Mood=Imp): Bitten und Anweisungen
SELECT DISTINCT t.doc_id, t.pidx, t.sent_idx FROM stz.stz_tokens t
JOIN stz.stz_feats f ON f.doc_id = t.doc_id AND f.pidx = t.pidx AND f.sent_idx = t.sent_idx AND f.tid = t.tid AND f.feat = 'Mood' AND f.val = 'Imp'
WHERE t.upos = 'VERB' AND t.deprel = 'root'
J8 Frage (Satz endet auf Fragezeichen)
SELECT doc_id, pidx, sent_idx FROM (SELECT doc_id, pidx, sent_idx, arg_max(form, tid) AS f FROM stz.stz_tokens GROUP BY 1,2,3) WHERE f = '?'
J9 Entität eines Typs und ein Lemma im selben Satz (Geld und zahlen) (lemma = pay)
SELECT DISTINCT e.doc_id, e.pidx, e.sent_idx FROM stz.stz_entities e
JOIN stz.stz_tokens t ON t.doc_id = e.doc_id AND t.pidx = e.pidx AND t.sent_idx = e.sent_idx
WHERE e.ent_type IN ('MONEY') AND t.lemma = $lemma AND t.upos = 'VERB'
J10 Personennamen (PERSON/PER) in Sätzen mit einem Lemma (lemma = thank)
SELECT DISTINCT e.doc_id, e.pidx, e.sent_idx FROM stz.stz_entities e
JOIN stz.stz_tokens t ON t.doc_id = e.doc_id AND t.pidx = e.pidx AND t.sent_idx = e.sent_idx
WHERE e.ent_type IN ('PERSON','PER') AND t.lemma = $lemma AND t.upos = 'VERB'
J11 Lateinisches Lemma nur dort, wo das Etikett Latein ist (lemma = numerus)
SELECT DISTINCT t.doc_id, t.pidx, t.sent_idx FROM stz.stz_tokens t
JOIN stz.stz_sentences s ON s.doc_id = t.doc_id AND s.pidx = t.pidx AND s.sent_idx = t.sent_idx
WHERE t.lemma = $lemma AND s.lang = 'la' AND NOT t.is_math
J12 Satz mit Gleichung ausschließen (Mathematik-Token) (lemma = numerus)
SELECT DISTINCT t.doc_id, t.pidx, t.sent_idx FROM stz.stz_tokens t
WHERE t.lemma = $lemma AND NOT EXISTS (SELECT 1 FROM stz.stz_tokens m WHERE m.doc_id = t.doc_id AND m.pidx = t.pidx
  AND m.sent_idx = t.sent_idx AND m.is_math)

Anfragen über die Satzstruktur

Die Stanza-Datenbank erlaubt Filter, die über Wörter hinausgehen: zwei Lemmata im selben Satz oder in kurzem Abstand, ein Prädikat mit Subjekt und Objekt, Verneinung, Zeit und Modus, Fragen, eine Entität eines Typs neben einem Lemma. Die Rezepte J1–J12 oben sind ausgeführt; ihre Präzision ist für drei von ihnen gelesen:

  • Zusagen über das Lemma promise (J3): Der Lemmaweg (VERB) liefert 137 Sätze, geschätzt 80 % davon echte Zusagen. Der Abhängigkeitsweg mit belebtem Subjekt liefert 80 Sätze, in der Stichprobe alle richtig, aber er verfehlt etwa ein Viertel der Zusagen: Passiv („has been promised“), Partizip („the promised copy“), Subjekte, die Substantive sind („Our Company has promised“).
  • Imperativ als Bitte (J7): 13 % Präzision. Der Imperativ trifft vor allem Darstellungsformen von Manuskripten („Let us consider“, „Assume“), Tabellenzeilen und Fragmente. Ohne Einschränkung auf Briefe und eine Anrede taugt er nicht als Filter für Bitten.
  • „I will / I shall“ als Zusage (J6): 40 % Präzision. Ankündigungen des Textes („I shall restrict myself …“), höfliche Bitten („I shall appreciate …“) und Voraussagen sind keine Zusagen.

Daraus folgt für die Formen: Satzfilter sind gute Zeugen für das Vorkommen eines Wortes in einer bestimmten Funktion, schlechte für Sprechhandlungen. Die Handlungen der Formen E1–E8 kommen deshalb aus einer Lesung des Modells mit gemessener Präzision, nicht aus einem Satzfilter; ein Satzfilter kann als zweiter, unabhängiger Zeuge dienen.

Fehler jeder Form

Jede Form erbt die Fehler der Schichten, die sie liest. error_model.yaml nennt sie, mit der Richtung (übersehen, falsch gefunden, verschoben) und mit der Art der Zahl, die die Form liefert: exakt, Untergrenze, Obergrenze, Schätzung, Beleg. Die Begründung macht aus jeder Fehlerart eine kritische Frage.

Fehlerarten

Code Fehlerart Richtung Schicht Wirkung
OCR Lesefehler der Texterkennung both text Falsch gelesene Zeichen verändern Wortformen. Die Suche nach der richtigen Form verfehlt den Satz (FN); eine falsch gelesene Form trifft einen fremden Namen (FP).
SEG Zuordnung von Seiten und Sätzen zu Briefen both text Ein Brief ist eine Seitenspanne. Auf einer Seite, die zwei Briefe teilt, gehören Sätze zum Nachbarbrief; ein Satz wird dann zweimal gezählt oder dem falschen Brief belegt.
COV Abdeckung des Bestands FN register Was das Sidecar nicht enthält, kann keine Form finden. Eine leere Antwort heißt dann nicht, dass es das Gesuchte nicht gibt.
PARTY Absender oder Empfänger nicht aufgelöst FN register Das Register nennt bei manchen Briefen keine Partei. Jeder Filter auf eine Person lässt diese Briefe aus; Zählungen sind Untergrenzen.
LINK Verknüpfung mit dem Register (Namensauflösung) both register Eine Namensform wird einer Person des Registers zugeordnet. Gleiche Familiennamen verschiedener Personen verschmelzen (FP); eine nicht verzeichnete Schreibweise bleibt ungebunden (FN).
NER Fehler der Namenserkennung both stanza Spanne oder Typ falsch, Name übersehen. Die Typsysteme der Sprachmodelle unterscheiden sich (PERSON, PER), und für Latein gibt es keine Namenserkennung.
LANG Falsches Sprachetikett (falsches Stanza-Modell) both stanza Das Etikett eines Satzes wählt das Modell. Ein englischer Satz mit Etikett Latein wird mit dem lateinischen Modell gelesen; Lemma, Wortart und Entitäten sind dann Unsinn oder fehlen.
LEMMA Lemma- und Wortartfehler both stanza Falsche Grundform (problema zu problemus) oder falsche Wortart. Ein Lemmafilter verfehlt dann den Satz oder trifft eine fremde Wortform.
PARSE Fehler der Abhängigkeitsanalyse both stanza Falsche Köpfe und Relationen. Filter über Subjekt, Objekt oder Verneinung verlieren Sätze mit anderer Struktur (Passiv, Koordination) oder behalten Sätze mit übertragener Bedeutung.
SENT Satzgrenzen und Satzeinheiten both stanza Briefzeilen, Anreden und Tabellenzeilen sind eigene Sätze; ein Satz über einen Seitenumbruch ist in zwei geschnitten. Satzweise Filter sehen nur eine Hälfte.
DATE Datum fehlt oder ist grob FN register Briefe ohne Datum fallen aus jedem Zeit- und Periodenfilter; Jahresangaben ohne Monat und Tag fallen aus Filtern auf Monat oder Tag.
TOPIC Thema durch das Modell zugeordnet both llm Ein Schlagwort des Regests wird einem Thema zugeordnet; falsche Zuordnung (FP) oder kein Thema (FN).
ACT Handlung durch das Modell gelesen both llm Art (Bitte, Zusage, Zahlung), Rollen (wer an wen) oder Gegenstand falsch gelesen; eine Handlung übersehen. Das Modell liest meist das Regest, selten den Satz.
LOCUS Belegsatz nicht der Satz der Handlung FP llm Die Handlung stimmt für den Brief, der angezeigte Satz ist aber ein Nachbarsatz (Einleitung, Listenrest). Der Beleg trägt die Handlung dann nicht.
PERIOD Periodengrenzen nicht bestätigt bias register Kriegs- und Friedenszeiten sind konventionelle Grenzen mit dem Status proposed; Briefe nahe der Grenze und Briefe ohne Datum sind unsicher oder fehlen.
BIND Bindung der Parameter both harness Das Modell bindet einen Namen an die falsche Person oder bei doppelten Registereinträgen an einen der beiden.
FORM Wahl der Anfrageform both harness Die Frage wird einer Form zugeordnet, die etwas Verwandtes beantwortet. Die Wahl wurde nur an Fragen des Katalogautors gemessen.
POST Formulierung der Antwort bias harness Die Antwort fasst höchstens vierzig Zeilen zusammen und kann eine Untergrenze als Gesamtzahl sprechen.
COUNT Zählmodus und Doppelzählung bias register Ob Briefe, Sätze oder Erwähnungen gezählt werden, bestimmt die Zahl; ein Satz in zwei Briefen oder ein doppelter Registereintrag zählt doppelt.
FTS Volltextsuche (BM25) über Wortformen both text Der Index nutzt englische Stoppwörter und englische Stammformen für alle Sprachen. Flexionsformen sind verschiedene Suchbegriffe; lateinische Funktionswörter wie et, non, in werden als Stoppwörter gestrichen.
MATH Formeln als Namen oder Wörter erkannt FP stanza In mathematischen Texten werden Formeln als Personen, Orte oder Wörter erkannt und gezählt.
ZERO Leere Antwort ist keine Verneinung FN harness Die Null einer Zählung bedeutet nur, dass das Sidecar nichts enthält. Jede der anderen Fehlerarten kann sie erzeugen.
CITE Anführung eines Briefs durch das Modell gelesen both llm Das Modell liest aus einer Anmerkung oder einem Absatz, welchen Brief die Herausgeber anführen; der Bau löst Datum, Parteien und Nummer gegen Register und Briefe auf. Eine falsch gelesene oder falsch aufgelöste Anführung hängt die Stelle an einen fremden Brief (FP); eine übersehene fehlt (FN).
SCAN Kommentarseiten nicht gescannt FN text Von den Essays und Einleitungen fehlen Seiten (Tome I und Tome II, aufgeführt in completeness.md der Sammlung). Was dort steht, findet keine Form.

Fehlerarten je Form

Form Fehlerarten (wichtigste zuerst) Zahlen sind Wie der Fehler aussieht
A1 Bestand der Sammlung COV PARTY SEG exakt Zählt, was das Sidecar enthält. Fehlende Texte erscheinen als kleinere Zahl, nicht als Fehlermeldung.
A2 Briefe pro Jahr DATE PARTY COV Untergrenze Briefe ohne Datum fehlen in jedem Jahr; mit Personenfilter fehlen zusätzlich Briefe ohne aufgelöste Partei.
A3 Briefe in einem Zeitraum DATE PARTY COV Untergrenze Wie A2; ein Zeitraum aus Tagen verlangt zudem ein Tagesdatum, Jahresangaben fallen heraus.
A4 Text eines Briefs SEG OCR COV Beleg Zeigt die Absätze der Seitenspanne; auf einer geteilten Seite stehen auch Absätze des Nachbarbriefs.
A5 Daten eines Briefs DATE PARTY exakt Gibt die Registerangaben wieder; ein Fehler liegt im Register, nicht in der Abfrage.
B1 Person im Register LINK COV Schätzung Sucht Namensformen im Register; verschiedene Personen mit gleichem Familiennamen und nicht verzeichnete Schreibweisen.
B2 Briefe von und an eine Person PARTY LINK DATE Untergrenze Briefe ohne aufgelöste Partei fehlen; bei zwei Personen gleichen Namens werden ihre Briefe vermischt.
B3 Wer schrieb von einem Ort PARTY COV LINK Untergrenze Der Ort wird als Teilzeichenkette der Registerangabe gesucht (ein kurzer Name trifft auch längere Ortsnamen, FP); andere Schreibweisen desselben Ortes fehlen (FN).
B4 Orte, von denen jemand schrieb PARTY LINK COV Untergrenze Nur Briefe mit Ortsangabe und aufgelöster Person gehen in die Liste ein.
B5 Häufigst genannte Namen (NER) NER LANG LINK SENT MATH Schätzung Zählt Erwähnungen, nicht Personen. Lateinische Sätze haben keine Entitäten, und Sätze mit falschem Etikett verlieren sie.
B6 Wer nennt eine Person, mit Beleg NER LINK LANG OCR SENT Beleg Die Belegsätze sind echte Sätze des Textes; ein Teil der Verknüpfungen ist falsch oder aus dem Satz nicht entscheidbar (Stichprobe), und es fehlen Briefe, in denen der Name nicht erkannt oder nicht verknüpft wurde.
B7 Wer wird zusammen mit einer Person genannt NER LINK COUNT SENT Schätzung Zählt Briefe, in denen beide Namen erkannt wurden; was ein Brief zweimal nennt, zählt einmal.
B8 Institutionen in Briefen NER LINK COV Schätzung Institutionen nur dort, wo die Namenserkennung ORG oder ein Registereintrag vorliegt; Abkürzungen und Firmennamen als Personen verwechselt.
B9 Genannte Geldbeträge (NER), mit Beleg NER LANG OCR Untergrenze Nur Beträge, die als MONEY erkannt wurden; Beträge als bloße Zahl (CARDINAL) fehlen.
C1 Briefpartner einer Person PARTY LINK COUNT Untergrenze Die Zahl der Partner und Briefe ist eine Untergrenze; verschmolzene Namen senken sie, nicht verknüpfte Namensformen heben sie.
C2 Briefe zwischen zwei Personen PARTY LINK ZERO Untergrenze Null Briefe heißt keine registrierten Briefe zwischen beiden, nicht, dass sie sich nicht schrieben.
C3 Wer schrieb an eine Person PARTY LINK Untergrenze Absender ohne aufgelöste Partei fehlen.
C4 An wen schrieb eine Person PARTY LINK Untergrenze Empfänger ohne aufgelöste Partei fehlen.
C5 Chronik eines Briefwechsels PARTY DATE LINK Untergrenze Die Chronik zeigt nur Briefe mit beiden Parteien; undatierte stehen am Ende.
C6 Absendeorte eines Briefwechsels PARTY COV Untergrenze Nur Briefe mit Ortsangabe.
C7 Pausen im Briefwechsel DATE PARTY ZERO Obergrenze Fehlende oder undatierte Briefe erzeugen scheinbare Pausen; die Pausenlänge ist eine Obergrenze.
C8 Korrespondenznetz einer Person PARTY LINK Untergrenze Kanten nur zwischen aufgelösten Parteien; ein verschmolzener Name verbindet fremde Netze.
C9 Gemeinsame Briefpartner PARTY LINK ZERO Untergrenze Null gemeinsame Partner kann an nicht aufgelösten Briefen liegen.
C10 Erster und letzter Brief DATE PARTY Untergrenze Der erste datierte Brief; ein undatierter früherer Brief wird nicht gefunden.
D1 Worüber X an Y schrieb (Themen) TOPIC PARTY LINK Schätzung Themen aus dem Regest durch das Modell; Briefe ohne Thema fehlen, einzelne Zuordnungen sind falsch.
D2 Worüber X an Y schrieb (Regesten) PARTY LINK Beleg Zeigt Regesten des Herausgebers; Fehler liegen nur in der Auswahl der Briefe, nicht im Inhalt.
D3 Wer schrieb an X über ein Thema TOPIC PARTY LINK Schätzung Briefe ohne Thema oder mit falschem Thema; Briefe ohne aufgelöste Partei fehlen.
D4 Themenverteilung TOPIC PARTY COV Schätzung Anteile über Briefe mit Thema; Euler hat für etwa jeden sechsten Brief kein Thema.
D5 Wandel der Themen über die Jahre TOPIC DATE COUNT Schätzung Der Verlauf über die Jahre zählt nur datierte Briefe mit Thema; Jahre mit wenigen Briefen schwanken stark.
D6 Erstes Auftreten eines Themas TOPIC DATE Untergrenze Das früheste datierte Auftreten; ein früher undatierter Brief oder ein falsch zugeordnetes Thema verschiebt es.
D7 Suche in den Regesten (BM25) FTS PARTY Schätzung Stoppwörter und englische Stammformen; eine Flexionsform findet die anderen Formen nicht.
D8 Suche im Brieftext (BM25) FTS OCR SEG LANG Schätzung Sucht Wortformen im OCR-Text; Schreibvarianten und Lesefehler verfehlen den Absatz, lateinische Stoppwörter werden gestrichen.
E1 Wer bat X um etwas ACT LOCUS PARTY LINK Schätzung Die Handlung wurde vom Modell gelesen, meist aus dem Regest; Rollen können vertauscht, die Art falsch sein.
E2 Wer bat X um finanzielle Unterstützung ACT LOCUS LINK PARTY Schätzung Gehaltsforderungen und Rechnungen werden als Bitte um Geld gelesen (FP); Bitten ohne Regestnennung fehlen.
E3 Welche Beträge X zusagte ACT LOCUS COV Untergrenze Bei einem großen Teil der Geldhandlungen fehlt der Betrag; es zählen nur Zusagen mit gelesenem Betrag.
E4 Empfehlungen ACT LINK Schätzung Technische Vorschläge werden bisweilen als Empfehlung gelesen; Empfehlungen von Personen in anderer Wortwahl fehlen.
E5 Bitten um Bücher und Publikationen ACT LINK Schätzung Bitten um Sonderdrucke und Bücher sind stabil; Wünsche in Nebensätzen fehlen.
E6 Geldbeträge über die Zeit ACT DATE COUNT Untergrenze Summiert nur Beträge, die gelesen wurden und ein Datum haben; Währungen werden nicht umgerechnet.
E7 Handlungen in einem Brief ACT LOCUS SEG Schätzung Alle Handlungen eines Briefs; auf geteilten Seiten gehört der Belegsatz bisweilen zum Nachbarbrief.
E8 Handlungsprofil einer Person ACT LINK COUNT Schätzung Die Verteilung der Handlungsarten folgt dem Modell; seltene Arten haben kleine Zahlen.
F1 Briefe in Kriegs- und Friedenszeiten PERIOD DATE PARTY Untergrenze Briefe ohne Datum sind keiner Periode zuzuordnen; die Grenzen sind noch nicht bestätigt.
F2 Themen in Krieg und Frieden PERIOD DATE TOPIC Schätzung Zwei Unsicherheiten verbinden sich: Periodengrenze und Themenzuordnung.
F3 Handlungen in Krieg und Frieden PERIOD DATE ACT Schätzung Periodengrenze und Handlungsart; seltene Handlungen je Periode sind zu klein für Vergleiche.
F4 Zeitreihe mit Kriegsperioden PERIOD DATE Untergrenze Die Zeitreihe zählt datierte Briefe; die Kriegsbalken sind konventionelle Grenzen.
F5 Briefe nach Monaten DATE Untergrenze Nur Briefe mit Tagesdatum (date_day); Angaben nur mit Monat oder Jahr fehlen, bei Karman fast die Hälfte der Briefe.
G1 Sprachen der Briefe LANG COUNT Schätzung Zählt Sätze nach Etikett; mit falschem Etikett wächst die Zahl der lateinischen Sätze.
G2 Belege eines Wortes (Lemma) LEMMA LANG SENT OCR SEG MATH Schätzung Die Grundform findet Flexionsformen (hoher Gewinn gegenüber der Zeichenkette); es fehlen Sätze mit falscher Grundform oder falschem Modell.
G3 Mathematische Passagen und Formeln MATH OCR SEG Schätzung Zählt Absätze mit Gleichungen oder Dollarzeichen; Formeln im Fließtext ohne Zeichen fehlen.
G4 Fußnoten und Anmerkungen COV exakt Karman hat keine Fußnoten im Sidecar; ein leeres Ergebnis gilt nur für das Sidecar.
G5 Abbildungen in Briefen COV exakt Abbildungen nur dort, wo die OCR sie als Figur ausgezeichnet hat.
H1 Vergleich zweier Sammlungen COV COUNT Schätzung Zwei Sammlungen mit verschiedener Grundlage (Registerbriefe, Volltext); die Zahlen sind nur im Verhältnis zum Bestand vergleichbar.
H2 Bitte und Antwort ACT LOCUS PARTY Schätzung Verbindet zwei gelesene Handlungen über Personen und Zeit; ein Fehler in einer der beiden bricht die Antwort.
H3 Worüber Bittsteller sonst schrieben ACT TOPIC PARTY Schätzung Handlung und Thema sind beide modellgelesen; die Fehler multiplizieren sich.
I1 Erschließungsgrad COV exakt Zeigt, wo Lücken sind; selbst frei von Inferenz.
I2 Tabellen der Sammlung COV exakt Nennt vorhandene Tabellen; sagt nichts über ihre Qualität.
I3 Bauprotokoll der Erschließung — exakt Gibt das Protokoll des Aufbaus wieder.
K1 Was die Edition über einen Gegenstand sagt SCAN FTS OCR Beleg Findet Stellen der Herausgeber, deren Text die Suchwörter enthält; ungescannte Kommentarseiten und andere Wortformen fehlen.
K2 Was die Edition zu einem Brief sagt CITE SCAN OCR Untergrenze Zeigt die Stellen, die den Brief nach der Lesung des Modells anführen; eine Anführung ohne Datum oder Namen wird nicht aufgelöst.
K3 Kommentar zum Briefwechsel zweier Personen CITE LINK SCAN Untergrenze Stellen, die Briefe zwischen beiden Personen anführen; Briefe mit nicht aufgelöster Partei fehlen.
K4 Welche Briefe ein Kapitel anführt CITE SCAN Untergrenze Die Briefe, die ein Abschnitt anführt; auf fehlenden Seiten des Abschnitts angeführte Briefe fehlen.
K5 Im Register verzeichnete, nicht edierte Briefe COV SEG PARTY Untergrenze Registereinträge ohne zugeordneten edierten Text; ein edierter Brief, dessen Registereintrag nicht gefunden wurde, lässt seinen Eintrag hier fälschlich erscheinen.