Provide a mechanism for supporting Uniqueness between ComponentItems
There are use cases where a set of ComponentItems can not refer to the same resource component. ComponentItem needs to have a way of determining if it needs to enforce a uniqueness constraint as well as whether that constraint would be violated if the item was set to a specific component.