Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
Discussion Groups
Database Servers
DB2InformixIngresMS SQLOraclePervasive.SQLPostgreSQLProgressSybase
Desktop Databases
FileMakerFoxProMS AccessParadox
General
General DB TopicsDatabase Theory
Related Topics
Java Development.NET DevelopmentVB DevelopmentMore Topics ...

Database Forum / General DB Topics / DB Theory / November 2007

Tip: Looking for answers? Try searching our database.

the two questions

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
vldm10 - 24 Nov 2007 00:38 GMT
Not long time ago on this NG there were few posts which involved an
entity with 200+ attributes.
Let all these attributes satisfy the following two conditions:
1) All these attributes are mutually independent
2) Every attribute of an entity can change its value - like in
"Temporal DB"

Now I have two questions:

1) How many attributes has a key of the corresponding relation?
2) How many attributes has a key of m-n relationship between the two
mentioned entities?

Vladimir Odrljin
Jonathan Leffler - 24 Nov 2007 02:32 GMT
> Not long time ago on this NG there were few posts which involved an
> entity with 200+ attributes.
> Let all these attributes satisfy the following two conditions:
> 1) All these attributes are mutually independent

I have a feeling you are going to need to recast your conditions.  If
all the attributes are mutually independent, then the only candidate key
for the relation is the combination of all N attributes, is it not?

> 2) Every attribute of an entity can change its value - like in
> "Temporal DB"
[quoted text clipped - 4 lines]
> 2) How many attributes has a key of m-n relationship between the two
> mentioned entities?

Two entities?  Where did the second one appear from?  You started with
an entity with 200+ attributes, and ... magic'd a second one out of thin
air?

Signature

Jonathan Leffler                   #include <disclaimer.h>
Email: jleffler@earthlink.net, jleffler@us.ibm.com
Guardian of DBD::Informix v2007.0914 -- http://dbi.perl.org/

ptb/PTB-1860 whirlpool2 2007-11-24 00:00:06
88FCD1C504D5345557AF5FEA2991A9138F5D151C781AC5FC296732F1BFDA6C7371B115
AB2B27673813EC1EE5320A28C938AA7316F4FCD544113EF4ABD4C9C9A

vldm10 - 24 Nov 2007 04:47 GMT
> > Not long time ago on this NG there were few posts which involved an
> > entity with 200+ attributes.
[quoted text clipped - 4 lines]
> all the attributes are mutually independent, then the only candidate key
> for the relation is the combination of all N attributes, is it not?

Yes, but at least 200 attributes. I mean it should be more then 200
regarding condition 2). Condition 2) in fact involves "Temporal DB"
considerations.

> > 2) Every attribute of an entity can change its value - like in
> > "Temporal DB"
[quoted text clipped - 8 lines]
> an entity with 200+ attributes, and ... magic'd a second one out of thin
> air?

Let it be the two entities, so that we can make m-n relationship.

> --
> Jonathan Leffler                   #include <disclaimer.h>
[quoted text clipped - 4 lines]
> 88FCD1C504D5345557AF5FEA2991A9138F5D151C781AC5FC296732F1BFDA6C7371B115
> AB2B27673813EC1EE5320A28C938AA7316F4FCD544113EF4ABD4C9C9A

Vl. Odrljin
JOG - 24 Nov 2007 03:36 GMT
> Not long time ago on this NG there were few posts which involved an
> entity with 200+ attributes.
> Let all these attributes satisfy the following two conditions:
> 1) All these attributes are mutually independent

Then there are no functional dependencies so the entity can only be
identified by the collection of all its attributes - and hence you'd
end up with an equivalent superkey. If any of those attributes
"change" it would also therefore be a different entity altogether.

> 2) Every attribute of an entity can change its value - like in
> "Temporal DB"

Nope, not gonna squeeze that one past. If they are all unstable, well
then, you are saying there is not a single attribute that is
consistent over the entity's lifetime?  In that case how could you
ever identify it in the real world following change? Perhaps hire
someone to follow it down the street continually pointing at it?
Y'know, Its strange we don't get more of that in daily life, given the
popularity of OID's in IT... oh well, I guess we're stuck with the old
fashioned method of identifying things by looking at them.

> Now I have two questions:
>
> 1) How many attributes has a key of the corresponding relation?
> 2) How many attributes has a key of m-n relationship between the two
> mentioned entities?

A binary relationship, without use of a surrogate, would obviously
require twice the number of attributes that made up the aforementioned
superkey.

Hmmm, why do I get the feeling you're about to try and sell me
something? ;)

> Vladimir Odrljin
vldm10 - 24 Nov 2007 05:38 GMT
> > Not long time ago on this NG there were few posts which involved an
> > entity with 200+ attributes.
[quoted text clipped - 5 lines]
> end up with an equivalent superkey. If any of those attributes
> "change" it would also therefore be a different entity altogether.

It should be at least 400 attributes by my calculation.
Are you familiar with "Temporal DB" theory?

> > 2) Every attribute of an entity can change its value - like in
> > "Temporal DB"
[quoted text clipped - 17 lines]
> require twice the number of attributes that made up the aforementioned
> superkey.

This is m-n relationship and the key can have more attributes then you
wrote.

> Hmmm, why do I get the feeling you're about to try and sell me
> something? ;)

This is about compex DB and some interesting cases about them.
I beleive they will be actual in near future, people start to ask
about it.

Vl. Odrljin

