# Talk:Key:stop

## The best of all the stop proposals combined

I've just been reading all of the pages on stop signs and stuff here on the wiki and can see that there are several different ways that people think it should be done. Well, I've read it all and I've come up with a possible win-win for everybody that just might work and could possible get a vote passed on once and for all.

There should be a way to have the best of everything combined to work together. Here's what I'm suggesting (comments please!):

### All-Way STOP Intersections

For the Nodes people, we could use the highway=stop for intersections that have stop signs in all directions (All-Way), and ONLY the all-way stop intersections, because there wouldn't be any problems with it. That's the easiest and simplest thing to do for those types of intersections. But some of you might wonder what would happen if let's say (example from Pennsylvania), one of the stops has a "Except Right Turn". Well, that's where the relations come into play for this type of intersection.

#### All-Way Stop's with un-restricted turns per signage

Let's say one of the turns at your all-way stop has an exemption to turn without stopping. Here's a job for a relation. First of all, you'll have to split the two ways (or more) at the intersection to form 4 separate ways. I don't see any way around this. After that's done, we'll take a play out of how the restrictions are setup to do this:

##### Members
Way or Node Role Recurrence? Discussion
from once a way from which you're entering the intersection
to once the way you're allowed to leave the intersection without stopping
via once the node that you placed the highway=stop on
##### Tags
Key Value Discussion
stop:right no;yes If the right turn is allowed without stopping, your tag would be stop:right=no
stop:left no;yes If the left turn is allowed without stopping, your tag would be stop:left=no
stop:straight no;yes If going straight is allowed without stopping (per a sign posted), your tag would be stop:straight=no
I personally don't think this one will ever be needed, but it's there just encase. So, if somebody can show me an example of this, I'd love to see it.
stop:all yes;no required (you'll see why later)

So, a right hand allowed turn without stopping would look like this: stop:all=yes stop:right=no

If only one type of traffic can turn right without stopping like Taxi's, here's how it would be setup to allow the Taxi's to turn right without stopping, but everybody else has to stop normally: stop:taxi:right=no stop:all=yes (NOTE: the taxi part of the tag can be replaced with any type of vehicle.

You can also add tags that would prohibit a specific type of vehicle from turning right/left/straight without stopping while everybody doesn't need to stop. Let's use hgv as an example and prohibit them from turning right without stopping: stop:all=yes stop:right=no stop:hgv:right=yes

### Intersections where there are ways without stop signs

Since there are out there intersections that sometimes don't have stop signs going in one direction (I have 2 such intersections on my home road), the highway=stop can't be used. So, the relations are the only option for them. This is why I said that the stop:all=yes or stop:all=no is required for the relations. As an example, I'll show how a T intersection would be setup:

```   1|
|
====T=====
2        3
```

Here in my neighborhood, we have two such intersection with the non-ending road having a stop sign at one of the intersections on the 2 side, and on the other, the 3 side. Meanwhile, 1 always has to stop at both. So, once you have way 2 and way 3 separate, you can make your two relations that you need to stop traffic. For this example, let's say way 2 doesn't need to stop at all, and way 1 can turn right without stopping.

##### Members
Way or Node Role Recurrence? Discussion
from once a way from which you're entering the intersection
to once or more depending on how complex intersection is the way you're allowed to leave the intersection without stopping
via once the node that all the ways connect to

#### relation setup

```<relation>
<member type="way" ref="1" role="from"/>
<member type="node" ref="T" role="via"/>
<member type="way" ref="2" role="to"/>
<member type="way" ref="3" role="to"/>
<tag k="type" v="stop"/>
<tag k="stop" v="yes"/>
<tag k="stop:all" v="yes"/>
<tag k="stop:right" v="no"/>
</relation>
```
```<relation>
<member type="way" ref="3" role="from"/>
<member type="node" ref="T" role="via"/>
<member type="way" ref="1" role="to"/>
<member type="way" ref="2" role="to"/>
<tag k="type" v="stop"/>
<tag k="stop" v="yes"/>
<tag k="stop:all" v="yes"/>
</relation>
```

### Other places where traffic might have to stop

As you some of you know, here in the USA, some types of trucks are required to stop at all RR Crossings no matter what (like Gas, or Hazmat trucks). Same goes for buses (especially school buses). The only time they don't have to stop is if the crossing is exempted. Thus, we need to also tag these too. Something like: stop:bus=yes & stop:hazmat=yes. For the exempt crossings, we would tag the other way: stop:bus=no & stop:hazmat=no.

#### Traffic Lights

There are some traffic lights out there that don't control everything in the same intersection and leave one direction to rely on a Stop Sign. While these are rare, they are out there. Thus, I would suggest following something like this if you come across one of these:

```<relation>
<member type="way" ref="3" role="from"/>
<member type="node" ref="T" role="via"/>
<member type="way" ref="1" role="to"/>
<member type="way" ref="2" role="to"/>
<tag k="type" v="stop"/>
<tag k="stop" v="yes"/>
<tag k="stop:all" v="yes"/>
</relation>
```

Pretty much, I would suggest treating the segment the same way is if the rest of the intersection didn't have stop signs and ignore the traffic light.

## Discussion

So, what do you guys think? Opinions, suggestions? --Rickmastfan67 15:11, 25 July 2010 (UTC)

Sounds rather complicated - looks like you have to split every way at every intersection and create a relation for every intersection? --NE2 21:03, 25 July 2010 (UTC)
Not for all-way stops since the highway=stop would cover all the directions that don't need a special relation when they don't have to stop to turn one way. --Rickmastfan67 01:06, 26 July 2010 (UTC)
Most intersections have stop signs in only some directions... highway=stop isn't perfect, but seems a lot better than this. --NE2 03:20, 26 July 2010 (UTC)
What would you suggest then for the intersections that have the "Except Right Turn" signs? --Rickmastfan67 06:07, 27 July 2010 (UTC)
highway=stop note=except right turn? --NE2 09:04, 27 July 2010 (UTC)
But do you think the GPS devices would be able read the note=except right turn and show it correctly? --Rickmastfan67 10:41, 27 July 2010 (UTC)
It's just as likely as that they can read this complicated scheme - and why does it matter, anyway? All it needs to say is "turn right at the stop sign", whether or not the stop sign has conditions. --NE2 12:04, 27 July 2010 (UTC)