binary: content (between SQUOTEs) must consist of an arbitrary number of HEXDIG pairs (2HEXDIG), not two or more HEXDIGs (2*HEXDIG)
datetimebody: use subseconds = 1*DIGIT instead of nanoseconds; remove incorrect rule nanoseconds (only allows seven digits instead of nine)
decimal: sign optional
double: sign is optional, mantissa may have at less than 16 digits
single: sign is optional, mantissa may have less than 8 digits
string: is restricted to characters allowed in path, may contain quoted SQUOTEs