Wikidata:Primary sources tool/nl

This page is a translated version of the page Wikidata:Primary sources tool and the translation is 100% complete.

De hulpmiddel voor primaire bronnen maakt een workflow mogelijk voor gegevensdonaties aan Wikidata, waar Wikidata-editors gegevens die aan de gemeenschap worden aangeboden, kunnen bekijken, bewerken of weigeren. De workflow is geïntegreerd in Wikidata.

Probeer het eens

  1. ga naar uw gadgets;
  2. vink het item Primary Sources aan (sectie Wikidata-centric) en druk op de knop Save onderaan de pagina;
  3. klik in de linkerzijbalk op het tandwielpictogram, naast de link Random Primary Sources item;
  4. selecteer een gegevensset, zoals strephit-confident, soweego of freebase;
  5. u kunt het hulpmiddel op 3 manieren testen:
    1. de link Primary Sources list in de zijbalk (sectie Tools)
      • klik op de knop Laden voor een snel inzicht van de inhoud van de dataset;
      • Voeg optioneel een eigenschaps-id in om instructies te filteren;
    2. de link in de zijbalk Random page toont een item dat moet worden beheerd;
    3. een item naar keuze.

NB: Wikidata-gadgets zijn geschreven in JavaScript, dus zorg ervoor dat u de uitvoering ervan in uw browser toestaat.

Voorstel voor een verbetering van de hulpmiddelen voor de primaire bronnen

De eerste en huidige versie van het hulpmiddel primaire bronnen (PST) is afkomstig van de donatie van Freebase door Google.[1] Op basis van de feedback van de gemeenschap die is verzameld sinds de implementatie als Wikidata-gadget, stelt het [2][3][4] StrepHit team hier een radicaal wijziging voor, wat zal leiden tot de volgende versie van het hulpmiddel.

 
Beta-versie van het hulpmiddel

Hoe er rekening mee dat alle in dit document verwezen mock-ups toegankelijk zijn op phab:M218.

Versie 1 code basis

  • Back-end: geschreven in C++, met SQL-opslag, geïmplementeerd als een webservice via REST API's;[5]
  • Front-end: geschreven in JavaScript, gerealiseerd als Wikidata gadget.[6]

Doelen

Het hoofddoel is om het hulpmiddel zelfvoorzienend te maken. Om dit te bereiken, wordt de hoogste prioriteit gegeven aan:

  • Webstandaarden;
  • stabiliteit, d.w.z. keuzes gedreven door het Wikidata beleid stabiele interfaces;[7]
  • adoptie van programmeertalen door de Wikimedia-gemeenschap.

Bovendien moet het hulpmiddel ook de voorkeur worden bij data releases door derde partijen providers.[8] Dit maakt een standaard releaseprocedure belangrijk.

Workflow gebruiker

De gebruiker kan een nieuwe verklaring die door het hulpmiddel wordt voorgesteld goedkeuren of weigeren:

  1. gegeven een item pagina, de voorgestelde verklaring wordt onderstreept met een blauwe achtergrond;
  2. de gebruiker kan het goedkeuren of verwerpen door op de bijbehorende links te klikken;
  3. De pagina wordt vervolgens bijgewerkt met de nieuwe verklaring in het goedkeuren.

Op identieke wijze kan het hulpmiddel nieuwe referenties voorstellen voor een bestaande verklaring:[9]

  1. de nieuwe referentie is gemarkeerd met een blauwe achtergrond;
  2. de gebruiker kan het goedkeuren of afwijzen door op die bijbehorende link te klikken;
  3. de gebruiker kan ook een voorbeeld knopinfo zien die laat zien wat de bron is;[10][11]
  4. als de dataset fijnmazige herkomstinformatie bevat, bijvoorbeeld het tekstfragment waar de voorgestelde verklaring is geëxtraheerd,[12] wordt in de preview-knopinfo dat exacte stukje informatie gemarkeerd;[13]
  5. Als de interactie tussen de front-end en de back-end niet soepel verloopt, verschijnt er een knopinfo met een waarschuwingsbericht.[14]

Primary Sources configuratie

  1. Wanneer de gebruiker klikt op het tandwielpictogram   naast de link Willekeurige primaire bronnen (zie het onderstaande gedeelte) in het hoofdmenu in de linkerzijbalk, wordt een modaal venster geopend;[15][16][17]
  2. de gebruiker kan zoeken en selecteren welke dataset te gebruiken;
  3. essentiële informatie wordt getoond, namelijk Dataset beschrijving, Ontbrekende verklaringen en Aantal verklaringen;
  4. de gebruiker kan de nieuwe instellingen opslaan of annuleren.

Willekeurig primaire bronnen item

  1. De gebruiker kan naar een willekeurig item met voorgestelde verklaringen springen door op de link Willekeurige primaire bronnen in het hoofdmenu in de linkerzijbalk te klikken;
  2. het item wordt willekeurig gekozen uit de datasets die zijn geselecteerd in de Configuratie primaire bronnen.

Primaire bronnen bekijken

  1. De gebruiker kan door de voorgestelde verklaringen gegroepeerd naar eigenschappen bladeren, door op de juiste link van de eigenschap onder het menu voor het bekijken van primaire bronnen in de linker zijbalk te klikken;
  2. de gebruiker kan teruggaan naar de bovenkant van de pagina door te klikken op de link Terug naar boven rechts onder het menu Bladeren door primaire bronnen in de linkerzijbalk.

Hulpmiddel voor het filteren

