hi all,
i have the following xml file.

<rss version="2.0" xmlns:media="http://tools.search.yahoo.com/mrss/" >
<channel>
<title>SWF media</title>
<link>http://www.blogdigger.com/media/</link>
<description>Recent .swf files found by Blogdigger</description>
<item>
<title>Dollar Bus Rolls Into Town</title>
<link>http://feeds.feedburner.com/Chicagoist?m=1115</link>
<description>some description</description>
<pubDate>Thu, 23 Mar 2006 14:11:57 EST</pubDate>
<enclosure url="http://www.kitschn.com/flash/MenuCoverPage-DrinksMenu09-05.swf" type="application/x-shockwave-flash"/>
<media:content url="http://www.kitschn.com/flash/MenuCoverPage-DrinksMenu09-05.swf" type="application/x-shockwave-flash"/>
</item>

<item>
<title>E-mail</title>
<link>http://billarnold.typepad.com/poet_in_motion/2006/03/email.html</link>
<description>description 2/description>
<pubDate>Wed, 22 Mar 2006 17:28:28 EST</pubDate>
<enclosure url="http://www.softlab.ece.ntua.gr/~sivann/pub/swf/may02-smilepop-soapbox4.swf" type="application/x-shockwave-flash"/>
<media:content url="http://www.softlab.ece.ntua.gr/~sivann/pub/swf/may02-smilepop-soapbox4.swf" type="application/x-shockwave-flash"/>
</item>
</channel>
</rss>

i am using xpath to navigate through this xml file.
i used the following code to navigate through items node.

XmlDocument doc = new XmlDocument();
doc.Load(xmlfile);

XPathNavigator nav = doc.CreateNavigator();
XPathExpression exp = nav.Compile("rss/channel/item");

XPathNodeIterator iterator = nav.Select(exp);
XPathNodeIterator iter1;
     while (iterator.MoveNext())
      {
        iter1 = iterator.Current.SelectChildren("media:content", "");
         if (iter1.Count > 0)
         {
            while (iter1.MoveNext())
              {
                if (iter1.Current.HasAttributes == true)
                 {
                   string url = iter1.Current.GetAttribute("url", "");
                 }
              }
         }
      }

but when i execute the code, the iter1.count always returns zero. if i select anyother children(like title or description)i am able to display the value.but when i select media:content(one of the subitems of item) i am not able to display the attribute value.

Where am i going wrong?

Any suggestions please

regards

Exelio

hi guys,

i solved it by myself. for everybody's reference,

iter1 = iterator.Current.SelectChildren("content", "http://tools.search.yahoo.com/mrss/");

i need to include the namespace URI in the selectchildren method and it worked.

Thanks

Regards

Exelio

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.