Flash will not recognize a .* namespace declaration in an tag in the file for an SWF. You have to declare an asset on an individual basis. Say we’re compiling very lightweight SWFs for use along with shared libraries loaded in parent clips, we’ll want to minimalize the size of this SWF for sake of data transfer - after all it’s just wasted bandwidth/space.
I dropped the Flash8 mx directory on a unix machine and ran the following command to simple generate the beef of a template _exclude.xml file:
# find . | grep ".as" | sed -e 's/.\//<asset name="mx./' | sed -e 's/\//./g' | sed -e 's/\.as//' | sed -e 's/$/" \/>/'
Download this code: exludeAssets-command
Here’s a nice generated usable _exclude.xml template to start streamlining your SWF with…
<?xml version="1.0" encoding="iso-8859-1" ?>
<excludeAssets>
<asset name="mx.xpath.FilterExpr" />
<asset name="mx.xpath.FilterStack" />
<asset name="mx.xpath.NodePathInfo" />
<asset name="mx.xpath.XPathAPI" />
<asset name="mx.video.ComponentVersion" />
<asset name="mx.video.CuePointManager" />
<asset name="mx.video.FLVPlayback" />
<asset name="mx.video.INCManager" />
<asset name="mx.video.NCManager" />
<asset name="mx.video.SMILManager" />
<asset name="mx.video.UIManager" />
<asset name="mx.video.VideoError" />
<asset name="mx.video.VideoPlayer" />
<asset name="mx.utils.ClassFinder" />
<asset name="mx.utils.Collection" />
<asset name="mx.utils.CollectionImpl" />
<asset name="mx.utils.ErrorStrings" />
<asset name="mx.utils.Iterator" />
<asset name="mx.utils.IteratorImpl" />
<asset name="mx.utils.ObjectCopy" />
<asset name="mx.utils.StringFormatter" />
<asset name="mx.utils.StringTokenParser" />
<asset name="mx.utils.Utils" />
<asset name="mx.utils.XMLString" />
<asset name="mx.transitions.Blinds" />
<asset name="mx.transitions.BroadcasterMX" />
<asset name="mx.transitions.Fade" />
<asset name="mx.transitions.Fly" />
<asset name="mx.transitions.Iris" />
<asset name="mx.transitions.OnEnterFrameBeacon" />
<asset name="mx.transitions.Photo" />
<asset name="mx.transitions.PixelDissolve" />
<asset name="mx.transitions.Rotate" />
<asset name="mx.transitions.Squeeze" />
<asset name="mx.transitions.Transition" />
<asset name="mx.transitions.TransitionManager" />
<asset name="mx.transitions.Tween" />
<asset name="mx.transitions.Version" />
<asset name="mx.transitions.Wipe" />
<asset name="mx.transitions.Zoom" />
<asset name="mx.transitions.easing" />
<asset name="mx.transitions.easing.Back" />
<asset name="mx.transitions.easing.Bounce" />
<asset name="mx.transitions.easing.Elastic" />
<asset name="mx.transitions.easing.None" />
<asset name="mx.transitions.easing.Regular" />
<asset name="mx.transitions.easing.Strong" />
<asset name="mx.styles.CSSSetStyle" />
<asset name="mx.styles.CSSStyleDeclaration" />
<asset name="mx.styles.CSSTextStyles" />
<asset name="mx.styles.StyleManager" />
<asset name="mx.skins.Border" />
<asset name="mx.skins.ColoredSkinElement" />
<asset name="mx.skins.CustomBorder" />
<asset name="mx.skins.RectBorder" />
<asset name="mx.skins.SkinElement" />
<asset name="mx.skins.sample.ActivatorSkin" />
<asset name="mx.skins.sample.ButtonSkin" />
<asset name="mx.skins.sample.Defaults" />
<asset name="mx.skins.sample.FocusRect" />
<asset name="mx.skins.sample.RectBorder" />
<asset name="mx.skins.halo.AccordionHeaderSkin" />
<asset name="mx.skins.halo.ActivatorSkin" />
<asset name="mx.skins.halo.ButtonSkin" />
<asset name="mx.skins.halo.Defaults" />
<asset name="mx.skins.halo.FocusRect" />
<asset name="mx.skins.halo.RectBorder" />
<asset name="mx.services.ArrayProxy" />
<asset name="mx.services.DataType" />
<asset name="mx.services.ElementDecl" />
<asset name="mx.services.Log" />
<asset name="mx.services.Namespace" />
<asset name="mx.services.PendingCall" />
<asset name="mx.services.PrefixedQName" />
<asset name="mx.services.QName" />
<asset name="mx.services.RowSetProxy" />
<asset name="mx.services.Schema" />
<asset name="mx.services.SchemaContext" />
<asset name="mx.services.SchemaVersion" />
<asset name="mx.services.ServiceManager" />
<asset name="mx.services.SOAPCall" />
<asset name="mx.services.SOAPConstants" />
<asset name="mx.services.SOAPFault" />
<asset name="mx.services.SOAPHeader" />
<asset name="mx.services.SOAPParameter" />
<asset name="mx.services.WebService" />
<asset name="mx.services.WebServiceProxy" />
<asset name="mx.services.WSDL" />
<asset name="mx.services.WSDLConstants" />
<asset name="mx.services.WSDLDocument" />
<asset name="mx.services.WSDLOperation" />
<asset name="mx.screens.Form" />
<asset name="mx.screens.Screen" />
<asset name="mx.screens.Slide" />
<asset name="mx.rpc.DefaultResponder" />
<asset name="mx.rpc.Fault" />
<asset name="mx.rpc.FaultEvent" />
<asset name="mx.rpc.RelayResponder" />
<asset name="mx.rpc.Responder" />
<asset name="mx.rpc.ResultEvent" />
<asset name="mx.remoting.Connection" />
<asset name="mx.remoting.DataGlue" />
<asset name="mx.remoting.NetServiceProxy" />
<asset name="mx.remoting.NetServiceProxyResponder" />
<asset name="mx.remoting.NetServices" />
<asset name="mx.remoting.Operation" />
<asset name="mx.remoting.PendingCall" />
<asset name="mx.remoting.RecordSet" />
<asset name="mx.remoting.RecordSetIterator" />
<asset name="mx.remoting.RemotingComponentVersion" />
<asset name="mx.remoting.RsDataFetcher" />
<asset name="mx.remoting.RsDataRange" />
<asset name="mx.remoting.RTMPClientIDResponse" />
<asset name="mx.remoting.Service" />
<asset name="mx.remoting.debug.ConnectionMixin" />
<asset name="mx.remoting.debug.GlobalLocalConnection" />
<asset name="mx.remoting.debug.NetDebug" />
<asset name="mx.remoting.debug.NetDebugConfig" />
<asset name="mx.remoting.debug.NetDebugResponseProxy" />
<asset name="mx.remoting.debug.events.NetDebug" />
<asset name="mx.remoting.debug.events.NetDebugAddHeader" />
<asset name="mx.remoting.debug.events.NetDebugCall" />
<asset name="mx.remoting.debug.events.NetDebugClose" />
<asset name="mx.remoting.debug.events.NetDebugConnect" />
<asset name="mx.remoting.debug.events.NetDebugDuplicateNCDError" />
<asset name="mx.remoting.debug.events.NetDebugError" />
<asset name="mx.remoting.debug.events.NetDebugFailedSendError" />
<asset name="mx.remoting.debug.events.NetDebugInfoError" />
<asset name="mx.remoting.debug.events.NetDebugNetConnection" />
<asset name="mx.remoting.debug.events.NetDebugReceiveCall" />
<asset name="mx.remoting.debug.events.NetDebugResult" />
<asset name="mx.remoting.debug.events.NetDebugRtmpLog" />
<asset name="mx.remoting.debug.events.NetDebugStatus" />
<asset name="mx.remoting.debug.events.NetDebugTrace" />
<asset name="mx.remoting.debug.events.NetDebugTraceNetServices" />
<asset name="mx.remoting.debug.commands.AddRTMPClient" />
<asset name="mx.remoting.debug.commands.GetConfig" />
<asset name="mx.remoting.debug.commands.Local" />
<asset name="mx.remoting.debug.commands.StartRTMPTrace" />
<asset name="mx.remoting.debug.commands.StopRTMPTrace" />
<asset name="mx.remoting.debug.commands.UpdateNetDebugConfig" />
<asset name="mx.managers.DepthManager" />
<asset name="mx.managers.FocusManager" />
<asset name="mx.managers.OverlappedWindows" />
<asset name="mx.managers.PopUpManager" />
<asset name="mx.managers.SystemManager" />
<asset name="mx.lang.Locale" />
<asset name="mx.events.EventDispatcher" />
<asset name="mx.events.LowLevelEvents" />
<asset name="mx.events.UIEventDispatcher" />
<asset name="mx.effects.Tween" />
<asset name="mx.data.DataRange" />
<asset name="mx.data.PageableData" />
<asset name="mx.data.PageableList" />
<asset name="mx.data.types.Bool" />
<asset name="mx.data.types.Custom" />
<asset name="mx.data.types.DataProvider" />
<asset name="mx.data.types.Dte" />
<asset name="mx.data.types.Int" />
<asset name="mx.data.types.Num" />
<asset name="mx.data.types.Obj" />
<asset name="mx.data.types.PhoneNumber" />
<asset name="mx.data.types.RecordSet" />
<asset name="mx.data.types.SocialSecurity" />
<asset name="mx.data.types.Str" />
<asset name="mx.data.types.Xm" />
<asset name="mx.data.types.ZipCode" />
<asset name="mx.data.to.TransferObject" />
<asset name="mx.data.to.ValueListIterator" />
<asset name="mx.data.kinds.ArrayForeignKey" />
<asset name="mx.data.kinds.AutoTrigger" />
<asset name="mx.data.kinds.Calculated" />
<asset name="mx.data.kinds.Data" />
<asset name="mx.data.kinds.ForeignKeyAPI" />
<asset name="mx.data.kinds.Lookup" />
<asset name="mx.data.formatters.Bool" />
<asset name="mx.data.formatters.ComposeString" />
<asset name="mx.data.formatters.Custom" />
<asset name="mx.data.formatters.Dte" />
<asset name="mx.data.formatters.NumberFormatter" />
<asset name="mx.data.formatters.RearrangeFields" />
<asset name="mx.data.encoders.Bool" />
<asset name="mx.data.encoders.DatasetDeltaToXUpdateDelta" />
<asset name="mx.data.encoders.DateToNumber" />
<asset name="mx.data.encoders.Dte" />
<asset name="mx.data.encoders.Num" />
<asset name="mx.data.components.DataBinding" />
<asset name="mx.data.components.DataHolder" />
<asset name="mx.data.components.DataSet" />
<asset name="mx.data.components.RDBMSResolver" />
<asset name="mx.data.components.WebServiceConnector" />
<asset name="mx.data.components.WebServices" />
<asset name="mx.data.components.XMLConnector" />
<asset name="mx.data.components.XUpdateResolver" />
<asset name="mx.data.components.resclasses" />
<asset name="mx.data.components.resclasses.FieldInfoItem" />
<asset name="mx.data.components.datasetclasses" />
<asset name="mx.data.components.datasetclasses.DataSetDataProvider" />
<asset name="mx.data.components.datasetclasses.DataSetError" />
<asset name="mx.data.components.datasetclasses.DataSetIterator" />
<asset name="mx.data.components.datasetclasses.Delta" />
<asset name="mx.data.components.datasetclasses.DeltaImpl" />
<asset name="mx.data.components.datasetclasses.DeltaItem" />
<asset name="mx.data.components.datasetclasses.DeltaPacket" />
<asset name="mx.data.components.datasetclasses.DeltaPacketConsts" />
<asset name="mx.data.components.datasetclasses.DeltaPacketImpl" />
<asset name="mx.data.components.datasetclasses.DeltaTreeDataProvider" />
<asset name="mx.data.components.connclasses" />
<asset name="mx.data.components.connclasses.RPCCall" />
<asset name="mx.data.binding.Binding" />
<asset name="mx.data.binding.ComponentMixins" />
<asset name="mx.data.binding.CustomFormatter" />
<asset name="mx.data.binding.CustomValidator" />
<asset name="mx.data.binding.DataAccessor" />
<asset name="mx.data.binding.DataType" />
<asset name="mx.data.binding.DateBase" />
<asset name="mx.data.binding.Encoder" />
<asset name="mx.data.binding.EndPoint" />
<asset name="mx.data.binding.FieldAccessor" />
<asset name="mx.data.binding.Formatter" />
<asset name="mx.data.binding.Kind" />
<asset name="mx.data.binding.Log" />
<asset name="mx.data.binding.ObjectDumper" />
<asset name="mx.data.binding.TypedValue" />
<asset name="mx.core.ComponentVersion" />
<asset name="mx.core.ExternalContent" />
<asset name="mx.core.MediaComponentVersion" />
<asset name="mx.core.ScrollView" />
<asset name="mx.core.UIComponent" />
<asset name="mx.core.UIObject" />
<asset name="mx.core.View" />
<asset name="mx.core.ext.UIComponentExtensions" />
<asset name="mx.core.ext.UIObjectExtensions" />
<asset name="mx.controls.Alert" />
<asset name="mx.controls.Button" />
<asset name="mx.controls.CalendarLayout" />
<asset name="mx.controls.CheckBox" />
<asset name="mx.controls.ComboBase" />
<asset name="mx.controls.ComboBox" />
<asset name="mx.controls.CustomButton" />
<asset name="mx.controls.DataGrid" />
<asset name="mx.controls.DateChooser" />
<asset name="mx.controls.DateField" />
<asset name="mx.controls.HScrollBar" />
<asset name="mx.controls.Label" />
<asset name="mx.controls.List" />
<asset name="mx.controls.Loader" />
<asset name="mx.controls.MediaController" />
<asset name="mx.controls.MediaDisplay" />
<asset name="mx.controls.MediaPlayback" />
<asset name="mx.controls.Menu" />
<asset name="mx.controls.MenuBar" />
<asset name="mx.controls.NumericStepper" />
<asset name="mx.controls.ProgressBar" />
<asset name="mx.controls.RadioButton" />
<asset name="mx.controls.RadioButtonGroup" />
<asset name="mx.controls.SimpleButton" />
<asset name="mx.controls.TextArea" />
<asset name="mx.controls.TextInput" />
<asset name="mx.controls.Tree" />
<asset name="mx.controls.UIScrollBar" />
<asset name="mx.controls.VScrollBar" />
<asset name="mx.controls.treeclasses" />
<asset name="mx.controls.treeclasses.TreeDataProvider" />
<asset name="mx.controls.treeclasses.TreeRow" />
<asset name="mx.controls.streamingmedia.AbstractPlayer" />
<asset name="mx.controls.streamingmedia.Chrome" />
<asset name="mx.controls.streamingmedia.CuePoint" />
<asset name="mx.controls.streamingmedia.FLVPlayer" />
<asset name="mx.controls.streamingmedia.FullScreenToggle" />
<asset name="mx.controls.streamingmedia.FullScreenToggleControl" />
<asset name="mx.controls.streamingmedia.HMiniPlayBarTray" />
<asset name="mx.controls.streamingmedia.HPlayBarTray" />
<asset name="mx.controls.streamingmedia.ICompletionMonitor" />
<asset name="mx.controls.streamingmedia.ICuePointHolder" />
<asset name="mx.controls.streamingmedia.IPlayer" />
<asset name="mx.controls.streamingmedia.LoadBar" />
<asset name="mx.controls.streamingmedia.LoudButton" />
<asset name="mx.controls.streamingmedia.MiniPlayBar" />
<asset name="mx.controls.streamingmedia.MP3Player" />
<asset name="mx.controls.streamingmedia.MuteButton" />
<asset name="mx.controls.streamingmedia.PauseButton" />
<asset name="mx.controls.streamingmedia.PlayBar" />
<asset name="mx.controls.streamingmedia.PlayBarThumb" />
<asset name="mx.controls.streamingmedia.PlayButton" />
<asset name="mx.controls.streamingmedia.PlayerNetStream" />
<asset name="mx.controls.streamingmedia.PlayPauseButton" />
<asset name="mx.controls.streamingmedia.RTMPConnection" />
<asset name="mx.controls.streamingmedia.RTMPPlayer" />
<asset name="mx.controls.streamingmedia.ScreenAccommodator" />
<asset name="mx.controls.streamingmedia.StreamingMediaConstants" />
<asset name="mx.controls.streamingmedia.ToEndButton" />
<asset name="mx.controls.streamingmedia.ToStartButton" />
<asset name="mx.controls.streamingmedia.Tracer" />
<asset name="mx.controls.streamingmedia.VMiniPlayBarTray" />
<asset name="mx.controls.streamingmedia.VolumeControl" />
<asset name="mx.controls.streamingmedia.VolumeControlHandle" />
<asset name="mx.controls.streamingmedia.VPlayBarTray" />
<asset name="mx.controls.streamingmedia.config.CuePoint" />
<asset name="mx.controls.streamingmedia.config.CuePointEditor" />
<asset name="mx.controls.streamingmedia.config.CuePointList" />
<asset name="mx.controls.streamingmedia.config.DisplayControls" />
<asset name="mx.controls.streamingmedia.config.FrameVideoTime" />
<asset name="mx.controls.streamingmedia.config.MediaConfig" />
<asset name="mx.controls.streamingmedia.config.MsVideoTime" />
<asset name="mx.controls.streamingmedia.config.PlayerControls" />
<asset name="mx.controls.streamingmedia.config.VideoTime" />
<asset name="mx.controls.streamingmedia.behaviors.NamedFrameCuePointListener" />
<asset name="mx.controls.streamingmedia.behaviors.ObjectCuePointListener" />
<asset name="mx.controls.streamingmedia.behaviors.SlideCuePointListener" />
<asset name="mx.controls.scrollClasses" />
<asset name="mx.controls.scrollClasses.ScrollBar" />
<asset name="mx.controls.scrollClasses.ScrollThumb" />
<asset name="mx.controls.menuclasses" />
<asset name="mx.controls.menuclasses.MenuBarItem" />
<asset name="mx.controls.menuclasses.MenuDataProvider" />
<asset name="mx.controls.menuclasses.MenuRow" />
<asset name="mx.controls.listclasses" />
<asset name="mx.controls.listclasses.DataProvider" />
<asset name="mx.controls.listclasses.DataSelector" />
<asset name="mx.controls.listclasses.ScrollSelectList" />
<asset name="mx.controls.listclasses.SelectableRow" />
<asset name="mx.controls.gridclasses" />
<asset name="mx.controls.gridclasses.DataGridColumn" />
<asset name="mx.controls.gridclasses.DataGridRow" />
<asset name="mx.controls.cells.CheckCellRenderer" />
<asset name="mx.controls.alertClasses" />
<asset name="mx.controls.alertClasses.AlertForm" />
<asset name="mx.containers.Accordion" />
<asset name="mx.containers.ScrollPane" />
<asset name="mx.containers.Window" />
<asset name="mx.containers.accordionclasses" />
<asset name="mx.containers.accordionclasses.AccordionHeader" />
<asset name="mx.behaviors.DepthControl" />
<asset name="mx.accessibility.AccImpl" />
<asset name="mx.accessibility.AlertAccImpl" />
<asset name="mx.accessibility.ButtonAccImpl" />
<asset name="mx.accessibility.CheckBoxAccImpl" />
<asset name="mx.accessibility.ComboBaseAccImpl" />
<asset name="mx.accessibility.ComboBoxAccImpl" />
<asset name="mx.accessibility.DataGridAccImpl" />
<asset name="mx.accessibility.LabelAccImpl" />
<asset name="mx.accessibility.ListAccImpl" />
<asset name="mx.accessibility.RadioButtonAccImpl" />
<asset name="mx.accessibility.ScrollSelectListAccImpl" />
<asset name="mx.accessibility.SimpleButtonAccImpl" />
<asset name="mx.accessibility.WindowAccImpl" />
</excludeAssets>
Download this code: exludeAssets-template
note I took out the “mx.utils.Delegate” asset in this xml - seems to be the one class that at least my custom components use heavily.