<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.6000.16681" name=GENERATOR></HEAD>
<BODY>
<DIV dir=ltr align=left><SPAN class=349221413-20062008><FONT face=Arial 
color=#0000ff size=2>First point is that XQJ is an interface - a way that XQuery 
users can talk to XQuery implementations. It is not itself an XQuery 
implementation. XQJ is to Saxon as SQL is to relational 
databases.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=349221413-20062008><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=349221413-20062008><FONT face=Arial 
color=#0000ff size=2>&gt;<FONT face="Times New Roman" color=#000000 size=3>What 
I am also wondering is the extent to which products like datadirect Xquery have 
utilised the XQJ API to provide easy access to a relational database and how an 
XML view of a relational database can be derrived ? 
</FONT><BR></FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=349221413-20062008><FONT face=Arial 
color=#0000ff size=2>That's a question very specific to the DataDirect product. 
</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=349221413-20062008><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=349221413-20062008><FONT face=Arial 
color=#0000ff size=2>&gt;<FONT face="Times New Roman" color=#000000 size=3>My 
only guess at the moment is that it makes an SQL call to retrieve all the column 
names and builds some sort of internal schema using this 
?</FONT><BR></FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=349221413-20062008><FONT face=Arial 
color=#0000ff size=2>Well, I guess there's a lot more to it than that, but I 
expect you're along the right lines.</DIV></FONT></SPAN>
<DIV dir=ltr align=left><SPAN class=349221413-20062008><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=349221413-20062008>&gt;I'm I right in 
thinking that the XQJ API alone offers no such automatic connection to table 
columns in a non XML relational database.</SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=349221413-20062008></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=349221413-20062008><FONT face=Arial 
color=#0000ff size=2>XQJ is just a pipe down which you can send XQuery requests. 
Unless there's someone listening at the other end, it can't do 
anything.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=349221413-20062008><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=349221413-20062008><FONT face=Arial 
color=#0000ff size=2>&gt;<FONT face="Times New Roman" color=#000000 size=3>If 
this is the case my questions is whether Saxon can be modified to do this (if at 
all advisable) and what work I would need to do to achieve 
this.</FONT><BR></FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=349221413-20062008><FONT face=Arial 
color=#0000ff size=2>It's possible in theory but it's a *very* significant 
amount of work - especially for someone who isn't already aware that it's a 
large project.</FONT></SPAN><BR></DIV>
<DIV dir=ltr align=left><SPAN class=349221413-20062008><FONT face=Arial 
color=#0000ff size=2>&gt;<FONT face="Times New Roman" color=#000000 size=3>I 
noticed when playing with the evaluation version of DataDirect Xquery that it 
loaded what appears to be a saxon module </FONT></FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=349221413-20062008></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=349221413-20062008><FONT face=Arial 
color=#0000ff size=2>DataDirect XQuery uses some component technology 
acquired&nbsp;from Saxonica. It does a lot more than Saxon (by distributing a 
query to multiple data sources and assembling the results), but it reuses some 
of the Saxon technology to do parts of the query processing.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=349221413-20062008><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=349221413-20062008><FONT face=Arial 
color=#0000ff size=2>Michael Kay</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=349221413-20062008><FONT face=Arial 
color=#0000ff size=2>Saxonica</FONT>&nbsp;</SPAN></DIV>
<BLOCKQUOTE dir=ltr 
style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #0000ff 2px solid; MARGIN-RIGHT: 0px">
  <DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
  <HR tabIndex=-1>
  <FONT face=Tahoma size=2><B>From:</B> talk-bounces@x-query.com 
  [mailto:talk-bounces@x-query.com] <B>On Behalf Of </B>paul 
  agbetile<BR><B>Sent:</B> 20 June 2008 12:15<BR><B>To:</B> 
  talk@x-query.com<BR><B>Subject:</B> [xquery-talk] How do Java Xquery 
  technologies fit ?<BR></FONT><BR></DIV>
  <DIV></DIV>
  <DIV>Hi,&nbsp;I am about to embark on a project that will require me accessing 
  XML sources as well as relational databases and would really appreciate some 
  help in trying to navigate through alot of what has me 
  confused.<BR>&nbsp;<BR>Firstly I should mention I am new to XQJ and Xquery. I 
  started a few days ago with&nbsp;Michael Kay's&nbsp;"Learn XQuery in 10 
  Minutes" tutorial which I found really helpful and have written a few queries 
  since. <BR>I am struggling to understand where XQJ ends and products like 
  Saxon and datadirect Xquery begin. What I am also wondering is the extent to 
  which products like datadirect Xquery have utilised the XQJ API to provide 
  easy access to a relational database and how an XML view of a relational 
  database can be derrived ? <BR>My only guess at the moment is that it makes an 
  SQL call to retrieve all the column names and builds some sort of internal 
  schema using this ?<BR>&nbsp;<BR>I'm I right in thinking that the XQJ API 
  alone offers no such automatic connection to table columns in a non XML 
  relational database. If this is the case my questions is whether Saxon can be 
  modified to do this (if at all advisable) and what work I would need to do to 
  achieve this.<BR>&nbsp;<BR>At present my assumptions range from having to 
  write my own JDBC driver (that can generically talk to several databases) as 
  well as devising some sort of Xquery to SQL translation. I noticed when 
  playing with the evaluation version of DataDirect Xquery that it loaded what 
  appears to be a saxon module ? This again has me confused as to how all these 
  technologies fit in with one another.<BR>&nbsp;<BR>Thanks,</DIV>
  <DIV>Paul</DIV></BLOCKQUOTE></BODY></HTML>