Persistent IDs

HOOPS Exchange supports the concept of persistent IDs for certain file formats. Persistent IDs are important for those developers drawing data from many CAD systems since IDs assigned to model entities are persistent across different sessions.

Persistent IDs are stored as a field in the A3DRootBaseData structure as either a string A3DRootBaseData.m_pcPersistentId or an integer A3DRootBaseData.m_uiPersistentId. To retrieve the persistent ID for assembly nodes, call A3DAsmProductOccurrenceGetIdentifier(). See the table below for information on how persistent IDs are supported.

File Type

Assembly Nodes

Solids

Faces

Edges

Density

CATIA V5

Persistent ID string (CLSID)

Persistent ID integer (key)

Persistent ID string as attribute (string)

Persistent ID string as attribute

In ProductInformation (for each occurrence corresponding to a file)

Creo/Pro-E

Persistent ID string (CLSID)

Not applicable

Persistent ID integer (key) - Note: Persistent ID inside a part are different even when there are several solids.

Persistent ID integer (key) - Note: Persistent ID inside a part are different even when there are several solids.

Latest versions of Creo have them. Otherwise, we put the stored filename.

NX

Persistent ID string (CLSID)

Persistent ID integer (key)

Persistent ID integer (key)

Persistent ID integer (key)

In ProductInformation (for each occurrence corresponding to a file)

SolidWorks

Persistent ID string (CLSID)

Persistent ID integer (key)

Not applicable

Not implemented

In ProductInformation (for each occurrence corresponding to a file)

JT

Not applicable

Not applicable

Not applicable

Not applicable

In ProductInformation (for each occurrence corresponding to a file)

SolidEdge

Persistent ID string (CLSID)

Persistent ID integer (key)

Persistent ID string as an attribute

Not implemented

In ProductInformation (for each occurrence corresponding to a file)

Inventor

Persistent ID string (CLSID)

Persistent ID integer (key)

Persistent ID string as an attribute

Not implemented

In ProductInformation (for each occurrence corresponding to a file)