Velopark: A Linked Open Data Platform
for Bicycle Parkings

In reply to

HTML version at https:/​/​julianrojas.org/papers/sem4tra2020-paper

Abstract

Cycling as a mean of urban transportation is positively correlated with cleaner, healthier and happier cities. By providing more infrastructure, such as secure parking facilities, cities aim on attracting more cyclists. However, authoritative information about parking facilities is heavily decentralized and heterogeneous, which makes secure parking facilities harder to be discovered by cyclists. Can an open dataset about bike parkings be managed decentrally? In this paper, we present the results of the Velopark project, carried out in Belgium by different actors that include local public authorities, public transport operators and pro-cycling organizations. During the project execution we (i) introduced the Open Velopark Vocabulary as a common semantic data model; and (ii) implemented the Velopark platform, an open data publishing environment for both static and live authoritative parking data. So far, 1599 parking facilities were published through the Velopark platform, 31 different Belgian municipalities and 4 parking related organizations use the platform to describe, publish and manage their parking facilities. A common data publishing environment supports organizations for providing access to their information, while guaranteeing data reliability for cyclists. In future work we will further extend our data model to cover other kinds of infrastructure and bicycle-related services.

Introduction

Bicycles have played a main role in the urban transportation evolution of the last decade [1]. Motivated by its positive side-effects (e.g., on traffic congestion, CO2 emissions and public health), public authorities around the world implement strategies that promote cycling as a main mode of transportation [2, 3]. Countries such as Denmark, Germany and The Netherlands, stand among the most successful in this regard [4], due to effective pro-cycling policies combined with adequate infrastructure provision (e.g., parking facilities) [5, 6].

Sufficient infrastructure coverage and capacity is necessary to increase bicycle usage, but infrastructure alone is not enough. Effective information channels that let cyclists know where and how to access and use such infrastructure are also a necessity. Lack of clear communication may lead to increased inappropriate (sometimes illegal) street parking and higher bicycle theft levels. These are already major issues in the aforementioned countries, ultimately having negative effects on cycling promotion [7, 8].

Nowadays cyclists struggle to find reliable and useful information. Authoritative data about bicycle-related infrastructure such as parkings, is usually managed by multiple organizations that either own or operate these facilities. The Web is typically the preferred medium used by these organizations to make information available to the public via their websites. However, having to visit several websites is impractical to find the desired information, e.g., to know where to securely park a bike or if there is enough room to do so in a particular location.

Applications that facilitate information access are difficult to build due to highly heterogeneous or unavailable data. Providing users with all mobility-related information they need, is one of the goals behind MaaS (Mobility as a Service)1 solutions. Building MaaS applications requires data to be available in machine-readable formats, which is frequently not the case for bicycle-related infrastructure. Acknowledging this gap and motivated by Open Data initiatives, some bicycle infrastructure managers publish their data using machine-readable formats through ad-hoc Web APIs. Although they fulfill their purpose of making data available, developers still struggle on reusing the data due to the high heterogeneity found across APIs in terms of data structure and information detail.

In this paper we present the results of the Velopark project2. This project was carried out in Belgium with the support of local governments, public transport operators and pro-cycling organizations. The main results of the project are (i) a semantic data model, namely the Open Velopark Vocabulary3 to effectively describe bicycle parking facilities; (ii) the implementation of a data publishing platform that supports organizations with limited resources to manage and self-publish their data, while fostering interoperability of bicycle parking data; and (iii) an Open Data charter4 signed by the cities of Antwerp, Ghent, Leuven, Pelt and other organizations, expressing a commitment to provide timely and high quality information about their bicycle parkings as interoperable Open Data to stimulate daily bicycle use. At the time of writing, 31 Belgian municipalities and 4 bicycle parking related organizations actively engaged into the Velopark platform, publishing 1599 bicycle parking facilities.

The rest of this paper is organized as follows: Section 2 presents an overview of related work regarding data models and approaches for Open Data publishing on the Web. Section 3 describes the Open Velopark vocabulary. Section 4 presents the reference architecture of the Velopark platform. Finally in Section 5, we present our conclusions and vision for future work.

Open Velopark Vocabulary

Motivated by the need of having a common data model capable of capturing all the complexity inherent to bicycle parkings, we created the Open Velopark Vocabulary (OVV). We incorporated the input of several bicycle parking managers, which includes public authorities, public transport operators and pro-cycling organizations, all having the goal of bringing reliable and useful information to bicycle users. For the vocabulary creation we followed the guidelines established by the Best Practices for publishing Linked Data document12, emphasizing on reusing standard and existing vocabularies.

