1
# Copyright 2010-2011 Canonical Ltd. This software is licensed under the
2
# GNU Affero General Public License version 3 (see the file LICENSE).
4
"""Validator functions."""
13
INVALID_XML_PATTERN = (
14
ur"(?:(?:[\u0000-\u0008\u000B\u000C\u000E-\u001F\uFFFE-\uFFFF])"
15
ur"|(?:[%s-%s][^%s-%s])|(?:[^%s-%s][%s-%s])|(?:[%s-%s]$)|(?:^[%s-%s]))"
17
unichr(0xD800), unichr(0xDBFF), unichr(0xDC00), unichr(0xDFFF),
18
unichr(0xD800), unichr(0xDBFF), unichr(0xDC00), unichr(0xDFFF),
19
unichr(0xD800), unichr(0xDBFF), unichr(0xDC00), unichr(0xDFFF)))
20
INVALID_XML_RE = re.compile(INVALID_XML_PATTERN)