Metadata is used to do a variety of things. Generally it affects how the 
ActionScript or MXML compilers work. For example, [Embed] metadata tells the 
ActionScript compiler to embed an asset such as a JPG. [ResourceBundle] 
metadata tells the ActionScript compiler to link a ResourceBundle subclass with 
localized strings. [Event] and [Style] metadata tell the MXML compiler what to 
do when it encounters attributes like click="..." or fontSize="...".

In general, metadata affects the SWF-or-SWC-compilation process. But I wouldn't 
describe it as being "there for Flex Builder only" because you can compile 
without using Flex Builder, such as with the <mxmlc> Ant task or the mxmlc 
command line tool.

You're correct that if you don't use MXML then [Event] and [Style] metadata is 
irrelevant. But other metadata like [Embed], [ResourceBundle], and 
[AccessibilityImplementation] is.

Gordon Smith
Adobe Flex SDK Team

From: [email protected] [mailto:[email protected]] On Behalf 
Of ztpi1
Sent: Wednesday, January 06, 2010 7:12 PM
To: [email protected]
Subject: [flexcoders] Testing my understanding of Flex



So, I have been studying the flex source and I see a lot of metadata statements 
in the component class definitions.

Am I correct in saying that the metadata is there for Flex Builder only? From 
what I have read, the metadata is there so that the events, effects, etc, can 
be accessed from mxml as tag attributes.

It seems to me, that the events, effects, styles, etc become available in pure 
AS3 by simply importing the proper classes and using the appropriate methods.

Is this the correct interpretation of the code, or am I missing something?

Reply via email to