{"record":{"id":"15c41be9fff0392f","repo":"weaviate/weaviate","slug":"invalid-object-property-s-on-class-s-w","errorCode":null,"errorMessage":"invalid object property '%s' on class '%s': %w","messagePattern":"invalid object property '(.+?)' on class '(.+?)': %w","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"usecases/objects/validation/properties_validation.go","lineNumber":176,"sourceCode":"\tfor _, nestedProperty := range nestedProperties {\n\t\tnestedPropertiesMap[nestedProperty.Name] = nestedProperty\n\t}\n\treturn nestedPropertiesMap\n}\n\n// TODO nested\n// refactor/simplify + improve recurring error msgs on nested properties\nfunc (v *Validator) extractAndValidateNestedProperty(ctx context.Context, propertyName string,\n\tval interface{}, className string, dataType *schema.DataType, nestedProperties []*models.NestedProperty,\n) (interface{}, error) {\n\tvar data interface{}\n\tvar err error\n\n\tswitch *dataType {\n\tcase schema.DataTypeObject:\n\t\tdata, err = objectVal(ctx, v, val, propertyName, className, nestedPropertiesToMap(nestedProperties))\n\t\tif err != nil {\n\t\t\treturn nil, fmt.Errorf(\"invalid object property '%s' on class '%s': %w\", propertyName, className, err)\n\t\t}\n\tcase schema.DataTypeObjectArray:\n\t\tdata, err = objectArrayVal(ctx, v, val, propertyName, className, nestedPropertiesToMap(nestedProperties))\n\t\tif err != nil {\n\t\t\treturn nil, fmt.Errorf(\"invalid object[] property '%s' on class '%s': %w\", propertyName, className, err)\n\t\t}\n\tdefault:\n\t\treturn nil, fmt.Errorf(\"unrecognized data type '%s'\", *dataType)\n\t}\n\n\treturn data, nil\n}\n\nfunc objectVal(ctx context.Context, v *Validator, val interface{}, propertyPrefix string,\n\tclassName string, nestedPropertiesMap map[string]*models.NestedProperty,\n) (map[string]interface{}, error) {\n\ttyped, ok := val.(map[string]interface{})\n\tif !ok {","sourceCodeStart":158,"sourceCodeEnd":194,"githubUrl":"https://github.com/weaviate/weaviate/blob/75aa4b6d11f8818305aafd4440b4e32794f7ca04/usecases/objects/validation/properties_validation.go#L158-L194","documentation":"Wrapper adding property/class context around a failure to validate an object (dataType 'object') nested property. The nested map failed one of its inner property validations (unknown key, wrong type, nested error); the real cause is the wrapped error from objectVal.","triggerScenarios":"Thrown at usecases/objects/validation/properties_validation.go:176 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Read the wrapped error: it names the nested key and the concrete validation failure.","Ensure every key in the object value is declared in the property's nestedProperties schema.","Match nested value types to their declared nested dataTypes."],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"75aa4b6d11f8818305aafd4440b4e32794f7ca04","analyzedAt":"2026-09-04T14:58:20.392Z","contentChangedAt":"2026-09-04T14:58:20.392Z","schemaVersion":2},"datasetVersion":"2026-09-11T21:17:09.523Z"}