code: function validate(formDesign, visibilityStructure, data, schema, responseRow) {
        return this.validateParentItem(formDesign, visibilityStructure, data, schema, responseRow, "");
      }
docs: It returns null if everything is fine It makes sure required questions are properly answered It checks custom validations It returns the id of the question that caused the error, the error and a message which is includes the error and question e.g. { questionId: someid, error: true for required, message otherwise, message: complete message including question text } If the question causing the error is nested (like a Matrix), the questionId is separated by a . RosterMatrix   -> matrixId.index.columnId RosterGroup   -> rosterGroupId.index.questionId QuestionMatrix -> matrixId.itemId.columnId