Use of highway=living_street?

highway=service is one of the tags where you have to evaluate a second tag, the service=* tag to get the exact meaning of the definition. Some rendering software might use a “fallback” rendering for all subtypes not know.

But for example the service=alley is quite established with 340.000 uses. And the definition matches quite well for the situation in Thailand.

Thanks for your and Johanny Carlson’s clarifications. I guess I still tend to come back to the renderers, consistency etc., I have written scientific programs myself, so I tend to also think from the programming perspective.

So, just some naive comments here:

First, the number of “uses” does not necessarily indicate if something is correct or not. We know there can be lot of wrong things out there (that’s just a general thing of the internet, I’m not saying that all the service-alley’s are incorrect).

Second, for people writing renderers, they want obvious simple standards, that stay stable (don’t change). One doesn’t want to add lots of exceptions to the code.

Now, the alley sample. I guess that’s where I still lack some understanding how the renderers operate, or the rational of the tags.
highway=service , service=alley. If the software recognizes alley, it will draw an alley, if not, it will draw a service highway.
If another alley were defined as " highway=residential, residential=alley " instead, would the renderer, if it recognized “service=alley”, also recognize residential=alley as alley, and draw it so? I have no idea, it depends on how the software is written. From a classification perspective, a service=alley and a residential=alley should be rendered differently, since they are defined differently. Based on the editors (potchlatch, Go Map!!!) I use, it seems one can heap lots of different tags on a single node, or a way. Yet how does the renderer resolve all these tags. Presumably on a first come first basis, since it would be too cumbersome to have priority rules on how different tags should be evaluated.
If this is the case, then clearly there is defined order, i.e. systematics (like the biological systematics/taxonomy), and then the whole tree should be consistent, with no cross-connections in the subtrees, as that would be a nightmare to resolve for a renderer.

Before I continue, perhaps I should wait from feedback from your side to see if I understood this right??

PS: The service roads I changed were “not alleys”, but larger roads that are consistently labeled as residential in other villages/towns. It would seem inappropriate that in one village the roads are residential, in another service=alleys.
I think as others pointed out, having a convention/style sheet for Thailand, beyond what is in the wiki, would be useful.

Hi AndlessRoumdabout,

You bring up a lot of things here, let me see if I can clarify some of them.

Many of us here have a programming background, and we are not denying that issues exist.

You are correct, no matter how many times a tag has been used - there could still exist better or more correct ways of doing it.

This forum however have a very small amount of mappers, and changing well used tags seems to be out of our league. If you want to change the general tagging scheme, then you should bring it up on the tagging mailinglist.

https://lists.openstreetmap.org/listinfo/tagging

Exactly, and this is why we shouldn’t start to use residential=alley instead of service=alley - doing that will just add even more code and conditions to the renderes, routers and other tools out there.

I can’t talk for all renders and other tools out there, but for Mapnik you can take a look at CartoCSS. Here is the stylesheets for roads:
https://github.com/gravitystorm/openstreetmap-carto/blob/master/roads.mss

I am not sure this is the exact stylesheet being used, but either way it will still give you an idea about how Mapnik handles tags.

If you were to add the tag residential=alley, the tag would simply be ignored as no style matches.

Now let me get back to your argument about service=alley vs residential=alley, you believe the latter is better. I believe that is because you deep down know that this is not a service road and is only for residential use. From a software perspective though, try to look at it this way.

A stupid renderer that only looks at the main tag (service/residential) would probably render the alley as a service road, which is usually is rendered smaller than a residential road. This seems behaviour actually seems correct.

A stupid routing engine that only looks at the main tag would give higher priority to residential roads compared to service roads, which is again correct. We don’t want to go down small alleys when bigger residential roads are available.

I don’t know which solution is most correct, and I don’t really have to. I’ll look at what the most well mapped and successful areas are doing, and I copy their behaviour. If something is really awful, it will be brought up and discussed - and in the end tagging standards will be updated.

I believe that highway=alley might make more sense, but I guess there is a benefit in keeping the main set of tags down.

You are both right and wrong, but that goes for all of us. The important part is communication and trying to find working solutions.

