I am setting up Geodatabase Domains for my Fire Hydrant layer. The Domain restricts the "Type" of Fire Hydrant to a designated list of Brand Names. I'm running into an issue where some of my coded values behave differently than others. enter image description here
As seen above, on the left is the "Select By Attribute" window, on the right is the Geodatabase Domain.

Coded Domain Values for "Mueller" display in the Attribute Table only as the description 'Mueller'. This is how I expect them to behave.

However, the Coded Domain Values that have a description containing special characters display as something different.

You'll notice that I have two query options for the brand "M&H".

Are the special characters in the description messing things up, or should I just scrap the "HydrantType" domain and rebuild it?

  • 3
    Are you positive the field data you are querying does not include the actual value "M&H" and that it only contains "MH" for that code in your domain? I usually see this when the Description value is what a user put in the database instead of putting in the code. The coded value will appear even if no entry is "MH" in the data. Try selecting the 'M&H' only values and change them to MH using your domain to be sure those records use the code and not the code description for their value. Commented Dec 8, 2014 at 18:04
  • 2
    @RichardFairhurst That's actually the answer (I'd suggest posting as such), and you can tell from that dialog on the left which is actually showing unique values stored in that field. Those that are hyphenated are showing both the coded value and the description, while the ones in single quotes are just actual values that have been entered into the field. This can be checked by validating the field, as the non-coded entries will throw an error since they're not in the domain.
    – Chris W
    Commented Dec 8, 2014 at 20:54
  • 2
    Chris: Thanks for the confirmation. That means that 'Kennedy', 'Mueller', and 'Resselaer' in addition to 'M&H' are not part of the domain. Also, I was incorrect about all domain values showing in the dialog. Here only the MH and U codes of the domain have been used as actual field values and are showing up. So adding a coded domain to a field won't do anything to clean up any non-compliant data the users have already entered into a field before the domain was applied. Commented Dec 8, 2014 at 23:23
  • Thank you Richard and Chris for your insight. I did not understand Domains as well as I originally thought. In combination with your help and some additional research, I was able to re-work my Domain Values and get them operating in the way I was hoping. Thanks again!
    – Nomkins
    Commented Dec 9, 2014 at 15:53

1 Answer 1


As Richard's comment points out, the issue here isn't the special characters. Domains aren't enforced until time of validation (Validate Features on Editor toolbar), so even if a field has a domain on it you can enter whatever you want to the field. In this case, it appears that the description rather than the value code has been entered. This is evidenced by the screenshot of the Select by Attributes dialog on the left of your image, which shows all unique values actually in the data entered in that field. Coded values show up as code - description while cases where the description has been entered directly it's that in single quotes. Also, as Richard further points out, Domains aren't retroactive - they don't change existing data when applied, though they would then fail validation.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.