Re: What is the logic of storing XML in a Database?

From: Aloha Kakuikanu <>
Date: 29 Mar 2007 09:45:07 -0700
Message-ID: <>

On Mar 28, 11:51 pm, Stefan Nobis <> wrote:
> "Daniel" <> writes:
> > As it is, I don't think you fully understand the problems that are
> > being solved by XML.
> Are you sure you understood? I was not involved in the history and
> emergence of XML, so I also have no real idea, what XML was supposed
> to solve.
> But the problems many people today *think* XML solves, are way behind
> the possibilities of any markup language or meta language!
> XML may solve many *minor* issues with protocol formats, maybe with
> XML and a really good designed Schema most syntactic problems really
> vanishes.
> But in communication syntax is a minor problem. The main problem is
> semantic.
> And the problem of syntax is easy solved by many tools (there are
> parser generator around for ages -- so why do you think making up your
> own specialized parser is so much harder than to come up with a really
> good designed schema for a meta language... do you think it's so much
> easier to write your spec in some XML schema language than in EBNF).

Parsing is indeed a mature technology, although it never progressed to be accessible to an average programmer. The field flourished with ideas in the 60s. At that time computer power was quite limited, this is why practical emphasis was on efficient parsing methods. LA(1) and LALR quickly became standard; both having linear parsing time complexity. Still, many grammars, such as C, escape realtively narrow class of grammars for which there is a standard linear time parser. As a result, if you write an arbitrary CFG, most likely it won't fit into off-the-shelf parser.
There has to be a (relatively) labor intensive manual step of transforming the grammar into LA(1) or LALR form.

Gradually parsers evolve to embrace more powerful (but slower) parsing methods. The popular bison parser, for example, has been extended to implement GLR method, which handles arbitrary context free grammar. Still, BNF remains to be language that most programmers don't speak.

The situation is somewhat reminiscent to database area. Imagine, relational algebra as the only RDBMS language available. Suppose there is no SQL, or any other dumbed down alternative. Would RDBMS enjoy the same level of success? (Given that language theory has only two operators, even more extreme example would be using relational lattice algebra which also has only two operators). Received on Thu Mar 29 2007 - 18:45:07 CEST

Original text of this message