Lists Home |
Date Index |
I agree with you. This is what I have been trying to say, in a nice way, to
folks here and in f2f meetings. Folks who have said that all the benefits
of RM can be had in XML and / or that XML will support RM. Folks who have
also said that XML is a "better" technology for large data stores than RM
without offering any XML oriented proofs that satisfy the issues which RM
was designed to resolve.
Now, while I use alot of theory, and try to adhere to all the best
practices, I am a software engineer by training and profession - I build
systems using RM (usually in Oracle), and I generate XML docs as what data
systems people like me normally refer to as "reports".
So when someone says to me that an XML doc is, also, a database, and is
better at being a database than Oracle (or your favorite vendor) it gives
me heartburn. Someone actually said that to me, quite emphatically, recently.
When I responded that my concern was that the embedded logic in the XML doc
file did not support normal forms, or relations, their response was "what
do you mean.... relations?"
Ah Ehm. I remain taken aback, and astonished, and somewhat shocked and amazed.
For sure, people are trying to do terabyte systems that integrate
normalized data and legacy document data stores (such as the journal
"Nature"), primarily in XML, that is to say by converting out of an RDBMS
like Oracle and into pure XML docs without a dbms back end. This is the
source of my concern. They need some guidance, and will certainly receive
it, in one form (gentle comments in forums like this one) or another (when
their systems fail in production, or worse, never get past failed prototype
Still, I remain open minded, and if someone can offer proofs that support:
- XML as a best practice (in any regard)
- XML as supporting RM
- XML as a programming language (embedded logic, etc)
- XML as ISO 9000 compliant
- XML as CMM complaint
I will gladly hear it. I do like to use the right tool for the job.
At 12:10 PM 8/25/2003 -0400, Jonathan Robie wrote:
>At 01:23 PM 8/22/2003, email@example.com wrote:
>>I am saying I have not seen a proof that XML supports, or can be
>>engineered to support, the Relational Model.
>XML is not relational - it uses a different model. The Relational Model
>does not support XML either. Computer science generally does allow for the
>existence of more than one model.
>There are two query languages that you may be interested in. SQL/XML is an
>extension of SQL that allows XML to be created as the result of a
>relational query. Oracle and DataDirect have both added extensions to
>allow relational data to be updated from XML. This is a simple way to add
>XML support to relational databases without dramatic changes to the
>The Working Drafts for SQL/XML are here:
>Here are two ACM articles by Jim Melton and Andrew Eisenberg that make an
>XQuery is an XML-centric query language that does have formal semantics.
>If you look at the people associated with the development of XQuery, you
>will find quite a few people with extensive background in relational
>databases, including Don Chamberlin, who invented SQL together with Ray
>Boyce, and Jim Melton, the current editor of SQL. If you look at the
>papers at any academic database conference these days, you will find work
>on algebras for XQuery, optimizing XQuery, using XML views of relational
>data, etc. Of course, XQuery *is* new, and the first XQuery-based systems
>may not be as highly optimized as the current SQL systems, which have been
>around a lot longer.
>The XQuery specs can be found at (http://www.w3.org/xml/query.html). To
>get a feel for the language per se, start with the use cases
>(http://www.w3.org/TR/xquery-use-cases/). You may be particulary
>interested in the Data Model (http://www.w3.org/TR/xpath-datamodel/) and
>the Formal Semantics: (http://www.w3.org/TR/xquery-semantics/).
>>For the sake of clarity, let me try to summarize in just a few lines in
>>just one post:
>>1) One reason the Relational Model was developed was to reduce coding and
>>design efforts required throughout the application life cycle, while
>>offering as much flexibility and reliability as possible.
>>2) Data based applications developed using the Relational Model, which
>>are well engineered and designed, will feature lower cost over time with
>>greater flexibility. One rule of thumb is that maintenance costs will be
>>less than 1/100th of the development (or all pre-production costs).
>>3) XML applications are all data based applications, whether you call
>>documents data as a structured formatted element, or data as a set or
>>group of elements. IE there are no XML applications that do not contain
>>or process data elements.
>>4) Rigorous, scientific proofs exist, and are easily found, for adherence
>>to the Relational Model (RM). Saying that something supports SQL does not
>>say it can implement or adhere to RM, because SQL support does not
>>require RM compliance or support per se.
>>5) I have seen nothing better than RM for improving software application
>>reliability, flexibility, maintainability and lowering software system
>>costs overall. If something better exists, as a methodology with
>>scientific proofs, I would dearly like to see it.
>>So. My point is that I have not seen a rigorous, scientific proof for RM
>>via XML or any XML tool set.
>SQL databases have clearly been a huge breakthrough for practical
>computing environments. The pure RM, as you imply, has never been
>implemented, and purists like to lament that fact. Perhaps it would have
>been wonderful if it had been implemented, perhaps the failure to convince
>companies to implement it despite campaigning for it over the course of 25
>years indicates that there may be a reason it was never implemented by the
>major relational database companies.
>As for rigorous, scientific proof, it is important to be clear what
>constitutes proof and what it constitutes proof of. Relational databases
>are what people had before XML. People have now gone to XML for many
>classes of applications, especially document-oriented applications or
>those that exchange structured information across the Internet. Do you
>have any rigorous, scientific proof that the RM can improve anything for
>these applications compared to XML?
>There is plenty of good research behind XML query systems based on SQL/XML
>or XQuery. For a good algebra, you may want to look at:
> TAX: A Tree Algebra for XML (2001)
> by H. V. Jagadish, Laks V. S. Lakshmanan, Divesh Srivastava, et al.
>Citeseer is down right now, but I would look at the 12 papers that cite
>this as well.
>>This leads me to conclude that a very high probability, almost a
>>certainty, exists that any XML application will endure the specific
>>issues which RM was designed to resolve. Especially large scale data
>>based applications featuring significant or exclusive XML usage.
>I think it would be silly to assume that the SQL/XML people working as
>part of the SQL standards process have not heard of the relational model,
>and it just so happens that the XQuery people have heard of it too. I do
>not come from the relational world, but many of us do. So far, your
>argument is basically that the relational model is tried and true, and XML
>is not based on it. That's all true. But are you saying that software
>should never be allowed to use any other model?
>>As a Software Engineer, someone who majored in Computer Science, I have
>>grave concerns about applications already deployed, or in development,
>>that make significant usage of XML.
>Most of the advantages you claim above for the RM are actually advantages
>of implemented SQL systems in use today. We have 30 years of experience
>with these systems, they have been optimized over the years, and they
>work. As you say, they are not pure RM systems. If you scrounge around on
>citeseer, you will see that a lot of research is being done, but it seems
>that a lot of what you want is actual performance and productivity, which
>you measure on working systems rather than models.
>The first XQuery systems will not be based on 30 years of experience, but
>they will be based on many years of theory. Many of them will be
>translating XQuery directly to and from SQL, using an XML view of a
>relational database. The performance of these systems will depend on the
>quality of the generated SQL. Others will use native XML persistent
>storage, with associated indexes. Some will do a combination of the two.
************* NOTE: ************************
Copyright CDS, Inc, 2003. All rights withheld.
The information in this message is strictly confidential and may be
legally privileged. It is intended solely for the addressee. Access to
this message by any other person is prohibited. If you are not the
intended recipient, any disclosure, copying, distribution or any action
taken or omitted
to be taken in reliance on it, is prohibited and may be unlawful.
Please immediately contact the sender should this message have
been incorrectly transmitted.
This message text and any attached files are Copyright CDS, Inc 2003, and
may not be
reproduced, copied, distributed or released by any mechanical or electronic
All rights are withheld.