com.esri.arcgis.geodatabase
Interface IValidation
- All Superinterfaces:
- Serializable
- All Known Subinterfaces:
- IValidation2
- All Known Implementing Classes:
- FeatureClass, IValidation2Proxy, IValidationProxy, ObjectClass, ObjectClassValidator, SchematicDiagramClass, SchematicElementClass, TemporalRecordSet
public interface IValidation
- extends Serializable
Provides access to members that manage rules and validate them.
Superseded By
IValidation2
Description
IValidation interface is a member of the ObjectClass coclass. It is used to maintain rules, and also to validate the workspace or object class based on the rules associated with it. Rules can be added, deleted, and validated through this interface. Also rule objects associated with the object class can be obtained from this interface.
When To Use
IValidation is the interface on a ObjectClass object used to add/delete rules, as well as validate those rules against the current object class. For example, use the IValidation interface to add a connectivity/attribute rule to this particular object class. You can then create a query filter based on this object class and use the validate function to see if there are any features that are considered invalid based on these rules.
Product Availability
Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.
getRules
IEnumRule getRules()
throws IOException,
AutomationException
- The rules associated with the class.
Description
Rules is a property that returns a IEnumRule object that contains all of the rules associated with the object class.
Remarks
Property Rules returns a IEnumRule enumerator hydrated with all of the rules associated with the object class.
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.
getRulesByField
IEnumRule getRulesByField(String fieldName)
throws IOException,
AutomationException
- The rules associated with the attribute.
Product Availability
Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.
- 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.
getRulesBySubtypeCode
IEnumRule getRulesBySubtypeCode(int subtypeCode)
throws IOException,
AutomationException
- The rules associated with the subtype.
Product Availability
Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.
- Parameters:
subtypeCode
- The subtypeCode (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.
addRule
void addRule(IRule rule)
throws IOException,
AutomationException
- Adds the rule to the set of associated rules.
Description
This method is deprecated. Use a rule-specific method to add rules (i.e. IClassSchemaEdit.AlterDomain for attribute rules, IGeometricNetwork.AddRule for connectivity rules, IRelationshipClass.AddRelationshipRule for relationship rules).
Product Availability
Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.
Supported Platforms
Windows, Solaris, Linux
- Parameters:
rule
- A reference to a com.esri.arcgis.geodatabase.IRule (in)
- Throws:
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.
deleteRule
void deleteRule(IRule rule)
throws IOException,
AutomationException
- Deletes the rule from the set of associated rules.
Description
This method is deprecated. Use a rule-specific method to delete rules (i.e. IClassSchemaEdit.AlterDomain for attribute rules, IGeometricNetwork.DeleteRule for connectivity rules, IRelationshipClass.DeleteRelationshipRule for relationship rules).
Product Availability
Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.
Supported Platforms
Windows, Solaris, Linux
- Parameters:
rule
- A reference to a com.esri.arcgis.geodatabase.IRule (in)
- Throws:
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.
validate
ISelectionSet validate(IQueryFilter selection,
IWorkspace workspace)
throws IOException,
AutomationException
- Validates the selection.
Description
This method creates a selection set that contains the
underlying class' invalid objects.
A query filter can be provided to validate a portion of the
class' objects, but passing a null value will evaluate all of the
class' objects.
The Workspace parameter indicates where the selection
set is to be created. In most cases, a null value can be used,
indicating that the class' workspace be used. If necessary, a
scratch workspace may also be used.
Remarks
Validate on a row occurs in five steps:
- Validate the subtype
- Validate the attribute rules
- Validate the network connectivity rules (if network feature)
- Validate the relationship rules
- 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:
selection
- A reference to a com.esri.arcgis.geodatabase.IQueryFilter (in)workspace
- A reference to a com.esri.arcgis.geodatabase.IWorkspace (in)
- Returns:
- A reference to a com.esri.arcgis.geodatabase.ISelectionSet
- Throws:
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.
validateSelection
ISelectionSet validateSelection(ISelectionSet selection,
IWorkspace workspace)
throws IOException,
AutomationException
- Validates the selection.
Description
This method creates a selection set that contains the underlying class' invalid objects.
A selection set must be passed to the first parameter, indicating that a subset of the class' objects should be evaluated. Unlike the query filter parameter of the Validate method, this parameter requires a valid selection set, and passing a null value will cause the method to fail.
The Workspace parameter indicates where the selection set is to be created. In most cases, a null value can be used, indicating that the class' workspace be used. If necessary, a scratch workspace may also be used.
Product Availability
Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.
Supported Platforms
Windows, Solaris, Linux
- Parameters:
selection
- A reference to a com.esri.arcgis.geodatabase.ISelectionSet (in)workspace
- A reference to a com.esri.arcgis.geodatabase.IWorkspace (in)
- Returns:
- A reference to a com.esri.arcgis.geodatabase.ISelectionSet
- Throws:
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.
validateSet
ISet validateSet(ISet selection)
throws IOException,
AutomationException
- Validates the set.
Description
ValidateSet function takes the ISet parameter and validates that set based on the rules associated with the object class. It returns a ISet object containing all of the invalid features that it found in that set.
Product Availability
Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.
Supported Platforms
Windows, Solaris, Linux
- Parameters:
selection
- A reference to a com.esri.arcgis.system.ISet (in)
- Returns:
- A reference to a com.esri.arcgis.system.ISet
- Throws:
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.