protected function _parseCondition($condition) {
		if (! preg_match('/
				([a-z0-9_\.]+) #property
				(?|
					(?:\s+([a-z0-9]+[\s_]?[a-z0-9]*)  #keyword
					(?:\(|\s+))|(?:\s*([!=\<\>]+)\s*) #condition
				)
				(.+) #value
			/ix', $condition, $matches)) {
			throw new Exception('Error in condition: "' . $condition . '"');
		}
		
		return [
			trim($matches[1]),
			strtolower(trim($matches[2])),
			trim($matches[3], "()\"' \t\r\n\0\x0B")
		];
	}