XML::DOM::CDATASection(3pm) User Contributed Perl Documentation XML::DOM::CDATASection(3pm)NAME
XML::DOM::CDATASection - Escaping XML text blocks in XML::DOM
DESCRIPTION
XML::DOM::CDATASection extends XML::DOM::CharacterData which extends XML::DOM::Node.
CDATA sections are used to escape blocks of text containing characters that would otherwise be regarded as markup. The only delimiter that
is recognized in a CDATA section is the "]]>" string that ends the CDATA section. CDATA sections can not be nested. The primary purpose is
for including material such as XML fragments, without needing to escape all the delimiters.
The DOMString attribute of the Text node holds the text that is contained by the CDATA section. Note that this may contain characters that
need to be escaped outside of CDATA sections and that, depending on the character encoding ("charset") chosen for serialization, it may be
impossible to write out some characters as part of a CDATA section.
The CDATASection interface inherits the CharacterData interface through the Text interface. Adjacent CDATASections nodes are not merged by
use of the Element.normalize() method.
NOTE: XML::DOM::Parser and XML::DOM::ValParser convert all CDATASections to regular text by default. To preserve CDATASections, set the
parser option KeepCDATA to 1.
perl v5.8.8 2008-02-03 XML::DOM::CDATASection(3pm)
Check Out this Related Man Page
XML::DOM::Parser(3pm) User Contributed Perl Documentation XML::DOM::Parser(3pm)NAME
XML::DOM::Parser - An XML::Parser that builds XML::DOM document structures
SYNOPSIS
use XML::DOM;
my $parser = new XML::DOM::Parser;
my $doc = $parser->parsefile ("file.xml");
$doc->dispose; # Avoid memory leaks - cleanup circular references
DESCRIPTION
XML::DOM::Parser extends XML::Parser
The XML::Parser module was written by Clark Cooper and is built on top of XML::Parser::Expat, which is a lower level interface to James
Clark's expat library.
XML::DOM::Parser parses XML strings or files and builds a data structure that conforms to the API of the Document Object Model as described
at <http://www.w3.org/TR/REC-DOM-Level-1>. See the XML::Parser manpage for other additional properties of the XML::DOM::Parser class.
Note that the 'Style' property should not be used (it is set internally.)
The XML::Parser NoExpand option is more or less supported, in that it will generate EntityReference objects whenever an entity reference is
encountered in character data. I'm not sure how useful this is. Any comments are welcome.
As described in the synopsis, when you create an XML::DOM::Parser object, the parse and parsefile methods create an XML::DOM::Document
object from the specified input. This Document object can then be examined, modified and written back out to a file or converted to a
string.
When using XML::DOM with XML::Parser version 2.19 and up, setting the XML::DOM::Parser option KeepCDATA to 1 will store CDATASections in
CDATASection nodes, instead of converting them to Text nodes. Subsequent CDATASection nodes will be merged into one. Let me know if this
is a problem.
Using LWP to parse URLs
The parsefile() method now also supports URLs, e.g. http://www.erols.com/enno/xsa.xml. It uses LWP to download the file and then calls
parse() on the resulting string. By default it will use a LWP::UserAgent that is created as follows:
use LWP::UserAgent;
$LWP_USER_AGENT = LWP::UserAgent->new;
$LWP_USER_AGENT->env_proxy;
Note that env_proxy reads proxy settings from environment variables, which is what I need to do to get thru our firewall. If you want to
use a different LWP::UserAgent, you can either set it globally with:
XML::DOM::Parser::set_LWP_UserAgent ($my_agent);
or, you can specify it for a specific XML::DOM::Parser by passing it to the constructor:
my $parser = new XML::DOM::Parser (LWP_UserAgent => $my_agent);
Currently, LWP is used when the filename (passed to parsefile) starts with one of the following URL schemes: http, https, ftp, wais,
gopher, or file (followed by a colon.) If I missed one, please let me know.
The LWP modules are part of libwww-perl which is available at CPAN.
perl v5.8.8 2008-02-03 XML::DOM::Parser(3pm)