RSS 2.0 Feed
A well-formed RSS 2.0 feed with a channel and multiple items — for testing feed readers and parsers.
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
<title>Novus Examples Feed</title>
<link>https://examples.novusstreamsolutions.com</link>
<description>Sample RSS feed for parser testing</description>
<item>
<title>First post</title>
<link>https://example.com/1</link>
<guid>1</guid>
<pubDate>Wed, 01 Jan 2026 09:00:00 GMT</pubDate>
<description>The first item.</description>
</item>
<item>
<title>Second post</title>
<link>https://example.com/2</link>
<guid>2</guid>
<pubDate>Thu, 02 Jan 2026 09:00:00 GMT</pubDate>
<description>The second item.</description>
</item>
</channel>
</rss>
Specifications
- Format
- RSS 2.0
- Items
- 2
- Channel
- Novus Examples Feed
- Encoding
- UTF-8
What is a .rss file?
RSS (Really Simple Syndication) is an XML-based web feed format that publishes a channel of items with titles, links, descriptions, and publication dates. It lets readers and aggregators track updates to blogs, news, and podcasts. It is a long-established syndication standard.
How to use this file
Use an example RSS file to test feed parsers, item and metadata extraction, and aggregator or podcast-client ingestion logic.
How to use this file for testing
“RSS 2.0 Feed” is a deterministic Novus Examples fixture for Feed parsing. Well-formed RSS 2.0 and Atom feeds with multiple entries — for testing feed readers and parsers.
Documented properties for this file: UTF-8 · RSS 2.0. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.
Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.
Data fixtures document their exact quirks — delimiters, encodings, null handling, schema, and row counts — in the spec table. Point your parser or importer at the file and assert it handles the documented edge cases; clean and deliberately-messy siblings make before/after diffs straightforward.
Code examples
import feedparser # pip install feedparser
feed = feedparser.parse("feed.rss")
print(feed.feed.get("title"))
for e in feed.entries[:5]:
print(e.title, e.link)Related files
- atomAtom FeedA well-formed Atom feed with multiple entries — for testing feed readers and parsers.

- jsonJSON Feed 1.1A JSON Feed 1.1 document — the JSON alternative to RSS/Atom — with a feed header and three items using content_html, content_text, tags, and publish dates, for testing JSON Feed parsers and readers.

- opmlOPML Subscription ListAn OPML 2.0 subscription list with nested outline groups and three feed entries (title, xmlUrl, htmlUrl) — the format RSS readers use to import and export subscriptions, for testing OPML parsers.

- atomFeed twin - Atom 1.0The same four articles as Atom 1.0: tag: ids identical to the RSS twin, RFC 3339 published and updated timestamps, escaped HTML content, and both alternate and self links. For diffing an RSS-to-Atom converter against a known answer.

- jsonFeed twin - JSON Feed 1.1The third twin: the same four articles as JSON Feed 1.1, using the 1.1 `authors` array rather than the 1.0 singular form, with ids, URLs, summaries, HTML bodies and timestamps identical to the RSS and Atom files. The reference output for an XML-to-JSON feed converter.

- rssFeed twin - RSS 2.0Four articles of a fictional publication as RSS 2.0, with a self-referential atom:link, non-permalink tag: GUIDs, RFC 822 dates and full HTML bodies in content:encoded. One of three twins carrying identical content, so a feed converter can be diffed against a known answer.

Generated by generation/data_formats.py. Free for any use, no attribution required — license.