ebucoreplus icon indicating copy to clipboard operation
ebucoreplus copied to clipboard

Proposal for new class: PublicationPattern

Open JuergenGrupp opened this issue 2 years ago • 2 comments

Think of a new fictional series that your organisation is planning to publish next year. How can you express that the episodes will be broadcast every Monday night at 21:00, a replay will be published at 1:00 in the same night but on another channel. On the same Monday the episode will also be made available through your video on demand service already at 20:00 h. How can you express these patterns with EBUCorePlus?

You might look at PublicationEvent but this class is intended to represent single events, not patterns of events. Another candidate might be PublicationPlan. But PublicationPlan describes a set of specific events, not a pattern. You would need properties to express how often you publish the EditorialObject in a certain span of time (1 day, 1 week, 2 weeks, 1 month, 3 months, 1 year) and what is the typical duration.

Therefore I propose a new class PublicationPattern that holds the properties:

  • typicalEventCountPerTimeSpan: int
  • TimeSpan: TimelinePoint
  • typicalEventDuration: TimelinePoint
  • typicalWeekday: weekDay

PublicationPattern might be a subclass of PublicationEvent, though. It could reuse many properties like hasTargetAudience but it cannot use others like startDateTime pointing to time:Instant (unless in a semantically different meaning), nor playsOut pointing to Essence. Is it better to use class restrictions for the common properties in the two classes?

Please comment.

JuergenGrupp avatar Dec 11 '23 16:12 JuergenGrupp

Hi @JuergenGrupp

We have a similar use case where we modelled it using the PublicationPlan. See here:

Campaign with PublicationPlan

rudniclopac avatar Apr 16 '24 14:04 rudniclopac

Here's an additional use case for the class PublicationPattern, resulting in additional properties: Based on a contract with the holder for publishing rights, a media enterprise acquires the right to publish a piece of content under the following limitiations:

  • on linear channels a number of times (->definedPublishingCount)
  • on non-linear channels within a period of time (->definedPublishingPeriod)
  • with a reference to the Right (or a subclass of Right) (->basedOn) that originatesFrom a Contract

Comments are welcome.

JuergenGrupp avatar Nov 11 '24 09:11 JuergenGrupp