Can you access iD's computed "Allowed Access" values from PBF data?

Hi,

When I open a road in iD editor, the “Allowed Access” panel shows values like
“Bicycles: yes” for a highway=residential, even when there’s no explicit
bicycle=yes tag. My understanding is iD computes this by combining explicit
tags with road-type defaults from OSM’s access table.

I’m processing PBF files with pyrosm to identify cycling infrastructure.
My filter only catches explicit tags (bicycle=yes, cycleway=lane, etc.),
so roads that allow cycling purely by road-type default are invisible to it.

My question: is there any way to access these computed/inferred access values
from PBF data or another OSM format? Or is the only option to hardcode the
access defaults table yourself (e.g. “residential → bicycle implicitly yes”)?

Thanks

As an aside from the question, whether or not you can access one set of defaults, you will have to ask yourself "in thr area that I am doing analysis for, are cyclists (a) legally allowed on highway=X and (b) “should I count it as cycling infrastructure”.

For “legal access rights” (wherr there are no explicit bicycle or access) tags in OSM, that is a relatively short list of values. There is info in the wiki but do not trust “global defaults” there.

Question (b) is more interesting and difficult to answer. As an example, if you see designation=public_bridleway on any highway in England or Wales without a contradictory bicycle tag, you can assume bicycle=yes, but you will have to look at other tags to see whether it is feasible or not.

To confuse matters, some tags (like highway=path on its own) are essentially meaningless for what you want to do.

I’d suggest using Overpass to look at how things are tagged and what tags occur together.

It’s not encoded in the data in any way, so no, you can’t infer it. In theory you could parse iD’s machine-readable tagging schema at GitHub - openstreetmap/id-tagging-schema: 🆔🏷 The presets and other tagging data used by the iD editor · GitHub, but in practice most routers/renderers have their own hard-coded tables based on wiki information and general OSM knowledge.

1 Like

Actually, part of that specific interface is in iD itself.

See for example Add foot=yes assumption on highway=living_street by matkoniecz · Pull Request #12040 · openstreetmap/iD · GitHub that was changing part of that logic

2 Likes