Documentazione
Come è codificato il corpus, come si leggono le edizioni, come contribuire. Lo stato di salute della validazione TEI è riportato a parte: Salute del corpus →.
Modello di codifica¶
Le edizioni sono codificate in TEI P5 con uno
schema personalizzato dichiarato in schemas/libretto.odd.
Lo schema impone una struttura in <div type="act"> →
<div type="scene"> e tre tipologie di unità
all'interno di ogni scena: <sp> (battute), <stage>
(didascalie), <lg> (gruppi di versi).
Elementi obbligatori
- <teiHeader>
- Titolo, autore, data, luogo, editore, codificatore (
<respStmt>) e licenza. - <sourceDesc> / <witness>
- Almeno un testimone con segnatura della biblioteca depositaria.
- <listPerson>
- I personaggi del dramma con id stabili (referenziabili da
@whosulle battute). - <castList>
- I personaggi nella forma in cui appaiono sulla pagina, con descrizione e (dove disponibile) interprete (
<actor>). - <facsimile>
- Solo per le edizioni con scansioni: una superficie per pagina con
@xml:id="page_NNNN".
Elementi opzionali
Quando presenti, vengono estratti e renderizzati: <metDecl>
(sistema metrico dichiarato), <personGrp> (cori
e gruppi), <listPlace>, <listRelation>,
<set> (ambientazione globale), <titlePage>
(frontespizio), e i paragrafi della dedica nell'<front>.
Convenzioni del corpus
Le tre edizioni curate dagli encoder (Cinna, Il ricco d'un giorno, Talismano) condividono un modello di codifica comune. La descrizione che segue riassume le scelte adottate; ciascun TEI sorgente le implementa in modo coerente.
Tipologia di edizione
Edizioni critiche: il testo è il risultato di un
processo ecdotico, non una mera trascrizione. Non si rappresenta la
topografia della pagina (s lunghe, abbreviazioni, layout originale);
la correzione di errori meccanici manifesti è silenziosa e i criteri
editoriali sono dichiarati nel <teiHeader> sotto
<editorialDecl>/<correction>.
Gerarchia strutturale
<div1 @type="act">
└── <div2 @type="scene">
├── <head>
├── <stage @type="mixed">
└── <div3 @type="recitative|aria|chorus|ensemble">
I sottotipi ammessi per <div3 @type="ensemble">
includono duet, trio, quartet,
finale.
Battute (<sp>)
<sp @who="#character">
<speaker>Name</speaker>
<l> … </l>
</sp> Quando una battuta è pronunciata simultaneamente da più
personaggi, @who elenca tutti gli xml:id separati da
spazio (es. @who="#cinna #servilia"); nello
<speaker> i nomi compaiono in tondo, separati
da virgola.
Versi (<l>) — attributi
@met- Forma metrica del verso: numero arabo seguito da
p(piano),t(tronco) os(sdrucciolo). Es.:7p,11t,8s. Si può usare il numero senza suffisso quando si vuole indicare il tipo metrico generico (utile in combinazione con@real). @real- Misura reale del verso quando differisce da quella nominale (versi ipermetri o ipometri).
@part- Verso spezzato fra più battute:
I(initial),M(medial),F(final). Le porzioniMeFnon incrementano la numerazione del verso (la portano le porzioniI).
Rima e gruppi di versi
@rhymesul blocco aria/coro:<div3 @type="aria" @rhyme="ABBC-DEDE-FGHC">- Rima inline:
<rhyme @label="A">parola_finale</rhyme> - Strofe:
<lg>
Didascalie (<stage>)
Tre posizioni:
- Inline al verso quando si riferiscono a
quel verso:
<l>… <stage @type="delivery">…</stage></l> - Fra le battute quando descrivono la
progressione generale dell'azione:
<stage @type="mixed">…</stage> - Uscite di scena, dentro
<sp>ma fuori dal verso:<stage @who="#x" @type="exit">Parte.</stage>
Simultaneità di battuta
Quando due o più personaggi pronunciano simultaneamente versi
parzialmente o totalmente differenti, si usa @synch
sul verso: il verso "spina" porta un xml:id (es.
v14a) e il verso simultaneo lo riferisce
(@synch="#v14a"). I versi corrispondenti si
differenziano nella numerazione con una lettera minuscola
(@n="14a", @n="14b").
Le porzioni M/F dei versi spezzati e i
versi marcati con @synch non incrementano la
numerazione progressiva.
Raggruppamenti di versi (<spGrp>)
Indicazioni come "a 2", "a 3", "a 4" presenti nelle stampe sono
codificate con <spGrp @type="a_2">,
"a_3", ecc. Non implicano di per
sé simultaneità di pronuncia: questa è espressa separatamente
tramite @synch sul verso.
Convenzioni xml:id
- Testimoni: prime due lettere del luogo +
anno. Es. Vienna 1788 →
VI88; London 1798 →LO98. - Personaggi: nome in tondo, lettere
minuscole (es. Perillo →
perillo). - Versi:
v+ numero +i/m/f(se presente) + un progressivo numerico in arabo preceduto da.se più ancore ricorrono in uno stesso verso.
Descrizione bibliografica dei testimoni
Per i testimoni a stampa si adotta <biblFull>
all'interno di <sourceDesc>/<listWit>/<witness>:
è la struttura più adatta a una descrizione bibliografica
completa di una stampa secentesca o settecentesca.
Una deviazione TEI: <move @onStage>
In Il ricco d'un giorno l'attributo @onStage
su <move> non indica un'azione che ha luogo
sulla scena, bensì — in associazione con @who — la
presenza di uno o più personaggi sulla scena senza specificarne
il momento di entrata (altrimenti espresso, quando possibile,
dall'attributo @entrance). Si tratta di un uso
locale che si discosta dal default TEI.
Annotazioni d'apparato
Le edizioni sorgenti non contengono <app>/<lem>/<rdg>:
l'apparato è prodotto in standoff dalla pipeline di confronto,
separatamente dai testi codificati. Vedere il file
schemas/libretto.odd per la specifica completa.
Come leggere le edizioni¶
Ogni edizione del corpus si apre in una vista di lettura a colonna singola. Quando l'edizione ha facsimile associato, sulla destra compare un pannello con le scansioni della stampa consultabili in zoom (powered by OpenSeadragon).
Convenzioni tipografiche
- Endecasillabi (versi pieni): rientro standard.
- Settenari e versi più brevi: rientro maggiore (la cosiddetta scalinata: i versi corti vengono indentati visivamente sotto i lunghi).
- Battute corali: speaker label in maiuscoletto, leggermente in corsivo.
- Arie: in corsivo, marcate con un'etichetta « — Aria — » iniziale.
- Didascalie: in corsivo grigio, centrate o inline a seconda del tipo.
- Versi spezzati (sticomitia): le due metà di un endecasillabo pronunciate da personaggi diversi vengono allineate sulla stessa baseline.
Sincronizzazione testo / facsimile
Per le edizioni con scansioni, scorrendo il testo il pannello
facsimile cambia automaticamente alla pagina corrispondente
(basato sui riferimenti @facs="#page_N" codificati
nei <sp> sorgenti). Cliccando una pagina nel
selettore, la lettura scorre alla prima battuta di quella pagina.
Il pulsante ⇄ flottante in basso a destra disabilita la
sincronizzazione per ispezionare pagine indipendenti.
Permalink
Ogni verso è dotato di un permalink univoco, accessibile
cliccando sul glifo che appare sostando sul verso stesso col
puntatore. Il permalink restituisce un'ancora del tipo
#l_a1_s1_001 usabile per le citazioni puntuali.
Contribuire¶
Il corpus accoglie nuove edizioni codificate in TEI P5 conformi
alla ODD del progetto. La procedura completa, con convenzioni di
denominazione, layout dei file e modalità di fallimento silente
comuni, è in docs/CONTRIBUTING.md.
Versione breve
- Sistemare il TEI in
corpus/{slug}/{filename}.xml; le scansioni incorpus/{slug}/images/page_NNNN.png. - Registrarlo in
_manifest.yamlsottoeditions:+ aggiungerne l'id alla lista del testo padre sottotexts:. - Eseguire
npm run check:manifestper verificare la consistenza. - Eseguire
npm run build:data(enpm run build:facsimilesse ci sono scansioni). - L'edizione comparirà a
/{lang}/corpus/{id}.
Pratiche da evitare
- I file
src/data/editions/*.jsonsono generati ma committati (per visibilità delle diff). Non modificarli a mano. - Lo stesso vale per
CITATION.cff(rigenerato dascripts/generate_citation.py) esrc/data/_manifest.json. - Le scansioni in
public/iiif/sono in.gitignore: non committarle, vengono prodotte localmente dabuild:facsimiles.
Changelog¶
v0.1.0 — pre-release
- Pipeline TEI → JSON funzionante per tutte le 6 edizioni del corpus (Cinna di Da Ponte, Cinna di Anelli, Il ricco d'un giorno, le tre stesure del Talismano).
- Vista di lettura singola con frontmatter (frontespizio, dedica, personaggi, ambientazione, testimoni) e sincronizzazione facsimile bidirezionale per le edizioni con scansioni.
- Confronto a tre vie del Talismano con codifica della provenienza (8 codici) e allineamento intertestuale del Cinna (Anelli ↔ Da Ponte).
- Convenzioni di codifica del corpus documentate (gerarchia
<div1>/<div2>/<div3>, attributi@met/@real/@part, simultaneità@synch, spostamento di siglum nel testimone biblFull). - Pagina Salute del corpus: validazione TEI con regole Schematron + controlli Python (broken refs, sigla mancanti, dichiarazioni non referenziate).
- ORCID e affiliazioni dei curatori (Pacchin, Scarponi, Malavasi, Di Nicola, Chiarini) e generazione automatica di
CITATION.cffdal manifest. - Ricerca a testo pieno con Pagefind. Suite di test (pytest sulla pipeline).
- Pagine Progetto e Documentazione consolidate (questa).
Lavori in corso (verso v1.0)
- Indici trasversali (persone / luoghi / arie): pagine nascoste dalla navigazione finché l'indicizzatore non gestisce i riferimenti inline a
<placeName>e non deduplica le forme chiuse interne agli ensemble. - Pannello di rete dei personaggi (Cytoscape).
- Calibrazione Bertalign per gli allineamenti paraphrastic.
- Deposito DOI Zenodo per ogni edizione e per il sito.
- Edizione bilingue (Da Ponte / inglese o tedesco) sul modello del confronto attuale.
- Audit accessibilità (WCAG 2.1 AA) e prestazioni (Lighthouse).