Clean? Synchronised? Comparable? Provenance? Trustable?
Data | Number of triples | Number of observations | Ratio |
---|---|---|---|
~ 1 billion | 82.5 million | - | |
WB datasets | 221 million | 21 million | 10.5:1 |
TI datasets | 50 thousand | 4 thousand | 12.5:1 |
OECD datasets | 225 million | 24 million | 9.4:1 |
BFS metadata | 1 million | N/A | N/A |
FAO datasets | 53 million | 7.2 million | 7.4:1 |
ECB datasets | 427 million | 23 million | 18.5:1 |
IMF datasets | 36 million | 3.3 million | 10.9:1 |
http://worldbank.270a.info/dataset/world-bank-finances
http://ecb.270a.info/dataset/SEE/A/AT/WBR0/EXT/X/E/2011
http://oecd.270a.info/property/TIME
http://ecb.270a.info/property/OBS_VALUE
http://transparency.270a.info/classification/attribute/matching-percentiles
http://imf.270a.info/code/1.0/CL_AREA/CH
http://fao.270a.info/code/0.1/CL_UN_COUNTRY
http://stats.270a.info/analysis/worldbank:GC.DOD.TOTL.GD.ZS/transparency:CPI2009/2009
Cool URIs? 1, 5, 100, 10000 years?
A human and machine-friendly Web based application which uses statistical linked dataspaces for federated queries, generates analysis and visualisations.
Intended to be friendly for non-developers to discover statistical analysis.
What's common above? Single data endpoint
@prefix stats: <http://stats.270a.info/vocab#>
SELECT referenceArea measureX measureY SERVICE endpointX observation measure values for all referenceAreas from datasetX with reference period SERVICE endpointY observation measure values for all referenceAreas from datasetY with reference period FILTER referenceArea exactMatchXes from or to exactMatchYes or they are same
SELECT ?refAreaY ?x ?y ?identityX ?identityY WHERE { SERVICE <http://example.org/sparql> { SELECT DISTINCT ?identityX ?refAreaX ?refAreaXExactMatch ?measureX WHERE { ?observationX qb:dataSet <http://example.org/dataset/X> . ?observationX ?propertyRefPeriodX exampleRefPeriod:1234 . ?propertyRefAreaX rdfs:subPropertyOf* sdmx-dimension:refArea . ?observationX ?propertyRefAreaX ?refAreaX . ?propertyMeasureX rdfs:subPropertyOf* sdmx-measure:obsValue . ?observationX ?propertyMeasureX ?x . <http://example.org/dataset/X> qb:structure/stats:identityDimension ?propertyIdentityX . ?observationX ?propertyIdentityX ?identityX . OPTIONAL { ?refAreaX skos:exactMatch ?refAreaXExactMatch . FILTER (REGEX(STR(?refAreaXExactMatch), "^http://example.net/")) } } } ...
SERVICE <http://example.net/sparql> { SELECT DISTINCT ?identityY ?refAreaY ?refAreaYExactMatch ?measureY WHERE { ?observationY qb:dataSet <http://example.net/dataset/Y> . ?observationY ?propertyRefPeriodY exampleRefPeriod:1234 . ?propertyRefAreaY rdfs:subPropertyOf* sdmx-dimension:refArea . ?observationY ?propertyRefAreaY ?refAreaY . ?propertyMeasureY rdfs:subPropertyOf* sdmx-measure:obsValue . ?observationY ?propertyMeasureY ?y . <http://example.net/dataset/Y> qb:structure/stats:identityDimension ?propertyIdentityY . ?observationY ?propertyIdentityY ?identityY . OPTIONAL { ?refAreaY skos:exactMatch ?refAreaYExactMatch . FILTER (REGEX(STR(?refAreaYExactMatch), "^http://example.org/")) } } } ...
FILTER (?refAreaYExactMatch = ?refAreaX || ?refAreaXExactMatch = ?refAreaY || ?refAreaY = ?refAreaX) } ORDER BY ?identityY ?identityX ?x ?y
http://stats.270a.info/analysis/
{independentVariable}/{dependentVariable}/{referencePeriod}
{prefix}:{dataset}/{prefix}:{dataset}/{prefix}:{refPeriod}
worldbank:SP.DYN.IMRT.IN/transparency:CPI2009/year:2009
http://stats.270a.info/provenance/
{sha1(datasetX, datasetY, refPeriod)}
Or come by for the poster/demo Semantic Web Challenge session any way!