XooCode(){

ExhibitionEvent

ExhibitionEvent is an Event subtype for exhibitions at museums, galleries, libraries, archives, and trade shows. It adds no properties of its own, but the type classification tells search engines this is an exhibition, not a concert or workshop. Schema.org's own description specifically mentions workFeatured as the key Event property for exhibitions: "a work featured in some event, e.g. exhibited in an ExhibitionEvent."

The type hierarchy is Thing → Event → ExhibitionEvent. Exhibitions typically run for weeks or months rather than a single evening, so startDate and endDate are both dates (not date-times). The other properties that matter most are workFeatured (what is on display), location (the venue), organizer (the gallery or institution), and isAccessibleForFree (whether admission is free).

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

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

Highlight legend:Required by GoogleRecommendedOptional
schema.org/ExhibitionEvent
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@id": "https://xoogallery.com/exhibitions/faces-of-dunmore#exhibition",
  "@type": "ExhibitionEvent",
  "name": "Faces of Dunmore: Portraits from Copenhagen to Main Street",
  "url": "https://xoogallery.com/exhibitions/faces-of-dunmore",
  "description": "A photography exhibition tracing the people who shaped Dunmore, from Jane Xoo's 1945 Copenhagen portrait to contemporary street photography of Main Street. Thirty photographs spanning eight decades.",
  "image": [
    "https://xoogallery.com/exhibitions/faces-of-dunmore/poster-1x1.jpg",
    "https://xoogallery.com/exhibitions/faces-of-dunmore/poster-4x3.jpg",
    "https://xoogallery.com/exhibitions/faces-of-dunmore/poster-16x9.jpg"
  ],
  "startDate": "2026-09-01",
  "endDate": "2026-11-30",
  "eventStatus": "https://schema.org/EventScheduled",
  "eventAttendanceMode": "https://schema.org/OfflineEventAttendanceMode",
  "location": {
    "@id": "https://xoogallery.com#gallery",
    "@type": "ArtGallery",
    "name": "Xoo Gallery",
    "url": "https://xoogallery.com",
    "address": {
      "@type": "PostalAddress",
      "streetAddress": "500 Main Street, Lower Level",
      "addressLocality": "Dunmore",
      "addressRegion": "PA",
      "postalCode": "18512",
      "addressCountry": "US"
    }
  },
  "organizer": {
    "@id": "https://xoogallery.com#gallery",
    "@type": "ArtGallery",
    "name": "Xoo Gallery"
  },
  "workFeatured": [
    {
      "@id": "https://roydanmedjournal.dk/archive/photos/jane-xoo-portrait-1945#photo",
      "@type": "Photograph",
      "name": "Jane Xoo, Rigshospitalet, 1945"
    },
    {
      "@type": "Photograph",
      "name": "Main Street Morning, 2024",
      "creator": {
        "@type": "Person",
        "name": "Elena Park"
      }
    },
    {
      "@type": "Photograph",
      "name": "The Thunderdome Under Construction, 2011",
      "creator": {
        "@type": "Person",
        "name": "Ray Kowalski"
      }
    }
  ],
  "contributor": {
    "@type": "Organization",
    "@id": "https://roydanmedjournal.dk#publication",
    "name": "Royal Danish Medical Journal"
  },
  "offers": {
    "@type": "Offer",
    "price": "0",
    "priceCurrency": "USD",
    "availability": "https://schema.org/InStock",
    "url": "https://xoogallery.com/exhibitions/faces-of-dunmore"
  },
  "isAccessibleForFree": true,
  "inLanguage": "en"
}
</script>

workFeatured

workFeatured lists the creative works on display. It takes any CreativeWork object: Photograph, Painting, Sculpture, VisualArtwork, or even a Movie for a film exhibition. Use an array when the exhibition features multiple named works. Reference existing entities via @id so Google can connect the exhibition to the artwork's knowledge graph entry. You do not need to list every piece in a 200-work exhibition; list the headline works.

Exhibition runs vs one-night events

