Skip to content

Conversation

wikier
Copy link
Contributor

@wikier wikier commented Apr 23, 2015

Currently schema.org misses support for event series.

The following diagram depicts the proposal:

Event Series desing

The proposal tries to minimize the impact on the current vocabulary by reusing already available terms, for instance hasPart/isPartOf. The design is based on the assumption that is better to materialize descriptions of each event rather than base the model on using the recurrence rule.

The Salzburger Festspiele could be the typical example where such construction would be necessary to model the different editions every summer.

This proposal has been developed by Redlink GmbH in the context of TourPack, a research project partially funded by the Austrian Research Promotion Agency (FFG).

@danbri
Copy link
Contributor

danbri commented Apr 23, 2015

Thanks for the detailed proposal (and illustration :) We do need to do more in this area.

Could you add a non-pull-request issue for this too, and some links to existing other issues on events? e.g. #240 is being actively discussed. Also #406 seems relevant, as well as various considerations around opening hours markup - https://github.com/schemaorg/schemaorg/issues?utf8=%E2%9C%93&q=opening+hours

@mfhepp
Copy link
Contributor

mfhepp commented Apr 23, 2015

Can't we handle those cases with the existing property

http://schema.org/superEvent

?

Then, the Salzburger Festspiele 2015 would be an event, and a single concert will also be an event, and the latter have the former as its schema:superEvent.

Or if you want to model the Salzburger Festspiele as a super-super event, just define all three:

foo:SalzburgerFestspiele a schema:Event.

foo:SalzburgerFestspiele2015 a schema:Event;
schema:superEvent foo:SalzburgerFestspiele.

foo:ConcertABC a schema:Event;
schema:superEvent foo:SalzburgerFestspiele2015.

AFAIK, this should cover all what is needed.

@wikier
Copy link
Contributor Author

wikier commented Apr 23, 2015

Sure @danbri, created issue #447 for that.

Yes @mfhepp, we could replace the usage of isPartOf by superEvent, but I still think it'd be necessary the notion of series for events. Maybe not only as Series, but also include in the new hierarchy of types.

@mfhepp
Copy link
Contributor

mfhepp commented Apr 23, 2015

Re property: @danbri has stressed recently that a specific property for parthood like superEvent is much better than expanding the use of isPartOf.

Re EventSeries - I think that the SalzburgerFestspiele is covered by the existing, broad notion of schema:Event. Unless we need specific properties for EventSeries, I would rather not add a new type for this.

@wikier
Copy link
Contributor Author

wikier commented Apr 23, 2015

ok, updated diagram to use superEvent instead:

Event Series desing

code is coming...

@mfhepp
Copy link
Contributor

mfhepp commented Apr 23, 2015

I would say that an EventSeries is also an Event. They will often have the same properties as singular events, like a location (e.g. Wagner festival in Bayreuth), they may have a startDate and endDate (e.g. an event like "Summer Classics in XYZ", which would run for a few months).

Many of the properties of http://schema.org/Series look weird to me when attached to an event series.

So I think we should simply use schema:Event for EventSeries and maybe expand the domain of a few properties from http://schema.org/Series to include schema:Event.

@wikier
Copy link
Contributor Author

wikier commented Apr 23, 2015

I disagree with that, @mfhepp, EventSeries is not an Event, FMPOV that would be the wrong semantics.

Let's take Salzburger Festspiele as example, with my proposed model the data would look like:

<http://www.salzburgerfestspiele.at/> a schema:EventSeries ;
  schema:name "Salzburger Festspiele"@de ;
  schema:name "Salzburg Festival"@en .

<http://www.salzburgerfestspiele.at/#2015> a schema:Event ;
  schema:superEvent <http://www.salzburgerfestspiele.at/> ;
  schema:startDate "2015-07-18"^^xsd:date ;
  schema:endDate "2015-08-30"^^xsd:date ;
  schema:name "Salzburger Festspiele 2015"@de ;
  schema:name "Salzburg Festival 2015"@en ;
  schema:subEvent <http://www.salzburgerfestspiele.at/opera/eroberung-2015> .

<http://www.salzburgerfestspiele.at/opera/eroberung-2015> a schema:Event ;
  schema:startDate "2015-07-20T20:00"^^xsd:dateTime ;
  schema:endDate "2015-07-20T22:00"^^xsd:dateTime ;
  schema:name "Wolfgang Rihm, Die Eroberung von Mexico"@de ;

...

<http://www.salzburgerfestspiele.at/#2014> a Event ;
  schema:superEvent <http://www.salzburgerfestspiele.at/> ;
  schema:startDate "2014-07-DD"^^xsd:date ;
  schema:endDate "2015-08-DD"^^xsd:date ;
  schema:name "Salzburger Festspiele 2014"@de ;
  schema:name "Salzburg Festival 2014"@en .

