Open thill-odi opened 2 years ago
See similar requirement from MCR, which they've implemented in a custom namespace using a custom mcr:placeClassification
property, with values as below:
Type Value Description mcr:PlaceClassification https://data.mcractive.com/ns#EducationCampus Place is the campus of an educational institution mcr:PlaceClassification https://data.mcractive.com/ns#LeisureCentre Place is a leisure centre mcr:PlaceClassification https://data.mcractive.com/ns#OpenSpace Place is an open space mcr:PlaceClassification https://data.mcractive.com/ns#Park Place is a park
See here for more information: https://mcractive.github.io/ns/
I wonder though whether another SKOS controlled vocabulary (as the title of this issue suggests), similar to the activity list, is a better solution here - rather than either an enumeration (as in MCR above) or set of classes (as schema:additionalType
would require).
The advantage of a SKOS controlled vocabulary is that it is easy to maintain, and open to new additions much more easily than either an enum or classes. Enum/classes would need to be formalised in the Modelling Spec (as with Amenities), whereas the SKOS controlled vocabulary exists independently.
Looking at other examples of where such "place classification" has been attempted (such as Google Maps "Place types"), it seems that what we're inherently trying to model here is broader than a few simple options that could live inside the spec itself, even if it might initially look like a short list based on the narrower use cases of individual implementers.
Combining the above with the list from @charlieclarke5 for values relating specifically to a Place
, we have the following initial proposed list of Place types:
A placeType
beta property has been added as agreed on the W3C call on 2021-12-06, and an initial corresponding SKOS controlled vocabulary created at https://github.com/openactive/place-types
(Class) Property | Expected Type | Description |
---|---|---|
(schema:Place ) beta:placeType |
Array of skos:Concept |
The type of Place. See https://openactive.io/place-types/. |
I wonder though whether another SKOS controlled vocabulary (as the title of this issue suggests), similar to the activity list, is a better solution here - rather than either an enumeration (as in MCR above) or set of classes (as
schema:additionalType
would require).
I think this makes a lot of sense. It's a real bonus just having the activity list when adding new activities. Also would allow for additional types to be added with relative ease both as part of the list, or as optional extensions for different implementions.
It was raised on the call yesterday that we need to be careful to consider overlap with FacilityType list, so as not to confuse the user.
On reflection, the following have the potential to overlap with specific instances from the FacilityType list:
However a broader term could be used for this:
Note that a FacilityType of “Ice Rink” would only be used to book the whole ice rink. Therefore it is unlikely to be used as a FacilityType, and more likely an “Ice Skating” session (from the activity list) would be used to book an individual ticket for entry. “Gym” is also not a FacilityType as it would also imply booking the whole Gym. “Gym Workout” is an activity.
Hence guidance could be added to use terms that are obviously associated with a Place rather than a Facility.
Based on the analysis above, provided we define the terms correctly, the overlap issue becomes an edge case. It is then the responsibility of the Brokers to present any place-based searching and filtering correctly.
Proposer
Playwaze
Use Case
As an end-user, I would like to be able to filter my search results by the type of organisation putting on an event. For example, I would like to be able to filter to include only sports clubs, leisure centres or facilties.
Why is this not covered by existing properties?
There's nothing explicitly stated in the Opportunity specification itself. Conceivably the schema.org
additionalType
property could be used.Please provide a link to example data
Check the 'I'm looking for ....' dropdown on https://activelincs.wpengine.com/find-activities/
Proposal
As noted above,
schema:additionalType
might be a candidate here in terms of the property used. We'd also ideally have a controlled vocabulary listing permissible values (e.g. 'Leisure Centre', 'Facilities', 'Sports Club', etc).