[Figure 1]
Fig. 1: Overview of OVV that shows how it relates and extends concepts from Schema.org and MobiVoc.

The core of OVV is based on MobiVoc, which is in its turn based on the Schema.org data model. OVV thus extends both MobiVoc and Schema.org to define a set of concepts and properties that are not originally considered by these vocabularies and are deemed important for providing useful information for cyclists (see Figure 1). The main focus of OVV extensions lies in providing definitions for bicycle parking associated services and features and more detailed descriptions of operational and physical properties of bicycle parking facilities (see Table 1).

Name Type Extends
Bicycle Class schema:Vehicle
Bike Parking Feature Class schema:LocationFeatureSpecification
Security Feature Class schema:LocationFeatureSpecification
has section Object Property mv:BicycleParkingStation
has counting system Data Property mv:Capacity
covered Data Property mv:BicycleParkingStation
final closing date Data Property mv:BicycleParkingStation
intended audience Data Property mv:BicycleParkingStation
maximum parking duration Data Property mv:BicycleParkingStation
opening hours extra information Data Property mv:BicycleParkingStation
post removal action Data Property mv:BicycleParkingStation
removal conditions Data Property mv:BicycleParkingStation
restrictions Data Property mv:BicycleParkingStation
initial opening date Data Property mv:BicycleParkingStation
temporarily closed Data Property mv:BicycleParkingStation

Table 1: OVV avoids to redefine existing concepts and adds domain-specific entities and properties.

OVV defines a core-independent list of terms13 that provides definitions to domain-specific entities such as types of parking facilities (e.g., bicycle stand, resident parking, etc), types of bicycles (e.g., electric bikes, cargo bikes, etc) and types of features (e.g., parking services and security characteristics). These entities were defined through an iterative process that involved domain experts from the different organizations involved in the Velopark project. Additionally, they were also reviewed and refined by members of the VeiligStallen.nl14 technical team. VeiligStallen.nl is a bicycle parking platform from the Netherlands, that has provided an information hub over the last 10 years and was an inspiration of the Velopark initiative.

Reference Architecture

The system architecture of the Velopark platform was designed to support two different strategies of bicycle parking data publishing: (i) decentralized (Parking Manager A in Figure 2) and; (ii) centralized (Parking Manager B in Figure 2) publishing.

[Figure 2]
Fig. 2: Velopark’s DCAT catalog allows applications to get a complete and reliable list of all parking facilities, enabling access to the data directly from their authoritative sources.

The first strategy enables a decentralized data management process. Bicycle Parking Managers (BPMs) are able to use Velopark’s Snippet Generator tool to describe their facilities following the OVV data model, and then opt for publish the resulting data on their own servers. Every BPM decides on how to publish the data, requiring only to make the parking facility URIs dereferenceable and set the appropriate HTTP headers for enabling CORS (Cross-Domain Resource Sharing). Some alternatives to publish the data are (i) embedding JSON-LD snippets in BPMs website HTML; (ii) using HTTP content-negotiation to give both machine- and human-oriented views of the data; or (iii) serving the data as plain RDF files. Figure 2 represents scenario iii through Parking Manager A.

The centralized strategy focuses on supporting organizations with limited resources to self-host and manage the data about their parking facilities. These organizations can also use Velopark’s Snippet Generator tool to create a data description of their facilities using the OVV model, but unlike the decentralized strategy, data is published and maintained on Velopark servers as plain RDF (JSON-LD) files. Parking Manager B is an example of this scenario in Figure 2.

Regardless of the data publishing strategy (either centralized or decentralized), the Velopark platform remains a central and authoritative data entry point. This is achieved by maintaining a DCAT15 catalog linking to all available parking facility URIs, which are in turn dereferenceable and contain the parkings data.

Snippet Generator

