Es sieht nicht so aus, als ob derselbe Endpunkt sowohl den Hauspreisindex als auch die Postleitzahlen enthält. Allerdings sieht, wie die Ressourcen in verschiedenen enpoints verknüpft sind, so können wir eine föderierte Abfrage verwenden, um die Informationen zu kombinieren:
prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>
prefix owl: <http://www.w3.org/2002/07/owl#>
prefix xsd: <http://www.w3.org/2001/XMLSchema#>
prefix sr: <http://data.ordnancesurvey.co.uk/ontology/spatialrelations/>
prefix pc: <http://data.ordnancesurvey.co.uk/ontology/postcode/>
prefix ukhpi: <http://landregistry.data.gov.uk/def/ukhpi/>
prefix lrppi: <http://landregistry.data.gov.uk/def/ppi/>
prefix skos: <http://www.w3.org/2004/02/skos/core#>
prefix lrcommon: <http://landregistry.data.gov.uk/def/common/>
SELECT DISTINCT ?regionName ?postcode ?date ?ukhpi ?volume {
SERVICE <http://data.ordnancesurvey.co.uk/datasets/os-linked-data/apis/sparql> {
VALUES ?postcode {
# Insert postcodes here (two example postcodes below)
"NP20 5AW"
"SW1W 0NY"
}
?postcodeUri rdfs:label ?postcode ;
pc:district ?ordnanceSurveyRegion .
}
?region owl:sameAs ?ordnanceSurveyRegion .
?region rdfs:label ?regionName .
FILTER (langMatches(lang(?regionName), "EN"))
?report
ukhpi:refRegion ?region;
ukhpi:refMonth ?date;
ukhpi:housePriceIndex ?ukhpi.
OPTIONAL {
?report ukhpi:salesVolume ?volume
}
} ORDER BY DESC(?date)
Hier fragen wir die Ordnance Survey Endpunkt der Regionen (Kreis) mit Postleitzahlen zu bekommen, und dann Holen Sie sich die Hauspreisindizes mit diesen Regionen.
Beachten Sie, dass das Einfügen aller 900 Postleitzahlen auf einmal zu viel für den Endpunkt sein kann.
Try the query in Yasgui.
Wahrscheinlich sollten Sie nur die Zeile auskommentieren, die mit 'values' beginnt (plazieren Sie' # 'vor dieser Zeile). –
ok ich werde es versuchen, und wo gebe ich die Liste der Postleitzahlen ein? – rjo93
Nun, haben Sie eine Idee, wie man auf eine einzige Abfrage für eine einzige Postleitzahl? –