Flex 4 added some namespaces, while it still supports the Flex 3 namespaces. This can cause some confusion, more so since some classes are part of two namespaces.
While Flex3 used only one namespace (xmlns:mx=”http://www.adobe.com/2006/mxml”), Flex4 uses 3 namespaces:
Note, that while there’s still a mx namespace, the URI is different.
Each namespaces defines a component set. The old Flex3 mx namespace is still active but if you use it Flex 4 features will not be available.
The fx:namespace includes top-level AS building blocks such as Object, Array etc. but does not include any of the mx or spark component sets. It also includes some mxml tags, like <fx:script>, <fx:style> and <fx:declarations>.
The new mx: namespace includes all of the components in the Flex mx.* packages, the Flex charting components, and the Flex data visualization components.
The s: namespace includes all of the components in the Flex spark.* packages and the text framework classes in the flashx.* packages.
It also includes a subset of the mx: namespace such as the RPC classes for the WebService, HTTPService, and RemoteObject components and additional classes to support the RPC components as well as several graphics, effect, and state classes from the mx.* packages.