Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add eventAttendanceMode to Event #225

Open
thill-odi opened this issue Mar 19, 2020 · 19 comments
Open

Add eventAttendanceMode to Event #225

thill-odi opened this issue Mar 19, 2020 · 19 comments
Assignees
Labels
proposal virtual events

Comments

@thill-odi
Copy link
Contributor

@thill-odi thill-odi commented Mar 19, 2020

Proposer

@nickevansuk (ODI/imin) with contributions from @thill-odi (ODI)

Use Case

An Opportunity provider is providing new means of accessing led classes online, as well as or instead of at a physical location.

This proposal obviously has increased salience in light of COVID-19 isolation measures.

Why is this not covered by existing properties?

The existing data model deals only with physical locations, not those available via online technologies.

Please provide a link to example data

See e.g. https://www.cococollective.co.uk/booking/ for a yoga studio that has recently moved to online events to replace physical ones.

Proposal

The schema.org property eventAttendanceMode should be added to all Opportunity types, with the exception of Slot, FacilityUse, and IndividualFacilityUse. Its purpose is to indicate whether participation is in a physical location only, online, or both, and it takes the following values:

  • MixedEventAttendanceMode
  • OfflineEventAttendanceMode
  • OnlineEventAttendanceMode

It is assumed that eventAttendanceMode is fully heritable, so that values defined on parent objects (e.g. EventSeries, SessionSeries) are applicable to child objects (e.g. Event, ScheduledSession). Where this value is defined on a child object, however, the value defined at this lower level takes precedence over any defined higher up the chain.

@thill-odi
Copy link
Contributor Author

@thill-odi thill-odi commented Mar 19, 2020

See also #224, #226, #227.

@thill-odi thill-odi added the virtual events label Mar 19, 2020
@thill-odi
Copy link
Contributor Author

@thill-odi thill-odi commented Mar 19, 2020

Semantics rules (from @nickevansuk) ...

When:

  • eventAttendanceMode is set to https://schema.org/OnlineEventAttendanceMode, virtualLocation MUST be present and location MAY be present, however data users MUST NOT advertise the location as a means of participation.
  • eventAttendanceMode is set to https://schema.org/MixedEventAttendanceMode. virtualLocation MUST be present and location MUST be present.
  • eventAttendanceMode is set to https://schema.org/OfflineEventAttendanceMode. virtualLocation MUST NOT be present and location MUST be present.

@nishaldesai
Copy link

@nishaldesai nishaldesai commented Mar 23, 2020

To add to this, location information in all cases is very useful for local authorities and others wanting to support local businesses. i.e. if Westminster is going out to local businesses to get them to go virtual so that Active Westminster can support them, they should have a way for Westminster as a data user, or users as part of the UX, to filter for "local" only

@nickevansuk
Copy link
Contributor

@nickevansuk nickevansuk commented Mar 23, 2020

Is virtualLocation actually "MUST" - as some events will simply not include this detail (e.g. if the virtual location is behind a paywall)?

Perhaps it should be RECOMMENDED instead?

See https://docs.google.com/spreadsheets/d/1xENpJfK77neNlltsUre7kvjJBibowIDv1xFUBjpSYNU/edit#gid=0

@nickevansuk
Copy link
Contributor

@nickevansuk nickevansuk commented Mar 23, 2020

We also need to add guidance for location for OnlineEventAttendanceMode, that this is the original location of the class so not the house they’re in when they're under lockdown, but the studio they’re usually in, to help people find stuff that's "near to them" at least virtually

@nickevansuk
Copy link
Contributor

@nickevansuk nickevansuk commented Mar 23, 2020

Additionally should we relax constraints on PostalAddress for OnlineEventAttendanceMode, in case activity providers just want to give a rough location and not an exact one (e.g. postcode only).

This is something that has been discussed more generally in previous W3C calls to help outdoor providers too.

@nickevansuk
Copy link
Contributor

@nickevansuk nickevansuk commented Mar 23, 2020

As @lukehesluke has pointed out, perhaps there are two separate but often related semantic objectives that are being discussed?

  • Original location: Where this studio was located before it went virtual
  • Affiliated Locality: For a studio which was perhaps never physical. "I'm in Westminster borough". So it can be picked up by Active Westminster

Suggest location for OnlineEventAttendanceMode covers both of these - and in both cases is just indicative of where the broadcast is coming from

@JoshuaLevett
Copy link

@JoshuaLevett JoshuaLevett commented Mar 24, 2020