This Web application (available at https:/​/​admin.velopark.be) is designed to enable BPMs describing their parking facilities following the OVV model. Additionally, BPMs have the possibility to manage their facilities by updating them and deciding if they are referenced in Velopark’s data catalog. BPMs publishing parking data on Velopark’s platform are required to follow these steps:

  1. Registration: BPMs can be either public authorities representing a certain municipality or company representatives. They first request access to the platform which is granted by Fietsberaad Vlaanderen.
  2. Parking Description: Once registered, BPMs can describe their facilities by entering the data in a wizard-based form, which ensures that all basic and required properties are entered.
  3. Data Publishing: When the description of a parking facility has been completed, BPMs have the option to either self-host the data or rely on Velopark’s servers to host it. In case self-hosting is chosen, BPMs need to provide the URL where the parking data will be made available. The application will generate a JSON-LD snippet (see listing 1) containing all the parking data that has to be published under the chosen URL. Otherwise, the application will generate a URI (belonging to Velopark’s domain) for the parking facility and will proceed to make the data available there.
{
    "@context": { ... },
    "@id": "https://velopark.ilabt.imec.be/data/
        De-Fietsambassade-Gent_Korenmarkt",
    "@type": "mv:BicycleParkingStation",
    "dateModified": "2020-02-10T22:20:45.814Z",
    "identifier": "Korenmarkt",
    "name": [
        { "@value": "Korenmarkt", "@language": "nl" },
        { "@value": "Korenmarkt", "@language": "en" }
    ],
    "temporarilyClosed": false,
    "address": {
        "@type": "schema:PostalAddress",
        "postalCode": "9000",
        "streetAddress": "Pakhuisstraat",
        "country": "Belgium"
    }
    ...
}

Listing 1: JSON-LD description extract of a parking facility using the OVV data model. The data file can be dereferenced at the URL defined by the @id property of the JSON-LD data.

Velopark DCAT catalog

Velopark’s data catalog (available at https:/​/​velopark.ilabt.imec.be/data/catalog) is the result of the work done by BPMs on describing their parking facilities. It references all the parkings that have been approved by the BPMs to be made public, regardless of where the data is hosted (either on BPM or Velopark servers), bridging both centralized and decentralized data publishing strategies. The catalog follows the DCAT specification, defining a unique dcat:Catalog entity that contains multiple parkings. Each parking is represented as a dcat:Distribution, which data can accessed as defined by its dcat:accessURL property (see listing 2).

{
    "@context": { ... },
    "@id": "http://velopark.ilabt.imec.be/data/catalog",
    "@type": "dcat:Catalog",
    "dcat:dataset": {
        "@type": "dcat:Dataset",
        "dcat:distribution": [
            {
                "@type": "dcat:Distribution",
                "dcat:accessURL": [
                  "https://velopark.ilabt.imec.be/data/Cyclopark_AL01"
                ],
                "dcat:mediaType": "application/ld+json",
                "dct:issued": "2020-02-04T17:12:27.035Z",
                "dct:modified": "2020-02-04T17:12:27.035Z"
            },
            ...
        ]
    }
}

Listing 2: The catalog is updated via the Snippet Generator, immediately reflecting any changes made by the BPMs, which constitutes a reliable source of data for cyclists and third-party applications.

Velopark User Interface

This is Web application targeted at cyclists (available at https:/​/​velopark.be) and built by the Velopark team. It presents a map-based view containing all the available parking facilities of a certain region. It also creates human-oriented visualizations on top of parkings data, showing all the parking characteristics. Cyclists can filter the facilities by their properties such as features, services and physical characteristics. This application stands as an example of how Velopark’s data can be discovered (via the catalog) and be directly consumed from their sources.

screenshot of the application
Fig. 3: Velopark-UI view for the region of Ghent, Belgium.

Another important feature of this application is the possibility for cyclists to provide feedback. If something is incorrect on the data of a particular parking facility or if some parkings are missing, cyclists can report this through the application. These reports will reach the corresponding public authority representatives responsible for the parking or the municipality mentioned in the report, which in turn can proceed to update the data where necessary.

Handling Live Data

One of the most important aspects for cyclists is to be informed about the live occupancy of a certain parking facility. Unfortunately these particular type of data is unavailable for most facilities. In the case of Velopark’s BPMs, only three BPMs had an available API where this data could be found: the city of Ghent (for 2 parkings), Parko (for 1 parking in Kortrijk) and Blue-Bike (for 1 parking in Vilvoorde). We took the data available on these APIs and republished it using the OVV data model. The process to republish the live data is as follows:

  1. Data Modeling: OVV already considers a class for representing live capacity values. The mv:RealTimeCapacity class defined by MobiVoc has precisely this purpose, which we reused.
  2. Linked Data Generation: Since the original data comes through ad-hoc APIs that lack formal semantic definitions, we used RML (RDF Mapping Language)[13] to define the rules that describe how the data of each API should be annotated to follow the OVV data model. We created these mappings using the YARRRML [14] syntax.
  3. Live Data Publishing: We published these particular parkings following the principles defined in [12] and using the Linked Time-Series Server [15]. We extended this implementation to support RML mapping rules, by just providing the mapping files as part of the server’s configuration.