...

@wikier
Copy link
Contributor Author

wikier commented Apr 23, 2015

Actually... reading the current description of both superEvent and subEvent I do not think they have the right meaning for relating an event with the series it belongs to.

@rtroncy
Copy link

rtroncy commented Apr 23, 2015

Would the Olympic Games then be an EventSeries? Would you attach a schema:location property to an EventSeries?

@wikier
Copy link
Contributor Author

wikier commented Apr 23, 2015

Yes @rtroncy, Olympic Games could be a EventSeries. But it wouldn't have location, and actually that's a good example to argument why an EventSeries is not an Event.

@rtroncy
Copy link

rtroncy commented Apr 23, 2015

I'm trying to grasp the semantics of your EventSeries proposal and whether or not it implies some sort of grouping of events + having some recurrence. In your example, your EventSeries is a yearly? festival, the super Event is the particular year edition and the subEvents are all the things organized within this year (Opera, etc.), right? How is this different from the Olympic Games?

@wikier
Copy link
Contributor Author

wikier commented Apr 23, 2015

Yes, that's more or less the idea. I used a yearly event as an example, but a series does not need a fixed periodicity.

Let's use the Olympic Games to evolve a bit more the explantation: "Rio 2016 Olympics" is a Event, with concrete dates, all the subevents for each concrete sport, etc.; I think we all agree on that. But "Olympic Games" itself is a EventSeries, it does not have all the stuff around e concrete event (location, date, etc). Basically the semantics defined for Series, but for a concrete type I think was missed.

@rtroncy
Copy link

rtroncy commented Apr 23, 2015

OK, then I agree with the overall idea that such a thing is needed.

@wikier
Copy link
Contributor Author

wikier commented Apr 23, 2015

Great @rtroncy, I hope it also helps to clarify the point to others.

@mfhepp
Copy link
Contributor

mfhepp commented Apr 23, 2015

I would counter that most recurring music festivals, including the following

http://en.wikipedia.org/wiki/Bregenzer_Festspiele
http://en.wikipedia.org/wiki/Mozart_Festival_W%C3%BCrzburg
http://en.wikipedia.org/wiki/Bayreuth_Festival

would well work with schema:Event, same as most of

http://en.wikipedia.org/wiki/List_of_music_festivals

Even the modern Olympic Games could be modeled with schema:Event.

The three example given have a start date (first actual event) and a location.

I agree that we might need to improve the wording for schema:Event, but I hesitate to add a new type for this. I would not fight against EventSeries, but I do not see any actual benefit for neither publishers nor consumers of data. In the end, what matters is not whether you can disambiguate a concept by a philosophical analysis but whether the distinction brings any benefits for automated data processing.

@mfhepp
Copy link
Contributor

mfhepp commented Apr 23, 2015

Note that the Wikipedia definition for festival starts with

"A festival or gala is an event ..."

http://en.wikipedia.org/wiki/Festival

;-)

@thadguidry
Copy link
Contributor

Freebase also has an "EventSeries" Type ... it was called Recurring Event and note its properties - https://www.freebase.com/time/recurring_event?schema=&lang=en

@vickitardif
Copy link
Contributor

In issue #417, we are considering renaming Series to CreativeWorkSeries, which I think clarifies why the properties look weird when attached to EventSeries. (And also why we need better names.)

It would seem better to either make EventSeries a subtype of Event as previously suggested or create new properties to capture hasPart. I prefer the former, as I think there are times when EventSeries have the same properties as the individual Events.

@rtroncy
Copy link

rtroncy commented Apr 23, 2015

@mfhepp This is not that much a philosophical analysis, I'm all for being pragmatic but there are many many cases where even Wikipedia is struggling with this distinction between Event and EventSeries or whatever you want to name it. Take for example the series of G8 events, or G20, or EU Summit, etc. In Wikipedia, some G8 event or G20 events or EU Summit or you name it, have a dedicated wiki page because there has been some violence (Gothenburg, Heiligendamn) or some important decisions while for others, you will just find a trace in a list of ... type of wiki page.

@mfhepp
Copy link
Contributor

mfhepp commented Apr 23, 2015

All I am saying is that schema:Event would work for most (if not all) event series, with maybe a minor tweak of of the description. In the end, an event series can be considered a meta-event (an ideal). Same as we treat product models as subtypes of product, even though their ontological nature is quite different.

Again, I will not fight against adding an EventSeries type, but it will not add much value IMO.

@mfhepp
Copy link
Contributor

mfhepp commented Apr 23, 2015