Is there an estimated date for these virtual session additions?

@domfennell
Copy link

@domfennell domfennell commented Mar 24, 2020

A positive response from Croydon Borough Council ("sounds like a fantastic alternative") and a suggestion for consideration: "could there be an option for feedback post session to measure uptake, ease, fun factor etc., ?

@JoshuaLevett
Copy link

@JoshuaLevett JoshuaLevett commented Mar 24, 2020

@nickevansuk
Appreciate that you have other things to do than answer GitHub questions.
However, Playwaze is working on both providing and consuming the new virtual sessions. As we use this Library to do it, we are somewhat dependant on it.

Any indication of when this (at least a very basic) model will be ready to use would be greatly appreciated.

@nickevansuk
Copy link
Contributor

@nickevansuk nickevansuk commented Mar 24, 2020

Sorry @JoshuaLevett getting through these one at a time... the tooling and that library will be updated tomorrow after 3:30pm tomorrow, before the end of the day.

The call 2-3:30 will finalise the spec, and the tooling will be available as soon as humanly possible after that.

@JoshuaLevett
Copy link

@JoshuaLevett JoshuaLevett commented Mar 24, 2020

Thanks @nickevansuk :)

@nickevansuk
Copy link
Contributor

@nickevansuk nickevansuk commented Mar 24, 2020

Note that although the specification uses the language "virtual", the common language used in the sector, and hence recommended here, should be "Live Stream"

@nickevansuk
Copy link
Contributor

@nickevansuk nickevansuk commented Mar 26, 2020

Update Proposal

The schema.org property eventAttendanceMode is added to the existing opportunity types for SessionSeries, HeadlineEvent, Event, CourseInstance as part of existing RPDE feeds for those types.

Its purpose is to indicate whether participation is in a physical location only, online, or both, and its value must be one of the following:

  • https://schema.org/MixedEventAttendanceMode
  • https://schema.org/OfflineEventAttendanceMode
  • https://schema.org/OnlineEventAttendanceMode

If eventAttendanceMode not provided it is must be assumed to be https://schema.org/OfflineEventAttendanceMode for backwards compatibility.

It is assumed that eventAttendanceMode is fully heritable, so that values defined on parent objects (e.g. EventSeries, SessionSeries) are applicable to child objects (e.g. Event, ScheduledSession). Where this value is defined on a child object, however, the value defined at this lower level takes precedence over any defined higher up the chain.

Note if eventAttendanceMode is set to https://schema.org/OnlineEventAttendanceMode, location MUST NOT be provided - for backwards compatibility, in order to ensure that existing data users do not misrepresent virtual classes as physical ones.

Semantic rules

  • eventAttendanceMode is set to https://schema.org/OnlineEventAttendanceMode, beta:virtualLocation and beta:affiliatedLocation MAY be present and location MUST NOT be present.
  • eventAttendanceMode is set to https://schema.org/MixedEventAttendanceMode. beta:virtualLocation MAY be present and location MUST be present. beta:affiliatedLocation MUST NOT be present.
  • eventAttendanceMode is set to https://schema.org/OfflineEventAttendanceMode or not supplied. beta:virtualLocation and beta:affiliatedLocation MUST NOT be present and location MUST be present.

@JoshuaLevett
Copy link

@JoshuaLevett JoshuaLevett commented Mar 26, 2020

@nickevansuk
We have had several clients express an interest in information with location to get data from local providers. Birmingham, Westminster, and Yorkshire in particular.
I know that location was removed from online events to prevent misrepresenting data with existing sources, but is there any alternative method to handle this?

@nickevansuk
Copy link
Contributor

@nickevansuk nickevansuk commented Mar 26, 2020

@JoshuaLevett - yes this is covered by beta:affiliatedLocation (see #227)

As an aside - OpenActive.NET now includes all these additions, so you should be unblocked in your development work

@JoshuaLevett
Copy link

@JoshuaLevett JoshuaLevett commented Mar 26, 2020

Perfect, thanks @nickevansuk

@JoshuaLevett
Copy link

@JoshuaLevett JoshuaLevett commented Apr 2, 2020

Currently the validator gives an error
image

However, at the start of this issue it is mentioned that it should be included.
It looks like this might have been missed

@nickevansuk
Copy link
Contributor

@nickevansuk nickevansuk commented Apr 2, 2020

This should now be fixed @JoshuaLevett - good catch!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
proposal virtual events
Projects
None yet
Development

No branches or pull requests

5 participants