TheaterEncyclopedie:Ontologie van de TheaterEncyclopedie/Multimedia

Uit TheaterEncyclopedie
Ga naar: navigatie, zoeken
Heb je vragen, opmerkingen of ideeën over deze pagina? Plaats ze op de Overlegpagina! (Wel eerst even inloggen...)

Inleiding

Naast het gebruik van foto's en affiches omvat de theatercollectie ook duizenden geluidsfragmenten en videoregistraties. Deze informatie is doorzoekbaar en beschikbaar via deze website van de theatercollectie (en binnenkort ook - deels - via Beeld & Geluid). Er zijn momenteel (2020) in totaal 5685 records publiek beschikbaar ("uitgevinkt") via de API ("webopac"). Het exacte aantal wisselt. Bron: e-mail Manon.

Om de vindbaarheid van deze multimedia ook via de TE te verbeteren, zal meta-informatie opgenomen worden in de semantische database van TE.

Op dit moment is informatie over foto's al (voor een deel) opgenomen en het lijkt logisch hierop verder door te ontwikkelen.

Doelstelling

Samengevat zijn de doelstelling voor dit project:

  • De informatie over multimedia te modelleren, uitgaande van de huidige informatie over foto's en zo mogelijk aansluitend bij andere (internationale) informatiemodellen.
  • (Meta)informatie over multimedia op de TE opslaan om zo eenvoudig doorzoekbaar te maken en multimedia te kunnen relateren aan personen, producties, theaters etc.
  • De multimedia toegankelijk te maken op de TE, zodat ze binnen de website kunnen worden weergegeven (zonder deze noodzakelijk te kopiëren naar de TE-wiki).

Inventarisatie

Informatie over foto's

Zie bijvoorbeeld Speciaal:Bekijken/Bestand: Amsterdam Stadsschouwburg 2008 2.jpg

Eigenschap Beschrijving Veldnaam adlib
Eigenschap:Objectnaam Manon: object_name
Eigenschap:Vervaardiger Auteur, fotograaf, ... Manon: creator + creator_role
Afgebeelde persoon Manon: content.person.name NB: Wordt niet semantisch opgeslagen
Eigenschap:Discipline discipline
Eigenschap:Onderwerp Onderwerp van de foto (vrije tekst?) Manon: = Trefwoord, wel een thesauruswoord in Adlib content.subject
Eigenschap:Productie Producent, indien een persoon (IsGeproduceerdDoor) OF Productie ??? Manon: association.person = geaccocieerde persoon/instelling, dus producent publisher OF performance.title ??? Manon: performance.title = Titel van gekoppelde productie
Eigenschap:Seizoen ?? Manon: Dit is ingevuld onder content.subject, komt dus bij het rijtje Trefwoorden
Eigenschap:Instelling Producent, indien een instelling Manon: zie eigenschap productie
Eigenschap:Repro-code Referentiecode adlib reproduction.reference
Eigenschap:CollectieDB Link naar de Collectiedatabase; weblink, geen api-link!

NB: Van veel afbeeldingen zijn geen semantische eigenschappen geregistreerd.

Informatie in Adlib voor gepubliceerde geluidsfragmenten

Veldnaam adlib Inhoud
notes notitie/opmerkingen: Korte beschrijving van het fragment Manon: op de collectiesite: annotatie
author.role waarden: auteur / uitvoerende / uitvoerende zang / vertaling / …. —> eigenschappen van “realisatie”
author.name verwijzing naar persoon betreffende author.role
discipline identiek aan eigenschap:discipline
lead_word Voorvoegsel (lidwoorden de, het, der, la, …) ; waar hoort dit bij? Titel? Manon: dit is idd het lidwoord van de titel, De - Het - Een worden in een eigen veld ingevoerd, daarna de rest vd titel
parent.title Behorend tot, onderdeel van, … zoiets? Manon: inderdaad onderdeel van, maar ik vraag me af of dit een relevante eigenschap is als je niet direct linkt met het record/audiobestand waar het dan onderdeel van is (koepel)
person.keyword.name Producent (Persoon of Instelling)
reproduction.reference Reprocode
title Titel
keyword.contents Onderwerp
publisher Uitgever (UitgegevenDoor)
performance.title Productie (titel)
search_year Jaar (van uitgave (??)) Manon: informatie uit year_of_publication: beter hieruit halen

