Sorry to come back to this but I received your reply just before I stepped on a 
boat for 3 weeks so never got around to testing it.

I'm doing the WebCall:
http://gdata.youtube.com/feeds/api/users/X-7L4IiiN1PpoNEoFj3rXQ/uploads

And assigning the returned httpData and to 'myDom':

<@ASSIGN NAME="myDom" SCOPE="local" VALUE=<@DOM VALUE="@@request$httpData">>

I them assign the entry values to an array (as per your response with * 
namespace):
<@ASSIGN entries <@ELEMENTNAME xpath=’//*:entry’ type=array>>

And getting an error.

I've tried referring to the myDom in the ELEMENTNAME tag, variations on the 
path details etc and no luck.

Can you point out where I'm going wrong?

Wayne


On 22 Nov 2013, at 2:08 am, Robert Shubert <[email protected]> wrote:

> Wayne (and all)
>
> The (tested) answer is:
>
> You do not need to alter the XML before parsing with @DOM
>
> You do need to deal with the namespace (but a wildcard will work)
>
> You should use @ELEMENTNAME to get the list of elements for counting purposes
>
> You need to use // to get elements at any level or / to get an element from 
> the root
>
> Therefore, this will work:
>
> <@ASSIGN entries <@ELEMENTNAME xpath=’//*:entry’ type=array>>
> Number of entries: <@NUMROWS array=entries>
>
> Alternatively, this xpath will work: /*:feed/*:entry
>
> To get the IDs in an array, this is this xpath: //*:entry/*:id
>
> To access the parts of a specific entry (id in this example), the xpath is 
> this:
>
> //*:entry[position()=x]/*:id
>
> (where 1 <= x <= numberOfEntries)
>
> This way you can loop over the entries and access their elements.
>
> Hope that helps
>
> Robert
>
>
> From: Wayne Irvine [mailto:[email protected]]
> Sent: Wednesday, November 20, 2013 3:19 AM
> To: [email protected]
> Subject: Re: TeraScript-Talk: XML help (again)
>
> /feed/id and /feed/title are sort of header information. The guts of it would 
> be /feed/entry/id etc.
>
> But none of that seems to work. Not sure why.
>
> I am trying one of the XML Editors to see what they can do.
>
> Wayne Irvine
>
> On 20 Nov 2013, at 12:18 pm, Dale Graham <[email protected]> wrote:
>
>
> Try this
>
> /feed/id
>
> feed is the “parent” (start and stop tag)
> id is directly under the parent “feed”
>
> This array you are getting appears to be VERY simple… just one parent and a 
> ton of “children”
> You read from the parent to the child element you want. You can see why being 
> able to “pretty up” a more complex flow would be a problem, but the one 
> you’re getting is fairly simple.
>
>
> so to get id
>
> /feed/id
>
> to get title
>
> /feed/title
>
> etc
>
> Ignore the <?xml line
>
>
> It is helpful if you can get an XML editor that will do “pretty” for you - as 
> this will format things so they are more “readable” for this purpose.  Oxygen 
> XML is great because you can just type in what you think is the Xpath and it 
> will cough up the value (if the path is correct). But it’s also expensive…
>
>
>
>
>
> <?xml version='1.0' encoding='UTF-8'?>
> <feed xmlns='http://www.w3.org/2005/Atom' 
> xmlns:app='http://purl.org/atom/app#'xmlns:media='http://search.yahoo.com/mrss/'
>  
> xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/'xmlns:gd='http://schemas.google.com/g/2005'
>  xmlns:yt='http://gdata.youtube.com/schemas/2007'>
> <id>http://gdata.youtube.com/feeds/api/users/X-7L4IiiN1PpoNEoFj3rXQ/uploads</id>
> <updated>2013-11-18T21:43:35.006Z</updated>
>
> to (making it clearer what is parent and child
>
>
> <?xml version='1.0' encoding='UTF-8'?>
> <feed xmlns='http://www.w3.org/2005/Atom' 
> xmlns:app='http://purl.org/atom/app#'xmlns:media='http://search.yahoo.com/mrss/'
>  
> xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/'xmlns:gd='http://schemas.google.com/g/2005'
>  xmlns:yt='http://gdata.youtube.com/schemas/2007'>
>             
> <id>http://gdata.youtube.com/feeds/api/users/X-7L4IiiN1PpoNEoFj3rXQ/uploads</id>
>             <updated>2013-11-18T21:43:35.006Z</updated>
>
>
> To get an array of the IDs
>
>
> <@ASSIGN NAME=idarray SCOPE=local VALUE="<@ELEMENTVALUE myDom 
> xpath=‘/feed/id’ type=‘array'>">
>
>
>
>
> On Nov 18, 2013, at 5:37 PM, Wayne Irvine <[email protected]> wrote:
>
>
> I'm trying to parse some feeds from Youtube's API and not having much luck.
>
> The results look like this:
>
> <?xml version='1.0' encoding='UTF-8'?>
> <feed xmlns='http://www.w3.org/2005/Atom' 
> xmlns:app='http://purl.org/atom/app#'xmlns:media='http://search.yahoo.com/mrss/'
>  
> xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/'xmlns:gd='http://schemas.google.com/g/2005'
>  xmlns:yt='http://gdata.youtube.com/schemas/2007'>
> <id>http://gdata.youtube.com/feeds/api/users/X-7L4IiiN1PpoNEoFj3rXQ/uploads</id>
> <updated>2013-11-18T21:43:35.006Z</updated>
> <category 
> scheme='http://schemas.google.com/g/2005#kind'term='http://gdata.youtube.com/schemas/2007#video'/>
> <title type='text'>Uploads by Brandon Evertz</title>
> <logo>http://www.gstatic.com/youtube/img/logo.png</logo>
> <link rel='related' type='application/atom+xml' 
> href='http://gdata.youtube.com/feeds/api/users/X-7L4IiiN1PpoNEoFj3rXQ'/>
> <link rel='alternate' type='text/html' 
> href='http://www.youtube.com/channel/UCX-7L4IiiN1PpoNEoFj3rXQ/videos'/>
> <link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' 
> href='http://gdata.youtube.com/feeds/api/users/X-7L4IiiN1PpoNEoFj3rXQ/uploads'/>
> <link rel='http://schemas.google.com/g/2005#batch' 
> type='application/atom+xml' 
> href='http://gdata.youtube.com/feeds/api/users/X-7L4IiiN1PpoNEoFj3rXQ/uploads/batch'/>
> <link rel='self' type='application/atom+xml' 
> href='http://gdata.youtube.com/feeds/api/users/X-7L4IiiN1PpoNEoFj3rXQ/uploads?start-index=1&max-results=25'/>
> <link rel='next' type='application/atom+xml' 
> href='http://gdata.youtube.com/feeds/api/users/X-7L4IiiN1PpoNEoFj3rXQ/uploads?start-index=26&max-results=25'/>
> <author>
> <name>Brandon Evertz</name>
> <uri>http://gdata.youtube.com/feeds/api/users/X-7L4IiiN1PpoNEoFj3rXQ</uri>
> </author>
> <generator version='2.1' uri='http://gdata.youtube.com'>YouTube data 
> API</generator>
> <openSearch:totalResults>869</openSearch:totalResults>
> <openSearch:startIndex>1</openSearch:startIndex>
> <openSearch:itemsPerPage>25</openSearch:itemsPerPage>
>
>
>
> <entry>
> <id>http://gdata.youtube.com/feeds/api/videos/dw8EGJGFfzE</id>
> <published>2013-11-18T11:08:57.000Z</published>
> <updated>2013-11-18T11:08:57.000Z</updated>
> <app:control>
> <yt:state name='restricted' reasonCode='limitedSyndication'>Syndication of 
> this video was restricted.</yt:state>
> </app:control>
> <category 
> scheme='http://schemas.google.com/g/2005#kind'term='http://gdata.youtube.com/schemas/2007#video'/>
> <category scheme='http://gdata.youtube.com/schemas/2007/categories.cat' 
> term='Entertainment' label='Entertainment'/>
> <title type='text'>Trailer Princess VIP Party</title>
> <content type='text'>Preview Big Review TV's exclusive interviews of the 
> hottest models and the coolest guests at the Princess Torrens luxury yacht 
> party.</content>
> <link rel='alternate' type='text/html' 
> href='http://www.youtube.com/watch?v=dw8EGJGFfzE&feature=youtube_gdata'/>
> <link rel='http://gdata.youtube.com/schemas/2007#video.related' 
> type='application/atom+xml' 
> href='http://gdata.youtube.com/feeds/api/videos/dw8EGJGFfzE/related'/>
> <link rel='self' type='application/atom+xml' 
> href='http://gdata.youtube.com/feeds/api/users/X-7L4IiiN1PpoNEoFj3rXQ/uploads/dw8EGJGFfzE'/>
> <author>
> <name>Brandon Evertz</name>
> <uri>http://gdata.youtube.com/feeds/api/users/X-7L4IiiN1PpoNEoFj3rXQ</uri>
> </author>
> </entry>
>
> <entry>
> <id>http://gdata.youtube.com/feeds/api/videos/FGiypDv_YkU</id>
> <published>2013-11-15T06:58:37.000Z</published>
> <updated>2013-11-15T06:58:37.000Z</updated>
> <category 
> scheme='http://schemas.google.com/g/2005#kind'term='http://gdata.youtube.com/schemas/2007#video'/>
> <category scheme='http://gdata.youtube.com/schemas/2007/categories.cat' 
> term='People' label='People & Blogs'/>
> <title type='text'>Webcam video from November 15, 2013 5:56 PM</title>
> <content type='text'/>
> <link rel='alternate' type='text/html' 
> href='http://www.youtube.com/watch?v=FGiypDv_YkU&feature=youtube_gdata'/>
> <link rel='http://gdata.youtube.com/schemas/2007#video.related' 
> type='application/atom+xml' 
> href='http://gdata.youtube.com/feeds/api/videos/FGiypDv_YkU/related'/>
> <link rel='http://gdata.youtube.com/schemas/2007#mobile' type='text/html' 
> href='http://m.youtube.com/details?v=FGiypDv_YkU'/>
> <link rel='self' type='application/atom+xml' 
> href='http://gdata.youtube.com/feeds/api/users/X-7L4IiiN1PpoNEoFj3rXQ/uploads/FGiypDv_YkU'/>
> <author>
> <name>Brandon Evertz</name>
> <uri>http://gdata.youtube.com/feeds/api/users/X-7L4IiiN1PpoNEoFj3rXQ</uri>
> </author>
> </entry>
>
> <entry>
> <id>http://gdata.youtube.com/feeds/api/videos/ZxJRl_YHn8E</id>
> <published>2013-11-15T01:23:25.000Z</published>
> <updated>2013-11-15T09:08:28.000Z</updated>
> <category 
> scheme='http://schemas.google.com/g/2005#kind'term='http://gdata.youtube.com/schemas/2007#video'/>
> <category scheme='http://gdata.youtube.com/schemas/2007/categories.cat' 
> term='News' label='News & Politics'/>
> <title type='text'>Example</title>
> <content type='text'>Example</content>
> <link rel='alternate' type='text/html' 
> href='http://www.youtube.com/watch?v=ZxJRl_YHn8E&feature=youtube_gdata'/>
> <link rel='http://gdata.youtube.com/schemas/2007#video.related' 
> type='application/atom+xml' 
> href='http://gdata.youtube.com/feeds/api/videos/ZxJRl_YHn8E/related'/>
> <link rel='http://gdata.youtube.com/schemas/2007#mobile' type='text/html' 
> href='http://m.youtube.com/details?v=ZxJRl_YHn8E'/>
> <link rel='self' type='application/atom+xml' 
> href='http://gdata.youtube.com/feeds/api/users/X-7L4IiiN1PpoNEoFj3rXQ/uploads/ZxJRl_YHn8E'/>
> <author>
> <name>Brandon Evertz</name>
> <uri>http://gdata.youtube.com/feeds/api/users/X-7L4IiiN1PpoNEoFj3rXQ</uri>
> </author>
> </entry>
>
> </feed>
>
> I'm assigning to a DOM and then attempting to extract and array to get the 
> element count:
>
> <@ASSIGN NAME="myDom" SCOPE="local" VALUE=<@DOM VALUE="@@request$httpData">>
> <@ASSIGN NAME=idarray SCOPE=local VALUE="<@ELEMENTVALUE myDom 
> xpath='/entry/id'>">
>
> I've tried all sorts of things for the xpath:
> /xml/feed/entry/id
> xml/feed/entry/id
> /feed/entry/id
> but all seems to give errors or no results.
>
> Anyone know the correct xpath to extract an array of (for example) IDs?
>
> Wayne Irvine
> w: http://www.byteserve.com.au/
> p: +61 2 9960 6099
> m: 0409 960 609
>
>
>
>
> ----------------------------------------
>
> To unsubscribe from this list, please send an email to 
> [email protected] with "unsubscribe terascript-talk" in the body.
>
> To unsubscribe from this list, please send an email to 
> [email protected] with "unsubscribe terascript-talk" in the body.
>
> Wayne Irvine
> w: http://www.byteserve.com.au/
> p: +61 2 9960 6099
> m: 0409 960 609
>
>
> To unsubscribe from this list, please send an email to 
> [email protected] with "unsubscribe terascript-talk" in the body.
>
> To unsubscribe from this list, please send an email to 
> [email protected] with "unsubscribe terascript-talk" in the body.



Wayne Irvine
w: http://www.byteserve.com.au/
p: +61 2 9960 6099
m: 0409 960 609




----------------------------------------

To unsubscribe from this list, please send an email to [email protected] 
with "unsubscribe terascript-talk" in the body.

Reply via email to