com.esri.arcgis.geodatabase
Interface IValidate

All Superinterfaces:
Serializable
All Known Implementing Classes:
AnnotationFeature, AttributedRelationship, ComplexEdgeFeature, ComplexJunctionFeature, CoverageAnnotationFeature, DimensionFeature, esri_Object, Feature, GeocodedFeature, GeocodingIndexObject, IValidateProxy, NALocationFeature, NALocationObject, NALocationRangesFeature, NALocationRangesObject, NATraversalResultElement, RasterCatalogItem, Row, SchematicDiagram, SchematicInMemoryFeatureLink, SchematicInMemoryFeatureNode, SchematicInMemoryFeatureNodeOnLink, SchematicInMemoryFeatureSubLink, SchematicLink, SchematicNode, SchematicNodeOnLink, SchematicSubLink, SimpleEdgeFeature, SimpleJunctionFeature, TopologyErrorFeature

public interface IValidate
extends Serializable

Provides access to members to validate individual features.

Description

The IValidate interface can be used to validate individual features and objects from geodatabase feature classes and tables.

Remarks

The IValidate interface is used to test a row against the geodatabase rules defined for its object class. While the IValidation interface will validate a whole set of rows at once, IValidate operates on just one row; this can be useful if you want to validate the row immediately. IValidate also offers more detailed information on the failures; the Validate method returns an error message, and the other methods help identify what is wrong.

IValidate is not implemented by attributed relationships.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.


Method Summary
 IFields getInvalidFields()
          Returns all invalid fields.
 IEnumRule getInvalidRules()
          The set of all invalid rules.
 IEnumRule getInvalidRulesByField(String fieldName)
          The set of all invalid rules for the specified field.
 boolean validate(String[] errorMessage)
          Validates the row.
 

Method Detail

getInvalidFields

IFields getInvalidFields()
                         throws IOException,
                                AutomationException
Returns all invalid fields.

Description

The GetInvalidFields method returns a field set containing the row's invalid fields.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Returns:
A reference to a com.esri.arcgis.geodatabase.IFields
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getInvalidRules

IEnumRule getInvalidRules()
                          throws IOException,
                                 AutomationException
The set of all invalid rules.

Description

The GetInvalidRules method returns an enumerator of rules that are currently violated by the row.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Returns:
A reference to a com.esri.arcgis.geodatabase.IEnumRule
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getInvalidRulesByField

IEnumRule getInvalidRulesByField(String fieldName)
                                 throws IOException,
                                        AutomationException
The set of all invalid rules for the specified field.

Description

The GetInvalidRulesByField method returns an enumerator of rules violated by the specified field of the row.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Parameters:
fieldName - The fieldName (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IEnumRule
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

validate

boolean validate(String[] errorMessage)
                 throws IOException,
                        AutomationException
Validates the row.

Description

The Validate method indicates whether the row is violating any of its class's rules. A return value of true indicates the row is valid, while a return value of false indicates the row is violating one or more rules.

Remarks

Validate on a row occurs in five steps:

  1. Validate the subtype

  2. Validate the attribute rules

  3. Validate the network connectivity rules (if network feature)

  4. Validate the relationship rules

  5. Perform custom validation (using optional class extension)

The validate process stops once a row is found invalid. For example, if a network feature violates an attribute rule, the validation process stops and the feature's network connectivity rules are not evaluated until the attribute rule violation is corrected.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Parameters:
errorMessage - The errorMessage (out: use single element array)
Returns:
The isValid
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.