После еще нескольких исследований (черт возьми, лентяйка!) Я нашел решение, которое я считаю приемлемым:
Динамическое свойство не может иметь тип подкласса db. Таким образом, есть два различных шага, которые необходимо предпринять. Сначала вам нужно создать экземпляр вашего класса свойств и проверить значение:
test = db.RatingProperty()
if test.validate(valueToSave):
#do your thing
Далее необходимо проверить, является ли свойство, которое вы хотите сохранить, объявленным:
if valueToSaveKey not in myObject.properties():
#if not save it as desired
myObject.valueToSaveKey = valueToSave
Недостатком является то, что сохраняемое вами значение не сохраняется в качестве требуемого типа свойства.