Wikidata:SPARQL query service/queries/examples/maintenance/nl
Queries voor onderhoud
Voor lexicografische queries voor onderhoud zie Wikidata:Lexicographical data/Ideas of queries#Maintenance and repairing
De onderstaande queries helpen bij het behoud van de kwaliteit van Wikidata. Let op dat sommige van deze queries mogelijk geen resultaten geven. Dan is het juist goed, want het betekent dat de gegevens correct zijn, omdat dergelijke queries bedoeld zijn om fouten te detecteren.
Labels zoeken die beginnen met dubbele aanhalingstekens (")
SELECT *
WHERE
{
?item rdfs:label ?label.
FILTER(
lang(?label) = "en"
&& REGEX(str(?label),"^[\"].*")
)
}
LIMIT 1
Queries om Wikidata-entiteiten te volgen, afkomstig van de Ontologie van ziekten
Items over ziekten met herleidingswaarden
Deze query controleert of er al een doorverwijzing is in ziekteverklaringen. Regelmatig synchroniseert de ProteinBox items over ziekten in Wikidata met de ontologie van ziekten. Deze query controleert of de waarde van de verklaring naar een ander Wikidata-item wordt doorverwezen.
- Verwachte resultaten: 0 items. > 0 items vereisen handmatige inspectie.
- Gebruikte eigenschappen: Disease Ontology ID (P699)
#added before 2016-10
SELECT *
WHERE
{
?disease ?p ?o ;
wdt:P699 ?doid.
?o owl:sameAs ?sa .
}
Ziekte-items met verklaringen met ziekte-ontologie-ID's die al meer dan een maand niet zijn bijgewerkt
ProteinBoxBot synchroniseert regelmatig ziektegerelateerde items in Wikidata met de ziekte-ontologie. Deze query geeft alle wijzigingsdatums -date_update terug tot minder dan een maand.
- Verwachte resultaten: Alle updates die ouder zijn dan een maand, deze vereisen een handmatige controle door een curator.
SELECT DISTINCT ?date_range ?date_update (count(?disease) as ?counts)
(GROUP_CONCAT(?disease ;separator = "; ") as ?diseases)
(GROUP_CONCAT(?do_id ;separator = "; ") as ?doids)
{
?disease p:P699/prov:wasDerivedFrom/pr:P813 ?date_update ;
wdt:P699 ?do_id .
BIND (now() - ?date_update as ?date_range)
FILTER (?date_range > 31)
}
GROUP BY ?date_range ?date_update
ORDER BY DESC(?counts)
Items over menselijke genen die al meer dan een maand niet zijn bijgewerkt
- Verwachte resultaten: Alle updates die ouder zijn dan een maand, deze vereisen een handmatige controle door een curator.
#added before 2016-10
SELECT DISTINCT ?date_range ?date_update (count(?gene) as ?counts) (GROUP_CONCAT(?gene ;separator = "; ") as ?genes) (GROUP_CONCAT(?ncbi_gene ;separator = "; ") as ?gene_ids) WHERE {
?gene p:P351 ?ncbigene ;
wdt:P351 ?ncbi_gene .
?ncbigene prov:wasDerivedFrom ?derivedFrom .
?derivedFrom pr:P813 ?date_update .
BIND (now() - ?date_update as ?date_range)
FILTER (?date_range > 31)
}
GROUP BY ?date_range ?date_update
ORDER BY DESC(?counts)
Vertaling van labels en beschrijvingen
Ontbrekende labels voor een doeltaal
#Search for labels in other languages that do not exist in a target language
#Can be input for Q29032512
SELECT ?item ?itemLabel ?itemDescription WHERE {
?item wdt:P31 wd:Q5. #instance of human
?item wdt:P27 wd:Q31. #country of citizenship Belgium
SERVICE wikibase:label { bd:serviceParam wikibase:language "nl,fr,en,de,it,es,no,pt". }
FILTER(NOT EXISTS {
?item rdfs:label ?lang_label.
FILTER(LANG(?lang_label) = "it") #with missing Italian label
})
}
ORDER BY ?itemLabel
Ontbrekende beschrijving voor een doeltaal
# Search for missing descriptions in a target language.
# Can be input for Q29032512
SELECT ?item ?itemLabel ?genderLabel ?occupationLabel ?domainLabel ?positionLabel ?itemDescription WHERE {
?item wdt:P31 wd:Q5. # instance of human
?item wdt:P27 wd:Q31. # country of citizenship Belgium
optional{ ?item wdt:P21 ?gender.}
optional{ ?item wdt:P106 ?occupation.}
optional{ ?item wdt:P101 ?domain.}
optional{ ?item wdt:P39 ?position.}
SERVICE wikibase:label { bd:serviceParam wikibase:language "nl,fr,en,de,it,es,pt,no". }
FILTER(NOT EXISTS {
?item schema:description ?itemdesc.
FILTER(LANG(?itemdesc) = "nl") # with missing Dutch description
})
}
order by ?itemLabel
Vertaalde labels en aliassen voor een collectie
#title:Non-English labels for Khalili Collections items
SELECT ?lang ?count WITH {
SELECT ?work ?label WHERE {
?work wdt:P195?/wdt:P361? wd:Q63160499. # Khalili Collections, or individual collections, or objects within collections
?work (rdfs:label|skos:altLabel) ?label
FILTER(lang(?label) != "en") } } AS %core
WHERE { {
SELECT ?lang (COUNT(?label) AS ?count) WHERE {
INCLUDE %core.
BIND(lang(?label) AS ?langcode).
OPTIONAL { ?language wdt:P218 ?langcode; rdfs:label ?langname FILTER(lang(?langname) = "en")}
BIND(IF (BOUND(?langname), ?langname, ?langcode) AS ?lang)
} GROUP BY ?lang
} UNION {
SELECT ("TOTAL" AS ?lang) (COUNT(?label) AS ?count) WHERE {
INCLUDE %core.
} }
} order BY DESC(?count) ?lang
Identificatie van doorverwijzingen en hun doelen in een lijst van QID's
# Identify redirects using item property owl:sameAs
SELECT (REPLACE(STR(?item),".*Q","Q") AS ?qid) (REPLACE(STR(?tgt),".*Q","Q") AS ?tgtQid) ?tgtLabel
WHERE {
VALUES (?item) {
(wd:Q6636058) (wd:Q8989284) (wd:Q243634) (wd:Q13383295)
(wd:Q659516) (wd:Q1020776) (wd:Q10124662) (wd:Q9066399)
(wd:Q12309669) (wd:Q16033883) (wd:Q733744) (wd:Q226569)
(wd:Q14210256) (wd:Q408041) (wd:Q750594) (wd:Q11075312)
}
?item owl:sameAs ?tgt .
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en" }
}
ORDER BY ?qid
Dubbele IMDB-identificaties vinden
# added before 2016-10, updated 2020-07
SELECT ?id (COUNT(?obj) AS ?count) (GROUP_CONCAT(?obj; SEPARATOR = " , ") AS ?items)
WHERE { ?obj wdt:P345 ?id. }
GROUP BY ?id
HAVING(?count > 1)
Administratieve entiteiten die zich binnen zichzelf bevinden
# added before 2016-10
SELECT ?x WHERE {
?x wdt:P131 ?x .
}
Mensen die na 1601 en vóór 1880 zijn geboren zonder overlijdensdatum
Dit was oorspronkelijk vóór het jaar 1880, maar leverde voornamelijk mensen op die duizenden jaren voor Christus waren geboren, wat geen nuttige vraag is voor mensen die de gegevens willen herstellen. De query is bijgewerkt om een vroegste geboortedatum van 1602 toe te voegen. Gebruikers kunnen de datum willen bewerken om het nog later te maken, bijvoorbeeld 1800, om mensen te vinden over wie er meer informatie is. Opmerking: de datum 1601 geeft mensen terug van wie de geboortedatum "17e eeuw" is, wat misschien niet erg nuttig is, vandaar de keuze voor mensen die na 1601 zijn geboren.
- Gebruikte items: human (Q5)
- Gebruikte eigenschappen: instance of (P31), date of birth (P569), date of death (P570)
# updated 2019-09-27
SELECT ?h ?date
WHERE
{
?h wdt:P31 wd:Q5 .
?h wdt:P569 ?date .
OPTIONAL {?h wdt:P570 ?d }
FILTER (?date > "1601-01-01T00:00:00Z"^^xsd:dateTime)
FILTER (?date < "1880-01-01T00:00:00Z"^^xsd:dateTime)
FILTER (!bound(?d))
}
LIMIT 100
Eigenschappen die zijn gedefinieerd als 'alleen kwalificatie', maar die worden gebruikt in referenties
- Gebruikte items: Wikidata qualifier (Q15720608)
- Gebruikte eigenschappen: instance of (P31)
# added before 2016-10
SELECT ?entity ?claim ?prop
WHERE
{
?prop wdt:P31 wd:Q15720608 .
?prop wikibase:reference ?propClaim .
?ref ?propClaim ?o .
?statement prov:wasDerivedFrom ?ref .
?entity ?claim ?statement .
}
LIMIT 100
Objecten met een globe die niet overeenkomt met hun coördinaten
- Gebruikte eigenschappen: located on astronomical body (P376), coordinate location (P625)
#added before 2016-10
SELECT ?item ?body ?globe
WHERE {
?item wdt:P376 ?body .
?item p:P625/psv:P625/wikibase:geoGlobe ?globe .
filter (?globe != ?body) .
} LIMIT 30
Aliassen van eigenschappen die meer dan eens worden gebruikt
- Gebruikte items: Geen
- Gebruikte eigenschappen: Alle
#added before 2016-10
SELECT ?property ?alias ?occurences
WHERE
{
hint:Query hint:optimizer "None" .
{
SELECT ?alias (COUNT (?alias) as ?occurences) WHERE {
?tmp rdf:type wikibase:Property .
?tmp skos:altLabel ?alias FILTER (LANG (?alias) = "en")
} GROUP BY ?alias
}
?property rdf:type wikibase:Property .
?property skos:altLabel ?alias FILTER (?occurences > 1) .
}
ORDER BY ?alias
Actrices zonder beschrijving in het Spaans
- Gebruikte items: actor (Q33999) female (Q6581072) human (Q5)
- Gebruikte eigenschappen: occupation (P106) sex or gender (P21) instance of (P31)
#added before 2016-10
SELECT DISTINCT ?item ?itemLabel
WHERE
{
?item wdt:P106 wd:Q33999 .
?item wdt:P21 wd:Q6581072 .
OPTIONAL { ?item schema:description ?itemDescription }
FILTER (!BOUND(?itemDescription))
?item wdt:P31 wd:Q5 .
SERVICE wikibase:label { bd:serviceParam wikibase:language "es"}
}
LIMIT 111
Franse mensen met een artikel op de Engelse Wikipedia, maar niet op de Franse Wikipedia
- Gebruikte items: human (Q5), France (Q142)
- Gebruikte eigenschappen: instance of (P31), country of citizenship (P27)
#added before 2016-10
SELECT ?item ?itemLabel (COUNT(distinct ?sitelink) as ?count)
WHERE
{
?item wdt:P31 wd:Q5 .
?item wdt:P27 wd:Q142 .
?sitelink schema:about ?item .
FILTER EXISTS { ?wen schema:about ?item . ?wen schema:inLanguage "en" }
FILTER NOT EXISTS { ?wfr schema:about ?item . ?wfr schema:inLanguage "fr" }
SERVICE wikibase:label {
bd:serviceParam wikibase:language "fr,en" .
}
}
GROUP BY ?item ?itemLabel
ORDER BY DESC(?count)
Ontraden rang verklaringen
#added before 2016-10
SELECT ?wdLabel ?wdPLabel ?valueLabel ?wd ?wdP ?wds ?value
WHERE
{
hint:Query hint:optimizer "None" .
?wds wikibase:rank wikibase:DeprecatedRank .
?wd ?p ?wds .
?wds ?v ?value .
?wdP wikibase:statementProperty ?v .
?wdP wikibase:claim ?p .
SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
}
LIMIT 100
VIAF-identificatie verklaringen met ontraden rang
SELECT ?item ?value WHERE {
?item p:P214 ?statement.
?statement wikibase:rank wikibase:DeprecatedRank;
ps:P214 ?value.
}
Acteurs waarvan het Spaanse label eindigt met " (actor) "
- Gebruikte items: human (Q5), actor (Q33999)
- Gebruikte eigenschappen: instance of (P31), occupation (P106)
#added before 2016-10
# Actors whose Spanish label ends with “ (actor)”.
# This is almost certainly imported from the Wikipedia label, which needs to be unique (distinguish between John Doe the actor, John Doe the author, etc.).
# Wikidata labels have no such restrictions, and therefore should contain no such disambiguatory additions.
# Most likely, all these “ (actor)” suffixes can be removed.
# (This concept obviously applies equally to other professions and languages.)
SELECT ?person ?label (LANG(?label) AS ?lang)
WHERE
{
?person wdt:P31 wd:Q5;
wdt:P106 wd:Q33999;
rdfs:label ?label.
FILTER(LANG(?label) = "es").
FILTER(STRENDS(?label, " (actor)")).
}
Labels met HTML-escape-sequenties
SELECT DISTINCT ?item ?itemLabel ?snippet
WHERE {
# Old approach was:
# ?item rdfs:label ?label . FILTER CONTAINS(?label, """) .
# It worked before 2017, but due to database growth it started to timeout, eventually.
# Luckily, there is an alternative way to search in labels and aliases with CirrusSearch.
# See [[mw:Help:Extension:WikibaseCirrusSearch]] and [[mw:Wikidata Query Service/User Manual/MWAPI]] for more details.
SERVICE wikibase:mwapi {
bd:serviceParam wikibase:api "Search";
wikibase:endpoint "www.wikidata.org";
mwapi:srsearch "inlabel:\""\"" .
?snippet wikibase:apiOutput "@snippet".
?item wikibase:apiOutputItem mwapi:title.
}
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
Personenlabels die haakjes bevatten
- Gebruikte items: human (Q5)
- Gebruikte eigenschappen: instance of (P31)
#added before 2016-10
SELECT ?person ?label (LANG(?label) AS ?lang)
WHERE
{
?person wdt:P31 wd:Q5;
rdfs:label ?label.
FILTER(LANG(?label) IN ("en", "es", "fr", "de")). # tweak to taste
FILTER(CONTAINS(?label, "(")).
}
LIMIT 10
Populatie die niet numeriek is
- Gebruikte eigenschappen: population (P1082)
#added before 2016-10
SELECT ?country ?countryLabel ?population
WHERE
{
?country wdt:P1082 ?population.
FILTER(?population - ROUND(?population) != 0).
SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
}
ORDER BY ?population
Vreemde landen
- Gebruikte items: state (Q7275), territory (Q183366), former entity (Q15893266), political territorial entity (Q1048835)
- Gebruikte eigenschappen: country (P17), instance of (P31), subclass of (P279)
#added before 2016-10
SELECT ?item ?country ?itemLabel ?countryLabel
WHERE
{
?item wdt:P17 ?country.
MINUS { ?country wdt:P31/wdt:P279* wd:Q7275. } # excludes normal countries
MINUS { ?country wdt:P31/wdt:P279* wd:Q183366. } # excludes Scotland
MINUS { ?country wdt:P31/wdt:P279* wd:Q15893266. } # excludes Brittany
MINUS { ?country wdt:P31/wdt:P279* wd:Q1048835. } # excludes the European Union
SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
}
LIMIT 1000
Schilderijen op taxonen
- Gebruikte items: painting (Q3305213), painting support (Q861259), taxon (Q16521)
- Gebruikte eigenschappen: instance of (P31), subclass of (P279), made from material (P186), applies to part (P518)
#added before 2016-10
SELECT ?material ?painting ?materialLabel ?paintingLabel
WHERE
{
?painting wdt:P31/wdt:P279* wd:Q3305213;
p:P186 [ ps:P186 ?material; pq:P518 wd:Q861259 ].
?material wdt:P31 wd:Q16521.
SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
}
Beschrijvingen die slechts de standaard Portugese beschrijving zijn
#added before 2016-10
SELECT ?item ?label
WHERE
{
?item schema:description "introduza uma descrição"@pt.
OPTIONAL {
?item rdfs:label ?label.
FILTER(LANG(?label) = "pt").
}
}
Items die tegelijkertijd instantie en subklasse van dezelfde klasse zijn
- Gebruikte eigenschappen: instance of (P31), subclass of (P279)
#added before 2016-10
SELECT ?thingLabel ?classLabel ?thing ?class
WHERE
{
?thing wdt:P31 ?class.
?thing wdt:P279 ?class.
SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
}
Items met een specifieke afbeelding
- Gebruikte eigenschappen: image (P18)
NBː de URL van de bestandsnaam moet URL-gecodeerd zijn.
#added before 2016-10
SELECT ?item ?itemLabel
WHERE
{
?item wdt:P18 <http://commons.wikimedia.org/wiki/Special:FilePath/Flag%20of%20the%20Netherlands.svg>
SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
}
LIMIT 100
Taalverklaringen die naar een land wijzen
Deze taalverklaringen wijzen naar een land in plaats van naar een taal, wat vrijwel zeker een vergissing is. In bepaalde talen kan een land en de taal van het land hetzelfde label hebben.
- Gebruikte items: state (Q7275)
- Gebruikte eigenschappen: instance of (P31), subclass of (P279), official language (P37), native language (P103), original language of film or TV show (P364), language of work or name (P407), languages spoken, written or signed (P1412)
#added before 2016-10
SELECT DISTINCT ?work ?workLabel ?languageLabel
WHERE
{
?work wdt:P37|wdt:P103|wdt:P364|wdt:P407|wdt:P1412 ?language.
?language wdt:P31/wdt:P279* wd:Q7275.
SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
}
ORDER BY ?languageLabel
Mensen met verklaringen waar start- en eindtijd meer dan 100 jaar verschillend zijn
Het is zelden zo dat een verklaring voor een persoon meer dan 100 jaar geldig is; de meeste resultaten zijn fouten (vaak eenvoudige tikfouten in het jaar).
- Gebruikte items: human (Q5)
- Gebruikte eigenschappen: instance of (P31), start time (P580), end time (P582)
#added before 2016-10
SELECT ?person ?personLabel ?duration
WHERE
{
?person wdt:P31 wd:Q5;
?p [ pq:P580 ?start; pq:P582 ?end ].
BIND(ROUND((?end - ?start)/365.2425) AS ?duration).
FILTER(?duration > 100).
FILTER(?p != p:P119) . # "place of burial" can be an exception
SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
}
ORDER BY DESC(?duration)
Menselijke genen met niet-verwezen vermeldingen
Deze query geeft het aantal keren dat een bepaalde eigenschap bestaat in een menselijk genonderdeel zonder referenties die die verklaring ondersteunen.
- Gebruikte items: human (Q5) gene (Q7187)
- Gebruikte eigenschappen: subclass of (P279), found in taxon (P703)
#added before 2016-10
SELECT ?prop (count(?prop) as ?counts) WHERE
{SELECT DISTINCT ?item ?prop WHERE {
?item wdt:P279 wd:Q7187 ;
wdt:P703 wd:Q5 ;
?prop ?statement .
FILTER(!(regex(str(?prop), "http://www.wikidata.org/prop/direct/" ) ))
FILTER(regex(str(?prop), "http://www.wikidata.org/prop/" ) )
FILTER NOT EXISTS {
?item ?prop ?statement .
?statement prov:wasDerivedFrom ?derivedFrom .}
}
}
GROUP BY ?prop
ORDER BY desc(?counts)
Hoofdsteden die geen hoofdsteden zijn
Deze query geeft items terug die instanties van hoofdstad zijn, maar niet de hoofdstad van een item.
- Gebruikte items: capital city (Q5119)
- Gebruikte eigenschappen: instance of (P31), capital (P36), of (P642), start time (P580), end time (P582)
#added before 2016-10
SELECT ?capital ?capitalLabel ?ofLabel ?start ?end
WHERE
{
?capital p:P31 ?capitalStat.
?capitalStat ps:P31 wd:Q5119.
OPTIONAL { ?capitalStat pq:P642 ?of. }
OPTIONAL { ?capitalStat pq:P580 ?start. }
OPTIONAL { ?capitalStat pq:P582 ?end. }
MINUS { [] wdt:P36 ?capital. }
SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
}
Chemische verbindingen zonder CAS-registratienummer
- Gebruikte items: chemical compound (Q11173)
- Gebruikte eigenschappen: CAS Registry Number (P231), chemical formula (P274), InChIKey (P235), ChemSpider ID (P661), PubChem CID (P662)
#added before 2016-10
#All CAS registry numbers in Wikidata
SELECT DISTINCT ?compound ?compoundLabel ?formula ?inchikey ?chemspider ?pubchem WHERE {
?compound wdt:P31 wd:Q11173 .
OPTIONAL { ?compound wdt:P231 ?cas . }
OPTIONAL { ?compound wdt:P274 ?formula . }
OPTIONAL { ?compound wdt:P235 ?inchikey . }
OPTIONAL { ?compound wdt:P661 ?chemspider . }
OPTIONAL { ?compound wdt:P662 ?pubchem . }
SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
FILTER(!BOUND(?cas))
}
Nederzettingen zonder artikel in de Engelse Wikipedia
- Gebruikte items: town (Q3957), city (Q515), village (Q532), human settlement (Q486972)
- Gebruikte eigenschappen: instance of (P31), coordinate location (P625)
# Human settlements without an article in the English Wikipedia
#defaultView:Map
SELECT DISTINCT ?settlement ?settlementLabel ?coor WHERE {
VALUES ?type {wd:Q3957 wd:Q515 wd:Q532 wd:Q486972}
?settlement wdt:P31 wd:Q3957 ;
wdt:P625 ?coor .
?article schema:about ?settlement .
FILTER NOT EXISTS { ?wen schema:about ?settlement ; schema:inLanguage "en" }
SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
}
Nederzettingen zonder artikel in een of andere taalversie van Wikipedia
- Gebruikte items: town (Q3957), city (Q515), village (Q532), human settlement (Q486972)
- Gebruikte eigenschappen: instance of (P31), coordinate location (P625)
#added before 2016-10
# Human settlements without an article in any language version of Wikipedia
#defaultView:Map
SELECT DISTINCT ?city ?cityLabel ?coor WHERE {
VALUES ?type { wd:Q3957 wd:Q515 wd:Q532 wd:Q486972 } .
?city wdt:P31 wd:Q3957 ;
wdt:P625 ?coor .
FILTER NOT EXISTS {?article schema:about ?city } .
SERVICE wikibase:label { bd:serviceParam wikibase:language "en" } .
}
Bestanden die als "image" worden gebruikt in meer dan 10 items
#added before 2016-10
SELECT ?image (count(?image) AS ?cnt) (group_concat(?item) AS ?items) {
?item wdt:P18 ?image
} group by ?image having (?cnt>10)
Eigenschappen, hun labels, beschrijvingen en als ze bestaan waarvan ze een subeigenschap zijn
Beschrijving: Deze vraag geeft een tabel met alle eigenschappen en indien ze bestaan, hun sub-eigenschappen
# added before 2016-10
SELECT DISTINCT ?property ?propertyLabel ?propertyDescription ?subpropertyOf ?subpropertyOfLabel
WHERE
{
?property rdf:type wikibase:Property .
OPTIONAL {?property wdt:P1647 ?subpropertyOf .}
SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
}
Meest voorkomende beroepen zonder label in een bepaalde taal
# added before 2016-10
# Most frequent occupations without a label in Latvian (lv)
# by Edgars2007/Jura1, 2016-05-09
SELECT ?occup ?occupLabel ?count
WHERE
{
{
SELECT ?occup (COUNT(?person) as ?count)
WHERE
{
?person wdt:P106 ?occup
}
GROUP BY ?occup
ORDER BY DESC(?count)
LIMIT 1000
}
OPTIONAL {?occup rdfs:label ?label1 filter(lang(?label1) = "lv")}
FILTER(!BOUND(?label1))
SERVICE wikibase:label { bd:serviceParam wikibase:language "en,es,pl,ja,zh,ru" }
}
ORDER BY DESC(?count)
LIMIT 50
Items en eigenschappen waarvan de beschrijving hetzelfde is als het label
#Items and properties where the description is the same as the label
#by YMS, 2016-09-26
select ?item ?label (lang(?label) as ?lang) where {
?item rdfs:label ?label .
?item schema:description ?label .
} limit 50
Een partij van entiteiten die uit Commons werden ingevoerd en die met al bestaande entiteiten zouden moeten worden samengevoegd
SELECT ?subject ?subjectLabel ?gallery
WHERE {
?subject wdt:P31 wd:Q5 .
?subject wdt:P935 ?gallery.
FILTER NOT EXISTS { ?subject wdt:P18 ?x }
SERVICE wikibase:label { bd:serviceParam wikibase:language "fr,en" }
FILTER regex(str(?subject), "Q211", "i")
}
LIMIT 100
Hoeveel mensen hebben een "aantal kinderen (P1971) " die overeenkomt met "kind (P40)"?
PS: Inclusief het grensgeval waar het aantal kinderen gelijk is aan 0. P1971 wordt voornamelijk gebruikt wanneer volledige lijsten van kinderen niet kunnen of niet mogen worden opgenomen.
SELECT (COUNT(DISTINCT(?person)) AS ?countPerson)
WHERE {
{ # non-zero number of children matches
?person wdt:P1971 ?numOfChildren .
{SELECT ?person (COUNT(?child) AS ?numOfChildrenComputed)
WHERE {
?person wdt:P40 ?child
}
GROUP BY ?person}
FILTER (?numOfChildren = ?numOfChildrenComputed)
}
UNION
{ # zero number of children matches
?person wdt:P1971 "0"^^xsd:decimal .
FILTER NOT EXISTS { ?person wdt:P40 ?child }
}
}
Class verdeling van een eigenschap
PS: In het voorbeeld is de gebruikte eigenschap "kind (P40) ". Dit kan worden gewijzigd in elke andere eigenschap.
SELECT ?class (COUNT(?subject) AS ?countSubject) WHERE {
{ SELECT DISTINCT ?subject ?class
WHERE {
?subject wdt:P40 ?object .
?subject wdt:P31 ?class
} }
} GROUP BY ?class ORDER BY DESC(?countSubject)
Doorverwijspagina's van entiteiten die worden gebruikt als uitgevers
SELECT ?publisher ?publisherLabel ?work WHERE {
# entities used as publisher
?work wdt:P123 ?publisher .
# but that are actually a disambiguation page
?publisher wdt:P31 wd:Q4167410 .
SERVICE wikibase:label {
bd:serviceParam wikibase:language "en,fr,de" .
}
}
Instanties van bestaande talen
#Instances of actual languages (e.g. "instance of Hindi", often incorrectly set to indicate the language of something or to request a sitelink)
SELECT ?item ?itemLabel
WHERE {
?item wdt:P31/wdt:P31* wd:Q34770 .
FILTER NOT EXISTS {?item wdt:P31 wd:Q34770}
SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
}
Zoeken naar q-codes op basis van het Engelse label
SELECT ?lab ?item WHERE {
?item rdfs:label ?lab .
MINUS {?item wdt:P31 wd:Q4167836 } . # no category items
VALUES ?lab {"Agelenopsis pennsylvanica"@en
"Agelenopsis potteri"@en
"Anelosimus studiosus"@en
} .
}
CONSTRUCT-query om de RDF-grafiek voor een Wikidata-item te krijgen (bijvoorbeeld astma)
CONSTRUCT {
wd:Q35869 ?p ?o .
?o ?qualifier ?f .
?o prov:wasDerivedFrom ?u .
?u ?a ?b .
}
WHERE {
wd:Q35869 ?p ?o .
optional {?o ?qualifier ?f .}
OPTIONAL {?o prov:wasDerivedFrom ?u .
?u ?a ?b .}
}
Persoonsgegevens sjabloon equivalent (dewiki)
SELECT
?item
?NAME
(GROUP_CONCAT( DISTINCT ?ALTERNATIVNAMEN_; separator=";") as ?ALTERNATIVNAMEN)
(SAMPLE ( ?KURZBESCHREIBUNG_) as ?KURZBESCHREIBUNG)
(GROUP_CONCAT( DISTINCT ?GEBURTSDATUM_; separator=";") as ?GEBURTSDATUM)
(GROUP_CONCAT( DISTINCT ?GEBURTSORT_; separator=";") as ?GEBURTSORT)
(GROUP_CONCAT( DISTINCT ?STERBEDATUM_; separator=";") as ?STERBEDATUM)
(GROUP_CONCAT( DISTINCT ?STERBEORT_; separator=";") as ?STERBEORT)
?article
WITH { SELECT ?item ?article { ?article schema:about ?item ; schema:isPartOf <https://de.wikipedia.org/> . ?item wdt:P31 wd:Q5 . } LIMIT 200 } AS %SUBQUERY
{
INCLUDE %SUBQUERY .
OPTIONAL { ?item skos:altLabel ?ALTERNATIVNAMEN_ . FILTER(lang(?ALTERNATIVNAMEN_)="de") }.
OPTIONAL { ?item schema:description ?KURZBESCHREIBUNG_ . FILTER(lang(?KURZBESCHREIBUNG_)="de") } .
OPTIONAL { ?item wdt:P569 ?GEBURTSDATUM_ } .
OPTIONAL { ?item wdt:P19 ?pob } .
OPTIONAL { ?item wdt:P570 ?STERBEDATUM_ } .
OPTIONAL { ?item wdt:P20 ?pod } .
SERVICE wikibase:label {bd:serviceParam wikibase:language "de" .
?item rdfs:label ?NAME .
?pob rdfs:label ?GEBURTSORT_ .
?pod rdfs:label ?STERBEORT_ }
}
GROUP BY ?item ?NAME ?article
Mensen die een label hebben in het Hebreeuws, maar hun naam niet met een Hebreeuws label
SELECT ?item ?itemLabelHE ?name WHERE {
?item wdt:P31 wd:Q5.
?item wdt:P735 ?name.
FILTER NOT EXISTS {?name rdfs:label ?nameLabelHE filter (lang(?nameLabelHE) = "he")} .
?item rdfs:label ?itemLabelHE filter (lang(?itemLabelHE) = "he") .
} LIMIT 50
Vaders met niet-bestaande of ongebruikelijke geslachtsverklaringen
# Fathers with non-existent or unusual gender statements
SELECT
(?father as ?father_id) ?father_name ?father_is_a ?father_gender
(?child as ?child_id) ?child_name ?child_is_a
WHERE {
?child wdt:P22 ?father .
?father wdt:P31 ?f_is_a . #?father wdt:P31 wd:Q5 .
?child wdt:P31 ?c_is_a . #?child wdt:P31 wd:Q5 .
OPTIONAL { ?father wdt:P21 ?f_gender . }
# Aliases for the headings in the results table. Must be done this way because
# SELECT (?var as ?varAlias) works, but (?varLabel as ?varLabelAlias) doesn't.
SERVICE wikibase:label {
bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en" .
?father rdfs:label ?father_name .
?f_is_a rdfs:label ?father_is_a .
?f_gender rdfs:label ?father_gender .
?child rdfs:label ?child_name .
?c_is_a rdfs:label ?child_is_a .
}
# Show only results where the father's gender:
FILTER(
# ...is not set
NOT EXISTS { ?father wdt:P21 [] }
# ...or is set to something other than "male" or "male organism", or "unknown value"
|| ?f_gender NOT IN(wd:Q6581097, wd:Q44148) && !wikibase:isSomeValue(?f_gender)
)
}
ORDER BY DESC(?f_gender)
Laatst aangemaakte items
Aangezien de aanmaakdatum van het item niet beschikbaar lijkt te zijn voor SPARQL-query's, hier een query voor de 10 nieuwste items van een bepaalde klasse (lighthouse (Q39715) als voorbeeld).
select ?item ?itemLabel
where {
# restrict to some class, or select otherwise
# (does not work with results too large!)
?item wdt:P31 wd:Q39715 .
bind(xsd:integer(strafter(str(?item), 'Q')) as ?id)
service wikibase:label { bd:serviceParam wikibase:language "en" .}
}
order by desc(?id )
limit 10
String zoeken : Alle items met de string "airport" zonder instance of (P31) of subclass of (P279)
SELECT DISTINCT ?item ?itemLabel
WHERE {
hint:Query hint:optimizer "None".
SERVICE wikibase:mwapi {
bd:serviceParam wikibase:api "Search";
wikibase:endpoint "www.wikidata.org";
mwapi:srsearch "airport -haswbstatement:P31 -haswbstatement:P279" .
?title wikibase:apiOutput mwapi:title.
}
BIND(IRI(CONCAT(STR(wd:), ?title)) AS ?item)
#add any other requirements here
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
Een goede manier om 100 wetenschappelijke artikelen te vermelden gesorteerd op aantal keren gelinkt
select ?item ?itemLabel ?itemDescription ?linkCount with {
select ?item where {
?item wdt:P31 wd:Q13442814.
} limit 100
} as %result where {
include %result
?item wikibase:sitelinks ?linkCount.
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
} order by desc(?linkCount)
Toon in een boomweergave een bekende klasse (subklasse van)
# Tree of classes under a specified root, up to 7 levels deep
SELECT ?level1Label ?level2Label ?level3Label ?level4Label ?level5Label ?level6Label ?level7Label ?level1 ?level2 ?level3 ?level4 ?level5 ?level6 ?level7
WHERE
{
# Adjust the class value to display a different branch of the class tree (here the class 'database')
VALUES ?class { wd:Q8513 }
{
?level1 wdt:P279 ?class .
}
UNION
{
?level1 wdt:P279 ?class .
?level2 wdt:P279 ?level1 .
}
UNION
{
?level1 wdt:P279 ?class .
?level2 wdt:P279 ?level1 .
?level3 wdt:P279 ?level2 .
}
UNION
{
?level1 wdt:P279 ?class .
?level2 wdt:P279 ?level1 .
?level3 wdt:P279 ?level2 .
?level4 wdt:P279 ?level3 .
}
UNION
{
?level1 wdt:P279 ?class .
?level2 wdt:P279 ?level1 .
?level3 wdt:P279 ?level2 .
?level4 wdt:P279 ?level3 .
?level5 wdt:P279 ?level4 .
}
UNION
{
?level1 wdt:P279 ?class .
?level2 wdt:P279 ?level1 .
?level3 wdt:P279 ?level2 .
?level4 wdt:P279 ?level3 .
?level5 wdt:P279 ?level4 .
?level6 wdt:P279 ?level5 .
}
UNION
{
?level1 wdt:P279 ?class .
?level2 wdt:P279 ?level1 .
?level3 wdt:P279 ?level2 .
?level4 wdt:P279 ?level3 .
?level5 wdt:P279 ?level4 .
?level6 wdt:P279 ?level5 .
?level7 wdt:P279 ?level6 .
}
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],fr,en". }
}
ORDER BY ?level1Label ?level2Label ?level3Label ?level4Label ?level5Label ?level6Label ?level7Label
Zoek items met een dubbele identieke eigenschap / waardeclaim
Zoek bijvoorbeeld alle mensen die occupation (P106) -> actor (Q33999) hebben als een claim.
select ?item where {
?item wdt:P31 wd:Q5;
p:P106 ?a, ?b.
filter(?a != ?b)
?a ps:P106 wd:Q33999.
?b ps:P106 wd:Q33999.
}
Beroepen met een Duits label
SELECT DISTINCT ?occ ?occLabelEN ?occLabelDE {
?occ (wdt:P31/wdt:P31* | wdt:P279/wdt:P279*) wd:Q12737077 .
FILTER NOT EXISTS { ?occ wdt:P31 wd:Q5 }
FILTER NOT EXISTS { ?occ wdt:P31 wd:Q13406463 }
FILTER ( ?occ != wd:Q28640 )
?occ rdfs:label ?occLabelDE filter (lang(?occLabelDE) = "de") .
OPTIONAL {
?occ rdfs:label ?occLabelEN filter (lang(?occLabelEN) = "en")
}
}
Dieren die eigendom zijn van personen die een bepaalde functie hebben
SELECT ?animal ?animalLabel ?itemLabel (SAMPLE(?image) as ?image)
(GROUP_CONCAT(DISTINCT(?personLabel); separator=", ") as ?owners) {
?item wdt:P31 wd:Q16521.
?animal wdt:P31 ?item .
?person wdt:P39 ?x .
?animal wdt:P127 ?person .
OPTIONAL { ?animal wdt:P18 ?image }
SERVICE wikibase:label {
bd:serviceParam wikibase:language "en" .
?animal rdfs:label ?animalLabel .
?item rdfs:label ?itemLabel .
?person rdfs:label ?personLabel
}
} GROUP BY ?animal ?animalLabel ?itemLabel
Eigenschappen van het type external-id
# Make a list of properties of the type external-id
SELECT ?property ?propertyLabel ?propertyDescription WHERE {
?property wikibase:propertyType wikibase:ExternalId .
SERVICE wikibase:label {
bd:serviceParam wikibase:language "en" .
}
} ORDER BY ?propertyLabel
Items met een biografisch portaalnummer en minder dan 6 vermeldingen
# List items that have a Biografisch Portaal number (P651), but have fewer than 6 statements
# The minimum set of statements expected are:
# * Biografisch Portaal number (P651)
# * instance of (P31) -> human (Q5)
# * sex or gender (P21)
# * place of birth (P19)
# * date of birth (P569)
# The SPARQL database isn't completely up to date for the number of statements, so this query will return fewer or incorrect items.
SELECT ?item ?itemLabel ?itemDescription ?statementcount WHERE {
?item wdt:P651 [] .
?item wikibase:statements ?statementcount .
FILTER (?statementcount < 6 )
SERVICE wikibase:label {
bd:serviceParam wikibase:language "en,nl" .
}
} ORDER BY ?itemLabel
De meest specifieke bovenliggende classes van Wikidata-classes
# What is or are the lowest common ancestor(s) of a
# church, a mosque, a synagogue and a palace in the
# Wikidata ontology ? Answer : an architectural structure
SELECT ?lcs ?lcsLabel WHERE {
?lcs ^wdt:P279* wd:Q32815, wd:Q34627, wd:Q16970, wd:Q16560 .
filter not exists {
?sublcs ^wdt:P279* wd:Q32815, wd:Q34627, wd:Q16970, wd:Q16560 ;
wdt:P279 ?lcs . }
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE], en" . }
}
De beschrijvingen van vrouwen bevestigen
SELECT ?item ?itemLabel ?occupationLabel ?itemDescription WHERE {
?item wdt:P31 wd:Q5.
?item wdt:P21 wd:Q6581072.
?item wdt:P27 wd:Q31.
optional{ ?item wdt:P106 ?occupation. }
SERVICE wikibase:label { bd:serviceParam wikibase:language "nl". }
}
Indien nodig kunt u ongepaste beschrijvingen bijwerken.
Tips:
- exporteer naar Excel en sorteer op beschrijving
- genereer een QuickStatements bestand
QuickStatements sjabloon voor het toevoegen van tijdstempels aan novalue verklaringen
Dit is nodig omdat PetScan geen ondersteuning biedt voor novalue queries. Zie https://github.com/magnusmanske/petscan_rs/issues/103
#title:QS template for adding timestamps to novalue statements
# 2021-09-04
select ?qid ?P9837 ?qal585 #?lexemeId ?lemma
WHERE {
?lexemeId dct:language wd:Q9027.
?lexemeId a wdno:P9837.
bind(replace(str(?lexemeId), "http://www.wikidata.org/entity/", "") as ?qid)
BIND(str("novalue") AS ?P9837)
BIND("+2021-09-01T00:00:00Z/11" AS ?qal585)
}
Quickstatements-exporteren voor het hoofdonderwerp over documenten van 'Riksdagen'
#author: Jan Ainali
#title: QuickStatements-export för huvudtema
SELECT DISTINCT ?qid ?P921 ?S887 # ?itemLabel ?item # Ta bort den första "#" för att kunna bedöma titlarna
WHERE {
VALUES ?topic { wd:Q61566 } # Ange Wikidataobjektet som du vill ange som huvudtema här
?item wdt:P8433 [] ; # För att bara få med Riksdagsdokument.
rdfs:label ?itemLabel .
MINUS {?item wdt:P921 ?topic } # För att inte råka lägga till dubbla påståenden
# så kontrolleras det här om det redan finns
FILTER(CONTAINS(LCASE(?itemLabel), LCASE('skol')) ) .
#|| CONTAINS(LCASE(?itemLabel), LCASE('Bildemontering'))
# ) . # Ange en lämplig söksträng för huvudtemat här
#FILTER(!CONTAINS(LCASE(?itemLabel), LCASE('gymnasieskol'))) . # Ange en ev. uteslutning här
BIND(REPLACE(STR(?item), 'http://www.wikidata.org/entity/', '' ) AS ?qid)
BIND(REPLACE(STR(?topic), 'http://www.wikidata.org/entity/', '' ) AS ?P921)
BIND('Q69652283' AS ?S887) # ändra inte (ska vara Q69652283)
}
offset 2000 limit 50
#limit 100
Tip:
- download als CSV-bestand en plak het in QuickStatements
Artikelen die geen item bevatten voor het onderwerp (CRAN R-pakketten)
#author:Azertus
#date:2021-09-07
#title: Articles missing an item for their subject (CRAN R packages)
SELECT ?item ?itemLabel ?rPackage ?rPackageLabel WHERE {
{ SELECT * WHERE {
SERVICE wikibase:mwapi {
bd:serviceParam wikibase:endpoint "www.wikidata.org";
wikibase:api "Search";
mwapi:srsearch 'haswbstatement:P31=Q13442814 inlabel:R@en inlabel:package@en';
mwapi:language "en".
?title wikibase:apiOutput mwapi:title.
}
BIND(URI(CONCAT('http://www.wikidata.org/entity/', ?title)) AS ?item)
} LIMIT 5000 }
MINUS {
?item wdt:P921 ?rPackage .
?rPackage wdt:P31/wd:P279* wd:Q73539779 .
}
SERVICE wikibase:label {
bd:serviceParam wikibase:language "en" .
?item rdfs:label ?itemLabel .
?rPackage rdfs:label ?rPackageLabel .
}
}
limit 10
Items met twee coördinaten die zeer ver van elkaar verwijderd zijn
SELECT ?item ?itemLabel ?location1 ?location2 ?distance WHERE {
?item wdt:P31/wdt:P279* wd:Q3887 ;
wdt:P625 ?location1 , ?location2 .
BIND(geof:distance(?location1, ?location2) AS ?distance )
FILTER(((geof:longitude(?location1)) < (geof:longitude(?location2))) || (((geof:longitude(?location1)) = (geof:longitude(?location2))) && ((geof:latitude(?location1)) < (geof:latitude(?location2)))))
FILTER(?distance > 80 )
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}order by desc (?distance )