Честно скажу, особо с ними пока работать не приходилось.
Подсмотрел в SDK методы самого FabricationPart-а: там есть IsAHanger, IsAStraight, IsATap, вроде бы как раз то, что нужно. Есть ещё IsTheSameAs для их сравнения. Плюсом для идентификации можно использовать связку значений свойств ServiceId и ItemCustomId