From: Colin SaxtonÂ
Date: 16 Sep 2005
I have been involved in IT now since the late seventies and
it ceases to amaze me that developers are starting to embrace XQuery ... what
was wrong with extending SQL? After all, its name implies Standard Query
Language ... just because SQL was developed for tabular data doesn't mean that
it cannot be extended to work with tree/networked data!
Why do we feel the need to create a completely new language
when we could have, and should have, extended SQL?
Another example is SOAP (Simple Object Access Protocol) where
it has now become so bloated and over complicated that it has exceeded its
original design of being , well, Simple!
(I won't even start on why the industry has adopted a form of
passing data that effectively quadruples the network load of any structure that
uses it!!?? I sometimes think that XML was created so that hardware sales would
increase through the extra network load)
I think that its about time that the community introduced
some common sense into the standards bodies!
From: Fabian Pascal
Well, you're right about how industry operates, but wrong
about extending SQL.
1. The industry has always produced fads that do not address
fundamental problems, but rather create problems of their own. XML is just the
current one in a long series, and it won't be the last. I predict that several
years from now, it will push some other fad which will cure all the problems
XML creates. And so it goes.
2. To support a tree representation of data means to violate
the relational model, which was invented to obviate the need for any other
logical structures that add complexity, but no power. For somebody who was
involved in IT from the 70's, you should have known that RM was intended to
address the problems caused by hierarchic databases and DBMSs, of which XML and
XQuery is just a repetition.
As long as the industry remains ignorant of data fundamentals
and of its own history, it will continue to operate this way which, in the
presence of poor knowledge and reasoning by users, is very profitable.
From: Colin Saxton
I can see what you mean from point 2 but why would it be not
viable to extend SQL so that it can work with tree/network structures? I cannot
see any reason why it cannot. Its original spec was for tabular data and it has
performed that very well but there is no reason why it cannot also be extended
to work with other more complex structures. That way we keep a Standard Query
Language and build upon what we already have instead of fragmenting into other
query languages. All the practices that surround SQL are geared towards 3NF and
nice tabular structures but we need to start thinking in more broader terms and
SQL really should be the starting point for all of this ... Do you not agree
that it would fit better with the industry?
From: Fabian Pascal
It's not a question of "cannot", but "why
should it".
And piling up things into something that was not initially
designed for that purpose is something that the industry keeps doing with lots
of awful consequences.
Ed. Comment: Not
that SQL is a good language for what it was designed for.
Posted 11/4/2005