Onderzoek 10 — Straatkennis voor heel Nederland: bronnen, pijplijn en graaf
Onderzoeksagent R10 · 24 september 2026 · voor regie B. Alle proefqueries zijn op 24-09 gedaan, alleen lezend, op open diensten. Wat ik niet kon vaststellen staat er zo bij. Voorbeeldzinnen gebruiken echte waarden uit die proeven, tenzij er "sjabloon" staat.
1 · Samenvatting in tien regels
- De snelste winst zit in Wikidata en de etymologie-tags van OpenStreetMap. In Utrecht geven ze samen 498 van ~3.100 straatnamen een naamgever. In onze voorraad hebben nu 52 straten een naamverklaring.
- Wikidata werkt snel via QLever: een landelijke telling duurt daar 0,9 s. De gewone SPARQL-dienst doet er 7 tot 25 s over, of loopt in een time-out.
- Amsterdam (5.349 straten) en Rotterdam (9.113) publiceren de naamverklaring als open data. Utrecht, Den Haag en Eindhoven hebben geen dataset.
- Wikipedia NL heeft zo'n dertig lijstpagina's met een verklaring per straat. Die van Utrecht is alleen een index.
- Landelijk hebben 232.724 Wikidata-straten een BAG-id. Daarvan hebben 30.371 (13 %) een naamgever.
- Via Europeana komt de beeldbank van Het Utrechts Archief binnen, met een rechtenlabel per foto. Het Kadaster heeft kaarttegels per jaar vanaf 1815.
- Delpher is snel, maar de treffers zijn vooral advertenties en veilingen, dus prijzen en namen. Pas later, en streng gefilterd.
- Code haalt alles in bulk op en rekent de tellingen zelf. Haiku 4.5 herschrijft alleen proza, met citaatcontrole. Sonnet 5 zoekt per buurt de verbanden.
- Kosten aan het model: ~€5 voor 327 straten, €27–55 voor Utrecht en €800–2.100 voor Nederland in batch.
- Niets nieuws voor 26-09. Daarna twee weken "Utrecht compleet". Daarna Amsterdam, Rotterdam en de lijststeden, en dan de rest.
2 · De bronnen
| Bron | Wat het oplevert | Dekking | Licentie | Toegang · snelheid · kosten | Wat Carmen of het huis zegt | Risico |
|---|---|---|---|---|---|---|
| Wikidata P138 op straten (SPARQL, QLever) | naamgever, met geboorte- en sterfjaar en beroep | NL 30.371 van 232.724; Utrecht 325 van 3.066 | CC0 | SPARQL 7–25 s, QLever <1 s; gratis | "Kijk, de Johannes Vermeerstraat heet naar Johannes Vermeer, geboren in 1632." | P138 kan fout of dubbelzinnig zijn; een item is geen citaat |
OSM name:etymology:wikidata (taginfo) |
naamgever als Wikidata-id | NL 48.462 wegdelen; Utrecht 202 namen, maar 20 dezelfde als Wikidata | ODbL | Overpass-hoofdserver "too busy", spiegel 18 s; bulk via Geofabrik | sjabloon: "Kijk, jouw straat heet naar {naamgever}." | share-alike voor een afgeleide database |
Amsterdam, veld beschrijvingNaam (API) |
naamverklaring in proza | 5.349 van ~5.670 wegen | "Licentie: –", wel openbaar: niet vastgesteld | REST, bulk-CSV; gratis | "Kijk, de Prinsengracht is gegraven bij de vergroting van 1612." | licentie navragen |
| Rotterdam (FeatureServer, data.overheid) | verklaring, datum van vaststelling, wijkthema | 9.113 van 9.234 records, inclusief verdwenen namen | CC0 | CSV-link dood, FeatureServer werkt | "Kijk, de Witte de Withstraat heeft haar naam sinds 12 juli 1871, en hoort bij de admiraals." | veel oorlog en koloniale geschiedenis |
| Wikipedia NL, "Lijst van straten in …" (Leiden, Groningen) | één verklarende regel per straat | ~30 pagina's boven 30 kB: Den Haag (557 kB), Groningen, Deventer, Amsterdam, Leiden … | CC BY-SA 4.0 | dump; Wikimedia laat één verzoek per ~1,2 s toe | "Kijk, de Aarstraat heet naar de Aar, een riviertje in Zuid-Holland." | tekst overnemen valt onder share-alike, een eigen zin met link niet |
| Overige steden | Den Haag: Straatnamenoverzicht, online te doorzoeken; Utrecht: kale BAG-lijst; Eindhoven: heemkundesite; per plaats ~120–130 plaatsen | wisselend | Den Haag niet vastgesteld; heemkunde en boeken: auteursrecht | web, geen dataset | — | alleen als redactiebron |
| Delpher SRU (KB) | krantenberichten per straat en jaar | 1618–1995; Wittevrouwensingel in 1910: 243 treffers (149 advertenties, 91 artikelen) | vrij na 140 jaar; open bulk t/m 1879; de API "na juridische toegang" | zonder sleutel, 0,1 s | "In 1910 stond jouw singel 91 keer in de krant." (alleen een telling) | de eerste treffers: "Velingen", "Geveild 17 September 1910", "Kalender van verjaardagen" |
| Beeld: Europeana (API), RCE, Commons | historische foto's met een rechtenlabel | Wittevrouwensingel: 616 treffers, 602 van Het Utrechts Archief; rechten: 379 CC BY, 207 publiek domein, 12 BY-NC; Commons binnen 300 m: 50 foto's, geen van vóór 1950 | per foto; RCE-eigen foto's CC BY-SA | gratis sleutel | sjabloon: "Zo zag jouw singel eruit in {jaar}." | geen BY-NC; herkenbare mensen; een tekstzoekvraag vindt ook verkeerde straten |
| Historische kaarten, Kadaster (tegels per jaar) | kaartbeeld per jaar, van 1815 tot nu | landelijk | "vrij te gebruiken onder vermelding van bron: Kadaster" | tegeldienst Historische_tijdreis_{jaar} |
sjabloon: "Zo lag jouw straat er in 1900 bij." | alleen een beeld, geen feit |
| HisGIS, kadaster 1832 | grondgebruik per perceel (en de eigenaar en de waarde in 1832) | onvolledig; Rotterdam als CC0-dataset | landelijk niet vastgesteld | download | sjabloon: "In 1832 was de grond onder mij een {tuin}." | de waarde van toen nooit noemen |
| Wikidata, gebouwen | architect, foto | 22.543 items met een BAG-pand-id; 63.159 rijksmonumenten, waarvan 2.755 met architect | CC0 | QLever | sjabloon: "Ik ben ontworpen door {architect}." | weinig architecten ingevuld |
BGT, vegetatieobject_punt (OGC API) |
bomen als punt, zonder soort | in een steekproef ja in Utrecht, Amsterdam en Zwolle, nee in Groningen, Enschede en Maastricht | CC0 | gratis, snel | "Kijk, in jouw straat staan {n} gemeentebomen." | de laag bevat ook gekapte bomen |
| Bomenkaarten (gemeenten, RIVM) | soort en plantjaar; RIVM: kroonbedekking per 10 m | 11 datasets van ~10 gemeenten, plus losse; RIVM landelijk | CC0 of CC BY | per gemeente een ander formaat | "Kijk, de meeste bomen hier zijn {platanen}." | per gemeente een aparte koppeling |
| CBS wijken en buurten 2025 (86165NED) | een handvol van 161 variabelen: woningvoorraad, bouwjaarklasse, land en water, afstanden | 14.729 buurten | CC BY 4.0 | OData | sjabloon: "Een {zesde} van jouw buurt is water." | de rest gaat over mensen: verboden terrein |
| KNMI, daggegevens (script) | zonuren en temperatuur per station, De Bilt vanaf 1901 | ~50 stations | CC BY 4.0 | gratis | "Op 1 september scheen de zon in De Bilt 9,9 uur." | een station is geen straat |
| Geluid, RIVM (Lden) | dB per 10 m | landelijk | publiek domein | WMS | alleen gedrukt | leest als een oordeel over een adres |
| EP-Online | energielabels, per straat op te tellen | landelijk, maandelijks | vrij, maar niet "in grote aantallen individueel herkenbaar" doorgeven | gratis sleutel | per straat alleen gedrukt | een label staat dicht bij een waarde |
| BAG, 3DBAG, RCE, AHN | bouwjaren, daken, monumenten, hoogte | landelijk | CC0 of CC BY | al in gebruik | (bestaat al) | — |
Niet bruikbaar: DBpedia NL was op 24-09 onbereikbaar. De BRK en de Kadaster-koopsommen zijn betaald, gaan over personen en noemen prijzen.
3 · De pijplijn en wat hij kost
Het aantal straten. De PDOK Locatieserver telt op 24-09 270.989 BAG-openbare ruimten van het type Weg (per woonplaats), en 3.126 in de woonplaats Utrecht. Unieke straatnamen zijn er minder, maar die heb ik niet geteld. Ik reken dus met 271.000 in plaats van "~250.000".
- Bulk, geen live-verzoeken. Code haalt alles eenmalig binnen: de BAG als GeoPackage, Wikidata via QLever (alle straten in één vraag), het OSM-extract van Geofabrik, de hele tabellen van Amsterdam en Rotterdam, en de dumps van de Wikipedia-lijsten. Daarna leest het gesprek alleen de cache, zoals bij de jaarweetjes.
- Koppelen op het BAG-openbare-ruimte-id. Wikidata (P5207), de Locatieserver en Amsterdam geven dat mee. Rotterdam en de Wikipedia-lijsten koppelen op naam en plaats, en daar ontstaat twijfel.
- Feiten uit code, zonder model. Lengte, aantal panden, de bouwjaren, lichtingen, monumenten en het oudste daarvan, bomen, hoogte ten opzichte van NAP, afstand tot water of park. Verder de naamgever met levensjaren en beroep (uit velden, via een woordenlijst), de datum van vaststelling, het aantal foto's en het jaar van de oudste, en de naamgenoten elders in het land. Dat is naar schatting de helft tot twee derde van de 10–20 feiten per straat.
- Haiku 4.5 alleen voor proza. Denk aan een naamverklaring, een Wikipedia-regel, of de redengevende omschrijving van hoogstens drie monumenten. Eén aanroep per straat, met de prompt in de cache. Haiku geeft hoogstens acht feiten, elk met een letterlijk citaat, in NL en EN. De code keurt volgens het jaarweetjes-recept: het citaat staat letterlijk in de bron, getallen en namen staan erin, er zit geen woord uit de uitsluitlijst in. Die lijst krijgt er bedragen, "verkocht" en "geveild" bij.
- Sonnet 5 alleen waar redeneren nodig is. Bij een twijfelachtige naamgever. Eén keer per buurt voor de ontdekkingen, op gekeurde feiten, waarbij elk verband op twee feit-id's rust en de code het narekent. En een steekproef van 5–10 %. Daarna keurt een mens, zoals nu met
oogst/enzz-.
Aannames. Haiku per straat: ~3.000 nieuwe inputtokens, ~2.000 uit de cache en ~1.500 output, maal 1,3 voor herkansingen. Dat is ≈ $0,014. Sonnet 5 per buurt: ~15.000 in en ~2.000 uit, ≈ $0,05. Prijzen: Haiku 4.5 $1/$5 per miljoen tokens, Sonnet 5 $2/$10, uit de cache ≈ 0,1×, batch –50 %. Koers ECB 23-09: €1 = $1,1411.
| Straten | Aanroepen Haiku / Sonnet | Tokens in / uit | Direct | Batch | |
|---|---|---|---|---|---|
| (a) tien buurten | 327 | ~425 / ~40 | ~2,5 M / ~0,7 M | ~€5 | ~€3 |
| (b) Utrecht | 3.126 | ~4.050 / ~570 | ~25 M / ~7 M | ~€55 | ~€27 |
| (c) NL, realistisch | 271.000, waarvan ~60–100k met proza (schatting, niet gemeten) | ~80–130k / ~25k | ~0,6–0,9 G / ~0,2 G | ~€1.650–2.150 | ~€800–1.100 |
| (c) NL, bovengrens | Haiku op elke straat | ~350k / ~25k | ~2 G / ~0,6 G | ~€4.200 | ~€2.100 |
De bulk-download bepaalt de doorlooptijd, niet het model: een batch is binnen 24 uur klaar. Landelijk per straat Wikimedia bevragen, één verzoek per 1,2 s, kost ruim drie dagen per soort verzoek.
4 · De graaf: nieuwe knopen en kanten
Er komen knopen bij naast wat web-graaf.mjs nu kent: naamgever (alleen met een Wikidata-item of een verklaring met bron), thema, jaar, monument, architect, beeld, kaart, boomsoort en water of park. Elke kant draagt een bron en een peildatum.
| Kant | Uit |
|---|---|
| straat —heet naar→ naamgever | Wikidata, OSM, Amsterdam, Rotterdam, lijsten |
| straat —hoort bij→ thema; straat —kreeg haar naam in→ jaar | Rotterdam, clusters in Wikidata |
| straat —ligt in→ buurt —ligt in→ wijk | Locatieserver, CBS |
| naamgever —geboren in / stierf in→ jaar; naamgever —was→ beroep | Wikidata |
| huis —ligt aan→ straat; huis —klaar in→ jaar; huis —hoort bij lichting→ (straat, jaar) | BAG |
| straat —heeft→ monument —ontworpen door→ architect | RCE, Wikidata |
| straat —staat op→ beeld —gemaakt in→ jaar; straat —ligt op→ kaart (jaar) | Europeana, Kadaster |
| jaar —weetje→ jaarweetje | bestaat al |
| straat —draagt dezelfde naam als→ straat elders | BAG, Wikidata |
| straat —grenst aan→ water of park; —heeft bomen van soort→ boomsoort | BGT, bomenkaart |
Vijf ontdekkingen
- De Schildersbuurt in Utrecht-Oost. Elf straten heten er naar schilders die tussen 1610 en 1638 geboren zijn, van Adriaen van Ostade (1610) tot Meindert Hobbema (1638) (Wikidata en Locatieserver, 24-09). "Kijk, elf straten hier heten naar schilders die binnen dertig jaar van elkaar geboren zijn."
- Naamgenoten in het hele land. In Wikidata heten 593 straten naar koningin Wilhelmina, 193 naar Rembrandt en 161 naar Frans Hals (QLever, 24-09; het echte aantal ligt hoger). "Kijk, er zijn nog 192 straten zoals de jouwe."
- Een naam die ouder is dan de huizen. De Rotterdamse datum van vaststelling (Witte de Withstraat: 12-07-1871) naast het oudste BAG-bouwjaar laat zien wat er eerst was, de naam of de stenen. (sjabloon)
- Jouw bouwjaar en de naamgever om de hoek. Een huis —klaar in→ jaar ←geboren in— de naamgever van een straat binnen 500 m. Nog niet op een echt adres nagelopen. (sjabloon)
- Het jaar in drie lagen. Bij bouwjaar 1910: de kaart van 1910, de oudste vrije foto van de straat, en een telling uit Delpher. De Wittevrouwensingel stond in 1910 in 91 artikelen. Alleen het getal, niet de inhoud.
5 · Advies: wat eerst
De euro's zijn API-kosten van de pijplijn. De kosten van de agent-sessies zelf kan ik niet ramen.
| Wanneer | Stap | Agent · model | Uren | € |
|---|---|---|---|---|
| Deze week, t/m 26-09 | Niets bouwen. De regie leest dit en kiest de volgorde van de steden na Utrecht. | regie | 0,5 | 0 |
| Daarna twee weken | 1 · Naamgeverlaag voor Utrecht uit QLever en OSM, alleen code. Doel ~500 van 3.126 (nu 52 in de voorraad). | uitvoerder · Opus | 6 | 0 |
| 2 · De Haiku-oogst op proza voor de 327 straten, met de keuring van de jaarweetjes. | uitvoerder · Sonnet; pijplijn · Haiku | 8 | ~5 | |
| 3 · De nieuwe knopen en kanten in de graaf, plus de ontdekkingen per buurt. | uitvoerder · Opus; pijplijn · Sonnet 5 | 8 | ~1 | |
| 4 · Heel Utrecht in batch, met vrije beelden via Europeana (CC0, PD, CC BY) en de kaart van het bouwjaar. | uitvoerder · Sonnet | 10 | ~27–55 | |
| 5 · Steekproef van honderd straten en een oordeel. | regie en QA | 3 | 0 | |
| Daarna | 6 · Amsterdam (5.288 straten) en Rotterdam (5.566), eerst de licentie van Amsterdam navragen. | uitvoerder · Sonnet | 8 | ~70–170 |
| 7 · De Wikipedia-lijststeden (~30). | uitvoerder · Sonnet | 12 | ~30–60 per 5.000 straten (aantal niet geteld) | |
| 8 · Landelijk: overal code-feiten, Haiku alleen waar proza is, Sonnet per buurt. | uitvoerder · Opus | 20–30 | ~800–2.100 | |
| 9 · Delpher pas na een juridische toets (KB-voorwaarden, de grens van 140 jaar). | eerst de jurist | — | — |
6 · Wat we niet moeten doen, en waarom
- Geen live-SPARQL of Overpass tijdens het gesprek. We hebben een budget van 3 s. Gemeten: 25 s, een time-out, en "too busy".
- Geen Delpher-inhoud vertellen, en nooit advertenties, veilingen of familieberichten. Die staan vol prijzen en namen van echte mensen. Wat jonger is dan 140 jaar is bovendien niet vrij.
- Niets uit CBS over mensen, geen WOZ, geen koopsom en geen waarde uit 1832. Luchtkwaliteit ook niet: dat klinkt als een gezondheidsclaim over een adres. Geluid en energielabel alleen gedrukt en per straat.
- Geen naamverklaring die het model zelf bedenkt. Een zin zonder citaat valt af. Liever geen feit.
- De uitsluitlijst van de jaarweetjes niet blind hergebruiken. Die laat de Witte de Withstraat ("sneuvelde") en de Atjehstraten stil wegvallen. De regie moet kiezen: zwijgen, of het ongemakkelijke vertellen zoals bij het Gifpark.
- Geen hele lagen overnemen onder BY-SA of ODbL. Een eigen zin met een link is veilig; dat is iets voor de juristen, later.
- Geen straatnamenboek of heemkundesite scrapen. Daar zit auteursrecht op.
- Geen BY-NC-beelden en geen AI-bewerking van historische foto's van echte adressen (D9).
- Geen buurtzin in veertig straten herhalen (oogst-README).
Niet vastgesteld: de licentie van de Amsterdamse beschrijvingNaam; de open-datastatus van het Haagse overzicht; de licentie van HisGIS en of Utrecht erin zit; het aantal unieke straatnamen landelijk; hoeveel straten landelijk een proza-bron hebben; de licentie van de luchtkwaliteitskaarten; of Eindhoven een eigen dataset heeft.