Variants are used to create models and/or objects that "know" their masters by means of a variant relationship. This enables you to create models that are modeled differently or objects with different attribute assignments, which are related to one another in a variant relationship.
The master and variant can be evaluated and compared using report scripts.