eloquence / lib.reviews

A free/libre code and information platform for reviews of anything
Creative Commons Zero v1.0 Universal
171 stars 13 forks source link

Add support for variants (editions etc.) #171

Open eloquence opened 6 years ago

eloquence commented 6 years ago

Variants are minor but important differences between instances of a review subject: the editions of a book, the "Director's Cut" version of a movie, etc.

For now this would not be editable data but only available where external sources support it. But we should design it in such a way that it could be edited in future.

The way this could work, I think:

The tricky bit is that the information for existing variants in the external source may change. In most cases we should be able to just check the external ID to determine whether we create a new record or update an existing one. In some cases we may end up with orphaned records -- because the source URL has been removed on our side; because the record has been deleted/merged on the remote side, etc.

We should aggressively prune these orphan copies except where they're linked to a review. Orphans linked to a review are harmless, but will not be offered for selection on new reviews, or when editing the existing review.