public function __construct()
{
$this->PAT_NAME_PREFIX_START_CHAR = '[' . ':A-Z_a-z\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\x{2FF}\\x{370}-\\x{37D}\\x{37F}-\\x{1FFF}\\x{200C}-\\x{200D}\\x{2070}-' . '\\x{218F}\\x{2C00}-\\x{2FEF}\\x{3001}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFFD}\\x{10000}-\\x{EFFFF}' . ']';
$this->PAT_NAME_PREFIX_CHAR = '(' . $this->PAT_NAME_PREFIX_START_CHAR . '|[.\\-0-9\\xB7\\x{0300}-\\x{036F}\\x{203F}-\\x{2040}])';
$this->PAT_NAME_PREFIX = $this->PAT_NAME_PREFIX_CHAR . '*';
$this->PAT_NAME_SIMPLE_CHAR_NEGATION = '^/:\\[\\]\\*\'"';
$this->PAT_NAME_SIMPLE_CHAR = '[' . $this->PAT_NAME_SIMPLE_CHAR_NEGATION . ']';
$this->PAT_NAME_SIMPLE_CHAR_NO_SPACE = '[' . $this->PAT_NAME_SIMPLE_CHAR_NEGATION . '\\s' . ']';
$this->PAT_LOCAL_NAME = $this->PAT_NAME_SIMPLE_CHAR_NO_SPACE . '(' . $this->PAT_NAME_SIMPLE_CHAR . '*' . $this->PAT_NAME_SIMPLE_CHAR . ')?';
$this->PAT_NAME = '((' . $this->PAT_NAME_PREFIX . '):)?' . $this->PAT_LOCAL_NAME;
$this->PAT_PATH_ELEMENT = $this->PAT_NAME . '(\\[[1-9]\\d*\\])?';
$this->NAME = '^' . $this->PAT_NAME . '$';
$this->LOCAL_NAME = '^' . $this->PAT_LOCAL_NAME . '$';
$this->PATH_WITHOUT_LAST_SLASH = '(\\./|\\.\\./|/)?' . '(' . $this->PAT_PATH_ELEMENT . '/)*' . $this->PAT_PATH_ELEMENT;
$this->PATH = '^' . $this->PATH_WITHOUT_LAST_SLASH . '/?$';
}