> > Vladimir Odrljin- Hide quoted text -
>
> - Show quoted text -
JOG - 24 Nov 2007 13:40 GMT
> > > Not long time ago on this NG there were few posts which involved an
> > > entity with 200+ attributes.
[quoted text clipped - 7 lines]
>
> It should be at least 400 attributes by my calculation.

You think a relation with 200 attributes should have a superkey
containing 400 attributes? I see.

> Are you familiar with "Temporal DB" theory?

Of course, but I don't see what relevance it has here. Temporal
databases just augment the current key with time data, so the entity
may be followed over its lifetime. One still needs to be able to
recognise that entity with a stable identifier.

> > > 2) Every attribute of an entity can change its value - like in
> > > "Temporal DB"
[quoted text clipped - 33 lines]
>
> > - Show quoted text -
vldm10 - 24 Nov 2007 19:49 GMT
My intention in this post is database theory, especially "Temporal DB"
theory and the complex databases. I also think that term "Temporal
databases" is wrong. Regarding "Temporal DB" theory
there are the different groups world-wide with the different
approaches to this problem often with strong disagreement among them,
the critics etc.
Here is example with huge amount of the attributes. Although a theory
don't need to worry about the number of the attributes (usually the
theory is general), it is interesting to consider some things, like
the keys, or how to represent distinct facts with own relations (6NF)
- regarding that key brings the hundreds of information, how to design
these databases, etc.
So the first step in this discussion is - how many attributes the key
has. But it should be just first step. My main intention here is the
following question: is this theoretical problem or technical?

> > > > Not long time ago on this NG there were few posts which involved an
> > > > entity with 200+ attributes.
[quoted text clipped - 10 lines]
> You think a relation with 200 attributes should have a superkey
> containing 400 attributes? I see.

Usually in the temporal databases we add two new "attributes":
datefrom and dateto to an attribute.
So in general case you will have A1, datefrom1, dateto1,..., A200,
datefrom200, dateto200
(this is 600 attributes)
However if you want to represent date as (yy,mm,dd,hh,min,sec) you
will have 2600 attributes.
Now we have to construct key. You can notice that one attribute can
change its value so that after a period of time the attribute can get
same value. This can happened with all other attributes. So we must to
add date in key.
In my solution, my key has always one attribute. So I am not so
familiar with above constructions which are from "temporal database"
theory. I believe that I gave good number of the attributes for a key.

> > Are you familiar with "Temporal DB" theory?
>
> Of course, but I don't see what relevance it has here. Temporal
> databases just augment the current key with time data, so the entity
> may be followed over its lifetime. One still needs to be able to
> recognise that entity with a stable identifier.

This about "stable identifier" is direct consequence of my solution
which is on www.dbdesign10.com

Vladimir Odrljin

> > > > 2) Every attribute of an entity can change its value - like in
> > > > "Temporal DB"
[quoted text clipped - 35 lines]
>
> - Show quoted text -
Brian Selzer - 25 Nov 2007 07:16 GMT
>> Not long time ago on this NG there were few posts which involved an
>> entity with 200+ attributes.
[quoted text clipped - 5 lines]
> end up with an equivalent superkey. If any of those attributes
> "change" it would also therefore be a different entity altogether.

It cannot be determined whether two representations from two distinct points
in time refer to the same individual--even if all of the attribute values
are identical--unless, of course, one of the attributes is a surrogate;
therefore, your statement that it would be a different entity altogether is
unfounded.

>> 2) Every attribute of an entity can change its value - like in
>> "Temporal DB"
[quoted text clipped - 7 lines]
> popularity of OID's in IT... oh well, I guess we're stuck with the old
> fashioned method of identifying things by looking at them.

How else could you determine if the butterfly that you're looking at now is
the same individual as the catepillar that you were looking at several
months ago.

I think that it is most important that if you can identify an individual at
multiple points in time, for example, T1 and T6, then it should be possible
to track that invidual through time, noting the changes that occur at each
transition, so that at T6, the individual identified /is/ the individual
that had been tracked.  It should be obvious that if prime attributes can be
the target of an update, then it is not necessarily the case that the set of
attribute values that identifies an individual at T1 identifies the same
individual at T6.  It may be that the set of attribute values that
identifies an individual at T1 identifies a different individual at T6.

>> Now I have two questions:
>>
[quoted text clipped - 10 lines]
>
>> Vladimir Odrljin
David Cressey - 25 Nov 2007 11:32 GMT
> >> Not long time ago on this NG there were few posts which involved an
> >> entity with 200+ attributes.
[quoted text clipped - 9 lines]
> in time refer to the same individual--even if all of the attribute values
> are identical--unless, of course, one of the attributes is a surrogate;

Do you mean "surrogate" or "synthetic" ?
Brian Selzer - 25 Nov 2007 17:24 GMT
>> >> Not long time ago on this NG there were few posts which involved an
>> >> entity with 200+ attributes.
[quoted text clipped - 12 lines]
>
> Do you mean "surrogate" or "synthetic" ?

I don't know what you mean by "synthetic."  What I mean by a surrogate is a
value that always refers to a particular individual and can never refer to
any other individual.  How it comes into being is irrelevant.
David Cressey - 26 Nov 2007 14:47 GMT
> >> "JOG" <jog@cs.nott.ac.uk> wrote in message

news:8505d954-cdc3-4bf8-9107-b307563be0e8@r60g2000hsc.googlegroups.com...
> >> >> Not long time ago on this NG there were few posts which involved an
> >> >> entity with 200+ attributes.
[quoted text clipped - 16 lines]
> value that always refers to a particular individual and can never refer to
> any other individual.  How it comes into being is irrelevant.

