Wie frage ich in Overpass Straßen ohne eingetragene Höhen- oder Gewichtsbegrenzung ab?

Antwort vom

**Ja: In Overpass suchst du fehlende Werte mit `["key"!~"."]` oder einfacher mit `[!"key"]`. Für Straßen ohne `maxheight` oder `maxweight` ist der Kern also: `way[highway][!maxheight]` bzw. `way[highway][!maxweight]`.** ([wiki.openstreetmap.org](https://wiki.openstreetmap.org/wiki/Overpass_API/Overpass_QL)) ## Direktes Beispiel Wenn du im aktuellen Kartenausschnitt alle Straßen finden willst, bei denen **beide** Angaben fehlen: ```ql [out:json][timeout:25]; way [highway] [!maxheight] [!maxweight] ({{bbox}}); out body; >; out skel qt; ``` Das liefert nur Ways mit `highway=*`, bei denen weder `maxheight=*` noch `maxweight=*` gesetzt ist. Die Syntax für fehlende Tags ist in Overpass QL genau dafür vorgesehen. ([wiki.openstreetmap.org](https://wiki.openstreetmap.org/wiki/Overpass_API/Overpass_QL)) ## Wenn schon eine der beiden Angaben fehlt Oft ist praktischer: Straßen finden, bei denen **mindestens eine** Begrenzung fehlt. Dann musst du zwei Teilmengen bilden und zusammenführen: ```ql [out:json][timeout:25]; ( way[highway][!maxheight]({{bbox}}); way[highway][!maxweight]({{bbox}}); ); out body; >; out skel qt; ``` Wichtig: Das ist nicht dasselbe wie die erste Abfrage. - Variante 1: beide Tags fehlen - Variante 2: mindestens eines fehlt Genau dieser Unterschied wird bei QA-Abfragen oft übersehen und führt zu viel zu vielen oder zu wenigen Treffern. ## Sinnvoll eingrenzen statt alle Straßen zu prüfen Fachlich ist die Prämisse „fehlendes `maxheight` oder `maxweight` = unvollständig“ zu pauschal. Für die meisten normalen Straßen ist **kein** solcher Tag völlig normal; er wird in OSM meist nur erfasst, wenn es tatsächlich eine Beschränkung gibt. Deshalb sind rohe Abfragen auf alle `highway=*` oft wenig nützlich. Die OSM-Wiki-Beispiele empfehlen für Qualitätsprüfungen eher kontextbezogene Suchen, etwa bei Tunneln oder Unterführungen. ([wiki.openstreetmap.org](https://wiki.openstreetmap.org/wiki/Overpass_API/Overpass_API_by_Example/QA_Tool_Overpass_Queries)) Praxisnäher wäre zum Beispiel: ```ql [out:json][timeout:25]; way [highway] [tunnel] [!maxheight] ({{bbox}}); out body; >; out skel qt; ``` Oder für Brücken/Unterführungen gezielt ähnliche QA-Fälle, weil dort eine Höhenbegrenzung deutlich wahrscheinlicher relevant ist. Solche kontextbezogenen Prüfungen sind in den Overpass-QA-Beispielen ausdrücklich als sinnvoller beschrieben als eine pauschale Suche auf allen Straßen. ([wiki.openstreetmap.org](https://wiki.openstreetmap.org/wiki/Overpass_API/Overpass_API_by_Example/QA_Tool_Overpass_Queries)) ## Praktisch beste Lösung Wenn du wirklich „verdächtige“ Straßen finden willst, nimm nicht einfach alle `highway=*`, sondern nur relevante Straßentypen, z. B.: ```ql [out:json][timeout:25]; way [highway~"motorway|trunk|primary|secondary|tertiary|unclassified|residential|service"] [!maxheight] [!maxweight] ({{bbox}}); out body; >; out skel qt; ``` Der praktische Nutzen ist klar: Du reduzierst massenhaft irrelevante Treffer und bekommst eher Objekte, die sich für eine echte Datenprüfung lohnen. Die OSM-Wiki-Seite zur Maxheight-Karte arbeitet aus genau diesem Grund ebenfalls nur mit ausgewählten `highway`-Typen statt mit allen Straßen. ([wiki.openstreetmap.org](https://wiki.openstreetmap.org/wiki/Maxheight_Map))

Verwandte Fragen

Wie identifiziere ich in Overpass Autobahnen mit Höhen- oder Gewichtsbeschränkung?

In Overpass suchst du dafür nach highway=motorway plus den Restriktions-Tags maxheight oder maxweight — wichtig ist aber: Die Beschränkung kann in OSM sowohl direkt am Way als auch an...