---
name: "XML::Handler::BuildDOM"
section: "3pm"
platform: "linux"
package: "libxml-dom-perl"
version: "1.46-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/XML::Handler::BuildDOM"
---

# XML::Handler::BuildDOM(3pm)

PerlSAX handler that creates XML::DOM document structures

## NAME

XML::Handler::BuildDOM - PerlSAX handler that creates XML::DOM document structures

## SYNOPSIS

```
 use XML::Handler::BuildDOM;
 use XML::Parser::PerlSAX;
 my $handler = new XML::Handler::BuildDOM (KeepCDATA => 1);
 my $parser = new XML::Parser::PerlSAX (Handler => $handler);
 my $doc = $parser->parsefile ("file.xml");
```

## DESCRIPTION

XML::Handler::BuildDOM creates XML::DOM document structures  (i.e. XML::DOM::Document) from PerlSAX events.

This class used to be called XML::PerlSAX::DOM prior to libxml-enno 1.0.1.

### CONSTRUCTOR OPTIONS

The XML::Handler::BuildDOM constructor supports the following options:

- •

  KeepCDATA =\> 1

  If set to 0 (default), CDATASections will be converted to regular text.

- •

  Document =\> `$doc`

  If undefined, start\_document will extract it from Element or DocType (if set), otherwise it will create a new XML::DOM::Document.

- •

  Element =\> `$elem`

  If undefined, it is set to Document. This will be the insertion point (or parent) for the nodes defined by the following callbacks.

- •

  DocType =\> `$doctype`

  If undefined, start\_document will extract it from Document (if possible). Otherwise it adds a new XML::DOM::DocumentType to the Document.