The term "surrogate", as I have seen it used has the features you state.
But a "surrogate key"  also  has two other features that you may or may not
intend in this discussion.  First, it is (or should be)  never exposed to
the users.  Second, it is a substitute for some "real key" that is not used
bacause the data source has incomplete knowledge concerning the real key,
and this incomplete knowledge would cause a failure of identification in
some situations.

The term "synthetic key"  is one I have only seen in this newsgroup.  what
it means,  AFAIK, is a key that is just as visible as a natural key,  but
assigned to a particular individual,  rather than being a natural attribute
of that individual.  So a person's fingerprints might be a natural key
(provided it works as a key),  but a person's "personal ID number"  would be
a "synthetic key".

I've also seen the term "artificial key"  used in the same sense as
"synthetic key".

Anyway, the distinction I'm asking you to make is this:  do the users use
the value to refer to a particular individual,  or does the system use it in
this manner, under the covers?  This distinction is meaningful, I believe.
Brian Selzer - 26 Nov 2007 16:43 GMT
>> >> "JOG" <jog@cs.nott.ac.uk> wrote in message
>> >>
[quoted text clipped - 42 lines]
> be
> a "synthetic key".

The difference--and it is critical--is that the value of a surrogate key
always refers to the same individual and can never refer to any other
individual.  This is not necessarily the case for a natural key nor a
"synthetic key."

> I've also seen the term "artificial key"  used in the same sense as
> "synthetic key".
[quoted text clipped - 3 lines]
> in
> this manner, under the covers?  This distinction is meaningful, I believe.

I would have to say, "yes," the users can use the value to refer to a
particular individual, provided the application developer chooses to permit
it.

From a metaphysical standpoint, it is a rigid designator.  It is a name,
possibly arbitrarily assigned, that in the context of the entire discussion
refers to one and only one individual.  The important distiction is that the
context of that name is not only a single database value but every possible
database value.
David Cressey - 26 Nov 2007 20:49 GMT
> From a metaphysical standpoint, it is a rigid designator.

From a metaphysical standpoint,  there are no rigid designators,  unless you
want to speak about the mind of God.
vldm10 - 27 Nov 2007 19:06 GMT
> > From a metaphysical standpoint, it is a rigid designator.
>
> From a metaphysical standpoint,  there are no rigid designators,  unless you
> want to speak about the mind of God.

Here, I think that Brian use the terms from Kripke theory about names,
so I suggest you to google for "rigid designator Saul Kripke"

Vladimir Odrljin
Bob Badour - 25 Nov 2007 18:29 GMT
>>>>Not long time ago on this NG there were few posts which involved an
>>>>entity with 200+ attributes.
[quoted text clipped - 14 lines]
>
> Do you mean "surrogate" or "synthetic" ?

Actually, what he is saying is at least one attribute must remain the
same. Whether that attribute is a surrogate is a red herring.

Suppose two tuples differ completely except for one attribute you know
was assigned arbitrarily. How do you know they are really the same
thing? After all, all observable properties have changed. The fact that
an arbitrary number is the same doesn't really tell us much.
JOG - 26 Nov 2007 00:05 GMT
> >>>>Not long time ago on this NG there were few posts which involved an
> >>>>entity with 200+ attributes.
[quoted text clipped - 17 lines]
> Actually, what he is saying is at least one attribute must remain the
> same. Whether that attribute is a surrogate is a red herring.

Spot on.

> Suppose two tuples differ completely except for one attribute you know
> was assigned arbitrarily. How do you know they are really the same
> thing? After all, all observable properties have changed. The fact that
> an arbitrary number is the same doesn't really tell us much.

Unless someone tattooed it to their posterior of course. Mine's
certainly not observable.
Marshall - 26 Nov 2007 02:49 GMT
> > Suppose two tuples differ completely except for one attribute you know
> > was assigned arbitrarily. How do you know they are really the same
> > thing? After all, all observable properties have changed. The fact that
> > an arbitrary number is the same doesn't really tell us much.
>
> Unless someone tattooed it to their posterior of course.

It is inadvisable for someone about to be married to be considering
this.

Marshall

PS. :-)
Brian Selzer - 26 Nov 2007 02:50 GMT
>>>>>Not long time ago on this NG there were few posts which involved an
>>>>>entity with 200+ attributes.
[quoted text clipped - 17 lines]
> Actually, what he is saying is at least one attribute must remain the
> same. Whether that attribute is a surrogate is a red herring.

Not exactly.  It must not only remain the same, it must be expected to
remain the same.  In addition, the attribute in question must also be a key.

> Suppose two tuples differ completely except for one attribute you know was
> assigned arbitrarily. How do you know they are really the same thing?
> After all, all observable properties have changed. The fact that an
> arbitrary number is the same doesn't really tell us much.

Sure it does.  If that arbitrary number rigidly designates an individual,
then it ties the two sets of properties together.
JOG - 25 Nov 2007 23:59 GMT
> >> Not long time ago on this NG there were few posts which involved an
> >> entity with 200+ attributes.
[quoted text clipped - 27 lines]
> the same individual as the catepillar that you were looking at several
> months ago.

Oh lets not do the dance all over again brian. Its got the same
gene's, whatever. Something has to be consistent for them to be the
same thing. Even if it just ends up being the fact that they share the
same path of x,y locations over time (I'd use a surrogate for that one
hey, otherwise it be a hell of a long attribute), there has to be
something.

