Nu vet jag inte om du verkligen behöver DataSetet av nån särskild anledning, men annars går det rätt enkelt med enbart System.XM + lite XPath:
Imports System.Xml
Dim xmldoc As New XmlDocument()
xmldoc.Load("http://www.dn.se/DNet/jsp/polopoly.jsp?d=1399")
Dim nodelist As XmlNodeList = xmldoc.DocumentElement.SelectNodes("/rss/channel/item[position() <= 5 ]")
Dim node As XmlNode
For Each node In nodelist
Response.Write(node.SelectSingleNode("title").InnerText + "<br>")
Response.Write(node.SelectSingleNode("link").InnerText + "<br>")
Response.Write(node.SelectSingleNode("description").InnerText + "<br>")
Next node
Du vill alltså inte göra den begränsningen redan när du fyller ditt dataset? En chansing, prova att göra en dataview och på den antingen sort eller rowfilter:
DataView dv = dataset.DefaultView;
dv.Sort = "TOP 5";
Eller så kan du ju alltid loopa igenom de första posterna med en for-loop. Kanske finns bättre sätt, någon annan som kan?