add some validation to prevent adding location as sublocations of themselves