Een vergelijkbare workflow is van toepassing op een op filters gebaseerd hulpmiddel in het menu Hulpmiddelen van de linkerzijbalk.

  1. Wanneer de gebruiker op de link Filter Primaire bronnen klikt, wordt een modaal venster geopend;[18]
  2. De gebruiker kan een tabel met voorgestelde verklaringen met eventuele refernties bekijken door op verschillende manieren filters te bouwen:
    • Domein van interesse : de gebruiker begint een domein te typen waarin hij geïnteresseerd is en krijgt automatisch aanvullen op basis van eenvoudige beperkingen, meestal de eigenschap instance of (P31). Maak bijvoorbeeld een lijst van alle items die een chemical compound (Q11173) zijn;
    • Eigenschap : de gebruiker begint met het typen van een eigenschap waarin hij geïnteresseerd is en krijgt automatisch aanvullen op basis van eigenschapslabels. Dit filter toont dan alleen voorgestelde verklaringen met de gegeven eigenschap. Maak bijvoorbeeld een lijst van alle date of birth (P569);
    • SPARQL Query : dit filter is bedoeld voor power users en accepteert willekeurige SPARQL-query's;
    • Brontaal : toont alleen verklaringen in de geselecteerde taal;
    • Dataset : laat de gebruiker een of meer specifieke datasets kiezen om te gebruiken, vergelijkbaar met Configuratie primaire bronnen.

Na het opbouwen van de filters, laat het hulpmiddel een tabel met verklaringen zien, waar de gebruiker suggesties kan goedkeuren of verwerpen, na een preview van de referentie bron, volgens de sectie "User workflow". De goedkeuring of afwijzing van de actie kan worden geblokkeerd als de bron voorziening niet wordt geopend.[19]

Architectuur

 
Algemeen architectuurvoorstel voor het hulpmiddel Wikidata Primary sources versie 2, gebaseerd op StrepHit

Back-end implementatie

Gegevensformaat

Het hulpmiddel accepteert nu datasets die in QuickStatements (Q20084080) zijn geserialiseerd. Hoewel het inderdaad een zeer compact formaat is, handig om grote datasets te uploaden, is het volledig niet-standaard: de enige beschikbare documentatie is opgenomen in de QuickStatements-servicepagina zelf.[20] Daarom voorzien we de ondersteuning van stabiele formaten voor zowel de zelfredzaamheid van het project als een gestandaardiseerde workflow voor gegevensdonatie. Toch behouden we de QuickStatements-ondersteuning.

Datasets van externe providers moeten worden geserieerd in RDF en het Wikidata RDF-datamodel volgen.[21] We denken dat dit de meest standaard manier is om twee redenen:

  1. RDF is een volwassen web standaard, een W3C-aanbeveling sinds 1999;[22]
  2. Het Wikidata RDF-exportformaat is stabiel.[23]

Hoofdcomponent

Gezien deze stellingen is een Wikidata Query Service[24]-instantie geschikt voor de back-end, omdat deze:

  • een RDF triple store gebruikt, d.w.z. Blazegraph als opslagengine;[25]
  • er wordt beweerd een stabiele Wikidata publieke API te zijn;[26]
  • is geschreven in Java, waarschijnlijk een meer geadopteerde programmeertaal in vergelijking met de huidige implementatie in C++;
  • faciliteiten heeft om datasets te uploaden in Wikidata RDF dumpformaat;[27]
  • API's beschikbaar stelt voor toegang tot gegevens via SPARQL, met name handig voor zowel het domeinfilter als de functies van het querytekstvak.[28]

Het belangrijkste hulpmiddel zal volledige verklaringen ondersteunen, terwijl het filtergebaseerde hulpmiddel moet worden gevoed met echte verklaringen.

Opname API (ingestion)

De API Ingestion is verantwoordelijk voor de interactie met derde gegevensleveranciers. De inkomende datasets worden eerst "gevalideerd" tegen het Wikidata RDF-gegevensmodel. Het zal vervolgens de volgende faciliteiten voor datasets bieden:

  • uploaden;
  • actualisatie;
  • verwijderen.

Herstel API (curation)

De API Curation is verantwoordelijk voor de interactie met Wikidata-gebruikers, met 2 belangrijkste diensten. Het zal de aanvragen voor toevoeging voorstellen en de afgewezen voorstellen in de back-end opslagmarkering markeren.

Front-end implementatie

Het belangrijkste doel van zelfredzaamheid is om te voorkomen dat de front-end wordt gebroken wanneer een wijziging wordt aangebracht in de gebruikersinterface van Wikidata. Om dit te bereiken, wordt de huidige gadget een MediaWiki extensie voor Wikibase (Q16354758). Een grote refactoring van de codebasis is essentieel en zal:

  • inclusief eenheidstests zijn. Fouten worden verwacht in het geval van wijzigingen in de Wikidata-gebruikersinterface en zullen de Wikidata-build breken in plaats van de tool te breken;
  • een duidelijk onderscheid maken tussen de interactie met de back-end en de gebruikers;
  • de HTML-sjablonen poorten.

De code zal worden opgesplitst in de 2 typische componenten van een MediaWiki-extensie, geschreven in respectievelijk PHP en JavaScript.

PHP component

De PHP-component is alleen verantwoordelijk voor de configuratie van de extensie. De rest wordt afgehandeld door de JavaScript-component.

JavaScript component

De JavaScript-component zal:

  • de uiteindelijke sjabloonweergave opbouwen. Meer specifiek wordt het sjabloon indien nodig toegevoegd aan de bestaande item verklaringen;
  • omgaan met de interactie met de gebruiker. Meer in het bijzonder zal het:
    • de back-end van het hulpmiddel op de hoogte stellen van goedkeuring of afwijzing van een voorgestelde claim of referentie;
    • een goedgekeurde claim of verwijzing aan Wikidata toevoegen via de MediaWiki API;[29]
  • de functies implementeren die worden beschreven in sectie "Workflow gebruiker".

Referenties