Overzicht van onmogelijkheden: Difference between revisions
No edit summary |
No edit summary |
||
(28 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
= | = Onmogelijkheden = | ||
Sommige zaken zijn onmogelijk volgens de data modellering. Als een item een "Activiteit" is, dan moet die ook een "Activiteit type" hebben, bijvoorbeeld. Hieronder proberen we alle onmogelijkheden op te sommen, er een SPARQL query voor te verzinnen, en op die manier een lijstje krijgen van "foute" items, zodat we die kunnen corrigeren. | |||
Een andere aanpak moet ook mogelijk zijn, bv. via SHACL? | |||
Toon alle | == Activiteiten == | ||
Hieronder een bundeling van "onmogelijkheden" die te maken hebben met activiteiten op het algemene niveau. | |||
=== Overzicht van alle Items van het type Activiteit, met een vrije tekst activiteitstype === | |||
Toon alle activiteiten zonder activiteit type, maar wel met een een activiteit type (vrij), zodat dat vrije tekst veld gestructureerd kan worden. | |||
SELECT ?activiteit ?activiteitLabel ?activiteitType ?activiteitTypeLabel ?activiteitTypeVrijLabel | |||
WHERE { | |||
?activiteit <http://osloddt.wiki.opencura.com/prop/direct/P1> <http://osloddt.wiki.opencura.com/entity/Q1>; | |||
<http://osloddt.wiki.opencura.com/prop/direct/P49> ?activiteitTypeVrij. | |||
MINUS { ?activiteit <http://osloddt.wiki.opencura.com/prop/direct/P13> ?activiteitType }. | |||
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],nl,en" . } | |||
} | |||
=== Overzicht van alle Items van het type Activiteit, zonder enig activiteitstype === | |||
Alle activiteiten zouden getypeerd moeten zijn, liefst met een gestructureerd activiteitstype, of eventueel via een vrije tekst veld. We hebben een lijst nodig van activiteiten die noch een gestructureerd activiteitstype, noch een een vrije tekst activiteitstype hebben. | |||
SELECT ?activiteit ?activiteitLabel ?activiteitType ?activiteitTypeLabel | SELECT ?activiteit ?activiteitLabel ?activiteitType ?activiteitTypeLabel | ||
WHERE { | WHERE { | ||
?activiteit <http://osloddt.wiki.opencura.com/prop/direct/P1> <http://osloddt.wiki.opencura.com/entity/Q1>. | ?activiteit <http://osloddt.wiki.opencura.com/prop/direct/P1> <http://osloddt.wiki.opencura.com/entity/Q1>. | ||
?activiteit <http://osloddt.wiki.opencura.com/prop/direct/P13> ?activiteitType | MINUS { ?activiteit <http://osloddt.wiki.opencura.com/prop/direct/P13> ?activiteitType }. | ||
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],nl,en" . } | SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],nl,en" . } | ||
} | } | ||
==== Overzicht van alle | === Overzicht van Items met een "activiteit type", maar die niet "Is" "Activiteit" hebben === | ||
Als items getypeerd zijn met een bepaalde activiteitstype, dan moeten ze ook verplicht als "is" "activiteit" worden benoemd. We hebben daarom een lijst nodig van activiteiten met een activiteitstype, maar zonder "is" "activiteit". | |||
=== Overzicht van items die het object zijn van een statement met verb "activiteit type", maar niet "is" "activiteit type" hebben === | |||
Toon alle activiteiten met een activiteit type, maar het activiteit type is geen "activiteit type" (dit soort van "rogue" activiteit types zouden niet toegelaten mogen zijn). Dit is om te vermijden dat er items als "activiteit type" worden gekoppeld aan activiteiten zonder dat die items gekenmerkt zijn als activiteit type. Zo is er bijvoorbeeld een "podiumproductie" als type "werk", en is er een item "podiumproductie" als type "activiteit type". Je wil dat enkel het item podiumproductie dat "is" "activiteit type" gebruikt wordt als activiteit type. | |||
We hebben dus een lijst nodig van items die in een statement voorkomen met het Verb "activiteit type", maar die niet zelf "is" "activiteit type" hebben. | |||
=== Beeldende kunst === | |||
Sommige onmogelijkheden zijn specifiek voor activiteiten binnen een bepaalde discipline. Hier bekijken we onmogelijkheden in de beeldende kunsten. | |||
==== Tentoonstellingen of residenties zonder "kunstenaars" ==== | |||
Een beeldende kunst activiteit zonder een kunstenaar erbij is onmogelijk. We hebben dus een lijst nodig van activiteiten van het type solotentoonstelling, groepstentoonstelling, tentoonstelling of residentie die niet "gebracht worden" door iemand met de rol "kunstenaar". | |||
==== Tentoonstellingen of residenties zonder "locatie" ==== | |||
Een beeldende kunst activiteit vindt altijd wel ergens plaats. We hebben een lijst nodig van solotentoonstellingen, groepstentoonstellingen, tentoonstellingen en residenties die niet via de property "plaats" gelinkt zijn met een locatie. | |||
Het kan zijn dat dit veel problemen oplevert: door een legacy-beslissing zitten tentoonstellingen vaak in de databank met een "gebracht door" relatie naar een Organisator die de rol "locatie" opneemt. Dat zouden we best normaliseren. | |||
==== Groepstentoonstellingen in hetzelfde jaar en in dezelfde locatie of plaats, met gelijkaardige titels ==== | |||
Groepstentoonstellingen worden soms apart ingevoerd voor elke kunstenaar. Maar eigenlijk willen we dat er 1 groepstentoonstelling-item is, met daaraan alle deelnemende kunstenaars. We hebben dus een lijst nodig van groepstentoonstellingen die op dezelfde plek plaatsvinden, op hetzelfde moment, en waarvan de titel bovendien gelijkaardig is (case insensitive, misschien zelfs geen spaties, leestekens, fuzzy match, ...) | |||
==== Groepstentoonstellingen met maar 1 kunstenaar eraan ==== | |||
Het punt van een groepstentoonstelling is dat er meerdere kunstenaars aan meedoen, dus een groepstentoonstelling met maar 1 kunstenaar is verdacht. We hebben dus een lijst nodig van groepstentoonstellingen die "gebracht door" hebben met maar 1 item dat de rol van "kunstenaar" opneemt. | |||
==== Activiteiten van het type "beurs", maar niet gebracht door een Organisator van het type "Beurs" ==== | |||
Kunstbeurzen zijn een relatief afgebakende lijst. Zo een "Organisator" moet dus getypeerd worden als een [[Item:Q157549|Beurs]] We hebben dus een lijst nodig van Organisatoren die "gebracht door" opnemen bij activiteiten van het activiteit type "beurs", maar zelf niet "agent type" "beurzen" hebben. | |||
Deze lijst (https://osloddt.wikibase.cloud/wiki/Special:WhatLinksHere/Item:Q157549) zou dus een overzicht moeten geven van de kunstbeurzen. | |||
==== Activiteiten die onder tentoonstellingen vallen, maar niet op een Locatie of gebracht door een Organisator met het type "Tentoonstellingsruimte" ==== | |||
Tentoonstellingen worden georganiseerd door Organisatoren of Locaties die zichzelf als een tentoonstellingsruimte positioneren, en zouden dus dit type moeten krijgen. We hebben daarom een lijst nodig van Locaties of Organisatoren (die de rol (bij gebracht door) van locatie opnemen) die verbonden zijn aan tentoonstellingen, maar niet getypeerd worden als tentoonstellingsruimte. | |||
=== | === Podiumkunsten === | ||
Sommige onmogelijkheden zijn specifiek voor activiteiten binnen een bepaalde discipline. Hier bekijken we onmogelijkheden in de podiumkunsten. | |||
==== | ==== Podiumvoorstellingen die niet verwijzen naar een podiumproductie (activiteit) ==== | ||
Een podiumvoorstelling laten we niet zweven zonder een overkoepelend object aan te bieden. Doorgaans zijn podiumvoorstellingen geen eenmalige gebeurtenissen. Ze worden herhaald opgevoerd, en daarom moeten we kunnen verwijzen naar een overkoepelende activiteit via "is onderdeel van". | |||
We hebben een lijst nodig van podiumvoorstellingen die niet "is onderdeel van" hebben en waarbij dat niet linkt naar een activiteit van het type podiumproductie (activiteit). | |||
==== Podiumproducties (activiteit) die niet verwijzen naar een podiumproductie (werk) ==== | |||
Podiumproducties (activiteit) zijn overkoepelend objecten om uitvoeringen van die podiumproductie mee te bundelen. Het kan gaan over een seizoenslogica, of over een vaste samenstelling van de cast, of ... Maar ook daarboven is er een object nodig om die items te bundelen: een "herneming" in een nieuw seizoen, een "herneming" met een hele andere cast, een vertaling, ... Daarom is er ook een Werk object voor podiumproducties. | |||
We hebben dus een lijst nodig van podiumproducties (activiteit) die niet "gebruikt werk" hebben en verwijzen naar een item van het type podiumproductie (werk). | |||
=== Muziek === | |||
Sommige onmogelijkheden zijn specifiek voor activiteiten binnen een bepaalde discipline. Hier bekijken we onmogelijkheden in de muziek. | |||
==== | ==== Tracks zonder een "Muziekuitgave" ==== | ||
Tracks (opnames, phonogrammen, ...) kunnen eigenlijk niet op zichzelf bestaan in onze databank. Ze moeten "gereleased" worden via een muziekuitgave (die dan een bepaald concept (een single, een album, ...) en format (op cd, op vinyl, ...) heeft). We hebben daarom een lijst nodig van Tracks die niet "is onderdeel van" een item van het type muziekuitgave zijn. | |||
==== | ==== Concerten zonder Locatie ==== | ||
Concerten moeten altijd plaatsvinden op een bepaalde locatie. Door een legacy redenering zijn er heel wat concerten die geen "plaats" zullen hebben. Die moeten we in een lijst brengen en bekijken hoe we die een locatie geven, eventueel de overeenkomstige Organisator dubbelen om als Locatie te kunnen opereren. | |||
==== | ==== Locaties van concerten die het type Organisator hebben zijn niet toegestaan ==== | ||
Concerten vinden plaats op locaties en worden gebracht door organisatoren. Maar door een legacy redenering zou het kunnen dat er locaties (via property plaats) gekoppeld worden aan een concert die van het type Organisator zijn. Dat zou niet mogen. We moeten daarom een lijst krijgen van items die gekoppeld zijn aan concerten via "plaats" en van het type Organisator zijn. | |||
==== | ==== Concerten zonder artiesten ==== | ||
Net zoals tentoonstellingen kunnen concerten niet plaatsvinden zonder een item dat gelinkt is met "gebracht door" van het type "Uitvoerder". We hebben dus een lijst van concerten zonder een gebracht door statement waarbij het object van het type uitvoerder is. | |||
== | == Realisatoren == | ||
Hieronder een bundeling van "onmogelijkheden" die te maken hebben met realisatoren (uitvoerders en organisatoren) in het algemeen. | |||
=== Overzicht van alle Actoren, met een vrij agent type, maar zonder gestructureerd type === | |||
Actoren (realisatoren, uitvoerders, organisatoren, ...) hoeven niet altijd een agent type te krijgen. Maar als ze een vrij agent type hebben gekregen, dan is het wel best dat dat ook genormaliseerd wordt met een gestructureerd type. We hebben daarom een lijst nodig van items die "is" "uitvoerder" of "organisator" zijn, een vrij agent type hebben, maar geen gestructureerd agent type. | |||
SELECT ? | PREFIX kp:<https://osloddt.wikibase.cloud/entity/> | ||
PREFIX kpp:<https://osloddt.wikibase.cloud/prop/direct/> | |||
SELECT DISTINCT ?actor ?actorLabel ?typeLabel | |||
WHERE { | WHERE { | ||
? | ?actor kpp:P1 ?is. | ||
FILTER (?is IN (kp:Q58543, kp:Q58545)). | |||
OPTIONAL {?actor kpp:P41 ?type. }. | |||
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],nl,en" . } | SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],nl,en" . } | ||
} | } | ||
==== Overzicht van | === Actoren met dezelfde naam === | ||
Het is onvermijdelijk dat er mensen of organisaties met dezelfde naam zijn. In het beste geval voorzien we in de description een kleine disambiguering, maar in eerste instantie kunnen we daar niet naar kijken, omdat de description informatie bevat over de bron, en die kan misleidend zijn. In eerste instantie hebben we daarom een lijst nodig van labels (van items die "is" "uitvoerder" of "organisator" zijn, en die meerdere keren voorkomen). | |||
=== Overzicht van items die het object zijn van een statement met verb "actor type", maar niet "is" "actor type" hebben === | |||
We moeten hygiënisch zijn bij de manier waarop we agent types toekennen aan uitvoerders of organisatoren. Zo is "kunstenaar" een agent type, maar ook apart een "rol". Het mag niet voorkomen dat mensen de rol "kunstenaar" gebruiken als object van een statement met als verb "agent type". We hebben dus een lijst nodig van items waarbij in het statement agent type het object niet van het type "uitvoerdertype" of "organisatortype" is | |||
=== Items die het object zijn van "gebracht door" maar niet "is" "Uitvoerder" of "Organisator" hebben === | |||
Over alle activiteiten heen zijn de items die gelinkt kunnen worden via "gebracht door" verplicht van het type "uitvoerder" of "organisator. We hebben een lijst nodig van items waarbij "gebracht door" gecombineerd wordt met items die niet dat type hebben. | |||
=== Items die het object zijn van "gebracht door" en "is" "Locatie" hebben mogen niet bestaan === | |||
Activiteiten die via "gebracht door" gerelateerd zijn met andere items mogen die relatie niet gebruiken om te verwijzen naar Locaties. Dat zijn fysieke plekken, architecturale entiteiten, ... en die hebben geen "agency" om iets te brengen. We hebben dus een lijst nodig van items waarbij "gebracht door" gebruikt wordt in combinatie met een item van het type Locatie. | |||
== Locaties == | |||
=== Locaties die ook Realisatoren zijn === | |||
Er is een risico om locaties (fysieke plekken, architecturale entiteiten, ...) te "confounden" met Organisatoren (organisaties die activiteiten organiseren). We volgen de logica van OSLO en wikidata om die apart te houden. Natuurlijk vallen die soms samen (de AB is zowel een architecturale entiteit als een concertorganisator), maar we zorgen er toch voor dat het aparte items zijn, met aparte Q-nummers. We kunnen linken tussen de Locatie en de Realisator via "werkt samen met". | |||
We hebben een lijst nodig van items die "is" zowel een Locatie én Organisator/Uitvoerder zijn. Die moeten dan gesplitst worden. | |||
=== Festivals zijn geen locaties === | |||
We moeten streng zijn dat festivals geen architecturale entiteiten zijn, en dus niet als "Locatie" mogen gedefinieerd worden. We hebben een lijst nodig van items met "festival" ofzo in de naam en die toch "is" "locatie" zijn. | |||
Daarnaast moeten we ook consistent zijn dat items die een agent type dat met "festival" te maken heeft ook niet gelijktijdig "is" Locatie zijn. We hebben dus ook een lijst nodig van items met een agent type dat "festival bevat" én ook "is" locatie zijn. | |||
=== Kunstbeurzen zijn geen locaties === | |||
Idem als bij festivals. | |||
=== Locaties kunnen niet het object zijn van "gebracht" door === | |||
Dit is vermoedelijk een andere insteek voor wat er hoger ook al gezegd werd, maar locaties zijn architecturale entiteiten die geen activiteiten kunnen brengen. Daarom mogen ze niet voorkomen als object van een "gebracht door" property. We hebben dus een lijst nodig van activiteiten waarbij in het gebracht door statement heb object toch een Locatie is. | |||
== | == Generiek == | ||
Een aantal onmogelijkheden zijn echt wel generiek. | |||
=== Overzicht van alle Items, zonder "IS" statement === | |||
Er zouden in de databakn geen items mogen zitten die niet via "is" een bepaalde categorie toebehoren. We hebben dus een lijst nodig van items die geen "is" statement hebben. | |||
=== Consequentie tussen verbs en de objecten die eraan worden meegegeven === | |||
Bij een werkwoord hoort vaak een bepaald item type, bv. een statement met verb "url type" moet verwijzen naar een item dat "is" "url type". We zouden moeten lijstjes maken van items waarin statements zitten met een incongruentie tussen wat het werkwoord wil zien, en het "is" type van het object. | |||
==== Overzicht van items die het object zijn van een statement met verb "url type", maar niet "is" "url type" hebben ==== | ==== Overzicht van items die het object zijn van een statement met verb "url type", maar niet "is" "url type" hebben ==== | ||
==== Overzicht van items die het object zijn van een statement met verb " | ==== Overzicht van items die het object zijn van een qualifying statement met verb "rol", maar niet "is" "Rol" hebben ==== | ||
==== Overzicht van items die het object zijn van een statement met verb " | ==== Overzicht van items die het object zijn van een qualifying statement met verb "gebruikt werk", maar niet "is" "Werk" hebben ==== | ||
==== Overzicht van | ==== Overzicht van items die het object zijn van een qualifying statement met verb "activiteit type", maar niet "is" "Activiteit Type" hebben ==== | ||
==== Overzicht van items die het object zijn van een qualifying statement met verb "land", maar niet "is" "Land" hebben ==== | |||
==== Overzicht van items die het object zijn van een qualifying statement met verb "plaats", maar niet "is" "plaats" hebben ==== | |||
Overzicht van | ==== Overzicht van items die het object zijn van een qualifying statement met verb "beginplaats", maar niet "is" "plaats" hebben ==== | ||
==== | ==== Overzicht van items die het object zijn van een qualifying statement met verb "eindplaats", maar niet "is" "plaats" hebben ==== | ||
==== | ==== Overzicht van items die het object zijn van een qualifying statement met verb "locatie", maar niet "is" "Locatie" hebben ==== | ||
==== Overzicht van items die het object zijn van een qualifying statement met verb "is onderdeel van", maar niet "is" "Activiteit" hebben ==== | |||
=== | ==== Overzicht van items die het object zijn van een qualifying statement met verb "onderdeel type", maar niet "is" "Onderdeeltype" hebben ==== | ||
==== | ==== Overzicht van items die het object zijn van een qualifying statement met verb "werk type", maar niet "is" "Werktype" hebben ==== | ||
==== | ==== Overzicht van items die het object zijn van een qualifying statement met verb "concept", maar niet "is" "Concept" hebben ==== | ||
==== | ==== Overzicht van items die het object zijn van een qualifying statement met verb "format", maar niet "is" "Format" hebben ==== | ||
==== | ==== Overzicht van items die het object zijn van een qualifying statement met verb "samenwerkingstype", maar niet "is" "Samenwerkings type" hebben ==== | ||
=== | === Overzicht van alle plaatsen zonder land === | ||
Plaatsen zouden niet zonder een land indicatie mogen zijn. We hebben een lijst nodig van plaatsen zonder een land. | |||
=== | === Plaatsen in hetzelfde land met dezelfde naam === | ||
Hoewel het kan voorkomen dat in hetzelfde land een plaats is met dezelfde naam is het goed om er daar dan een disambiguatie aan toe te voegen in de description. | |||
== | == Werken == | ||
Hieronder een bundeling van "onmogelijkheden" die te maken hebben met werken in het algemeen. | |||
=== | === Overzicht van alle Werken, zonder enig werk type === | ||
Om te vermijden dat een werk-item wordt aangemaakt zonder het typeren willen we checken of items liefst een gestructureerd werk type hebben, of eventueel een werk type in vrije tekst. | |||
We hebben een lijst nodig van items "is" "werk", maar zonder een "werk type" of "werk type (vrij)" statement. | |||
SELECT | PREFIX kp:<https://osloddt.wikibase.cloud/entity/> | ||
PREFIX kpp:<https://osloddt.wikibase.cloud/prop/direct/> | |||
SELECT ?work ?workLabel ?typeLabel | |||
WHERE { | WHERE { | ||
?work kpp:P1 kp:Q58528. | |||
?work kpp:P48 ?type. | |||
?type kpp:P1 kp:Q58529. | |||
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],nl,en" . } | |||
} | } | ||
=== Overzicht van alle Werken met een werk type in vrije tekst, maar niet gestructureerd === | |||
Idealiter zijn werken met een werk type in vrije tekst toch ook voorzien van een gestructureerd werk type. We hebben dus een lijst nodig van items "is" "werk", met een "werk type (vrij)" statement, maar zonder een gestructureerd werk type erbij. | |||
=== Podiumproducties (activiteit) die niet verwijzen naar een podiumproductie (werk) === | |||
(zie ook hoger) | |||
Podiumproducties van het type "activiteit" (dus opgevoerd tijdens een bepaalde periode) verwijzen idealiter terug naar een podiumproductie als werk, om eventuele connecties tussen de producties te kunnen modelleren. We hebben dus een lijst nodig van items "is" podiumproductie (activiteit), maar die niet "gebruikt werk" hebben en verwijzen naar een podiumproductie (werk). | |||
=== Werken die niet gebruikt worden in activiteiten === | |||
Deze wikibase is in principe geen databank voor kunstwerken. Ze kunnen hier summier beschreven worden om een activiteit meer context te geven, maar werken zonder linken naar een activiteit zijn te vermijden. We kunnen dit oplossen door het werk ofwel te verwijderen, of expliciet te linken aan een tentoonstelling, podiumproductie, opname, concert, ... | |||
We hebben in elk geval een lijst nodig van werken die niet gebruikt worden in items "is" "activiteit". |
Latest revision as of 09:36, 22 June 2023
Onmogelijkheden
Sommige zaken zijn onmogelijk volgens de data modellering. Als een item een "Activiteit" is, dan moet die ook een "Activiteit type" hebben, bijvoorbeeld. Hieronder proberen we alle onmogelijkheden op te sommen, er een SPARQL query voor te verzinnen, en op die manier een lijstje krijgen van "foute" items, zodat we die kunnen corrigeren.
Een andere aanpak moet ook mogelijk zijn, bv. via SHACL?
Activiteiten
Hieronder een bundeling van "onmogelijkheden" die te maken hebben met activiteiten op het algemene niveau.
Overzicht van alle Items van het type Activiteit, met een vrije tekst activiteitstype
Toon alle activiteiten zonder activiteit type, maar wel met een een activiteit type (vrij), zodat dat vrije tekst veld gestructureerd kan worden.
SELECT ?activiteit ?activiteitLabel ?activiteitType ?activiteitTypeLabel ?activiteitTypeVrijLabel WHERE { ?activiteit <http://osloddt.wiki.opencura.com/prop/direct/P1> <http://osloddt.wiki.opencura.com/entity/Q1>; <http://osloddt.wiki.opencura.com/prop/direct/P49> ?activiteitTypeVrij. MINUS { ?activiteit <http://osloddt.wiki.opencura.com/prop/direct/P13> ?activiteitType }. SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],nl,en" . } }
Overzicht van alle Items van het type Activiteit, zonder enig activiteitstype
Alle activiteiten zouden getypeerd moeten zijn, liefst met een gestructureerd activiteitstype, of eventueel via een vrije tekst veld. We hebben een lijst nodig van activiteiten die noch een gestructureerd activiteitstype, noch een een vrije tekst activiteitstype hebben.
SELECT ?activiteit ?activiteitLabel ?activiteitType ?activiteitTypeLabel WHERE { ?activiteit <http://osloddt.wiki.opencura.com/prop/direct/P1> <http://osloddt.wiki.opencura.com/entity/Q1>. MINUS { ?activiteit <http://osloddt.wiki.opencura.com/prop/direct/P13> ?activiteitType }. SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],nl,en" . } }
Overzicht van Items met een "activiteit type", maar die niet "Is" "Activiteit" hebben
Als items getypeerd zijn met een bepaalde activiteitstype, dan moeten ze ook verplicht als "is" "activiteit" worden benoemd. We hebben daarom een lijst nodig van activiteiten met een activiteitstype, maar zonder "is" "activiteit".
Overzicht van items die het object zijn van een statement met verb "activiteit type", maar niet "is" "activiteit type" hebben
Toon alle activiteiten met een activiteit type, maar het activiteit type is geen "activiteit type" (dit soort van "rogue" activiteit types zouden niet toegelaten mogen zijn). Dit is om te vermijden dat er items als "activiteit type" worden gekoppeld aan activiteiten zonder dat die items gekenmerkt zijn als activiteit type. Zo is er bijvoorbeeld een "podiumproductie" als type "werk", en is er een item "podiumproductie" als type "activiteit type". Je wil dat enkel het item podiumproductie dat "is" "activiteit type" gebruikt wordt als activiteit type.
We hebben dus een lijst nodig van items die in een statement voorkomen met het Verb "activiteit type", maar die niet zelf "is" "activiteit type" hebben.
Beeldende kunst
Sommige onmogelijkheden zijn specifiek voor activiteiten binnen een bepaalde discipline. Hier bekijken we onmogelijkheden in de beeldende kunsten.
Tentoonstellingen of residenties zonder "kunstenaars"
Een beeldende kunst activiteit zonder een kunstenaar erbij is onmogelijk. We hebben dus een lijst nodig van activiteiten van het type solotentoonstelling, groepstentoonstelling, tentoonstelling of residentie die niet "gebracht worden" door iemand met de rol "kunstenaar".
Tentoonstellingen of residenties zonder "locatie"
Een beeldende kunst activiteit vindt altijd wel ergens plaats. We hebben een lijst nodig van solotentoonstellingen, groepstentoonstellingen, tentoonstellingen en residenties die niet via de property "plaats" gelinkt zijn met een locatie.
Het kan zijn dat dit veel problemen oplevert: door een legacy-beslissing zitten tentoonstellingen vaak in de databank met een "gebracht door" relatie naar een Organisator die de rol "locatie" opneemt. Dat zouden we best normaliseren.
Groepstentoonstellingen in hetzelfde jaar en in dezelfde locatie of plaats, met gelijkaardige titels
Groepstentoonstellingen worden soms apart ingevoerd voor elke kunstenaar. Maar eigenlijk willen we dat er 1 groepstentoonstelling-item is, met daaraan alle deelnemende kunstenaars. We hebben dus een lijst nodig van groepstentoonstellingen die op dezelfde plek plaatsvinden, op hetzelfde moment, en waarvan de titel bovendien gelijkaardig is (case insensitive, misschien zelfs geen spaties, leestekens, fuzzy match, ...)
Groepstentoonstellingen met maar 1 kunstenaar eraan
Het punt van een groepstentoonstelling is dat er meerdere kunstenaars aan meedoen, dus een groepstentoonstelling met maar 1 kunstenaar is verdacht. We hebben dus een lijst nodig van groepstentoonstellingen die "gebracht door" hebben met maar 1 item dat de rol van "kunstenaar" opneemt.
Activiteiten van het type "beurs", maar niet gebracht door een Organisator van het type "Beurs"
Kunstbeurzen zijn een relatief afgebakende lijst. Zo een "Organisator" moet dus getypeerd worden als een Beurs We hebben dus een lijst nodig van Organisatoren die "gebracht door" opnemen bij activiteiten van het activiteit type "beurs", maar zelf niet "agent type" "beurzen" hebben.
Deze lijst (https://osloddt.wikibase.cloud/wiki/Special:WhatLinksHere/Item:Q157549) zou dus een overzicht moeten geven van de kunstbeurzen.
Activiteiten die onder tentoonstellingen vallen, maar niet op een Locatie of gebracht door een Organisator met het type "Tentoonstellingsruimte"
Tentoonstellingen worden georganiseerd door Organisatoren of Locaties die zichzelf als een tentoonstellingsruimte positioneren, en zouden dus dit type moeten krijgen. We hebben daarom een lijst nodig van Locaties of Organisatoren (die de rol (bij gebracht door) van locatie opnemen) die verbonden zijn aan tentoonstellingen, maar niet getypeerd worden als tentoonstellingsruimte.
Podiumkunsten
Sommige onmogelijkheden zijn specifiek voor activiteiten binnen een bepaalde discipline. Hier bekijken we onmogelijkheden in de podiumkunsten.
Podiumvoorstellingen die niet verwijzen naar een podiumproductie (activiteit)
Een podiumvoorstelling laten we niet zweven zonder een overkoepelend object aan te bieden. Doorgaans zijn podiumvoorstellingen geen eenmalige gebeurtenissen. Ze worden herhaald opgevoerd, en daarom moeten we kunnen verwijzen naar een overkoepelende activiteit via "is onderdeel van".
We hebben een lijst nodig van podiumvoorstellingen die niet "is onderdeel van" hebben en waarbij dat niet linkt naar een activiteit van het type podiumproductie (activiteit).
Podiumproducties (activiteit) die niet verwijzen naar een podiumproductie (werk)
Podiumproducties (activiteit) zijn overkoepelend objecten om uitvoeringen van die podiumproductie mee te bundelen. Het kan gaan over een seizoenslogica, of over een vaste samenstelling van de cast, of ... Maar ook daarboven is er een object nodig om die items te bundelen: een "herneming" in een nieuw seizoen, een "herneming" met een hele andere cast, een vertaling, ... Daarom is er ook een Werk object voor podiumproducties.
We hebben dus een lijst nodig van podiumproducties (activiteit) die niet "gebruikt werk" hebben en verwijzen naar een item van het type podiumproductie (werk).
Muziek
Sommige onmogelijkheden zijn specifiek voor activiteiten binnen een bepaalde discipline. Hier bekijken we onmogelijkheden in de muziek.
Tracks zonder een "Muziekuitgave"
Tracks (opnames, phonogrammen, ...) kunnen eigenlijk niet op zichzelf bestaan in onze databank. Ze moeten "gereleased" worden via een muziekuitgave (die dan een bepaald concept (een single, een album, ...) en format (op cd, op vinyl, ...) heeft). We hebben daarom een lijst nodig van Tracks die niet "is onderdeel van" een item van het type muziekuitgave zijn.
Concerten zonder Locatie
Concerten moeten altijd plaatsvinden op een bepaalde locatie. Door een legacy redenering zijn er heel wat concerten die geen "plaats" zullen hebben. Die moeten we in een lijst brengen en bekijken hoe we die een locatie geven, eventueel de overeenkomstige Organisator dubbelen om als Locatie te kunnen opereren.
Locaties van concerten die het type Organisator hebben zijn niet toegestaan
Concerten vinden plaats op locaties en worden gebracht door organisatoren. Maar door een legacy redenering zou het kunnen dat er locaties (via property plaats) gekoppeld worden aan een concert die van het type Organisator zijn. Dat zou niet mogen. We moeten daarom een lijst krijgen van items die gekoppeld zijn aan concerten via "plaats" en van het type Organisator zijn.
Concerten zonder artiesten
Net zoals tentoonstellingen kunnen concerten niet plaatsvinden zonder een item dat gelinkt is met "gebracht door" van het type "Uitvoerder". We hebben dus een lijst van concerten zonder een gebracht door statement waarbij het object van het type uitvoerder is.
Realisatoren
Hieronder een bundeling van "onmogelijkheden" die te maken hebben met realisatoren (uitvoerders en organisatoren) in het algemeen.
Overzicht van alle Actoren, met een vrij agent type, maar zonder gestructureerd type
Actoren (realisatoren, uitvoerders, organisatoren, ...) hoeven niet altijd een agent type te krijgen. Maar als ze een vrij agent type hebben gekregen, dan is het wel best dat dat ook genormaliseerd wordt met een gestructureerd type. We hebben daarom een lijst nodig van items die "is" "uitvoerder" of "organisator" zijn, een vrij agent type hebben, maar geen gestructureerd agent type.
PREFIX kp:<https://osloddt.wikibase.cloud/entity/> PREFIX kpp:<https://osloddt.wikibase.cloud/prop/direct/> SELECT DISTINCT ?actor ?actorLabel ?typeLabel WHERE { ?actor kpp:P1 ?is. FILTER (?is IN (kp:Q58543, kp:Q58545)). OPTIONAL {?actor kpp:P41 ?type. }. SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],nl,en" . } }
Actoren met dezelfde naam
Het is onvermijdelijk dat er mensen of organisaties met dezelfde naam zijn. In het beste geval voorzien we in de description een kleine disambiguering, maar in eerste instantie kunnen we daar niet naar kijken, omdat de description informatie bevat over de bron, en die kan misleidend zijn. In eerste instantie hebben we daarom een lijst nodig van labels (van items die "is" "uitvoerder" of "organisator" zijn, en die meerdere keren voorkomen).
Overzicht van items die het object zijn van een statement met verb "actor type", maar niet "is" "actor type" hebben
We moeten hygiënisch zijn bij de manier waarop we agent types toekennen aan uitvoerders of organisatoren. Zo is "kunstenaar" een agent type, maar ook apart een "rol". Het mag niet voorkomen dat mensen de rol "kunstenaar" gebruiken als object van een statement met als verb "agent type". We hebben dus een lijst nodig van items waarbij in het statement agent type het object niet van het type "uitvoerdertype" of "organisatortype" is
Items die het object zijn van "gebracht door" maar niet "is" "Uitvoerder" of "Organisator" hebben
Over alle activiteiten heen zijn de items die gelinkt kunnen worden via "gebracht door" verplicht van het type "uitvoerder" of "organisator. We hebben een lijst nodig van items waarbij "gebracht door" gecombineerd wordt met items die niet dat type hebben.
Items die het object zijn van "gebracht door" en "is" "Locatie" hebben mogen niet bestaan
Activiteiten die via "gebracht door" gerelateerd zijn met andere items mogen die relatie niet gebruiken om te verwijzen naar Locaties. Dat zijn fysieke plekken, architecturale entiteiten, ... en die hebben geen "agency" om iets te brengen. We hebben dus een lijst nodig van items waarbij "gebracht door" gebruikt wordt in combinatie met een item van het type Locatie.
Locaties
Locaties die ook Realisatoren zijn
Er is een risico om locaties (fysieke plekken, architecturale entiteiten, ...) te "confounden" met Organisatoren (organisaties die activiteiten organiseren). We volgen de logica van OSLO en wikidata om die apart te houden. Natuurlijk vallen die soms samen (de AB is zowel een architecturale entiteit als een concertorganisator), maar we zorgen er toch voor dat het aparte items zijn, met aparte Q-nummers. We kunnen linken tussen de Locatie en de Realisator via "werkt samen met".
We hebben een lijst nodig van items die "is" zowel een Locatie én Organisator/Uitvoerder zijn. Die moeten dan gesplitst worden.
Festivals zijn geen locaties
We moeten streng zijn dat festivals geen architecturale entiteiten zijn, en dus niet als "Locatie" mogen gedefinieerd worden. We hebben een lijst nodig van items met "festival" ofzo in de naam en die toch "is" "locatie" zijn.
Daarnaast moeten we ook consistent zijn dat items die een agent type dat met "festival" te maken heeft ook niet gelijktijdig "is" Locatie zijn. We hebben dus ook een lijst nodig van items met een agent type dat "festival bevat" én ook "is" locatie zijn.
Kunstbeurzen zijn geen locaties
Idem als bij festivals.
Locaties kunnen niet het object zijn van "gebracht" door
Dit is vermoedelijk een andere insteek voor wat er hoger ook al gezegd werd, maar locaties zijn architecturale entiteiten die geen activiteiten kunnen brengen. Daarom mogen ze niet voorkomen als object van een "gebracht door" property. We hebben dus een lijst nodig van activiteiten waarbij in het gebracht door statement heb object toch een Locatie is.
Generiek
Een aantal onmogelijkheden zijn echt wel generiek.
Overzicht van alle Items, zonder "IS" statement
Er zouden in de databakn geen items mogen zitten die niet via "is" een bepaalde categorie toebehoren. We hebben dus een lijst nodig van items die geen "is" statement hebben.
Consequentie tussen verbs en de objecten die eraan worden meegegeven
Bij een werkwoord hoort vaak een bepaald item type, bv. een statement met verb "url type" moet verwijzen naar een item dat "is" "url type". We zouden moeten lijstjes maken van items waarin statements zitten met een incongruentie tussen wat het werkwoord wil zien, en het "is" type van het object.
Overzicht van items die het object zijn van een statement met verb "url type", maar niet "is" "url type" hebben
Overzicht van items die het object zijn van een qualifying statement met verb "rol", maar niet "is" "Rol" hebben
Overzicht van items die het object zijn van een qualifying statement met verb "gebruikt werk", maar niet "is" "Werk" hebben
Overzicht van items die het object zijn van een qualifying statement met verb "activiteit type", maar niet "is" "Activiteit Type" hebben
Overzicht van items die het object zijn van een qualifying statement met verb "land", maar niet "is" "Land" hebben
Overzicht van items die het object zijn van een qualifying statement met verb "plaats", maar niet "is" "plaats" hebben
Overzicht van items die het object zijn van een qualifying statement met verb "beginplaats", maar niet "is" "plaats" hebben
Overzicht van items die het object zijn van een qualifying statement met verb "eindplaats", maar niet "is" "plaats" hebben
Overzicht van items die het object zijn van een qualifying statement met verb "locatie", maar niet "is" "Locatie" hebben
Overzicht van items die het object zijn van een qualifying statement met verb "is onderdeel van", maar niet "is" "Activiteit" hebben
Overzicht van items die het object zijn van een qualifying statement met verb "onderdeel type", maar niet "is" "Onderdeeltype" hebben
Overzicht van items die het object zijn van een qualifying statement met verb "werk type", maar niet "is" "Werktype" hebben
Overzicht van items die het object zijn van een qualifying statement met verb "concept", maar niet "is" "Concept" hebben
Overzicht van items die het object zijn van een qualifying statement met verb "format", maar niet "is" "Format" hebben
Overzicht van items die het object zijn van een qualifying statement met verb "samenwerkingstype", maar niet "is" "Samenwerkings type" hebben
Overzicht van alle plaatsen zonder land
Plaatsen zouden niet zonder een land indicatie mogen zijn. We hebben een lijst nodig van plaatsen zonder een land.
Plaatsen in hetzelfde land met dezelfde naam
Hoewel het kan voorkomen dat in hetzelfde land een plaats is met dezelfde naam is het goed om er daar dan een disambiguatie aan toe te voegen in de description.
Werken
Hieronder een bundeling van "onmogelijkheden" die te maken hebben met werken in het algemeen.
Overzicht van alle Werken, zonder enig werk type
Om te vermijden dat een werk-item wordt aangemaakt zonder het typeren willen we checken of items liefst een gestructureerd werk type hebben, of eventueel een werk type in vrije tekst.
We hebben een lijst nodig van items "is" "werk", maar zonder een "werk type" of "werk type (vrij)" statement.
PREFIX kp:<https://osloddt.wikibase.cloud/entity/> PREFIX kpp:<https://osloddt.wikibase.cloud/prop/direct/> SELECT ?work ?workLabel ?typeLabel WHERE { ?work kpp:P1 kp:Q58528. ?work kpp:P48 ?type. ?type kpp:P1 kp:Q58529. SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],nl,en" . } }
Overzicht van alle Werken met een werk type in vrije tekst, maar niet gestructureerd
Idealiter zijn werken met een werk type in vrije tekst toch ook voorzien van een gestructureerd werk type. We hebben dus een lijst nodig van items "is" "werk", met een "werk type (vrij)" statement, maar zonder een gestructureerd werk type erbij.
Podiumproducties (activiteit) die niet verwijzen naar een podiumproductie (werk)
(zie ook hoger)
Podiumproducties van het type "activiteit" (dus opgevoerd tijdens een bepaalde periode) verwijzen idealiter terug naar een podiumproductie als werk, om eventuele connecties tussen de producties te kunnen modelleren. We hebben dus een lijst nodig van items "is" podiumproductie (activiteit), maar die niet "gebruikt werk" hebben en verwijzen naar een podiumproductie (werk).
Werken die niet gebruikt worden in activiteiten
Deze wikibase is in principe geen databank voor kunstwerken. Ze kunnen hier summier beschreven worden om een activiteit meer context te geven, maar werken zonder linken naar een activiteit zijn te vermijden. We kunnen dit oplossen door het werk ofwel te verwijderen, of expliciet te linken aan een tentoonstelling, podiumproductie, opname, concert, ...
We hebben in elk geval een lijst nodig van werken die niet gebruikt worden in items "is" "activiteit".