Skip to main content
Solved

ESRI file GDB domain validation

  • February 18, 2013
  • 4 replies
  • 103 views

Forum|alt.badge.img
Afternoon All, 

 

 

I have a ESRI file GDB with domains set on a wide range of attributes. Somehow there are attribute values in FGDB that dont conform to the domain list. (possibly entered before the domains were registered).

 

 

I want to "Validate" that the values in all attributes conform to the domain values. 

 

 

I know there is the "Validate Features" options in the FGDB writer/advanced tab but this terminates the workbench on the first records it finds that does not validate. I want a list of ones that dont "Validate"

 

 

How do i construct a table or list of values, records that are not in the domain list. ( i have many attribute fields and many records and many tables). 

 

 

Thanks for your suggestions

 

 

Steve

Best answer by fmelizard

Hi,

 

Under the advanced tab on the writer parameters there is an option to validate features to write. Normally sub types are validated automatically, for domain descriptions and values, the validation option on the writer should be set to yes. 

 

You can try and combine this with the option to write failed feature to a file also set to yes.

 

Hope this helps

 

View original
Did this help you find an answer to your question?
This post is closed to further activity.
It may be a question with a best answer, an implemented idea, or just a post needing no comment.
If you have a follow-up or related question, please post a new question or idea.
If there is a genuine update to be made, please contact us and request that the post is reopened.

4 replies

davideagle
Contributor
Forum|alt.badge.img+21
  • Contributor
  • February 18, 2013
Perhaps a few options. If you just want a one-time list that you can generate and then allow you to go and inspect your data or fix it at source try the UniqueValueLogger. It's a brilliant little custom transformer that sends a list of unique attribute values directly to the log window.

 

 

Alternatively you could use the Tester with a test clause like:

 

 

AttributeA In road, rail river

 

 

Uning the 'In' operator requires a list of values in which you are testing for a certain value. The Right Value is a comma-delimited list of values, or a range.

 

 

Features that have a value of road, rail or river will pass your test anything that is not valid will pass via the failed port and you can send those features for further work, perhaps to an AttributeValueMapper to reset them to an appropriate value.

davideagle
Contributor
Forum|alt.badge.img+21
  • Contributor
  • February 18, 2013
Sorry, I also meant to say if you have the allowed values stored as an enumerated list somewhere already then you could also just read those in to your process and use the FeatureMerger to pass your data against the allowed attributes. Any that pass as 'Incomplete' will need to be dealt with as they are not part of the stored list of allowed values.

 

 

Hope that helps.

fmelizard
Safer
Forum|alt.badge.img+19
  • Safer
  • Best Answer
  • February 18, 2013
Hi,

 

Under the advanced tab on the writer parameters there is an option to validate features to write. Normally sub types are validated automatically, for domain descriptions and values, the validation option on the writer should be set to yes. 

 

You can try and combine this with the option to write failed feature to a file also set to yes.

 

Hope this helps

 


Forum|alt.badge.img
  • Author
  • February 19, 2013
HI Itay and Dave, thanks for your responses. 

 

 

I like the idea of the UniqueValueLogger. I will give that a go and also try

 

Itays suggetsion of logging the failed records and then running the some stats on the out records. 

 

 

Thanks again

 

 

Steve

Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings