Каталог и зависимые ноды

horpah

Гуру форума
Регистрация
20 Июн 2010
Сообщения
199
Реакции
55
Здравствуйте форумчане. Нужна ваша помощь в организации БД(составить таблицу) каталога. Итак описание задачи.
Предположим у нас есть каталог такой структуры(представлю дерево отношений ввиде XML для наглядности)
Код:
<category1>
  <el1>
    <el1.1></el1.1>
    <el1.2></el1.2>
  </el1>
  <el2></el2>
  <el3></el3>
</category1>
<category2>
 <el4></el4>
 <el5></el5>
 <el6></el6>
</category2>
т.е. у категории дочки-элементы, у которых в свою очередь так же м.б. свои дети. В общем обычное дерево. Нужно как-то представить в этом дереве элемент <ex></ex>, который бы являлся дочерним,например, <el2></el2> и <el6></el6> одновременно, и соответственно, описать его в БД. Смысл его таков данного элемента таков: если выбраны <el2></el2> и <el6></el6>, то доступен и <ex></ex> со своим потомством.
А теперь от абстракции к конкретике для большего понимания что это и для чего это.
Предположим, мы продаем автомобили и на сайте пользователю предлагается выбрать себе опции.
Код:
<Модель>
  <model1 />
  <model2 />
</Модель>
<Привод>
  <2к />
  <4к />  
</Привод>
<Двигатель>
 <1800 />
 <2000 />
 <2400 /> = <model2 /> && <4к />  
</Двигатель>
<adv>
 <avdopt1> = <model1 /> && <2к />  
 <opt1 />
 <opt2 />
 <opt3 /> 
 </avdopt1>
 <avdopt2>
  <opt4 />
  <opt5 />  
 </avdopt2>
</adv>
что означает двигатель объемом <2400> доступен у полноприводных <model2 /> а список доп. опций <avdopt1> доступен только для
model1 c приводом на 2 колеса.
Прошу помощи в организации для БД таких вот опций, зависимых от наличия или комбинаций других опций.
Т.е. отношений в булевкой алгебре выгледящик примерно так:
X = A*B*C(D+E) (X доступно если есть А,Б, D или E, и нет C
 
Назад
Сверху