Для каждой пары станций вычисляется путь в обе стороны, и перегон считается корректным, если:
обе станции нашлись в базе (а это, напомню, точки на путях, либо с тэгами railway=station|halt + name=, либо public_transport=stop_position + train=yes + name=).
между ними нашелся путь в обе стороны
разница в длине пути в разные стороны не превышает 500м (запас на ж/д развязки типа такой: http://osm.org/go/04qFAfET– , случаи когда платформы разных направлений смещены друг относительно друга, платформы разной длины и т.д.)
путь не превышает 150km (вылавливает явно неправильные обходные маршруты и маршруты до станций с таким же названием но в другой части страны)
Кроме пар соседних станций, в проверке участвуют пары их конечные станции линий из ЕСР - они выделены жирным и ограничений на расстояние между ними не накладывается.
Известные косяки:
станции ищутся только по названию, поэтому вместо нужной может найтись станция совсем в другом регионе. Это не большая проблема т.к. учитывается только самый короткий маршрут, и для пары соседних станций либо найдётся правильный, либо слишком длинный и это будет видно. Проблема будет если в разных регионах есть одинаковые пары станций, но пока так сойдёт
проложенный маршрут пока нет возможности посмотреть
маршрут ищется только для пар станций, хотя по-хорошему должен искаться для всей линии целиком, чтобы поезда не могли перескакивать на соседний путь на станцях
Замечание по исправлению: не поломайте маршруты, отцепляя станции от путей. Я не нашёл как в JOSM отцепить точку от линии, не создавая новой точки. Если например, сделать UnGlue ways на станцию которая есть в relation=route, будет создана новая точка, на неё перенесены тэги со старой (а с последней удалены), в отношении останутся обе точки, причём старая точка с ролью stop, а новая - с пустой role, и в конце списка членов (т.е. вдобавок можно потерять порядок станций). Пока не придумал ничего лучше чем вырезать из линии небольшой кусок, содержащий станцию, удалить его, а линию склеить обратно. Так станция останется и отношение не будет покорёжено.
Еще было бы неплохо подложку мапника сделать немного по-прозрачней, а то маршрут теряется из виду.
Такой еще вопрос. С утра я поправил точку http://www.openstreetmap.org/browse/node/1864767264 вижу, что обновление роутера прошло сейчас вечером, но то ли я плохо поправил, то ли правки не дошли
Ну вот, уже пошло рисование “под валидатор”:
есть здание станции с тегами railway=station, на путях стоят public_transport=stop_position, так нет, ставят ещё точку на путях с тегом railway=station, к тому же не в месте платформы…
Судя по wiki комбинации railway=station+building=yes и building=train_station должны быть идентичны, второй вариант кажется предпочтительным, так как сразу показывает предназначение здания, без необходимости анализа дополнительных тегов. Однако складывается впечатление, что многие программы в обязательном порядке ждут объект с тегом railway=station/halt
С чего вы взяли? Здание это здание, станция это станция, они никак не связаны.
Точку railway=station ставить в здание можно, но ставить тэг railway=station на здание не стоит, потому что таким образом площадь станции ограничивается площадью здания, что неверно.
А глюк с тем, что надпись Start station not found + End station not found пишутся в любом случае, даже если одна из станций в след строке находиться поправишь ?
Глюк в том, что в таблице начальная (или конечная) станция маршрута найдена строкой выше (или ниже), хотя маршрут при этом действительно не найден.
Пример: станция Тосно в Ленинградской области, маршрут Тосно 2-Тосно найден, однако на маршруте Тосно-Ушаки, выдаётся диагностика: End station not found/Start station not found, хотя ст. Тосно присутствует…