Skip to content

DBAzine.com

Sections
Personal tools
You are here: Home » Of Interest » Articles of Interest » Slashing a Slashdot Exchange - Part 3
Seeking new owner for this high-traffic DBAzine.com site.
Tap into the potential of this DBA community to expand your business! Interested? Contact us today.
Who Are You?
I am a:
Mainframe True Believer
Distributed Fast-tracker

[ Results | Polls ]
Votes : 4456
 

Slashing a Slashdot Exchange - Part 3

by Fabian Pascal

Part 1  |  Part 2  |  Part 3  |  Part 4

Last month, I debunked some of the most egregious reactions in a long exchange of mostly hot air to a previous column If You Liked SQL, You’ll LOVE XQuery. In this article, I tackle the comments by one Ankh, who ought to know better, as a participant in the W3C XML Query Working Group, who “[is] also the w3C XML Activity Lead,”

Ankh: “The article seems to say ‘I don’t like SQL and I don’t like XML and I think XML Query is about merging them although I don’t understand it very well, so the people working on XML Query must be stupid, and in any case it’s easier to attack people than understand a specification.’ Perhaps that’s unfair, but it’s clear to me that the writer is a little fuzzy on the design goals of XML and also on the focus of SQL development over the past 10 or 15 years. In both cases the story is about interoperability.”

Wow! What is one to think of anybody whose conclusion from reading my article is reduced to “Fabian Pascal doesn’t like SQL and doesn’t like XML,” completely ignoring the grounds for my criticism? That he does not understand, or cannot address them? That he does not distinguish between reasoned substantive criticism, dislike, and personal attacks? Where in my article did I say anything about “merging XML and SQL,” and what exactly does that mean? Before we come up with any “specifications,” aren’t we supposed to understand and be clear about what it is that we are specifying, and for what purposes? And Ankh has the nerve to say that it is I who don’t understand?

Perhaps that’s unfair? There I was, arguing for the precision and clarity of logic and math as a scientific foundation for data management, and here comes Ankh, throwing vague buzzwords like interoperability around, and defending specifications that had to discard and replace the core entity on which they were supposed to be based — the document — and I am the one who is fuzzy? This takes the cake.

Interoperability is one of those terms that, together with middleware (see below), integration and so on, are to the IT industry what motherhood and apple pie are to society at large: everybody claims them as objectives precisely because they mean nothing in the abstract, and they sound good for marketing. An agreed file format for data exchange and a data model for database management both serve interoperability in some way, but that does not mean that they should be confused.

Ankh: “If you look at the XML Query Home Page [w3.org] you’ll see approximately two dozen implementations of the XML Query draft, including a number of open source ones. If you look at the public mailing list for comments, you’ll see we received over 1100 detailed technical comments at the last public review. So there’s a lot of interest in this work. Why is that? One reason is that, like Web services and SOAP, XML Query is able to replace a lot of proprietary and hard-to-maintain middleware. Another reason is that for the first time we’ll have a standard way to search over multiple kinds of data source.”

