Ezhick, если я правильно вас понимаю, то вы сейчас предлагаете все полигоны перевести в relation=multipolygon в варианте advanced? Или все-таки не все?
Почему вы считаете этот вариант более правильным?
Про полигоны я ничего не писал. Я писал про линии.
Чем он более удачен?
Тем, что позволяет разделять сущности самым простым способом.
Тем, что у него гораздо выше “защита от ошибок” по сравнению с релейшенами
А про что им писать? Про контроль целостности при выгрузке отношений? Неужели они не знают?
Если знают, то пофиксят когда-нибудь…
Про защиту от ошибок - соглашусь. Про разделение сущностей - это не разделение, это наоборот размножение сущностей без надобности.
И какой же type тогда у релейшена из незамкунтых линий?
Ну смотря какие линии. Для границы - type = boundary.
type = boundary - замкнутая граница, то есть полигон.
Ну это одна из ошибок ОСМ. Граница - это линия, а не площадной объект… Потому как только у нескольких анклавов по всему миру всю границу можно описать полигоном. Во всех остальных случаях граница страны делится на границы с другими странами. И если итоговый релейшен - полигон, то части его - никак не полигоны.
Нет в OSM такой ошибки. Граница - да, это линия, но type=boundary это территория ограниченная границами, и объединяются они как раз в релейшн для того, чтобы определить территорию, которая в любом случае [мульти]полигон. Да, одна граница может участвовать в нескольких полигонах, например граница страны и граница области, но объединять в одной линии river и boundary мне кажется странным, по причине разных сущьностей, которые всего лишь совпадают координатами. Не зря же advanced multipolygon и boundary очень похожи.