[Babase] ranker again

Karl O. Pinc kop at meme.com
Sun Oct 8 23:16:25 EDT 2006


On 10/07/2006 04:21:49 PM, Susan Alberts wrote:
> See below
> On Oct 6, 2006, at 2:20 PM, Karl O. Pinc wrote:
> 
>> Ok.  I won't make another new table.  But I will add another
>> column to RNKTYPES, RNKTYPES.Master.  When there's a master
>> ranktype then the rankings in the given type must be consistent
>> with the rankings in the master.
> 
> It depends on what you mean by consistent. The same relative rankings  
> between individuals should obtain, but they might have different rank  
> numbers. Thus in ALF, females ranked 3,5,7 might be 1,2,3 in JUF.

Yes, exactly.

> 
>> I believe this is eaiser
>> than simply hardcoding the rank type values into the triggers
>> because if I do that then I have to code in restrictions
>> as who can change which RNKTYPES when, when
>> rows can be deleted, etc., so that the triggers
>> won't do wierd things should RNKTYPES change.  And I'd
>> have to document all that too.
> 
> Sorry, I don't understand your description of this constraint. Can  
> you try again?

If I'm to impliment the aforementioned consistency check
to ensure consistency between, say, ALF and JUF, then
either I make a new RANKTYPEs column, or
I write additional rules for the
existing RANKTYPES data values that prevent
the end-user from changing the
RANKTYPES table in a way that will break the system.
In other words, the consistency checks are not the only
code that needs to be added to the system to
support a "master" rank type.  Either way
more is needed, the question is what.  Either a new
column or some special coding to support new special values.
If you give the
RANKTYPES table's values special meaning then you introduce the
same problem as we've had in the past where some support tables
have special meaning and changing them does bad things.  I believe it's
eaiser for me to add a new column than to do everything
else necessary to prevent the user from breaking the system.

We're not talking big changes either way.  It's the same sort
of decision that's been made repeatedly with regard to
all the other support tables.

Karl <kop at meme.com>
Free Software:  "You don't pay back, you pay forward."
                  -- Robert A. Heinlein



More information about the Babase mailing list