Думаю, нужно предлагать уточняющую схему. С railway=station вопросов никаких нет, отношение взаимно однозначное со станциями из реестра. А вот с railway=halt нужно смотреть, либо уточнять дополнительным тегом halt=*, либо закрепить railway=halt только за остановочными пунктами, а для остального вводить новые теги. (в общем, на первых страницах обсуждение проходило) ИМХО желательно обсудить этот момент, определиться с решением и вносить уточнённую схему в валидатор с проверкой и выдачей соответствующего предупреждения. В любом случае, мне кажется стоит предупреждать пользователя в случаях если остановочные пункты обозначаются через station, ибо это весьма частая ситуация, т.к. далеко не все знают про halt. (например, начав отрисовывать станции, я всё обозначал только через station, хорошо что вовремя увидел, что делать так не стоит, а иначе бы осталось куча “станций” в лесах с названиями “NNN км” и валидатор об этом бы почти никак не уведомлял)
Код по ЕСР штука, думаю, таки полезная, посему иметь в базе её не помешает, поэтому можно показывать в валидаторе факт его отсутствия для стимуляции его простановки, ну и показывать предупреждение в случае если коды не сходятся. Т.е. если коды сменятся, то валидатор это заметит и кто-нибудь, да и поправит. Аналогично и с кодами системы “Экспресс-3”.
А откуда пошла такая практика? Это только в ру-осме такое? Кроме как у нас вроде больше нигде такое не используется, по крайней мере в вики ничего похожего не увидел.
Значит подобного рода коды имеет смысл вносить в базу и лучше использовать единую схему с ref, благо в вики прямо написано “There is a wide use of ref:=”, т.е. это пространство имён именно для таких случаев и предназначено.
Кстати, можно ещё попробовать добавить валидацию по отношениям route=railway, благо деление по участкам используется и сейчас, хотя пользы от этого конечно, наверно, будет меньше.