Query the Linked-Data and let its values Sparkle (aka SPARQL)
Using this page you can query the linked-data in the Greenstone3 eurovision triplestore
graph using SPARQL query syntax.
The default query provided in the text box below is effectively issuing a query that
returns everything stored (a bit like matching with the wildcard '*' that some text-based search
systems have), limited to show just the first 500 entries that matched.
Use the default query to get a feel for the data that is
stored. Feel free to experiment with the syntax to vary
what is returned. For example, to view other "slices"
of the rows of data returned, change the values of
OFFSET and LIMIT. OFFSET controls how many result rows
are skipped over before rows are selected. LIMIT
controls how many rows are then taken.
Alternatively, you might be interested in experimenting
with forms of access to the triplestore through the more powerful, but complex:
The sample queries provided below gradually increase in
the query syntax complexity used. They are intended
primarily for illustrative purposes, to introduce a user
unfamiliar to various aspects of SPARQL query syntax.
Click on one of the Load query above buttons to load
the relevant query syntax into the SPARQL Query textbox
above, then press Get Results to initiate the
query.
PREFIX gsdlextracted: <http://greenstone.org/gsdlextracted#>
SELECT ?subject ?predicate ?object WHERE {
GRAPH <https://so-we-must-think.space/greenstone3/eurovision-library/collection/eurovision> {
?subject ?predicate ?object.
?subject gsdlextracted:Year "2000".
# The following removes a triple that stores JSON data that
# is voluminous but not very interesting to look at
FILTER (?predicate != gsdlextracted:JSON).
}
}
OFFSET 0 LIMIT 200
PREFIX gsdlextracted: <http://greenstone.org/gsdlextracted#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
SELECT ?subject ?predicate ?object WHERE {
GRAPH <https://so-we-must-think.space/greenstone3/eurovision-library/collection/eurovision> {
?subject ?predicate ?object
# The following removes a triple that stores JSON data that
# is voluminous but not very interesting to look at
FILTER (?predicate != gsdlextracted:JSON).
?subject gsdlextracted:Year ?year.
?subject gsdlextracted:Country ?country.
FILTER (?country = "France").
FILTER (xsd:integer(?year) >= 1996 && xsd:integer(?year) <= 2000).
}
}
OFFSET 0 LIMIT 200
Similar to the default query (all results returned) but restricted to entries associated with the year 2000.
Year Restricted (raw data rows) then filter out gsdlextracted:JSON entries:
Similar to the previous query (restricted to results from 2000) but filtering out the voluminous, but not very interesting to look at,
gsdlextracted:JSON.
This field is formed by Greenstone at ingest-time: it represents all the metadata fields for a particular country
stored in the JSON format. It is a handy item for the Greenstone3 runtime-system to access, but in the context of viewing the output
of SPARQL queries at HTML only serves to pollute the generated result set with large text items.
Country and Year Restricted (raw data rows):
Similar to the previous query, but restricted to entries about the country France, in the years 1996-2000.
Eurovision Song Contest (ESC) entrants:
List all the entrants (country and year) sorted by year, then by country.
Eurovision Song Contest (ESC) entrants with (estimated) musical key:
Similar to the above query that list all the entrants (country and year) sorted by year, then by country, but also displays
the estimated key signature of the song, which is pre-computed using the Essentia audio content analysis toolkit
when the collection is built.
Musical scale comparison of winning entries:
Frequency count of the scale (major or minor) that
winning songs were in. The estimated musical scale
of the song is an estimate, pre-computed using the
Essentia audio content analysis toolkit when the
collection is built.
Voting Totals in 1975:
In 1975 all voting was done exclusively by jury. This query retrieves the
totals of this Single voting format, and orders them by that score.
Jury Votes Cast by Country in 1975:
List all votes case in the 1975 competition.
Most points won:
List the countries which won and their voting totals, sorted by total score.
Number of Times Countries Have Won:
The number of times a country has won Eurovision
across the years. The includes the years when only
Juries voted (1956-2000) through to the introduction
of Televotes, where a variety of forms have been
used such as only Televotes, a pre-combined score
based on Televotes and Jury votes, to (from 2016
onwards) where the Jury and Tele votes are
explicitly given individually per country, then
combined.
This query works off the Voting Totals countries
received, and so if you run the query you'll see
that it computes (as of 2021) that France has won 6
times, when the official record puts this at 5 for
France. This is due to a tie that occurred between
Sweeden and France in the 1991 final, and how it was
resolved. From Wikipedia:
“After the four-way tie at the 1969 contest, a
tie-break system had been implemented, where a
count-back on the number of top points awarded was
used. Since both countries received four 12-points,
but Sweden gaining five 10-points over France's two,
Sweden was declared the winner with France coming
second.”
From Hero to Zero!
List countries where, having won in one year, they
have gone on to lose with the lowest score of the
contest the following year. Note this definition
doesn't quite meet the given heading of From Here
to Zero. There is in fact only one country, to
date, where this has happened (nul-point the
following year). View the table to see who it is
... then why not test out your SPARQL querying
skills and see if you can modify the query used so
it only returns the Hero to Zero case?
Facts and Figures About Competing Countries:
Demographics about other related information about the countries the song contest entries are from.
Query takes a bit longer to run than the previous ones.
Looking for something a bit more visual? Why not head over to our
SGVizler page and try the SPARQL-based visualization samples there.