Whence XQL?

Jonathan Robie jonathan at texcel.no
Thu Mar 25 15:03:48 GMT 1999


At 07:24 PM 3/24/99 -0800, Ed Howland wrote:
>Ok, so now it is April (or thereabouts) and still no XQL. I've read all the
>hypeware about this and I understand that its just a suggestion for a
>proposal for a note for a draft for a recommendation. Whatever.
>I want my XQL! 

XQL has been implemented by several vendors. I know of five implementations
that are commercially or publically available:

o	Microsoft's Internet Explorer 5.0 browser
o	webMethod's B2B Integration Server
o	DataChannel's Rio
o	ObjectStore's eXcelon
o	Perl library by Eduard Derksen (Enno) 
	that can be found in the CPAN archive

Software AG has been showing a subset of XQL in it's Tamino product at
CeBIT. There are several other prototypes that I know of, but I don't know
whether I can mention them.

>If not, I'm tempted to write something myself. I'm not sure about a couple
>of things because its still just off the top of my head so far.
>
>Ok, its in Java. It uses some free XML parser, probably XML4J because its
>the one I'm most familiar with. 

That would be great, and I'd be glad to answer questions you have as you go
along. I would really like to see something like that. I have thought of
setting up a mailing list for XQL, which might be a good place to help
implementors communicate with each other.

>The XQL syntax parser will be written in
>ANTLR, since it outputs nice O-O Java classes. The result set of XQL is well
>formed XML.

Careful...there's a very fine distinction here. The result set of XQL is
actually a set of nodes in the tree. When this is returned as an ASCII
result, it is wrapped in an <xql:result> tag to make it well formed. This
distinction is important because nodes have identity, and XML text does not.

>This can be handled easily by XML4J's ability of any node in any
>tree (or transformed sub-tree) to print itself in XML to any stream. XML4J
>has a nice getNodesByName() mathod that can operate at any level of the tree
>returning a NodeList of siblings with that tag name. Wrapping a result tree
>in <xql:result></xql:result> and iterating the NodeList gets you the
>simplist query.

This is a good approach.

>I don't care about efficiency or optimization. All partially created result
>sets will live in memory till they are ready to be output. I also don't care
>about searching multiple files, although that should be realtively easy to
>add. (I'm still confused about XML repositorys. Would XQL have to understand
>directory paths? Does XQL need to be able to follow XLinks?)

There are several ways of doing repositories, and that will depend somewhat
on the repository vendor.

Directory paths are useful - I think the easiest way to do this is to use a
URL to specify the resource, and put the directory path in the URL. The XQL
query can be appended to the end of the URL.

>I'm leaving out sequences but I may add them in (much) later. Return values
>(analog to SQL's SELECT) are important to my application, as are
>conditionals. 

Cool!

Jonathan
 
jonathan at texcel.no
Texcel Research
http://www.texcel.no

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)




More information about the Xml-dev mailing list