Allow annotating a CIF object multiple times with the same annotation
I wonder about our earlier decision to not allow multiple the same annotations on a single object. It was OK, to start with, but:
- What if you want to output a single value from the model to multiple PLC ports, of for instance different I/O boards that go to different other systems?
- What if we have state annotations, and we want to minimize the model, such that a single minimized location corresponds to multiple locations in the original model? Then we can't preserve the state annotations as we can't have multiple of them on a single location. (This is a concrete case we need for our research, and which prompted me to create this issue.)
- We currently have
doc
annotations. I don't see a super practical reason to have multiple on the same object, but if they are there we can just generate code for all of them anyway, so there is also no real reason there to disallow it.
I think it may be better to allow multiple the same annotations on a single object. If the specific annotation doesn't support it, the annotation provider for that annotation can always disallow it.
What do you think?