Yes, Russ McD mistakenly added a bunch of service roads in residential areas. Feel free to update them to either residential, alleys or whatever fits the best. Be careful though, a few of them are actual service roads.

Does any of these answers make sense to you, or do you feel I completely miss the point?

Best Regards,
Johanny Carlson aka Johnny Carlsen

Thanks again. I didn’t necessarily want to propose residential=alley, I used it more as example (rather than using the stupa example :wink: ).

Anyway, it means we should live with confusing nomenclature. This makes it even more important that a convention sheet be drawn up for newcomers how they should tag things - because some things are not necessarily intuitive.

I completely agree that a convention sheet would be nice, and I think that in time the Thai wiki page will cover most of what we agree on here.

There was another thread about these small sois a while back. http://forum.openstreetmap.org/viewtopic.php?id=21942 Personally I’m not really comfortable with using highway=service + service=alley, but for really small sois they seem to be okay.

We already have a “convention sheet” for all users, new and old alike. It is called the Wiki Project Thailand and it is at
https://wiki.openstreetmap.org/wiki/WikiProject_Thailand

:wink:

Which is exactly what I meant by the “Thai Wiki” :slight_smile:

that I am fully aware of, that’s why the streets were not included. it’s further smaller details, which may or may not go into the wiki.

and this issue I was thinking off, why it could be useful to have more convention/instructions beyond the wiki.
http://forum.openstreetmap.org/viewtopic.php?id=23931

@Endless - That thread is EXACTLY the issue we’re trying to deal with in several other threads. These little, let’s call them personal touches, are the same sort of “customizations” that are in one sense perfectly reasonable from a personal use standpoint, but in the greater scheme of things messy and inconsistent. I think any convention sheet other than the Wiki will not serve a useful purpose. And even if we could agree that one is necessary or useful, how would you make it available or distribute it? I believe the Wiki should contain all the information that has been decided and once quantified, should be adhered to.

I’m in Doi Chang at the moment and the temperature was only 7 deg C this am. The sun is out now but we’re about to hop on the bike and ride back to Chiangmai and we’re going to be very cold.

There is no such things as an authoritative tagging rule-set in OSM.

some style of tagging has a wide acceptance and is thus written down in the wiki.
But still it’s not a strict rule-set. You can still deviate from it if you think other ways of tagging are better. You can also try to bring up your idea and see if others agree with you it’s an improvement.
If it is, it might be developing to a new standard.

With this huge amount of freedom OSM gives you there are still a few rules we as a OSM community have ourself committed to.

  1. we don’t copy data from other sources
  2. we map what’s on the ground
  3. we don’t tag for the renderer
  4. we respect edits from others
  5. we are a community

Especially the last topic is important. If your freedom of tagging is “disturbing” a larger amount of people from the community then it’s bad behavior. If you “nanny” your area too much preventing others from the community to come in, it’s bad behavior.

Maybe your idea of a different tagging isn’t as renowned as you wanted it to be. Then don’t insist on it. Maybe the time was not right for it yet? Try again in a year. Maybe even better ideas come up in the meantime. Or try to present your idea better. Keep in mind the different consumers of the data. Think of the consequences needed to implement your idea. If it would require a rewrite of hundreds of tools it’s less likely to be accepted then if it’s simply an addition to something more general.
Johnny tried to explain it already with the highway=service concept. You can find similar examples in OSM at other tags as well.
For example amenity=place_of_worship. This is quite generic. For some consumers this information is sufficient. others want to evaluate the religion=* tag to use a different symbol on the map (like thaimap.osm-tools.org does).

It’s a strength of OSM not being limited to a strict tagging ruleset like Navteq’s. It enables unforeseen uses of the data. I agree with you that from a programmers point of view it can make things more complicated. So this is OSM’s way to do. We’re not MapMaker.

