Stop Sync: ATLAS ↔ OSM

This project provides a systematic pipeline to identify, analyze, and resolve discrepancies between public transport stop data from ATLAS (Swiss official data) and OpenStreetMap (OSM).

Purpose

Switzerland has two valuable sources of public transport data:

  • ATLAS: The authoritative dataset from the Swiss Federal Office of Transport, containing official traffic points, platform designations, and timetable associations.
  • OpenStreetMap (OSM): A community-maintained, freely available geographic database with rich attribute data.

By systematically comparing these datasets, we can:

Improve data quality and detect anomalies for both datasets by identifying missing stops, incorrect locations, or outdated attributes.

Current Statistics

Note: Statistics are automatically synchronized with the matching pipeline and updated on each data import.

Metric Value
ATLAS Platforms 54,882
Matched Pairs 60,863
Match Rate 88.7%
Unmatched ATLAS 6,200
Unmatched OSM 7,987

System Workflow

The system is designed to re-import base data periodically (e.g., daily) to stay synchronized with ATLAS and OSM updates. The database is fully rebuilt on each run.

flowchart LR subgraph Sources["Data Sources"] A[("ATLAS<br/>Official Swiss Data")] O[("OSM<br/>Transport Data")] end subgraph Pipeline["Processing Pipeline"] direction TB D["1. Download & Process"] M["2. Multi-Stage Matching"] P["3. Problem Detection"] I["4. Database Import"] D --> M --> P --> I end subgraph Output["Output"] DB[("Database<br/>PostgreSQL + PostGIS")] W["Web Application"] DB --> W end A --> D O --> D I --> DB

The database is wiped and rebuilt on every pipeline run.

Documentation Sections

Section Content
1. Download and Process Data Data sources, filters, file formats (includes 1.4 Route-Route Matching)
2. Matching Process Multi-stage matching algorithm (includes 2.4 Stop-stop matching using routes)
3. Problems Problem detection and prioritization
4. Database Schema, import process, and persistence
5. Web App Interactive map interface
6. System Architecture Docker services, scheduler timing, status API, and security
7. CI and Tests GitHub Actions, test setup, and local checks

Source Code

The complete source code is available at: github.com/openTdataCH/stop_sync_osm_atlas

Data update running in background
Preparing update... | Phase: initializing
Data update in progress
Core data is being refreshed. Use this time to read the documentation.
Elapsed: -- ETA: -- Phase: idle