Share via


Character Range

A character range R identifies a set of characters C(R) containing all XML characters with Universal Character Set (UCS) code points in a specified range.

Syntax

charRange ::= seRange | XmlCharRef | XmlCharIncDash

Syntax

seRange ::= charOrEsc '-' charOrEsc

Syntax

XmlCharRef ::= ( '&#' [0-9]+ ';' ) | ('&#x' [0-9a-fA-F]+ ';' )

Syntax

charOrEsc ::= XmlChar | SingleCharEsc

Syntax

XmlChar ::= [^\#x2D#x5B#x5D]

Syntax

XmlCharIncDash ::= [^\#x5B#x5D]

Remarks

A single XML character is a character range that identifies the set of characters containing only itself. All XML characters are valid character ranges expect as follows:

  • The left bracket ([), right bracket (]), and backslash (\) character range are not valid character ranges.

  • The caret (^) character is a valid character range at the beginning of a positive character group only if it is part of a negative character group.

  • The subtraction (–) character is a valid character range only at the beginning or end of a positive character group.

A character range may also be written in the form s-e, identifying the set that contains all XML characters with UCS code points that are greater than or equal to the code point of s, but not greater than the code point of e.

The form s-e is a valid character range if:

  • s is a single character escape, or an XML character.

  • s is not "\".

  • s is the first character in a character class expression, then s is not "^".

  • e is a single character escape, or an XML character.

  • e is not "\" or "[;".

  • the code point of e is greater than or equal to the code point of s.

    Note

    The code point of a single character escape is the code point of the single character in the set of characters that it identifies.

See Also

Reference

XML Schema Regular Expressions
XML Schema Regular Expressions Reference Chart
Negative Character Group
Positive Character Group

Concepts

Data Type Facets