For the records: Other vocabs for events also use a very broad notion of events:

  1. http://linkedevents.org/ontology/#term-Event
    "Class: Event

Definition: "Something that happened," as might be reported in a news article or explained by a historian.

An event consists of some temporal and spatial boundaries subjectively imposed on the flux of reality or imagination, that we wish to treat as an entity for the purposes of making statements about it. In particular, we may wish to make statements that relate people, places, or things to an event.

Note that, unlike some defintions of "event," this definition does not specify that an event involves a change of state, nor does it attempt to distinguish events from processes or states."

  1. http://motools.sourceforge.net/event/event.html#term_Event

"Event - An arbitrary classification of a space/time region, by a
cognitive agent. An event may have actively participating agents,
passive factors, products, and a location in space/time."

  1. http://www.loa.istc.cnr.it/ontologies/DUL.owl#Event
    Puh ;-)

"Any physical, social, or mental process, event, or state. More theoretically, events can be classified in different ways, possibly based on 'aspect' (e.g. stative, continuous, accomplishement, achievement, etc.), on 'agentivity' (e.g. intentional, natural, etc.), or on 'typical participants' (e.g. human, physical, abstract, food, etc.). Here no special direction is taken, and the following explains why: events are related to observable situations, and they can have different views at a same time. If a position has to be suggested here anyway, the participant-based classification of events seems the most stable and appropriate for many modelling problems. (1) Alternative aspectual views Consider a same event 'rock erosion in the Sinni valley': it can be conceptualized as an accomplishment (what has brought a certain state to occur), as an achievement (the state resulting from a previous accomplishment), as a punctual event (if we collapse the time interval of the erosion into a time point), or as a transition (something that has changed a state to a different one). In the erosion case, we could therefore have good motivations to shift from one aspect to another: a) causation focus, b) effectual focus, c) historical condensation d) transition (causality). The different views refer to the same event, but are still different: how to live with this seeming paradox? A typical solution e.g. in linguistics (cf. Levin's aspectual classes) and in DOLCE Full (cf. WonderWeb D18 axiomatization) is to classify events based on aspectual differences. But this solution would create different identities for a same event, where the difference is only based on the modeller's attitude. An alternative solution is applied here, and exploits the notion of (observable) Situation; a Situation is a view, consistent with a Description, which can be observed of a set of entities. It can also be seen as a 'relational context' created by an observer on the basis of a 'frame'. Therefore, a Situation allows to create a context where each particular view can have a proper identity, while the Event preserves its own identity. For example, ErosionAsAccomplishment is a Situation where rock erosion is observed as a process leading to a certain achievement: the conditions (roles, parameters) that suggest such view are stated in a Description, which acts as a 'theory of accomplishments'. Similarly, ErosionAsTransition is a Situation where rock erosion is observed as an event that has changed a state to another: the conditions for such interpretation are stated in a different Description, which acts as a 'theory of state transitions'. Consider that in no case the Event is changed or enriched in parts by the aspectual view. (2) Alternative intentionality views Similarly to aspectual views, several intentionality views can be provided for a same Event. For example, one can investigate if an avalanche has been caused by immediate natural forces, or if there is any hint of an intentional effort to activate those natural forces. Also in this case, the Event as such has not different identities, while the causal analysis generates situations with different identities, according to what Description is taken for interpreting the Event. On the other hand, if the possible actions of an Agent causing the starting of an avalanche are taken as parts of the Event, then this makes its identity change, because we are adding a part to it. Therefore, if intentionality is a criterion to classify events or not depends on if an ontology designer wants to consider causality as a relevant dimension for events' identity. (3) Alternative participant views A slightly different case is when we consider the basic participants to an Event. In this case, the identity of the Event is affected by the participating objects, because it depends on them. For example, if snow, mountain slopes, wind, waves, etc. are considered as an avalanche basic participants, or if we also want to add water, human agents, etc., makes the identity of an avalanche change. Anyway, this approach to event classification is based on the designer's choices, and more accurately mirrors lexical or commonsense classifications (see. e.g. WordNet 'supersenses' for verb synsets). Ultimately, this discussion has no end, because realists will keep defending the idea that events in reality are not changed by the way we describe them, while constructivists will keep defending the idea that, whatever 'true reality' is about, it can't be modelled without the theoretical burden of how we observe and describe it. Both positions are in principle valid, but, if taken too radically, they focus on issues that are only partly relevant to the aim of computational ontologies, which only attempt to assist domain experts in representing what they want to conceptualize about a certain portion of reality according to their own ideas. For this reason, in this ontology both events and situations are allowed, together with descriptions, in order to encode the modelling needs independently from the position (if any) chosen by the designer."