There just is no great big invisible pointing hand amigo.

> I think that it is most important that if you can identify an individual at
> multiple points in time, for example, T1 and T6, then it should be possible
[quoted text clipped - 5 lines]
> individual at T6.  It may be that the set of attribute values that
> identifies an individual at T1 identifies a different individual at T6.

If it helps, why don't you view your butterfly/caterpillar as a little
"insect life" entity. Identify that. Then you might start to see that
T1-T6 are just different snapshots of it. But for any snapshot, to
recognize it as our "insect life" entity, we need that identifier.

> >> Now I have two questions:
>
[quoted text clipped - 10 lines]
>
> >> Vladimir Odrljin
Brian Selzer - 26 Nov 2007 02:38 GMT
>> >> Not long time ago on this NG there were few posts which involved an
>> >> entity with 200+ attributes.
[quoted text clipped - 39 lines]
>
> There just is no great big invisible pointing hand amigo.

From a given database value D, you can arrive at a new database value D' in
one of two ways: (1) by simply stating D', or (2) by stating how D must be
transformed to produce D'.  Either way, you still arrive at the same answer,
D', but there can be a great many possible transformations from D to D'.
Identifying which transformation is actually occurring makes it possible to
track an individual across database transitions: this is--in effect--the
great big invisible pointing hand!

>> I think that it is most important that if you can identify an individual
>> at
[quoted text clipped - 15 lines]
> T1-T6 are just different snapshots of it. But for any snapshot, to
> recognize it as our "insect life" entity, we need that identifier.

Not if T1-T6 are not just snapshots but also successive snapshots.  If the
identification at T1 is known, and the assertions that yield the values at
T2, T3, T4, T5 and T6 are known, then the identification at any snapshot can
be derived from the available information.

>> >> Now I have two questions:
>>
[quoted text clipped - 10 lines]
>>
>> >> Vladimir Odrljin
JOG - 26 Nov 2007 13:24 GMT
> >> "JOG" <j...@cs.nott.ac.uk> wrote in message
>
[quoted text clipped - 51 lines]
> track an individual across database transitions: this is--in effect--the
> great big invisible pointing hand!

I'm sure your a lovely chap brian, but I just don't seem to be able to
keep things on track with you... you asked me about a caterpillar -
butterfly. I told you that they still have to have some characteristic
that is observably consistent to recognize they are the same thing,
and now your talking about database values. Lets get the conceptual
level cleared up first hey before we dive into the logical one!

Look, ride with me on this - are we agreed in /the real world/ there
is no big invisible pointing hand? I'm sort of envisioning one of
those big foam things that fans wear at baseball matches now ;) In
other words, are we agreed that the caterpillar and butterfly have to
share some attribute to be viewed as two snapshots of the same entity
(in order to identify that entity as one consistent thing). Forget
database encodings, I'm just talking about in the real world.

> >> I think that it is most important that if you can identify an individual
> >> at
[quoted text clipped - 35 lines]
>
> >> >> Vladimir Odrljin
Brian Selzer - 27 Nov 2007 15:49 GMT
>> >> "JOG" <j...@cs.nott.ac.uk> wrote in message
>>
[quoted text clipped - 77 lines]
> (in order to identify that entity as one consistent thing). Forget
> database encodings, I'm just talking about in the real world.

Each individual that existed, exists, or can exist has a property that
distinguishes it from all other individuals that existed, exist or can
exist; so, yes, there is a property that the caterpillar and butterfly
share.  The problem is: I don't think haecceity can be observed directly.
If one were able to examine the history of the butterfly, one should be able
to determine that it coincides with the history of the caterpillar--up to
the point of the initial snapshot.  The problem is: I don't think history
can appear in a snapshot.

>> >> I think that it is most important that if you can identify an
>> >> individual
[quoted text clipped - 46 lines]
>>
>> >> >> Vladimir Odrljin
David Cressey - 27 Nov 2007 16:20 GMT
> Each individual that existed, exists, or can exist has a property that
> distinguishes it from all other individuals that existed, exist or can
[quoted text clipped - 4 lines]
> the point of the initial snapshot.  The problem is: I don't think history
> can appear in a snapshot.

I think we have had this discussion before, Brian.  It might have been last
year at Marienbad.
JOG - 27 Nov 2007 16:46 GMT
> "JOG" <j...@cs.nott.ac.uk> wrote in message
> Each individual that existed, exists, or can exist has a property that
> distinguishes it from all other individuals that existed, exist or can
> exist; so, yes, there is a property that the caterpillar and butterfly
> share.

Great, we have agreement :)

> The problem is: I don't think haecceity can be observed directly.

This time I agree with you (although I did have to look up what
'haeccity' meant) - it is often the case that the identifier we need
isn't available to us (I mean we can't often check a butterflies dna
right...).

But we have to find a solution to this in the real world right - If I
have a butterfly, how do I know it came from the caterpillar from
earlier? Would you agree there are two options?

1) Check an identifier that we can manage to observe (dna if we're
lucky, more likely the jar number we've kept it in, etc.)
2) If we couldn't access that identifier (or it was just too much of a
pain to do so), we'd have needed to invent a new identifier as a
replacement, that was trackable (a representative identifer for the
insect's 'haeccity' - similar to what biologists do when they 'tag'
birds).

Again, all in the real world, before we get to a database.