That there is a lot of interest in what the industry is doing does not necessarily mean that what is being done is correct, or sensible; in fact, just the opposite, I would venture to argue. Given the state of knowledge, of which the Slashdot exchange is a sad, but representative example, neither is a high volume of comments an indicator of anything of substance. Precisely because of poor foundation knowledge, the IT industry and media operate like the fashion industry, hyping all sorts of fads that are neither sound, nor based on merit, and forcing uneducated users to accept them by threatening with “being left behind.” The rush to implement a draft without a clear understanding of fundamentals, and without considering adequacy to task, soundness and functionality, is hardly surprising in these circumstances (for a fundamental framework in data management, see Practical Database Foundations paper #4, “Un-muddling Modeling,” and “Models, Models Everywhere, Nor Any Time to Think”). To the contrary, it is predictable, and historically has actually defeated interoperability and lowered productivity.

It’s never been clear what exactly is middleware (now there’s a fuzzy term, if there ever was one), but I do know quite well what data exchange and database management are. And I reiterate what Ankh does not address at all in his comments: XQuery was neither necessary for the former, nor technically defensible for the latter. As I argued so many times, XQuery is the sort of thing you would come up with if you did not understand the difference between data exchange and data management, between syntax and semantics, between a physical format and a logical structure; you would then talk about “searching over multiple kinds of data sources” — another fuzzy concept attractive for marketing purposes — without really understanding the logical and practical implications.

Ankh: “Don is the primary editor of the XQuery language, but the technical decisions reflected in the specification are a result of collaboration, and are agreed on by a consensus process by a much larger number of participants. The goal is to make a language that people agree to implement and to use. With support announced by Microsoft, Oracle, IBM, BEA and others (see Web page mentioned above) and judging by the public interest, I think it’s fair to say that’s going to happen.

It’s pretty rare to see a large complex system that everyone is happy with. It’s actually pretty rare to see a small system that everyone is happy with. There are people who are unhappy with some features in the Unix cat program, but it’s better to have cat in every Unix system than to have millions of shell scripts break on systems where it’s missing! The trick, then, is often to include features that will lead to massively wider adoption, even if some people would rather be without them.

Then we have (as part of W3C Process [w3.org]) a public call for implementations so that we can test to see how confident we are that all the major features can be implemented compatibly (i.e. interoperably) in multiple independent implementations. Features that were not implemented get removed before the specifications are final.”

In my article, I provided evidence that Chamberlin’s understanding of data fundamentals is poor; and, based on the input and output of the W3C XQuery work group, this is likely true of other participants, including Ankh (see, for example, No Database Champion). Ankh does not address any of this. His comments are completely irrelevant insofar as my arguments are concerned. Standard committees are, indeed, political (and essentially commercial by virtue of their membership) entities, all the more reason to insist on reliance on a scientific basis, whenever available. There is neither justification for, nor public benefit from such panels ignoring or dismissing sound formal foundations, and no consensus or public input can substitute for that. SQL is a case in point.

Ankh: “Is XML Query a waste of time? Is XML evil? Is SQL evil? A lot of people think otherwise, and some of them are pretty smart, so if you are concerned, take the time to read the specs and decide for yourself.”

Evil? How infantile. Waste of time? Worse: it is technological regression. The last quotation from Chamberlin in my article is clear evidence that he does not understand the relational model, and is unaware that Codd invented it precisely to avoid old problems that are reintroduced by XML/XQuery.

“In a relational database, the rows of a table are not considered to have an ordering other than the orderings that can be derived from their values. XML documents, on the other hand, have an intrinsic order that can be important to their meaning and cannot be derived from data values. This has several implications for the design of a query language. It means that queries must at least provide an option in which the original order of elements is preserved in the query result. It means that facilities are needed to search for objects on the basis of their order, as in ‘Find the fifth red object’ or ‘Find objects that occur after this one and before that one.’ It also means that we need facilities to impose an order on sequences of objects, possibly at several levels of a hierarchy. The importance of order in XML contrasts sharply with the absence of intrinsic order in the relational data model.”

One can read specs to kingdom come, and will not be able to draw any meaningful conclusion without foundation knowledge. While I never said in my article, as Ankh claims, that the W3C participants are stupid — I only questioned their knowledge of fundamentals — based on the caliber of Ankh’s reaction, I am prepared to reconsider.

--

Fabian Pascal has a national and international reputation as an independent technology analyst, consultant, author and lecturer specializing in data management. He was affiliated with Codd & Date and for 20 years held various analytical and management positions in the private and public sectors, has taught and lectured at the business and academic levels, and advised vendor and user organizations on data management technology, strategy and implementation. Clients include IBM, Census Bureau, CIA, Apple, Borland, Cognos, UCS, and IRS. He is founder, editor and publisher of Database Debunkings, a Web site dedicated to dispelling persistent fallacies, flaws, myths and misconceptions prevalent in the IT industry. Together with Chris Date he has recently launched the Database Foundations Series of papers. Author of three books, he has published extensively in most trade publications, including DM Review, Database Programming and Design, DBMS, Byte, Infoworld and Computerworld. He is author of the contrarian columns Against the Grain, Setting Matters Straight, and for The Journal of Conceptual Modeling. His third book, Practical Issues in Database Management serves as text for his seminars.


Special Offer: Author Fabian Pascal is offering DBAzine.com readers subscriptions to the Database Foundations Series of papers at a discount. To receive your discount, just let him know you’re a DBAzine reader before you subscribe! Contact information is available on the “About” page of his site.


Contributors : Fabian Pascal
Last modified 2006-01-04 01:39 PM
Transaction Management
Reduce downtime and increase repeat sales by improving end-user experience.
Free White Paper
Database Recovery
Feeling the increased demands on data protection and storage requirements?
Download Free Report!
 
 

Powered by Plone