if(descs.size() > 0) {
// make list only contain unique references
descs = Lists.newArrayList(Sets.newHashSet(descs));
removeDisqualifiedContainers(descs, o);
// if any remain, pick the first type (or the first if there are no types)
IEObjectDescription usedResolution = null;
if(descs.size() > 0) {
usedResolution = getFirstTypeDescription(descs);
adapter.setTargetObject(usedResolution); // Resource expression's resolution of type
CrossReferenceAdapter.set(reference, descs); // the actual reference
}