Bronnen en licenties
Waar elk getal op deze site vandaan komt, onder welke licentie het staat en wie de foto’s heeft gemaakt
Deze gids is gemaakt uit één landelijk bestand
Er bestaat geen los opendatabestand van de metro van Rotterdam. De dienstregeling op deze site komt uit het landelijke GTFS-bestand van het Nederlandse openbaar vervoer, uitgegeven door OVapi via het NDOV Loket: één zip van ongeveer 175 MB die uitgepakt bijna een gigabyte wordt, waarvan stop_times.txt in zijn eentje ruim 700 MB. De metro van Rotterdam is daarin één vervoerder tussen tientallen andere.
Dat heeft een gevolg dat vaker misgaat dan je zou denken: in hetzelfde bestand zit ook de metro van Amsterdam, met precies hetzelfde routetype (route_type=1). Filteren op «metro» levert dus twee steden op. Ons filter kijkt eerst naar de vervoerder en pas daarna naar het type. Wat er na dat filter overblijft is deze site: 5 lijnen, 71 stations, 151 perrons, 9.460 ritten binnen de geldigheidsperiode en 199.419 regels met vertrektijden. Elk getal dat u hier leest is daaruit gerekend of komt uit een van de bronnen hieronder. Geen enkel getal is met de hand in een zin getypt, want een zin veroudert en een berekening niet.
Het bestand geeft zichzelf om de paar dagen opnieuw uit
Dit is geen jaarlijkse uitgave. Op 5 november 2026 was de zip 215 MB, op 12 november 2026 was hij 175 MB, met een ander versienummer en een andere geldigheidsperiode. Er verdwijnt niets dramatisch: het bestand schuift mee met de kalender en snijdt er aan de achterkant dagen af. Maar het betekent wel dat een gids die het bestand één keer binnenhaalt en daarna stilstaat, binnen enkele weken tijden toont die nergens meer op slaan.
Daarom wordt het bestand elke dag opnieuw opgehaald en wordt de site opnieuw doorgerekend, en worden de nieuwe tijden daarbij met de vorige vergeleken. Een bron die stil is blijven staan ziet er namelijk precies hetzelfde uit als een bron zonder wijzigingen, en dat verschil ziet u alleen als iemand het meet.
Vier stations die in het bestand «Onbekend» heten
In een GTFS-bestand heeft een station een eigen regel en heeft elk perron er ook een. Logisch zou zijn om de stationsnaam uit de stationsregel te halen. Dat kan hier niet: in dit bestand staat in dat veld bij vier stations letterlijk «Onbekend» — en een ervan is het eindpunt van lijn B, Hoek van Holland Strand. De andere drie zijn Maassluis Centrum, Steendijkpolder en Vlaardingen Centrum. Een generator die de voor de hand liggende keuze maakt, publiceert dus vier stations die «Onbekend» heten en een lijn die nergens eindigt.
Wij nemen de naam daarom van het perron, waar hij wel compleet staat, en halen het plaatsvoorvoegsel eraf: «Rotterdam, Beurs» wordt «Beurs». Daarna wordt elke naam gecontroleerd tegen het Centraal Haltebestand, het landelijke halteregister dat de vervoersautoriteiten bijhouden en dat via een heel andere keten wordt uitgegeven. Uitkomst: 71 van de 71 namen komen overeen. Twee stations verschillen op een andere manier: de stationsregel noemt Alexander «Station Alexander NS» — die «NS» is de aantekening dat er ook een treinstation is, geen deel van de naam — en zet «Tochten» waar het register en de perrons «De Tochten» zeggen.
Geen calendar.txt: het soort dag wordt afgeleid
De meeste GTFS-bestanden zeggen in calendar.txt welke dienst op welke weekdagen rijdt. Dat bestand zit hier niet in de zip. Alle kalenderinformatie staat in calendar_dates.txt, en dan alleen in de vorm «op deze datum rijdt deze dienst» — geen enkele regel van het type «op deze datum rijdt hij niet». De dienstnummers zelf zijn nietszeggende gehele getallen die bij elke heruitgave veranderen, dus daar valt niets uit af te leiden.
Het soort dag wordt hier daarom uit de dienstregeling zelf afgeleid: alle dagen met exact dezelfde verzameling ritten vormen één groep, en pas daarna krijgt die groep een naam (doordeweeks, vrijdag, zaterdag, zondag). Het voordeel is dat het klopt ook als de vervoerder één losse dag anders rijdt. Het nadeel moeten we eerlijk noemen: in de huidige geldigheidsperiode valt geen enkele Nederlandse feestdag, dus in deze gegevens zit geen feestdagdienst. Die verzinnen we niet; we zeggen dat hij er niet is.
Welke licentie geldt voor welk onderdeel
De zip heeft geen enkele licentie, hij heeft er drie. In licenses.txt binnen het bestand staat per tabel welke. Dat is geen formaliteit: twee van die drie leggen verplichtingen op die wij niet willen erven, en dus gebruiken we die tabellen niet.
| Onderdeel van het bestand | Licentie | Gebruiken wij het? |
|---|---|---|
De gewone tabellen: stops, routes, trips, stop_times, calendar_dates, feed_info | CC0-1.0 (publiek domein) | Ja. CC0 verplicht tot niets, ook niet tot bronvermelding. Wij noemen de bron toch, omdat u moet kunnen nakijken waar een cijfer vandaan komt. |
shapes.txt — de getekende lijnvoering | ODbL-1.0 | Nee. De metrokaart op deze site is getekend uit de coördinaten van de stations, niet uit deze tabel. Wie dat wel doet, sleept de verplichtingen van ODbL mee naar zijn eigen kaart. |
ticketing_identifiers en ticketing_deep_links | CC-BY-NC-ND-4.0 | Nee. Die licentie verbiedt commercieel gebruik en bewerking. Deze tabellen worden niet geopend. |
Eén gevolg daarvan is zichtbaar op de lijnpagina’s: het aantal kilometers van een lijn komt uit shape_dist_traveled in stop_times.txt, dat onder CC0 valt, en niet uit de getekende lijnvoering. Hetzelfde getal, een andere herkomst, een andere licentie.
Bronvermelding uit beleefdheid, want verplicht is zij hier niet: Bron: RET / OVapi (NDOV Loket). GTFS-gegevens onder CC0-1.0. Het bestand zelf staat op gtfs.ovapi.nl en het halteregister op data.ndovloket.nl.
OpenStreetMap: hier is de bronvermelding wél verplicht
De plekken die bij elk station onder «in de buurt» staan — musea, parken, ziekenhuizen, stadions, monumenten — komen uit OpenStreetMap en staan onder de Open Database License 1.0. Die licentie verplicht tot de regel «© OpenStreetMap contributors» op elke pagina waarop die punten staan. Dat is geen beleefdheid maar de voorwaarde waaronder we ze mogen tonen; de licentietekst staat op opendatacommons.org.
Hoe die lijst tot stand komt, zodat u weet wat u leest: een straal van 600 m hemelsbreed rond het stationspunt, bij schaars bezette stations verruimd tot 1.000 m, hoogstens tien per station, geselecteerd op bekendheid en pas daarna op afstand, en alleen plekken met een eigen naam en een eigen link. De loopafstand en de looptijd erbij zijn schattingen (hemelsbrede afstand maal 1,3, tachtig meter per minuut), geen berekende wandelroute — dus geen opgave waarop u een overstap moet plannen.
De metrokaart op deze site is eigen tekenwerk
De kaart en het lijnenschema zijn hier getekend, uit de coördinaten en de stationsvolgorde van het opendatabestand. Het is niet de officiële netkaart, het doet ook niet alsof, en er is geen officiële kaart voor overgetekend. U mag hem hergebruiken onder CC BY 4.0, met vermelding van Metro Rotterdam; de onderliggende gegevens blijven onder hun eigen licentie vallen.
Tarieven, OVpay en toegankelijkheid komen ergens anders vandaan
Deze drie onderwerpen staan niet in het opendatabestand. De zip bevat geen fare_attributes.txt en geen fare_rules.txt — in Nederland bepaalt de vervoerder de prijs, niet het bestand — en evenmin pathways.txt of levels.txt, waarin anders de loopwegen binnen een station zouden staan.
De prijzen, de regels rond in- en uitchecken en de overgang van de OV-chipkaart naar OVpay komen daarom van de pagina’s die de vervoerder — RET (Rotterdamse Elektrische Tram N.V.) — zelf publiceert, gelezen op 13 november 2026. De toegankelijkheid per perron komt uit het Centraal Haltebestand van het NDOV Loket, met de gegevens uit het GTFS als tegenproef. Die pagina’s van de vervoerder zijn auteursrechtelijk beschermd: wij noemen cijfers, vatten regels samen en nemen geen pagina’s over. Hun robots.txt vraagt tien seconden tussen twee opvragingen; die zijn gerespecteerd.
Deze site is geen site van die vervoerder en verkoopt geen vervoerbewijzen. Wat deze site wel en niet is, staat voluit in de juridische informatie.
Wat hier bewust niet staat
Een gids wordt niet beter van gaten opvullen. Dit is wat wij wel zouden kunnen uitrekenen maar niet publiceren, met de reden erbij — zodat u kunt beoordelen of u het ergens anders moet zoeken.
| Wat u hier niet vindt | Waarom niet |
|---|---|
| De prijs van station A naar station B | De ritprijs wordt berekend met de officiële tariefafstand, en die wordt niet gepubliceerd. Onze kilometers zijn de werkelijke rijkilometers uit het opendatabestand, en dat is iets anders. Met 71 stations zouden wij 2.485 prijzen kunnen uitrekenen die er officieel uitzien en het niet zijn. Wat er wel staat is de formule: basistarief plus kilometers maal kilometertarief. |
| Welk station in welke tariefregio valt | Er gelden twee verschillende kilometertarieven, maar welk station onder welk van de twee valt wordt niet per station gepubliceerd. Het afleiden uit de gemeente zou een aanname van ons zijn, en een aanname met een prijskaartje eraan is het soort fout dat u pas bij het uitchecken merkt. |
| De overstaptijd in Beurs | Beurs is het enige station van het net met perrons op twee niveaus: A, B en C beneden op −1, D en E op −2. Overstappen tussen die twee kost dus tijd. Hoeveel, staat nergens: transfers.txt bevat geen enkele regel die de metro raakt en de vervoerder publiceert het niet. Het blijft leeg in plaats van geschat. |
| Een lijst met in- en uitgangen per station | Het opendatabestand kent geen ingangen (location_type=2) en geen loopwegen, en het halteregister beschrijft het perron, niet de straat erboven. Wat wij over de straat zouden zeggen, zouden we verzinnen. |
| Een dienstregeling voor feestdagen | In de huidige geldigheidsperiode valt geen Nederlandse feestdag, dus zit er geen feestdagdienst in deze gegevens. Zodra het bestand een periode met een feestdag dekt, verschijnt hij vanzelf. |
| De perronmaten uit het halteregister | Het register schrijft bij 109 van de 151 perrons zelf «Niet gemeten» in de opmerkingen. Dat zijn sjabloonwaarden, geen metingen, en een maat in centimeters die niemand gemeten heeft is erger dan geen maat. |
| Bij welke stations een check-in-paal of oplaadpunt ontbreekt | Het register zegt bij zeven stations van nee — allemaal op hetzelfde omgebouwde traject, precies daar waar het ook de lift niet invult. Dat patroon wijst op een onvolledige registratie, niet op stations zonder paal. Zonder tweede bron publiceren we «hier kunt u niet inchecken» niet. |
Een metropolitaan net, geen gemeentelijk net
Het woord «Rotterdam» in de naam van deze site dekt de lading maar ten dele. De 71 stations liggen in elf gemeenten: 41 in Rotterdam en 30 in de tien andere. Lijn B eindigt op het strand van Hoek van Holland en lijn E rijdt door tot Den Haag Centraal. Wie alleen de gemeentegrens volgt, laat bijna de helft van het net weg.
De gemeente per station komt uit de CBS-code die het halteregister per perron meegeeft. De naam van die gemeenten publiceren we niet overal: die staat in geen enkele bron die wij mogen gebruiken. De landelijke geocoder zou hem geven, maar zijn robots.txt verbiedt dat pad uitdrukkelijk, en de open kennisbank sluit haar zoekdienst in de hare uit. Liever een code die klopt dan een naam die wij erbij hebben bedacht.
Fotoverantwoording
De foto’s op deze site komen van Wikimedia Commons. Het zijn er 19, en 15 ervan staan onder CC BY of CC BY-SA. Die licenties verplichten tot het noemen van de maker en de licentie: dat is geen beleefdheid maar de voorwaarde waaronder de foto hier mag staan. Een foto als sfeerbeeld gebruiken zonder die regel is net zo goed een inbreuk als een foto zonder licentie gebruiken. De overige 4 staan onder CC0 of in het publieke domein en verplichten tot niets; ze staan er toch bij, in dezelfde tabel.
Bij elke foto staat de maker ook in het bijschrift op de pagina zelf. Dat de makers hun werk vrij hebben gepubliceerd, betekent niet dat zij iets met deze site te maken hebben of haar steunen.
Het logo van deze site is eigen werk: het komt niet van Commons en het is geen bewerking van het logo van de vervoerder, dat van zijn houder is. Het toont een metrostel dat uit een tunnelmond komt, onder het silhouet van de Erasmusbrug — stadsbeeld, geen merk.
Een fout gezien?
Die zit er. Bij deze hoeveelheid afgeleide cijfers is de vraag niet óf er iets misstaat maar wat. Een tijd die niet klopt, een station dat op de kaart verkeerd ligt, een plek in de buurt die er niet meer is, een bronvermelding die ontbreekt: laat het weten via het contactformulier of per e-mail aan [email protected].
Correcties worden in de generator gedaan en niet in de losse pagina. Dat duurt iets langer, maar daarna staat het op alle pagina’s tegelijk goed en komt het bij de volgende herbouw niet terug.
