OpenStreetMap

Access restriction data architecture

Posted by BushmanK on 22 October 2016 in English.

Currently, we have acceptable (but not ideal) tagging scheme for access restrictions. I’m talking about access=* key and its values. Here, I want to tell something about an application of this scheme in terms of topology, data interpretation, and data architecture.

OSM documentation says that it may be used on nodes, ways, closed ways (use on relations is unspecified, but it’s not prohibited). And many people take that literally. Let’s review some cases.

access=* is often assigned to a node, representing a barrier. Many mappers have an idea that it is way easier to add this tag to a gate, liftgate or another kind of barrier to indicate that access restriction starts here. In such cases, adding access=* to a highway=* is often omitted. A common argument for omitting it is that usually, navigation software starts the route planning from a point, which is publicly accessible. Then, analyzing the road network, it should avoid crossing those points with access=* restriction, if possible, just like it does with user-defined avoidance marks.

But there is a problem with this method. Having a road, divided into two parts by a node with access=* tag, it is impossible to tell, to which half this restriction is applied. This problem has only heuristical solutions, involving extensive analysis of road network. For example, it will be a nice educated guess to say that restricted portion is often a dead-end comprised of lower rank roads, while unrestricted portion likely has a connection with higher rank roads. But this kind of analysis is a problem with no definite depth, and it still doesn’t give you 100% accurate result, which is unacceptable.

That argument about a route always starting from a publicly accessible point, is obviously false. There are enough cases when you have to calculate a route from a private property or limited access property. And the only universal way to deal with that is to disregard restrictions completely if no unrestricted route is possible. This solution is widely used, but it means devaluation of information about restrictions in the OSM database. Another known approach is to always avoid passing through the restricted portions of a road network by counting restriction points, but again, in a case of node-based restriction, it fails (requires a fallback to ignoring all restrictions) if both start and finish points are behind the restriction.

Applying access=* to a road itself eliminates any topological ambiguity since there is no question, to which part of a road restriction is applied. It is also clear if a route starts from or/and ends at a restricted portion. Therefore, no fallback is required.

Another option is to apply restrictions to a boundary, such as a fence or a land parcel, where a restriction is in effect. It helps to avoid tagging every road. However, it requires certain pre-processing to make data actually usable. Information about restrictions should be normalized by applying it to roads within a boundary using a spatial query (just like in the case of simplified address tagging, when addr:city is omitted on buildings, but can be easily propagated from a city boundary). To make it right, two additional operations should be performed: splitting roads at an intersection with a boundary, obtaining all members of a boundary contour. The latter one could be tricky if processing is performed offline.

So, it could be a drawback, but it doesn’t create any problems with an indefinite depth.

The purpose of this diary entry is to explain how access restrictions work in case of being applied to every type of geometry and to demonstrate that existing node-based restrictions can not be reliably used.

Discussion

Comment from Warin61 on 22 October 2016 at 09:44

I presently know of 2 cases where in each case there is only one gate and on both sides roads that get to publicly accessible places. Only on one side of the gate is access supposedly private. Where the access restriction ceases is not clear to me, though I would assume it ceases where the way intersects with other ways. In these case the access needs to be on the way, not on the node. Most land parcels would provide public assess on at least one way .. if only to allow visitor and emergency services access. So I would think a land parcel would only have access restrictions in exceptional circumstances .. like a bombing range where exploded ordnance could be encountered (no would want to go there).

Comment from Warin61 on 22 October 2016 at 09:45

Err that would be ‘unexploded ordinance’. :)

Comment from escada on 22 October 2016 at 09:57

There are some cases where access tags on a single node is correct. Some barriers are placed to prohibit through traffic by cars, but allow e.g. pedestrians and cyclist to pass. So here we have a barrier (typically bollard or cycle_barrier) with specific access permission and the two roads with public access. Cars can drive up to the bollard from both side, but cannot pass it. But for other cases, I agree that permissions on the ways are preferable.

Comment from agen cytotec on 22 October 2016 at 11:02

Obat Cytotec Frizer Adalah Pil Aborsi Yang Di Poduksi Di Amerika Serikat Yang Sangat Ampuh Aman Dan Manjur Untuk Menggugurkan Kandungan Atau Mengatasi Telat Datang Bulan Usia 1 2 3 4 5 6 Bahkan 7 Bulan, Dan Yang Paling Penting Tanpa Efek Samping Yang Serius Bagi Pengguna Nya Jika Ikut Aturan Pakai Dan Panduan Dari Kami. Obat Pil Telat Datang Bulan Cytotec Frizer Merupakan Obat Spontan Jadi Anda Jangan Kuatir Kedepan Nya, Urusan Kesehatan Merupakan Prioritas Utama Kami, Jadi Anda Jangan Ragu Untuk Membeli Di Website Resmi Kami www.agencytotec.com.

Comment from agen cytotec on 22 October 2016 at 11:03

JUAL OBAT ABORSI AMPUH ASLI MANJUR TUNTAS

Solusi Aborsi Paling Ampuh Aman Dan Cepat Untuk Menggugurkan Kandungan Usia 1,2,3,4,5,6 Bahkan 7 Bulan. www.peluntur.com

Comment from BushmanK on 22 October 2016 at 15:17

Please, keep in mind, that physical barriers and legal access restrictions are different things, while often, a legal restriction is enforced by a physical barrier. Both cases you referring to are not exactly related to the topological problem I’m talking about - these are questions of a scheme itself.

Warin61, are you familiar with a concept of trespassing in the US or Ireland? The whole private land is considered inaccessible for general public by default. So, yes, it makes perfect sense to indicate private access on a parcel boundary.

Comment from Severak on 27 October 2016 at 07:50

Good point! Access tag on node is good example of thing which is easy to analyze for human and hard for computer.

Human sees access node as restrictions signs in map and decides which side is restricted using the context. But this decision is one of these things which cannot by simply written as algorithm.

Comment from BushmanK on 27 October 2016 at 15:58

@Severak, thank you for this simple comparison you provided.

Log in to leave a comment