@vickitardif
Copy link
Contributor

I think there is utility in being able to explicitly differentiate the EventSeries from the individual events. For example, the website for the Academy Awards, is largely about the 2015 event. At some point, it will be about the 2016 event. It would be nice if they could mark up information about the Academy Awards as a series differently from the most current Academy Awards presentation.

@wikier
Copy link
Contributor Author

wikier commented Apr 24, 2015

I think @danbri has to establish the foundations of such semantic, specially regarding the Series refactoring is being discussed at #417. I find a bit weak base the arguments on wikipedia textual descriptions.

Clearly a EventSeries and a Event have different meanings. How we want to model (different classes, same class with different properties, etc) it's a discussion can tak eplace later. This PR only proposes something, but grasp the semantics is needed before.

@danbri
Copy link
Contributor

danbri commented Apr 24, 2015

@vholland the difference between the proposed EventSeries and (CreativeWork)Series is that the latter serves largely as an organizing supertype (which we don't do much of) for more specific subtypes that would get widely deployed, whereas it sounds like EventSeries would be expected to be used for in-page markup directly.

My main concerns remain 1. clarifying relationship between a group of events linked by a common EventSeries, and a group of events linked by a common http://schema.org/superEvent 2. finding a model for repeating events and opening/closing hours that is simple enough to understand but that has some strategy for overriding defaults e.g. for holidays.

@StephenMoffitt
Copy link

I just wanted to interject here and flag a project that I am currently working on with the Southbank Centre, Barbican Centre and Culture Kent. We are developing an open event data model, API design principle and, hopefully, a platform for delivering our shared event data. One of the key issues that we have been working on is how to model groups (series) of events. Most of the big organisations in the project have complex relationships amongst events, e.g., an event may be part of one or more series and these series may also be part of a larger series, such as a season.

While we have tried to stay in line with the schema.org model, we have found that it does not address our aims of using the model across the entire organisational landscape. Specifically when it comes to grouping events together, we have gone down the route of having a grouping entity with one attribute (type) that defines what kind of grouping it is. Events then can be associated with with one or more groupings.

If you are interested, I would be happy to share more about our model. I am also keen to see the outcome of this discussion as it will have an impact on how our model develops.

@scdba
Copy link

scdba commented Apr 30, 2015

Hi folks
I'm a colleague of Stephen's working at Southbank Centre.

When @danbri mentions an override for holidays, it makes me think calendar applications, and hence ...
I'm wondering if someone cleverer than me can think whether there is anything to be gained from what Google have done for their Calendar API.
See https://developers.google.com/google-apps/calendar/concepts#recurring_events
and the RFC mentioned there:
http://www.ietf.org/rfc/rfc2445

It's way over my head, but it's work that has been at least considered in another context. Any thoughts?

@mfhepp
Copy link
Contributor

mfhepp commented Apr 30, 2015

@scdba
Very good point! We should take this as input when working on recurring dates, but at least I will not be able to touch this for sdo-gozer, so it is likely a task for the Q2 release.

@mfhepp
Copy link
Contributor

mfhepp commented Apr 30, 2015

Also, let us please separate the two issues of

a) modeling recurring dates and
b) whether we need an EventSeries type.

Recurring dates will be relevant for many branches of schema.org, namely for opening hours, but also offer validity and prices specifications, so I prefer a generic solution. Once we have this, there is IMO no need for a specific mechanism for recurring events, because we can simply use the recurring dates mechanism to specify the dates of the event.

danbri and others added 25 commits April 4, 2016 22:30
Extended range to include (for now just) CreativeWork, Product.
Fixes #950
Also impemented 304 return codes for ETAG & modified since requests.
Addresses issues (#256) and (#1024)
after confirming that it didn't work the other way.
Introduced handling of HTTP HEAD Requests
extensions into schemas.html and explained special status of
pending and meta extensions.
…ozer"

This reverts commit c3bd511, reversing
changes made to 84204fe.
wikier added a commit to redlink-gmbh/schemaorg that referenced this pull request Apr 8, 2016
@wikier wikier mentioned this pull request Apr 8, 2016
@wikier
Copy link
Contributor Author

wikier commented Apr 8, 2016

The PR was from a very old branch, so we'll continue this feature at #1088.

@wikier wikier closed this Apr 8, 2016
@danbri
Copy link
Contributor

danbri commented Apr 12, 2016

Would anyone here object to EventSeries being subtype of Event? please follow up general design discussion in the issue at #447 rather than in specific pull requests.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dates times and events Describing times, dates and events (and their relationships) schema.org vocab General top level tag for issues on the vocabulary

Projects

None yet

Development

Successfully merging this pull request may close these issues.