RU:Отношения/Отношения не являются категориями

From OpenStreetMap Wiki
Jump to navigation Jump to search

Уважаемые редакторы Википедии,

Возможно, вы привыкли к тому, что в Википедии каждая статья принадлежит, как минимум, к одной категории. Как только вы добавляете в Википедию статью, не принадлежащую ни к одной категории, она будет либо отмечена для удаления, либо добавлена в категорию. Есть люди, которые не делают более ничего, кроме добавления статей в соответствующие категории целыми днями.

"Отношения" (relation), которые используются в OpenStreetMap, не являются категориями. Они предназначены для моделирования близких (обычно - в пространстве) связей между объектами. Например: данный вход ведет на станцию метро; или: вы не можете повернуть с этой улицы на ту. Мы также используем их, чтобы группировать вместе фрагменты дорог: эти пятнадцать частей вместе образуют такую-то улицу. Однако, мы не создаем отношения, которые просто собирают разрозненные объекты, слабо связанные между собой. Мы не создаем группы объектов "пешеходные дорожки в Восточной Англии" или "шотландские озера". Как редактор Википедии, вы можете ощущать необходимость найти хоть одно отношение для любого объекта, который вы редактируете, но, пожалуйста, сопротивляйтесь этому ощущению. Наша база данных - пространственная база данных, это означает, что она всегда имеет информацию о расположении объектов в пространстве. Если вы хотите получить все пешеходные дорожки в Восточной Англии, вы просто можете запросить их в пределах контура, ограничивающего Восточную Англию, таким образом, группировка по этому признаку будет выполнена для вас налету. Любой, кто добавляет пешеходную дорожку, должен только убедиться в том, что она нанесена в правильном месте и отмечена, как пешеходная дорожка - факт того, где именно она находится на территории Восточной Англии никак ндолжен быть дополнительно задокументирован - это следует из ее положения автоматически.

Так что, пожалуйста, не создавайте отношений "все пешеходные дорожки Восточной Англии" и не предлагайте новые типы отношений, несущие такую функцию.

Вы можете спросить, а как же с группирующими отношениями, которые создают новую информацию, например, "все банкоматы банка HSBC"? Здесь, точно также, использование отношения не требуется. Если банкоматы имеют соответствующий тег, например operator=HSBC, кто угодно может легко извлечь все такие банкоматы, используя фильтр по данному тегу. Вы не должны создавать для этого отношение (на самом деле, оно только сделает редактирование более сложным и подверженным ошибкам). Группирующие отношения имеют смысл только в том случае, если группировка не является географической или не является исключительной (как в случае с банкоматами, которые обычно не могут обслуживаться более чем одним банком одновременно).

Хороший пример верного использования группирующих отношений - отношение типа route (маршрут), где множество линий объединяются в один велосипедный или пешеходный маршрут. При этом, любая линия может быть частью любого числа маршрутов, тогда как это не может быть сделано через добавление на линию тега route=xxx.

Спасибо за ваше понимание,

Те, кто изобрёл отношения.