SlideShare a Scribd company logo
1 of 35
The OECD Delta Project
IMAODBC - Neuchatel, 16-20 September 2013
Jonathan Challener, OECD
{“Providing easier access to data”:“Through APIs”}
Accessible
Open
Free
Find
Understand
Use
Machine-readable
Indexable
Re-Useable
Available without
charge
Making OECD data Open, Accessible, Free
Accessible
Open
Free
Find
Understand
Use
Machine-readable
Indexable
Re-Useable
Available without
charge
Making OECD data Open, Accessible, Free
{“the oecd experience”:“2007-2012”}
Machine-readable
SDMX is the global standard for statistical
data and metadata exchange
SDMX-ML 2.0 Web Service
<?xml version="1.0"?>
<message:MessageGroup
xmlns:message="http://www.SDMX.org/resources/SDMXML/schemas/v2_0/message"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.SDMX.org/resources/SDMXML/schemas/v2_0/generic
http://www.sdmx.org/docs/2_0/SDMXGenericData.xsd
http://www.SDMX.org/resources/SDMXML/schemas/v2_0/message
http://www.sdmx.org/docs/2_0/SDMXMessage.xsd"
xmlns:common="http://www.SDMX.org/resources/SDMXML/schemas/v2_0/common"
xmlns="http://www.SDMX.org/resources/SDMXML/schemas/v2_0/generic"><Header
xmlns="http://www.SDMX.org/resources/SDMXML/schemas/v2_0/message">
<ID>none</ID><Test>false</Test><Truncated>false</Truncated><Prepared>2013-04-
15T11:46:19</Prepared>
<Sender id="OECD"><Name xml:lang="en">Organisation for Economic Co-operation and
Development</Name>
<Name xml:lang="fr">Organisation de coopération et de développement
économiques</Name></Sender></Header>
<DataSet
keyFamilyURI="http://stats.oecd.org/RestSDMX/sdmx.ashx/GetKeyFamily/REFSERIES/OEC
D/?resolveRef=true">
<KeyFamilyRef>REFSERIES</KeyFamilyRef>
<Series>
<SeriesKey><Value value="FRA" concept="LOCATION"/><Value
value="YPTTTTL1_ST" concept="SUBJECT"/><Value value="A"
concept="FREQUENCY"/></SeriesKey>
<Attributes><Value value="P1Y" concept="TIME_FORMAT"/></Attributes>
<Obs><Time>2010</Time><ObsValue value="62927.11"/></Obs>
<Obs><Time>2011</Time><ObsValue value="63249.09"/></Obs>
</Series>
</DataSet></message:MessageGroup>
OECD.Stat - the OECD Data Warehouse
Solution - was the first dissemination system
to provide a means for disseminating data in
the internationally agreed standard, SDMX.
Having implemented a fully conforming 2.0
SDMX web service in 2007
Automated data exchange
Then began to introduce a number of
automated data exchanges through SDMX
2.0 interface with several organisations and
data-resellers / aggregators
Flexible
However although SDMX is highly flexible
but complex
It is also highly complex. This slowed its
uptake and also reuse
{“the oecd experience”:“2012-beyond”}
So entered a period when users needs
changed and with an ever increasing demand
for reuse.
KISS
Then started the thinking about KISS…
KISS Principle
No not the band but the KISS Principle: Keep
it simple, stupid (and short)!
Date: Mon, 12 Mar 2012 13:30:01 CET
Location: OECD, Paris
Meeting: OECD’s Statistical Information System
Collaboration Community (SIS-CC) workshop
Presenter: Xavier Badosa
Title: Standards for statistical data dissemination
Content-Type: Simplify+JSONify/SDMX
In March 2012 the 2nd OECD’s Statistical
Information System Collaboration Community
(SIS-CC) workshop took place with a
presentation by Xavier Badosa to push for a
simplified SDMX and create a common
JSON based format for statistical
dissemination.
XML
JSON
SDMX-JS?
SDMX-ML
Xavier proposed to take SDMX-ML (XML)
and together with JSON, a JavaScript Object
Notation (JSON) text-based open standard
designed for human-readable data
interchange.
"generic:Attributes" : {"generic:Value" : {"@concept" :
"OBS_STATUS", "@value" : "P"}}}, {"generic:Time" : "2011-
04", "generic:ObsValue" : {"@value" :
"106.56246"}, "generic:Attributes" : {"generic:Value" : {"@concept" :
"OBS_STATUS", "@value" : "P"}}}, {"generic:Time" : "2011-
05", "generic:ObsValue" : {"@value" :
"113.26596"}, "generic:Attributes" : {"generic:Value" : {"@concept" :
"OBS_STATUS", "@value" : "P"}}}, {"generic:Time" : "2011-
06", "generic:ObsValue" : {"@value" :
"114.22037"}, "generic:Attributes" : {"generic:Value" : {"@concept" :
"OBS_STATUS", "@value" : "P"}}}, {"generic:Time" : "2011-
07", "generic:ObsValue" : {"@value" :
"108.77534"}, "generic:Attributes" : {"generic:Value" : {"@concept" :
"OBS_STATUS", "@value" : "P"}}}, {"generic:Time" : "2011-
08", "generic:ObsValue" : {"@value" :
"116.37424"}, "generic:Attributes" : {"generic:Value" : {"@concept" :
"OBS_STATUS", "@value" : "P"}}}, {"generic:Time" : "2011-
09", "generic:ObsValue" : {"@value" :
“XMLish”
JSON
To create an XMLish JSON!
Standard definition led by SDMX TWG sub group
This was the start of an important parallel
evolution in SDMX led by a sub group of the
SDMXTWG.
{"sdmx-proto-json": "2013-03-26",
"structure": {
"dimensions": [
{ "id": "LOCATION", "name": "Country", "role": null,
"codes": [{"selected": true, "id": "FRA", "name":
"France"}]},
{ "id": "SUBJECT", "name": "Subject", "role": null,
"codes": [{"selected": true, "id":
"YPTTTTL1_ST", "name":
"Population mid-year estimates
Total, Annual, ('000)"}]},
{ "id": "FREQUENCY", "name": "Frequency", "role": null,
"codes": [{"selected": true, "id": "A", "name":
"Annual"}]},
{ "id": "TIME_PERIOD", "name": "Time", "role": null,
"codes": [{"selected": false, "id": "2010", "name":
"2010"},
{"selected": false, "id":
"2011","name": "2011"}]}
]},
"header": {"name": "Reference Series", "id": "none", "test":
"false",
"truncated": "false", "prepared": "2013-04-15T12:03:41",
"sender": {"id": "OECD", "name": "Organisation for Economic
Co-operation and Development"}},
"dataSets": []
}
{"sdmx-proto-json": "2013-02-05",
"structure": {"structure": "BISWEB_EERDATAFLOW", "href":
"todo",
"components": {
"LOCATION": {"id": "LOCATION", "name": "Country",
"values": [{"id": "FRA",
"name": "France"}]},
"SUBJECT": {"id": "SUBJECT", "name": "Subject",
"values": [{"id":
"YPTTTTL1_ST", "name":
"Population mid-year
estimates Total, Annual, ('000)"}]},
"FREQUENCY": {"id": "FREQUENCY", "name": "Frequency",
"values": [{"id": "A",
"name": "Annual"}]},
"TIME_PERIOD": {"id": "TIME_PERIOD", "name": "Time",
"values": [{"id":
"2010", "name": "2010"},
{"id": "2011", "name": "2011"}]},
"packaging": {
"dataSetDimensions": [],
"seriesDimensions": ["LOCATION", "SUBJECT",
"FREQUENCY"],
"observationDimensions": ["TIME_PERIOD"],
}}},
"header": {"name": "Reference Series", "id": "none", "test":
"false",
"truncated": "false", "prepared": "2013-04-15T13:48:40",
"sender": {"id": "OECD", "name": "Organisation for Economic
Co-operation and Development"}},
"dataSets": []
}
Two formats proposed
CodeIndex Slice
In late 2012 with 2 formats being
proposed, JSON-Codeindex and JSON-
Slice, the OECD set about creating a API to
service users with the 2 proposed JSON
based formats. The OECD SDMX-PROTO-
JSON API was launched in early 2013 ahead
of the 2013 SIS-CC workshop.
{"sdmx-proto-json": "2013-03-26",
"structure": {
"dimensions": [
{ "id": "LOCATION", "name": "Country", "role": null,
"codes": [{"selected": true, "id": "FRA", "name":
"France"}]},
{ "id": "SUBJECT", "name": "Subject", "role": null,
"codes": [{"selected": true, "id": "YPTTTTL1_ST",
"name":
"Population mid-year estimates
Total, Annual, ('000)"}]},
{ "id": "FREQUENCY", "name": "Frequency", "role": null,
"codes": [{"selected": true, "id": "A", "name":
"Annual"}]},
{ "id": "TIME_PERIOD", "name": "Time", "role": null,
"codes": [{"selected": false, "id": "2010", "name":
"2010"},
{"selected": false, "id":
"2011","name": "2011"}]}
]},
"header": {"name": "Reference Series", "id": "none", "test":
"false",
"truncated": "false", "prepared": "2013-04-15T12:03:41",
"sender": {"id": "OECD", "name": "Organisation for Economic
Co-operation and Development"}},
"dataSets": []
}
{"sdmx-proto-json": "2013-02-05",
"structure": {"structure": "BISWEB_EERDATAFLOW", "href":
"todo",
"components": {
"LOCATION": {"id": "LOCATION", "name": "Country",
"values": [{"id": "FRA",
"name": "France"}]},
"SUBJECT": {"id": "SUBJECT", "name": "Subject",
"values": [{"id":
"YPTTTTL1_ST", "name":
"Population mid-year
estimates Total, Annual, ('000)"}]},
"FREQUENCY": {"id": "FREQUENCY", "name": "Frequency",
"values": [{"id": "A",
"name": "Annual"}]},
"TIME_PERIOD": {"id": "TIME_PERIOD", "name": "Time",
"values": [{"id":
"2010", "name": "2010"},
{"id": "2011", "name": "2011"}]},
"packaging": {
"dataSetDimensions": [],
"seriesDimensions": ["LOCATION", "SUBJECT",
"FREQUENCY"],
"observationDimensions": ["TIME_PERIOD"],
}}},
"header": {"name": "Reference Series", "id": "none", "test":
"false",
"truncated": "false", "prepared": "2013-04-15T13:48:40",
"sender": {"id": "OECD", "name": "Organisation for Economic
Co-operation and Development"}},
"dataSets": []
}
Converged into…
The 2 formats, after much discussion and a
real world developer community
feedback, converged.
Simplified SDMX
{“SDMX”:“JSON”}
To create a single format…
{“SDMX”:“JSON”}
{"header":{"id":"ed9dd4bb-3725-4064-b173-842887bae108","test":false,"prepared":"2013-08-
23T23:08:34Z","sender":{"id":"OECD","name":"Organisation for Economic Co-operation and
Development"},"request":{"uri":"http://stats.oecd.org/SDMX-
JSON/data/MEI_FIN/IRLT.AUS+AUT+BEL+CAN+CHL+CZE+DNK+EST+FIN+FRA+DEU+GRC+HUN+ISL+IRL+ISR+ITA+JPN+KOR+LUX+MEX+NLD+NZL+NOR
+POL+PRT+SVK+SVN+ESP+SWE+CHE+TUR+GBR+USA+EA17+SDR+NMEC+BRA+CHN+IND+IDN+RUS+ZAF.M/OECD?startPeriod=2012&endPeriod=2013"
}},"dataSets":[{"action":"Informational","annotations":[],"attributes":[],"series":{"0:0:0":{"attributes":[0],"observa
tions":{"0":[3.795],"1":[3.97],"2":[4.15],"3":[3.8575],"4":[3.2775],"5":[2.995],"6":[2.8875],"7":[3.1875],"8":[3.0925]
,"9":[3.0225],"10":[3.0875],"11":[3.2275]}},"0:1:0":{"attributes":[0],"observations":{"0":[3.27],"1":[3],"2":[2.87],"3
":[2.83],"4":[2.49],"5":[2.29],"6":[2.07],"7":[1.97],"8":[2.04],"9":[2.02],"10":[1.85],"11":[1.77]}},"0:2:0":{"attribu
tes":[0],"observations":{"0":[4.01],"1":[3.48],"2":[3.33],"3":[3.42],"4":[3.22],"5":[3.09],"6":[2.74],"7":[2.55],"8":[
2.59],"9":[2.53],"10":[2.4],"11":[2.19]}},"0:3:0":{"attributes":[0],"observations":{"0":[3.9171],"1":[3.7524],"2":[3.2
886],"3":[3.3889],"4":[3.5291],"5":[3.4122],"6":[3.2504],"7":[3.0141],"8":[2.4256],"9":[2.3061],"10":[2.2492],"11":[2.
1039]}},"0:33:0":{"attributes":[0],"observations":{"0":[8.35],"1":[8.06],"2":[8.09],"3":[8.18],"4":[8.13],"5":[8.26],"
6":[8.09],"7":[8.17],"8":[8.25],"9":[8.21],"10":[7.96],"11":[8.1]}},"0:34:0":{"attributes":[0],"observations":{"0":[8.
4],"1":[8.23],"2":[8.37],"3":[8.28],"4":[8.28],"5":[8.16],"6":[7.52],"7":[7.48],"8":[7.4],"9":[7.67],"10":[7.64],"11":
[7.37]}}}}],"structure":{"uri":"http://stats.oecd.org/SDMX-
JSON/dataflow/MEI_FIN","name":"MEI_FIN","description":"Monthly Monetary and Financial Statistics
(MEI)","dimensions":{"dataSet":[],"series":[{"keyPosition":0,"id":"SUBJECT","name":"Subject","values":[{"id":"IRLT","n
ame":"Long-term interest rates, Per cent per
annum"}],"role":null},{"keyPosition":1,"id":"LOCATION","name":"Country","values":[{"id":"AUS","name":"Australia"},{"id
":"AUT","name":"Austria"},{"id":"BEL","name":"Belgium"},{"id":"CAN","name":"Canada"},{"id":"CHL","name":"Chile"},{"id"
:"CZE","name":"Czech
Republic"},{"id":"DNK","name":"Denmark"},{"id":"FIN","name":"Finland"},{"id":"FRA","name":"France"},{"id":"DEU","name"
:"Germany"},{"id":"GRC","name":"Greece"},{"id":"HUN","name":"Hungary"},{"id":"ISL","name":"Iceland"},{"id":"IRL","name
":"Ireland"},{"id":"ISR","name":"Israel"},{"id":"ITA","name":"Italy"},{"id":"JPN","name":"Japan"},{"id":"KOR","name":"
Korea"},{"id":"LUX","name":"Luxembourg"},{"id":"MEX","name":"Mexico"},{"id":"NLD","name":"Netherlands"},{"id":"NZL","n
ame":"New
Zealand"},{"id":"NOR","name":"Norway"},{"id":"POL","name":"Poland"},{"id":"PRT","name":"Portugal"},{"id":"SVK","name":
"Slovak
Republic"},{"id":"SVN","name":"Slovenia"},{"id":"ESP","name":"Spain"},{"id":"SWE","name":"Sweden"},{"id":"CHE","name":
"Switzerland"},{"id":"GBR","name":"United Kingdom"},{"id":"USA","name":"United States"},{"id":"EA17","name":"Euro area
(17 countries)"},{"id":"RUS","name":"Russian Federation"},{"id":"ZAF","name":"South
Africa"}],"role":null},{"keyPosition":2,"id":"FREQUENCY","name":"Frequency","values":[{"id":"M","name":"Monthly"}],"ro
le":null}],"observation":[{"keyPosition":0,"id":"TIME_PERIOD","name":"Time","values":[{"id":"2012-01","name":"Jan-
2012"},{"id":"2012-02","name":"Feb-2012"},{"id":"2012-03","name":"Mar-2012"},{"id":"2012-04","name":"Apr-
2012"},{"id":"2012-05","name":"May-2012"},{"id":"2012-06","name":"Jun-2012"},{"id":"2012-07","name":"Jul-
2012"},{"id":"2012-08","name":"Aug-2012"},{"id":"2012-09","name":"Sep-2012"},{"id":"2012-10","name":"Oct-
2012"},{"id":"2012-11","name":"Nov-2012"},{"id":"2012-12","name":"Dec-
2012"}],"role":"time"}]},"attributes":{"dataSet":[],"series":[{"id":"TIME_FORMAT","name":"Time
format","values":[{"id":"P1M","name":"Monthly"}],"role":null}],"observation":[]},"annotations":[]},"errors":[]}
BETA: stats.oecd.org/opendataapi/Json.htm
{“SDMX”:“JSON”}
<request> ::= "http://stats.oecd.org/SDMX-JSON/data/" <dataset name> "/" <filter
expression> "/" <agency name> [ "?" <additional parameters> ] <additional
parameters> ::= "startPeriod=" <start time> [ "&" <additional parameters> ] |
"endPeriod=" <end time> [ "&" <additional parameters> ] | "json-lang=" <language> [
"&" <additional parameters> ] | "json-format=" <json format> [ "&" <additional
parameters> ] | "dimensionAtObservation=" <code of dimension at observation level> [
"&" <additional parameters> ] | "AllDimensions" [ "&" <additional parameters> ]
<filter expression> ::= <dimensions> <dimensions> ::= <dimension> [ "." <dimensions>
] <dimension> ::= [ <dimension values> ] <dimension values> ::= <dimension value> [
"+" <dimension values> ] <language> ::= "en" | "fr"
The OECD has since updated the API to
reflect this single format that can be
accessed through the link shown.
Supporting the wider developer community
However, the OECD recognised the need to
reach much wider and thus.
Standard protocol for retrieving any kind of data over HTTP
Introduced an OData API, an implementation
of the Microsoft OData Protocol connected to
OECD.Stat.
Simple lightweight data format
{"odata.metadata":
"http://stats.oecd.org/OECDStatWCF_OData/OData.svc
/$metadata#DotStat.OData.DataSource.DatawarehouseE
ntities/REFSERIES",
"value": [
{ "FREQUENCY": "A",
"LOCATION": "FRA",
"SUBJECT": "YPTTTTL1_ST",
"TIME": "2010",
"Flags": "",
"Metadata": null,
"Value": 62927.11},
{ "FREQUENCY": "A",
"LOCATION": "FRA",
"SUBJECT": "YPTTTTL1_ST",
"TIME": "2011",
"Flags": "",
"Metadata": null,
"Value": 63249.09}
]
}
to retrieve data in a simple and lightweight
data format, both JSON and XML.
Reaching out to the wider developer community
Having built it, we needed them to come.
OpenDataAPI
The OECD’s Statistical Information System
Collaboration Community
Open Data Initiative for Developers
So in early 2013 ahead of the
OECD’s Statistical Information
System Collaboration Community
workshop in April 2013, the Open
Data Initiative for Developers was
launched.
OpenDataAPI
Objectives: benefits and ease of use
The Open Data Initiative for Developers objective
was to demonstrate the benefits and the ease of use of
the OECD.Stat Open Data web services by exposing
the OECD data through two new beta web services to
interested web developers to develop innovative
applications based on OECD public data, and to gather
feedback from developers to improve the web services
in future versions.
The Open Data Initiative for Developers was a
great success concluding at the SIS-CC 2013
Workshop held in Paris, when a group of
developers reviewed each submission, shortlisted
and presented the final submissions and overall
feedback to the wider group.
http://www.drasticdata.nl/ProjectOECD
http://www3.inegi.org.mx/rnm/sdmxhttp://www.uis.unesco.org/das/Country/OdataTest
Shortlisted submissions
SDMX-JSON: very simple to use
OData: simple model and is
popular with developers
Overall the feedback was
positive and directly
contributed to the further
development of the APIs
{“SDMX”:“JSON”}
…and in particular the final single JSON format
Potential future formats
As already mentioned the OECD may
introduce APIs serving more formats that could
include:
- Google Data (a REST-inspired technology),
- Google Dataset Publishing Language
(DPSL)
- Google KML, a Geospatial file format
Wider benefits
The APIs are also helping to contribute to the
OECD data portal project and supported the
development of a beta mobile version of
OECD.Stat.
References
1. sdmx.org
2. xavierbadosa.com/oecd
3. github.com/sdmx-twg
4. odata.org
5. stats.oecd.org/opendataapi/Json.htm (BETA)
6. stats.oecd.org/opendataapi/OData.html (BETA)
Jonathan Challener, OECD
jonathan.challener@oecd.org
@Challener
Thank you
{“Providing easier access to data”:“Through APIs”}
The OECD Delta Project
IMAODBC - Neuchatel, 16-20 September 2013

More Related Content

Similar to The oecd delta project – providing easier access to data through api's

Building a Real-time Data Pipeline: Apache Kafka at LinkedIn
Building a Real-time Data Pipeline: Apache Kafka at LinkedInBuilding a Real-time Data Pipeline: Apache Kafka at LinkedIn
Building a Real-time Data Pipeline: Apache Kafka at LinkedInDataWorks Summit
 
Consuming Nordic Statbank data with JSON-stat
Consuming Nordic Statbank data with JSON-statConsuming Nordic Statbank data with JSON-stat
Consuming Nordic Statbank data with JSON-statXavier Badosa
 
JSON-stat in the session "The future of standards in statistics", United Nati...
JSON-stat in the session "The future of standards in statistics", United Nati...JSON-stat in the session "The future of standards in statistics", United Nati...
JSON-stat in the session "The future of standards in statistics", United Nati...Xavier Badosa
 
Create Graph and Grid Using D3 Library
Create Graph and Grid Using D3 LibraryCreate Graph and Grid Using D3 Library
Create Graph and Grid Using D3 LibraryYanliang Bao (Beryl)
 
FIWARE Training: IoT and Legacy
FIWARE Training: IoT and LegacyFIWARE Training: IoT and Legacy
FIWARE Training: IoT and LegacyFIWARE
 
Tracking and visualizing COVID-19 with Elastic stack
Tracking and visualizing COVID-19 with Elastic stackTracking and visualizing COVID-19 with Elastic stack
Tracking and visualizing COVID-19 with Elastic stackAnna Ossowski
 
Everything That Is Really Useful in Oracle Database 12c for Application Devel...
Everything That Is Really Useful in Oracle Database 12c for Application Devel...Everything That Is Really Useful in Oracle Database 12c for Application Devel...
Everything That Is Really Useful in Oracle Database 12c for Application Devel...Lucas Jellema
 
DevSecCon London 2018: Open DevSecOps
DevSecCon London 2018: Open DevSecOpsDevSecCon London 2018: Open DevSecOps
DevSecCon London 2018: Open DevSecOpsDevSecCon
 
Overview of the Living Labs for IR Evaluation (LL4IR) CLEF Lab
Overview of the Living Labs for IR Evaluation (LL4IR) CLEF LabOverview of the Living Labs for IR Evaluation (LL4IR) CLEF Lab
Overview of the Living Labs for IR Evaluation (LL4IR) CLEF Labkrisztianbalog
 
Serving Ireland's Geospatial Information as Linked Data
Serving Ireland's Geospatial Information as Linked DataServing Ireland's Geospatial Information as Linked Data
Serving Ireland's Geospatial Information as Linked DataChristophe Debruyne
 
Elastic search and Symfony3 - A practical approach
Elastic search and Symfony3 - A practical approachElastic search and Symfony3 - A practical approach
Elastic search and Symfony3 - A practical approachSymfonyMu
 
WSO2 Analytics Platform - The one stop shop for all your data needs
WSO2 Analytics Platform - The one stop shop for all your data needsWSO2 Analytics Platform - The one stop shop for all your data needs
WSO2 Analytics Platform - The one stop shop for all your data needsSriskandarajah Suhothayan
 
Towards Interoperability between W3C Web of Things and NGSI-LD
Towards Interoperability between W3C Web of Things and NGSI-LDTowards Interoperability between W3C Web of Things and NGSI-LD
Towards Interoperability between W3C Web of Things and NGSI-LDJosé Manuel Cantera Fonseca
 
Do More with Postgres- NoSQL Applications for the Enterprise
Do More with Postgres- NoSQL Applications for the EnterpriseDo More with Postgres- NoSQL Applications for the Enterprise
Do More with Postgres- NoSQL Applications for the EnterpriseEDB
 
ICONUK 2016: REST Assured, Freeing Your Domino Data Has Never Been That Easy!
ICONUK 2016: REST Assured, Freeing Your Domino Data Has Never Been That Easy!ICONUK 2016: REST Assured, Freeing Your Domino Data Has Never Been That Easy!
ICONUK 2016: REST Assured, Freeing Your Domino Data Has Never Been That Easy!Serdar Basegmez
 
Singpore Oracle Sessions III - What is truly useful in Oracle Database 12c fo...
Singpore Oracle Sessions III - What is truly useful in Oracle Database 12c fo...Singpore Oracle Sessions III - What is truly useful in Oracle Database 12c fo...
Singpore Oracle Sessions III - What is truly useful in Oracle Database 12c fo...Lucas Jellema
 
Eagle6 mongo dc revised
Eagle6 mongo dc revisedEagle6 mongo dc revised
Eagle6 mongo dc revisedMongoDB
 
Eagle6 Enterprise Situational Awareness
Eagle6 Enterprise Situational AwarenessEagle6 Enterprise Situational Awareness
Eagle6 Enterprise Situational AwarenessMongoDB
 

Similar to The oecd delta project – providing easier access to data through api's (20)

Building a Real-time Data Pipeline: Apache Kafka at LinkedIn
Building a Real-time Data Pipeline: Apache Kafka at LinkedInBuilding a Real-time Data Pipeline: Apache Kafka at LinkedIn
Building a Real-time Data Pipeline: Apache Kafka at LinkedIn
 
Consuming Nordic Statbank data with JSON-stat
Consuming Nordic Statbank data with JSON-statConsuming Nordic Statbank data with JSON-stat
Consuming Nordic Statbank data with JSON-stat
 
Life on Clouds: a forensics overview
Life on Clouds: a forensics overviewLife on Clouds: a forensics overview
Life on Clouds: a forensics overview
 
JSON-stat in the session "The future of standards in statistics", United Nati...
JSON-stat in the session "The future of standards in statistics", United Nati...JSON-stat in the session "The future of standards in statistics", United Nati...
JSON-stat in the session "The future of standards in statistics", United Nati...
 
October 1 NISO Training Thursday: Using Alerting Systems to Ensure OA Policy ...
October 1 NISO Training Thursday: Using Alerting Systems to Ensure OA Policy ...October 1 NISO Training Thursday: Using Alerting Systems to Ensure OA Policy ...
October 1 NISO Training Thursday: Using Alerting Systems to Ensure OA Policy ...
 
Create Graph and Grid Using D3 Library
Create Graph and Grid Using D3 LibraryCreate Graph and Grid Using D3 Library
Create Graph and Grid Using D3 Library
 
FIWARE Training: IoT and Legacy
FIWARE Training: IoT and LegacyFIWARE Training: IoT and Legacy
FIWARE Training: IoT and Legacy
 
Tracking and visualizing COVID-19 with Elastic stack
Tracking and visualizing COVID-19 with Elastic stackTracking and visualizing COVID-19 with Elastic stack
Tracking and visualizing COVID-19 with Elastic stack
 
Everything That Is Really Useful in Oracle Database 12c for Application Devel...
Everything That Is Really Useful in Oracle Database 12c for Application Devel...Everything That Is Really Useful in Oracle Database 12c for Application Devel...
Everything That Is Really Useful in Oracle Database 12c for Application Devel...
 
DevSecCon London 2018: Open DevSecOps
DevSecCon London 2018: Open DevSecOpsDevSecCon London 2018: Open DevSecOps
DevSecCon London 2018: Open DevSecOps
 
Overview of the Living Labs for IR Evaluation (LL4IR) CLEF Lab
Overview of the Living Labs for IR Evaluation (LL4IR) CLEF LabOverview of the Living Labs for IR Evaluation (LL4IR) CLEF Lab
Overview of the Living Labs for IR Evaluation (LL4IR) CLEF Lab
 
Serving Ireland's Geospatial Information as Linked Data
Serving Ireland's Geospatial Information as Linked DataServing Ireland's Geospatial Information as Linked Data
Serving Ireland's Geospatial Information as Linked Data
 
Elastic search and Symfony3 - A practical approach
Elastic search and Symfony3 - A practical approachElastic search and Symfony3 - A practical approach
Elastic search and Symfony3 - A practical approach
 
WSO2 Analytics Platform - The one stop shop for all your data needs
WSO2 Analytics Platform - The one stop shop for all your data needsWSO2 Analytics Platform - The one stop shop for all your data needs
WSO2 Analytics Platform - The one stop shop for all your data needs
 
Towards Interoperability between W3C Web of Things and NGSI-LD
Towards Interoperability between W3C Web of Things and NGSI-LDTowards Interoperability between W3C Web of Things and NGSI-LD
Towards Interoperability between W3C Web of Things and NGSI-LD
 
Do More with Postgres- NoSQL Applications for the Enterprise
Do More with Postgres- NoSQL Applications for the EnterpriseDo More with Postgres- NoSQL Applications for the Enterprise
Do More with Postgres- NoSQL Applications for the Enterprise
 
ICONUK 2016: REST Assured, Freeing Your Domino Data Has Never Been That Easy!
ICONUK 2016: REST Assured, Freeing Your Domino Data Has Never Been That Easy!ICONUK 2016: REST Assured, Freeing Your Domino Data Has Never Been That Easy!
ICONUK 2016: REST Assured, Freeing Your Domino Data Has Never Been That Easy!
 
Singpore Oracle Sessions III - What is truly useful in Oracle Database 12c fo...
Singpore Oracle Sessions III - What is truly useful in Oracle Database 12c fo...Singpore Oracle Sessions III - What is truly useful in Oracle Database 12c fo...
Singpore Oracle Sessions III - What is truly useful in Oracle Database 12c fo...
 
Eagle6 mongo dc revised
Eagle6 mongo dc revisedEagle6 mongo dc revised
Eagle6 mongo dc revised
 
Eagle6 Enterprise Situational Awareness
Eagle6 Enterprise Situational AwarenessEagle6 Enterprise Situational Awareness
Eagle6 Enterprise Situational Awareness
 

More from Jonathan Challener

The role of statistical standards in building national data backbones
The role of statistical standards in building national data backbonesThe role of statistical standards in building national data backbones
The role of statistical standards in building national data backbonesJonathan Challener
 
The path to an hybrid open source paradigm
The path to an hybrid open source paradigmThe path to an hybrid open source paradigm
The path to an hybrid open source paradigmJonathan Challener
 
The building blocks for a reusable front end - #imaodbc2015
The building blocks for a reusable front end - #imaodbc2015The building blocks for a reusable front end - #imaodbc2015
The building blocks for a reusable front end - #imaodbc2015Jonathan Challener
 
The future of charting in .Stat
The future of charting in .StatThe future of charting in .Stat
The future of charting in .StatJonathan Challener
 
Being open, accessible, and understandable by Jonathan Challener, OECD - #ima...
Being open, accessible, and understandable by Jonathan Challener, OECD - #ima...Being open, accessible, and understandable by Jonathan Challener, OECD - #ima...
Being open, accessible, and understandable by Jonathan Challener, OECD - #ima...Jonathan Challener
 
Community capacity building and process improvements
Community capacity building and process improvementsCommunity capacity building and process improvements
Community capacity building and process improvementsJonathan Challener
 
Meeting today’s dissemination challenges – Implementing International Standar...
Meeting today’s dissemination challenges – Implementing International Standar...Meeting today’s dissemination challenges – Implementing International Standar...
Meeting today’s dissemination challenges – Implementing International Standar...Jonathan Challener
 

More from Jonathan Challener (7)

The role of statistical standards in building national data backbones
The role of statistical standards in building national data backbonesThe role of statistical standards in building national data backbones
The role of statistical standards in building national data backbones
 
The path to an hybrid open source paradigm
The path to an hybrid open source paradigmThe path to an hybrid open source paradigm
The path to an hybrid open source paradigm
 
The building blocks for a reusable front end - #imaodbc2015
The building blocks for a reusable front end - #imaodbc2015The building blocks for a reusable front end - #imaodbc2015
The building blocks for a reusable front end - #imaodbc2015
 
The future of charting in .Stat
The future of charting in .StatThe future of charting in .Stat
The future of charting in .Stat
 
Being open, accessible, and understandable by Jonathan Challener, OECD - #ima...
Being open, accessible, and understandable by Jonathan Challener, OECD - #ima...Being open, accessible, and understandable by Jonathan Challener, OECD - #ima...
Being open, accessible, and understandable by Jonathan Challener, OECD - #ima...
 
Community capacity building and process improvements
Community capacity building and process improvementsCommunity capacity building and process improvements
Community capacity building and process improvements
 
Meeting today’s dissemination challenges – Implementing International Standar...
Meeting today’s dissemination challenges – Implementing International Standar...Meeting today’s dissemination challenges – Implementing International Standar...
Meeting today’s dissemination challenges – Implementing International Standar...
 

Recently uploaded

Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 

Recently uploaded (20)

Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 

The oecd delta project – providing easier access to data through api's

  • 1. The OECD Delta Project IMAODBC - Neuchatel, 16-20 September 2013 Jonathan Challener, OECD {“Providing easier access to data”:“Through APIs”}
  • 5. Machine-readable SDMX is the global standard for statistical data and metadata exchange
  • 6. SDMX-ML 2.0 Web Service <?xml version="1.0"?> <message:MessageGroup xmlns:message="http://www.SDMX.org/resources/SDMXML/schemas/v2_0/message" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.SDMX.org/resources/SDMXML/schemas/v2_0/generic http://www.sdmx.org/docs/2_0/SDMXGenericData.xsd http://www.SDMX.org/resources/SDMXML/schemas/v2_0/message http://www.sdmx.org/docs/2_0/SDMXMessage.xsd" xmlns:common="http://www.SDMX.org/resources/SDMXML/schemas/v2_0/common" xmlns="http://www.SDMX.org/resources/SDMXML/schemas/v2_0/generic"><Header xmlns="http://www.SDMX.org/resources/SDMXML/schemas/v2_0/message"> <ID>none</ID><Test>false</Test><Truncated>false</Truncated><Prepared>2013-04- 15T11:46:19</Prepared> <Sender id="OECD"><Name xml:lang="en">Organisation for Economic Co-operation and Development</Name> <Name xml:lang="fr">Organisation de coopération et de développement économiques</Name></Sender></Header> <DataSet keyFamilyURI="http://stats.oecd.org/RestSDMX/sdmx.ashx/GetKeyFamily/REFSERIES/OEC D/?resolveRef=true"> <KeyFamilyRef>REFSERIES</KeyFamilyRef> <Series> <SeriesKey><Value value="FRA" concept="LOCATION"/><Value value="YPTTTTL1_ST" concept="SUBJECT"/><Value value="A" concept="FREQUENCY"/></SeriesKey> <Attributes><Value value="P1Y" concept="TIME_FORMAT"/></Attributes> <Obs><Time>2010</Time><ObsValue value="62927.11"/></Obs> <Obs><Time>2011</Time><ObsValue value="63249.09"/></Obs> </Series> </DataSet></message:MessageGroup> OECD.Stat - the OECD Data Warehouse Solution - was the first dissemination system to provide a means for disseminating data in the internationally agreed standard, SDMX. Having implemented a fully conforming 2.0 SDMX web service in 2007
  • 7. Automated data exchange Then began to introduce a number of automated data exchanges through SDMX 2.0 interface with several organisations and data-resellers / aggregators
  • 8. Flexible However although SDMX is highly flexible
  • 9. but complex It is also highly complex. This slowed its uptake and also reuse
  • 10. {“the oecd experience”:“2012-beyond”} So entered a period when users needs changed and with an ever increasing demand for reuse.
  • 11. KISS Then started the thinking about KISS…
  • 12. KISS Principle No not the band but the KISS Principle: Keep it simple, stupid (and short)!
  • 13. Date: Mon, 12 Mar 2012 13:30:01 CET Location: OECD, Paris Meeting: OECD’s Statistical Information System Collaboration Community (SIS-CC) workshop Presenter: Xavier Badosa Title: Standards for statistical data dissemination Content-Type: Simplify+JSONify/SDMX In March 2012 the 2nd OECD’s Statistical Information System Collaboration Community (SIS-CC) workshop took place with a presentation by Xavier Badosa to push for a simplified SDMX and create a common JSON based format for statistical dissemination.
  • 14. XML JSON SDMX-JS? SDMX-ML Xavier proposed to take SDMX-ML (XML) and together with JSON, a JavaScript Object Notation (JSON) text-based open standard designed for human-readable data interchange.
  • 15. "generic:Attributes" : {"generic:Value" : {"@concept" : "OBS_STATUS", "@value" : "P"}}}, {"generic:Time" : "2011- 04", "generic:ObsValue" : {"@value" : "106.56246"}, "generic:Attributes" : {"generic:Value" : {"@concept" : "OBS_STATUS", "@value" : "P"}}}, {"generic:Time" : "2011- 05", "generic:ObsValue" : {"@value" : "113.26596"}, "generic:Attributes" : {"generic:Value" : {"@concept" : "OBS_STATUS", "@value" : "P"}}}, {"generic:Time" : "2011- 06", "generic:ObsValue" : {"@value" : "114.22037"}, "generic:Attributes" : {"generic:Value" : {"@concept" : "OBS_STATUS", "@value" : "P"}}}, {"generic:Time" : "2011- 07", "generic:ObsValue" : {"@value" : "108.77534"}, "generic:Attributes" : {"generic:Value" : {"@concept" : "OBS_STATUS", "@value" : "P"}}}, {"generic:Time" : "2011- 08", "generic:ObsValue" : {"@value" : "116.37424"}, "generic:Attributes" : {"generic:Value" : {"@concept" : "OBS_STATUS", "@value" : "P"}}}, {"generic:Time" : "2011- 09", "generic:ObsValue" : {"@value" : “XMLish” JSON To create an XMLish JSON!
  • 16. Standard definition led by SDMX TWG sub group This was the start of an important parallel evolution in SDMX led by a sub group of the SDMXTWG.
  • 17. {"sdmx-proto-json": "2013-03-26", "structure": { "dimensions": [ { "id": "LOCATION", "name": "Country", "role": null, "codes": [{"selected": true, "id": "FRA", "name": "France"}]}, { "id": "SUBJECT", "name": "Subject", "role": null, "codes": [{"selected": true, "id": "YPTTTTL1_ST", "name": "Population mid-year estimates Total, Annual, ('000)"}]}, { "id": "FREQUENCY", "name": "Frequency", "role": null, "codes": [{"selected": true, "id": "A", "name": "Annual"}]}, { "id": "TIME_PERIOD", "name": "Time", "role": null, "codes": [{"selected": false, "id": "2010", "name": "2010"}, {"selected": false, "id": "2011","name": "2011"}]} ]}, "header": {"name": "Reference Series", "id": "none", "test": "false", "truncated": "false", "prepared": "2013-04-15T12:03:41", "sender": {"id": "OECD", "name": "Organisation for Economic Co-operation and Development"}}, "dataSets": [] } {"sdmx-proto-json": "2013-02-05", "structure": {"structure": "BISWEB_EERDATAFLOW", "href": "todo", "components": { "LOCATION": {"id": "LOCATION", "name": "Country", "values": [{"id": "FRA", "name": "France"}]}, "SUBJECT": {"id": "SUBJECT", "name": "Subject", "values": [{"id": "YPTTTTL1_ST", "name": "Population mid-year estimates Total, Annual, ('000)"}]}, "FREQUENCY": {"id": "FREQUENCY", "name": "Frequency", "values": [{"id": "A", "name": "Annual"}]}, "TIME_PERIOD": {"id": "TIME_PERIOD", "name": "Time", "values": [{"id": "2010", "name": "2010"}, {"id": "2011", "name": "2011"}]}, "packaging": { "dataSetDimensions": [], "seriesDimensions": ["LOCATION", "SUBJECT", "FREQUENCY"], "observationDimensions": ["TIME_PERIOD"], }}}, "header": {"name": "Reference Series", "id": "none", "test": "false", "truncated": "false", "prepared": "2013-04-15T13:48:40", "sender": {"id": "OECD", "name": "Organisation for Economic Co-operation and Development"}}, "dataSets": [] } Two formats proposed CodeIndex Slice In late 2012 with 2 formats being proposed, JSON-Codeindex and JSON- Slice, the OECD set about creating a API to service users with the 2 proposed JSON based formats. The OECD SDMX-PROTO- JSON API was launched in early 2013 ahead of the 2013 SIS-CC workshop.
  • 18. {"sdmx-proto-json": "2013-03-26", "structure": { "dimensions": [ { "id": "LOCATION", "name": "Country", "role": null, "codes": [{"selected": true, "id": "FRA", "name": "France"}]}, { "id": "SUBJECT", "name": "Subject", "role": null, "codes": [{"selected": true, "id": "YPTTTTL1_ST", "name": "Population mid-year estimates Total, Annual, ('000)"}]}, { "id": "FREQUENCY", "name": "Frequency", "role": null, "codes": [{"selected": true, "id": "A", "name": "Annual"}]}, { "id": "TIME_PERIOD", "name": "Time", "role": null, "codes": [{"selected": false, "id": "2010", "name": "2010"}, {"selected": false, "id": "2011","name": "2011"}]} ]}, "header": {"name": "Reference Series", "id": "none", "test": "false", "truncated": "false", "prepared": "2013-04-15T12:03:41", "sender": {"id": "OECD", "name": "Organisation for Economic Co-operation and Development"}}, "dataSets": [] } {"sdmx-proto-json": "2013-02-05", "structure": {"structure": "BISWEB_EERDATAFLOW", "href": "todo", "components": { "LOCATION": {"id": "LOCATION", "name": "Country", "values": [{"id": "FRA", "name": "France"}]}, "SUBJECT": {"id": "SUBJECT", "name": "Subject", "values": [{"id": "YPTTTTL1_ST", "name": "Population mid-year estimates Total, Annual, ('000)"}]}, "FREQUENCY": {"id": "FREQUENCY", "name": "Frequency", "values": [{"id": "A", "name": "Annual"}]}, "TIME_PERIOD": {"id": "TIME_PERIOD", "name": "Time", "values": [{"id": "2010", "name": "2010"}, {"id": "2011", "name": "2011"}]}, "packaging": { "dataSetDimensions": [], "seriesDimensions": ["LOCATION", "SUBJECT", "FREQUENCY"], "observationDimensions": ["TIME_PERIOD"], }}}, "header": {"name": "Reference Series", "id": "none", "test": "false", "truncated": "false", "prepared": "2013-04-15T13:48:40", "sender": {"id": "OECD", "name": "Organisation for Economic Co-operation and Development"}}, "dataSets": [] } Converged into… The 2 formats, after much discussion and a real world developer community feedback, converged.
  • 20. {“SDMX”:“JSON”} {"header":{"id":"ed9dd4bb-3725-4064-b173-842887bae108","test":false,"prepared":"2013-08- 23T23:08:34Z","sender":{"id":"OECD","name":"Organisation for Economic Co-operation and Development"},"request":{"uri":"http://stats.oecd.org/SDMX- JSON/data/MEI_FIN/IRLT.AUS+AUT+BEL+CAN+CHL+CZE+DNK+EST+FIN+FRA+DEU+GRC+HUN+ISL+IRL+ISR+ITA+JPN+KOR+LUX+MEX+NLD+NZL+NOR +POL+PRT+SVK+SVN+ESP+SWE+CHE+TUR+GBR+USA+EA17+SDR+NMEC+BRA+CHN+IND+IDN+RUS+ZAF.M/OECD?startPeriod=2012&endPeriod=2013" }},"dataSets":[{"action":"Informational","annotations":[],"attributes":[],"series":{"0:0:0":{"attributes":[0],"observa tions":{"0":[3.795],"1":[3.97],"2":[4.15],"3":[3.8575],"4":[3.2775],"5":[2.995],"6":[2.8875],"7":[3.1875],"8":[3.0925] ,"9":[3.0225],"10":[3.0875],"11":[3.2275]}},"0:1:0":{"attributes":[0],"observations":{"0":[3.27],"1":[3],"2":[2.87],"3 ":[2.83],"4":[2.49],"5":[2.29],"6":[2.07],"7":[1.97],"8":[2.04],"9":[2.02],"10":[1.85],"11":[1.77]}},"0:2:0":{"attribu tes":[0],"observations":{"0":[4.01],"1":[3.48],"2":[3.33],"3":[3.42],"4":[3.22],"5":[3.09],"6":[2.74],"7":[2.55],"8":[ 2.59],"9":[2.53],"10":[2.4],"11":[2.19]}},"0:3:0":{"attributes":[0],"observations":{"0":[3.9171],"1":[3.7524],"2":[3.2 886],"3":[3.3889],"4":[3.5291],"5":[3.4122],"6":[3.2504],"7":[3.0141],"8":[2.4256],"9":[2.3061],"10":[2.2492],"11":[2. 1039]}},"0:33:0":{"attributes":[0],"observations":{"0":[8.35],"1":[8.06],"2":[8.09],"3":[8.18],"4":[8.13],"5":[8.26]," 6":[8.09],"7":[8.17],"8":[8.25],"9":[8.21],"10":[7.96],"11":[8.1]}},"0:34:0":{"attributes":[0],"observations":{"0":[8. 4],"1":[8.23],"2":[8.37],"3":[8.28],"4":[8.28],"5":[8.16],"6":[7.52],"7":[7.48],"8":[7.4],"9":[7.67],"10":[7.64],"11": [7.37]}}}}],"structure":{"uri":"http://stats.oecd.org/SDMX- JSON/dataflow/MEI_FIN","name":"MEI_FIN","description":"Monthly Monetary and Financial Statistics (MEI)","dimensions":{"dataSet":[],"series":[{"keyPosition":0,"id":"SUBJECT","name":"Subject","values":[{"id":"IRLT","n ame":"Long-term interest rates, Per cent per annum"}],"role":null},{"keyPosition":1,"id":"LOCATION","name":"Country","values":[{"id":"AUS","name":"Australia"},{"id ":"AUT","name":"Austria"},{"id":"BEL","name":"Belgium"},{"id":"CAN","name":"Canada"},{"id":"CHL","name":"Chile"},{"id" :"CZE","name":"Czech Republic"},{"id":"DNK","name":"Denmark"},{"id":"FIN","name":"Finland"},{"id":"FRA","name":"France"},{"id":"DEU","name" :"Germany"},{"id":"GRC","name":"Greece"},{"id":"HUN","name":"Hungary"},{"id":"ISL","name":"Iceland"},{"id":"IRL","name ":"Ireland"},{"id":"ISR","name":"Israel"},{"id":"ITA","name":"Italy"},{"id":"JPN","name":"Japan"},{"id":"KOR","name":" Korea"},{"id":"LUX","name":"Luxembourg"},{"id":"MEX","name":"Mexico"},{"id":"NLD","name":"Netherlands"},{"id":"NZL","n ame":"New Zealand"},{"id":"NOR","name":"Norway"},{"id":"POL","name":"Poland"},{"id":"PRT","name":"Portugal"},{"id":"SVK","name": "Slovak Republic"},{"id":"SVN","name":"Slovenia"},{"id":"ESP","name":"Spain"},{"id":"SWE","name":"Sweden"},{"id":"CHE","name": "Switzerland"},{"id":"GBR","name":"United Kingdom"},{"id":"USA","name":"United States"},{"id":"EA17","name":"Euro area (17 countries)"},{"id":"RUS","name":"Russian Federation"},{"id":"ZAF","name":"South Africa"}],"role":null},{"keyPosition":2,"id":"FREQUENCY","name":"Frequency","values":[{"id":"M","name":"Monthly"}],"ro le":null}],"observation":[{"keyPosition":0,"id":"TIME_PERIOD","name":"Time","values":[{"id":"2012-01","name":"Jan- 2012"},{"id":"2012-02","name":"Feb-2012"},{"id":"2012-03","name":"Mar-2012"},{"id":"2012-04","name":"Apr- 2012"},{"id":"2012-05","name":"May-2012"},{"id":"2012-06","name":"Jun-2012"},{"id":"2012-07","name":"Jul- 2012"},{"id":"2012-08","name":"Aug-2012"},{"id":"2012-09","name":"Sep-2012"},{"id":"2012-10","name":"Oct- 2012"},{"id":"2012-11","name":"Nov-2012"},{"id":"2012-12","name":"Dec- 2012"}],"role":"time"}]},"attributes":{"dataSet":[],"series":[{"id":"TIME_FORMAT","name":"Time format","values":[{"id":"P1M","name":"Monthly"}],"role":null}],"observation":[]},"annotations":[]},"errors":[]}
  • 21. BETA: stats.oecd.org/opendataapi/Json.htm {“SDMX”:“JSON”} <request> ::= "http://stats.oecd.org/SDMX-JSON/data/" <dataset name> "/" <filter expression> "/" <agency name> [ "?" <additional parameters> ] <additional parameters> ::= "startPeriod=" <start time> [ "&" <additional parameters> ] | "endPeriod=" <end time> [ "&" <additional parameters> ] | "json-lang=" <language> [ "&" <additional parameters> ] | "json-format=" <json format> [ "&" <additional parameters> ] | "dimensionAtObservation=" <code of dimension at observation level> [ "&" <additional parameters> ] | "AllDimensions" [ "&" <additional parameters> ] <filter expression> ::= <dimensions> <dimensions> ::= <dimension> [ "." <dimensions> ] <dimension> ::= [ <dimension values> ] <dimension values> ::= <dimension value> [ "+" <dimension values> ] <language> ::= "en" | "fr" The OECD has since updated the API to reflect this single format that can be accessed through the link shown.
  • 22. Supporting the wider developer community However, the OECD recognised the need to reach much wider and thus.
  • 23. Standard protocol for retrieving any kind of data over HTTP Introduced an OData API, an implementation of the Microsoft OData Protocol connected to OECD.Stat.
  • 24. Simple lightweight data format {"odata.metadata": "http://stats.oecd.org/OECDStatWCF_OData/OData.svc /$metadata#DotStat.OData.DataSource.DatawarehouseE ntities/REFSERIES", "value": [ { "FREQUENCY": "A", "LOCATION": "FRA", "SUBJECT": "YPTTTTL1_ST", "TIME": "2010", "Flags": "", "Metadata": null, "Value": 62927.11}, { "FREQUENCY": "A", "LOCATION": "FRA", "SUBJECT": "YPTTTTL1_ST", "TIME": "2011", "Flags": "", "Metadata": null, "Value": 63249.09} ] } to retrieve data in a simple and lightweight data format, both JSON and XML.
  • 25. Reaching out to the wider developer community Having built it, we needed them to come.
  • 26. OpenDataAPI The OECD’s Statistical Information System Collaboration Community Open Data Initiative for Developers So in early 2013 ahead of the OECD’s Statistical Information System Collaboration Community workshop in April 2013, the Open Data Initiative for Developers was launched.
  • 27. OpenDataAPI Objectives: benefits and ease of use The Open Data Initiative for Developers objective was to demonstrate the benefits and the ease of use of the OECD.Stat Open Data web services by exposing the OECD data through two new beta web services to interested web developers to develop innovative applications based on OECD public data, and to gather feedback from developers to improve the web services in future versions.
  • 28. The Open Data Initiative for Developers was a great success concluding at the SIS-CC 2013 Workshop held in Paris, when a group of developers reviewed each submission, shortlisted and presented the final submissions and overall feedback to the wider group.
  • 30. SDMX-JSON: very simple to use OData: simple model and is popular with developers Overall the feedback was positive and directly contributed to the further development of the APIs
  • 31. {“SDMX”:“JSON”} …and in particular the final single JSON format
  • 32. Potential future formats As already mentioned the OECD may introduce APIs serving more formats that could include: - Google Data (a REST-inspired technology), - Google Dataset Publishing Language (DPSL) - Google KML, a Geospatial file format
  • 33. Wider benefits The APIs are also helping to contribute to the OECD data portal project and supported the development of a beta mobile version of OECD.Stat.
  • 34. References 1. sdmx.org 2. xavierbadosa.com/oecd 3. github.com/sdmx-twg 4. odata.org 5. stats.oecd.org/opendataapi/Json.htm (BETA) 6. stats.oecd.org/opendataapi/OData.html (BETA)
  • 35. Jonathan Challener, OECD jonathan.challener@oecd.org @Challener Thank you {“Providing easier access to data”:“Through APIs”} The OECD Delta Project IMAODBC - Neuchatel, 16-20 September 2013

Editor's Notes

  1. OECD.Stat - the OECD Data Warehouse Solution - was the first dissemination system to provide a means for disseminating data in the internationally agreed standard, SDMX. Having implemented a fully conforming 2.0 SDMX web service in 2007