Perl XML::LibXML by Example Documentation
Perl XML::LibXML by Example Documentation
Release
Grant McLean
January 29, 2020
CONTENTS
1 A Basic Example
3
1.1 Other XML sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2 A more complex example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.3 Accessing attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4 Attributes via tied hash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.5 Parsing Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2 XPath Expressions
13
2.1 XPath Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3 The Document Object Model
17
3.1 The `Document' object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.2 `Element' objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.3 `Text' objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.4 `Attr' objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.5 `NodeList' objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.6 Modifying the DOM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.7 Creating a new Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4 Working with XML Namespaces
29
5 Working With Large Documents
33
5.1 The Reader Loop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
5.2 Bring Back the DOM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
5.3 Error Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
5.4 Working With Patterns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
6 Working with HTML
41
6.1 Querying HTML with XPath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
6.2 Matching class names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
6.3 Using CSS-style selectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
7 Installing XML::LibXML
47
7.1 Installing on Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
7.2 Installing on Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
7.3 Installing on Mac OS X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
8 Alternate Formats
49
9 Corrections and Updates
51
10 Contributors
53
i
ii
Perl XML::LibXML by Example Documentation, Release
The XML::LibXML Perl module is a wrapper around the libxml2 parser library which is written in C. This tutorial uses example code to introduce the features of XML::LibXML and the ways in which you can use the module. The example scripts and XML documents are available as a ZIP file download. Get started with a basic example or jump directly to a specific topic using the Table of Contents.
CONTENTS
1
Perl XML::LibXML by Example Documentation, Release
2
CONTENTS
CHAPTER
ONE
A BASIC EXAMPLE
The first thing you'll need is an XML document. The example programs in this section will use the playlist.xml file shown below. This file contains details of five different movies:
1
2
3
Apollo 13
4
Ron Howard
5
1995-06-30
6
PG
7
140
8
adventure
9
drama
10
11
12
13
14
15
16
17
18
19
NASA must devise a strategy to return Apollo 13 to Earth safely
20
after the spacecraft undergoes massive internal damage putting
21
the lives of the three astronauts on board in jeopardy.
22
23
7.6
24
25
26
27
Solaris
28
Steven Soderbergh
29
2002-11-27
30
PG-13
31
99
32
drama
33
mystery
34
romance
35
36
37
38
39
40
41
42
A troubled psychologist is sent to investigate the crew of an
3
Perl XML::LibXML by Example Documentation, Release
43
isolated research station orbiting a bizarre planet.
44
45
6.2
46
47
48
49
Ender's Game
50
Gavin Hood
51
2013-11-01
52
PG-13
53
114
54
action
55
scifi
56
57
58
59
60
61
62
63
Young Ender Wiggin is recruited by the International Military
64
to lead the fight against the Formics, a genocidal alien race
65
which nearly annihilated the human race in a previous invasion.
66
67
6.7
68
69
70
71
Interstellar
72
Christopher Nolan
73
2014-11-07
74
PG-13
75
169
76
adventure
77
drama
78
scifi
79
80
81
82
83
84
85
86
87
A team of explorers travel through a wormhole in space in an
88
attempt to ensure humanity's survival.
89
90
8.6
91
92
93
94
The Martian
95
Ridley Scott
96
2015-10-02
97
PG-13
98
144
99
adventure
100
drama
4
Chapter 1. A Basic Example
................
................
In order to avoid copyright disputes, this page is only a partial summary.
To fulfill the demand for quickly locating and searching documents.
It is intelligent file search solution for home and business.
Related download
- perl one liners chapter 4 calculations
- accessing array elements
- intro to perl script
- perl arraysperl arrays
- perl quick reference files and directories variable and arrays
- seoul national university
- perl xml libxml by example documentation
- perl new york university
- tied variables with perl derek fountain
- lists and hashes perl