Os relacionamentos de recursos podem ser ajustados automaticamente à medida que novas versões de recursos são disponibilizadas. Um RelationshipRange pode ser colocado em um relacionamento entre recursos. O intervalo especifica as versões mais baixas e mais altas do recurso relacionado que é aceitável. Existe também um sinalizador para indicar se esse relacionamento deve apontar para todos os recursos neste intervalo ou apenas para o recurso com a versão mais alta aprovada no intervalo.
//Create a relationship range
RelationshipRange relationshipRange = new RelationshipRange();
relationshipRange.setHighestVersion("2.0");
relationshipRange.setHighestVersionType(RelationshipRange.LESS_THAN);
relationshipRange.setLowestVersion("1.5");
relationshipRange.setLowestVersionType(RelationshipRange.GREATER_THAN_OR_EQUAL_TO);
//Only relate to the highest version asset in the range
relationshipRange.setType(RelationshipRange.HIGHEST_VERSION);
//Creating/updating an asset relationship that has a range
RAMRelationship[] relationships = asset.setRelationshipRange(existingAsset, newRelationshipType, relationshipRange);
//Fetch relationship range
relationshipRange = relationships[0].getRelationshipRange();
//Remove relationship range
asset.removeRelationshipRange(existingAsset, newRelationshipType);