Ontwerp

Keuze van import scenario

Er zijn verschillende scenario's mogelijk om de multimedia-informatie uit Adlib in de TE beschikbaar te maken:

  1. Kopiëren van bestanden naar de TE (vergelijkbaar met huidige Upload tool)
  2. Linking via de API van Adlib; twee varianten:
    • Mass import of (internal) semantic objects - Semantische (interne) objecten worden op een enkele pagina geïmporteerd o.b.v. een pointer file die beschikbaar is via de api van Adlib
    • Single page based import of semantic objects - Er wordt voor iedere multimedia object (file) een pagina aangemaakt op de TE, waarop de semantische informatie uit Adlib wordt geïmporteerd via de API (geen pointer file nodig).

Zie ook de proof-of-concept testen voor mass import, die zijn uitgevoerd (op Test-TE):

Zie ook de PoC voor de koppeling met Wikidata (nu operationeel voor Theaters):

Voor- & nadelen op een rij

Scenario Voordelen Nadelen Opmerkingen
Kopiëren
  • Technisch eenvoudig(st)
  • Transparant voor gebruiker
  • Past voor afbeeldingen binnen MW-architectuur
  • Zeer bewerkelijk voor gebruiker
  • Technisch inefficiënt (veel dubbele opslag)
  • Past voor andere media moeilijker binnen MW-architectuur
  • Problemen met synchronisatie / up to date houden informatie
Mass import api
  • Technisch efficiënt voor Adlib ("1 API-call")
  • Technisch efficient voor MW/TE ("1 pagina" voor import)
  • In combinatie met "pointer file": vastomlijnd importbestand
  • Technisch complex(er)
  • Bewerkelijk(er) voor ontwikkeling
  • Vergt strikte uniformiteit gegevens in Adlib
Single page import
  • Overzichtelijk/toegankelijk voor gebruiker: ieder bestand heeft een pagina
  • Eenvoudiger te verrijken met andere informatie
  • Eenvoudiger voor ontwikkeling
  • Flexibel aan te passen
  • "Proven technology" i.r.t. Wikidata
  • Technisch inefficiënt(er) voor Adlib ("veel API-calls")
  • Technisch inefficient(er) voor MW/TE ("pagina per object" voor import)
  • Bewerkelijk(er) voor gebruiker
NB: kan in principe ook in combinatie met "pointer file" worden geconfigureerd!

Voor de implementatie van Multimedia is de voorkeur (bij BM!!) scenario 3, dus aparte pagina's aanmaken voor ieder bestand. De argumenten zijn:

  • Technisch is MediaWiki / de TE voldoende schaalbaar; duizenden of tienduizenden bestanden toevoegen op deze manier is niet problematisch
  • Op basis van de ervaringen met het importeren van afbeeldingen uit Adlib, blijkt de informatie in de productiedatabase niet altijd uniform ("schoon"), hetgeen massaal importeren bemoeilijkt
  • De ontwikkeling met de koppeling met Wikidata blijkt functioneel en erg robuust
  • Er zijn mogelijkheden om pagina's op grote schaal aan te maken, zodat e.e.a. minder bewerkelijk wordt voor gebruikers (bijv. m.b.v. Tinbot of andere scripts)
  • Dit biedt mogelijkheden om (eenvoudig) informatie te verrijken, denk bijv. aan het toevoegen van transcripties, "quotes" / citaten, linkjes naar specifieke scenes of fragmenten. gerelateerde pagina's/onderwerpen etc. etc.

Gebruik van "Pointer file"

