I have two line feature classes representing gas distribution pipes - one from our main GIS, split into pipe units each with a unique pipe ID; the other from our network analysis software SynerGEE, which breaks the individual units down even further into smaller units, that have their own unique IDs.
I need to get the unique pipe IDs from the main GIS layer onto the smaller units from SynerGEE. I've experimented with doing spatial joins based on 'shares a line segment with', 'closest' and 'have their centre in', which seems to work okay most of the time, but sometimes it'll match more than one pipe ID, or pick up the wrong one.
Intersect works quite well too, but around 5% of the SynerGEE pipes are not fully aligned with the original layer. This is because the network analysts sometimes draw new or replacement pipes in manually (the exact route of the pipes does not affect the hydraulic model).
I was wondering if there's a way I could do this based on connectivity by setting the pipes up as a geometric network, or if anyone has any other ideas of how to approach this? It may be that, as the problem is only with a small percentage of the pipes, these can just be matched manually...
I also need to be 100% sure that any I match using a spatial join or intersect are correct...
If you have 10.2 Advanced license, then you should use the Conflation tools. If, by chance, your pipelines have a linear reference system, you could use those tools to migrate attributes. What you're attempting to do is non-trivial. Editing your data so that it spatially matches, then using Intersect, may be the only sure way to do what you want (unless you can access the Conflation tools).
If you have an Advanced 10.2 license you could also try out the Detect Feature Changes tool to analyze the similarities and dissimilarities of the two networks before actually transferring data between them.
Thanks for the answers. Unfortunately we don't have a 10.2 advanced license, although we're supposedly moving to an enterprise license agreement later this year, which I think would cover it, providing we move to 10.2.