Denial of the Hierarchy

From: Derek Asirvadem <derek.asirvadem_at_gmail.com>
Date: Wed, 18 Feb 2015 00:23:55 -0800 (PST)
Message-ID: <258d322b-a93b-4361-8885-0a4f53216a08_at_googlegroups.com>


James

> On Tuesday, 17 February 2015 22:53:24 UTC+11, Derek Asirvadem wrote:
> > On Monday, 16 February 2015 12:08:01 UTC+11, James K. Lowden wrote:

> > Now that I've described the design, I want to take you to task.
>
> Be my guest.
>
> > You've posted a few colorful rants about the nonexistence of
> > bona fide circular references in the real world, and therefore in
> > database designs.
>
> Yes, and that should be propagated far and wide, if only to counter the pig-poop being propagated.
>
> > ISTM you overlook mutual dependence.
>
> What in God's name is a "mutual dependence" ??? Sounds like the thing homosexuals do, before one of them slaughters the other.
>
> > There are
> > reasons to have tables with 1:1 cardinality with both components
> > mandatory. Sometimes the reason is physical, because one part is
> > updated or referenced or replicated more than the other. Others are
> > logical, as with this securities design. There's perfectly nothing
> > wrong with it relationally, and yet the semantics cannot be enforced
> > with standard SQL.
>
> I have had the challenge (give me an example of a "very very necessary" circular reference and I will give you the Normalised, Relational solution without it) out for over a decade, and I have proved it at least twenty times in that decade. The issue is often tangled up with misunderstanding of what normalisation is; with implementing a set of rules "because the business said so". Which I didn't believe is the case with you, but now that we have evidence of many non-relational things that you do implement, it may well be.
>
> One thing I will declare, that you yourself have provided evidence that you do understand, circular references are simply, flatly illegal in the RM.
>
> As per the the challenge, I need a real world example, that can be worked, not a theoretical discussion, which is endless. So please give me that, or confirm that (eg.) the Security model you have given is a valid example of a circular reference or "mutual dependence", and I will work that and close it.
>
> > You have wickedly mocked the need for deferred constraint enforcement
>
> (Henceforth DCC for short.)
>
> Yes.
>
> But whoa, wicked is the realm of the devil. The devil is the one who preaches filth, anti-RM, falsities, "deferred constraint checking is very very very necessary".
>
> I don't preach. I don't go looking for it, I just walk around destroying the filth wherever I see it. Therefore it is not I who is "wicked", the one who does good cannot be "wicked". Except when it is the devil speaking.
>
> I have no problem mocking the devil, and his minions, the curse of humanity. Destroy is probably more accurate.
>
> > -- constraints that apply to the transaction, not to the statement --
>
> Yeah, I know all that, I spent three years doing hard labour at the TTM slave labour camp.
>
> There, in that one sentence (ok, two clauses), is the entire falsity stated. If you do not understand that, you are already seduced, a victim, of the pig-poop-eaters, and you are henceforth eating the pig-poop they feed their slaves.
>
> For context, you understand that most of the argument you had against ERwin is dishonest, because as you stated, you cannot fault ERwin for NOT being something that it is NOT declared to be. Good. You understand that most of the argument you had against SQL is dishonest, because as you stated re ERwin, you cannot fault SQL for NOT being something that it is NOT declared to be. Good. Ok, so that is the context for this one.
>
> Now for the specifics. See if you understand and agree with each of these statements, in the sequence given. That will result in a set of agreed facts, and leave a small number to be dealt with, resolved.
>
> 1. ACID Transactions are an imperative for OLTP. It has existed in software since 1960, CICS/TCP.
> 2. Database Consistency (the [C] in ACID) is statement level.
> 3. DBMS with full ACID transactions existed for a decade before the RM, for two decades before a RDBMS platform arrived
> 4. SQL Standardised the RDBMS market.
> 5. SQL in it s entry-level compliance requirement, in its first edition (89?) demands ACID transactions. (The RDBMS vendors provided it long before the SQL Standard demanded it, from 1984 in my experience, but it may be earlier.)
> 5.1 Constraints are applied at the statement level, same as ACID.
> 6. [2] is now confirmed for sixty five years, in a variety of platforms.
> 7. Those who follow the RM and ACID, do not need either circular references, or DCC.
> 8. We do not need "convincing" of the need, the need is for pathetic non-technical people who are struggling in some technical position.
> 9. It is for the people who are "convinced" of their very very necessary need, to learn from the people who do not have the need, who have enjoyed the simplicity for sixty five years, what they do, and how they do it.
> 10. Imbeciles such as C J Date (aka TweedleDee) and Hugh Darwen (aka Andrew Warden aka TweedleDumb), who have consistently demonstrated that they have no technical ability whatsoever, suggest that there might be another way. After Dropping ACID.
> 11. After violating the RM so horribly, that they end up with circular references.
> 12. After misunderstanding SQL so terribly, that they end up with circular references.
> 13. Technical, scientific people [8] couldn't care less.
> 14. Non-techical or unscientific people, their slaves, follow their non-logic, without question.
>
> So it is a gross contradiction, a disgusting lie, to state "constraints that apply to the transaction", coz there ain't no such thing, sonny boy. Never has been. You EITHER have transactions, which maintain and support constraints (the [C]), which are statement level only, XOR you have strings of SQL that run all over the neighbourhood without being able to find their home.
>
> If those poop-eaters had half a teaspoon of honesty, they would define a new model, and it would be complete, "constraints" that apply to a "transaction, not the statement". As you know, they have produced none such, neither model, nor language, definitively, for twenty years, and they are still arguing about the meaning of TYPE, for the third time. It is all flimsy descriptions that keep changing.
>
> But they are proud sons of the devil, their intent is not to create something, but to destroy something good. So they redefine the universe, for every definition, they have some pathetic exceptional case (like special needs kids who can't wipe their backsides), and for these special needs, instead of fixing their problem, where it exists, they demand the whole universe has to change, so that the whole universe has their problem. There, see, they are special needs retards any more.
>
> Database design is for undamaged humans. Imbeciles have a hard time.
>
> Learn how to normalise data, Relationally, such that you do not have circular references, so that you don't feel "deprived" when your vendor doesn't supply DCC. We live in that "deprivation" and love it.
>
> Anyway, just give me a real world example, or confirm the Security one, and I will resolve it for you.
>
> > on the theory that all such mutuality is illusory.
>
> Not just illusory, simply, you have unfinished, incomplete definition. Don't code a single line (that includes DDL) until the definition has been completed.
>
> > But you are in a
> > trap: if it's OK to have two non-null attributes on one row (1:1
> > mandatory cardinality), why is it not OK to have the same relationship
> > between two attributes on two rows? And if 2 tables can be related
> > that way, why not 3 or more?
>
> You are talking nonsense. Since when does a column that is functionally dependent on a key have "cardinality" with the key or "mutual dependence" on it. The notion is ridiculous.
>
> And then you take that ridiculous, false, special-needs notion, and you say you can't apply that "relationship" to another context. Good. The notion was absurd the first time, and it remains absurd the second time.
>
> The trap is yours, of your own making.
>
> And just in case that special-needs notion comes from some abstraction that you guys love, that we real-universe types have no knowledge of, then be advised that you have abstracted yourself into a state of ridicule, and into a trap of your own making.
>
> Since I am ultra-legal, since I comply with the RM and SQL, I don't have the special needs; the circular references, I don't need DCC, and the trap doesn't work on me.

