Yes, I’m acutely aware of this problem. Access tags are supposed to answer the question “Can I go here?” or “May I go here?” within reason, whereas these “route” signs answer the question, “Is this the ‘best’ way to go?” (Sometimes it’s the “best” way because it’s the only allowed way.) Still, for better or worse, the U.S. community has been using *=designated
because the value is pretty well established. Eventually, if we come up with something better, the migration path will still leave a trace of *=yes
, which wouldn’t be wrong.
Yes, in theory anyways. This gets into the issue of implicit defaults – another unending debate in which everyone is right, sort of. And is there any nuance between an explicit *=yes
and an implicit *=yes
? Technically, there’s no difference, but in that case, why do people tag foot=yes
anywhere? Maybe it’s the difference between a pathless path and a pathful path?
Actually, no, we wouldn’t tag foot=designated
on the roadway if there’s a sidewalk, because of course the sidewalk would be mapped as a separate way… right?
You have a point that commercial=*
would become a homonymous key, though that already seems to be the case with some other access keys, such as emergency=*
and bus=*
. At least the existing usage is only as a secondary key, not a primary key as in emergency=*
.
I only floated commercial=*
as the most obvious translation of “commercial vehicles”, along the lines of agricultural=*
, but there are other possibilities. For example, commercial_vehicle=designated
would avoid any potential conflict. Or we could relegate it to a conditional variable, as in motor_vehicle:conditional=designated @ commercial
. Mappers coin new variables on the fly all the time, but unfortunately conditional restrictions only enjoy very limited support in data consumers, even for much more common cases.

We’re consciously avoiding
delivery
as an access value, or any mentioning of the word. As already discussed,delivery
typically suggests a non-thru street, which doesn’t apply to the targeted roads in Fort Worth. These roads serve as secondary preferred routes en route to other destinations.
I agree. Even if this restriction relates to deliveries, *=delivery
is likely to be interpreted too literally.
Fort Worth’s commercial delivery routes remind me of how a city near me, Palo Alto, distinguishes between through and local truck routes. We generally tag “Local Traffic Only” signs as motor_vehicle=destination
, but the problem is that most routers only consider the subgraph of similarly tagged ways as the “destination zone”, whereas Palo Alto’s city ordinance defines local based on the city limits, including plenty of streets that allow trucks unconditionally. (We were only barely able to use destination
for the restrictions around Dulles Airport near Washington, D.C.)
As if that weren’t complicated enough, Palo Alto defines a custom “delivery zone”. A truck (locally defined as a vehicle over 7 U.S. tons gross weight) can only use the road ahead if it has just come back from making a delivery in the business district shaded on the map:
truckroutemap.pdf
147.05 KB
I suppose in theory this would be some kind of enforcement relation, but I haven’t been able to ascertain the boundaries of this delivery zone. The law simply references this map, but the map is vague and not to scale. Of course, there’s no guarantee that any mainstream data consumer would be able to utilize this information even if we could model it properly.