Fragen zum erstellen neuer Brouter Profile

So verstehe ich es auch.
Das Konstrukt ist eher wie ein verkettetes if - then - else-
Den vorgestellten Operator gibt es in einigen Programmiersprachen, ist aber nicht unbedingt intuitiv verständlich.
Die erste Zeile wäre geklammert

switch (or highway=track (or highway=road (or highway=path highway=footway)) ...

mit if-orientiert also

if (highway=track or highway=road or highway=path or highway=footway) then 
   (if ( ...
      ...
                 else if (probablyGood) then 1.0 else 5.0) ...))

Die schließenden Klammern je nachdem wieviel öffnende Klammern man gesetzt hat (-> @Vinzenz_Mai ).
In den meisten Programmiersprachen hat man wegen der unübersichtlichen else-if-Struktur das eigentliche switch-Konstrukt, das auf etwas wie

switch (tracktype) {
 1: if probablyGood then 1.0 else 1.3
 2:

  default: if probablyGood then 1.0 else 5.0

hinauslaufen würde.
Das nur zum (hoffentlich besseren) Verständnis.
Einen eigenen Parser zu bauen gehört ja nicht unbedingt zum Pflichtprogramm eines Router-Anbieters, das soll also keine Kritik an @abrensch sein.