Re: Modeling question...

From: Bob Badour <bbadour_at_pei.sympatico.ca>
Date: Thu, 11 Sep 2008 17:23:52 -0300
Message-ID: <48c97e5d$0$4036$9a566e8b_at_news.aliant.net>


Volker Hetzer wrote:

> JOG schrieb:
>

>> On Jul 25, 3:33 pm, Volker Hetzer <firstname.lastn..._at_ieee.org> wrote:
>>
>>> JOG schrieb:
>>>
>>>> On Jul 25, 3:05 pm, Volker Hetzer <firstname.lastn..._at_ieee.org> wrote:
>>>>
>>>>> Bob Badour schrieb:
>>>>>
>>>>>>>> Ooooh! Reinventing EAV with levels...
>>>>>>>
>>>>>>> Possibly. I had a look at
>>>>>>> http://ycmi.med.yale.edu/nadkarni/eav_CR_contents.htmanddidn't find
>>>>>>> anything exciting.
>>>>>>> All my attributes (key value pairs) are (for the purpose of this
>>>>>>> discussion) strings, so the Data tables hierarchy ends with
>>>>>>> EAV_Objects in the first image of that link.
>>>>>>> My problem is that, that I haveTest  three different "Objects_1"
>>>>>>> tables and I'd like to avoid having to replicate the 
>>>>>>> EAV_Objects-Table
>>>>>>> for each "Objects_1"-Table.
>>>>>>> OTOH, I could have the "level" entities all be children of an id 
>>>>>>> table
>>>>>>> and
>>>>>>> put the key value pairs into a child of that table. I need to try 
>>>>>>> this
>>>>>>> out.
>>>>>>> Thanks for providing the pointer!
>>>>>>> Volker
>>>>>>
>>>>>> Just to be clear, I was more than offering a pointer. I was also
>>>>>> ridiculing the idea of EAV.
>>>>>
>>>>> I got that. :-)
>>>>> But "we want to be able to create and delete attributes" is a customer
>>>>> requirement. I think it's different from "I am too lazy to do a 
>>>>> proper data
>>>>> model". There are plenty of "normal" attributes left to model ERD 
>>>>> like.
>>>>> Lots of Greetings!
>>>>> Volker
>>>>> -- 
>>>>> For email replies, please substitute the obvious.
>>>>
>>>> What's wrong with drop/add column?
>>>
>>> All the things that are wrong if an application requires DDL during 
>>> its normal
>>> state. No undo, no scalability, limits on the number of attributes, 
>>> limits on
>>> the structure of the attribute names, the same attributes in each
>>> project/pcb/etc. and so on.
>>
>>
>> If one is changing trying to change the attributes that entities
>> possess, than one is necessarily altering the propositions that can be
>> stated about them. This necessitates a change in relation predicates,
>> which means it is absolutely a DDL issue. To think otherwise seems to
>> somewhat miss the point of the relational model.

>
> Bit late but I was on holiday...
> I am not trying to change the attributes that an entity possesses but
> I am allowing each business object or user object or whatever you may
> call it to contain an attribute collection. There are no changes in
> relation predicates since any attribute name is just contents, like
> its value.
> I think we are talking at cross purposes.
>
> I'm curious, what do you people do when a customer comes and says,
> "I want to store <thing> and I want to add, change and remove key
> value pairs and I want to name them freely.".

In... um... 27 years of developing software, not once has a customer ever come to me and said anything even remotely similar. Received on Thu Sep 11 2008 - 22:23:52 CEST

Original text of this message