Fix Spatial References Mismatch in ArcCatalog – Comprehensive Guide

arcgis-desktopcoordinate systemfeature-datasetfile-geodatabase

I have a feature dataset that is using the GCS_WGS_1984 as the geographic coordinate system. It includes a few feature classes.

This feature dataset is itself in a file geodatabase that contains a few more feature classes in the root of the gdb. One of these is a feature classes called "points" that is also using the GCS_WGS_1984 as its coordinate system.

I thought it would be trivial to use ArcCatalog to drag the feature class from the root of the gdb into the feature dataset since they have the same coordinate system. Unfortunately ArcGIS gives an error dialog that says:

Failed to paste points
The spatial references do not match

Why does this fail? If the GCS of the feature class and the feature dataset are the same, shouldn't it just work? I've verified this is the case via the dialogs as well as exporting the prj file for both the dataset and the class and using a diff tool to compare the two. They are identical.

Is the spatial reference of a feature class different than the coordinate system/projection?

Attemping to copy the feature class into the feature dataset by holding ctrl while dragging results in ArcCatalog crashing each and every time (shame on ESRI).

I guess I could try alternate means of moving feature classes. Use CopyFeatures into the dataset. Project from the feature class into a new feature class within the feature dataset?

Best Answer

The same coordinate system is not always an identical coordinate system. I have encountered situations where some operations and geoprocessing tools will think feature classes don't share a common coordinate system because the descriptive name of the projection differs ("Yukon Albers" vs "Albers - custom") although the parameters are identical, or because of differing decimal positions (false northing 500000.00 vs 500000.0000).

What I usually do is ensure Feature Dataset (and F.class) coordinate systems are created with our standard .prj file placed in the top of C:\path\to\ArcGIS\Desktop10.0\Coordinate Systems (makes the CS available with fewer clicks) and/or copying the CS from a master feature class template stored somewhere always at hand.

Partly in response to this issue, I also have an empty feature dataset (D:\s.gdb\_template) which I funnel all our data through as a first step filter before doing anything else at all with them. Among a common coordinate system this also ensures the precision and spatial domain etc. are identical.

Update: See Andy's answer about using python, only 2 lines, to copy the Feature Dataset spatial reference system from a template feature class. This worked for me in ArcCatalog 10.3 when the interactive method of defining the SR by selecting a feature class to import one didn't work.

Related Question