To answer the original question here, IE7 (and the Windows RSS Platform) 
doesn't support multiple enclosures in the current release. 

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of A. Pagaltzis
Sent: Wednesday, February 22, 2006 10:38 PM
To: Atom Syntax
Subject: Fwd: [rss-public] Microsoft Feeds API Enclosure Test


Does someone who has access to an MSFT system care to take a look at this?

>From: James M Snell <[EMAIL PROTECTED]>
>To: [EMAIL PROTECTED]
>Subject: Re: [rss-public] Microsoft Feeds API Enclosure Test
>Date: Wed, 22 Feb 2006 21:28:19 -0800
>Message-ID: <[EMAIL PROTECTED]>
>List-Id: <rss-public.yahoogroups.com>
>
>Hmm.. interestingly, this API also looks as if it would stuff multiple 
>enclosures in Atom also... in which case, I'd argue that the API is 
>simply broken.
>
>rcade wrote:
>> Power Line has a podcast feed that includes multiple enclosures, as 
>> someone pointed out earlier on this list:
>> 
>> http://www.powerlineblog.com/podcasts.xml
>> 
>> A cached copy of this feed is here:
>> 
>> http://www.rssboard.org/files/example-multiple-enclosures.xml
>> 
>> This feed contains one item with one enclosure, a second with three 
>> enclosures, and a third with three enclosures (in that order).
>> 
>> After subscribing to this feed in MSIE 7 and choosing automatic 
>> downloads of enclosures, I wrote a VB.NET console application that 
>> displays the URL of each enclosure in the feed:
>> 
>> Sub Main()
>>     Dim fm : fm = CreateObject("Microsoft.FeedsManager")
>>     Dim fmroot = fm.RootFolder
>>     Dim plfeed = fmroot.getFeed("Power Line")
>>     Dim i
>>     For i = 0 To plfeed.Items.Count - 1
>>         Dim item = plfeed.getItem(i)
>>         Console.WriteLine("Title: " + item.Title)
>>         Dim plenclosure = item.Enclosure()
>>         Console.WriteLine("Enclosure: " + plenclosure.Url)
>>         Console.WriteLine("")
>>         Console.Write(item.xml(1))
>>         Console.WriteLine("")
>>     Next
>> End Sub
>> 
>> Here's the output of the application (with item elements other than 
>> enclosure removed from the XML):
>> 
>> -- BEGIN OUTPUT --
>> 
>> Title: Listen to Col. Stephenson and Judge for Yourself
>> Enclosure: http://powerlineblog.com/podcasts/NA218Stephenson.mp3
>> 
>> <item><enclosure
>> url="http://powerlineblog.com/podcasts/NA218Stephenson.mp3";
>> length="21455322" type="audio/mpeg"
>> xmlns:cf="http://www.microsoft.com/schemas/rss/core/2005";
>> cf:path="C:\Documents and Settings\Rogers\Local Settings\Temporary 
>> Internet 
>> Files\Enclosure\{0C1E2407-FAE4-447F-9054-FB1C7CFE6A86}\Listen
>> to Col. Stephenson and Judge for Yourself.mp3"
>> cf:downloadstatus="Downloaded"/></item>
>> -------------------------------------------------------
>> Title: New Podcast:  Yesterday's Northern Alliance Radio Network
>> Enclosure: http://powerlineblog.com/podcasts/Feb111stHourPt1.mp3
>> 
>> <item><enclosure
>> url="http://powerlineblog.com/podcasts/Feb111stHourPt1.mp3";
>> length="19949804" type="audio/mpeg"
>> xmlns:cf="http://www.microsoft.com/schemas/rss/core/2005";
>> cf:path="C:\Documents and Settings\Rogers\Local Settings\Temporary 
>> Internet Files\Enclosure\{0C1E2407-FAE4-447F-9054-FB1C7CFE6A86}\New
>> Podcast  Yesterday's Northern Alliance Radio Network.mp3"
>> cf:downloadstatus="Downloaded"/><enclosure
>> url="http://powerlineblog.com/podcasts/Feb111stHourPt2.mp3";
>> length="8550404" type="audio/mpeg"/><enclosure 
>> url="http://powerlineblog.com/podcasts/Feb112ndHour.mp3";
>> length="15032924" type="audio/mpeg"/></item>
>> -------------------------------------------------------
>> Title: Now Podcasting:  The Northern Alliance Radio Network!
>> Enclosure: http://powerlineblog.com/podcasts/January21,1stHour.mp3
>> 
>> <item><enclosure
>> url="http://powerlineblog.com/podcasts/January21,1stHour.mp3";
>> length="39923577" type="audio/mpeg"
>> xmlns:cf="http://www.microsoft.com/schemas/rss/core/2005";
>> cf:path="C:\Documents and Settings\Rogers\Local Settings\Temporary 
>> Internet Files\Enclosure\{0C1E2407-FAE4-447F-9054-FB1C7CFE6A86}\Now
>> Podcasting  The Northern Alliance Radio Network!.mp3"
>> cf:downloadstatus="Downloaded"/><enclosure
>> url="http://powerlineblog.com/podcasts/January212ndHourPt1.mp3";
>> length="14954800" type="audio/mpeg"/><enclosure 
>> url="http://powerlineblog.com/podcasts/January212ndHourPt2.mp3";
>> length="12517975" type="audio/mpeg"/></item>
>> -------------------------------------------------------
>> 
>> -- END OUTPUT --
>> 
>> The Feeds API refers to an item enclosure singularly. The only method 
>> I found reads a enclosure from an item. When multiple enclosures are 
>> present, item.Enclosure() retrieves the first.
>> 
>> An item's xml(1) method produces its contents as XML, with the 
>> numeric
>> 1 argument indicating that Microsoft's common format feed elements, 
>> and Simple List Extensions should be included in the output.
>> 
>> The XML output includes the multiple enclosures, in which the 
>> cf:downloadstatus element only is present for the first enclosure in 
>> each item.
>> 
>> Checking the Temporary Internet Files folder where enclosures are 
>> being stored, only the first enclosure in each of the three items is 
>> present.
>> 
>> As the Feeds API is presently implemented, publishers of RSS feeds 
>> with multiple enclosures will lose two advantages of Microsoft's 
>> common feed engine when their feeds are read:
>> 
>> 1. Enclosures beyond an item's first are not automatically 
>> downloaded, so they must be requested manually by a user.
>> 
>> 2. Programmers who build on the API will have to grab the XML and get 
>> these files directly.
>> 
>> This is my first poke around the Feeds API and VB.NET, so it's likely 
>> I may be overlooking things.

----- End forwarded message -----

Regards,
--
Aristotle Pagaltzis // <http://plasmasturm.org/>


Reply via email to