CSS 3 selectors adds namespace support but at the moment that is only for elements but extending it to cover other 'identifiers', would have a number of benefits:
* It could replace the convention that browser vendors have to use a vendor specific prefix starting with a '-'.
* It would allow custom pseudo elements to be declared and used within XBL 2.0. At the moment it predefines a number of 'generic' pseudo elements http://www.w3.org/TR/xbl/#matching1 which is fine but it would be better if binding authors could define their own custom elements with names that are more specific to their binding.
A namespaced identifier should be usable anywhere that an identifier is currently used:, e.g.:
* Keyword : wap|marquee
* Property name : webkit|reflection
* Pseudo class : :moz|any(..)
* Pseudo element: ::webkit|scrollbar
* At rule : @my|rule {...}
* Media Query : smart|min-device-pixel-ratio
...
Browser vendors could predefine a mapping for their own 'standard' prefix with their namespace. I think it would also improve modularization.
I don't think that any of these cause parsing or syntax issues with the current functionality but I am not sure whether it conflicts with any future enhancements. I am also not sure if existing browsers will ignore these as well as they will ignore unknown keywords.
Any thoughts?