Project:SPARQL/examples: Difference between revisions
Jump to navigation
Jump to search
GreenReaper (talk | contribs) m (Update query and URLs) |
GreenReaper (talk | contribs) (→Convention instances, including postponements: +coordinate location) |
||
(2 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
These [[wikipedia:SPARQL|SPARQL]] queries [//furry. | These [[wikipedia:SPARQL|SPARQL]] queries [//furry.wikibase.cloud/query/ can be used] in the local [[wikidata:Wikidata:SPARQL query service|Query Service]]. See [[wikidata:Wikidata:SPARQL tutorial|Wikidata's tutorial]] for an overview. The custom prefix declarations are required, and do not autocomplete (<code>wd:</code> does, but actually queries Wikidata). | ||
==Conventions== | ==Conventions== | ||
Line 25: | Line 25: | ||
PREFIX wfd: <https://furry.wikibase.cloud/entity/> | PREFIX wfd: <https://furry.wikibase.cloud/entity/> | ||
PREFIX wfdt: <https://furry.wikibase.cloud/prop/direct/> | PREFIX wfdt: <https://furry.wikibase.cloud/prop/direct/> | ||
PREFIX | PREFIX wfdp: <https://furry.wikibase.cloud/prop/> | ||
PREFIX | PREFIX wfdps: <https://furry.wikibase.cloud/prop/statement/> | ||
PREFIX | PREFIX wfdpq: <https://furry.wikibase.cloud/prop/qualifier/> | ||
SELECT ?eventInstanceLabel ?eventStart ?eventEnd ?eventRank ?eventSeriesLabel | SELECT ?eventInstanceLabel ?eventStart ?eventEnd ?eventRank ?eventSeriesLabel | ||
WHERE | WHERE | ||
Line 37: | Line 37: | ||
# duplicate for each start time property | # duplicate for each start time property | ||
# (not wfdt: to get single eventStart) | # (not wfdt: to get single eventStart) | ||
wfdp:P6 ?eventStartProp. | |||
# populate start time for the row with this property | # populate start time for the row with this property | ||
?eventStartProp | ?eventStartProp wfdps:P6 ?eventStart. | ||
# normal or deprecated (rescheduled/cancelled) | # normal or deprecated (rescheduled/cancelled) | ||
?eventStartProp wikibase:rank ?eventRank. | ?eventStartProp wikibase:rank ?eventRank. | ||
# grab end time as qualifier if present (else, one-day event) | # grab end time as qualifier if present (else, one-day event) | ||
OPTIONAL {?eventStartProp | OPTIONAL {?eventStartProp wfdpq:P7 ?eventEnd} | ||
OPTIONAL {?eventInstance wfdt:P3 ?eventLocation} | |||
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". } | SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". } | ||
} | } | ||
ORDER BY DESC(?eventInstanceLabel) DESC(?eventStart) DESC(?eventRank) | ORDER BY DESC(?eventInstanceLabel) DESC(?eventStart) DESC(?eventRank) | ||
</SPARQL> | </SPARQL> |
Latest revision as of 00:41, 10 May 2024
These SPARQL queries can be used in the local Query Service. See Wikidata's tutorial for an overview. The custom prefix declarations are required, and do not autocomplete (wd:
does, but actually queries Wikidata).
Conventions
Convention series with data and logo URL
PREFIX wfd: <https://furry.wikibase.cloud/entity/>
PREFIX wfdt: <https://furry.wikibase.cloud/prop/direct/>
SELECT ?itemLabel ?creationDate (CONCAT("https://en.wikifur.com/w/images/", substr(?logoMD5, 1, 1), "/", substr(?logoMD5, 1, 2), "/", ?logoFileName) AS ?logoURL)
WHERE
{
?item wfdt:P2 wfd:Q2 .
?item wfdt:P6 ?creationDate .
OPTIONAL {
?item wfdt:P15 ?logoFileName.
BIND(MD5(?logoFileName) as ?logoMD5).
}
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en" }
}
ORDER BY ?creationDate
Convention instances, including postponements
PREFIX wfd: <https://furry.wikibase.cloud/entity/>
PREFIX wfdt: <https://furry.wikibase.cloud/prop/direct/>
PREFIX wfdp: <https://furry.wikibase.cloud/prop/>
PREFIX wfdps: <https://furry.wikibase.cloud/prop/statement/>
PREFIX wfdpq: <https://furry.wikibase.cloud/prop/qualifier/>
SELECT ?eventInstanceLabel ?eventStart ?eventEnd ?eventRank ?eventSeriesLabel
WHERE
{
# subclass of furcons
?eventSeries wfdt:P2 wfd:Q2.
# instance of specific furcon
?eventInstance wfdt:P1 ?eventSeries;
# duplicate for each start time property
# (not wfdt: to get single eventStart)
wfdp:P6 ?eventStartProp.
# populate start time for the row with this property
?eventStartProp wfdps:P6 ?eventStart.
# normal or deprecated (rescheduled/cancelled)
?eventStartProp wikibase:rank ?eventRank.
# grab end time as qualifier if present (else, one-day event)
OPTIONAL {?eventStartProp wfdpq:P7 ?eventEnd}
OPTIONAL {?eventInstance wfdt:P3 ?eventLocation}
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
ORDER BY DESC(?eventInstanceLabel) DESC(?eventStart) DESC(?eventRank)