Clement Chaine

cartography of Atlas

One would think TV data is relatively simple. After all, it’s just a bunch of shows and schedules, isn’t it? In reality, it turns out that every channel or broadcasting company have their own way of categorising and structuring their data and even the terminology can be different.

For instance, what some call Series is also called a Brand in the UK, and what Americans call seasons is usually called Series here, which can be confusing. On top of that, one British Broadcasting Company even adds Sub-Series as an extra layer between Series and Episode. And we shouldn’t forget that we have to take into account other programs such as films, talk shows, reality television, the weather, the news, etc.

We also have to consider the various media (Television, Radio, On Demand streaming services) have different ways to present the shows and there can be several versions of the same piece of content (different encodings, definitions and ratios, presence of 3D or Surround, etc.)

uncharted territories

Atlas’ data model tries to encompass all these use cases even though it has to generalise some of them (such as sub-series). Fred made a high-level hierarchy diagram to help you understand the structure of the data in Atlas. But as an Atlas user or developer, you don’t know how this is all mapped and the only way to find out is to go read the source code for Atlas’ data model. So I give you the detailed Class Diagram for Atlas.

Atlas 3.0 Detailed Class Diagram

This diagram exhaustively represents the objects that you will find in Atlas and their attributes. As you can see, most classes inherit from “Identified”, which means that most objects will all have an ID, an URI, and they can all have aliases and equivalents (generally the same item published by a different source).

You’ll find that in Atlas most objects are published by a source, which is why I haven’t represented the links between the Publisher and the other classes as it would get too messy.

I hope this diagram will help you understand Atlas’s structure and which fields you can expect in your calls. You can try and request with our API explorer. Do get in touch if you’ve got any questions about this or Atlas in general.

blog comments powered by Disqus