diff --git a/daapinterface.py b/daapinterface.py index 5d8602b..1beb31e 100644 --- a/daapinterface.py +++ b/daapinterface.py @@ -136,47 +136,49 @@ def browsebycategory(): @app.route("/artistsindex") def artistsindex(): sparql.setQuery(''' - SELECT ?creators ?creatorsLabel ?creatorsAltLabel ?creatorsDescription - WHERE { + SELECT ?creators ?creatorsLabel ?creatorsAltLabel ?creatorsDescription WHERE { { - SELECT ?creators (COUNT(DISTINCT ?a) AS ?count) WHERE { - ?a ?prop ?creators . - ?a wdt:P1 ?work . - BIND (wdt:P9 AS ?prop) . - BIND (wd:Q1 AS ?work) . - } GROUP BY ?creators + SELECT ?creators (COUNT(DISTINCT ?a) AS ?count) WHERE { + ?a ?prop ?creators . + ?a wdt:P1 ?work . + BIND (wdt:P9 AS ?prop) . + BIND (wd:Q1 AS ?work) . + } GROUP BY ?creators } . SERVICE wikibase:label { - bd:serviceParam wikibase:language "en" . + bd:serviceParam wikibase:language "en" . } FILTER (?creators !=wd:Q82) - } - ORDER BY DESC(?count) ?creatorsLabel + } + ORDER BY ?creatorsLabel ''') sparql.setReturnFormat(JSON) results = sparql.query().convert() + print(results) return render_template('artistsindex.html', results=results) ######################### PUBLISHERS INDEX @app.route("/publishersindex") def publishersindex(): sparql.setQuery(''' - SELECT ?publishers ?publishersLabel ?publishersAltLabel ?publishersDescription WHERE { - { - SELECT ?publishers (COUNT(DISTINCT ?a) AS ?count) WHERE { - ?a ?prop ?publishers . - ?a wdt:P1 ?work . - BIND (wdt:P10 AS ?prop) . - BIND (wd:Q1 AS ?work) . - } GROUP BY ?publishers - } . - SERVICE wikibase:label { - bd:serviceParam wikibase:language "en" . - } - FILTER(?publishers != wd:Q83) - FILTER(?publishers != wd:Q71) - } - ORDER BY DESC(?count) ?publishersLabel + SELECT ?publishers ?publishersLabel ?publishersAltLabel ?publishersDescription WHERE { + { + SELECT ?publishers (COUNT(DISTINCT ?a) AS ?count) WHERE { + ?a ?prop ?publishers . + ?a wdt:P1 ?work . + ?publishers wdt:P1 ?typeofpublisher. + BIND (wdt:P10 AS ?prop) . + BIND (wd:Q1 AS ?work) + BIND (wd:Q12 AS ?typeofpublisher). + } GROUP BY ?publishers + } . + SERVICE wikibase:label { + bd:serviceParam wikibase:language "en" . + } + FILTER(?publishers != wd:Q83) + FILTER(?publishers != wd:Q71) + } + ORDER BY DESC(?count) ?publishersLabel ''') sparql.setReturnFormat(JSON) results = sparql.query().convert() diff --git a/templates/item.html b/templates/item.html index 7499d89..c4d0752 100644 --- a/templates/item.html +++ b/templates/item.html @@ -176,7 +176,7 @@ {% for x in orglocation['results']['bindings'] %} {{ x['locationLabel']['value'] }} - {{ ", " if not loop.last else "" }} + {{ "; " if not loop.last else "" }} {% endfor %} {% endif %} @@ -192,7 +192,7 @@ {% for x in orgcountry['results']['bindings'] %} {{ x['countryLabel']['value'] }} {% if not loop.last %} - , + ; {% endif %} {% endfor %}