This package contains classes and interfaces that provide a syntactic representation of MXML as tags and attributes, without any semantic understanding of what those tags and attributes mean in MXML.

The main class is `MXMLData`, which represents an entire MXML file. The content of the file is represented as a list of `MXMLUnitData` objects representing MXML units, but there are APIs which allows the linear list of units to be accessed as a hierarchy of tags that contain other tags.

There are three types of MXML units:

- An `MXMLInstructionData` unit represents a processing instruction such as `<?xml version="1.0" encoding="utf-8"?>`.
- An `MXMLTagData` unit represents an open tag like `<Button>`, a close tag like `</Button>`, or an empty tag like `<Button/>`. The attributes of an open tag or an empty tag are represented by `MXMLTagAttributeData` objects.
- An `MXMLTextData` unit represents character data such as regular text, whitespace, a CDATA block, or a comment.
.