Using the MS
Simple List Extensions for RSS and Atom, you can really make a "feed" be anything you want it to be. Anything you can put between the angle brackets of a <cf:treatAs> tag, you can represent in a feed. I call it SMCLE (Slightly More Complex List Extensions).
Here is how it will work:
We'll define several new values for <cf:treatAs> element. Currently the only defined value is "list". Now we will have:
<cf:treatAs>Bag</cf:treatAs>
: the items form an unordered collection.
<cf:treatAs>Queue</cf:treatAs>
: the items form a fifo queue.
<cf:treatAs>Stack</cf:treatAs>
: the items form a lifo queue.
<cf:treatAs>CircularQueue</cf:treatAs>
: when you get to the end of the collection, start over again at the top.
<cf:treatAs>OneBigString</cf:treatAs>
: the items aren't items at all, in the RSS/Atom sense. The content of items really should be concatenated to form one big string.
Additionally, we'll allow extension namespaces so you can define your own "treatAs" values, e.g.:
<cf:treatAs ns="http://my.example.com/smcle">JavaScriptStatements</cf:treatAs>
Now, I know your aggregator is going to suck if it can't process all these variations correctly. Not to worry: the MS Feeds API will handle it all for you! In fact, the MS Feeds API will pretty much become the definition of a feed. If it doesn't work with the API, you don't need it!