The datatype "data.word" has changed meaning over the years, even though the syntax has remained constant. Currently it means something akin to "a single magic token that can be anything and means whatever you want it to mean".[1] The meaning of "data.enumerated" has remained steadfast, even though we have at least debated about, if not changed, the syntax. It means something akin to "the value herein should be chosen from a list of *documented* possibilities; said list may be open or closed, and if not supplied by the TEI, should be supplied by the customizer". Notes ----- [1] Originally data.word was only about syntax -- it was just a way to give us a mechanism for disallowing certain crazy Unicode characters in attribute values. Thus it excludes control characters, combining characters, etc., but allows punctuation marks and currency symbols and the like. It did not permit whitespace with the expectation that it would be used in a RELAX NG list, thus allowing for whitespace normalization before comparison. But it has grown to mean more, for better or for worse.
Syd, your input is *always* welcome, and it is possible that we're all wrong and you're right. If so, you get to sing "Nyaa, nyaa, told you so!" at us.
It's not self-evident to me. I'm always learning new stuff about TEI. What's the advantage of data.enumerated in the absence of a valList?