PREFIX rdfs:
PREFIX list:
PREFIX SO:
SELECT (str(?member) as ?abstract)
WHERE {
?datasetId rdf:type SO:Dataset .
?datasetId SO:description ?list .
?list list:index (?pos ?member) .
# Don't include referenced sub-Datasets (i.e. a Dataset in a 'hasPart' property)
FILTER NOT EXISTS { ?id SO:hasPart ?datasetId . }
}
order by (?pos)
limit 1
]]>
PREFIX rdfs:
PREFIX SO:
SELECT ( ?name as ?title )
WHERE {
?datasetId rdf:type SO:Dataset .
?datasetId SO:name ?name .
# Don't include referenced sub-Datasets (i.e. a Dataset in a 'hasPart' property)
FILTER NOT EXISTS { ?id SO:hasPart ?datasetId . }
}
limit 1
]]>
PREFIX rdfs:
PREFIX SO:
SELECT ?label
WHERE {
?datasetId rdf:type SO:Dataset .
?datasetId SO:alternateName ?label .
# Don't include referenced sub-Datasets (i.e. a Dataset in a 'hasPart' property)
FILTER NOT EXISTS { ?id SO:hasPart ?datasetId . }
}
limit 1
]]>
PREFIX rdfs:
PREFIX SO:
SELECT
( str(?identifier) as ?awardNumber)
WHERE {
?datasetId rdf:type SO:Dataset .
{
?awardId rdf:type SO:MonetaryGrant .
?awardId SO:fundedItem ?datasetId .
?awardId SO:identifier ?identifier .
}
UNION
{
?datasetId SO:about ?awardId .
?awardId rdf:type SO:MonetaryGrant .
?awardId SO:sameAs ?identifier .
}
}
]]>
PREFIX rdfs:
PREFIX SO:
SELECT
( str(?name) as ?awardTitle)
WHERE {
?datasetId rdf:type SO:Dataset .
{
?awardId rdf:type SO:MonetaryGrant .
?awardId SO:fundedItem ?datasetId .
?awardId SO:name ?name .
}
UNION
{
?datasetId SO:about ?awardId .
?awardId rdf:type SO:MonetaryGrant .
?awardId SO:name ?name .
}
}
]]>
PREFIX list:
PREFIX SO:
SELECT (?name as ?author)
WHERE {
?dsId rdf:type SO:Dataset .
?dsId SO:creator ?list .
?list list:index (?pos ?member) .
?member SO:name ?name .
}
order by (?pos)
limit 1
]]>
PREFIX rdfs:
PREFIX SO:
SELECT
( str(?datePublished) as ?pubDate)
WHERE {
?datasetId rdf:type SO:Dataset .
?datasetId SO:datePublished ?datePublished
# Don't include referenced sub-Datasets (i.e. a Dataset in a 'hasPart' property)
FILTER NOT EXISTS { ?id SO:hasPart ?datasetId . }
}
]]>
PREFIX list:
PREFIX SO:
SELECT (?givenName as ?authorGivenName)
WHERE {
?dsId rdf:type SO:Dataset .
?dsId SO:creator ?list .
?list list:index (?pos ?member) .
?member SO:givenName ?givenName .
}
order by (?pos)
limit 1
]]>
PREFIX list:
PREFIX SO:
SELECT (?familyName as ?authorLastName)
WHERE {
?dsId rdf:type SO:Dataset .
?dsId SO:creator ?list .
?list list:index (?pos ?member) .
?member SO:familyName ?familyName .
}
order by (?pos)
]]>
PREFIX list:
PREFIX SO:
SELECT (?familyName as ?investigator)
WHERE {
?dsId rdf:type SO:Dataset .
?dsId SO:creator ?list .
?list list:index (?pos ?member) .
?member SO:familyName ?familyName .
}
order by (?pos)
]]>
PREFIX rdfs:
PREFIX SO:
SELECT
(?identifier as ?funderIdentifier)
WHERE {
?datasetId rdf:type SO:Dataset .
?datasetId SO:funder ?funderId .
?funderId SO:identifier ?identifier .
}
]]>
PREFIX rdfs:
PREFIX SO:
SELECT
(?name as ?funderName)
WHERE {
?datasetId rdf:type SO:Dataset .
?datasetId SO:funder ?funderId .
?funderId SO:name ?name .
}
]]>
PREFIX list:
PREFIX SO:
SELECT (?name as ?origin)
WHERE {
?dsId rdf:type SO:Dataset .
?dsId SO:creator ?list .
?list list:index (?pos ?member) .
?member SO:name ?name .
}
order by (?pos)
]]>
PREFIX rdfs:
PREFIX SO:
PREFIX PROV:
PREFIX PROVONE:
SELECT ( str(?derivations) as ?prov_hasDerivations )
WHERE {
?datasetId rdf:type SO:Dataset .
?datasetId PROV:hadDerivation ?derivations .
}
]]>
PREFIX rdfs:
PREFIX SO:
SELECT ?hasPart
WHERE {
?datasetId rdf:type SO:Dataset .
{
?datasetId SO:hasPart ?node .
?node rdf:type SO:Dataset .
?node SO:name ?hasPart .
}
UNION
{
?datasetId SO:hasPart ?hasPart .
# SO:Dataset can also appear as a sub-element of the 'SO:hasPart'
# so exclude those from the query result.
FILTER NOT EXISTS { ?hasPart rdf:type SO:Dataset . }
}
}
]]>
PREFIX rdfs:
PREFIX SO:
SELECT ?keywords
WHERE {
?datasetId rdf:type SO:Dataset .
?datasetId SO:keywords ?keywords .
}
]]>
PREFIX rdfs:
PREFIX xsd:
PREFIX SO:
SELECT ?licenseUrl
WHERE {
?datasetId rdf:type SO:Dataset .
?datasetId SO:license ?license .
# Don't include referenced sub-Datasets (i.e. a Dataset in a 'hasPart' property)
FILTER NOT EXISTS { ?id SO:hasPart ?datasetId . }
{
BIND(STR(?license) AS ?licenseUrl) .
}
UNION
{
?license rdf:id ?licenseUrl .
}
UNION
{
?license SO:license ?licenseUrl .
}
}
]]>
PREFIX rdfs:
PREFIX xsd:
PREFIX SO:
SELECT ?licenseName
WHERE {
?datasetId rdf:type SO:Dataset .
?datasetId SO:license ?license .
# Don't include referenced sub-Datasets (i.e. a Dataset in a 'hasPart' property)
FILTER NOT EXISTS { ?id SO:hasPart ?datasetId . }
{
BIND(STR(?license) AS ?licenseName) .
}
UNION
{
?license SO:name ?licenseName .
}
}
]]>
PREFIX rdfs:
PREFIX SO:
SELECT ?southBoundCoord
WHERE {
?datasetId rdf:type SO:Dataset .
?datasetId SO:spatialCoverage ?spatial .
?spatial rdf:type SO:Place .
?spatial SO:geo ?geo .
?geo rdf:type SO:GeoShape .
?geo SO:box ?box .
# Extract south coord, replacing commas and multiple whitespaces to single whitespaces
# to simplify parsing
bind(strbefore(replace(str(?box), "\\s*,\\s*|\\s{2,}", " "), " ") as ?southBoundCoord)
}
limit 1
]]>
PREFIX rdfs:
PREFIX SO:
SELECT ?westBoundCoord
WHERE {
?datasetId rdf:type SO:Dataset .
?datasetId SO:spatialCoverage ?spatial .
?spatial rdf:type SO:Place .
?spatial SO:geo ?geo .
?geo rdf:type SO:GeoShape .
?geo SO:box ?box .
bind(strbefore(replace(str(?box), "\\s*,\\s*|\\s{2,}", " "), " ") as ?southBoundCoord)
bind(strafter(replace(str(?box), "\\s*,\\s*|\\s{2,}", " "), " ") as ?rest)
bind(strbefore(str(?rest), " ") as ?westBoundCoord)
}
limit 1
]]>
PREFIX rdfs:
PREFIX SO:
SELECT ?northBoundCoord
WHERE {
?datasetId rdf:type SO:Dataset .
?datasetId SO:spatialCoverage ?spatial .
?spatial rdf:type SO:Place .
?spatial SO:geo ?geo .
?geo rdf:type SO:GeoShape .
?geo SO:box ?box .
bind(strbefore(replace(str(?box), "\\s*,\\s*|\\s{2,}", " "), " ") as ?southBoundCoord)
bind(strafter(replace(str(?box), "\\s*,\\s*|\\s{2,}", " "), " ") as ?rest)
bind(strbefore(str(?rest), " ") as ?westBoundCoord)
bind(strafter(str(?rest), " ") as ?rest2)
bind(strbefore(str(?rest2), " ") as ?northBoundCoord)
}
limit 1
]]>
PREFIX rdfs:
PREFIX SO:
SELECT ?eastBoundCoord
WHERE {
?datasetId rdf:type SO:Dataset .
?datasetId SO:spatialCoverage ?spatial .
?spatial rdf:type SO:Place .
?spatial SO:geo ?geo .
?geo rdf:type SO:GeoShape .
?geo SO:box ?box .
bind(strbefore(replace(str(?box), "\\s*,\\s*|\\s{2,}", " "), " ") as ?southBoundCoord)
bind(strafter(replace(str(?box), "\\s*,\\s*|\\s{2,}", " "), " ") as ?rest)
bind(strbefore(str(?rest), " ") as ?westBoundCoord)
bind(strafter(str(?rest), " ") as ?rest2)
bind(strbefore(str(?rest2), " ") as ?northBoundCoord)
bind(strafter(str(?rest2), " ") as ?eastBoundCoord)
}
limit 1
]]>
PREFIX rdfs:
PREFIX SO:
SELECT ?namedLocation
WHERE {
?datasetId rdf:type SO:Dataset .
?datasetId SO:spatialCoverage ?namedLocation .
FILTER NOT EXISTS { ?namedLocation rdf:type SO:Place . }
}
]]>
PREFIX rdfs:
PREFIX SO:
SELECT
# possible formats: "start/end", "start/..", "start"
(if(contains(?dates, "/"), strbefore(?dates, "/"), ?dates) as ?beginDate)
WHERE {
?datasetId rdf:type SO:Dataset .
?datasetId SO:temporalCoverage ?dates .
}
limit 1
]]>
PREFIX rdfs:
PREFIX SO:
SELECT
# possible formats: "start/end", "start/..", "start"
(if(contains(?dates, "/"), strafter(?dates, "/"), "") as ?endDate)
WHERE {
?datasetId rdf:type SO:Dataset .
?datasetId SO:temporalCoverage ?dates .
}
limit 1
]]>
PREFIX rdfs:
PREFIX SO:
SELECT (?variableMeasured as ?parameter)
WHERE {
?datasetId rdf:type SO:Dataset .
{
?datasetId SO:variableMeasured ?variable .
?variable rdf:type SO:PropertyValue .
?variable SO:name ?variableMeasured .
}
UNION
{
?datasetId SO:variableMeasured ?variableMeasured .
FILTER NOT EXISTS { ?parameter rdf:type SO:PropertyValue . }
}
}
]]>
PREFIX rdfs:
PREFIX schema:
SELECT ( str(?version) as ?edition )
WHERE {
?datasetId rdf:type schema:Dataset .
?datasetId schema:version ?version .
}
limit 1
]]>
PREFIX SO:
PREFIX PROV:
PREFIX PROVONE:
SELECT DISTINCT
( str(?wasDerivedFrom) as ?prov_wasDerivedFrom )
WHERE {
?datasetId rdf:type SO:Dataset .
{
?datasetId SO:isBasedOn ?wasDerivedFrom .
}
UNION
{
?datasetId PROV:wasDerivedFrom ?wasDerivedFrom .
}
}
]]>
PREFIX SO:
PREFIX PROV:
PREFIX PROVONE:
SELECT ( str(?executionId) as ?prov_usedByExecution)
WHERE {
?datasetId rdf:type SO:Dataset .
?datasetId PROV:wasUsedBy ?executionId .
}
]]>
PREFIX SO:
PREFIX PROV:
PREFIX PROVONE:
SELECT ( str(?plan) as ?prov_usedByProgram)
WHERE {
?datasetId rdf:type SO:Dataset .
?datasetId PROV:wasUsedBy ?executionId .
?executionId PROV:hadPlan ?plan.
}
]]>
PREFIX SO:
PREFIX PROV:
PREFIX PROVONE:
SELECT ( str(?executionId) as ?prov_generatedByExecution)
WHERE {
?datasetId rdf:type SO:Dataset .
?datasetId PROV:wasGeneratedBy ?executionId
}
]]>
PREFIX SO:
PREFIX PROV:
PREFIX PROVONE:
SELECT
( str(?planId ) as ?prov_generatedByProgram)
WHERE {
?datasetId rdf:type SO:Dataset .
?datasetId PROV:wasGeneratedBy ?executionId .
?executionId PROV:hadPlan ?planId
}
]]>
PREFIX SO:
PREFIX PROV:
PREFIX PROVONE:
SELECT DISTINCT
( str(?instanceType ) as ?prov_instanceOfClass )
WHERE {
?datasetId rdf:type SO:Dataset .
{
?datasetId PROV:wasGeneratedBy ?executionId .
bind ( PROVONE:Data as ?instanceType )
}
UNION
{
?datasetId PROV:wasUsedBy ?executionId .
bind ( PROVONE:Data as ?instanceType )
}
}
]]>
PREFIX rdfs:
PREFIX SO:
SELECT ( str(?url) as ?serviceEndpoint )
WHERE {
?datasetId rdf:type SO:Dataset .
{
?datasetId SO:url ?url .
# Don't include referenced sub-Datasets (i.e. a Dataset in a 'hasPart' property)
FILTER NOT EXISTS { ?id SO:hasPart ?datasetId . }
}
UNION
{
?datasetId SO:distribution ?distribution .
?distribution rdf:type SO:DataDownload .
?distribution SO:contentUrl ?url .
FILTER NOT EXISTS { ?id SO:hasPart ?datasetId . }
}
}
]]>
PREFIX xsd:
SELECT DISTINCT (str(?string) as ?text)
WHERE {
{
?a ?b ?string .
filter(datatype(?string) = xsd:string) .
}
UNION
{
?a ?b ?string .
filter(datatype(?string) = SO:HTML) .
}
}
]]>