First I will emphasise two points, and then I have one very very very important additional point that underlies the *entire set of problems* that you experience.

Trapped

It is interesting that you use that word. By virtue of the evidence, it is you who is trapped. In 2015 (or 1999 or whatever), you have a fairly straight-forward little database with subtypes that were given to us in 1970. But you have no integrity in those structures. It isn't a database at all, it is not Relational for other reasons such as circular references, and lack of complete Normalisation. But the integrity is by far the most important. Why are you in that situation ? Who placed you there ?

And you are perturbed, it always bothered you. When the chance comes up, you, a man of your stature, is reduced to asking a dumb implementer, how to implement the structure with integrity.

I have hundreds of the same. Full Integrity. Full Relational. Full Normalisation. Zero circular references. Why am I in this situation, who placed me here ? The incomparable, the great, the father of the RM, and the grandfather of everything we touch, Dr Edgar Frank Codd.

Pity you don't listen to him. Pity you listen to monkeys instead. They will trap you, and they do so with such trickery, such fraud, that you will believe you aren't trapped, that the entire world of implementers ho don't have you problem, are trapped.

What are Theoreticians in this Space Crippled, Trapped

One clear and present reason is that which is set out above. My whole post, as well as the emphasised point re Trapped.

You guys have apes for teachers.