> If one were able to examine the history of the butterfly, one should be able
> to determine that it coincides with the history of the caterpillar--up to
> the point of the initial snapshot.  The problem is: I don't think history
> can appear in a snapshot.

I get your gist here but hope we can come back to it after you've
looked at the above question. Regards, J.
David Cressey - 27 Nov 2007 17:13 GMT
> > "JOG" <j...@cs.nott.ac.uk> wrote in message
> > Each individual that existed, exists, or can exist has a property that
[quoted text clipped - 32 lines]
> I get your gist here but hope we can come back to it after you've
> looked at the above question. Regards, J.

As a practical matter,  what we do when we want to track individual living
creatures is to tag them.  Let's take birds, rather than butterflies.  Near
where I live,  they are banding birds.  When a dead bird is found,  they ask
for the number from  the band, if there is one.  Among other things, this
allows better tracking of bird flu.

A few days ago some people, in jest, suggested that people get an ID tattoed
to their butt.  For purposes of this discussion, banding birds is precisely
the same concept, minus the humor.  The number on the band identifies the
band.  Since the band is an artifact,  we can build it so as to carry its
identity around in visible form.

Using the band number as if it were a bird number depends on attaching the
band to the bird in a relatively permanent way.  I think it's fair to call a
band number an "artificial key".  I'm less sure about the term "synthetic
key".  I think it's misleading to call it a "surrogate key".  Surrogate for
what?

We do the same thing when we use Social Security Number to identify people.
In the narrowest sense,  a SSN identifies an account in the Social Security
system.  The attachment between the person and the account is less tangible
than the band on the bird,  but is intended to be quasi permanent.

Again,  all of this is "real world"  before anything goes into a database.
thesaboteurs@gmail.com - 28 Nov 2007 01:04 GMT
> > > "JOG" <j...@cs.nott.ac.uk> wrote in message
> > > Each individual that existed, exists, or can exist has a property that
[quoted text clipped - 53 lines]
> key".  I think it's misleading to call it a "surrogate key".  Surrogate for
> what?

Well, it's a surrogate for the attribute (or set of attributes) that
makes that bird unique. That'd be its DNA code in the case of an
individual bird I guess.

But then as a caveat I'd also say talking about surrogate "keys" is a
nonsense, period. Keys apply to propositions, and we're still at the
conceptual layer talking about entities. The band is a surrogate
'identifier' - an attribute of the bird entity. That it happens to be
referred to later on in a proposition about the bird is just a knock
on effect. (Is this what Bob means about them just being unfamiliar
keys? I may have finally twigged what he's on about.)

The key vs identifier may seem a pedantic distinction to make, but I
honestly think its a bloody important one given how much confusion
between logical and conceptual layers there is.  The fact that E/R
modelling talks about keys as if they were analagous to RM keys also
me feel decidedly squiffy.

> We do the same thing when we use Social Security Number to identify people.
> In the narrowest sense,  a SSN identifies an account in the Social Security
> system.  The attachment between the person and the account is less tangible
> than the band on the bird,  but is intended to be quasi permanent.

Yup, pretty much I'd say. But its worth noting that the SSN probably
identifies a US citizen, rather than a person. Different entity types.

> Again,  all of this is "real world"  before anything goes into a database.

In the real world I use a lot more bad words.
David Cressey - 28 Nov 2007 01:16 GMT
> Yup, pretty much I'd say. But its worth noting that the SSN probably
> identifies a US citizen, rather than a person. Different entity types.

Non citizens with work permits have a SSN in the US.
paul c - 27 Nov 2007 17:17 GMT
...
> This time I agree with you (although I did have to look up what
> 'haeccity' meant) - it is often the case that the identifier we need
> isn't available to us (I mean we can't often check a butterflies dna
> right...).
> ...

In my more lucid moments I fancy I can discern the gist or essence of a
db design (okay, let the mystics call it application model if they want
and pretend that a db somehow contains "entities" as long as the
pretense makes them feel better and doesn't distort what the user really
needs) but "haecceity"?  Eg., the haicceity of a database entity?   Give
me a break!

As Ounslow would say, "nice"!  Apparently

http://www.thefreedictionary.com/haecceity

gives a synonym - "quiddity".  I would have guessed that had something
to do with being flush, money-wise but it seems it has more to with
obfuscation!

