IMetadata Interface

Provides access to members that manage and update metadata.

Members

Name Description
Read/write property Metadata The PropertySet containing metadata.
Method Synchronize Updates metadata with the current properties; may create metadata if it doesn't already exist.

IMetadata.Metadata Property

The PropertySet containing metadata.

Public Property Metadata As IPropertySet
public IPropertySet Metadata {get; set;}

Remarks

The variable to hold the data must be of IPropertySet data type.

The metadata property is frequently used to save, or update, changes to metadata documents that have taken place through methods available on the IPropertySet, IXmlPropertySet, and/orIXmlPropertySet2 interfaces.

IMetadata.Synchronize Method

Updates metadata with the current properties; may create metadata if it doesn't already exist.

Public Sub Synchronize ( _
    ByVal action As esriMetadataSyncAction, _
    ByVal interval As Integer _
)
public void Synchronize (
    esriMetadataSyncAction action,
    int interval
);

Description

The Synchronize method is used to extract metadata properties from an object and write those properties to the metadata .xml. Depending on the value of the esriMetaSyncAction, the Synchronize method may generate a new set of metadata if it doesn't already exist.

Errors Returned

This method cannot be used if the underlying object is a data element (i.e. DETable, DEFeatureClass).

Remarks

The following actions will result in synchronization given each of the listed conditions:

Action Metadata status Esri/Sync element Interval parameter
esriMSAAccessed Doesn't matter Must not be FALSE Must be less than actual interval
esriMSAAlways Doesn't matter Doesn't matter Doesn't matter
esriMSACreated Must not exist Must not be FALSE Must be less than actual interval
esriMSANotCreated Must exist Must not be FALSE Must be less than actual interval
esriMSAOverwrite Doesn't matter Doesn't matter Doesn't matter

The difference between esriMSAAlways and esriMSAOverwrite lies in which elements are synchronized. esriMSAAlways will honor the removal or value change of an element's Sync attribute (to disable synchronization), whereas using esriMSAOverwrite is equivalent to setting the IXmlPropertySet2.OverwriteSyncAttribute to true for the metadata's property set, meaning that even elements without a Sync attribute of TRUE will be synchronized.

Classes that implement IMetadata

Classes Description
CadDrawingName (esriDataSourcesFile) Cad Drawing Name object
DENetworkDataset Network Dataset Data Element object.
FeatureDatasetName Esri Feature Dataset Name object.
FgdbTableName (esriDataSourcesGDB) File GeoDatabase Table Name object.
FunctionRasterDataset (esriDataSourcesRaster) A class for a function raster dataset.
GeometricNetworkName Esri Geometric Network Name object.
NetworkDatasetName A container for describing this network dataset's name properties.
ObjectClassName Esri Object Class Name object.
RasterBand (esriDataSourcesRaster) A representation of a single band of a raster dataset on disk.
RasterBandName A container for name information about a raster band.
RasterDataset (esriDataSourcesRaster) A representation of a raster dataset on disk.
RasterDatasetName A container for name information about a raster dataset.
RelationshipClassName Esri Relationship Class Name object.
TableName Esri Table Name object.
Tin The Esri TIN component.
TinName The Esri TinName component.
TopologyName Esri Topology Name object.
UtilityNetworkName A container for describing this utility network's name properties.

Remarks

The IMetadata interface is implemented by the GxMetadata object and all other objects that support metadata (the bulk of GxObject types). Use this interface when you want to access the set of metadata associated with an object or you want to create new metadata for the object.

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.