Een pointer file in Adlib is een bestand met de resultaten van een query (selectie van records en velden). Een pointer file kan als geheel worden gedownload via de website en kan bijvoorbeeld ook via de webopac (API) beschikbaar gesteld worden (in verschillende formaten: XML, CSV, ...). Het XML-formaat is geschikt als bron voor een massa-import van gegevens in de TE (met behulp van de MediaWiki-extensie "External Data". Het is ook mogelijk een specifiek record (object) uit een pointer file te selecteren, om met behulp van dezelfde extensie de velden/eigenschappen van een enkel record/object te importeren.

Het gebruik van een pointer file kan voor- en nadelen hebben, wanneer hij wordt gebruik voor het importeren van gegevens:

Voordelen Nadelen Opmerkingen
  • (Veel) snellere response op de API, bij grote aantallen records
  • Minder belastend voor het systeem Adlib (waarschijnlijk??)
  • Vastomlijnd, gecontroleerd bestand aan gepubliceerde gegevens
  • De XML output kan met XLTS op maat worden aangeboden (denk bijv. aan "lege velden")
  • Nieuwe records in Adlib moeten handmatig toegevoegd worden aan een "pointer file"
  • Records van verwijderde bestanden verdwijnen niet automatisch uit de pointer file (waarschijnlijk, check??)
    • NB: Inhoudelijke aanpassingen aan geselecteerde velden/records komen wel automatisch mee (check??)
  • Een pointer file kan per ongeluk worden verwijderd of aangepast

Openstaande vraag (van BM): kan de output van een query via de webopac ook gestroomlijnd worden m.b.v. XLTS??

Voorbeeld van request en response via de API voor de gehele pointer file 96:

https://servicetin.adlibhosting.com/te4/wwwopac.ashx?command=search&database=audiovisual&search=pointer%2096&output=xml&limit=10&startfrom=1&xmltype=grouped

NB: Output is gelimiteerd tot 10 records

Voorbeeld voor het ophalen van een enkel record uit een pointer file:

https://servicetin.adlibhosting.com/te4/wwwopac.ashx?command=search&database=audiovisual&search=pointer%2096%20and%20reproduction.reference=%27Repro-550001640.044-1%27&output=xml&limit=10&startfrom=1&xmltype=grouped

Voorbeeld met gefilterde velden van een enkel record:

https://servicetin.adlibhosting.com/te4/wwwopac.ashx?command=search&database=audiovisual&search=pointer%2096%20and%20reproduction.reference=%27Repro-550001640.044-1%27&output=xml&limit=10&startfrom=1&xmltype=grouped&fields=lead_word,title

Print resultaat:

<adlibXML>
<recordList>
<record priref="100000004" created="2007-08-17T01:58:00" modification="2018-08-28T05:03:02" selected="false">
<lead_word>'t</lead_word>
<title>Vermoeden; fragment</title>
</record>
</recordList>
<diagnostic>
<hits>1</hits>
<xmltype>Grouped</xmltype>
<first_item>1</first_item>
<limit>10</limit>
<dbname>document</dbname>
<dsname>avm</dsname>
<cgistring>
<param name="database">audiovisual</param>
</cgistring>
<xml_creation_time unit="mS" culture="en-US">0</xml_creation_time>
<response_time unit="mS" culture="en-US">74</response_time>
</diagnostic>
</adlibXML>

Ontwerp voor gekozen scenario

Uitgangspunten:

  • Aparte naamruimte (t.b.v. bewerkingsrechten, zoekfunctionaliteit): bijv. Multimedia:bestandsnaam.mp3 (en met alias: mm:bestandsnaam.mp3)
  • Paginatitel nog te kiezen, bijv. overeenkomstig:
    1. de titel (??) in Adlib (zoals bij foto's is toegepast?)
      • Voordeel: Leesbaar voor mensen
      • Nade(e)l(en): Waarschijnlijk niet altijd uniek, relatie Adlib niet eenduidig/eenvoudig
    2. de bestandsnaam (met extensie)
      • Voordeel: Unieke identificatie van het bestand
      • Nade(e)l(en): Moeilijk leesbaar voor mensen, relatie met producties/inhoud niet helder
    3. de reprocode
      • Voordeel: Eenduidige relatie met Adlib
      • Nade(e)l(en): Geen eenduidige relatie met bestand (er kunnen meer bestanden per Reprocode voorkomen!!)
    4. Combinatie van "titel" met bestandsnaam
    5. Combinatie van "titel" met Reprocode

Onderdelen:

Nader in te vullen

Voorbeeld importeren gegevens voor infobox mediabestand

Directe toegang tot de mediafile:
https://theatercollectie.uva.nl/media/550000214.001a.mp3
https://servicetin.adlibhosting.com/ .... ook hier bereikbaar?

File via de WebAPI (streamed?):
https://theatercollectie.uva.nl/webapi/wwwopac.ashx?command=getcontent&server=images&value=550000214.001a.mp3
https://servicetin.adlibhosting.com/te4/wwwopac.ashx?command=getcontent&server=images&value=550000214.001a.mp3

(Beperkte) media info via de WebAPI:
https://theatercollectie.uva.nl/webapi/wwwopac.ashx?command=getmediainfo&server=images&value=550000214.001a.mp3
https://servicetin.adlibhosting.com/te4/wwwopac.ashx?command=getmediainfo&server=images&value=550000214.001a.mp3

Opvragen record (ander bestand!!!) geeft (beperkt) aantal velden in XML:
https://servicetin.adlibhosting.com/te4/wwwopac.ashx?database=photo&limit=10&startfrom=1&output=xml&search=reference_number=%27Repro-550001640.044-1%27&xmltype=grouped

Definieren van "fields" geeft geen extra info
https://servicetin.adlibhosting.com/te4/wwwopac.ashx?database=photo&limit=10&startfrom=1&output=xml&search=reference_number=%27Repro-550001640.044-1%27&fields=documentation.title,discipline,priref,parent.title,notes,author.name&xmltype=grouped

Na het "aanzetten" van de fields is er meer beschikbaar (voorbeeld HB met pointerfile):
https://servicetin.adlibhosting.com/te4/wwwopac.ashx?command=search&database=audiovisual&search=pointer%2096&limit=10&startfrom=1
NB: database is nu "audiovisual"???

Nog geen compleet resultaat op een query voor enkel record
https://servicetin.adlibhosting.com/te4/wwwopac.ashx?database=photo&limit=10&startfrom=1&output=xml&q=reference_number=%27Repro-550001640.044-1%27&xmltype=grouped
https://servicetin.adlibhosting.com/te4/wwwopac.ashx?database=audiovisual&limit=10&startfrom=1&output=xml&q=reference_number=%27Repro-550001640.044-1%27&xmltype=grouped

Kan korter:
https://servicetin.adlibhosting.com/te4/wwwopac.ashx?database=photo&output=xml&q=reference_number=%27Repro-550001640.044-1%27&xmltype=grouped

Bovenstaande werkt alleen op de webapi die bedoeld is voor de TE; de webapi die bedoeld is voor het gebruikersportaal van de Theatercollectie heeft andere instellingen.

Werkt hier dus NIET:
https://theatercollectie.uva.nl/webapi/wwwopac.ashx?database=photo&limit=10&startfrom=1&output=xml&search=reference_number=%27Repro-550001640.044-1%27&xmltype=grouped

Beschikbare velden zijn:

  • Titel (<documentation.title>=<lead_word> + <title>)
  • Bestandsnaam (<image_reference>550001640.044.mp3</image_reference>)
  • Priref (<priref>145381</priref>)
  • Reprocode (<reference_number>Repro-550001640.044-1</reference_number>)


Voorbeelden pagina's

Technische / semantische ontwikkeling & vormgeving.

Voorbeelden van Multimediabestanden (audio): Categorie:Audiovisueel