# Package org.apache.tapestry5.dom

A Document Object Model, a tree of nodes representing elements, attributes and text within a document. Tapestry renders pages and their components to a DOM before streaming the output (typically as (X)HTML) to the client.

- Interface Summary
  Interface | Description
  --- | ---
  MarkupModel | Used by a the DOM to determine how to produce markup.
  Visitor | A callback interface used navigate the `Element`s of a document.

- Class Summary
  Class | Description
  --- | ---
  AbstractMarkupModel |
  Attribute | An attribute within an `Element`.
  CData | A node that stores parsed character content (CDATA).
  Comment | A node that represents a comment within the DOM.
  DefaultMarkupModel | Default implementation of `MarkupModel` that is appropriate for traditional (X)HTML markup.
  Document | The root node of a DOM.
  DTD | Representation of a document type.
  Element | An element that will render with a begin tag and attributes, a body, and an end tag.
  Html5MarkupModel | Implementation of `MarkupModel` that correctly handles HTML5 void elements.
  Node | A node within the DOM.
  Raw | A specialized node in the document tree that contains raw markup to be printed to the client exactly as-is.
  Text | A type of node that contains text.
  XMLMarkupModel | Markup model used when generating any form of XML markup.

- Enum Summary
  Enum | Description
  --- | ---
  EndTagStyle | Part of a `MarkupModel`, used to define how end tags are handled when the `Document` in rendered out as a text stream.