Domain-constrained attributes are only checked for compliance when a user explicitly requests it. This is like asking someone filling out a web form to remember to click a special Validate button after hitting Submit. An ArcGIS editor who doesn't consistently perform validations could leave a difficult-to-correct data quality mess. Upon later discovery, sufficient time may have passed that the original editor doesn't remember which value is correct. Worse, someone other than the editor may have to conduct research to determine the correct value.
The way domains are currently implemented (especially with range domains), high data quality seems only a suggestion or a potential. It is more optimistic than I that myself or others will make mistakes yet not forget to check for them. Compliance should be the the data modeler's decision and the geodatabase's job. Once an attribute is associated with a domain, editors shouldn't have to ponder whether and when a validate operation is required.
When assigning a domain, please consider providing the data modeler options such as:
* VALIDATE - IMMEDIATELY (and make this the default)
* VALIDATE - DEFERRED (should be the rare case and explicitly requested by the modeler)
VALIDATE IMMEDIATELY would reject illegal data values and alert the editor either when focus changes from one field to another. Or when she saves edits. Perhaps akin to validation by individual SQL statement or by transaction.
VALIDATE DEFERRED would be the current geodatabase behavior--perform validation only upon request.
There may be other variations. But I think a VALIDATE IMMEDIATELY option (on change focus) would make sense here.
While there may be good reasons for not interactively validating geometry, I don't see any for attributes (at least not as a default behavior). Is this a vestige of development or are there strong, still-currently-relevant reasons for defaulting to deferred attribute validation? Hoping to learn my take on this is bogus--because then I'd be unlocking more value in the geodatabase. As it stands, this deferred validation approach has me stumped (evidently easy to do).
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.