Author Disambiguation Page

Issue #1988 open
Jens Illig
created an issue

Verlinkung & Disambiguierung {.c1}

In den Postlisten werden de Links hinter den Autorennamen eines Posts geändert auf: http://www.biblicious.org/pubauthor/<authorName>?publication=<hash>&user=<user>

  • <authorname> is a string that consist of lastName + “, “ + firstname, as rendered by PersonNameUtils.serializePersonName(PersonName)
  • <hash> is an interhash (for community posts) with prefix 1 or an or an intrahash with prefix 2 for other posts
  • when an intrahash is used then <user> i set to the owner of the post

this URL is internally rewritten (by urlrewrite.xml) to : http://www.biblicious.org/persondisambiguation?name=<authorName>&publication=<hash>&user=<user>&role=aut

Der hinter der URL liegende Controller prüft, ob die Publikation bereits einer Personen-Entität zugeordnet ist.

  • falls ja, folgt ein (temporary) redirect auf die Personenseite http://www.biblicious.org/person/<personId>/<personName>&publication=<hash>&user=<user>&role=aut.\ Resource Hash, User und Rollenname werden dabei noch mitgegeben um die Resource, über die man zum Autor gelangt ist, anzuzeigen und so Fehlzuordnungen berichtigen zu können.\ Aufgrund der <personId> ist <personName> eigentlich nicht mehr nötig, wird aber zur besseren Lesbarkeit für den Nutzer und für eventuell bessere Zuordnungen in Suchmaschinen dennoch angegeben.
  • falls nein, wird eine Disambiguierungsseite gerendert (meta info: noindex, follow)\ Oben auf der Seite steht der BibTex Eintrag des Post des Users (bei Angabe von intrahash+user in der URL) , sonst der Titel des Goldstandard-Posts zum interhash in der URL (ersatzweise des eigenen Post mit dem interhash, ganz ersatzweise erstbester)\ darunter “mehrere Personen kommen in Betracht”, gefolgt von einer Liste im Format Nachname, Vorname, Akad. Grad, sowie Ort, Jahr und Titel des Höchsten Abschlusses (dies sind die (Personen, Publikations)-Paare aus der Tabelle pub_person mit qualifying > 50, passendem Nach- und Vornamen, wobei bei Publikationen mit abgekürzten Vornamen eine Präfixsuche mit “<Initial>%” gemacht wird ). Auch Personen ohne Publikation werden gelistet (entnommen aus der Tabelle pub_person mit allen sim_hashes null). Klickt man auf einen Autor aus der Liste, erscheint ein modales Fenster, das fragt, ob die gewählte Person als Autor (bzw entsprechend dem role parameter) markiert werden soll, oder ob die Person einfach nur angezeigt werden soll. Zusätzlich gibt es eine Option “andere Person”. Diese öffnet einen Modaldialog zur Auswahl einer Person in einem autocompletion Dialog. Gesucht und angezeigt werden Einträge der Form Nachname, Vorname, Akad. Grad gefolgt von Ort, Jahr und Titel des Höchsten Abschlusses (aus der pub_person tabelle). Darunter gibt es noch einen Button “neue Person anlegen”. Diese führt zu einem (hidden) form submit mit POST Anfrage auf http://www.biblicious.org/person/new/<personName> mit den Parametern publication=<hash>&user=<user>&role=aut wobei personId zunächst auf “new” steht (wird von urlrewrite.xml umgeschrieben auf http://www.biblicious.org/person?personName=<personName>&publication=<hash>&user=<user>&role=aut&action=add der Parameter personId fehlt und der Integer im command wird null)