Creating GUIDs in ArcPro

This is a seemingly simple thing with surprisingly hard to find instructions for beginners.

Definitions

For those unfamiliar with GUIDs – those are Global Unique Identifiers, also sometimes referred to as UUIDs (or Universally Unique Identifiers). More here – GUID: Global Unique Identifiers | What is GUID & How to generate GUID? (toolsqa.com)

GlobalIDs are managed by a local database and could be enabled via client interface like ArcPro.

GUIDs are unique globally across space and time, and are 128 bits long. Standards are defined in a document referred to as RFC 4122 (RFC stands for “Request for Comments”). The document specifies an Internet Standards track protocol for the Internet Community.

There are five (5) types of GUIDs with different purposes. For GIS purposes most common to use would be number four (4).

When and what to use in GIS

GlobalIDs as they are assigned by the database, generally control the ability to create something rudimentary as attachments which are also stored in the database.

For web applications it would make sense to be aware when it is required to enable GUIDs. At the moment, I have spotted needing GUIDs when using Survey123 Connect and connecting to SDE layers (more here –Survey123 Connect using SDE layers – Baseline GIS).

Any other cases are yet to be flushed out.

How to create GUIDs in ArcPro

  1. In the Field design mode – add new field and select type as GUID
  2. Calculate newly created column in the regular Attribute Table mode using Python with following code:
def ID():
  import uuid
  return '{' + str(uuid.uuid4()) + '}'

Add in the GUID= box:

   ID()

If in the future new features are added to the feature layer, GUIDs will have to be added manually as items get created.

Resources: