Website open data

De CBS OData interface specificatie is gebaseerd op de OData v4 standaard, en levert vijf entity types:

  1. Articles. Artikelen van de CBS website. Artikelen verschijnen op de homepage van de CBS website.
  2. Pages. Pagina’s van de CBS website. Deze items verschijnen niet op de homepage van de CBS website.
  3. Figures. Veelgebruikte cijfers van de StatLine databank. Deze cijfers vindt men terug op de cijferpagina van de CBS website (klik hiervoor op het menu item ‘Cijfers’).
  4. Events. Alle items uit de publicatie kalender.
  5. Flash. Korte berichten speciaal opgesteld voor geautomatiseerde verwerking door derden.

Meer details kunt u opvragen via de OData interface op http://www.cbs.nl/odata/v1/$metadata. Hierin staan de vijf entiteittypes en bijbehorende functionaliteit beschreven. Voor versie 1 biedt CBS in ieder geval de volgende functies aan.

  1. GetArticlesByTheme. Het opvragen van artikelen van 1 specifiek thema.
  2. GetArticlesByArticleType. Het opvragen van artikelen van 1 specifiek ArticleType.
  3. GetArticlesByTaxonomyTag. Het opvragen van artikelen welke 1 specifieke tag gebruiken.
  4. GetPagesByTheme. Het opvragen van pagina’s van 1 specifiek thema. Let wel, veel pagina’s op de website hebben geen thema gekoppeld.
  5. GetPagesByPageType Het opvragen van artikelen van 1 specifiek PageType.
  6. GetPagesByTaxonomyTag Het opvragen van artikelen welke 1 specifieke tag gebruiken.
  7. GetFiguresByTheme. Het opvragen van cijfers van 1 specifiek thema
  8. GetFiguresByTaxonomyTag. Het opvragen van cijfers welke 1 specifieke tag gebruiken.

Details over de interface

Bij de eerste implementatie van OData zijn enkele zaken van belang. Alle informatie (buiten de meta-data) wordt geleverd in een JSON formaat.
De standard sortering is op basis van UniqueId. Sortering op andere velden kan gedaan worden door het $orderby query object te gebruiken met de desc of asc optie. De $orderby optie is enkel te gebruiken met de velden ReleaseTime, Updated en Created.

Het maximum aantal resultaten wat in één keer wordt teruggegeven is 100. Navigeren tussen de verschillende pagina’s kan door gebruik te maken van de $skip en $top options, waar $skip het aantal records in de complete resultaatset is welke overgeslagen moet worden, en $top het aantal resultaten wat vervolgens teruggegeven moet worden.

Resultaten kunnen gefilterd worden door gebruik te maken van de $filter optie. De $filter optie is enkel te gebruiken met de velden Url, UniqueId en Language. De tekstvelden zijn hiervan uitgesloten.

Filteren op artikel, taxonomy tag en thema kan gedaan worden door gebruik te maken van de Get[EntityType]ByTheme en Get[EntityType]ByTaxonomyTag.

Meer informatie over OData en de query options is te vinden op: http://www.odata.org/getting-started/basic-tutorial/

Voorbeelden OData queries

Hieronder volgen enkele voorbeelden van OData queries welke worden aangeboden door de CBS website. Voor elk van deze voorbeelden geldt dat het maximaal 100 items retourneert.

Haal alle artikelen op.
http://www.cbs.nl/odata/v1/Articles

Haal alle artikelen op geordend op Releasetime aflopend.
http://www.cbs.nl/odata/v1/Articles?$orderby=ReleaseTime desc

Haal alle Engelse artikelen op.
http://www.cbs.nl/odata/v1/Articles?$filter=Language%20eq%20%27en-GB%27

Haal 1 uniek artikel op, op basis van zijn UniqueId.
http://www.cbs.nl/odata/v1/Articles('7414FB43-5DBD-473A-9C59-06B1E87EBE25-en-gb')

Haal artikel 6 tot 10 op uit de resultaatset.
http://www.cbs.nl/odata/v1/Articles?$top=10&$skip=5

Haal alle nieuws artikelen op.
http://www.cbs.nl/odata/v1/GetArticlesByArticleType(ArticleType='News')

Haal alle nieuws artikelen op geordend op Releasetime aflopend.
http://www.cbs.nl/odata/v1/GetArticlesByArticleType(ArticleType='News')?$orderby=ReleaseTime desc

Haal alle artikelen op van het thema “inkomen en bestedingen”.
http://www.cbs.nl/odata/v1/GetArticlesByTheme(Theme='Inkomen%20en%20bestedingen')

Haal alle Engelse artikelen op van het thema “manufacturing and energy”.
http://www.cbs.nl/odata/v1/GetArticlesByTheme(Theme='Manufactering%20and%20energy')?$filter=Language%20eq%20%27en-GB%27

Haal alle artikelen op die de tag “bouwen en wonen” gebruiken.
http://www.cbs.nl/odata/v1/GetArticlesByTaxonomyTag(Tag='bouwen%20en%20wonen')

Haal alle pagina’s op.
http://www.cbs.nl/odata/v1/Pages

Haal alle pagina’s op met het thema “inkomen en bestedingen”.
http://www.cbs.nl/odata/1/GetPagesByTheme(Theme='Inkomen%20en%20bestedingen')

Haal alle cijfers op.
http://www.cbs.nl/odata/v1/Figures

Disclaimer Open Data op de CBS website

versie 0.2, 30 maart 2016

  1. CBS heeft dit kanaal opengesteld voor het beschikbaar stellen van zogenaamde open data; dit zijn gegevens die aan eenieder vrijelijk ter beschikking worden gesteld.
  2. CBS geeft geen garanties op beschikbaarheid, actualiteit en continuïteit van zowel de informatie als het platform. Ook behoudt CBS zich het recht voor om zonder opgaaf van redenen te stoppen.
  3. Het realiseren van dienstverlening op basis van de aangeboden functionaliteit en het risico op bedrijfsschade als gevolg van calamiteiten of het stopzetten hiervan zijn voor rekening en risico van de gebruiker.
  4. Voor de afname van open data via dit kanaal worden geen kosten in rekening gebracht.
  5. Performance vindt plaats op basis van fair use.
  6. Op de informatie is de licentie Creative Commons Naamsvermelding van toepassing. Als onderdeel van Creative Commons Naamsvermelding is het bij hergebruik verplicht te vermelden dat de gegevens afkomstig zijn van het CBS (maar niet zodanig dat de indruk gewekt wordt dat het CBS instemt met uw werk of de inhoud van uw werk). Bepaalde onderdelen van de CBS website mogen niet vrijelijk worden hergebruikt, waaronder de foto’s, het logo van CBS en de stijl van de website. Lees hiervoor de Copyright bepaling op de CBS website.
  7. Elk item kan afzonderlijk vernieuwd worden.

Disclaimer

CBS kan niet verantwoordelijk worden gehouden voor enige informatie die middels deze website gevonden wordt. CBS aanvaardt geen enkele aansprakelijkheid voor schade ontstaan uit het bezoeken van deze site of voor enige schade ontstaan uit verleende diensten, door gebruik van aangeboden data of metadata waarnaar verwezen wordt. CBS is niet aansprakelijk voor ongeoorloofde of onbelemmerde toegang tot gegevens die u via de datasets aanbiedt. CBS garandeert niet dat de website foutloos of ononderbroken functioneert.