Project:SPARQL/examples: Difference between revisions

From KBTestWikibase
Jump to navigation Jump to search
Line 137: Line 137:
<sparql tryit="1">
<sparql tryit="1">
# Federated querying: mixing data from this Wikibase with data from Wikidata  
# Federated querying: mixing data from this Wikibase with data from Wikidata  
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX schema: <http://schema.org/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX wikibase: <http://wikiba.se/ontology#>
PREFIX wikibase: <http://wikiba.se/ontology#>
PREFIX wdt: <https://kbtestwikibase.wikibase.cloud/prop/direct/>
PREFIX kbwdt: <https://kbtestwikibase.wikibase.cloud/prop/direct/>
PREFIX kbwd: <https://kbtestwikibase.wikibase.cloud/entity/>
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX wd: <http://www.wikidata.org/entity/>


SELECT ?item ?itemLabel ?itemDescription
SELECT DISTINCT ?item ?itemLabel ?itemDescription
?wikidataEquivalentURI  
?wikidataEquivalentURI
?wdImage #P18 image from Wikidata


WHERE  
WHERE  
{
{
   ?item wikibase:identifiers ?b
   VALUES ?item {kbwd:Q10 kbwd:Q29} # Louis Auguste Gustave Doré + Theun de Vries
   ?item wdt:P1 ?wikidataEquivalentURI.
   ?item kbwdt:P1 ?wikidataEquivalentURI.
 
  SERVICE <https://query.wikidata.org/sparql>{
   SERVICE wikibase:label { bd:serviceParam wikibase:language "nl". }
   OPTIONAL {?wikidataEquivalentURI wdt:P18 ?wdImage.}
   
}
SERVICE wikibase:label { bd:serviceParam wikibase:language "nl". }
}
}
ORDER BY ASC(xsd:integer(STRAFTER(STR(?item), 'Q')))
ORDER BY ASC(xsd:integer(STRAFTER(STR(?item), 'Q')))
</sparql>
</sparql>

Revision as of 16:08, 30 June 2022

Voorbeelden

Overview of properties (Ps) in this Wikibase, with their Labels, Descriptions and Aliases, both in NL and in EN, as well their equivalent properties in Wikidata (if applicable)

# Overview of properties in this Wikibase, 
# with their Labels, Descriptions and Aliases, 
# both in NL and in EN, 
# as well their equivalent properties in Wikidata (if applicable) 

PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX schema: <http://schema.org/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX wikibase: <http://wikiba.se/ontology#>
PREFIX wdt: <https://kbtestwikibase.wikibase.cloud/prop/direct/>

SELECT DISTINCT ?p ?pType 
?pLabelNL ?pLabelEN 
?pDescriptionNL ?pDescriptionEN 
(GROUP_CONCAT(DISTINCT ?pAliasNL ; separator = "|") as ?pAliasesNL )
(GROUP_CONCAT(DISTINCT ?pAliasEN ; separator = "|") as ?pAliasesEN )
?wikidataEquivalentProperty

WHERE {

  ?p wikibase:propertyType ?pType .
  OPTIONAL{?p wdt:P1 ?wikidataEquivalentProperty.} 

  OPTIONAL{?p rdfs:label ?pLabelNL FILTER(LANG(?pLabelNL)='nl').}
  OPTIONAL{?p rdfs:label ?pLabelEN FILTER(LANG(?pLabelEN)='en').}
  
  OPTIONAL{?p schema:description ?pDescriptionNL FILTER(LANG(?pDescriptionNL) = "nl"). }  
  OPTIONAL{?p schema:description ?pDescriptionEN FILTER(LANG(?pDescriptionEN) = "en"). }
  
  OPTIONAL{?p skos:altLabel ?pAliasNL FILTER(LANG(?pAliasNL) = "nl"). }  
  OPTIONAL{?p skos:altLabel ?pAliasEN FILTER(LANG(?pAliasEN) = "en"). }     
    
}
GROUP BY ?p ?pType ?pLabelNL ?pLabelEN ?pDescriptionNL ?pDescriptionEN ?wikidataEquivalentProperty
ORDER BY ASC(xsd:integer(STRAFTER(STR(?p), 'P')))

Try it!


Overview of items (Qs) in this Wikibase, with their Labels, Descriptions and Aliases, both in NL and in EN, as well their equivalent Q-items en URIs in Wikidata (if applicable)

# Overview of items (Qs) in this Wikibase, 
# with their Labels, Descriptions and Aliases, 
# both in NL and in EN, 
# as well their equivalent Q-items en URIs in Wikidata (if applicable) 

PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX schema: <http://schema.org/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX wikibase: <http://wikiba.se/ontology#>
PREFIX wdt: <https://kbtestwikibase.wikibase.cloud/prop/direct/>

