Skip to content
Novus Examples
json1.2 KB

JSON-LD Product with Offer and AggregateRating

A valid Product record with a nested Offer carrying price, currency, availability, condition and shipping details, plus an AggregateRating. For testing rich-result validators and structured-data extractors against a document that should pass cleanly.

Preview — first 46 linesjson
{
  "@context": "https://schema.org",
  "@type": "Product",
  "@id": "https://www.example.com/catalog/boots#product",
  "name": "Example Trail Boot",
  "description": "Sample product record. Fictional data, not for sale.",
  "sku": "EX-BOOT-001",
  "gtin13": "0000000000017",
  "brand": {
    "@type": "Brand",
    "name": "Example Outdoors"
  },
  "image": [
    "https://cdn.example.net/img/boots-front.jpg",
    "https://cdn.example.net/img/boots-sole.jpg"
  ],
  "offers": {
    "@type": "Offer",
    "url": "https://www.example.com/catalog/boots",
    "priceCurrency": "EUR",
    "price": "149.00",
    "priceValidUntil": "2027-01-01",
    "availability": "https://schema.org/InStock",
    "itemCondition": "https://schema.org/NewCondition",
    "shippingDetails": {
      "@type": "OfferShippingDetails",
      "shippingRate": {
        "@type": "MonetaryAmount",
        "value": "4.95",
        "currency": "EUR"
      },
      "shippingDestination": {
        "@type": "DefinedRegion",
        "addressCountry": "DE"
      }
    }
  },
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.4",
    "reviewCount": 128,
    "bestRating": "5",
    "worstRating": "1"
  }
}

Specifications

Seed
70400
Site
example.com (fictional)
Format
JSON-LD (schema.org)
Encoding
UTF-8
Types
Product, Offer, AggregateRating
Nodes
7
Rich Result Eligible
true

Testing contract

Expected to pass
Scenario
Run a structured-data validator over a product page's JSON-LD.
Expected result
One Product node is returned with a valid Offer (EUR 149.00, InStock) and an AggregateRating of 4.4 from 128 reviews; the document is reported eligible for a product rich result with zero errors.

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

“JSON-LD Product with Offer and AggregateRating” is a deterministic Novus Examples fixture for Web assets, JSON parsing, Schema validation, Metadata 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 · 7 nodes · UTF-8. 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("jsonld-product-offer.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.