[Talk-de] Ref tag bei ways erforderlich wenn eine relation existiert?

UncleOwen osm at uncleowen.de
Mi Mai 27 20:27:24 UTC 2009


Verzeiht, dass ich so einen alten Thread rauskram. Aber da ich gerade 
auf das gleiche Problem gestoßen bin, würd ich da gerne meinen Senf 
zugeben. Deshalb auch Fullquote.

Nop schrieb:
> Hallo!
>
> Stefan Dettenhofer (StefanDausR) schrieb:
>   
>> Werner Hoch schrieb:
>>     
>>> ich frage mich ob ich an jeden einzelnen Wegabschnitt ein ref= tag 
>>> anbringen muss obwohl viele Wege ja bereits über eine Relation eine 
>>> ref= tag haben.
>>>
>>> Beispiel1: Jeder Weg mit Referenz:
>>> http://www.openstreetmap.org/browse/relation/3420
>>> operator = Bodenseekreis
>>> ref = K 7735
>>> route = road
>>> type = route
>>>   
>>>       
>> Momentan ist es wohl besser, die Tags doppelt zu führen, da die Relation 
>> mit type=route und route=road von keiner mir bekannten Anwendung 
>> ausgewertet wird.
>> Zukünftig ist es natürlich sinnvoller, gemäß Beispiel 2 zu taggen.
>>     
>
> Auch wenn die Aussage grundsätzlich nicht falsch ist, möchte ich wie 
> immer bei diesem Thema darauf hinweisen, daß vor einer technischen 
> Umsetzung auch noch einige grundsätzliche logische Probleme zu klären 
> und Festlegung zu treffen wären.
> Z.B. was überhaupt passieren soll, wenn der way keine ref hat, aber er 
> gehört zu einer road-Relation, zu einer bus-Relation und zu zwei 
> hiking-Relationen und alle 4 Relationen haben eine ref.
>
> Das mit den Relationen sieht nur auf den ersten Blick einfach aus, ist 
> aber ziemlich knifflig. Stichwort für Informatiker: Mehrfachvererbung.
>
> bye
> 	Nop

IMHO ist das hier kein Fall von Mehrfachvererbung. Relationen sind 
erstmal etwas vollkommen anderes als Wege. Wege sind Mitglieder von 
Relationen - das heisst aber absolut nicht, dass die Attribute der 
Relation auch für die Wege gelten.

Relationen sind etwas zusätzliches. Genauso wie Renderer heute schon 
entscheiden müssen, welche Wege sie rendern, müssen Renderer in Zukunft 
(bzw. teilweise auch heute schon) entscheiden, welche Relationen sie 
rendern wollen - und wie.

Beispiele:
* Der Restriction Analyzer[1] wertet nur Relationen mit type=restriction 
aus.
* Die ÖPNV-Karte[2] kümmert sich um Relationen mit type=route, route=bus 
u.ä.

Genauso könnten die "Haupt"karten in Zukunft Relationen mit type=route, 
route=road rendern. Sollte vom Code her kein Problem sein, die 
ÖPNV-Karte kann ja auch mehrere Buslinien auf der gleichen Straße 
darstellen.

Gruss

UncleOwen / Sören

[1] http://osm.virtuelle-loipe.de/restrictions/ - leider seit der der 
API-Umstellung defekt. Gibt's da irgendwo anders eine Alternative zu?

[2] http://öpnvkarte.de/




Mehr Informationen über die Mailingliste Talk-de