[kepler-users] Extracting XML Attributes
Jon Goodall
goodall at engr.sc.edu
Wed Oct 15 07:04:18 PDT 2008
Hi Dan,
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.
Thanks,
Jon
On Tue, Oct 14, 2008 at 6:41 PM, Daniel Crawl <crawl at sdsc.edu> wrote:
>
> Hi Jon,
>
> I've updated the XPath actor with a new port that outputs
> attribute or text() data. Attached is a modified version
> of your workflow that uses this functionality.
>
> Let me know if you have questions,
>
> --dan
>
>
> Jon Goodall wrote:
>
>> Hello,
>>
>> I'm trying to extract XML attributes from a web service in Kepler and
>> could use some help. I've tried doing this a couple different ways.
>> First, I tried the following xpath query:
>> /timeSeriesResponse/timeSeries/values/value/@dateTime and the
>> exception is ...
>>
>> ptolemy.kernel.util.IllegalActionException: XPath: node selected with
>> XPath isn't an element.
>> at org.sdm.spa.XPath.fire(XPath.java:167)
>> at ptolemy.actor.AtomicActor.iterate(AtomicActor.java:398)
>> at
>> ptolemy.actor.sched.StaticSchedulingDirector.fire(StaticSchedulingDirector.java:170)
>> at ptolemy.actor.CompositeActor.fire(CompositeActor.java:400)
>> at ptolemy.actor.Manager.iterate(Manager.java:688)
>> at ptolemy.actor.Manager.execute(Manager.java:332)
>> at ptolemy.actor.Manager.run(Manager.java:1071)
>> at ptolemy.actor.Manager$3.run(Manager.java:1112)
>>
>> The xpath query /timeSeriesResponse/timeSeries/values/value works fine
>> and gives this response ..
>>
>> send to channel 0: {<value dateTime="2000-01-01T00:00:00"
>> qualifiers="A">483</value>, <value dateTime="2000-01-02T00:00:00"
>> qualifiers="A">464</value> ...
>>
>> I've also tried using an XMLDisassembler actor to access the dateTime
>> attributes, but no luck. I was able to get the values, but unable to
>> get the dateTimes (I tried setting the port name to @dateTime and to
>> dateTime). See attached workflow for details.
>>
>> One other thing to note is that this service I'm using can return
>> either simple or complex types. Right now, I'm working with the
>> simple type, which is a XML string. I tried using the complex web
>> service actor, but still was unable to get at the dateTime attributes.
>> If you want to try this yourself, the service is
>> http://river.sdsc.edu/wateroneflow/NWIS/DailyValues.asmx?WSDL. The
>> method GetValues returns the XML string, the method GetValuesObject
>> returns a complex type.
>>
>> The workflow is attached if you want to take a look. The goal is
>> simply to create a chart of the streamflow time series. I would
>> appreciate any help on this. Thanks in advance!
>>
>> Jon
>>
>> Jonathan Goodall
>> Civil and Environmental Engineering
>> University of South Carolina
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> Kepler-users mailing list
>> Kepler-users at ecoinformatics.org
>> http://mercury.nceas.ucsb.edu/ecoinformatics/mailman/listinfo/kepler-users
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.nceas.ucsb.edu/kepler/pipermail/kepler-users/attachments/20081015/05284ce5/attachment.html>
More information about the Kepler-users
mailing list