Lists Home |
Date Index |
Didier PH Martin wrote:
> Hello Paul,
> Paul said:
> > Please give a concrete example where you have run into these
> > limitations.
> Didier replies:
> With pleasure. To give you the exact query is beyond the limits of my memory
> but I can explain the difficulties I encountered. When I wanted to obtain a
> particular document from an Oracle DB using the XDK to be included with
> the XSLT document function, this ended with the limitations of the actual
> "document" function limitations.
My point in the article I referenced is that the web is a system with
its own data model. If you want to get the full benefit of the Web you
need to map things into that model in the same way that you only get the
benefit of SQL by mapping things into the relational model. The web is
flexible enough that you can hack your way around the model (much easier
than you can in, e.g. SQL) but then you will run into limitations like
the SQL encoding issue.
Rather than trying to figure out a One True SQL mapping, I would
encourage you to think: "what are the resource types that I am trying to
transmit." Invent XML vocabularies for those. Use simple ASPs or CGIs to
build those XML documents based on URI queries. This shifts effort from
the client to the server. That's usually good in and of itself (it
allows simpler clients) but it also means that you will work better with
other parts of the Web infrastructure like XInclude, RDF, XSLT, etc.
Most important, it means that your clients are much less coupled to the
schema of your database.
> ... Can we say to the people "do not create
> query languages on XML - you are not allowed to benefit from all its
> advantages". Can the web ignore that sophisticated query language could be
> used to fetch documents and that original URLs where created to emulate file
> hierarchies and simple command lines (as found in Unix, Linux or DOS). Dont
> we stretch URLs by pretending that they could be as sophisticated as some
> query languages?
If the query language is *application specific* (as Google's is) then
you will hardly ever have a problem, if ever.
If you are trying to send a generic query language, like XQL then you
are essentially tunnelling through the Web model rather than adapting to
it. You could similarly complain that there is no way to tunnel XQL
through SQL or SQL through OQL or OQL through XQL. URIs are their own
"query language" and the model behind them is not the relational model,
nor the OMG object model nor the infoset, but rather the resource model.
If you adapt to that things get easier, just as SQL gets easier if you
adapt to the relational model (rather than trying to apply it to an
unnormalized infoset, for example!).