An example of the republished data containing the latest available observations for the city of Ghent, can be found at https:/​/​velopark.ilabt.imec.be/data/live/gent/. Furthermore, historic data can be accessed at https:/​/​velopark.ilabt.imec.be/data/live/gent/fragments and can be traversed by following the links defined by the hydra:previous predicate.

Conclusion and Future Work

The Velopark initiative brought together bicycle infrastructure experts from multiple organizations, all having overlapping interests. Promoting cycling as a main way of transportation and delivering relevant and reliable information to cyclists is a common denominator for these organizations. So far, 31 Belgian municipalities and 4 different BPMs have actively engaged into the Velopark platform, publishing data about 1599 parking facilities. To the best of our knowledge, this represents the most complete and open bicycle parking dataset in Belgium to this date. Furthermore, a third-party application, namely Hopper is already reusing Velopark’s data. Hopper is a route planning application designed to give route advise to electric bicycle users, in combination with public transport. Hopper uses data from Velopark to display which train stations have bicycle parkings.

Another important achievement from this project is the definition of a common data model for Bicycle parkings. By extending existing vocabularies such as Schema.org and MobiVoc, OVV aims for higher interoperability for bicycle parking data. In addition to follow the recommended best practices for publishing Linked Data on the Web, extending Schema.org was also motivated by achieving higher visibility of the data on search engines. Unfortunately, search engines like Google do not recognize external extensions to Schema.org out of the box. This requires first OVV to go through the official extension recognition process of Schema.org, which is part of our future work.

Between the two different strategies to publish data supported by the Velopark platform, we found that organizations with no resources to publish and manage data on their own, were more receptive and have demonstrated higher interest in making their data visible through the platform. Organizations in charge of a high number of facilities were more interested on having automatic processes capable of mapping their data to the OVV model. This is understandable, since manually describing hundreds of facilities can be time consuming.

Another interesting finding is related to the bicycle parking data owned by public transport companies. We found that both NMBS (Belgian railway company) and De Lijn (Flemish public transport), had extensive and in some cases very detailed data about their facilities, although not open. It is notable considering that both companies had already implemented Open Data platforms on their own. However it is worth mentioning that both companies were cooperative and worked together with the Velopark team to openly publish their data.

One common behavior across all the, so far, involved BPMs has been the reluctance to self-host the data created through the Velopark platform. Even organizations with Open Data platforms and websites about their facilities preferred to rely on the Velopark hosting to publish their data. One of the concerns that were raised by the BPMs to for example, embed JSON-LD snippets into their websites, was keeping it updated. If the data was updated BPMs needed to either manually update this script or develop a connection between the content of these scripts, the data displayed in the website and their back-end systems. Currently this is one of the main issues of decentralized data managing.

On future work, we will aim on extending OVV to cover other types of cycling infrastructure such as, bicycle sharing systems and exclusive cycling lanes.

Acknowledgements

The authors would like to thank the Federal government of Belgium for funding this project. Also extend our gratitude to all the organizations that cooperated and made this project possible.

  1. What is MaaS? https:/​/​maas-alliance.eu/homepage/what-is-maas/ 

  2. Velopark is supported by the Federal Belgian government through the Smart Mobility Belgium fund. https:/​/​www.velopark.be/en/about 

  3. Open Velopark vocabulary: https:/​/​velopark.ilabt.imec.be/openvelopark/vocabulary 

  4. Velopark Open Data charter: https:/​/​www.velopark.be/charte-velopark-en.pdf 

  5. https:/​/​schema.org 

  6. http:/​/​schema.mobivoc.org 

  7. http:/​/​ontology.eil.utoronto.ca/icity/Parking/ 

  8. https:/​/​github.com/NABSA/gbfs 

  9. https:/​/​github.com/openmobilityfoundation/mobility-data-specification 

  10. https:/​/​data.stad.gent/explore/dataset/real-time-bezettingen-fietsenstallingen-gent/information/ 

  11. https:/​/​wiki.openstreetmap.org/wiki/Overpass_API 

  12. https:/​/​www.w3.org/TR/ld-bp/ 

  13. https:/​/​velopark.ilabt.imec.be/openvelopark/terms# 

  14. https:/​/​www.veiligstallen.nl/ 

  15. https:/​/​www.w3.org/TR/vocab-dcat-2/