Товарищи, что-то я запутался в таком легком на первый взгляд вопросе! После прочтения книги Построение баз геоданных у меня вообще все смешалось в голове. Вообще в данный момент я пытаюсь смоделировать БГД с помощью UML в Visio, а для этого нужно точно знать нужно ли мне применять подтипы или нет. Вот моменты, которые доставляют мне трудности:
1. В базе будет класс пространственных объектов (назовем его условно ВОДА), который будет включать в себя объекты нескольких типов: реки, ильмени, затоны, ерики. Атрибутивная таблица покачто будет содержать 2 поля - Название и Тип. Так вот вопрос - нужно ли тут задавать поле Тип, как поле подтипа или просто создать атрибутивный домен кодироанных значений, который будет содержать перечисленные выше типы объектов и связать его с этим полем? И если всеже здесь нужно обойтись без подтипов, то может ли мне кто-нибудь сказать, как в UML модели описать, что такой-то атрибут класса берет свои значения из атрибутивного домена? Потому что в этой книге описан только вариант с подтипами!
Может вы сможете привести примеры из своей практики по введению подтипов, чтобы я получше себе уяснил, где надо их применять, а где нет.
2. Теперь вопрос о том, нужно ли вводить подтипы или создавать несколько классов пространственных объектов. Имеются объекты типа Причалы. Но они могут быть двух типов - пассажирские и грузовые, причем каждый тип будет иметь различный абор атрибутов. Т.е у пассажирских причалов не будет сведений о кранах, но могут быть и общие атрибуты - такие как например глубина у причала. То есть раз у этих объектов разное повеедние, значит необходимо создать и разные классы: Грузовые причалы и Пассажирские причалы? Правильно? (Лично я делаю такой вывод, прочитав вышеназванную книгу, но я решил удостовериться, спросив мнения опытных людей и руководствуясь тем, что мне кажется немного нерациональным разделение на два класса схожих объектов Пристаней).