if ( isSorted() ) {
return TypeFactory.sortedSet( getRole(), getReferencedPropertyName(), isEmbedded(), getComparator() );
}
else if ( hasOrder() ) {
return TypeFactory.orderedSet( getRole(), getReferencedPropertyName(), isEmbedded() );
}
else {
return TypeFactory.set( getRole(), getReferencedPropertyName(), isEmbedded() );
}