Die verschiedenen Meinungen zum Mappen in diversen Diskussionsthreads
zeigen, dass der "access" nach unterschiedlichen und möglicherweise
inkonsistenten Regeln gemappt wird. Es ist zwar jedem freigestellt,
wie er mappt. Denoch sollten Wege aufgezeigt werden, die ein
konsistentes Mapping ermöglichen. Dies soll Ziel dieses Threads sein.
Nachdem ein solcher Algorithmus gefunden wurde, sollte er möglichst
knapp beschrieben werden.

Zunächst einmal soll ein vereinfachtes Modell beschrieben werden, um
zu sehen, ob dafür ein konsistenter Algorithmus gebaut werden kann.
Ein Weg soll für bestimmte Transportmittel entweder auf jeden Fall
oder überhaupt nicht nutzbar ist. Es ist also für jede
Transportmittelklasse im Ergebnis nur ein "yes" oder "no" möglich.
Halbseidene Einschränkungen wie destination, permissive oder private
lassen wir zunächst außen vor. Die Regeln für Deutschland seien
gültig:
http://wiki.openstreetmap.org/wiki/OSM_tags_for_routing/Access-Restrictions#Germany
Dabei wird "designated" im grünen Feld als "yes" gewertet. Fahrräder
in Fußgängerzonen seien verboten. motorway und track sowie
motorroad=yes bleiben unberücksichtigt. 

Somit haben wir folgende Beschreibungsmöglichkeiten:

"TK" ist Abkürzung für "Transportmittelklasse". "TKn" ist deren
Plural. "TK(n)" lässt ein oder mehrere durch Komma getrennte TK zu.

(X) key(k) = value(v) # mögliche Anzahl

(1) access = no|TK(n)  (yes ist verboten) # 1x 
(2) TK(n) = yes|no
(3) TK(n) = designated
(4) TK(n) = official
(5) TK = TK (nur Unterklasse)
(6) highway = cycleway|footway|pedestrian|bridleway|path # 1x

Fehlen Formen? 

Wie oft darf jede einzelne Form (1) bis (6) an einem Objekt hängen?
einmal?, beliebig häufig? 

Welche Form darf nicht zusammen mit anderen Formen an einem Objekt
hängen?

(2) und (3) habe ich deswegen getrennt, weil sie eine unterschiedliche
Behandlung erfordern. Bei (3) bin ich mir unsicher, ob diese Form mit
einer anderen Form zusammengelegt werden kann.

Wie sieht die Beschreibung/der Algorithmus einer konsistenten
Auswertung aus?

LL bezeichne nach jedem Schritt des Algorithmus die Lösungsmenge, die
alle TK(n) beinhaltet, für die "yes" gilt. Zu Beginn enthält sie alle
TK(n).

Schritte im Algorithmus könnten beispielsweise sein: 

- (Setze) LL:= alle TKn

- Suche den einzig möglichen Ausdruck der Form(1). 
(Setze) LL:= {}, falls v=no / TK(n), falls v=TK(n)

- Suche alle Ausdrücke (den einzig möglichen Ausdruck) der Form(X).
Bestimme LL, indem ... 

Hat jemand einen besseren Ansatz?


_______________________________________________
Talk-de mailing list
Talk-de@openstreetmap.org
https://lists.openstreetmap.org/listinfo/talk-de

Antwort per Email an