I guess some people will forever want to chase butterflies.
Brian Selzer - 27 Nov 2007 18:10 GMT
> ...
>> This time I agree with you (although I did have to look up what
[quoted text clipped - 16 lines]
> do with being flush, money-wise but it seems it has more to with
> obfuscation!

Precision really isn't a bad thing.  Perhaps you should find out what the
words really mean before making an a.s of yourself.

> I guess some people will forever want to chase butterflies.
paul c - 27 Nov 2007 19:29 GMT
...

> Precision really isn't a bad thing.  Perhaps you should find out what the
> words really mean before making an a.s of yourself.
> ...

In fact, your examples are pointlessly vague, even wanton, as the
general lack of appreciation by people here shows.  Taken to unnecessary
extremes, anything is bad.  Over-precision by fatuous technocrats and
other mystics is a tremendous cost, complication and waste in modern
society.

I'll grant that over-precision is also possible by people who have no
axe to grind but are simply mis-guided as to what purpose they are
trying to achieve.  Usually those types stop yelling about it after a
while.

Before the internet encouraged such vocabulary-on-steroids, these
pointless conversations were labelled "contemplating infinity" and
little school kids could recognize it for what it was.  Today they are
more easily confused.
Brian Selzer - 28 Nov 2007 04:43 GMT
> ...
>>
[quoted text clipped - 15 lines]
> school kids could recognize it for what it was.  Today they are more
> easily confused.

Can anybody out there follow the incoherent rant above?
Jon Heggland - 28 Nov 2007 07:15 GMT
Quoth Brian Selzer:
>> In fact, your examples are pointlessly vague, even wanton, as the general
>> lack of appreciation by people here shows.  Taken to unnecessary extremes,
[quoted text clipped - 11 lines]
>
> Can anybody out there follow the incoherent rant above?

Certainly. I think it is one of Paul C's best posts ever.
Signature

Jon

Bob Badour - 28 Nov 2007 14:59 GMT
> Quoth Brian Selzer:
>
[quoted text clipped - 15 lines]
>
> Certainly. I think it is one of Paul C's best posts ever.

Agreed.
Brian Selzer - 28 Nov 2007 16:10 GMT
> Quoth Brian Selzer:
>>> In fact, your examples are pointlessly vague, even wanton, as the
[quoted text clipped - 19 lines]
>
> Certainly. I think it is one of Paul C's best posts ever.

I'm so glad it amuses you.
Gene Wirchenko - 29 Nov 2007 02:08 GMT
>> Quoth Brian Selzer:

[snip]

>>> Can anybody out there follow the incoherent rant above?

    I see a coherent statement.  Where is the rant?

>> Certainly. I think it is one of Paul C's best posts ever.
>
>I'm so glad it amuses you.

    It is not a matter of amusement.  It is a matter of it making a
good point.

Sincerely,

Gene Wirchenko

Computerese Irregular Verb Conjugation:
    I have preferences.
    You have biases.
    He/She has prejudices.
Brian Selzer - 29 Nov 2007 05:04 GMT
>>> Quoth Brian Selzer:
>
[quoted text clipped - 10 lines]
>     It is not a matter of amusement.  It is a matter of it making a
> good point.

Call me dense.  I fail to see the point--other than to deliver a poorly
veiled series of insults, directed not only at me but at anyone who
interacts with me.  I thought that Bob was the resident insulter on CDT.
Has Paul now taken his place?

> Sincerely,
>
[quoted text clipped - 4 lines]
>     You have biases.
>     He/She has prejudices.
paul c - 30 Nov 2007 01:51 GMT
...
> Call me dense.  I fail to see the point--other than to deliver a poorly
> veiled series of insults, directed not only at me but at anyone who
> interacts with me.  I thought that Bob was the resident insulter on CDT.
> Has Paul now taken his place?
> ...

Insults?  Nobody called you an a.s and most people here don't try to
twist an argument by going personal, actually most of them don't seem to
be here to win in that sense.  Here's some free advice:  You won't get
far if you call somebody an a.s and expect them to agree with you!  Some
of my cockamamie ideas get called stupid all the time, so what? It makes
me think a little more while I bide my time for a few months and cross
my fingers that nobody remembers the last time I brought it up and may
have a fresh response that for whatever reason wasn't possible before.
Could be lots of reasons - I might have put the thought badly or it was
rejected years ago by the audience or I might just be imagining things
or my lingo may be too crude for their taste or, much less likely I'll
admit, maybe they're all wrong and I'm right.  I've been sitting on a
few questions for a couple of years because I still haven't figured out
how to put them.  Bit by bit, things get clearer which I'll take any day
over just winning arguments.  No matter what you might think about
entities, the bruises you'll get here aren't real!

At any rate, I'm not in Bob B's class, nor that of most regulars, if
this is so important, why don't you go after the big fries?

Since I've already been judged guilty of slinging, tinkerty tonk to you
too, just the way Bertie Wooster meant it!
Brian Selzer - 30 Nov 2007 12:00 GMT
> ...
>> Call me dense.  I fail to see the point--other than to deliver a poorly
[quoted text clipped - 19 lines]
> arguments.  No matter what you might think about entities, the bruises
> you'll get here aren't real!

You jumped in with an attempt to ridicule my (correct, I might add) use of
the term "haecceity."  In doing so, you not only disregarded the fact that
what was being discussed were real world individuals, not database
"entities," but also didn't bother finding out what the term "haecceity"
means.  The bottom line is that your post succeeded in ridiculing not your
intended target, me, but yourself.  I simply was offering some friendly
advice: nobody I know enjoys making an a.s of themselves, and as you had
just clearly done so, I felt compelled to point it out so that you could
possibly avoid future embarassment.

I most certainly wasn't trying to win an argument.

> At any rate, I'm not in Bob B's class, nor that of most regulars, if this
> is so important, why don't you go after the big fries?
>
> Since I've already been judged guilty of slinging, tinkerty tonk to you
> too, just the way Bertie Wooster meant it!

Who's Bertie Wooster?
JOG - 28 Nov 2007 01:15 GMT
Re. the previous post, I seem utterly incapable of remembering to
login. I obviously blame google for this and not myself.

> ...
>
[quoted text clipped - 10 lines]
> needs) but "haecceity"?  Eg., the haicceity of a database entity?   Give
> me a break!

Surely the test should be whether it is possible to repeat the phrase
fluently after half a bottle of scotch. I personally think 'haeceity'
is in a lot of trouble... ;)

