When you view an ArcGIS item's metadata, metadata is created for the item if it doesn't already exist. Then the metadata is updated to include any properties that can be recorded for the item. For example, when you open a feature class' metadata, the current extent and count of its features will be recorded. You will always see the most current information. Metadata elements whose values were updated automatically have an asterisk (*) next to the element's name or value.
The process of automatically updating the metadata to contain an item's current properties is known as synchronization—values in the metadata are being synchronized with the item's properties.
Editing metadata works together with synchronization such that automatic updates won't overwrite information typed in by a person. Suppose an item is named parcels. When metadata is created automatically, the item's name is recorded in the metadata as a default title. If the item is renamed as cityParcels, the next time the metadata is updated automatically, the default title is changed to reflect the item's current name. If you edit the metadata and provide a more descriptive title, such as City Land Parcels, the next time the metadata is updated automatically, the title you provided won't be replaced with the item's current name.
You must have permission to edit the item's metadata for automatic updates to occur:
- For file-based items, this requires write access to the folder or network share where the item is located, and the item's files must not be read-only.
- For items in an ArcSDE geodatabase licensed with ArcGIS Server at the enterprise level, you must have permission to edit the item's data to edit its metadata.
- For ArcIMS Image and Feature Services, the ArcIMS server must have authentication enabled and you must have logged in as a user with permission to author metadata for those services.
For example, you can't automatically update metadata for data accessed from a DVD-ROM drive even if the media is writable when using a different drive.
Keeping metadata current
If you edit a feature class, or change its properties or schema, the feature class's metadata isn't updated to reflect those changes until you view it in the Description tab or run the Synchronize Metadata geoprocessing tool. Some geoprocessing tools update an item's metadata to reflect the changes made to the item when that process is complete, while other tools do not. You must have write access to the item and its metadata for synchronization to be successful.
There will be periods of time when the properties recorded in an item's metadata are out of date. However, tasks you perform on an item's metadata using the metadata geoprocessing tools incorporate synchronization to ensure the metadata you are working with is current. That is, metadata is automatically updated not only when it is viewed, but before it is validated by the Validate Metadata tool, before it is exported by the Export Metadata tool, after it is imported by the Import Metadata tool, and after it is upgraded by the Upgrade Metadata tool. In this way, you can safely automate metadata operations when your scripts use these tools, or incorporate the Synchronize Metadata tool in the appropriate manner. For example, a script that periodically exports metadata using the Export Metadata tool will always export current metadata content because the metadata is synchronized before it is exported.
Managing when synchronization occurs
In some circumstances, you might want more control over when automatic metadata updates occur. You can change the default behavior of ArcGIS to turn off automatic metadata updates if you prefer—updates won't occur when you view the metadata and metadata won't automatically be created if it doesn't already exist. However, this setting won't affect synchronizing metadata before it is validated and exported and after it is imported or upgraded.
You can initiate automatic updates at any time with the Synchronize Metadata tool. This tool gives you more control over the circumstances in which metadata is created and updated and over what information in the metadata will be updated. If you have a custom geoprocessing model or Python script that handles metadata, it should incorporate the Synchronize Metadata tool to ensure the information being handled is current.
Some organizations prefer to turn off automatic updates. When people look at metadata during the day, it isn't updated. After hours, an automated Python script updates the metadata to reflect all changes that occurred during the day. Such a script could take advantage of the Synchronize Metadata tool's option to only update metadata if it already exists.