Most exhibitions run for weeks or months. Use startDate for the opening date and endDate for the closing date. Unlike a concert where startDate includes a time (2026-06-14T19:30:00), an exhibition's dates are typically just dates (2026-09-01) because the exhibition is open during the venue's regular hours, not at a specific showtime. If the exhibition has a separate opening night reception, that is a different event (an Event or SaleEvent for a preview sale) that can reference the ExhibitionEvent via superEvent.

ExhibitionEvent vs the gallery's event property

A gallery or museum marked up as ArtGallery (an EntertainmentBusiness) can list current exhibitions using its event property. That is a summary reference on the venue's page. The ExhibitionEvent itself is a standalone entity with its own page, its own @id, and its own workFeatured list. Both should exist: the gallery page references the exhibition, and the exhibition page has the full ExhibitionEvent markup.

organizer and contributor

organizer is the institution hosting the exhibition. contributor covers guest curators, lending institutions, or partner organizations. For a traveling exhibition, the originating museum is the organizer; the hosting venue is the location. If the gallery both organizes and hosts the exhibition, organizer and location point to the same entity.

Minimal valid version

The smallest markup that still produces a valid ExhibitionEvent 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/ExhibitionEvent (minimal)
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "ExhibitionEvent",
  "name": "Faces of Dunmore: Portraits from Copenhagen to Main Street",
  "startDate": "2026-09-01",
  "endDate": "2026-11-30",
  "eventStatus": "https://schema.org/EventScheduled",
  "eventAttendanceMode": "https://schema.org/OfflineEventAttendanceMode",
  "location": {
    "@type": "Place",
    "name": "Xoo Gallery",
    "address": {
      "@type": "PostalAddress",
      "streetAddress": "500 Main Street, Lower Level",
      "addressLocality": "Dunmore",
      "addressRegion": "PA",
      "addressCountry": "US"
    }
  },
  "image": "https://xoogallery.com/exhibitions/faces-of-dunmore/poster-16x9.jpg",
  "description": "Photography exhibition tracing the people who shaped Dunmore. Thirty photographs spanning eight decades."
}
</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 ExhibitionEvent 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

    Using Event for an exhibition

    Wrong
    "@type": "Event" for a gallery or museum exhibition
    Right
    "@type": "ExhibitionEvent"

    ExhibitionEvent tells search engines this is an exhibition, not a one-off gathering. The classification matters for museum and gallery search features. Schema.org specifically calls out ExhibitionEvent as the type for exhibitions at museums, libraries, archives, and trade shows.

  2. 02

    Missing workFeatured

    Wrong
    ExhibitionEvent with name and dates but no workFeatured
    Right
    "workFeatured": [{ "@type": "Photograph", "name": "Jane Xoo, Rigshospitalet, 1945" }]

    workFeatured is the property that gives an ExhibitionEvent its content. Without it, the exhibition is just a named event with no connection to the works being shown. List the headline pieces so Google can connect the exhibition to the artworks in the knowledge graph.

  3. 03

    Using date-times instead of dates for a multi-week exhibition

    Wrong
    "startDate": "2026-09-01T10:00:00-04:00" for an exhibition open during gallery hours
    Right
    "startDate": "2026-09-01"

    An exhibition that runs September through November is not a single event at 10 AM on September 1st. Use date-only format (YYYY-MM-DD) for exhibitions open during regular gallery hours. Save date-time format for events with a specific start time, like an opening night reception.

  4. 04

    Putting the full exhibition in the gallery's event property

    Wrong
    ArtGallery with a complete ExhibitionEvent nested inside its event property
    Right
    ArtGallery.event as a summary reference; ExhibitionEvent as a standalone entity on its own page

    The gallery's event property is a pointer, not the full exhibition record. Keep the gallery page's event reference brief (name, dates, type) and put the complete ExhibitionEvent with workFeatured, contributor, and offers on its own URL. Both pages should exist, and the ExhibitionEvent should have its own @id.

About the example data

Xoo Gallery (the ArtGallery inside The Thunderdome) hosts a photography exhibition centered on the 1945 portrait of Jane Xoo. The workFeatured references the Photograph entity via @id. This is the full ExhibitionEvent for the exhibition that the ArtGallery example references in its event property.

Comments

Loading comments...

Leave a comment