SEO.JSONLD.PerformingArtsEvent (SEO v0.3.0-rc.0)

View Source

Live performance Event of the performing arts (music, theatre, dance, acrobatics, spoken word), including performance art and performative sports (e.g. choreographed forms of martial arts, figure skating, competitive ballroom dancing).Note: Use additionalType to differentiate between productions / shows (PerformanceWork, EventSeries), tours (EventSeries), and individual performances.

Helper for building a Schema.org PerformingArtsEvent JSON-LD structure.

Summary

Types

t()

A JSON-LD map ready to be nested or rendered. String-keyed, always includes "@type" set to "PerformingArtsEvent", plus any camelCased field keys the caller provided (see build/1). "@context" is added at render time by SEO.JSONLD.meta/1 on the top-level node only.

Functions

Build a PerformingArtsEvent JSON-LD map.

Types

attrs()

@type attrs() ::
  %{
    optional(:about) => SEO.JSONLD.Thing.t() | map(),
    optional(:actor) =>
      SEO.JSONLD.Person.t() | map() | SEO.JSONLD.PerformingGroup.t(),
    optional(:aggregate_rating) => SEO.JSONLD.AggregateRating.t() | map(),
    optional(:attendee) =>
      SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
    optional(:attendees) =>
      SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
    optional(:audience) => SEO.JSONLD.Audience.t() | map(),
    optional(:composer) =>
      SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
    optional(:contributor) =>
      SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
    optional(:director) => SEO.JSONLD.Person.t() | map(),
    optional(:door_time) =>
      DateTime.t() | NaiveDateTime.t() | String.t() | Time.t(),
    optional(:duration) =>
      Duration.t() | String.t() | SEO.JSONLD.QuantitativeValue.t() | map(),
    optional(:end_date) =>
      DateTime.t() | NaiveDateTime.t() | String.t() | Date.t(),
    optional(:event_attendance_mode) =>
      :mixed_event_attendance_mode
      | :offline_event_attendance_mode
      | :online_event_attendance_mode,
    optional(:event_schedule) => SEO.JSONLD.Schedule.t() | map(),
    optional(:event_status) =>
      :event_cancelled
      | :event_moved_online
      | :event_postponed
      | :event_rescheduled
      | :event_scheduled,
    optional(:funder) =>
      SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
    optional(:funding) => SEO.JSONLD.Grant.t() | map(),
    optional(:has_participation_offer) => SEO.JSONLD.Offer.t() | map(),
    optional(:has_sponsorship_offer) => SEO.JSONLD.Offer.t() | map(),
    optional(:in_language) => String.t() | SEO.JSONLD.Language.t() | map(),
    optional(:is_accessible_for_free) => boolean(),
    optional(:keywords) =>
      SEO.JSONLD.DefinedTerm.t() | map() | String.t() | URI.t(),
    optional(:location) =>
      String.t()
      | SEO.JSONLD.PostalAddress.t()
      | map()
      | SEO.JSONLD.VirtualLocation.t()
      | SEO.JSONLD.Place.t(),
    optional(:maximum_attendee_capacity) => integer(),
    optional(:maximum_physical_attendee_capacity) => integer(),
    optional(:maximum_virtual_attendee_capacity) => integer(),
    optional(:offers) => SEO.JSONLD.Offer.t() | map() | SEO.JSONLD.Demand.t(),
    optional(:organizer) =>
      SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
    optional(:performer) =>
      SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
    optional(:performers) =>
      SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
    optional(:previous_start_date) =>
      DateTime.t() | NaiveDateTime.t() | String.t() | Date.t(),
    optional(:recorded_in) => SEO.JSONLD.CreativeWork.t() | map(),
    optional(:remaining_attendee_capacity) => integer(),
    optional(:review) => SEO.JSONLD.Review.t() | map(),
    optional(:sponsor) =>
      SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
    optional(:start_date) =>
      Date.t() | String.t() | DateTime.t() | NaiveDateTime.t(),
    optional(:sub_event) => SEO.JSONLD.Event.t() | map(),
    optional(:sub_events) => SEO.JSONLD.Event.t() | map(),
    optional(:super_event) => SEO.JSONLD.Event.t() | map(),
    optional(:translator) =>
      SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
    optional(:typical_age_range) => String.t(),
    optional(:work_featured) => SEO.JSONLD.CreativeWork.t() | map(),
    optional(:work_performed) => SEO.JSONLD.CreativeWork.t() | map(),
    optional(:additional_type) => String.t() | URI.t(),
    optional(:alternate_name) => String.t(),
    optional(:description) => SEO.JSONLD.TextObject.t() | map() | String.t(),
    optional(:disambiguating_description) => String.t(),
    optional(:identifier) =>
      String.t() | URI.t() | SEO.JSONLD.PropertyValue.t() | map(),
    optional(:image) =>
      URI.t() | String.t() | SEO.JSONLD.ImageObject.t() | map(),
    optional(:main_entity_of_page) =>
      SEO.JSONLD.CreativeWork.t() | map() | URI.t() | String.t(),
    optional(:name) => String.t(),
    optional(:owner) =>
      SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
    optional(:potential_action) => SEO.JSONLD.Action.t() | map(),
    optional(:same_as) => URI.t() | String.t(),
    optional(:subject_of) =>
      SEO.JSONLD.Event.t() | map() | SEO.JSONLD.CreativeWork.t(),
    optional(:url) => URI.t() | String.t()
  }
  | [
      about: SEO.JSONLD.Thing.t() | map(),
      actor: SEO.JSONLD.Person.t() | map() | SEO.JSONLD.PerformingGroup.t(),
      aggregate_rating: SEO.JSONLD.AggregateRating.t() | map(),
      attendee: SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
      attendees: SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
      audience: SEO.JSONLD.Audience.t() | map(),
      composer: SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
      contributor: SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
      director: SEO.JSONLD.Person.t() | map(),
      door_time: DateTime.t() | NaiveDateTime.t() | String.t() | Time.t(),
      duration:
        Duration.t() | String.t() | SEO.JSONLD.QuantitativeValue.t() | map(),
      end_date: DateTime.t() | NaiveDateTime.t() | String.t() | Date.t(),
      event_attendance_mode:
        :mixed_event_attendance_mode
        | :offline_event_attendance_mode
        | :online_event_attendance_mode,
      event_schedule: SEO.JSONLD.Schedule.t() | map(),
      event_status:
        :event_cancelled
        | :event_moved_online
        | :event_postponed
        | :event_rescheduled
        | :event_scheduled,
      funder: SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
      funding: SEO.JSONLD.Grant.t() | map(),
      has_participation_offer: SEO.JSONLD.Offer.t() | map(),
      has_sponsorship_offer: SEO.JSONLD.Offer.t() | map(),
      in_language: String.t() | SEO.JSONLD.Language.t() | map(),
      is_accessible_for_free: boolean(),
      keywords: SEO.JSONLD.DefinedTerm.t() | map() | String.t() | URI.t(),
      location:
        String.t()
        | SEO.JSONLD.PostalAddress.t()
        | map()
        | SEO.JSONLD.VirtualLocation.t()
        | SEO.JSONLD.Place.t(),
      maximum_attendee_capacity: integer(),
      maximum_physical_attendee_capacity: integer(),
      maximum_virtual_attendee_capacity: integer(),
      offers: SEO.JSONLD.Offer.t() | map() | SEO.JSONLD.Demand.t(),
      organizer: SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
      performer: SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
      performers: SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
      previous_start_date:
        DateTime.t() | NaiveDateTime.t() | String.t() | Date.t(),
      recorded_in: SEO.JSONLD.CreativeWork.t() | map(),
      remaining_attendee_capacity: integer(),
      review: SEO.JSONLD.Review.t() | map(),
      sponsor: SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
      start_date: Date.t() | String.t() | DateTime.t() | NaiveDateTime.t(),
      sub_event: SEO.JSONLD.Event.t() | map(),
      sub_events: SEO.JSONLD.Event.t() | map(),
      super_event: SEO.JSONLD.Event.t() | map(),
      translator: SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
      typical_age_range: String.t(),
      work_featured: SEO.JSONLD.CreativeWork.t() | map(),
      work_performed: SEO.JSONLD.CreativeWork.t() | map(),
      additional_type: String.t() | URI.t(),
      alternate_name: String.t(),
      description: SEO.JSONLD.TextObject.t() | map() | String.t(),
      disambiguating_description: String.t(),
      identifier: String.t() | URI.t() | SEO.JSONLD.PropertyValue.t() | map(),
      image: URI.t() | String.t() | SEO.JSONLD.ImageObject.t() | map(),
      main_entity_of_page:
        SEO.JSONLD.CreativeWork.t() | map() | URI.t() | String.t(),
      name: String.t(),
      owner: SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
      potential_action: SEO.JSONLD.Action.t() | map(),
      same_as: URI.t() | String.t(),
      subject_of: SEO.JSONLD.Event.t() | map() | SEO.JSONLD.CreativeWork.t(),
      url: URI.t() | String.t()
    ]

t()

@type t() :: %{required(String.t()) => term()}

A JSON-LD map ready to be nested or rendered. String-keyed, always includes "@type" set to "PerformingArtsEvent", plus any camelCased field keys the caller provided (see build/1). "@context" is added at render time by SEO.JSONLD.meta/1 on the top-level node only.

Functions

build(attrs)

@spec build(attrs()) :: t()

Build a PerformingArtsEvent JSON-LD map.

Fields

This type has no own properties. See the inherited properties below.

Inherited properties

Additional properties are available through the inheritance chain. See each ancestor's docs for its properties: