relax ng's specification only lists two built-in types (string and token), but it allows for the definition of many more. in theory, the lack of a specific list allows a processor to support data types that are very problem-domain specific.