Project:SPARQL/examples: Difference between revisions

From KBTestWikibase
Jump to navigation Jump to search
No edit summary
Line 66: Line 66:
</sparql>
</sparql>


=== Wikidata-equivalenten van properties in deze Wikibase ===
=== 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) ===  


<sparql tryit="1">
<sparql tryit="1">
PREFIX bd: <http://www.bigdata.com/rdf#>
# 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 wikibase: <http://wikiba.se/ontology#>
PREFIX wdt: <https://kbtestwikibase.wikibase.cloud/prop/direct/>
PREFIX wdt: <https://kbtestwikibase.wikibase.cloud/prop/direct/>
PREFIX p: <https://kbtestwikibase.wikibase.cloud/prop/>
PREFIX ps: <http://www.wikidata.org/prop/statement/>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>


SELECT ?p ?pLabel ?pDescription ?pAltLabel ?w WHERE {
SELECT ?p ?pType
   ?p rdf:type wikibase:Property.
?pLabelNL ?pLabelEN
   OPTIONAL{?p wdt:P1 ?w.}  
?pDescriptionNL ?pDescriptionEN
   SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
(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')))
ORDER BY ASC(xsd:integer(STRAFTER(STR(?p), 'P')))
</sparql>
</sparql>

Revision as of 11:36, 30 June 2022

Examples

Alle Ps in deze Wikibase

#All properties with descriptions and aliases and types
PREFIX wikibase: <http://wikiba.se/ontology#>

SELECT ?property ?propertyType ?propertyLabel ?propertyDescription ?propertyAltLabel WHERE {
  ?property wikibase:propertyType ?propertyType .
  # or:   ?property rdf:type wikibase:Property
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
ORDER BY ASC(xsd:integer(STRAFTER(STR(?property), 'P')))

Try it!


Alle Qs in deze Wikibase

# All Qnumbers in this Wikibase
PREFIX wikibase: <http://wikiba.se/ontology#>
SELECT  ?identifier ?identifierLabel ?identifierDescription ?identifierAltLabel 
WHERE 
{
    ?identifier wikibase:identifiers ?b
  SERVICE wikibase:label { bd:serviceParam wikibase:language "nl". }
}
ORDER BY ASC(xsd:integer(STRAFTER(STR(?identifier), '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!


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)

# 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 ?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!