Ergänzung des Datenschemas: Unterschied zwischen den Versionen

Aus DIF Filmographie Wiki
Wechseln zu: Navigation, Suche
(Relation Körperschaft zu Person)
(Relatoren aus Wikidata)
 
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt)
Zeile 2: Zeile 2:
 
== Relatoren aus Wikidata ==
 
== Relatoren aus Wikidata ==
  
Wikidata arbeitet offenbar nicht mit impliziten Umkehrbeziehungen. Eine Aussage wie "hat Eigentümer" wird auf der Eigentümerseite mit einer separaten Aussage "ist Eigentümer von" vervollständigt werden.
+
Wikidata arbeitet offenbar nicht mit impliziten Umkehrbeziehungen. Eine Aussage wie "hat Eigentümer" muss auf der Eigentümerseite mit einer separaten Aussage "ist Eigentümer von" vervollständigt werden. Das wird oft nicht richig gehandhabt. Außerdem gibt es keine Restriktionen für Domain und Range, was oft zu beliebig ausgewählten Properties führt.
  
 
=== Relation Körperschaft zu Körperschaft ===
 
=== Relation Körperschaft zu Körperschaft ===
Zeile 51: Zeile 51:
 
   {
 
   {
 
     ?s wdt:P31 wd:Q5 ;      # human
 
     ?s wdt:P31 wd:Q5 ;      # human
         rdfs:label   ?pname .
+
         rdfs:label ?pname .
 
     ?o wdt:P31 wd:Q1762059 ; # film production company
 
     ?o wdt:P31 wd:Q1762059 ; # film production company
         rdfs:label   ?kname .  
+
         rdfs:label ?kname .  
 
     ?s wdt:P127 ?o .        # owned by
 
     ?s wdt:P127 ?o .        # owned by
 
     FILTER(LANG(?pname)="en") . FILTER(LANG(?kname)="en")
 
     FILTER(LANG(?pname)="en") . FILTER(LANG(?kname)="en")
 
   }
 
   }

Aktuelle Version vom 5. September 2025, 07:54 Uhr

Eine Seite aus dem Reformhaus

Relatoren aus Wikidata

Wikidata arbeitet offenbar nicht mit impliziten Umkehrbeziehungen. Eine Aussage wie "hat Eigentümer" muss auf der Eigentümerseite mit einer separaten Aussage "ist Eigentümer von" vervollständigt werden. Das wird oft nicht richig gehandhabt. Außerdem gibt es keine Restriktionen für Domain und Range, was oft zu beliebig ausgewählten Properties führt.

Relation Körperschaft zu Körperschaft

Diese Abfrage über den Wikidata SPARQL-Dienst listet die derzeit verwendeten Properties zwischen Items des Typs "Filmproduktionsgesellschaft" (Q1762059) auf:

 SELECT DISTINCT (COUNT(?prop) AS ?Anz) ?prop ?propertyItemLabel WHERE
 {
   ?s wdt:P31 wd:Q1762059 .
   ?o wdt:P31 wd:Q1762059 .
   ?s ?prop ?o .
   ?propertyItem wikibase:directClaim ?prop
   SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
 }
 GROUP BY ?prop ?propertyItemLabel ORDER BY DESC(?Anz)

Relation Körperschaft zu Person

Diese Abfrage über den Wikidata SPARQL-Dienst listet die derzeit verwendeten Properties mit Subjekt "Filmproduktionsgesellschaft" (Q1762059) und Objekt "Mensch" (Q5) auf:

 SELECT DISTINCT (COUNT(?prop) AS ?Anz) ?prop ?propertyItemLabel WHERE
 {
    ?s wdt:P31 wd:Q1762059 . # film production company
    ?o wdt:P31 wd:Q5 .       # human
    ?s ?prop ?o .
    ?propertyItem wikibase:directClaim ?prop
    SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
  }
  GROUP BY ?prop ?propertyItemLabel ORDER BY DESC(?Anz)

Und hier noch die Umkehrbeziehung (Subjekt) Mensch zu (Objekt) Filmproduktionsgesellschaft:

 SELECT DISTINCT (COUNT(?prop) AS ?Anz) ?prop ?propertyItemLabel WHERE
 {
   ?s wdt:P31 wd:Q5 .       # human
   ?o wdt:P31 wd:Q1762059 . # film production company
   ?s ?prop ?o .
   ?propertyItem wikibase:directClaim ?prop
   SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
 }
 GROUP BY ?prop ?propertyItemLabel ORDER BY DESC(?Anz)

Wir sehen, dass bei fehlender Kontrolle der Umkehrbeziehungen allerhand Unsinn entsteht. Beispiel: Steven Af, Tologolesischer Filmproduzent, ist Eigentum von (P127) der Produktionsfirma Sunlight Group. Praktiziert diese Firma noch Sklavenhaltung?

Weitere Menschen, die Eigentum einer Filmproduktionsfirma sind:

 SELECT DISTINCT ?pname ?kname WHERE
 {
    ?s wdt:P31 wd:Q5 ;       # human
       rdfs:label ?pname .
    ?o wdt:P31 wd:Q1762059 ; # film production company
       rdfs:label ?kname . 
    ?s wdt:P127 ?o .         # owned by
   FILTER(LANG(?pname)="en") . FILTER(LANG(?kname)="en")
 }