Denial of the Hierarchy

This is a huge point, and a huge problem, the cause of an endless litany of problem affecting the entire human world. I do no mean to suggest that it started with the imbecile TweedleDee or his bedfellow TweedleDumb. It starts with the devil, and his minions, destroying the hierarchy that exists in nature, in God's Laws, in human laws. In the last century and a bit the devil's children have escalated their war on humanity, and the vehicle they use, no surprise, is the destruction of the hierarchy. Deicide; regicide; genocide; the destruction of the family. The new age: freedom; equality; fraternity. Liberalism, communism, darwinism (darwenism), modernism.

The point I am making with that history, is that it permeates everything, it is in every show that you watch on the propaganda machine in the living room. You have been trained to love it because it is FREEDOM, EQUALITY. Anyone against it must be mad. Er, and you have no idea that it is slavery, and slavery to the devil.

The point is that it is planted deep, and watered daily, in every aspect of life. It is psychological. So when I come along with the simplest of medicines, you rebel, and violently, because somewhere in your unconscious mind, you realise it is not just the circular reference that I am rejecting, correcting, that the whole deck of cards is threatened, vulnerable.


Everything that works, works *because* it honours the hierarchy.

Everything that breaks, breaks *because* it denies the hierarchy.

Everything. I will, however, limit the rest of the discussion to our field.

Deadlock

I have never written a deadlock in my entire life. Ever since 1979, as an employee for the DBMS vendor, through to now, I have cleared deadlocks that customers have written, millions of instances in the code (not occurrences, which would be billions or trillions). The method is Normalisation of Transactions, honouring the hierarchy, although it does not have that name. The fault, was always the same, ignorance of the hierarchy. I learned the method in 1976 from the CICS/TCP boys, and it can be applied anywhere, to any software.

>>>>
Normalisation

As in the science, the whole principle, applicable in every area of the project, specifically NOT the rat-bag collection of NF fragments that you guys are aware of, plus all such fragments that you may collect in the next 100 years, combined.

Normalisation is inseparably bound to the hierarchy. Normalisation minus the hierarchy is an empty shell (better than your isolated fragments, but a fragment none-theless). As clearly stated by Codd in his RM, in several place. That last quote, specifically re resolving circular references, normalising the trees.

Normalisation is integration with the hierarchy. Normalisation whilst ignoring or rejecting the hierarchy is, well, disintegration. <<<<

Circular Reference

Codd certainly understood the tree, the DAG, the Hierarchy. Which is why he nominates Normalisation as the method for resolving circular references. Codd honours the hierarchy, and gives specific instructions on how to deal with each aspect of it in his Relational Model. Separate to "the HM is fundamental to the RM", which is treated in the other thread. Since I understand Normalisation, and I understand Codd, I have never *needed* a circular reference.

Let's look at the corollary. What you call a "bona fide need for mutual dependence".

__ Mutual dependence: 
____ occurs only if you reject the hierarchy
____ occurs only if you believe in Kant, equality, and all that buffoonery, most recently showing its face as homosexuality and destruction of the family
____ occurs only if you ignore Codd's laws re RM, re Hierarchies
______ (Functional Dependence is a one-way street; the attribute is not equal to the key)

__ Need:

____ occurs only if you reject the hierarchy ____ occurs only if you ignore Codd's laws re RM, re Hierarchies
__ Bona Fide:
____ occurs only if you rebel against authority, which is a form of rejecting the hierarchy
____ occurs only if you rebel against authority, Codd's laws re RM, re Hierarchies

__ DCC
____ Insitutionalised rebellion against authority.

Rejected on all points.

The cure, the correction, the fix-up, complete and total release from the problem: honour the hierarchy. Follow Codd's laws re the RM, Normalise your references. Follow engineering principles re the unequal Data vs Process.

Cheers
Derek Received on Wed Feb 18 2015 - 09:23:55 CET

Original text of this message