Dockerized Apache Jena Fuseki distribution with built-in GeoSPARQL support, Lucene indexing, Apache SIS EPSG tooling, and production-oriented defaults for serving spatial RDF data.
A backend processing system to identify railway assets on pictures taken by camera's on measurement trains. The results help in creating inventories and manual digital inspection. The goal is to also categorize assets according to their state (health/worn..)
Asset recognition on images from measurement train
A data platform combining all asset data, setting the golden record and creating the foundation for a data centric landscape.
A backend system to automate data transfers from several databases. Using several techniques such as delta transfer or ID based copying.
Building a Railway Knowledge Graph with SPARQL Anything
Track layout is one of those fundamental asset data sources on which most other railway assets depend. Having a healthy data delivery of this information is therefor required. This project implemented changes in the business process to accommodate this data delivery.
Business process for track tracé data delivery
We installed over 16 camera's on a measurement train to inspect the overhead contact line system from multiple perspectives. The camera's are triggered based on distance travelled. The images are timestamped and the server time is synced with a Stratum 1 local NTP server. In post processing, the location of the images is calculated. The images are used for digital inspection of the system, both manual (using a webapp) and automatically (using AI).
A full stack application to manage change context inside the topology management system.
A hardware system using camera's and lasers mounted on a pantograph to measure the thickness of a wire. The results are very important to optimize maintenance and renewal and avoid catenary incidents.
Contact wire thickness measurement system
A solar/battery powered hardware system mounted in the catenary, measuring the vertical movement of the contact wire at the passage of a train. Everything was designed, assembled, programmed, ... by myself.
A strategic model to estimate and compare costs for decision-making and enterprise reporting.
An enterprise like a railway infrastructure manager, typically has a very siloed data/IT landscape. In order to make certain use cases possible, data has to be integrated between silo's. That's not always possible using existing systems and a spaghetti mess begins. And long term approach to data integration is defining a data centric strategy, meaning to create a data layer based on a single enterprise data model. This project set up several key requirements to becoming data centric. Reporting was done on director and enterprise level.
Linear assets and linear events typically have a start and an end position using a linear referencing system (kilometerpole position). For BI and operational systems, it is easier if these linear things are denormalised. A innovative model and process was thought out to calculate smallest linear segments with a unique set of properties (over 100 properties were thus defined).
Setting up an enterprise data helpdesk that gives advices and solves data bugs.
Older tamping machines use a relative system for track tamping. That means that the position of the track is corrected based on it's current position, contrary to a absolute system were the design position is respected. In order to make evaluate the effectiveness of tamping and ensure the end quality, the measurements that are done on the machine are forwarded and combined with design parameters and other measurements. For this, a state of the art GNSS system was installed, the measurement computers were connected to an Azure server over SSH and data transfer is automated.
Data integration of old track tamper machines
The data about operational length of tracks and platforms was a manually controlled inventory. This was laborious and not of high quality. This project had as goal to automatically calculate the operational length based on track topology, signal and platform locations. Integrating all the data into a common topology was the challenge.
Data integration: operational platform & track length
Automatically sync measurement results from a measurement vehicle to the data center.
A database is mostly managed in several environments and changes are pushed to production after a lengthy review process. For some database applications, this is a costly overhead that is preferably avoided. Development happens directly on the production system (no worries, this has been going well for over 10 years now). And one of the reasons this goes well is because we have a system that daily captures the DDL changes of the database and stores them in a git repository. Reverting to a previous state become a matter of using git.
The design office still employed a manual process for signature and process reporting of new designs. During covid, manual had to become digital. A sharepoint process was set up with email notification for signature management.
Schematic designs are used in railway for the track, signaling and catenary system. They schematically show how everything is connected. But it's not easy to find the changes between design revisions, for example when a signal is added or removed. To aid, we developed a machine vision based tool that finds the differences between two pdf revisions.
The project has as goal to build a knowledge graph of the railway infrastructure of Norway and generate railML v3.3 files for use cases such as RunTime Calculation (RTCI) and Runtime Simulation (RSIM)
A proof of concept to show how RDF data together with an ontology can be used together with a LLM such as ChatGPT. The project result is a public web application where the user can ask questions in natural language and get a data result as output.
Energy settlement (responsible for a large part of the operational turnover of the company) is still done mainly using Excel. Several interfaces to existing JSON API services were added to the Excel file to add a higher level of automation to the system.
In order to improve data deficiencies, the enterprise decided to review the current governance model and implement a new one. A high level strategic project started and data governance was discussed on multiple dimensions (structure, roles, governing bodies, policies, vision, ...). The project result has impact on the enterprise structure.
A very important element in an enterprise to avoid siloed data, is to have an enterprise data model by which the data (and applications..) are modelled. This ensures data interoperability from the start of the application. When dealing with legacy systems, starting an enterprise data model is not that easy. The goal of this project is setting up a team of experts that know the domain and are able to model the enterprise. In order to make the model as extensible as possible, semantic technologies were chosen. The model is published in different forms, among which is a Widoco internet site.
In order to reduce the number of "signals passed at danger", a project was launched to track in real time the location of safety equipment. A custom GPS tracker was designed and interfaced with the internal network over LTE.
GPS trackers for mobile safety equipment
Very advanced home automation. The basic logic level is run by a Wago PLC that is interfaced with Openhab for higher level logic and user interfacing. A lot of sensors are custom made (PIR motion sensors, reed sensors, water level sensor, current sensing, ...) and interfaced using ESP32 boards like NodeMCU. Several software programs are custom built to make custom interfaces with existing product interfaces (like pushing telnet data to mqtt)
[ICT-for-RAILWAYS | Workshop | 8 th Edition Madrid – Spain 2-3 October 2025](https://www.ict-for-railways.eu/)
The Infrabel opendataplatform is a classic platform that allows a download of the datasets in different formats such as csv, excel, json. It is also possible to export the dataset in the RDF serialization, turtle. However, this resulted in a very generic use of a nameless ontology. Datasets were not linked. This project added a YARRRML configuration to the platform to make use of existing ontologies in describing the data in the dataset.
The legacy system to manage the electrified auxiliary tracks was not data centric. The goal of the project was to combine the available data such as the track topology and the sectioning of the OCL to create the inventory, resulting in a dramatically reduced workload.
Participating in (student) engagement events.
Chairing the national sessions and representing Belgium for the TC9 committee.
Taking pro-active measures to improve operational railway safety.
Representing the interests of the EIM members at ERA working groups during discussions on the evolution of the TSI ENE.
Selected independent expert for ERA Telematics (CEI 2025 22), contributing rail data interoperability and infrastructure modelling expertise.
Job: ERA independent expert Safety & Telematics
creation of official building energy certificates
Job: Entrepreneur, head of my own company
Teaching fencing classes at different levels (novice up to international fencers) for the university team. Coaching the team to the university championships (and organizing the championships from time to time).
data consulting services for railway companies
Job: Independent railway data freelancer
Internship to perform an analysis on voltage dips
Job: Internship statistical analysis of voltage dips
Responsible for organizing project management for strategic development and rollout projects at Infrabel Asset Management.
Leading the digitalisation efforts in the domain of linear assets at Infrabel.
Job: Project lead digitalisation linear assets
Setting out the data strategy for the Infrabel Operations department (~8000 people)
Mainly involved in the digitalisation efforts for work management and linear measurements.
A lidar-based detection workflow to identify vegetation overgrowth along railway infrastructure.
Lightning strikes on railway infrastructure can cause serious damage and is not always detected. There exist commercially available measurement systems that interface their data of the lightning strike location and strength. We interfaced with these datasources and mapped the location (with some business rules) on the rail network. An email system was put in place to notify the installation responsible person. A GIS webapp and dashboard were also developed.
Linear measurements used to be distribute on paper or sometimes pdf. Obviously, this does not allow for normal data analysis, let alone be a driver for predictive maintenance. For this project, a data platform was set up with an automatic data transfer from measurement system to storage, automatic loading of the measurement onto the data platform and alert creation according to business rules. Furthermore an analysis desktop tool was developed that allows to visualise the measurement on an interactive chart. Other features were also developed, such as an image viewer, lidar viewer, trend analysis, inventory viewer and management, event viewer, GIS viewer, GPS tracking, export, ...
Location measurement of a measurement train is very important. The usability of the other measurement systems depend on the ability to locate the measurement. Before this project, each measurement system had it's own GNSS antenna, odometer sensor and so on. And not to mention its own quality of the location. The inhouse project developed a measurement system that is independent of any other and is optimised for railway vehicles.
Location measurement system for measurement train
Train vehicle locations arrives as GNSS positions. Depending on the quality of the hardware, a reliable and accurate position is not always guaranteed. The post processing system will handle a location collection from a train path and use all available information sources, such as signaling train detection information, in order to improve the quality of the location. This is very important for other infrastructure measurements.
Location post processing system for railway vehicles
A tool to export a Logseq-authored markdown graph to RDF for downstream validation and publishing.
The EU requests publishing data based on the RINF data model. Our train statistics data model is not using the RINF model as a basis. A translation system was set up to convert from one model into the other allowing to comply with EU requirements.
Mapping train statistic on RINF data model
Several measurement trains are equipped with camera's that capture the railway infrastructure from different angles. These images are timestamped, but not necessary positioned. The goal of this project is to create an automatic image processing service that positions the image, based on its timestamp, the position of the camera in the vehicle and the position of the vehicle.
This was the first mobile application of the enterprise. It's a GIS application, working very similar to a Map application. The user can interact with the map, search for assets, get directions, report incidents, ... Very important features of the app were the ability to visualise defect axle counters. This mostly happened during works and with the mobile app, the work teams have the ability to repair the issue before the track enters back into service (which would cause a significant amount of delays). Also requesting the technical designs or the traffic management system viewer based on your location is possible.
https://apps.apple.com/be/app/amdm/id1553037373, https://play.google.com/store/apps/details, https://amdm-web.infrabel.be/
Mobile app for geolocated technical assistance
A mobile app for catenary technicians for documentation lookup that is accessible offline and synced when online. The app uses Git to accomplish the syncing.
https://apps.apple.com/be/app/infradoc/id1592342814, https://play.google.com/store/apps/details
A mobile app for time registration using NFC badges.
Mobile time registration system with NFC badges
The enterprise is divided into about 15 workcenters. Each workcenter is assigned a certain resource amount, expressed in full time equivalents and number of worktrains. Each workcenter has also a certain amount of workload, expressed in number of assets and their maintenance charge. The project had as goal to create an objective and as realistic as possible model to calculate the absolute resource need for each workcenter. Simulations should also be possible: what if workcenters would merge, what if maintenance load increased, what if new assets were assigned, ...
Model for FTE calculation of OCL technicians
Pendules are the vertical droppers that suspend the contact wire to the carrier wire of the overhead contact line system. The application calculates the required dropper length, based on span width, system height and lots of other system and engineering project parameters. Initially the scope was to convert a legacy VB application with a very bad architecture into a modern C# .NET application with a good architecture. The logic needed to be separated from the visualisation so that the logic could also be implemented into other business applications. After the initial scope was completed, the business rules were revised and are still being revised as business learn more about the system.
The pantograph is that part of the traction vehicle in a train that conducts electrical current to the engine (or battery). It has a certain dimension and as it is on top of the vehicle, is heavily influenced by the sway vibrations of the vehicle and external influences such as wind. In order to design the overhead structures, it is important to keep everything out of the path of the pantograph. The possible positions of the pantograph are called the "free space". This projects goal was to revise the design principles used in the enterprise and participate in the revision of the principles on a European level.
The goal of the project was to define a balanced set of work related KPI's to evaluate workcenters. The balance was in predictive KPI's and historical KPI's. The report was also augmented with indicators that could explain a less favorable KPI (for example, the experience of the workforce or the availability of resources). The reporting was automated and centrally available.
A frontend GIS (graphical) management application running in QGIS to build and update the sectioning database of the overhead contact line. The base layer is the track topology on which a layer of sectioning elements and cables are attached. A backend program creates a sectioning topology from these singular and linear elements that is linked to the track topology. The resulting data-centric inventory is then used for calculating the electrified length of the network, for safety sheets or even for validating request for putting out of service.
OCL sectioning topology management application
A project to define and refine design principles that ensure the stability of overhead contact line infrastructure.
The Openrail foundation is an opensource initiative started by OBB, DB, SNCF and UIC. As I am a big supporter of opensource, European initiatives, I managed to convince my company to join the Openrail foundation. I took upon myself a role in the technical committee to represent my company and opensource one of our projects.
A planning tool to consolidate out-of-service requests into a coordinated operational plan.
Out of service planning consolidation system
A digital workflow for requesting planned out-of-tension interventions on overhead contact line infrastructure.
A measurement systems deployed on about 15 commercial vehicles. The purpose is to detect shocks happening due to pantograph/catenary interaction. The measurement system consists of accelerometers on the pantograph head on high voltage and a low voltage system inside the train. Both communicate wirelessly. Every shock is transmitted and analysed by a server side centrally and self developed system. The biggest innovation is the method used for grouping the alerts. The location associated with the shock depends on the placement of the GNSS antenna compared to the pantograph head and on the orientation of the vehicle. Several other business rules are important as well to make this, relatively big data system, business usable. But at the end of project, it became fully integrated with the work management system and workorders were automatically created when possible.
The legacy measurement system was file based and project specific. We went to a database based system with a QGIS management layer. A data quality improvement campaign was launched to improve the inventory based on measurement registrations of overhead structure. Pole naming was improved based on camera systems and AI detections.
A data-processing workflow to generate polygons for EBP posts using QGIS and Voronoi-based geometry operations.
A measurement train contains many measurement systems that collect a lot of data. In order to reduce the amount of bytes, the data is mostly written into binary files having a specific binary structure. The goal of this project is to automatically read the binary files and write the data into a usable system such as a database.
Post processing of binary linear measurement file
The goal of the project was a set of database functions to allow conversion between geographic coordinates, schematic coordinates, intrinsic coordinates and linear referencing (LRS) coordinates. Not only for points but also for linear segments and area's.
Several tools developed by my team that help in managing a Postgres database.
Ensuring the proper usage of resources. Building the right things. Having a complete and clear roadmap.
The track microtopology topology is a very important data aspect for a railway infrastructure manager. It's without a doubt, THE data foundation. The process needs to run smoothly, errors need to be corrected ASAP and clients need to be heard.
Product owner: railway micro-topology management platform
A work management systems allows the planning of workorders and is necessary to lower the administrative burden on technicians. The system has a time table (dates as columns and people as rows) for availability planning, an inventory with maintenance requirements, an incident reporting environment and a workorder system to link everything together. The system requires many types of reporting and interfacing with other systems.
Product owner: work management system OCL
The Flemish household electricity cost is settled based on energy consumption as well as maximum power use. The maximum power is a yearly value based on the average monthly values. The average monthly value is the maximum 15min average power consumption. Yes.. better read that twice. In order to avoid overcharging, the home automation system interfaces with the DSMR reader to calculate this 15min value and regulate power consumption where possible.
Measurement systems on the market for railway mostly use a proprietary data exchange format. This creates a digitalisation barrier. RCM-DX aims to standardise the data exchange format of linear measurements. This is an opensource project.
The workgroup aims to create an ontology for the railML data exchange format.
[Ontology - railML.org (EN)](https://www.railml.org/en/ontology.html)
SPARQL Anything is a system for querying diverse data formats (CSV, JSON, XML, HTML, etc.) using SPARQL. I've contributed multiple enhancements including a modernized Yasgui interface, internal caching system, XML attribute handling fixes, CI/CD automation, and automatic documentation snippet generation.
SPOC data for department of 9000 employees
At the time of the start of the project, project management was not done very professionally at the enterprise for development projects. Granted, that is a very difficult type of project to manage due to its complexity. The goal of setting up the PMO office was to give a central support and a way to connect people with similar issues. Management also wanted reporting, so that was also set up using the PMO system.
A data management application in QGIS to manage the geographic location of shelters (containing signaling or power equipment). Several different sources of data are available for the user to manage the relevant data, including GPS coordinates of inspections of the shelters and satelite images.
Having a track micro topology is a solid foundation for railway infrastructure data. But for some applications, reworking that topology into a signaling topology simplifies the usage. The goal of this project was to do this rework and publish the resulting topology.
Small Docker-ready proxy to work around CORS restrictions when consuming APIs and SPARQL endpoints from browser-based tools, with built-in preflight handling and optional token-based protection.
A periodic relevant reporting on the status of strategic projects was requested by the upper management. A special focus was put on change and issue reporting. Projects were categorized into two types: development and roll-out programs. A prioritisation model was also developed to objectively score projects for attention and resource reasons.
A server that synchronizes it's time from GNSS measurements and allows for other local systems to synchronize their time over NTP (over a network connection).
Building an open source train positioning library for railway GNSS post-processing, map matching, and path review, created for Infrabel and intended to be contributed to the OpenRailAssociation.
Giving a full day course on railway telematics to the ministry of transport of the Belgian government.
Creating a telematics ontology based on XSD schemes for TAF and TAP TSI.
A project to prepare thematic GIS layers for reporting and analysis.
A Logseq-authored expertise graph that is exported to RDF, validated with SHACL, and published as a website, RDF dataset, and CV.
The goal of the project was to ensure that micro topology data was available at the time of creation, many years before the topology change would get into service. For this a new business process needs to be put in place with enhanced tooling. The result would be an increased data centric foundation. The design process for new equipment is not well connected with the micro topology since the AS IS topology is insufficient for them. Publishing the TO BE micro topology data would allow them to position the new assets already on the correct topologic location. That will give a snowball effect of data centric benefits.
A desktop application that interfaces with the traffic management system to show the location of trains on a screen. The user can then select an area for which he wants to be warned if a train enters this place. The system will scan the image and when pixels change, alert the user.
A backend system using the train detection system to announce the train number to measurement systems. The train detection data arrives on a message queue, this queue is continuously read and processed for relevant messages. When train enters or exists a zone with a measurement system, the announcer will send this data to the measurement system. The measurement system uses this information for immediate action (pulling the train aside) or predictive actions (worn carbon of the pantograph).
Lightweight linked-data dereferencer that turns resource URIs into interactive HTML views backed by SPARQL DESCRIBE queries, while also supporting content negotiation for RDF serializations.
The goal of the project is to create a webapp that allows users to perform a digital inspection of the railway infrastructure. The app is GIS based, it shows the railway network and works very similar to Google streetview. The user clicks a location and can look around. Features are available to annotate the location. AI detections and Lidar interaction is also possible.
SAP is not a very user friendly system. The available tools to perform planning of workorders are insufficient for railway purposes. Thus a new web application was designed and interfaced with SAP backend. This project is part of a "planningtools" program to improve the business process and optimise the use of resources.
Webapp on SAP PM for workorder and ressource planning
The goal was to replace an old fashioned system with technical limitations (certainly concerning interfacing and access) with a modern web application. The application consists of an API that returns "dangerous places" and other sectioning information of the overhead contact line. The web application allows to easily query the API and print a pdf.
Sometimes, multiple railway vehicles are discovered with damages on the same location, for example 30cm out of center of the pantograph. This is a clear sign of an infrastructure issue. In order to narrow down the location of the infrastructure problem, the train paths are visualised on a map that is common to all the vehicle. The challenging part of this project is to find a sufficiently detailed trainpath and a relation between the vehicle and the trains in which it served.
Webapp: common path of several railway vehicles
A (work)traindriver that comes out of a track out of service, needs to configure his vehicle to the correct TPS system (TBL1+ or ETCS L1 LS, L1 FS, L2). This webapp allows the driver to correct locate himself on the track topology, using either a signal or his GPS position and give a driving direction. The app will then calculate the TPS level. The challenge of this project was to inventorise the TPS systems on the topology and create a routing algorithm using business logic to find "the next signal" on the trainpath, returning multiple if applicable. The TPS inventory is also used as an opendata dataset.
Creation of an opensource python library that transforms an XSD into OWL, SHACL and SKOS.
Yasgui plugin that adds a result tab to see the query results on a map
A plugin for Yasgui to explore a query result with a graph vizualisation
Built a reusable pipeline to convert railML 3.2 infrastructure data into ERA ontology (RINF-compatible RDF), including enrichment and SHACL validation.
Open source CLI and browser viewer to compute semantic diffs between RDF files, preserving named graphs, supporting blank-node-aware comparison, and producing machine-readable RDF diff output.
Open source command line utility to split large RDF files into smaller chunks, making heavy datasets easier to validate, diff, transport, and load into downstream pipelines.