2013-08-26, 19:00
I haven't studied the schema in depth, but has there been any discussion of accommodating multiple pieces of media for a single title?
For example, let's say you pick up "Legend: Ultimate Edition". You now have two different versions of the same movie, as well as a documentary of the film.
You could just load up your favorite cut , or you could put both in as independent entries, or you could group them as a movie set. Each has their disadvantages. Your wife might disagree with you on what the "right" version is. You might clutter your menu with big blocks of duplicates (think: Blade Runner). Or you might have alternate versions of each movie in a series (think: Alien, Aliens, Alien³, Alien: Resurrection, each with at least two versions).
Likewise, what do you do with "special feature" content? Most of it is not valuable enough to clutter the top level menus, but having to fire up the DVD player and dig out the shiny discs is a hassle (even if most of mine weren't boxed and shoved in the attic).
The challenges in the database are probably the easy part here. Using an EAV model as has been discussed, adding "hasAlternate" and "hasSecondary" predicates would be relatively easy. Not sure how it would be presented in the UI. Ideally you would still want the one-click access to play the primary content, but having other content buried as an entry in a context menu also seems cumbersome. There would also be repercussions with the JSON-RPC interface and probably a dearth of ripper support for secondary content.
For example, let's say you pick up "Legend: Ultimate Edition". You now have two different versions of the same movie, as well as a documentary of the film.
You could just load up your favorite cut , or you could put both in as independent entries, or you could group them as a movie set. Each has their disadvantages. Your wife might disagree with you on what the "right" version is. You might clutter your menu with big blocks of duplicates (think: Blade Runner). Or you might have alternate versions of each movie in a series (think: Alien, Aliens, Alien³, Alien: Resurrection, each with at least two versions).
Likewise, what do you do with "special feature" content? Most of it is not valuable enough to clutter the top level menus, but having to fire up the DVD player and dig out the shiny discs is a hassle (even if most of mine weren't boxed and shoved in the attic).
The challenges in the database are probably the easy part here. Using an EAV model as has been discussed, adding "hasAlternate" and "hasSecondary" predicates would be relatively easy. Not sure how it would be presented in the UI. Ideally you would still want the one-click access to play the primary content, but having other content buried as an entry in a context menu also seems cumbersome. There would also be repercussions with the JSON-RPC interface and probably a dearth of ripper support for secondary content.