validateUsage

Validates dataTypeUsage against self's definition. Uses dataTypeUsage's
get() methods to get the actual property values for validation.
Method should be overridden by sub-classes to do sub-class validation.