Overpass API - примеры запросов

edward17, регулярка ~“^recycling:” не сильно отличается от ~“^recycling:.*$”

Я не в курсе почему overpass матчит всё, а не минимальные десять символов у ^recycling:

http://regexr.com/3cff9 - матчится весь тег recycling:red
http://regexr.com/3cfff - вариант без .*$, матчится только recycling:

в .*$ тоже есть неточность потому как в неё попадёт recycling:

Поэтому наиболее безопасный вариант вот такой:
^recycling:.+$

edward17, я спрашивал, что имел в виду wowik под “просто обкавычить тег” (когда отвечал на мое предложение использовать шаблон с регулярками http://forum.openstreetmap.org/viewtopic.php?pid=567480#p567480 ), потому что

"recycling:"

, очевидно, нифига не работает.
Речь, напомню, идет про условие для выборки всех тегов, входящих в пространство имен (т.е. recycling:key=value , где key и value - любые )

Перечитал дискуссию и понял, что моё сообщение было ни к чему.

Увидел это:

и ответил. Но не заметил, что вверху уже написан почти такой же запрос.

Зато в итоге разобрали несколько сходных шаблонов, которые выбирают одно и то же, но с разными нюансами (не пустой key, например).
А вообще, если совсем по-хорошему, wizard (и api вообще) должны понимать namespace, по крайней мере - в классическом виде, раз это довольно широко используется.

А вы про другое писали :wink:

посему “просто” это так:
“namespace:key”=value или даже “namespace:key”=“value”

wowik, признайтесь честно, вы дальше первого предложения (откуда процитировали про namespace:key=value) не читали. А уже во втором было написано:

В первом предложении было ошибочное утверждение “ругается на двоеточие и не понимает условия с тегами, использующими пространство имен (вида namespace:key=value)”. Его исправление и предлагал, ибо вдруг кто и впрямь поверит, что нельзя писать двоеточие в запросе. Вы же про wildcardы ничего там не говорите, проблема-то в них, а не в двоеточии. Сразу бы и писали про namespace:*=value.

А то у вас как у Путина, сначала заявление, а потом разъяснение Пескова, что на самом деле имелось ввиду в заявлении.

Вы и там дальше первого предложения не читали.
В этом же сообщении написано:

.
Это и есть namespace:= и ни что другое.
Бросайте привычку отвечать на одно (любое) предложение из сообщения, игнорируя остальные.

Подскажите, возможно ли, и, если возможно, приведите пример запроса, в котором по координатам точки(центр карты) можно получить название области РФ. Заранее спасибо.

что-то типа так
http://overpass-turbo.eu/s/eUf

Там данные выбираются по bbox, а мне необходимо конкретно по координатам точки

bbox не получится маленький вокруг точки?

З.Ы. не получается…

Вот есть у меня “Что за город в центре”. Используется ключ {{ccenter}}. Отобрать надо только по admin_level
http://overpass-turbo.eu/s/eUm

Почти то что нужно, спасибо!. А в запросе нельзя сразу указывать, чтоб возвращалось name?

Я никак не знал куда {{ccenter}} запихивается
http://overpass-turbo.eu/s/eUw

Не понял вопроса. Если на карту, то

{{style:
node 
{ color:green; text: name; }
}}

Если если карта вообще не нужна, а хотите только имя в данных, то измените вывод оставив только

.c out tags;

Отлично, большое спасибо, все получилось.

[out:json][timeout:25];
// gather results
(
  is_in({{center}}) -> .b;
  
  (way(pivot.b)["admin_level"=4];
   rel(pivot.b)["admin_level"=4];
   )-> .c;
  
);
.c out tags;

Почему бы не использовать обратный геокодинг от Nominatim?
http://wiki.openstreetmap.org/wiki/Nominatim#Reverse_Geocoding

Хороший способ, возможно это будет даже быстрее работать. Чтобы получить конкретно название области, нужно указывать zoom=5

http://nominatim.openstreetmap.org/reverse?format=xml&lat=47.18742&lon=39.63980&zoom=5&addressdetails=1&extratags=1&namedetails=1

Помогите запросить и раскрасить следующие данные:

  1. гос. границы;
  2. границы субъектов федерации (линии чуть тоньше или бледнее, чем у гос.границ);
  3. некоторые населенные пункты (в запросе будет список их названий) – в виде точки или маленького круга;
  4. другие некоторые населенные пункты (тоже списком) – как в п.3, только другого цвета.