SELECT DISTINCT ?item ?itemLabelNL ?itemLabelEN 
?itemDescriptionNL ?itemDescriptionEN 
(GROUP_CONCAT(DISTINCT ?itemAliasNL ; separator = "|") as ?itemAliasesNL )
(GROUP_CONCAT(DISTINCT ?itemAliasEN ; separator = "|") as ?itemAliasesEN )
?wikidataEquivalentURI ?wikidataEquivalentItem 

WHERE 
{
  ?item wikibase:identifiers ?b
  OPTIONAL{?item wdt:P1 ?wikidataEquivalentURI.} 
  OPTIONAL{?item wdt:P4 ?wikidataEquivalentItem.} 

  OPTIONAL{?item rdfs:label ?itemLabelNL FILTER(LANG(?itemLabelNL)='nl').}
  OPTIONAL{?item rdfs:label ?itemLabelEN FILTER(LANG(?itemLabelEN)='en').}
  
  OPTIONAL{?item schema:description ?itemDescriptionNL FILTER(LANG(?itemDescriptionNL) = "nl"). }  
  OPTIONAL{?item schema:description ?itemDescriptionEN FILTER(LANG(?itemDescriptionEN) = "en"). }
  
  OPTIONAL{?item skos:altLabel ?itemAliasNL FILTER(LANG(?itemAliasNL) = "nl"). }  
  OPTIONAL{?item skos:altLabel ?itemAliasEN FILTER(LANG(?itemAliasEN) = "en"). }     
    
}
GROUP BY ?item ?itemLabelNL ?itemLabelEN ?itemDescriptionNL ?itemDescriptionEN ?wikidataEquivalentURI ?wikidataEquivalentItem  
ORDER BY ASC(xsd:integer(STRAFTER(STR(?item), 'Q')))

Try it!


Alle Ps en Qs samen

# All Ps and Qs in this Wikibase
PREFIX wikibase: <http://wikiba.se/ontology#>

SELECT  ?statement ?statementLabel ?statementDescription ?statementAltLabel
WHERE 
{
   ?statement wikibase:statements ?b
  SERVICE wikibase:label { bd:serviceParam wikibase:language "nl". }
}
ORDER BY ?statement

Try it!


Claim ids (GUID) for Qnumbers in this Wikibase

# Find claim ids (GUID) for Qnumbers in this Wikibase
# https://kbtestwikibase.wikibase.cloud/w/api.php?action=help&modules=wbgetclaims
PREFIX wikibase: <http://wikiba.se/ontology#>
PREFIX p: <https://kbtestwikibase.wikibase.cloud/prop/>
PREFIX ps: <https://kbtestwikibase.wikibase.cloud/prop/statement/>

SELECT  ?item ?itemLabel ?itemDescription ?claim ?IsEenLabel
WHERE 
{
    ?item wikibase:identifiers ?b.
    ?item p:P3 ?claim.            
    ?claim ps:P3 ?IsEen.           

  SERVICE wikibase:label { bd:serviceParam wikibase:language "nl". }
}
ORDER BY ASC(xsd:integer(STRAFTER(STR(?item), 'Q')))
LIMIT 35

Try it!


Dingen die een instantie (P3) zijn van andere dingen

# Dingen die een instantie (P3) zijn van andere dingen
PREFIX wd: <https://kbtestwikibase.wikibase.cloud/entity/>
PREFIX wdt: <https://kbtestwikibase.wikibase.cloud/prop/direct/>
PREFIX wikibase: <http://wikiba.se/ontology#>

SELECT ?ding ?dingLabel ?dingDescription  ?IsEen ?IsEenLabel ?IsEenDescription WHERE
{
?ding wdt:P3 ?IsEen 
  SERVICE wikibase:label { bd:serviceParam wikibase:language "nl". }
}

Try it!


Federated querying: mixing data from this Wikibase with data from Wikidata

# Federated querying: mixing data from this Wikibase with data from Wikidata 
PREFIX wikibase: <http://wikiba.se/ontology#>
PREFIX kbwdt: <https://kbtestwikibase.wikibase.cloud/prop/direct/>
PREFIX kbwd: <https://kbtestwikibase.wikibase.cloud/entity/>
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX wd: <http://www.wikidata.org/entity/>

SELECT DISTINCT ?item ?itemLabel ?itemDescription
?wikidataEquivalentURI
?wdImage #P18 image from Wikidata

WHERE 
{
  VALUES ?item {kbwd:Q10 kbwd:Q29} # Louis Auguste Gustave Doré + Theun de Vries 
  ?item kbwdt:P1 ?wikidataEquivalentURI.
  SERVICE <https://query.wikidata.org/sparql>{
  OPTIONAL {?wikidataEquivalentURI wdt:P18 ?wdImage.}
 }
 SERVICE wikibase:label { bd:serviceParam wikibase:language "nl". }
}
ORDER BY ASC(xsd:integer(STRAFTER(STR(?item), 'Q')))

Try it!