For an example of a manual google for navteq:
[https://www.google.de/search?q=\“navteq+navstreets+street+data+reference+manual\”](https://www.google.de/search?q=\navteq+navstreets+street+data+reference+manual\)

Yes, I wouldn’t mind where the information is, either in the wiki or a sticky in the forum, which could be pointed at from the wiki. I only thought that perhaps some might think a too detailed list would not be suitable for the wiki, that’s all.

Wow, indeed, it looks rather cold in Thailand…

The Thai wiki only needs what is specific for Thailand, or things that are rare outside of Thailand. There is no reason to add how to tag schools, hotels, restaurants and so on - all these tags are well documented in other parts of the wiki, and is done the same in Thailand as everywhere else.

@Johnny Carlsen. Of course obvious tags need no explanation.

Seeing that no definition with examples for the different types of residential roads (sois, paths,…) has been added to our “convention sheet” (wiki) so far, I propose to use these pictures (made in Nan) for reference. That’s how I tag it but my understanding was that this is the way we forum users here agreed upon. Tell me if I am wrong. Ordered by size:

Usually there are no access signs that would specifically allow or disallow the usage of a street for certain vehicle classes. So who goes into a street is often defined by what fits through.

Definition
A residential ซอย (Soi) that is too narrow (about less than 2 meters) for cars. These kind of concrete sois are also common on stilts connecting residential homes alongside canals. Usually, motorbikes do still pass through here.

Tagging


highway=path
surface=concrete
width=1.5

Definition
A residential ซอย (Soi) that is too narrow for two cars passing each other comfortably (about 2-5 meters). It is close to a living street (but not specifically signposted this way) in the sense that this road has no pavement, thus is also used by pedestrians, and that cars are usually forced to pass through at walking pace. They are often obstructed by stuff the residents parked on the side of the road like motorbikes, waste, laundry racks, (food-)stalls and the like which further reduce the street width usable by a car.

Tagging


highway=service
service=alley
surface=concrete
width=4

Definition
Any residential ซอย (Soi) that is too large to fall into one of the above categories.

Tagging


highway=residential
surface=concrete
width=6
(lanes=1
sidewalk=no)

1 Like

Looks good to me.

I’m sorry, but a paved soi will never be a “path” to me. I think the highway=service paired with service=alley makes some sense even though it is not correct semantically nor in accordance with accepted OSM practice, but to me a path is a very narrow, unpaved footway (or cycleway). If we’re going to repurpose definitions to be specific to Thailand, because that is what we would be doing by using highway=path for the Nan example above, then why not create a new category of highway altogether?

If I were to ignore the low probability of obtaining OSM-wide approval I might propose trok (ตรอก), which is a small soi or alley, and describes the situation better. There are a few small sois in Phayao I’ve seen that use trok in their names.

It’s plain that we need some sort of highway tagging that would work better than what we now have but this is a topic that will need more general approval than just the decision of those of us working in Thailand.

Of course, exactly the thing we are trying to do here is to NOT repurpose definitions specific to Thailand. Instead, fit the situation in Thailand into the current model that is valid for the whole world. The above definitions should help people mapping Thailand to get the tagging right on those types of tiny streets that one wouldn’t find in the Western world very much.

So, could you elaborate how the above definitions are neither correct semantically nor confirm to accepted OSM practice? What should be changed on that proposal?

This is a service=alley. Too narrow for a (bigger) car or truck, but motobike traffic is fine

Tagging width=* helps

That’s it. tag with width=* and lanes=* for rendering and routing to make it appear right on the map. Physical characteristics are explicitly tagged. Only if there is none we use a meaningful default based on road type.

This is another residential. Looks like two cars can pass each other. So maybe lanes=2 is alright. Definitely add a width=* to make clear it’s a narrow residential.

From my reading of the definition of highway=service, it is clearly not meant to be used for a residential street:

How can a residential way fit this definition? Your photographic example comes pretty close to the definition seeing as it is a small lane bordered by walls but most small sois are not quite that closed up. The reason IMO that we’ve used that tag combination is so that the sub-tag of service=alley becomes available.

These small lanes do fit my definition of an alley although, except possibly for that last sentence about medieval Europe, it does not strictly follow from the OSM definition either.

I wish there was another way to do this that did not involve the concept of service road with its implied access restrictions and other considerations. I think a new subtag “residential=alley” is appropriate and that’s the direction I would prefer we take. Getting such a proposal through the vetting process is a big job however and I’m reluctant to start it.

Your thoughts?