Merged requested to merge src-type-validation into master
This implementation will raise an error if more than one source type is provided for a given item. Previous implementation was raising an error if all source type were provided (this is valid with two source types but will break if we add a third source type). This implementation also detect lack of source type.
Add some unit test.