<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv=Content-Type content="text/html; charset=us-ascii">
<meta name=Generator content="Microsoft Word 11 (filtered medium)">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]-->
<style>
<!--
 /* Font Definitions */
 @font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:"Lucida Sans";
        panose-1:0 0 0 0 0 0 0 0 0 0;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman";}
a:link, span.MsoHyperlink
        {color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {color:blue;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-reply;
        font-family:Arial;
        color:navy;}
@page Section1
        {size:8.5in 11.0in;
        margin:1.0in 1.25in 1.0in 1.25in;}
div.Section1
        {page:Section1;}
-->
</style>

</head>

<body lang=EN-US link=blue vlink=blue>

<div class=Section1>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>I will use the DefaultMdxParserImpl class
with caution and be prepared to change our code in the future if the internal
API changes. <o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>Thanks for the quick response.<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>Josh<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<div>

<div class=MsoNormal align=center style='text-align:center'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'>

<hr size=2 width="100%" align=center tabindex=-1>

</span></font></div>

<p class=MsoNormal><b><font size=2 face=Tahoma><span style='font-size:10.0pt;
font-family:Tahoma;font-weight:bold'>From:</span></font></b><font size=2
face=Tahoma><span style='font-size:10.0pt;font-family:Tahoma'>
mondrian-bounces@pentaho.org [mailto:mondrian-bounces@pentaho.org] <b><span
style='font-weight:bold'>On Behalf Of </span></b>Julian Hyde<br>
<b><span style='font-weight:bold'>Sent:</span></b> Tuesday, April 06, 2010 6:49
PM<br>
<b><span style='font-weight:bold'>To:</span></b> 'Luc Boudreau'; 'Mondrian
developer mailing list'<br>
<b><span style='font-weight:bold'>Cc:</span></b>
olap4j-devel@lists.sourceforge.net<br>
<b><span style='font-weight:bold'>Subject:</span></b> RE: [Olap4j-devel]
[Mondrian] Convert Connection to OlapConnection</span></font><o:p></o:p></p>

</div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

<div>

<p class=MsoNormal><font size=2 color=navy face="Lucida Sans"><span
style='font-size:10.0pt;font-family:"Lucida Sans";color:navy'>I stand by the
comments I made in that forum post. MdxParser is part of olap4j's public API,
but DefaultMdxParserImpl is not and will never be.</span></font><o:p></o:p></p>

</div>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

</div>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><a
href="http://www.olap4j.org/api/org/olap4j/mdx/parser/package-summary.html">http://www.olap4j.org/api/org/olap4j/mdx/parser/package-summary.html</a><o:p></o:p></span></font></p>

</div>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

</div>

<div>

<p class=MsoNormal><font size=2 color=navy face="Lucida Sans"><span
style='font-size:10.0pt;font-family:"Lucida Sans";color:navy'>The public API,
remember, is for people building OLAP applications. To them, olap4j needs to
look like JDBC, but with one exception. JDBC drivers don't supply a SQL parser,
but parsing is more important to MDX applications so every olap4j driver must
supply an MDX parser that implements the MdxParser interface.</span></font><o:p></o:p></p>

</div>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

</div>

<div>

<p class=MsoNormal><font size=2 color=navy face="Lucida Sans"><span
style='font-size:10.0pt;font-family:"Lucida Sans";color:navy'>The other
important audience is developers of drivers. To a limited extent, the olap4j
code base gives them an SPI to help them build drivers. DefaultMdxParserImpl is
part of that SPI, as are the classes in org.olap4j.impl. We will try to keep
the SPI stable as olap4j eveolves but we won't bust a gut over it.</span></font><o:p></o:p></p>

</div>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

</div>

<div>

<p class=MsoNormal><font size=2 color=navy face="Lucida Sans"><span
style='font-size:10.0pt;font-family:"Lucida Sans";color:navy'>Remember that
different drivers might be talking to different OLAP engines, and different
engines have different dialects of MDX, so naturally the driver writers might
want to create their own parser. They can write a parser from scratch, or they
can start with the default MDX parser.</span></font><o:p></o:p></p>

</div>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

</div>

<div>

<div>

<p class=MsoNormal><font size=2 color=navy face="Lucida Sans"><span
style='font-size:10.0pt;font-family:"Lucida Sans";color:navy'>If you want to
dismember the olap4j project to get the MDX parser, then go ahead. olap4j is
after all an open source project. But you're on your own. You are in a small
minority of olap4j users, and we don't intend to change the olap4j API for your
benefit.<o:p></o:p></span></font></p>

</div>

<div>

<p class=MsoNormal><font size=2 color=navy face="Lucida Sans"><span
style='font-size:10.0pt;font-family:"Lucida Sans";color:navy'>&nbsp;<o:p></o:p></span></font></p>

</div>

<div>

<p class=MsoNormal><font size=2 color=navy face="Lucida Sans"><span
style='font-size:10.0pt;font-family:"Lucida Sans";color:navy'>It sounds like <o:p></o:p></span></font></p>

</div>

<div>

<p class=MsoNormal><font size=2 color=navy face="Lucida Sans"><span
style='font-size:10.0pt;font-family:"Lucida Sans";color:navy'>&nbsp;<o:p></o:p></span></font></p>

</div>

<div>

<p class=MsoNormal><font size=2 color=navy face="Lucida Sans"><span
style='font-size:10.0pt;font-family:"Lucida Sans";color:navy'>Julian<o:p></o:p></span></font></p>

</div>

<div>

<p class=MsoNormal><font size=2 color=navy face="Lucida Sans"><span
style='font-size:10.0pt;font-family:"Lucida Sans";color:navy'>&nbsp;<o:p></o:p></span></font></p>

</div>

</div>

<blockquote style='border:none;border-left:solid navy 1.5pt;padding:0in 0in 0in 4.0pt;
margin-left:3.75pt;margin-top:5.0pt;margin-right:0in;margin-bottom:5.0pt'>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

<div class=MsoNormal align=center style='text-align:center'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'>

<hr size=2 width="100%" align=center tabIndex=-1>

</span></font></div>

<p class=MsoNormal style='margin-bottom:12.0pt'><b><font size=2 face=Tahoma><span
style='font-size:10.0pt;font-family:Tahoma;font-weight:bold'>From:</span></font></b><font
size=2 face=Tahoma><span style='font-size:10.0pt;font-family:Tahoma'> Luc
Boudreau [mailto:lucboudreau@gmail.com] <br>
<b><span style='font-weight:bold'>Sent:</span></b> Tuesday, April 06, 2010 3:58
PM<br>
<b><span style='font-weight:bold'>To:</span></b> Mondrian developer mailing
list<br>
<b><span style='font-weight:bold'>Cc:</span></b>
olap4j-devel@lists.sourceforge.net<br>
<b><span style='font-weight:bold'>Subject:</span></b> Re: [Olap4j-devel]
[Mondrian] Convert Connection to OlapConnection</span></font><o:p></o:p></p>

<p class=MsoNormal style='margin-bottom:12.0pt'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'><br>
As of olap4j revision 307 ( <a
href="http://olap4j.svn.sourceforge.net/viewvc/olap4j?view=rev&amp;revision=307">http://olap4j.svn.sourceforge.net/viewvc/olap4j?view=rev&amp;revision=307</a>
) the default MDX parser does not depend on OlapConnection. It should not have
been dependent on it in the first place. <br>
<br>
Mondrian developers: please modify the olap4j connection implementation and
remove the now deprecated call to DefaultMdxParserImpl(OlapConnection).
Modifications to the generic XML/A driver have already been performed.<br>
<br>
This does not mean that DefaultMdxParserImpl is part of the public API yet.
There should be a default parser factory exposed to developers. In the
meanwhile, developers can directly instantiate it, but be advised that we do
not provide any guarantees on this object's signature and we reserve the right
to modify it in the future. To create a parser, developers can call the empty
constructor.<br>
<br>
A compiled binary which includes those changes can be picked from the CI server
as of now :<br>
<br>
<a href="http://ci.pentaho.com/view/Analysis/job/olap4j/258/">http://ci.pentaho.com/view/Analysis/job/olap4j/258/</a><br>
<br clear=all>
_____________________________<br>
Luc Boudreau<br>
<br>
<o:p></o:p></span></font></p>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>On Tue, Apr 6, 2010 at 5:38 PM, Luc Boudreau &lt;<a
href="mailto:lucboudreau@gmail.com">lucboudreau@gmail.com</a>&gt; wrote:<o:p></o:p></span></font></p>

<p class=MsoNormal style='margin-bottom:12.0pt'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'><br>
This topic was discussed in olap4j forums.<br>
<br>
<a
href="http://sourceforge.net/projects/olap4j/forums/forum/577988/topic/3545015"
target="_blank">http://sourceforge.net/projects/olap4j/forums/forum/577988/topic/3545015</a><br>
<br>
Although Julian's last comment mentioned that the parser is not officially part
of the public API, I for one would like to make it part of the public API.
There are many use cases for it and your request confirms it.<br>
<br>
I'll see what I can do to detach the parser from the connection classes.<br>
<br clear=all>
_____________________________<br>
Luc Boudreau<br>
<br>
<o:p></o:p></span></font></p>

<div>

<div>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>On Tue, Apr 6, 2010 at 5:32 PM, Josh Chappelle &lt;<a
href="mailto:jchappelle@4redi.com" target="_blank">jchappelle@4redi.com</a>&gt;
wrote:<o:p></o:p></span></font></p>

</div>

</div>

<blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;
margin-left:4.8pt;margin-right:0in'>

<div>

<div>

<div vlink=purple link=blue>

<div>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><font
size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>Hi,</span></font><o:p></o:p></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><font
size=3 face="Times New Roman"><span style='font-size:12.0pt'>&nbsp;<o:p></o:p></span></font></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><font
size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>We have a
need to use the MdxParser component from the Olap4j project. However up until
this point we have not been using olap4j at all. To instantiate a
DefaultMdxParserImpl you have to provide an org.olap4j.OlapConnection object in
the constructor. Our software is using a mondrian.olap.Connection. Is there a
way to convert between these two connection objects? If not does it mean that we
will have to use the org.olap4j.OlapConnection in order to use the MdxParser?</span></font><o:p></o:p></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><font
size=3 face="Times New Roman"><span style='font-size:12.0pt'>&nbsp;<o:p></o:p></span></font></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><font
size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>Thanks,</span></font><o:p></o:p></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><font
size=3 face="Times New Roman"><span style='font-size:12.0pt'>&nbsp;<o:p></o:p></span></font></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><font
size=2 color="#888888" face=Arial><span style='font-size:10.0pt;font-family:
Arial;color:#888888'>Josh </span></font><font color="#888888"><span
style='color:#888888'><o:p></o:p></span></font></p>

</div>

</div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

</div>

</div>

<p class=MsoNormal style='margin-bottom:12.0pt'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'>_______________________________________________<br>
Mondrian mailing list<br>
<a href="mailto:Mondrian@pentaho.org" target="_blank">Mondrian@pentaho.org</a><br>
<a href="http://lists.pentaho.org/mailman/listinfo/mondrian" target="_blank">http://lists.pentaho.org/mailman/listinfo/mondrian</a><o:p></o:p></span></font></p>

</blockquote>

</div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

</div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

</blockquote>

</div>

</body>

</html>