Is there a way to keep an ID attribute for each part in a multipart feature class?

1057
5
Jump to solution
01-31-2018 12:32 AM
deleted-user-RhG9zFDAFTI1
New Contributor

I am working with a feature class with thousands of line features. All of these lines can be grouped together by a common attribute (i.e. Survey Name). This makes it possible to dissolve the feature class, but is there a way to keep the unique line ID for each part in the output multipart feature class?

If I inspect the feature geometry it says Part 1, Part 2, Part 3 etc, for example is it possible to replace this part number attribute with the line ID?

Dissolving the feature class makes it much easier for the user to find the data they need, and I would prefer not to have a separate feature class of single part geometries that needs to be related to the multipart features

Thanks

0 Kudos
1 Solution

Accepted Solutions
XanderBakker
Esri Esteemed Contributor

To give you a short and simple answer: no... you cannot store a self defined ID as ID for each part in a multipart geometry. If there is a need to have a specific attribute for each part, you have to treat them as individual features. The geometry internally does not store any ID whatsoever for each part. The text "Part 1", "Part 2" , etc is something generated on the fly. 

It is best to manage it using a relate, select the unique SURVEY_NAME from the table and propagate the selection to the featureclass and being able to obtain the details of each seismic line. Don't dissolve the features. 

View solution in original post

5 Replies
DanPatterson_Retired
MVP Emeritus

You should still have a key field with the original feature ID.

  • The attributes of the input features will be maintained in the output feature class. A new field, ORIG_FID, will be added to the output feature class and set to the input feature IDs.

  • Each part of a multipart feature will be separated into individual features in the output feature class. Features that are already singlepart will not be affected.

Multipart to singlepart...

and also to reconstruct the geometries...

To reconstruct multipart features from singlepart features based on a common field value, such as ORIG_FID, use the Dissolve tool.
deleted-user-RhG9zFDAFTI1
New Contributor

Thanks for the reply Dan, what I need to know is if the ORIG_FID field can be substituted with a field that is directly relevant to the data (in my case Seismic Line ID). This removes the need to have to maintain a relate table for only one extra attribute. Hopefully my image below will illustrate what I'm after more effectively.

multi-part features with part attribute

0 Kudos
DanPatterson_Retired
MVP Emeritus

If there is a need to keep the original id, then you can add a equivalent id field to the table prior to exploding to single part. It can be as simple as a field calculation where NewID = OBJECTID and you can key in to any field you want

0 Kudos
XanderBakker
Esri Esteemed Contributor

To give you a short and simple answer: no... you cannot store a self defined ID as ID for each part in a multipart geometry. If there is a need to have a specific attribute for each part, you have to treat them as individual features. The geometry internally does not store any ID whatsoever for each part. The text "Part 1", "Part 2" , etc is something generated on the fly. 

It is best to manage it using a relate, select the unique SURVEY_NAME from the table and propagate the selection to the featureclass and being able to obtain the details of each seismic line. Don't dissolve the features. 

DanPatterson_Retired
MVP Emeritus

I guess I was too slow getting an example off...

perhaps this will be useful next time