Skip to content

Proposal for choosing RSS vs. episode JSON #404

@theDanielJLewis

Description

@theDanielJLewis

Building on my soapbox thread about how we name things, I want to propose something that could help us keep the RSS feed optimized while also guiding us for how to implement future features.

First, let's ditch the "chapters file" name. It's a file that can hold far more data about an episode than merely chapters. I think we should call it an "episode data file," or something similar.

So then to my point of this proposal: what should go in the episode data file, and what should go in the RSS feed?

I think we can make this easy: anything that's not required until opening/playing an episode should be in the episode data file.

For example, I don't think audiences need to see this information until they open or play an episode, and thus would be best in the episode data file:

But the following information should be visible before someone opens or plays an episode, and thus would be best in the RSS feed:

And here's information that could fit well in either RSS or episode JSON:

  • Person tags—Some podcast apps might want to show the people in the episode list, others might not show the people until the episode is opened/played, and others might use people for search.
  • Episode-level value tags—I actually don't see a need for this to be in the RSS feed except that it can be supported without having to upload a separate episode data file.

I think this starts to reveal a difference between the features, and thus guides where they go. Heavier, more involved features that might be added or edited later (notes, transcripts, chapters, and image galleries or chapter text blocks) are good for the episode data file, where updates can be released without triggering any RSS refreshes, and those updates will be loaded when the episode is played.

On the flip side, the shorter, simpler fields most likely exposed in podcast apps (through browsing, searching, and previewing) are good for the RSS feed and will most likely not be updated after publishing the episode for which these fields are used.

So if the data is needed before opening or playing an episode, it goes in the RSS feed. If it's not needed until opening or playing an episode, it goes in the episode data file (JSON).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions