An integer is never allowed to be empty. So the combination of not required and an empty default value is invalid. I suggest using the default value 0, and remove the required attribute (which is not applicable for integers), or if you really want to support the value '', use a String, or use default '-1'.
(minus one might sound awkward as default value, but it is a quite common approach to use -1 as a 'no value' value. For example search functions return -1 as index if nothing found, and -1 as tabindex means that an element should not be accessible by keyboard.)
Probebly the specification is wrong, Mendix does not like it when you initialize an empty or null value thus it seems logical that they would not allow you to initialize an empty integer as there is no such thing.
Try setting it to 0 and then try again. I am not sure why it is complaining about your required tag but it might be doing that because of the syntax error at the defaultValue.
Thanks for the quick answers guys!
To set a default value of -1 or 0 is not really acceptable when e.g. passing a minimum value for an axis. Cause these values will then be treated as the minimum. The only option would be null or NaN which i think you could arguably see as a valid Integer type.
About the XML specifications: if you look at Boolean, there it explicitly says "Required attributes: defaultValue". No such requirements are there for Integer.
The specificiation is not wrong, but it does seem incomplete ;] To create a check in the moddeler you could add a boolean that checks if your standard value (0 for example) is default or an actual value.
I still do not truly understand with what is wrong with initilizing it with it's default value. Unless it is a general widget that can be applied in multiple situations and thus can have different default values in different situations. But even then i would still initialize it at 0 or -1 as Michel suggested