to map values with type conversion and validation: [KZPropertyMapper mapValuesFrom:dictionary toInstance:self usingMapping:@{ @"content_url" : KZBox(URL, contentURL).isRequired(), @"full_name" : KZProperty(fullName).lengthRange(5, 12), @"videoType" : KZProperty(type), @"sub_object" : @{ @"title" : KZProperty(uniqueID), }, }];