Skip to content
Novus Examples
json2.3 KB

Feed twin - JSON Feed 1.1

The 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.

Preview — first 50 linesjson
{
  "version": "https://jsonfeed.org/version/1.1",
  "title": "Example Dispatch",
  "description": "A fictional publication shipped in three feed formats with identical content.",
  "home_page_url": "https://www.example.com/blog/",
  "feed_url": "https://www.example.com/feeds/dispatch.json",
  "language": "en",
  "authors": [
    {
      "name": "A. Sample",
      "url": "https://www.example.com/authors/a-sample"
    }
  ],
  "items": [
    {
      "id": "tag:example.com,2026:dispatch-004",
      "url": "https://www.example.com/blog/sitemap-shards-explained",
      "title": "Sitemap shards, explained",
      "summary": "Why a 50,000-URL ceiling exists and what a sitemap index actually buys you.",
      "content_html": "<p>A sitemap index is a list of lists. Sample article body.</p>",
      "date_published": "2026-01-01T12:00:00+00:00",
      "date_modified": "2026-01-01T12:00:00+00:00",
      "language": "en"
    },
    {
      "id": "tag:example.com,2026:dispatch-003",
      "url": "https://www.example.com/blog/crawl-budget-notes",
      "title": "Crawl budget notes",
      "summary": "Notes on crawl budget for a fictional catalogue of 500 items.",
      "content_html": "<p>Crawl budget is a scheduling story, not a quota. Sample article body.</p>",
      "date_published": "2026-01-01T09:30:00+00:00",
      "date_modified": "2026-01-01T09:30:00+00:00",
      "language": "en"
    },
    {
      "id": "tag:example.com,2026:dispatch-002",
      "url": "https://www.example.com/blog/reading-robots-txt",
      "title": "Reading robots.txt like a parser",
      "summary": "Group merging, longest-match precedence, and the fields nobody implements.",
      "content_html": "<p>Most robots.txt bugs are precedence bugs. Sample article body.</p>",
      "date_published": "2026-01-01T08:15:00+00:00",
      "date_modified": "2026-01-01T08:15:00+00:00",
      "language": "en"
    },
    {
      "id": "tag:example.com,2026:dispatch-001",
      "url": "https://www.example.com/blog/hello",
      "title": "Hello from the Example Dispatch",
      "summary": "The first entry of a fictional publication used as a feed fixture.",
      "content_html": "<p>Nothing here is real. Sample article body.</p>",
57 lines total — download for the full file.

Specifications

Seed
70400
Site
example.com (fictional)
Format
JSON Feed 1.1
Items
4
Date Format
RFC 3339
Authors Array
true
Feed Url
true

Testing contract

Reference control
Scenario
Convert the RSS or Atom twin to JSON Feed and diff against this file.
Expected result
The converter emits four items whose id, url, title, summary, content_html and date_published match this document field for field, and uses the plural `authors` member required by version 1.1.

What is a .json file?

JSON (JavaScript Object Notation) is a lightweight, text-based data-interchange format representing objects, arrays, strings, numbers, booleans, and null. It is language-independent, human-readable, and the dominant format for web APIs and configuration. It requires a single well-formed root value.

How to use this file

Use an example JSON file to test parsers and serializers, schema validation, Unicode and number-precision handling, and API request or response processing.

How to use this file for testing

“Feed twin - JSON Feed 1.1” is a deterministic Novus Examples fixture for Web assets, Feed parsing, JSON parsing, Conversion testing. Favicons, web app manifests, service workers, robots and sitemap files, Open Graph images, and .well-known resources — for testing web tooling, crawlers, PWA installers, and asset pipelines.

Documented properties for this file: seed 70400 · JSON Feed 1.1. 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.

Web-platform fixtures are standards-compliant samples against fictional example.com data. Test crawlers, PWA installers and manifest validators, favicon/icon pipelines, service-worker registration, or .well-known parsers against the documented structure.

Code examples

import json

with open("dispatch.json") as f:
    data = json.load(f)
print(type(data), len(data))

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