Sorry, this should never happen. In fact, non of fields should have been set up required in the first place. The reason for using "optional" (rather than "required") in the protocol buffer definition is to permit better forward-and-backward compatibility to changes in the protocol buffer definition, as "required" fields lead to incompatibilities that cannot be overcome at the application level.
The right answer is for applications to do validation as-needed in application-level code. If you want to detect when a client fails to set a particular field, give the field an invalid default value and then check for that value on the server.
--
You received this message because you are subscribed to the Google Groups "GTFS-realtime" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gtfs-realtim...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/gtfs-realtime/896a8eee-b76a-4085-9fc8-dc2cd1e5dfd2%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/gtfs-realtime/CACVRw0MgyQcfH11J6xOxEwQcjQDnwV-i3JLhPw48fWJ%2B0WpVKg%40mail.gmail.com.
Hello – Sirinya Matute writing here from Big Blue Bus in Santa Monica, Calif. I am a marketer and not a developer. I will share a concern of mine here. There are some vendors who very much embrace and want to enable their clients to participate fully in pushing out whatever data they have per the spec. Those vendors embody the joys and ideals of transit as a mode. And then there are those who literally will do the very bare minimum. I don’t know enough to advise this group on how to close loopholes. It sounds like some people here are flagging the risks of a loophole with optional fields. I am trying to release a feed of my agency’s data in the gtfs-rt standard using an add-on module to my cad/avl system. I don’t fret that I will not have any muscle to ensure that module continues to push data out as the spec evolves -- if the spec is mostly comprised of ‘optional’ fields.
I am curious as to why there has been limited/no adoption of TCIP, which I learned of this past weekend at Transportation Camp (remember, I’m not a developer…these things are cool to me but all new). That would be appropriate for an off-line discussion or on a different group. If you could message me privately, I would be most appreciative.
Gratefully,
Sirinya Matute
Santa Monica Big Blue Bus
Sirinya.matute at smgov. net
To view this discussion on the web visit https://groups.google.com/d/msgid/gtfs-realtime/CACVRw0MgyQcfH11J6xOxEwQcjQDnwV-i3JLhPw48fWJ%2B0WpVKg%40mail.gmail.com.
Thanks, that would be great! J
Sean
From: gtfs-r...@googlegroups.com [mailto:gtfs-r...@googlegroups.com]
Sent: Friday, January 16, 2015 12:24 PM
To: gtfs-r...@googlegroups.com
Subject: Re: [GTFS-realtime] Re: Proposal: Make FeedHeader.timestamp a required field
These are all very valid points, thank you for bringing it up. I'll see if we can't propose some replacement wording to describe fields in terms of their _semantic_ cardinality, rather than their protobuffer-defined one. Watch this space :-)
--
You received this message because you are subscribed to a topic in the Google Groups "GTFS-realtime" group.
To unsubscribe from this topic, visit
https://groups.google.com/d/topic/gtfs-realtime/wm3W7QIEZ9Y/unsubscribe.
To unsubscribe from this group and all its topics, send an email to
gtfs-realtim...@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/gtfs-realtime/CAFLeBcGdyj%3DciHzDhSo48tWuuFu8YsVsgidBWnqu3uZ0mAqEvg%40mail.gmail.com.
Hi Tony – I’m sorry to be mass replying to the group. Tony, please feel free to message me off line.
To the others, apologies.
To view this discussion on the web visit https://groups.google.com/d/msgid/gtfs-realtime/48857020-194a-4ab5-9636-378239b6fc86%40googlegroups.com.
These are all very valid points, thank you for bringing it up. I'll see if we can't propose some replacement wording to describe fields in terms of their _semantic_ cardinality, rather than their protobuffer-defined one. Watch this space :-)
Feel free to jump on it now :)
Ivan.