Name ::= ( Letter | '_' ) (NameChar)*
See [5] of XML 1.0 specification.
NameChar ::= Letter | Digit | '.' | '-' | '_' | ':' | CombiningChar | Extender
See [4] and Appendix B of XML 1.0 specification.
NameStart ::= ( Letter | '_' )
where Letter means in one of the Unicode general
categories { Ll, Lu, Lo, Lt, Nl }
.
We do not allow a name to start with :
.
See [3] and Appendix B of XML 1.0 specification
(#x20 | #x9 | #xD | #xA)+
(#x20 | #x9 | #xD | #xA)
CharRef ::= "&#" '0'..'9' {'0'..'9'} ";" | "&#x" '0'..'9'|'A'..'F'|'a'..'f' { hexdigit } ";"
See [66]
The
Utility
object provides utility functions for processing instances of bound and not bound XML classes, as well as escaping text nodes.