(0|(-?[1-9][0-9]*)).
In other words, integers. A programmatic
description is that you should be able to obtain the integer value
of numerical attributes by obtaining their values as strings and
passing them through Integer.parseInt(). If that method
throws an exception when attempting to parse a numerical value, you
can assume that attribute's value is invalid.
([_a-zA-Z][_a-zA-Z0-9]*).
But the XML schema and the XmlUtility class provides a method to do type-checking for you so don't worry about this part.
MM Hugue 2017-10-12