например имеем игровое поле которое оборудовано как для игры в футбол так и баскетбол (может быть и более) или другие (пока что то в голову не приходят). Какие есть варианты:
рисуем полигон поля, помечаем как leisure=pitch. Ставим внутри 2 точки sport=soccer и sport=basketball
почти тоже самое, но вместо 2-х точек - два отношения
рисуем полигон поля, помечаем как leisure=pitch , sport=soccer;basketball
Как мне видится все варианты не очень, ИМНО: п.1 и п.2 варианты удобнее для программ, но точки оторваны от полигона объекта; п.3 наоборот.
Например пресеты josm-а в данной реализации не способны работать с п.3. (ну мы же не рисуем под программы)
Рендерам вроде тоже сложно это дело (п.3) парсить (но мы же не рисуем под рендеры)
Но п.3 рекомендуется к использованию в вике http://wiki.openstreetmap.org/wiki/Tag:sport%3Dbasketball
по поводу п.3 выскажу еще негатива, ибо этот вариант требует отдельного парсинга, и addrN: на этом фоне выглядит намного безобиднее. А отдельный парсинг в некоторых текущих системах сложно реализуем (это те где есть файлы шаблонов: пресеты josm, файлы стилей и др.). Более того, нужно иметь заранее набор тегов в которых нужно ожидать ; как разделитель, чтоб не спутать с текстом (например в name)
Более лучших предложений вынести не могу, но нужно что то с этим делать, т.к. это очередной камень который мешает нормально ехать ОСМу
На данный момент только 3. Отношения для 2 не существует (а сли бы существовало, это было бы зверское overcomplication), а 1 это как “второй адрес точкой” - никак не связанные с полем отдельные объекты, сами по себе ничего не значащие.
Все приведённые “минусы” 3 - не проблемы схемы данных. И да, ; - это стандартная и документированная фича.
Согласен, но если ни будет не одного инструмента поддерживающих (возможно сложную) схему данных, то нафиг такая схема нужна. Поэтому и задался таким вопросом. например не поддерживает: тегинфо, вика, пресеты josm, стиль мапника (вроде как). Что там еще осталось…
проблема с key=value1;value2 очевидна: теги на том же объекте, относящиеся к key=value1, никак не отделить от тегов, относящихся к key=value2. Поэтому такое тегирование применимо только в простых случаях, где нет всяхих opening_hours и проч.
Если объект один, то и теги у него общие. Это нормально. У одного объекта двух разных opening_hours быть не может. А вложенных объектов в осм нет (кроме разумеется простой геометрической вложенности).