Help
Difference between revisions of "SPARQL"
Line 60: | Line 60: | ||
|} | |} | ||
− | == Speaker name → Speaker Qid == | + | == ✅ Speaker name → Speaker Qid == |
{| | {| | ||
Line 68: | Line 68: | ||
select ?speakerName ?speakerId | select ?speakerName ?speakerId | ||
where { | where { | ||
− | VALUES ?speakerName { "Yug" "VIGNERON" } #One or multiple values | + | VALUES ?speakerName { "Yug" "VIGNERON" } # One or multiple values |
BIND ( STRLANG(?speakerName, "en") AS ?speakerLabel ) | BIND ( STRLANG(?speakerName, "en") AS ?speakerLabel ) | ||
+ | # P2: instance of; Q3: speaker. | ||
?speakerId prop:P2 entity:Q3 ; rdfs:label ?speakerLabel . | ?speakerId prop:P2 entity:Q3 ; rdfs:label ?speakerLabel . | ||
} | } | ||
Line 78: | Line 79: | ||
select ?speakerName ?speakerId | select ?speakerName ?speakerId | ||
where { | where { | ||
− | VALUES ?speakerName { "Yug" "VIGNERON" } #One or multiple values | + | VALUES ?speakerName { "Yug" "VIGNERON" } # One or multiple values |
BIND ( STRLANG(?speakerName, "en") AS ?speakerLabel ) | BIND ( STRLANG(?speakerName, "en") AS ?speakerLabel ) | ||
+ | # P2: instance of; Q3: speaker. | ||
?speakerId prop:P2 entity:Q3 ; rdfs:label ?speakerLabel . | ?speakerId prop:P2 entity:Q3 ; rdfs:label ?speakerLabel . | ||
} | } |
Revision as of 20:57, 5 December 2021
Base
- Special:ListProperties
- List of properties with possible values. Ex: Gender (P8) : male (male (Q16)), female (female (Q17)), intersex (intersex (Q18)).
- LinguaLibre:List of languages
- DataViz:Speakers
- DataViz:Records
✅ Is Sex or Gender(sex or gender (Q7)) → list all possible values
SELECT ?item ?itemLabel
WHERE {
# P2: instance of; P9: subclass of; Q7: gender or sex.
?item prop:P2/prop:P9 * entity:Q7
SERVICE wikibase:label {
bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en" .
}
}
|
|
✅ Is Speaker (speaker (Q3)) → list all speakers
select ?speaker ?speakerLabel
where {
#P2: instance of; Q3: speaker.
?speaker prop:P2 entity:Q3 .
SERVICE wikibase:label {
bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en" .
}
}
|
|
✅ Speaker name → Speaker Qid
select ?speakerName ?speakerId
where {
VALUES ?speakerName { "Yug" "VIGNERON" } # One or multiple values
BIND ( STRLANG(?speakerName, "en") AS ?speakerLabel )
# P2: instance of; Q3: speaker.
?speakerId prop:P2 entity:Q3 ; rdfs:label ?speakerLabel .
}
|
|
Speaker Qid (0x010C (Q42)) → Speaker data
SELECT ?predicate ?object
WHERE {
entity:Q42 ?predicate ?object .
}
|
|
Speaker Qid → Speaker data → speaker languages
SELECT ?languages
WHERE {
entity:Q42 prop:P4 ?languages .
}
|
|
Speaker Qid + language → list of all associated audios
SELECT ?audio WHERE {
?audio prop:P5 entity:Q42 .
?audio prop:P4 entity:Q21 .
}
|
|
Is Language (speaker (Q3)) → list all languages with number of unique words and speakers
SELECT ?language (COUNT(?audio) AS ?nbAudio) (COUNT(?speaker) AS ?nbSpeaker) WHERE {
?language prop:P2 entity:Q4 .
?audio prop:P4 ?language .
?speaker prop:P4 ?language .
}
GROUP BY ?language
Too large to work :(
Isolang → Language LL Qid
SELECT * WHERE {
?lang prop:P13 ?code .
}
|
|
Isolang → Language WD Qid
SELECT * WHERE {
?lang prop:P12 ?idWikidata .
}
|
|
Language WD Qid → Language data
SELECT * WHERE {
?lang prop:P12 "Q12107" .
?lang ?predicate ?object .
}
|
|
Language LL Qid → Language data
SELECT * WHERE {
entity:Q209 ?predicate ?object .
}
|
|
Langue + speaker + word → Audio's Qid
SELECT ?audio WHERE {
?audio prop:P4 entity:Q209 . #language
?audio prop:P5 entity:Q584098 . #speaker
?audio rdfs:label ?word . #word
FILTER ( STR(?word) = "ni" )
}
|
|
Audio Qid → Audio data
✅ Langue + speaker + word → Audio's Commons url
Tools
- Special:ApiSandbox – API queries generator for Lingualibre wikipage and wikibase contents.