Event schema: strukturovaná data pro hybridní eventy a živé přenosy

Event schema pro hybridní eventy a streamy: přehled a cíle

Hybridní události kombinují fyzickou účast s online streamem nebo plnohodnotným virtuálním zážitkem. Strukturovaná data schema.org umožňují přesně vyjádřit tento mix pomocí Event, EventAttendanceModeEnumeration, VirtualLocation, Place, BroadcastEvent a pro streamy také VideoObject. Správné modelování zlepšuje srozumitelnost v ekosystémech vyhledávání, asistentů a kalendářů, zvyšuje přesnost datových integrací a minimalizuje nekonzistence napříč kanály.

Klíčové pojmy a entity v rámci schema.org

  • Event: základ pro všechny události (název, popis, data, stav, místo/místa, organizátor, účinkující/řečníci, nabídky vstupenek).
  • EventAttendanceModeEnumeration: OfflineEventAttendanceMode, OnlineEventAttendanceMode, MixedEventAttendanceMode.
  • VirtualLocation a Place: reprezentují online a fyzickou lokalitu; u hybridních eventů se často používají společně (pole s více hodnotami).
  • BroadcastEvent: živé vysílání nebo záznam streamu; často navázané přes subEvent nebo superEvent na hlavní Event.
  • VideoObject: detail streamu/videa (URL přehrávače, délka, náhled, isLiveBroadcast).
  • Schedule: opakování (periodicita, dny v týdnu) pro série nebo cykly.
  • Offer / AggregateOffer: vstupenky a registrace; měna, cena, dostupnost, platnost, prodejce.

Modelování hybridu: kombinace lokace a režimu účasti

Hybridní událost typicky označte eventAttendanceMode = MixedEventAttendanceMode a použijte pole v location s prvky Place (fyzická adresa) a VirtualLocation (URL streamu/registrace). Alternativně je možné vytvořit superEvent (hlavní událost) a více subEvent (např. „On-site stage“, „Livestream stage“), každé s vlastní lokalitou a vstupenkami.

Standardní pole, která nesmí chybět

  • name, description, startDate, endDate (ISO 8601 s časovou zónou), eventStatus (např. EventScheduled, EventPostponed).
  • eventAttendanceMode, location (Place a/nebo VirtualLocation), organizer (Organization/Person), performer / speaker.
  • offers (cena, měna, dostupnost, odkaz), isAccessibleForFree, inLanguage, audience.
  • @id (stabilní identifikátor), sameAs (profil/událost v dalších systémech), image (plakát, náhled streamu).

Stream a živé vysílání: BroadcastEvent a VideoObject

Živý přenos reprezentujte jako BroadcastEvent (s isLiveBroadcast) propojený na VideoObject (přehrávač, embed, náhled) a na hlavní Event přes subEvent nebo workFeatured. Při dostupnosti záznamu po události aktualizujte isLiveBroadcast na false a doplňte uploadDate v VideoObject.

Příklad: hybridní událost (jednorázová) s livestreamem

Ukázka JSON-LD (zkrácené, důležitá pole):

Příklad: série hybridních meet-upů se Schedule (ISR-friendly)

Pro opakovaná setkání použijte eventSchedule se Schedule a udržujte stabilní @id pro sérii (superEvent) i jednotlivé části (subEvent).

Příklad: čistě online stream s následným záznamem

U čistě online akce můžete použít Event + BroadcastEvent nebo pouze BroadcastEvent jako subEvent s VideoObject.

Datová konzistence: identifikátory, časové zóny, stavy

  • Stabilní @id: používejte neměnné identifikátory na úrovni série, dílu, streamu; usnadní to přiřazování záznamů a referencí.
  • ISO 8601 s TZ: vždy uveďte časovou zónu (+01:00, Z), případně scheduleTimezone u Schedule.
  • eventStatus: aktualizujte při odkladu/zrušení (EventPostponed, EventCancelled); udržujte soulad s textem na stránce.
  • Parita kanálů: data v JSON-LD musí odpovídat viditelnému obsahu (názvy, ceny, kapacity, odkazy).

Vstupenky a registrace: Offer a AggregateOffer

  • Offer: použijte pro konkrétní typ vstupu (on-site, stream, VIP). Vyplňte price, priceCurrency, availability, validFrom, url, seller.
  • AggregateOffer: pokud komunikujete cenové rozpětí nebo balíčky.
  • Více offers: u hybridu použijte dvě a více nabídek; při vyprodání aktualizujte availability na SoldOut.

Propojení: superEvent, subEvent, multi-stage a watch parties

U velkých událostí s paralelními stagemi nebo lokálními „watch parties“:

  • superEvent: hlavní událost (konference).
  • subEvent: jednotlivé stage/relace (on-site track, livestream track, watch party ve městě).
  • location na úrovni subEvent umožní přesně specifikovat fyzickou/virtuální adresu každé části.

Obsah pro stream: náhledy, kapitoly, přepisy

  • VideoObject rozšiřte o caption/transcript, hasPart (kapitoly jako Clip), duration, contentUrl/embedUrl.
  • isLiveBroadcast přepínejte na false po skončení; doplňte uploadDate pro záznam.

Vícejazyčnost, přístupnost a publikum

  • inLanguage: pole jazyků (ISO 639-1).
  • audience: Audience s audienceType (např. „Data engineers“, „Marketers“).
  • isAccessibleForFree, accessibilitySummary, accessibilityInfo (pokud máte k dispozici), bezbariérový přístup v Place.

Validace a QA: co testovat před publikací

  • Shoda dat: stejné názvy, časy, odkazy a ceny v UI i v JSON-LD.
  • Syntaktická správnost: validní JSON-LD, správné URL, kompletní typy a hodnoty enumerací.
  • Kalendářní konflikty: logika startDate < endDate, správná časová zóna.
  • Rozpad série: u Schedule ověřit generované díly; při zrušení aktualizovat konkrétní subEvent.

Životní cyklus: od oznámení po post-event

  1. Oznámení: EventScheduled, nabídky jako „Coming soon“ s validFrom v budoucnosti.
  2. Prodej: aktualizace availability, detail stream URL až po registraci (může být gate-ován).
  3. Live: BroadcastEvent.isLiveBroadcast=true, reálný čas odkaz na přehrávač.
  4. Post-event: přepnutí isLiveBroadcast=false, doplnění uploadDate, publikace záznamu a materiálů.

Běžné chyby a anti-vzory

  • Nekonzistentní režim účasti: chybí MixedEventAttendanceMode u hybridu, nebo chybí jedna z lokalit.
  • Chybná časová zóna: lokální časy bez offsetu; používejte ISO 8601 s +/-HH:MM.
  • „Mizící“ streamy: VirtualLocation.url vede na 404 nebo na generickou homepage, nikoliv na registraci/přehrávač.
  • Neaktualizovaný stav: změny v UI (zrušeno/odloženo) bez změny eventStatus v JSON-LD.
  • Nesprávné použití VideoObject: chybí isLiveBroadcast nebo náhled; po skončení nedojde k přepnutí režimu.

Rozšíření: hodnocení, sponzo