Currently, it is not possible to require that reference to some entity in a class has to support some specific schema versions. It makes sense to allow expressing this more harsh constraint, and it will be a requirement when wanting to introduce certain new types of schema upgrades.
A simple way could be to change Internal(ClassId) to Internal(ClassId, Option<VersionConstraint>) in PropertyType, where VersionConstraint can be something like
enum VersionConstraint {
Exactly(u16),
AtLeast(u16)
}
Currently, it is not possible to require that reference to some entity in a class has to support some specific schema versions. It makes sense to allow expressing this more harsh constraint, and it will be a requirement when wanting to introduce certain new types of schema upgrades.
A simple way could be to change
Internal(ClassId)toInternal(ClassId, Option<VersionConstraint>)inPropertyType, whereVersionConstraintcan be something like