Name
xs:token — Whitespace-replaced and collapsed strings.
Derived from:
xs:normalizedString
Primary:
xs:string
Known subtypes:
xs:language, xs:NMTOKEN, xs:Name
Facets:
xs:enumeration, xs:length, xs:maxLength, xs:minLength, xs:pattern, xs:whiteSpace
<xs:simpleType name="token" id="token">
<xs:restriction base="xs:normalizedString">
<xs:whiteSpace value="collapse"/>
</xs:restriction>
</xs:simpleType>Description
The lexical and value spaces of xs:token are the
sets of all the strings after whitespace replacement—i.e.,
after any occurrence of #x9 (tab),
#xA (linefeed), and #xD
(carriage return) is replaced by an occurrence of
#x20 (space) and collapsing (i.e., the contiguous
occurrences of spaces are replaced by a single space, and leading and
trailing spaces are removed).
More simply said, xs:token is the most appropriate
datatype to use for strings that do not care about whitespaces.
Restrictions
The name xs:token is misleading since whitespaces
are allowed within xs:token.
xs:NMTOKEN is the type corresponding to what is
usually called “tokens.”
Example
The element:
<title lang="en"> Being a Dog Is a Full-Time Job </title>
is a valid xs:token and its value is the string
"Being
a
Dog
Is
a
Full-Time
Job", where all the
whitespaces have been replaced by spaces, leading and trailing spaces
have been removed and contiguous sequences of spaces have been
replaced by single spaces.
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access