<div dir="ltr">Hi Dan,<br><br>Do I need to use the nightly build of Kepler to get the updated XPath actor?  I'm having trouble running the attached workflow with the 1.0 Kepler version.  <br><br>Thanks,<br>Jon<br><br><div class="gmail_quote">
On Tue, Oct 14, 2008 at 6:41 PM, Daniel Crawl <span dir="ltr"><<a href="mailto:crawl@sdsc.edu">crawl@sdsc.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>
Hi Jon,<br>
<br>
I've updated the XPath actor with a new port that outputs<br>
attribute or text() data. Attached is a modified version<br>
of your workflow that uses this functionality.<br>
<br>
Let me know if you have questions,<br>
<br>
 --dan<br>
<br>
<br>
Jon Goodall wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div><div></div><div class="Wj3C7c">
Hello,<br>
<br>
I'm trying to extract XML attributes from a web service in Kepler and<br>
could use some help.  I've tried doing this a couple different ways.<br>
First, I tried the following xpath query:<br>
/timeSeriesResponse/timeSeries/values/value/@dateTime and the<br>
exception is ...<br>
<br>
ptolemy.kernel.util.IllegalActionException: XPath: node selected with<br>
XPath isn't an element.<br>
       at org.sdm.spa.XPath.fire(XPath.java:167)<br>
       at ptolemy.actor.AtomicActor.iterate(AtomicActor.java:398)<br>
       at ptolemy.actor.sched.StaticSchedulingDirector.fire(StaticSchedulingDirector.java:170)<br>
       at ptolemy.actor.CompositeActor.fire(CompositeActor.java:400)<br>
       at ptolemy.actor.Manager.iterate(Manager.java:688)<br>
       at ptolemy.actor.Manager.execute(Manager.java:332)<br>
       at ptolemy.actor.Manager.run(Manager.java:1071)<br>
       at ptolemy.actor.Manager$3.run(Manager.java:1112)<br>
<br>
The xpath query /timeSeriesResponse/timeSeries/values/value works fine<br>
and gives this response ..<br>
<br>
send to channel 0: {<value dateTime="2000-01-01T00:00:00"<br>
qualifiers="A">483</value>, <value dateTime="2000-01-02T00:00:00"<br>
qualifiers="A">464</value> ...<br>
<br>
I've also tried using an XMLDisassembler actor to access the dateTime<br>
attributes, but no luck.  I was able to get the values, but unable to<br>
get the dateTimes (I tried setting the port name to @dateTime and to<br>
dateTime).  See attached workflow for details.<br>
<br>
One other thing to note is that this service I'm using can return<br>
either simple or complex types.  Right now, I'm working with the<br>
simple type, which is a XML string.  I tried using the complex web<br>
service actor, but still was unable to get at the dateTime attributes.<br>
 If you want to try this yourself, the service is<br>
<a href="http://river.sdsc.edu/wateroneflow/NWIS/DailyValues.asmx?WSDL" target="_blank">http://river.sdsc.edu/wateroneflow/NWIS/DailyValues.asmx?WSDL</a>.  The<br>
method GetValues returns the XML string, the method GetValuesObject<br>
returns a complex type.<br>
<br>
The workflow is attached if you want to take a look.  The goal is<br>
simply to create a chart of the streamflow time series.  I would<br>
appreciate any help on this.  Thanks in advance!<br>
<br>
Jon<br>
<br>
Jonathan Goodall<br>
Civil and Environmental Engineering<br>
University of South Carolina<br></div></div>
  ------------------------------------------------------------------------<br>
<br>
_______________________________________________<br>
Kepler-users mailing list<br>
<a href="mailto:Kepler-users@ecoinformatics.org" target="_blank">Kepler-users@ecoinformatics.org</a><br>
<a href="http://mercury.nceas.ucsb.edu/ecoinformatics/mailman/listinfo/kepler-users" target="_blank">http://mercury.nceas.ucsb.edu/ecoinformatics/mailman/listinfo/kepler-users</a><br>
</blockquote>
<br>
</blockquote></div><br></div>