trompamusic/ce-api

Remove fields that aren't used

Closed this issue · 2 comments

when @musicog and I were going over some schema design we bought up the idea of removing fields and types that we're currently not using in the CE

arguments for:

  • There are a huge number of data models currently in the CE, but we're not even sure if we're going to use them all. Every time we need to make a major change to something we end up making lots of changes, for data types that aren't even used
  • with so many fields, it's sometimes confusing as to what has to be added to a node. With a smaller list of fields, it might be easier to understand
  • We currently only have a small number of node types in use at the moment (Composer, MusicalWork, DigitalDocument, MediaObject, ItemList). If there's been no demand to fill in other types, perhaps they're not necessary given our current understanding of the kind of data that will be stored in the CE. In the past perhaps we thought that more would be stored, but I'm not sure that we're ever going to add items for all Types
  • if in the future we realise that we do need some more Types, we have the schema in the repository history and can go back and add it.

arguments against:

  • people looking at the schema and wanting to add something that doesn't exist may think that it's impossible to add and not want to contribute to the project
  • if someone asks us to add something, we need to make a change to the code and re-deploy

Thoughts?

We suggest to close this ticket, because we don't think this needs to be solved within the project.

Fine by me, but keep in mind a comment by @ChristiaanScheermeijer in D2.3 (https://docs.google.com/document/d/1fOpH9_k3AWlp6Z-Mx1fRlkHPw3_TuPd0HeYmSK5s6Xo/edit?ts=604b7cbc) about marking types that we haven't verified within the scope of the project.