Участники оригинального маршрута не должны изменяться.
Существующие рендеры не должны портится, и показывать одновременно основной и временный маршрут.
Нынешняя схема:
route=tram/trolleybus/bus
Вариант 1:
Скопировать основной маршрут в новое отношение, у нового отношения назначить временную трассу, тег type=route_temporary.
Создать новое отношение
type=route_replacement
date_start=2013-10-12
date_end=2013-11-10
В качестве членов - отношениe type=route с ролью route_original, и type=route_temporary c ролью route_temporary
Вариант 2:
Скопировать основной маршрут в новое отношение, у нового отношения назначить временную трассу, тег type=route
У старого маршрута изменить тип на type=route_disabled.
Я склоняюсь к первому варианту, потому что второй - не очень соответствует практике тегирования.
У кого есть мысли?
type=route, end_date=2013-10-12, start_date=2013-11-10, note=“…” на оригинальном маршруте.
type=route, start_date=2013-10-12, end_date=2013-11-10, note=“…” на замене.
(я не в курсе влияния end_date/start_date/state/disused/alternate на софт, но route_replacement/route_disabled выглядят странно)
вообще-то, osm не очень подходит для кратковременных изменений в навигации :\
то есть, если это закрытие маршрута на больше полмесяца и об этом известно за столько же, может и подходит.
но если меньше — данные из базы просто не успеют дойти до многих юзеров.
имхо, этим должен заниматься отдельный около-осм сервис. (возможно, тот-же призрачный сервис, что занимается пробками и прочими ремонтами на дорогах = )
Не вполне понятно это пожелание. Если участников вывести из маршрута, они изменятся или нет? М.б. состав участников оригинального маршрута не должен меняться?
Рендеры, понятное дело, не должны испортиться от изменения исходных данных. М.б. результат рендеринга одновременно должен показывать основной и временный маршрут? Тогда это пожелание внутренне противоречиво, ведь актуальный маршрут не может быть одновременно основным и временным, старым и новым, а цель ОСМ - отражать актуальное состояние сущностей, но не прошлое.
Я бы добавил в этот список и route=road, т.к. проблема общая. В этом случае изменения могут длиться месяцами.
Оба предложенных варианта мне не нравятся тем, что порождаются новые сущности для одного и того же объекта реального мира. Маршрут, будь он оригинальный или временно изменённый, всегда один в один момент времени. Соотв. и отношение д.б. одно.
М.б. попробовать так:
Временно выведенным из маршрута сегментам задать роль disused.
Временно введённым в маршрут сегментам задать роль temporary.
Ну и ещё про route=road. Предположим, что некоторые сегменты номерной автодороги закрываются для движения. Официальный (обозначенный соотв. дорожными знаками) объезд осуществляется по неномерным автодорогам. Правомерно ли в таком случае добавлять эти объездные пути в имеющийся маршрут?