 				else
 					_selection.length = 0;
 			}
+			else if (propertyName == 'hasController')
+			{
+				checkNextToken('(');
+				filterOnController(getToken(true));
+				checkNextToken(')');
+			}
 			else
 			{
 				var operator	: String	= getToken(true);

	{
		private static const TYPE_CACHE	: Dictionary		= new Dictionary(true);
		private static const OPERATORS	: Vector.<String>	= new <String>[
			"//", "/", "[", "]", "..", ".", "~=", "?=", "=", "@", "*"
		];
		private static const REGEX_TRIM	: RegExp			= /^\s+|\s+$/;


				
				if (operator == "~=")
					filterOnRegExp(propertyName, String(value), isBinding);
				else
					filterOnValue(propertyName, value, isBinding);
			}