> As Ounslow would say, "nice"!  Apparently
>
[quoted text clipped - 5 lines]
>
> I guess some people will forever want to chase butterflies.
Bob Badour - 28 Nov 2007 02:42 GMT
> Re. the previous post, I seem utterly incapable of remembering to
> login. I obviously blame google for this and not myself.
[quoted text clipped - 17 lines]
> fluently after half a bottle of scotch. I personally think 'haeceity'
> is in a lot of trouble... ;)

Half-bottle of scotch? I don't think it would survive a half-glass of
wine. The word makes me think about sacrificing cows.

>>As Ounslow would say, "nice"!  Apparently
>>
[quoted text clipped - 5 lines]
>>
>>I guess some people will forever want to chase butterflies.

I thought it was day-flies... (EWD709)
Gene Wirchenko - 29 Nov 2007 02:10 GMT
[snip]

>Half-bottle of scotch? I don't think it would survive a half-glass of
>wine. The word makes me think about sacrificing cows.

    Bob, the standard is to sacrifice goats or chickens.

[snip]

Sincerely,

Gene Wirchenko

Computerese Irregular Verb Conjugation:
    I have preferences.
    You have biases.
    He/She has prejudices.
Bob Badour - 29 Nov 2007 02:36 GMT
> [snip]
>
>>Half-bottle of scotch? I don't think it would survive a half-glass of
>>wine. The word makes me think about sacrificing cows.
>
>      Bob, the standard is to sacrifice goats or chickens.

What the hecatomb are you talking about? Goats or chickens?!? As if!
Brian Selzer - 28 Nov 2007 13:07 GMT
>> "JOG" <j...@cs.nott.ac.uk> wrote in message
>> Each individual that existed, exists, or can exist has a property that
[quoted text clipped - 24 lines]
>
> Again, all in the real world, before we get to a database.

There is a third option: continuous observation.  If you never take eyes (or
the camera) off of the individual, there is no need to reidentify it, and
therefore no need for a constant identifier.

>> If one were able to examine the history of the butterfly, one should be
>> able
[quoted text clipped - 4 lines]
> I get your gist here but hope we can come back to it after you've
> looked at the above question. Regards, J.
David Cressey - 28 Nov 2007 14:07 GMT
> >> "JOG" <j...@cs.nott.ac.uk> wrote in message
> >> Each individual that existed, exists, or can exist has a property that
[quoted text clipped - 37 lines]
> > I get your gist here but hope we can come back to it after you've
> > looked at the above question. Regards, J.

Can you tell identical twins apart by examining their DNA?
Does twinning occur among butterflies?
Brian Selzer - 28 Nov 2007 14:28 GMT
>> >> "JOG" <j...@cs.nott.ac.uk> wrote in message
>> >> Each individual that existed, exists, or can exist has a property that
[quoted text clipped - 44 lines]
> Can you tell identical twins apart by examining their DNA?
> Does twinning occur among butterflies?

The DNA of identical twins is identical.  I haven't a clue whether it occurs
among butterflies.
David Cressey - 28 Nov 2007 16:50 GMT
> > "JOG" <jog@cs.nott.ac.uk> wrote in message

news:0c832d02-88f5-495c-ab2b-8098afcd8818@d21g2000prf.googlegroups.com...
> > >> "JOG" <j...@cs.nott.ac.uk> wrote in message
> > >> Each individual that existed, exists, or can exist has a property that
[quoted text clipped - 43 lines]
> Can you tell identical twins apart by examining their DNA?
> Does twinning occur among butterflies?

So DNA is not good for identity,  right?
Brian Selzer - 28 Nov 2007 21:11 GMT
>> > "JOG" <jog@cs.nott.ac.uk> wrote in message
>> >
[quoted text clipped - 56 lines]
>
> So DNA is not good for identity,  right?

I would have to agree.  DNA tells us "what" not "which."
JOG - 29 Nov 2007 12:01 GMT
> >> "JOG" <j...@cs.nott.ac.uk> wrote in message
> >> Each individual that existed, exists, or can exist has a property that
[quoted text clipped - 28 lines]
> the camera) off of the individual, there is no need to reidentify it, and
> therefore no need for a constant identifier.

How would you know that the insect your looking at now is the same one
as a second ago? You've tracked its (x,y,z) position. You've just been
continually checking another of its identifiers! And then you describe
the butterfly to someone else (after all this is shared data we're
talking about), and you refer to it as the butterfly you've been
watching, or the one on camera 2. More identifiers! 'Brian's'
butterfly or 'Camera 1' butterfly. In fact surrogates for the
butterfly's locational path!

> >> If one were able to examine the history of the butterfly, one should be
> >> able
[quoted text clipped - 4 lines]
> > I get your gist here but hope we can come back to it after you've
> > looked at the above question. Regards, J.
Brian Selzer - 30 Nov 2007 15:46 GMT
>> >> "JOG" <j...@cs.nott.ac.uk> wrote in message
>> >> Each individual that existed, exists, or can exist has a property that
[quoted text clipped - 38 lines]
> butterfly or 'Camera 1' butterfly. In fact surrogates for the
> butterfly's locational path!

Yet the (x,y,z) position may have changed from a second ago.  Clearly it is
possible for all observable identifiers for an individual to change from one
point in time to another.  What is different in this case is that since it
is being watched, both the old (x,y,z) and the new (x,y,z) positions are
known, and the comparison can be made.

