[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: Early Draft Review: XQuery for Java (JSR 225)


xquery java api
Ken North wrote:

>Burak Emir wrote:
>  
>
>>An API for HTTP Posts means dealing with wires.
>>
>>An XQuery is an expression in a domain specific language - there might
>>not even be a wire involved.
>>    
>>
>
>It's true there may be no wire involved for every XQuery application. But if an
>XQuery engine is embedded in a standalone Java program, a developer might choose
>to use streams, consumer/producer classes, or reader/writer classes instead of
>using the XQJ API.
>
>The overhead for XQJ-style programming (drivers, connection pooling, registering
>data sources with JNDI, maintaining state, caching) is necessary for
>distributed, multi-user computing. Why would you incur that overhead if you are
>deploying in a single-computer environment?
>
>  
>
Testing, using the connection pooling/caching/data sources of another 
(legacy) API.

Offering the same interface to query databases as well as in-memory XML 
(this has of course nothing to with databases).

>>A developer might choose to write his own "engine" which makes up random data
>>    
>>
>or is a wrapper around an SQL client. He will have a hard time if
>  
>
>>he has to deal with strings.
>>    
>>
>
>If you look at the Java API for some of the existing XQuery implementations
>(Galax, IPSI-XQ), they don't seem to have a problem dealing with query strings:
>http://www.sqlsummit.com/XQueryProv.htm
>
>  
>
Sorry, but I did not find much useful information at that address - do 
they even have a publically available Java API ?
A quick google search did not bring much on this - so I am taking your 
word for it.

But Galax, IPSI never aimed to provide a general-purpose Java API.

If XQJ really should be just an XQuery version of JDBC, with a 
predetermined, low-level interface, it is wasted potential.

For sure such a JDBC remake has some use, but it is not even close to 80/20.

>Instead of revising the XQJ API, it's probably better to have a separate
>specification for alternative representations of queries. (That was there's a
>separate SQLJ specification, instead of shoehorning early checking of queries
>into the JDBC API.)
>
>  
>
It's certainly not shoehorning, just a clean design choice that involves 
more abstraction (and possibly, clumsier syntax).

We are all free to ignore innovation, and to see XQuery as being just a 
database thing - maybe XQJ programming should not be compositional, 
correct, easy.

How many Java APIs do we have that offer some sort of DOM, some sort of 
XPath ? How many languages and tools do you need to use to implement a 
web service that compares a user-submitted XML document with one in a 
database, and formats the output in valid XHTML ?

Maybe database companies and consultants make good money on sloppy work, 
but it does not change the fact that this mentality of having hundreds 
of badly-matching too-special-purpose APIs is an obstacle to good 
software development. 

Burak

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
 

Stylus Studio has published XML-DEV in RSS and ATOM formats, enabling users to easily subcribe to the list from their preferred news reader application.


Stylus Studio Sponsored Links are added links designed to provide related and additional information to the visitors of this website. they were not included by the author in the initial post. To view the content without the Sponsor Links please click here.

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.