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

Schedule2 #146

Draft
wants to merge 2 commits into
base: master
Choose a base branch
from
Draft

Schedule2 #146

wants to merge 2 commits into from

Conversation

saerdnaer
Copy link
Member

@saerdnaer saerdnaer commented Feb 23, 2025

breaking changes to the schedule.json schema, thereby a own new version called schedule2, see 6632bbb for an comparison between the formats

  • some unused fields get dropped, e.g. public_name, daysCount, timeslot_duration, …
  • Track: color -> colors to allow multiple color values e.g. for light an dark – and to be uniform to same attribute on Conference
  • Track: gets a guid field
  • translations of abstract, description etc. get switched from Accept header "string" to object {"en": "string", "de": "string"}, but the old way is still allowed
  • Day: day_start and day_end get's unified to start and end
  • events and persons get it's own top level field, and are no longer nested
    • but events still have to be sorted by date and room.order as before by the schedule generator/serializer
    • connection from Event to Person is named Participant and has a role attribute
  • Images like logo and avatar are now an object {"url": "uri-string"} instead of "uri-string"
  • Event has now start and end instead of date and duration, fixing Clarify duration spec #129

TODOs

  • decide how the references on Event to track and room should look like
  • decided if Participant.role should be an enum
  • add Reference.service enum based on ucdata

@saerdnaer saerdnaer marked this pull request as draft February 23, 2025 19:29
@saerdnaer
Copy link
Member Author

saerdnaer commented Feb 24, 2025

@toto Sollen wir die kompletten Services hierher in schedule2 mit übernehmen?

https://github.com/toto/conference-import/blob/e51e5a35788a6735a724ece59e84018efd18dc41/src/models/link.ts#L1-L8

service: "web" | "twitter" | "facebook" | "github" | "youtube" | "vimeo" | "mastodon" | "bluesky" | "threads" | "vimeo" | "livevoice" | "activityPub"

@toto
Copy link
Collaborator

toto commented Feb 24, 2025

Not all pick: that's historical baggage. How about

  • Video: YouTube, Vimeo
  • Social: Facebook, ActivityPub, LinkedIn, GitHub and threads.
    Plus "web" as the default.

{
"guid": "3dc5daf5-ba21-4577-97e4-fb6e4b5d40e1",
"name": "Art & Beauty",
"colors": {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we're defining multiple colours, we should add a field for preferred colour scheme so apps know which to select in case there's no user choice.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

An additional question would be if it really makes sense to have different colours for light and dark mode here, if the Conference only defines a primary and background colour.

"type": "lecturehall",
"stream_id": "s1",
"capacity": 3025,
"description": {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same as with track colours, we should have a field for the "default" language.

"type": ["string", "null", "object"]
},
"description": {
"type": ["string", "null", "object"]
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm slightly in favour to removing the string option here and to only allow objects with localized strings. This will make it easier for apps that try to parse the schedule.

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

Successfully merging this pull request may close these issues.

3 participants