Как обозначать? (Part 1)

нет, ни в коем случае. работают практически противоположно по смыслу.

abandoned:building=yes
это скрытие тега
т.е. abandoned:building не попадает под маску buildimng=* в стилях большинства рендеров и отбросится из обработки как непонятный тег.
только дополнительными записями в стиле можно включить отображение объекта.

building=yes
abandoned=yes
это два тега, работающих “паралельно”.
рендер без специальных записей про abandoned=yes (а их большинство) определит этот объект как обычное здание и отобразит объект.
и только спец.записями можно вместо обычного здания показать здание разрушенное.

А как же “Use of abandoned as a simple tag is now discouraged (for example abandoned=yes).”?

Вопрос-то у меня, как правильно заброшенное здание пометить.

Ну т.е. я смотрю в вики, там чёрным по русскому написано: “не используйте abandoned=yes - используйте abandoned:”, но при попытке использовать эту рекомендацию на практике получаю её нежизнеспособность.

(удалено)

abandoned:building=yes

на https://wiki.openstreetmap.org/wiki/Key:abandoned: написано с выделением желтым фоном

т.е. abandoned=yes не ставить, лучше вписывать префикс abandoned:
что еще непонятно ??

Непонятно, почему рекомендация не работает на практике. Ни редактор её не понимает, ни сам OSM не рисует.

Добро пожаловать в OSM. Тут таких ситуаций мильен. Рендеры не сразу подхватывают новые схемы.

Но если не пользоваться новыми схемами, то и поддержка их никогда не появится (ибо рассуждают обычно “у этого тега < N использований в базе - значит, пока его учитывать при рендеринге не будем”)

Про курицу и яйцо понятно.

Но в вики это аж с 2013 года! За 7 лет openstreetmap.org не научился рендерить abandoned:???

Я потому вопрос и задал, что больно странно это выглядит. Может я какого слона в комнате тут не вижу?

и есть общепринятое следствие “не мапить под рендер”, т.е. делать не только те действия что видны на мапнике, а вносить все с расчетом что в будущем мапник подтянется (он таки да растет) или есть/появятся рендеры, которые отобразят данную информацию.

Вот пример.

С чего вы решили, что он должен это рендерить?

Вопрос, да. Может и не должен. Но abandoned=yes рендерит же. Т.е. или: и то, и другое - не должен, или: и то, и другое - должен. Но никак не так, что одно - показывает, а логический эквивалент - нет.

Нет, он рендерит исключительно building=yes. И ему всё равно хоть там рядом no_render=yes повесь. Потому, что дополнительные теги не должны кардинально менять суть объекта, они могут только уточнять.

Да я понимаю чем технически отдельный тэг отличается от префикса. Вопрос не в этом же.

Точнее, он рендерит любой building=* :slight_smile:

Но вот мне непонятно, зачем в принципе в данном случае кому-то может быть надо скрывать тег building. Просто с точки зрения логики. От того, что здание перестало обслуживаться, оно что, перестаёт быть зданием?

На gihub-е по поводу abandoned написано, что это так и должно быть:

abandoned:x and disused:x are meant to prevent the rendering
Lifecycle prefix being born as a way not to render shops/amenities

Получается, что abandoned:building вовсе не замена abandoned=yes

Ну всё верно. Заброшенный магазин/кафе - не является более магазином/кафе, там продуктов не купишь и кофе не попьёшь. То есть основной тег, к которому добавляется abandoned: или disused:, сам по себе в настоящий момент уже неприменим к объекту.

А вот здание даже в заброшенном виде остаётся зданием. Равно как и опора ЛЭП остаётся опорой ЛЭП даже без проводов.

в принципе должен быть вариант building=abandoned как и building=construction

Не соглашусь, так как building есть архитектурная форма. building:condition = * ближе по теме.

И не должен. Эти префиксы были специально придуманы чтобы рендерерам/конвертерам их и не нужно было поддерживать (за исключением редких случаев, типа рендеринга заброшенных объектов).

Там есть и такая фраза: “Add the lifecycle prefix abandoned: to all keys which are no longer relevant to the current state of an object.”
Т.е. префикс ставится не к любым тегам, а только тем, которые перестали обозначать текущее состояние объекта.
И дальше приведены примеры наборов тегов и в них к building=yes префиксы не ставят, т.к. здание обычно остаётся зданием несмотря на заброшенность. Если же здание фактически перестало быть зданием - то тогда и для building можно поставить префикс (или обозначить как ruins).

Она как раз замечательно работает, просто вы некорректно её понимаете.

Последовательность такая))
abandoned:, ruined:, demolished:, was:.