In some countries, the access to ways is different. It seems that in some countries bicycles are allowed to ride on highway=pedestrian, but in Germany it is not. The routing software has to know all rules of all countries. That is almost impossible. So every access has to be set as tag.
In Germany, with highway=pedestrian or highway=footpath there can also be bicycle=yes. But in this case they are only allowed at walking speed. This means often it is better to cycle around this ways and take a bit longer way where they can cycle much faster, so they will need less time. Because of that, the walkingspeed has to be tagged. Maybe maxspeed=walk or maxspeed=walking_speed. But to calculate the time for the route, the routing software has tu use a numberic value.
Also it has be be clear when to use bicycle=designated or bicycle=yes. “The designated value, when used with a mode of transport key, indicates that a route has been specially designated (typically by a government) for use by a particular mode (or modes) of transport. Typically it is used on ways legally dedicated to specific modes of travel by a law or by the rules of traffic.” https://wiki.openstreetmap.org/wiki/Tag:bicycle=designated In Germany, every street would be bicycle=designated. And every cycleway. And every footway with traffic_sign=DE:239;DE:1022-10 I know that this way should be tagged as bicycle=yes, but from the definition from the Wiki it should be bicycle=designated because the “route has been specially designated”. It is “legally dedicated to specific modes of travel by a law or by the rules of traffic”.
Traffic sign keys are the same: a router has to know all signs and their rules. So a traffic sign cannot be used instead of an access=*. A traffic sign key can be additional, maybe to be shown on a map.