XooCode(){

PublicationVolume

PublicationVolume is a CreativeWork subtype for a single volume of a serial publication: "Volume 3" of a quarterly journal, the 2026 annual volume of a trade magazine, or a single volume of a multi-volume book. It adds 4 properties: volumeNumber, pageStart, pageEnd, and pagination.

Volumes link up to their Periodical via isPartOf, and down to their PublicationIssue members via hasPart. Pagination is expressed as either pageStart+pageEnd (integer pages) or pagination (free-form for non-contiguous ranges like "1-6, 9, 55").

Full example of schema.org/PublicationVolume json-ld markup

The markup is verified as valid with Rich Results Test from Google.

Highlight legend:Required by GoogleRecommendedOptional
schema.org/PublicationVolume
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "PublicationVolume",
  "volumeNumber": 3,
  "datePublished": "2026",
  "isPartOf": { "@type": "Periodical", "name": "Xoo Code Quarterly", "issn": "2693-0000" },
  "pageStart": 1,
  "pageEnd": 612,
  "hasPart": [
    { "@type": "PublicationIssue", "issueNumber": 1, "datePublished": "2026-03-15", "pageStart": 1, "pageEnd": 148 },
    { "@type": "PublicationIssue", "issueNumber": 2, "datePublished": "2026-06-15", "pageStart": 149, "pageEnd": 310 }
  ]
}
</script>

Minimal valid version

The smallest markup that still produces a valid PublicationVolume entity. Use it as the floor. Reach for the advanced example above when you want search engines and AI agents to understand more about your content.

schema.org/PublicationVolume (minimal)
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "PublicationVolume",
  "volumeNumber": 3,
  "datePublished": "2026",
  "isPartOf": { "@type": "Periodical", "name": "Xoo Code Quarterly" }
}
</script>

Google rich results this unlocks

Markup matching this example makes your page eligible for the following Google Search rich results. The primary target drives the required / recommended property classification in the advanced code block above.

Common PublicationVolume mistakes

Mistakes that pass validation but silently fail to earn rich results or mislead consumers walking the graph. Avoid these and your markup will be ahead of most sites in the wild.

  1. 01

    volumeNumber as a full label

    Wrong
    "volumeNumber": "Volume 3"
    Right
    "volumeNumber": 3 (integer) or "volumeNumber": "iii" (roman numeral text)

    volumeNumber expects the number itself. The 'Volume ' prefix is rendering, not data. Integers are preferred; use Text only when volumes are labelled with Roman numerals or letters.

  2. 02

    Omitting isPartOf

    Wrong
    PublicationVolume floating without a Periodical reference
    Right
    Link up via isPartOf to the Periodical

    A volume alone carries no meaning; the whole point is to chain up to the serial. Indexers will not connect volumes to their parent periodical without isPartOf.

About the example data

Volume 3 (2026) of the Xoo Code Quarterly, running pages 1 through 612 across four quarterly issues.

Comments

Loading comments...

Leave a comment