mobility-data-specification icon indicating copy to clipboard operation
mobility-data-specification copied to clipboard

Add operations start and end dates to VEHICLES endpoint

Open Mu-yi-Zhou opened this issue 1 year ago • 5 comments

Is your feature request related to a problem? Please describe.

The only vehicle info in Trips/Events/Telemetry is DEVICE_ID - we need to join them with Vehicles to get more vehicle info e.g. PROPULSION_TYPE, ACCESSIBILITY_ATTRIBUTES. There is no datetime fields currenty to indicate when a device joins the retires from the fleet, which is critical in the cases of a device gets a new VEHICLE_ID (plate number) and stays in the fleet, or a device gets upgrades to a adaptive device, which will results in two records with same DEVICE_ID.

A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] Joining Trips/Events/Telemetry with Vehicles on DEVICE_ID will not get us the right vehicle attributes.

Describe the solution you'd like

Add service_start_time and servict_end_time to the VEHICLES endpoint.

Is this a breaking change

  • No, not breaking

Impacted Spec

For which spec is this feature being requested?

  • provider

Describe alternatives you've considered

A clear and concise description of any alternative solutions or features you've considered.

Additional context

Add any other context or screenshots about the feature request here.

Mu-yi-Zhou avatar Feb 27 '24 21:02 Mu-yi-Zhou

Hi @jiffyclub @pierre-bouffort do you have thoughts on this being a concern of yours?

schnuerle avatar Mar 15 '24 01:03 schnuerle

Hi @schnuerle ! I think this is a valid point. We managed to hedge this risk by keeping a record of the history of the vehicle on our end, but the standard itself doesn't manage this scenario. So I believe the concern is legitimate.

pierre-bouffort avatar Mar 15 '24 13:03 pierre-bouffort

I wonder if service is the right word here, which could imply maintenance. Maybe something that gets more at joining and retiring from a fleet, replacement, operation, or lifespan. lifecycle_start and lifecycle_end?

And to be clear, you are thinking of adding 2 new optional Timestamp fields to this Vehicles object, correct?

schnuerle avatar Jul 10 '24 18:07 schnuerle

Or is this more of an implementation issue?

When a device/vehicle is significantly changed, then it should get a new device_id even if it keeps the same license plate in the vehicle_id. It's up to the operator to provide a new device_id. See notes here saying "...device_id must remain constant for the device's lifetime of service...".

Maybe this needs enforcement from the agency and/or clearer wording in the spec?

schnuerle avatar Jul 10 '24 18:07 schnuerle

I wonder if service is the right word here, which could imply maintenance. Maybe something that gets more at joining and retiring from a fleet, replacement, operation, or lifespan. lifecycle_start and lifecycle_end?

And to be clear, you are thinking of adding 2 new optional Timestamp fields to this Vehicles object, correct?

Yes that is what we are looking for. Now we are doing something similar with Pierre said, archive all the snapshots and create fields of the first and last timestamp we see the device in the vehicle endpoint. It might be even better if the specs add a UUID for vehicle - and any device attribute change will require a new UUID for the vehicle

mzhou0720 avatar Jul 19 '24 17:07 mzhou0720