Summary of the DOM structure

The following list displays the DOM structure in outline format. Numbers at the beginning of each line represent the level of an object. For example, an object preceded by "03" is a child of next highest "02" object, which, in turn, is a child of the next highest "01" object.

In some cases, an object is available by specifying a property of its parent object. For example, the document.timelines property contains an array of Timeline objects (see document.timelines and Timeline object). These properties are noted in the following outline.

Finally, some objects are subclasses of other objects, rather than being children of other objects. An object that is a subclass of another object has methods and/or properties of its own in addition to the methods and properties of the parent object (the superclass). Subclasses share the same level in the hierarchy as their superclass. For example, the Item object is a superclass of the BitmapItem object (see Item object and BitmapItem object). These relationships are illustrated in the following outline:

01 Top-Level Functions and Methods

01 FLfile object

01 flash object (fl)

   02 compilerErrors object

   02 componentsPanel object

   02 Document object (fl.documents array)

      03 Filter object

      03 Matrix object

      03 Fill object

      03 Stroke object

      03 library object

         04 Item object (library.items array)

         04 BitmapItem object (subclass of Item object)

         04 folderItem object (subclass of Item object)

         04 fontItem object (subclass of Item object)

         04 SoundItem object (subclass of Item object)

         04 SymbolItem object (subclass of Item object)

         04 VideoItem object (subclass of Item object)

      03 Timeline object (document.timelines array)

         04 Layer object (timeline.layers array)

            05 Frame object (layer.frames array)

               06 Element object (frame.elements array)

                  07 Matrix object (Element.matrix)

               06 Instance object (abstract class, subclass of Element object)

               06 BitmapInstance object (subclass of Instance object)

               06 CompiledClipInstance object (subclass of Instance object)

               06 ComponentInstance object (subclass of SymbolInstance object)

                  07 Parameter object (componentInstance.parameters)

               06 SymbolInstance object (subclass of Instance object)

               06 Text object (subclass of Element object)

                  07 TextRun object (text.textRuns array)

                     08 TextAttrs object (textRun.textAttrs array)

               06 Shape object (subclass of Element object)

                  07 Oval object

                  07 Rectangle object

                  07 Contour object (shape.contours array)

                     08 HalfEdge object

                        09 Vertex object

                        09 Edge object

                  07 Edge object (shape.edges array)

                     08 HalfEdge object

                        09 Vertex object

                        09 Edge object

                  07 Vertex object (shape.vertices array)

                     08 HalfEdge object

                        09 Vertex object

                        09 Edge object

      03 ScreenOutline object

         04 Screen object (screenOutline.screens array)

            05 Parameter object (screen.parameters array)

   02 drawingLayer object

      03 Path object

         04 Contour object

   02 Effect object (fl.effects array)

   02 Math object

   02 outputPanel object

   02 Project object

      03 ProjectItem object (project.items array)

   02 Tools object (fl.tools array)

      03 ToolObj object (tools.toolObjs array)

   02 XMLUI object