Bike Hire Docking Station

Description

Many cities provide a bike hiring system for citizens. These can hire a bike base on different types of subscriptions. A bike hire docking station where subscribed users can hire and return a bike. It provides data about its main features and availability of bikes and free slots.

Data Model

A JSON Schema corresponding to this data model can be found here.

  • id : Unique identifier.

  • type : Entity type. It must be equal to BikeHireDockingStation.

  • source : A sequence of characters giving the source of the entity data.

    • Attribute type: Property. Text or URL
    • Optional
  • dataProvider : Specifies the URL to information about the provider of this information

    • Attribute type: Property. URL
    • Optional
  • dateCreated : Entity's creation timestamp.

  • dateModified : Last update timestamp of this entity.

  • location : Geolocation of the station represented by a GeoJSON (Multi)Polygon or Point.

  • address : Registered docking station site civic address.

  • name : Name given to the docking station.

  • description : Description about the bike hire docking station.

  • image : A URL containing a photo of this docking station.

  • totalSlotNumber : The total number of slots offered by this bike docking station.

    • Attribute type: Property. Number
    • Allowed values: Any positive integer number or 0.
    • Optional
  • freeSlotNumber : The number of slots available for returning and parking bikes. It must lower or equal than totalSlotNumber.

    • Attribute type: Property. Number
    • Allowed values: A positive integer number, including 0. It must lower or equal than totalSlotNumber.
    • Metadata:
      • timestamp : Timestamp of the last attribute update.
    • Optional
  • outOfServiceSlotNumber : The number of slots that are out of order and cannot be used to hire or park a bike. It must lower or equal than totalSlotNumber.

    • Attribute type: Property. Number
    • Allowed values: A positive integer number, including 0.
    • Metadata:
      • timestamp : Timestamp of the last attribute update
      • Optional
  • availableBikeNumber : The number of bikes available in the bike hire docking station to be hired by users.

    • Attribute type: Property. Number
    • Allowed values: A positive integer number, including 0.
    • Metadata:
      • timestamp : Timestamp of the last attribute update.
    • Optional
  • openingHours : Opening hours of the docking station.

  • status : Status of the bike hire docking station.

    • Attribute type: Property. List of Text
    • Metadata:
      • timestamp : Timestamp of the last attribute update.
    • Allowed values:
      • (working, outOfService, withIncidence, full, almostFull, empty, almostEmpty)
      • Or any other application+specific.
    • Optional
  • areaServed : Area served by this docking station. Precise semantics can depend on the application or target city. For instance, it can be a neighbourhood, burough or district.

    • Attribute type: Property. Text
    • Optional
  • owner : Bike hire docking station's owner.

    • Attribute type: Property. List of Text or List of URIs
    • Optional
  • provider : Bike hire service provider.

  • contactPoint : Bike hire service contact point.

Note: JSON Schemas are intended to capture the data type and associated constraints of the different Attributes, regardless their final representation format in NGSI(v2, LD).

Examples

Normalized Example

Normalized NGSI response

{
    "id": "Bcn-BikeHireDockingStation-1",
    "type": "BikeHireDockingStation",
    "status": {
        "value": "working"
    },
    "availableBikeNumber": {
        "value": 20,
        "metadata": {
            "timestamp": {
                "type": "DateTime",
                "value": "2018-09-25T12:00:00"
            }
        }
    },
    "freeSlotNumber": {
        "value": 10
    },
    "location": {
        "type": "geo:json",
        "value": {
            "type": "Point",
            "coordinates": [2.180042, 41.397952]
        }
    },
    "address": {
        "type": "PostalAddress",
        "value": {
            "addressCountry": "ES",
            "addressLocality": "Barcelona",
            "streetAddress": "Gran Via Corts Catalanes,760"
        }
    }
}

key-value pairs Example

Sample uses simplified representation for data consumers ?options=keyValues

Bike hire docking station real time data in Malaga

{
    "id": "malaga-bici-7",
    "type": "BikeHireDockingStation",
    "name": "07-Diputacion",
    "location": {
        "coordinates": [-4.43573, 36.699694],
        "type": "Point"
    },
    "availableBikeNumber": 18,
    "freeSlotNumber": 10,
    "address": {
        "streetAddress": "Paseo Antonio Banderas (Diputación)",
        "addressLocality": "Malaga",
        "addressCountry": "España"
    },
    "description": "Punto de alquiler de bicicletas próximo a Diputación",
    "dateModified": "2017-05-09T09:25:55.00Z"
}

LD Example

Sample uses the NGSI-LD representation

{
    "id": "urn:ngsi-ld:BikeHireDockingStation:Bcn-BikeHireDockingStation-1",
    "type": "BikeHireDockingStation",
    "status": {
        "type": "Property",
        "value": "working"
    },
    "availableBikeNumber": {
        "type": "Property",
        "value": 20,
        "observedAt": "2018-09-25T12:00:00Z"
    },
    "freeSlotNumber": {
        "type": "Property",
        "value": 10
    },
    "location": {
        "type": "GeoProperty",
        "value": {
            "type": "Point",
            "coordinates": [2.180042, 41.397952]
        }
    },
    "address": {
        "type": "Property",
        "value": {
            "addressCountry": "ES",
            "addressLocality": "Barcelona",
            "streetAddress": "Gran Via Corts Catalanes,760",
            "type": "PostalAddress"
        }
    },
    "@context": [
        "https://uri.etsi.org/ngsi-ld/v1/ngsi-ld-core-context.jsonld",
        "https://schema.lab.fiware.org/ld/context"
    ]
}

Use it with a real service

T.B.D.

Open Issues

Municipalities do not have a specific tariff or access requirements per station. Therefore, this information has not been specified in this model so far.