I think no, nothing prevents that. To my understanding this would be perfectly in line with the specification, though the representations should be assigned to different contexts. Be aware that contexts can have sub context and apart from the type also have an identifier. Thus you can indeed have multiple contexts with same type, but different identifier. If I’m not mistaken, possible values for these used to live outside the standards document, in implementer’s agreements, e.g. CV-2x3-106.
AFAIK there is no formal proposition to prevent multiple representations with the same context for the same product, even though as I read the underlying standard, it is not allowed. I remember seeing such problematic files, but don’t exactly remember how they were produced. I can look it up, IYI.
As a side note, it had always bothered me how the “type” and “identifier” definitions appear inconsistent for contexts and representations. I will put that in a Github issue if there isn’t one already.