Re: Relational-to-OOP Tax



In article <1172461548.246287.162080@xxxxxxxxxxxxxxxxxxxxxxxxxx>,
danielaparker@xxxxxxxxx says...

[ ... ]

The issue is context.

One of the issues -- a major one, but not the only one by any means.

Hierarchical representations of data have been very successful - when
placed within a specific context. Modern programming representations
of data tend to be hierarchical, transport formats sent over a wire
are increasingly being represented in a hierarchical XML format, the
older SWIFT formats are hierarchical, a marked up document is
hierarchical. In all these cases there is clear context in which the
data is used, the application, the receiver of a transport format,
etc. It's also useful to have a standard querying language to query
these things, so XQuery is useful, even potentially for programming
constructs, particularly for expressing constraints declaratively
outside of the application proper, allowing configuration. This has
been observed practice, and if Topmind and frebe don't like it, well
they can make whatever claims they like, but the world moves on.

When there isn't a specific context, when data is intended to be held
as data, servicing many uses, then it's hard to beat the RDBMS. XML
databases appear to be poor to mediocre as generic representations of
data.

True but mostly irrelevant. In fact, the same can (largely) be said of
relational databases as well. Just for example, nearly nobody doing text
mining work uses relational databases (or SQL databases -- which aren't
the same thing). Nearly everybody who works in this area attempts to use
a SQL database to start with, and switches to something else because
they have little real choice.

SQL supports a fairly general version of basic, structured data, but the
minute you get into less-structured data, it tends to fall apart.

As for the assertion that SQL isn't really relational, I'll defer to C.
J. Date: "As I've written elsewhere many times, the biggest problem with
SQL is precisely that it doesn't support the relational model."

[http://www.intelligententerprise.com/db_area/archives/1999/990106/onlin
e1.jhtml]

Getting back to the original claim that relationalism is all that's
needed, Date and Darwen addressed this quite thoroughly in: _Foundation
for Object/Relational Databases: The Third Manifesto_. Date summarizes
the relationship quite succinctly: "As Hugh Darwen and I have shown in
The Third Manifesto,2 object functionality and the relational model are
completely orthogonal to one another." He goes on to quote from the
third manifesto: "The relational model needs no extension, no
correction, no subsumption, and above all no perversion, in order [to
support object functionality]." All that's needed is to support
relational domains properly (which SQL never did)..."

(ibid)

One point some might find interesting: I included XQuery in the list
largely to "throw them a bone", so to speak -- I thought even "Topmind"
or "Frede" might know enough to show that.

My recommendation for both of them would be to read _Database in Depth:
Relational Theory for Practitioners_ (by C.J. Date, 2005, published by
O'Reilly). Of course, they should also read the Third Manifesto, but
based on their writing, they need to do some other reading first.

--
Later,
Jerry.

The universe is a figment of its own imagination.
.