"Using a data interface? I'll show you something interesting. The two types of data accesses are files and streams. http/html? files. unix data pipes? streams. dropbox? files. chat? streams. despite being served over http, which serves files, rss is actually a stream"
The fact that it's mutable, requires every client to store state (unavoidable i guess), non-federatable/replicatable. Idk. It could be a hash chain. a block chain, as it were (like git)
What rss is trying to be:
- a simple feed
- a feed that has immutable history
Does rss specify what happens if previous items that have already been pulled are edited??
Unnecessary bits are streamed down the wire on each refresh. The metadata of the feed and the historical items that have already been pulled
The client needs to store the previous state of the feed. this is probably true with any feed-based protocol, but previous state can just mean id, which you could theoretically do with rss too.
There's no way for other publishers to publish your content in a verified manner, a-la ipfs/hypercore. servers aren't signing their feeds. clients are verifying via certs rather than locations.
does your feed want historical delete/update semantics? activitypub is better suited
does your feed want singular-history broadcastable updates? mqtt
does your feed want a historical, immutable record? Consider hypercore or some sort of ipfs chain. Both of these systems give you free, signable replicability such that you don't have to store the data intentionally, especially old data. your feed goes as far back as others are willing to pin/replicate it, even if you don't want to.