code: private void checkNonOverlapOfImplicitRelations(Schema.ImplicitType implicitType, AttributeType attributeType) {
          if (attributes(implicitType).anyMatch(rt -> rt.equals(attributeType))) {
              throw TransactionException.duplicateHas(this, attributeType);
          }
      }
docs: Checks if the provided AttributeType is already used in an other implicit relation.
  
  @param implicitType  The implicit relation to check against.
  @param attributeType The AttributeType which should not be in that implicit relation
  @throws TransactionException when the AttributeType is already used in another implicit relation