nur teildaten per osm bearbeiten, möglich?

kann man nur bestimme tags per osm in einem bereich downladen um sie zu bearbeiten, ohne allen anderen mist mitgeliefert zu bekommen?

z.b. das man nur grenzlinien laden kann um deren relationen zu ändern bzw die lage der grenzen zu korregieren

Mit JOSM:
Datei → Vom OSM-Spiegel herunterladen
Entsprechende Overpass-Api Abfrage in eckigen Klammern eingeben

“Vom OSM-Spiegel herunterladen” habe ich garnicht, nur “Vom OSM-Server herunterladen”

Für den Download von der Overpass API musst du das Plugin Mirrored Download installieren.

ok, könnte mir jemand noch eine Abfrage nur für “boundary=administrative” geben. ich denke wenn ich erstmal ein beispiel hab kann ich dann selbst rausfinden wie ich andere daten laden kann.

edit: ok selbst rausgefunden, einfach * und [boundary=administrative] eintragen. wie ist es aber mit relation? wie gehts bei denen?

ganz einfach: [boundary=administrative]

bzw. wenn Du nur einen bestimmten Level brauchst, z.B. [admin_level=7]

Beispiele stehen im Wiki:
http://wiki.openstreetmap.org/wiki/Overpass_API/XAPI_Compatibility_Layer

Bounding-Box und @meta werden automatisch von JOSM gesetzt.

Unter Objekttyp “relation” auswählen und z.B. die XAPI-Abfrage [type=boundary]. Damit bekommst du aber wirklich nur die Relationen, keine Punkte und Wege. Wahrscheinlich nicht geeignet, wenn du Grenzverläufe korrigieren willst. Für diesen Zweck liefert dir die Abfrage, die DD1GJ beschrieben hat, genau das richtige, weil die Grenzlinien samt aller Relationen geladen werden, bei denen die Wege Mitglied sind.

Wenn du kompliziertere Auswahlkriterien formulieren willst, könntest du dir overpass turbo ansehen. Dort kannst du deine Abfrage zusammenstellen und das Ergebnis in JOSM laden. Hier ein Beispiel für die Grenzrelationen in deiner Nähe. Zum Bearbeiten oben auf Export und dann auf JOSM klicken.

ok danke, so geht das bearbeiten schon viel flotter

Du denkst bitte daran, dass an den Knoten weitere Wege hängen können. Für Grenzen beliebt sind Straßen, Eisenbahnen, Bäche/Flüsse usw. Auch können (meist unbeabsichtigt) beliebige Objekte gemeinsame Punkte mit einer Grenze haben.

Einer kleiner Bereich rund um die einzelnen Wegstücke wäre also sinnvoll um solche Probleme zu vermeiden. Für JOSM wäre z.B. das Plugin download_along eine Möglichkeit. Bei der Overpass-API wäre wohl die Funktion “around” das Mittel der Wahl.

Edbert (EvanE)

Zu dem OverpassAPI-Download-Mirror-Plugin in JOSM mal eben eine Frage:

Wenn ich dort z.B. den Bereich für Bremen mit der Maus markiere, als Elemente soll er alles nehmen, also * … und als “Filter” geb ich [name=Breitenweg] ein → dann lädt er brav die gesamte Straße herunter.

Wenn ich aber abgewandelt [name=Kornstraße] oder [name=“Kornstraße”] eingebe, so kommt dann beim Abruf die Fehlermeldung:

Der OSM-Server “http://api.openstreetmap.org/api/0.6/” meldet eine fehlerhafte Anfrage.

a) Kann das wer reproduzieren? Andere Stadt? andere Straßennamen mit oder ohne Umlaute? mit Leerzeichen drin und “”

b) liegt das am ß ???

c) oder ist das ein Bug?

a) und b): nein.

Daß allerdings die Fehlermeldung

lautet - mit dem API-Server statt Overpass API drin - ist in jedem Fall ein Fehler. Entweder wird der falsche Server gefragt oder in der Fehlermeldung die flasche Basis-URL angezeigt. Auskunft hierüber gibt die Mitschrift des GET-Befehls in der Konsole.

aus der CMD-Konsole unter Win7 64bit mit Java7 ergibt sich:


GET http://overpass-api.de/api/xapi?*[bbox=8.7121582,53.0333684,8.9531708,53.118
7569][@meta][name=Kornstra▀e]
org.openstreetmap.josm.io.OsmApiException: ResponseCode=400, Error Body=<<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
  <meta http-equiv="content-type" content="text/html; charset=utf-8" lang="en"/>

  <title>OSM3S Response</title>
</head>
<body>

<p>The data included in this document is from www.openstreetmap.org. The data is
 made available under ODbL.</p>
<p><strong style="color:#FF0000">Error</strong>: line 5: parse error: not well-f
ormed (invalid token) </p>

</body>
</html>>
        at org.openstreetmap.josm.io.OsmServerReader.getInputStreamRaw(OsmServerReader.java:124)
        at org.openstreetmap.josm.io.OsmServerReader.getInputStream(OsmServerReader.java:48)
        at org.openstreetmap.josm.io.BoundingBoxDownloader.parseOsm(BoundingBoxDownloader.java:135)
        at mirrored_download.MirroredDownloadAction$MirroredDownloadReader.parseOsm(MirroredDownloadAction.java:171)
        at org.openstreetmap.josm.actions.downloadtasks.DownloadOsmTask$DownloadTask.parseDataSet(DownloadOsmTask.java:169)
        at org.openstreetmap.josm.actions.downloadtasks.DownloadOsmTask$DownloadTask.realRun(DownloadOsmTask.java:176)
        at org.openstreetmap.josm.gui.PleaseWaitRunnable.doRealRun(PleaseWaitRunnable.java:82)
        at org.openstreetmap.josm.gui.PleaseWaitRunnable.run(PleaseWaitRunnable.java:145)
        at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
        at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)

Danke für die Meldungen von der Textkonsole. Das hat geholfen, den Fehler zu rekonstruieren. Das ist bei mir auf dem Server im Logfile als

[11/Mar/2013:17:49:28 +0100] query string: /api/xapi?*[bbox=8.7121582,53.0333684,8.9531708,53.1187569][@meta][name='Kornstra\xdfe'], user agent: JOSM/1.5 (5770 de)

angekommen. Die Abfrage liefert allerdings ein leeres Ergebnis statt einer Fehlermeldung, so dass ich vermute, dass Apache hier das eigentlich gesendete Sonderzeichen ersetzt hat. In jedem Fall geht es als Workaround, stattdessen die Abfrage

http://overpass-api.de/api/interpreter?data=(way(53.0333684,8.7121582,53.1187569,8.9531708)[name~"^Kornstra..e$"];>;);out meta;

aus “Datei > Adresse öffnen …” auszuführen. Achtung: Hier gilt Lat vor Lon, während im Logfile Lon vor Lat ausgegeben wird.

Eine Detailanalyse zeigt das Problem: JOSM verwendet hier eine fehlerhafte Kodierung (Windows-1252 statt UTF-8) für die URL. Ich schaue mal in den Sourcecode und mache ein Ticket auf.

Das Ticket befindet sich nun hier: http://josm.openstreetmap.de/ticket/8505

Ein erster Test mit einem josm_latest.jar danach brachte aber keine Besserung. Oder?

Sollte im Ticket noch erwähnt werden, dass der Fehler (auch?) beim Download via Mirrored-Download-Plugin auftritt?