Sparql query werkt niet meer

Hoi,

Tot afgelopen vrijdag werkte de request naar hetvolgende sparql endpoint nog https://bag.basisregistraties.overheid.nl/sparql/now. Nu krijg ik daar een 404 op. Is er iets veranderd?
Of is het beter om op de REST API aan te sluiten?

Groeten
Michiel Mayer
Kamer van Koophandel

Hoi Michiel,

De url die je noemt is van de oude BAG 1.0 API. Deze werkt inderdaad niet meer.
De vervanger van deze API is de BAG API Individuele Bevragingen.
Meer informatie over de API is te vinden op de website van de BAG.

Met vriendelijke groet,
Nathalie Vos
Kadaster BAG

1 like

Hoi Nathalie,

En informatie over het nieuwe sparQL endpoint? Ik heb behoefte aan een voorbeeld van een sparQL query op jullie nieuwe endpoint. De oude queries werken niet meer, kwam ik achter.
Alvast bedankt

Groet,
Michiel Mayer
Kamer van Koophandel

Had je Kadaster Labs al gevonden?

Hoi Robin,

Ja die had ik gevonden, maar die geeft bij bijvoorbeeld bij onderstaande query geen resultaat in de online query tester. Ik moet ongetwijfeld iets aanpassen, maar ik weet niet wat? Zijn er voorbeeld queries ergens, zoals in de vorige online query tester

PREFIX bag: http://bag.basisregistraties.overheid.nl/def/bag#
PREFIX rdfs: http://www.w3.org/2000/01/rdf-schema#
PREFIX dct: http://purl.org/dc/terms/
PREFIX skos: http://www.w3.org/2004/02/skos/core#

  SELECT *
  WHERE {
    BIND("1213ep" as ?postcode)
    BIND(12 as ?huisnummer)
    BIND("" as ?huisnummertoevoeging)
    BIND("" as ?huisletter)
  
    ?nummeraanduiding bag:huisnummer ?huisnummer ;
      bag:postcode ?postcode ;
      bag:identificatiecode ?nummeraanduidingID ;
      bag:status ?nummeraanduidingStatus .
  
    OPTIONAL {
      ?nummeraanduiding bag:huisletter ?huisletter .
      ?nummeraanduiding bag:huisnummertoevoeging ?huisnummertoevoeging .
    }
  
    ?nummeraanduidingStatus rdfs:label ?nummeraanduidingStatusLabel .
  
    ?verblijfsobject bag:hoofdadres | bag:nevenadres ?nummeraanduiding ;
      bag:oppervlakte ?oppervlakte ;
      bag:identificatiecode ?verblijfsobjectID ;
      bag:pandrelatering ?pand ;
      a ?verblijfsobjectType ;
      bag:status ?verblijfsobjectStatus .
  
    ?verblijfsobjectType dct:subject / skos:notation ?gebruiksdoel .
    ?verblijfsobjectStatus rdfs:label ?verblijfsobjectStatusLabel .
  
    ?pand bag:oorspronkelijkBouwjaar ?bouwjaar ;
      bag:identificatiecode ?pandID ;
      bag:status ?pandStatus .
  
    ?pandStatus rdfs:label ?pandStatusLabel
  }
  LIMIT 100

Op de eerder genoemde pagina kan je doorklikken naar een artikel met veel gebruikte bevragingen.

Als je daar op Try this query yourself klikt, krijg je een scherm als dit met de query:
BAG bevraging o.b.v. postcode+huisnummer - Kadaster - Kadaster Data Science"

Dan zie je in ieder geval al dat de gebruikte bag prefix anders is.

Zoals opgemerkt in eerdere opmerkingen, is het vorige eindpunt nu uitgeschakeld en is de nieuwe versie van de BAG nu beschikbaar via de volgende endpoint.

Endpoint: https://api.labs.kadaster.nl/datasets/kadaster/bag2/services/default/sparql
GUI voor BAG SPARQL: SPARQL - default - Basisregistratie Adressen en Gebouwen (BAG) - kadaster - Kadaster Data Science

Als voorbeeld moet de eerder genoemde query worden gewijzigd om dezelfde resultaten van de endpoint te krijgen. Zie onder:

PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX bag: <https://bag2.basisregistraties.overheid.nl/bag/def/>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX bag: <https://bag2.basisregistraties.overheid.nl/bag/def/>
PREFIX dct: <http://purl.org/dc/terms/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
SELECT *
  WHERE {
    BIND("1213EP" as ?postcode)
    BIND(12 as ?huisnummer)
    BIND("" as ?huisnummertoevoeging)
    BIND("" as ?huisletter)
  
    ?nummeraanduidingRegistratie bag:huisnummer ?huisnummer ;
      foaf:primaryTopic ?nummeraanduiding ;
      bag:postcode ?postcode ;
      dct:identifier ?nummeraanduidingID ;
      bag:status ?nummeraanduidingStatus .
  
    OPTIONAL {
      ?nummeraanduidingRegistratie bag:huisletter ?huisletter .
      ?nummeraanduidingRegistratie bag:huisnummertoevoeging ?huisnummertoevoeging .
    }
  
    ?nummeraanduidingStatus rdfs:label ?nummeraanduidingStatusLabel .
  
    ?verblijfsobjectRegistratie bag:hoofdadres | bag:nevenadres ?nummeraanduiding ;
      bag:oppervlakte ?oppervlakte ;
      dct:identifier ?verblijfsobjectID ;
      bag:maaktDeelUitVan ?pand ;
      bag:gebruiksdoel/rdfs:label ?gebruiksdoel ;
      a ?verblijfsobjectType ;
      bag:status ?verblijfsobjectStatus .
  
    ?verblijfsobjectStatus rdfs:label ?verblijfsobjectStatusLabel .
  
    ?pandRegistratie foaf:primaryTopic ?pand .
    
    ?pandRegistratie bag:bouwjaar ?bouwjaar ;
      dct:identifier ?pandID ;
      bag:status ?pandStatus .
  
    ?pandStatus rdfs:label ?pandStatusLabel
  }
  LIMIT 100

Let op: het gebruik van ?nummeraanduidingRegistratie en ?nummeraanduiding (ook voor Pand en Verblijfsobject). In deze versie van de BAG als LD maken we het onderscheid tussen de registratie en het objectniveau om de registratiehistorie vast te leggen. Dit is hier visueel weergegeven: Weaver - The user-friendly way to structure your information

1 like