Openlibrary: Der Versuch, einige Autoren zusammenzuführen, schlägt fehl

Erstellt am 31. Juli 2019  ·  50Kommentare  ·  Quelle: internetarchive/openlibrary

Beschreibung

Insbesondere Ludwig van Beethoven (doppelte Autorendatensätze, die über Wikidata identifiziert wurden) https://openlibrary.org/authors/merge?key=OL127077A&key=OL4357202A&key=OL7272005A&key=OL7480477A

schlägt fehl

Ich vermute, dass es etwas damit zu tun hat, dass ein Element in der Liste eine Weiterleitung ist oder darauf verweist - muss untersucht werden.

Relevante URL?

Beispiele:

| Fertig | Person | Link zusammenführen | Fehler |
| --- | --- | --- | - |
| X | Ludwig van Beethoven | https://openlibrary.org/authors/merge?key=OL127077A&key=OL4357202A&key=OL7272005A&key=OL7480477A | ?? |
| X | Apollonius Rhodius | https://openlibrary.org/authors/merge?key=OL325079A&key=OL6050345A | {'message': 'expected /type/author, found /type/delete', 'at': {'property': 'authors', 'key': '/books/OL20525473M'}, 'value': '/authors/OL6050346A', 'error': 'bad_data'} |
| X | DS Margoliouth | https://openlibrary.org/authors/merge?key=OL1751871A&key=OL4335758A&key=OL3277479A&key=OL2832645A&key=OL3126854A&key=OL6010579A | {'message': 'expected /type/author, found /type/redirect', 'at': {'property': 'authors', 'key': '/books/OL20457133M'}, 'value': '/authors/OL5989450A', 'error': 'bad_data'} |
| X | Gaius | https://openlibrary.org/authors/merge?key=OL134502A&key=OL4675154A&key=OL6002146A | {'message': 'expected /type/author, found /type/delete', 'at': {'property': 'authors', 'key': '/books/OL20496191M'}, 'value': '/authors/OL6036269A', 'error': 'bad_data'} |
| X | Carl Gustav Jung | https://openlibrary.org/authors/merge?key=OL17370A&key=OL2677210A | {'message': 'expected /type/author, found /type/redirect', 'at': {'property': 'authors', 'key': '/books/OL12811553M'}, 'value': '/authors/OL2660553A', 'error': 'bad_data'} |
|

  • [X]
  • | Michel-Jean Sedaine | https://openlibrary.org/authors/merge?key=OL735423A&key=OL6011794A | ?? |
    |
  • [X]
  • | Friedrich August Wolf | https://openlibrary.org/authors/merge?key=OL4789371A&key=OL6011897A | ?? |
    |
  • [X]
  • | Gottfried Hermann | https://openlibrary.org/authors/merge?key=OL357738A&key=OL5999368A | ?? |
    |
  • [X]
  • | Friedrich Wimmer | https://openlibrary.org/authors/merge?key=OL4277168A&key=OL6039003A | ?? |
    |
  • [X]
  • | Philipp Karl Buttmann | https://openlibrary.org/authors/merge?key=OL2557977A&key=OL5998002A | ?? |
    |
  • [X]
  • | Hermann Diels | https://openlibrary.org/authors/merge?key=OL133119A&key=OL6011208A | ?? |
    |
  • [X]
  • | Jean-François de La Harpe | https://openlibrary.org/authors/merge?key=OL1271659A&key=OL5996409A | ?? |
    |
  • [X]
  • | Lope de Vega | https://openlibrary.org/authors/merge?key=OL80534A&key=OL2693344A | ?? |
    |
  • [X]
  • | Carl Gustav Jung | https://openlibrary.org/authors/merge?key=OL17370A&key=OL2677210A | ?? |
    |
  • [X]
  • | Gilbert Murray | https://openlibrary.org/authors/merge?key=OL125439A&key= | ?? |

    Erwartung

    Zusammenführen sollte passieren

    Vorschlag & Einschränkungen

    Was ist die vorgeschlagene Lösung / Implementierung? Gibt es einen Präzedenzfall für diesen Ansatz, der anderswo erfolgreich ist?

    Interessengruppen

    Data @hornc Detail 3 Work In Progress Bug merging

    Alle 50 Kommentare

    Es gibt viele AMZ-bezogene Musiknotationsbücher aus dem Jahr 2008, für die das isbn bei OCLC eine Sackgasse zu sein scheint, oder sogar die Urheberschaft wird dem Verlag bei amz falsch zugeschrieben. Für einige dieser BWB kann ein Cover von isbn gefunden werden, aber es scheint die gleichen Mistmetadaten zu haben. Wir müssen entweder ein breiteres Netz in andere Datenbanken einbinden oder sie einfach irgendwie unter Quarantäne stellen und darauf vertrauen, dass echte Bücher wieder auftauchen.
    Siehe Autor Isagani Intano für einige Beispiele.

    Der Problemautor ist
    https://openlibrary.org/authors/OL4357202A/Ludwig_Van_Beethoven
    die nicht in den Master OL127077A verschmelzen

    Aufspüren des wahrscheinlichen Problemelements:
    OL11122403M
    https://openlibrary.org/books/OL11122403M/Piano_Literature_of_the_17th_18th_and_19th_Centuries_Books_6B

    Über die Benutzeroberfläche sieht dies nicht einmal wie ein LVB-Element aus, da die Benutzeroberflächendaten aus der Arbeit https://openlibrary.org/works/OL15097322W/Piano_Literature_of_the_17th_18th_and_19th_Centuries_Books_6B stammen

    Wenn Sie sich jedoch die leere Cover-Kachel der Edition ansehen, wird eine erweiterte Liste der Autoren angezeigt, die aus den Metadaten der Edition stammt: https://openlibrary.org/books/OL11122403M.json, die eine Liste der Autoren enthält ...

    authors: [ { key: "/authors/OL47923A" }, { key: "/authors/OL4357202A" }, { key: "/authors/OL2779314A" }, { key: "/authors/OL126336A" }, { key: "/authors/OL3338683A" }, { key: "/authors/OL2779506A" }, { key: "/authors/OL38111A" }, { key: "/authors/OL3551619A" } ],

    OL47923A ist eine Weiterleitung ... an Mozart https://openlibrary.org/authors/OL5017833A/Wolfgang_Amadeus_Mozart

    Hier gibt es also ein paar Probleme:

    1. Autoren zusammenführen verschluckt Fehler, ohne anzugeben, was oder wo das Problem liegt.
    2. Die Benutzeroberfläche der Editionsseite verbirgt Autoren, die speziell in den Editionsmetadaten aufgeführt sind, was manchmal von der Arbeit abweichen kann.

    und vielleicht 3. ein Faktor, der das Debuggen noch schwieriger macht: # 183

    und 4. Warum brechen Merge-Autoren überhaupt daran? Warum kann es nicht einfach die Autoren der betroffenen Elemente aktualisieren und fortfahren?

    ANS: Ich denke, es bezieht sich auf # 1445, wo sich die Daten einiger Elemente in einem Zustand befinden können, in dem ihre Autoren umgeleitet werden, aber das erneute Speichern einen Fehler auslöst. <<< Dies scheint die Hauptursache für eine Reihe dieser Umleitungsprobleme zu sein.

    Eine frühere PR, die versucht hat, ein ähnliches Problem zu lösen: # 2186 Ich muss untersuchen, ob dieser Fix an einem anderen Ort angewendet werden muss oder ob es eine Lücke im Fix gibt. In jedem Fall fehlt etwas.

    Die Ansichtsseite des Autors verschluckt den Fortschritt der Autorenzusammenführung und Fehler, und ich denke, dass dieses Problem auf anderen Seiten auftritt, auf denen früher eine Fehler-Flash-Nachricht angezeigt wurde.

    Beim Debuggen sehe ich, dass es eine Nachricht div gibt
    https://github.com/internetarchive/openlibrary/blob/17cd1728e21a8dafd3dffcebc93dee9a534c37ec/openlibrary/templates/type/author/view.html#L92 -L118

    Das ist als class.hidden gestaltet: display: none !important; in page-user.css

    Es gibt Skripte, die versuchen, diese versteckten Unter-Divs zu .fadeIn() . Ich denke, das !important verhindert das Ausbleichen, aber wenn ich es entferne, werden sie dauerhaft sichtbar.

    @jdlrobson , irgendwelche Ideen oder Tipps? Ich bin daran interessiert, dass dies funktioniert, um diese Funktion zum Zusammenführen von Autoren aufzuräumen, da sie mich blockiert und Bibliothekare betrifft, aber ich habe das Gefühl, dass dieses hidden -Problem möglicherweise auch die Ursache für andere fehlende Fehlermeldungen ist.

    @hornc @jdlrobson Das !important ist sehr wahrscheinlich verwandt; Siehe den Thread ab https://github.com/internetarchive/openlibrary/pull/2223#issuecomment -513393435

    Entschuldigung für den Schmerz (wieder). Das! Wichtige wurde in 0f9030c1047d5a337fc292a09085d7c353c85424 hinzugefügt.

    Das Problem mit der Nichtverwendung von! Wichtig ist, wenn Sie haben

    <div class="hidden button">foo</div>
    

    und eine Regel gleicher Spezifität:

    .button { display: inline-block; }
    

    Der Knopf ist nicht wirklich gegen die Erwartungen verborgen.

    Ich habe versucht, uns mehr in eine BEM-Richtung zu bewegen, damit diese Spezifitätsregeln mehr zum Schmerz werden.

    Der folgende grep ergibt 6 Ergebnisse:

    removeClass('hidden');
    

    und 4 für:

    addClass('hidden');
    

    In diesem Fall ersetzen:

    class="hidden"
    

    mit

    style="display: none;"
    

    würde funktionieren.

    Andere Dinge, die wir versuchen könnten:

    .button[style] { display: block;}
    

    (setzt voraus, dass das Stilattribut beim Ausblenden entfernt wird, was möglicherweise nicht der Fall ist.

    @cdrini Ich weiß, dass Sie zu diesem Thema eine Meinung haben. Was denken Sie?

    @jdlrobson Ich bin mit der Logik nicht einverstanden, ich bin mit der Ausführung nicht einverstanden: P display: none scheint mir eine gute Lösung zu sein (nicht das style Ding). Ich mag es nicht, wie wir mit Fehlern in der Produktion Schlag auf Schlag spielen. Wir sollten entweder 1) sicherstellen, dass alle hidden -Klassen in display: none geändert werden (da dies die implizite Bedeutung vor dem Commit vor 6 Monaten war; dies müsste manuell erfolgen) oder 2) Entfernen Sie die !important und führen Sie später (1) aus. Ich mag es nicht, dass wir uns in einem Zwischenzustand befinden, in dem wir die Bedeutung der Klasse hidden geändert haben, ohne zu überprüfen, was davon abhängt.

    Ja, ich habe die Ausführung vor 6 Monaten durcheinander gebracht :( 321d120 sieht dann wie das Update hier aus, vorausgesetzt, es kann getestet werden und funktioniert.

    Hoffentlich wird der Schlag eines Maulwurfs nachlassen. Ich würde das gerne nicht tun, aber ohne zuverlässig zu wissen, welche Vorlagen Abandonware sind und welche noch aktiv sind, und die Tatsache, dass der JS sowohl über Vorlagen als auch über JS verteilt ist, ist die Aufgabe ein wenig überwältigend und demoralisierend (ich habe sie ausgegeben) 30 Minuten, um zu versuchen, Workflows zu überprüfen, ohne Fortschritte zu machen, und jetzt nur traurig zu sein. Ich denke, dies ist vorerst der beste Ansatz. Es ist einfach und schnell zu beheben, sobald das Problem erkannt wurde. Als Unterbrecher dieser Dinge markieren Sie mich bitte, wenn Sie sie sehen.

    Zwei weitere Beispiele aus Wikidata-Zusammenschlüssen wurden hinzugefügt. Ich kann bestätigen, dass das kosmetische Problem der versteckten Fehlermeldung behoben ist und die Meldung zum Zusammenführungsfehler dem Benutzer korrekt angezeigt wird, die zugrunde liegenden Daten- und / oder Zusammenführungsprobleme jedoch weiterhin bestehen.

    Obwohl der Fehler "Arg. Das hat nicht funktioniert" angezeigt wird, fehlen die (wichtigen) Fehlerdetails. Im Fall DS Margoliouth legen sie die genaue Aufzeichnung fest, über die es unglücklich ist:

    {'message': 'expected /type/author, found /type/redirect', 'at': {'property': 'authors', 'key': '/books/OL20457133M'}, 'value': '/authors/OL5989450A', 'error': 'bad_data'}

    Da wir Editionsautoren grundsätzlich ignorieren (und es wahrscheinlich egal ist, ob es sich um einen widersprüchlichen / falschen Autor handelt, solange es sich nicht um eine Weiterleitung handelt), erscheint es mir ein wenig albern, wenn eine Autorenzusammenführung fehlschlägt.

    Wir sollten entweder:

    • Beheben Sie den Fehler stillschweigend und aktualisieren Sie den Datensatz mit dem Umleitungsziel, oder
    • Ignorieren Sie die Autoren der Ausgabe insgesamt

    Als Randnotiz: Wenn in der Fehlermeldung "Wir haben es notiert" steht, klingt es so, als wäre es an einem Ort protokolliert, an dem jemand es bemerkt und behebt. Wird es protokolliert? Überprüft jemand das Protokoll?

    Der Fehler bei der Zusammenführung von @ Camillo-Pellizzari war:

    {'message': 'expected /type/author, found /type/delete', 'at': {'property': 'authors', 'key': '/books/OL20496191M'}, 'value': '/authors/OL6036269A', 'error': 'bad_data'}

    Der Autorendatensatz wurde bereits 2017 von @horncs CleanupBot gelöscht, da er für keine Werke verwendet wurde, aber dennoch für diesen Editionsdatensatz verwendet wurde. Da es keine Möglichkeit gibt, Editionsautoren zu bearbeiten, kann dies nicht ohne die Unterstützung eines Programmierers bereinigt werden.

    In diesem Beispiel wurde ein einzelnes Werk fälschlicherweise dem OL2677210A Carl Jung zugeordnet: "The Workbook" ist ein 3-bändiges kommerzielles Kunstverzeichnis, von dem "Portfolio" Band 2 ist. Es ist gut, dass der Autor Fehler zusammengeführt hat, obwohl dies passiert ist ( auch) dunkel.

    @ Seabelis
    Autsch! Das sind 59 Arbeitsaufzeichnungen und zwei Autorenaufzeichnungen für eine mehrbändige Arbeit mit verschiedenen Ausgaben, Kommentaren und Übersetzungen. Wir brauchen wirklich ein Wiki, wie man solche Dinge am besten strukturiert, aber das ist eine separate Diskussion. In der Zwischenzeit habe ich alle Arbeitsdatensätze von letzterem manuell geändert, um stattdessen den früheren Autorendatensatz zu verknüpfen.

    Danke dafür. Ein Benutzer reichte dies ein, so dass ich das über die Arbeiten nicht einmal bemerkt hatte.

    Ich habe die beiden Gaius-Autorendatensätze zusammengeführt, aber es gibt einen dritten, der ebenfalls zusammengeführt werden sollte, aber bei der Zusammenführung fehlerhaft ist: https://openlibrary.org/authors/OL6002146A/Gaius

    Auch nach dem Verschieben aller Werke von OL6002146A nach OL134502A ist https://openlibrary.org/authors/OL134502A/Gaius?merge=true&duplicates=OL6002146A immer noch fehlerhaft, und die Weiterleitung wird nicht erstellt. Bizarr....

    Nochmals: https://openlibrary.org/authors/merge?key=OL357738A&key=OL5999368A kann nicht zusammengeführt werden

    Nochmals: https://openlibrary.org/authors/merge?key=OL4277168A&key=OL6039003A kann nicht zusammengeführt werden

    Nochmals: https://openlibrary.org/authors/merge?key=OL2557977A&key=OL5998002A kann nicht zusammengeführt werden

    Nochmals: https://openlibrary.org/authors/merge?key=OL133119A&key=OL6011208A kann nicht zusammengeführt werden

    Nochmals: https://openlibrary.org/authors/merge?key=OL1271659A&key=OL5996409A kann nicht zusammengeführt werden

    Hmm, die problematischen Autorendatensätze wurden anscheinend alle am 27. Oktober 2008 von Import Bot erstellt. Andere Kuriositäten, die Hinweise sein könnten: Sie enthalten ein veraltetes "id =" - Feld, das durch direkte Bearbeitung dieses Autorendatensatzes entfernt wird, aber immer noch kann nicht zusammengeführt werden, das ist also nicht das Problem. Das nachgestellte Leerzeichen nach dem Autorennamen kann ein Faktor sein oder in einigen Fällen das Feld "persönlicher Name =".

    Seufz, diese Liste wird lang :( Danke @ Camillo-Pellizzari; zur Liste hinzufügen.

    Hinzugefügt: +1:

    Beachten Sie, dass dies wahrscheinlich durch https://github.com/internetarchive/openlibrary/issues/2553 behoben wird

    @ Camillo-Pellizzari
    Dies riecht nach einem weiteren Erbe unserer verstümmelten Diakritiker. Ich habe es geschafft, die meisten redundanten Autorendatensätze mit Émile Egger unter https://openlibrary.org/authors/OL4557532A/ zusammenzuführen, aber dieser letzte Datensatz unter https://openlibrary.org/authors/OL6003522A ist hartnäckig.

    @ Camillo-Pellizzari
    Ein Hinweis!!!!
    Ich habe die 16 Mayhew-Werke manuell in den Hauptautorendatensatz verschoben, aber ein Orphan Edition-Datensatz bleibt bestehen, vielleicht zwischengespeichert. Die Autoren werden immer noch nicht zusammengeführt. Diese eine Ausgabe hat den fehlerhaften Pseudowork-Pfad https://openlibrary.org/works/OL20459197M, wobei der alte Autor im Editionsdatensatz angegeben ist, was im Widerspruch zum korrekten Autor steht, der im Arbeitsdatensatz https://openlibrary.org/works/OL2788965W angegeben ist .
    Es gibt keine Möglichkeit zu wissen, welche dieser Kuriositäten die Ursache für den Zusammenführungsfehler ist, aber wenn ein Administrator sie optimieren kann, kann dies aufschlussreich sein:

    {"Verleger": ["Chatto & Windus"], "Klassifikationen": {}, "Untertitel": "Illustrationen des Humors, Pathos und der Besonderheiten des Londoner Lebens", "Titel": "Londoner Charaktere", "Notizen" ":" 1e uitg. (1874) traf de aanduiding "Von Henry Mayhew und anderen Schriftstellern" (Vgl. Toole-Stott, Nr. 491.). "," Identifiers ": {}," ocaid ":" londoncharacter00gilbgoog " "," covert ": [9182853]," created ": {" type ":" / type / datetime "," value ":" 2008-10-27T03: 19: 48.641147 "}," language ": [{" Schlüssel ":" / language / eng "}]," last_modified ": {" type ":" / type / datetime "," value ":" 2019-12-11T23: 49: 48.914594 "}," latest_revision ": 8 , "Schlüssel": "/ books / OL20459197M", "Autoren": [{"Schlüssel": "/ Autoren / OL5239874A" }, {"Schlüssel": "/ Autoren / OL1331553A"}], "Veröffentlichungsdatum": "1881 "," publish_places ": [" London "]," works ": [{" key ":" / works / OL2788965W "}]," type ": {" key ":" / type / edition "}," oclc_numbers ": [" 67342886 "]," Revision ": 8}

    Ich werde dies untersuchen, wenn ich Zeit habe, Code zu schreiben, um dies automatisch zu tun: https://openlibrary.org/authors/OL4280920A/Federico_Garc%C3%ADa_Lorca?merge=true&duplicates=OL6887222A , OL4122786A, OL3973784A, OL6250916A, OL , OL3210186A, OL7313848A, OL7306164A, OL7327570A, OL7386673A, OL7392312A, OL7416035A, OL7687411A

    @seabelis Weitere https://openlibrary.org/authors/merge?key=OL4586796A&key=OL3206959A gefunden

    In allen Ausgaben sind zwei Autoren aufgeführt, OL2629754A und OL3206959A, von denen die erste eine Weiterleitung ist .

    Natürlich können Editionsautoren nicht bearbeitet werden, daher kann dies nicht behoben werden. Ich dachte, ich könnte es hacken, indem ich die YAML https://openlibrary.org/books/OL13263866M.yml?m=edit bearbeite, aber kein solches Glück - Erlaubnis verweigert.

    Ich konnte die Autoren aus der verlinkten Ausgabe entfernen. https://openlibrary.org/books/OL13263866M/Relato_de_un_n%C3%A1ufrago?_compare=Compare&b=6&a=5&m=diff

    Ich denke, ich erinnere mich an ein anderes Gespräch, dass das Entfernen von Autoren aus Editionen nicht bevorzugt wird. Ich dachte, ich könnte einfach die Autoren aus der Ausgabe löschen und dann den gültigen Autor erneut anwenden, aber dies wirft einen Fehler auf.
    AttributeError: 'str' object has no attribute 'olid'

    Ich denke, ich erinnere mich an ein anderes Gespräch, dass das Entfernen von Autoren aus Editionen nicht bevorzugt wird.

    Das ist nicht meine Meinung. Da sie nicht bearbeitet werden können und nicht automatisch synchronisiert werden, sind sie meiner Meinung nach mehr Probleme als sie wert sind.

    Ich konnte die Autoren aus der verlinkten Ausgabe entfernen. https://openlibrary.org/books/OL13263866M/Relato_de_un_n%C3%A1ufrago?_compare=Compare&b=6&a=5&m=diff

    Konnten Sie dies über die Web-Benutzeroberfläche tun oder haben Sie eine der APIs verwendet?

    @tfmorris openlibrary-client über das Notizbuch @cdrini half mir beim Einrichten. Ich habe die Autoren der Ausgabe durch ein leeres Objekt ersetzt. Es ist die gleiche Art und Weise, wie ich zuvor Mitwirkende entfernt habe, als die Benutzeroberfläche nicht kooperierte. Ich bin mir nicht sicher, ob dies der beste Weg ist, aber ich konnte die Arbeit ohne den vorherigen Fehler bearbeiten.

    Ein weiterer, der der Liste hinzugefügt werden soll. https://openlibrary.org/authors/merge?key=OL4435020A&key=OL7214197A&key=OL7622813A

    Ich habe alle oben genannten Datenprobleme durchgearbeitet und behoben und die Zusammenführungen durchgeführt (einige haben ohne weitere Änderungen funktioniert, sie müssen an anderer Stelle behoben worden sein).

    Die genauen Fehler für jede Zusammenführung sind im HTTP 400-Ergebnis von merge.json sichtbar, das in einer Browser-Dev-Tools-Konsole angezeigt wird, z.

    {'message': 'expected /type/author, found /type/redirect', 'at': {'property': 'authors', 'key': '/books/OL13263870M'}, 'value': '/authors/OL2629754A', 'error': 'bad_data'}
    

    Diese Meldungen wurden früher auf der Seite mit den Zusammenführungsergebnissen angezeigt, um zumindest auf die Problemausgabe zu verweisen. Jetzt tun sie es nicht.

    Vielen Dank, @hornc .

    War diese Seite hilfreich?
    0 / 5 - 0 Bewertungen