Spatiotemporal location can only be used to permanently identify individuals
that have already come into existence.  For those that haven't yet, it is
not a rigid definite description and thus not a permanent identifier.
Although this doesn't appear to apply in this case since if the butterfly
exists, then the caterpillar must have already also existed, it is
problematic from the standpoint of determining what is possible.  For
example, it is possible for there to be a new blue caterpillar at point
(1,2,3) at noon today, and it is also possible for there to be a new red
caterpillar at point (1,2,3) at noon today; but it is not possible for there
to be both a new blue and a new red caterpillar at point (1,2,3) at noon
today.  So point (1,2,3) at noon today has multiple possible
interpretations.  It may seem like splitting hairs, but I think that there
should be a different identifier for the possible blue and the possible red
caterpillars since they are obviously different possible organisms.  If
point (1,2,3) at noon is used to identifiy both possibilities, then that
could introduce ambiguity into the determination as to whether one of the
two possibilities can become actual.

>> >> If one were able to examine the history of the butterfly, one should
>> >> be
[quoted text clipped - 7 lines]
>> > I get your gist here but hope we can come back to it after you've
>> > looked at the above question. Regards, J.
JOG - 30 Nov 2007 16:25 GMT
> >> "JOG" <j...@cs.nott.ac.uk> wrote in message
>
[quoted text clipped - 48 lines]
> is being watched, both the old (x,y,z) and the new (x,y,z) positions are
> known, and the comparison can be made.

What do you think you are watching exactly? New and old (x,y,z)
positions form a path, and that is what you are recording. I believe
you are not correctly viewing the 'insect entity' as a thing that
exists over a whole time period (t1 to t6 for example). The fact that
I am currently at t3 is irrelevant. The path is still an attribute of
the entity under consideration across its lifetime. The fact that I
can't observe it (being temporally placed myself) is also irrelevant,
because I just replace it by a surrogate (thats what surrogate means
after all - "in place of"). I believe this is the same issue you had
with workers who change their surname.

While we probably end up at the same conclusions of using a surrogate,
I /think/ you are confusing the scope of the entity's you are
considering. Say that t1 is the birth of the caterpillar, and t3 is
when it becomes a butterfly. Then I am certainly not contradicting
myself by saying:

butterfly entity != caterpillar entity
insect entity at t1 = insect entity at t3

similarly:
brian now != brian aged 5
person entity in 1970 = person entity in 2007

Its all relative identity. Regards, J.

> Spatiotemporal location can only be used to permanently identify individuals
> that have already come into existence.  For those that haven't yet, it is
[quoted text clipped - 25 lines]
> >> > I get your gist here but hope we can come back to it after you've
> >> > looked at the above question. Regards, J.
vldm10 - 28 Nov 2007 15:09 GMT
> Again, all in the real world, before we get to a database.

It seems to me that the discussion about the real world attributes is
not precise and formal. Obviously it is enough to say that the
identifier is the entity's attribute and that's that.
Entity by definition is real world distinguishable thing. For example
in my solution I defined that the identifier of the entity (or
relationship) is the entity's attribute. You can see it on my web
city. It is really simple.
My identifier also is identifier of the entity's (or relationship)
abstraction.

Btw, can be many combinations and cases - databases with abstract
entities (Donald Duck, Mickey Mouse, Pegasus...)
All computers' games are not from real world, there are databases for
future (an annual budget, for example), multimedia db, etc.

Vladimir Odrljin
vldm10 - 28 Nov 2007 18:26 GMT
> > Again, all in the real world, before we get to a database.
>
[quoted text clipped - 14 lines]
>
> Vladimir Odrljin

I would like to add to my previous message that sometimes ( it seems
to me) you mix technical and theoretical issues regarding the real
world attributes.

Vl. Odrljin
vldm10 - 26 Nov 2007 19:56 GMT
> > Not long time ago on this NG there were few posts which involved an
> > entity with 200+ attributes.
[quoted text clipped - 4 lines]
> identified by the collection of all its attributes - and hence you'd
> end up with an equivalent superkey.

The condition that the attributes are mutually independent is OK,
because it is about the relations that are in BCNF or 'close' to
BCNF.

> If any of those attributes
> "change" it would also therefore be a different entity altogether.

Here we don't design database for "frozen" real world objects, here we
design database for the changeable real world objects. "frozen" DBs
are kind of naïve databases, while "Temporal DBs"
are more general and can be very complex. So "temporal DB" is model
(should be) for the changeable entities.

> > 2) Every attribute of an entity can change its value - like in
> > "Temporal DB"
>
> Nope, not gonna squeeze that one past. If they are all unstable, well
> then, you are saying there is not a single attribute that is
> consistent over the entity's lifetime?  

This condition is also OK. They are not all unstable. This means that
in a row, one group of the attributes is changeable, but in another
row another group is changeable. It is also possible that all
attributes in one row are changeable. In Date, Darwen & Lorencos book,
this case has the special attention. ( I didn't know that J.Leffler
also has contribution in the book)

Vl Odrljin

> In that case how could you
> ever identify it in the real world following change? Perhaps hire
[quoted text clipped - 19 lines]
>
> - Show quoted text -
JOG - 27 Nov 2007 10:05 GMT
> > > Not long time ago on this NG there were few posts which involved an
> > > entity with 200+ attributes.
[quoted text clipped - 57 lines]
>
> > - Show quoted text -

Again I fear there is confusion between conceptual and logical layers
here. Unfortunately I can't entirely follow your posts Vladmir so I
can't be sure - i think we have a language barrier at work. However, I
would suggest looking at the work of Geach if you are really
interested in modern ideas about change and relative identity.
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2009 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.