a common mistake is having unicode values in the vocabulary and trying to set a str, or vice-versa.
unicode
str
Plone Foundation Code of Conduct