<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:st1="isiresearchsoft-com/cwyw" xmlns:st2="urn:schemas-microsoft-com:office:smarttags" 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]--><o:SmartTagType namespaceuri="isiresearchsoft-com/cwyw"
 name="citation"/>
<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
 name="PersonName"/>
<!--[if !mso]>
<style>
st1\:*{behavior:url(#default#ieooui) }st2\:*{behavior:url(#default#ieooui) }
</style>
<![endif]-->
<style>
<!--
 /* Font Definitions */
 @font-face
        {font-family:Garamond;
        panose-1:2 2 4 4 3 3 1 1 8 3;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
 /* 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;}
p
        {mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:12.0pt;
        font-family:"Times New Roman";}
p.Reference, li.Reference, div.Reference
        {margin:0in;
        margin-bottom:.0001pt;
        text-align:justify;
        font-size:11.0pt;
        font-family:Garamond;
        color:red;
        font-weight:bold;
        font-style:italic;}
span.EmailStyle22
        {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'>Hi Svetlana, <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> </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'>Yes, you should indeed return a GFrame from
the java backend server. This GFrame should contain one string element, called
:outframe which contains the string representation you had below of the desired
structure (e.g. like for instance the RoomLine perl returns it). If you look
into the BackendServer for RoomLine, essentially what that does is take that
string representation and put it in an outframe string slot in a galaxy return
frame. <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> </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'>Hope this helps, but let me know if it
doesn’t<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'>Dan<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> </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> </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'> Svetlana
Stenchikova [mailto:svetastenchikova@gmail.com] <br>
<b><span style='font-weight:bold'>Sent:</span></b> Wednesday, October 11, 2006
3:32 PM<br>
<b><span style='font-weight:bold'>To:</span></b> Dan Bohus<br>
<b><span style='font-weight:bold'>Cc:</span></b> <st2:PersonName w:st="on">ravenclaw-developers@cs.cmu.edu</st2:PersonName><br>
<b><span style='font-weight:bold'>Subject:</span></b> Re: RavenclawDev:
returning frame from a back end</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> </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'>Do you think it is
possible to return a structure from a java back-end in a format expected by
RavenClaw?<br>
<br>
If so, could you please recomment how, and if not, could someone point to the
place in RavenClaw that I could modify to work around this issue?<br>
<br>
I am sorry to bother you with this question, but we have a demo coming up and
listing the events is one of the essential functionality that we wanted to
show. <br>
<br>
Thank you all for your help!<br>
<br>
Svetlana<o:p></o:p></span></font></p>
<div>
<p class=MsoNormal><span class=gmailquote><font size=3 face="Times New Roman"><span
style='font-size:12.0pt'>On 10/10/06, <b><span style='font-weight:bold'>Svetlana
Stenchikova</span></b> <<a href="mailto:svetastenchikova@gmail.com">svetastenchikova@gmail.com</a>>
wrote:</span></font></span><o:p></o:p></p>
<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>Thanks Dan,<br>
<br>
this generally makes sense, but I am not sure how to do this in the java
server.<br>
<br>
The operation function in the java galaxy service returns a GFrame. <br>
<br>
I can set properties of this frame in any way, but I must return a GFrame, I
think. I tried declaring an operation that returns String and it causes 
runtime exception:<br>
java.lang.ClassCastException: java.lang.String <br>
<br>
<br>
This is how a RoomLine return from a perl back end looks like:<br>
<br>
<st1:citation w:st="on">{<br>
        
 suggested_refine        none<br>
         error   false<br>
         results :1<br>
         {<br>
                
 {<br>
                        
 date_time       {<br>
                                
 time    {<br>
                                        
 start_time      1700<br>
                                        
 end_time        1800<br>
                                
 }</st1:citation><br>
                               
date    <st1:citation w:st="on">{<br>
                                        
 valid_date      true<br>
                                        
 year    2006<br>
                                        
 month   10<br>
                                        
 day     11<br>
                                        
 weekday 3<br>
                                
 }</st1:citation><br>
                       
}<br>
                       
room_size       30<br>
                       
room_projector  true<br>
                       
room_whiteboard true<br>
                       
room_computer   true<br>
                       
room_network    true<br>
                       
room_location   Wean Hall<br>
                       
room_size_spec  large<br>
                       
room_number     4625<br>
               
}<br>
        }<br>
}<br>
<br>
<br>
And here is how my java back end frame looks like:<br>
<br>
Server environment sending frame:<br>
<st1:citation w:st="on">{c java_be.add_event<br>
    error "false"<br>
    :hub_opaque_data {c admin_info<br>
                       
 :reply_requested 1<br>
                       
 :session_id "Default"<br>
                       
 :tidx 70<br>
                       
 :scriptless 1<br>
                       
 :timestamp [array: type GAL_FLOAT_64, 1 elements]<br>
                       
 :provider_id "[8]"<br>
                       
 :invoked_stype "java_be" }</st1:citation> }<br>
<br>
Please make a suggestion on how to return a string from a java server.<br>
<br>
thank you,<br>
<span class=sg>Svetlana</span><o:p></o:p></span></font></p>
<div><span id="q_10e346824a48f997_2">
<p class=MsoNormal style='margin-bottom:12.0pt'><span class=e><font size=3
face="Times New Roman"><span style='font-size:12.0pt'><o:p> </o:p></span></font></span></p>
<div>
<p class=MsoNormal><span class=gmailquote><font size=3 face="Times New Roman"><span
style='font-size:12.0pt'>On 10/10/06, <b><span style='font-weight:bold'>Dan
Bohus</span></b> <<a href="mailto:dbohus@cs.cmu.edu" target="_blank">dbohus@cs.cmu.edu</a>
> wrote:</span></font></span><o:p></o:p></p>
<div link=blue vlink=purple>
<div>
<p><font size=2 color=navy face=Arial><span style='font-size:10.0pt;font-family:
Arial;color:navy'>Hi Svetlana, </span></font><o:p></o:p></p>
<p><font size=2 color=navy face=Arial><span style='font-size:10.0pt;font-family:
Arial;color:navy'> </span></font><o:p></o:p></p>
<p><font size=2 color=navy face=Arial><span style='font-size:10.0pt;font-family:
Arial;color:navy'>I think this is the same problem with "Ravenclaw
frames" and "galaxy frames" but on the output side. Basically
what you're doing in the code below is constructing a galaxy frame. Instead
ravenclaw expects a single string in that galaxy frame which contains the
information in a single string in the "string Ravenclaw frame"
format… </span></font><o:p></o:p></p>
<p><font size=2 color=navy face=Arial><span style='font-size:10.0pt;font-family:
Arial;color:navy'> </span></font><o:p></o:p></p>
<p><font size=2 color=navy face=Arial><span style='font-size:10.0pt;font-family:
Arial;color:navy'>If this message is too cryptic, let me know and I can send
you more details,</span></font><o:p></o:p></p>
<p><font size=2 color=navy face=Arial><span style='font-size:10.0pt;font-family:
Arial;color:navy'>Dan</span></font><o:p></o:p></p>
<p><font size=2 color=navy face=Arial><span style='font-size:10.0pt;font-family:
Arial;color:navy'> </span></font><o:p></o:p></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>
</span></font></div>
<p><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'> <a
href="mailto:ravenclaw-developers-bounces@LOGANBERRY.srv.cs.cmu.edu"
target="_blank">ravenclaw-developers-bounces@LOGANBERRY.srv.cs.cmu.edu</a>
[mailto:<a href="mailto:ravenclaw-developers-bounces@LOGANBERRY.srv.cs.cmu.edu"
target="_blank">ravenclaw-developers-bounces@LOGANBERRY.srv.cs.cmu.edu</a>] <b><span
style='font-weight:bold'>On Behalf Of </span></b>Svetlana Stenchikova<br>
<b><span style='font-weight:bold'>Sent:</span></b> Tuesday, October 10, 2006
5:41 PM<br>
<b><span style='font-weight:bold'>To:</span></b> <a
href="mailto:ravenclaw-developers@cs.cmu.edu" target="_blank">ravenclaw-developers@cs.cmu.edu</a><br>
<b><span style='font-weight:bold'>Subject:</span></b> RavenclawDev: returning
frame from a back end</span></font><o:p></o:p></p>
</div>
<div>
<p><font size=3 face="Times New Roman"><span style='font-size:12.0pt'> <o:p></o:p></span></font></p>
<p><font size=3 face="Times New Roman"><span style='font-size:12.0pt'>Hi,<br>
<br>
How should a  back-end function of a ravenclaw dialog manager format a
frame?<br>
<br>
For example,  I am expecting to get a "error" parameter from:<br>
<br>
CALL("java_be.add_event <event_add error>backend_error")<br>
<br>
backend_error is declared as:<br>
BOOL_SYSTEM_CONCEPT(backend_error)<br>
<br>
In the java back-end:<br>
<br>
public GFrame serverOpAddEvent(GFrame f) <st1:citation w:st="on">{<br>
 ...<br>
 <br>
     GFrame eventAdded = new Clause("event_add");<br>
     <br>
     eventAdded.setProperty("error",
 "false");<br>
 <br>
     return eventAdded;<br>
 }</st1:citation><br>
<br>
<br>
But the backend_error in DM does not get initialized. <br>
<br>
Is there a particular way that the return GFrame from the backend server has to
be generated?<br>
<br>
Thank you,<br>
Svetlana<o:p></o:p></span></font></p>
</div>
</div>
</div>
</div>
<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><br>
<br>
<o:p></o:p></span></font></p>
</div>
</div>
</span>
<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p> </o:p></span></font></p>
</div>
</body>
</html>