persNamer 1.2: un número VIAF, nueve ficheros de autoridades

7 de septiembre de 2026·
Clément Godbarge
Clément Godbarge
· 3 min de lectura
post Humanidades digitales

persNamer nació como una simple comodidad: se le daba un número VIAF y devolvía una entrada <person> en TEI, con su etiqueta <persName> para anotar el texto. Nada más, y la entrada era, además, bien escueta: un nombre, dos fechas, un identificador. La versión 1.2, que sale hoy, sigue haciendo una sola cosa, pero esta vez la hace a conciencia: la entrada ya merece conservarse.

Qué contiene ahora una entrada de persona

Empecemos por el nombre. En un clúster de VIAF cada biblioteca participante aporta su propia forma, y el persNamer de antes se conformaba con la primera que le salía al paso. Si le pedía Voltaire, le contestaba « فولتير، »: la forma árabe, con su coma final y, de propina, un xml:id vacío. Ahora la herramienta cuenta las formas de todo el clúster y se queda con aquella en la que coinciden los registros fuente; las demás la siguen como <persName type="variant">, por orden de frecuencia. Las fechas se normalizan (1572-08-00 queda en 1572-08) y se escriben por partida doble, como texto y en un atributo @when, que es el único que mirará cualquier tratamiento del fichero que sepa leer una fecha. El sexo y las descripciones vienen también, siempre que VIAF los facilite.

Y luego está lo que yo más echaba en falta. Todos los identificadores que VIAF vincula a la persona, por schema:sameAs o por sus propios identificadores de fuente, quedan recogidos cada uno en un <idno>: BnF, GND, Library of Congress, SUDOC, Wikidata, ISNI, BNE, LIBRIS, NDL. Entra un número y salen nueve catálogos. Para una personografía, eso es lo que separa una lista de nombres de un nodo en la red de los datos de autoridad.

<person xml:id="pers-teligny-c">
  <persName>Charles de Téligny</persName>
  <birth when="1535">1535</birth>
  <death when="1572-08-24">1572-08-24</death>
  <sex value="M">M</sex>
  <idno type="VIAF">314802260</idno>
  <idno type="BNF">16133360</idno>
  <idno type="Wikidata">Q1868249</idno>
  <idno type="ISNI">0000000071126808</idno>
</person>

De los retazos a la personografía

Imprimir XML en el terminal está bien cuando se trata de una persona; una edición tiene cientos. Por eso persNamer acepta ahora varios números VIAF de una tacada, deja respirar cortésmente a VIAF entre petición y petición, guarda en caché lo que ya ha descargado y, con --merge, mete las entradas nuevas directamente en el <listPerson> de un fichero TEI ya existente. A los registros que ya estaban se los reconoce por su número VIAF y conservan su xml:id; los identificadores nuevos se cotejan con el fichero y, si coincidieran con alguno, reciben un sufijo (-2, -3); al final el fichero se reindenta, no sin haber puesto antes a salvo una copia .bak.

persnamer --merge edition.xml 314802260 36925746

Un detalle que conviene saber: la partícula del apellido ya no entra en el identificador por defecto, así que Charles de Téligny pasa a ser pers-teligny-c, y no pers-deteligny-c. Si su proyecto ya se había acostumbrado a la forma antigua, --keep-particle la devuelve; y quien prefiera no depender de los nombres tiene --id-format viaf, que produce pers-viaf-314802260.

Cuestiones de intendencia

El script se ha convertido en un paquete hecho y derecho, con su comando persnamer: se instala en una línea (uv tool install o pipx) o se prueba sin instalar nada (uvx). Veintiséis pruebas lo comprueban sobre respuestas de VIAF grabadas —sin necesidad de red— y la integración continua las repite de Python 3.9 a 3.13; la salida se valida contra TEI P5. Licencia Apache 2.0, como hasta ahora.

Lo que sigue sin saber es dónde nació alguien ni a qué se dedicaba: el RDF de los clústeres de VIAF no dice nada de lugares ni de oficios. Los registros enlazados de la BnF y de la GND, en cambio, sí lo saben, y ahora tiene usted sus números.

Código y documentación en GitHub.

Clément Godbarge
Autores
Profesor de Humanidades Digitales
Clément Godbarge es profesor de Humanidades Digitales en la Universidad de St Andrews. Su investigación gira en torno a la ciencia y el arte de gobernar en la Europa de la Edad Moderna. En su libro de próxima publicación examina cómo los médicos integrados en las cortes de Francia e Italia del siglo XVI se promocionaron como expertos políticos de un nuevo género. Su investigación ha contado con el apoyo de la Fundación Andrew W. Mellon, la Comisión Fulbright, la Renaissance Society of America y la Universidad de Harvard.