Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / tools / src / nas,5.n2.os.2 / lib / python / html / python / lib / dom-example.html
CommitLineData
86530b38
AT
1<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2<html>
3<head>
4<link rel="STYLESHEET" href="lib.css" type='text/css' />
5<link rel="SHORTCUT ICON" href="../icons/pyfav.png" type="image/png" />
6<link rel='start' href='../index.html' title='Python Documentation Index' />
7<link rel="first" href="lib.html" title='Python Library Reference' />
8<link rel='contents' href='contents.html' title="Contents" />
9<link rel='index' href='genindex.html' title='Index' />
10<link rel='last' href='about.html' title='About this document...' />
11<link rel='help' href='about.html' title='About this document...' />
12<link rel="next" href="minidom-and-dom.html" />
13<link rel="prev" href="dom-objects.html" />
14<link rel="parent" href="module-xml.dom.minidom.html" />
15<link rel="next" href="minidom-and-dom.html" />
16<meta name='aesop' content='information' />
17<title>13.7.2 DOM Example </title>
18</head>
19<body>
20<DIV CLASS="navigation">
21<div id='top-navigation-panel' xml:id='top-navigation-panel'>
22<table align="center" width="100%" cellpadding="0" cellspacing="2">
23<tr>
24<td class='online-navigation'><a rel="prev" title="13.7.1 DOM Objects"
25 href="dom-objects.html"><img src='../icons/previous.png'
26 border='0' height='32' alt='Previous Page' width='32' /></A></td>
27<td class='online-navigation'><a rel="parent" title="13.7 xml.dom.minidom "
28 href="module-xml.dom.minidom.html"><img src='../icons/up.png'
29 border='0' height='32' alt='Up One Level' width='32' /></A></td>
30<td class='online-navigation'><a rel="next" title="13.7.3 minidom and the"
31 href="minidom-and-dom.html"><img src='../icons/next.png'
32 border='0' height='32' alt='Next Page' width='32' /></A></td>
33<td align="center" width="100%">Python Library Reference</td>
34<td class='online-navigation'><a rel="contents" title="Table of Contents"
35 href="contents.html"><img src='../icons/contents.png'
36 border='0' height='32' alt='Contents' width='32' /></A></td>
37<td class='online-navigation'><a href="modindex.html" title="Module Index"><img src='../icons/modules.png'
38 border='0' height='32' alt='Module Index' width='32' /></a></td>
39<td class='online-navigation'><a rel="index" title="Index"
40 href="genindex.html"><img src='../icons/index.png'
41 border='0' height='32' alt='Index' width='32' /></A></td>
42</tr></table>
43<div class='online-navigation'>
44<b class="navlabel">Previous:</b>
45<a class="sectref" rel="prev" href="dom-objects.html">13.7.1 DOM Objects</A>
46<b class="navlabel">Up:</b>
47<a class="sectref" rel="parent" href="module-xml.dom.minidom.html">13.7 xml.dom.minidom </A>
48<b class="navlabel">Next:</b>
49<a class="sectref" rel="next" href="minidom-and-dom.html">13.7.3 minidom and the</A>
50</div>
51<hr /></div>
52</DIV>
53<!--End of Navigation Panel-->
54
55<H2><A NAME="SECTION0015720000000000000000"></A><A NAME="dom-example"></A>
56<BR>
5713.7.2 DOM Example
58</H2>
59
60<P>
61This example program is a fairly realistic example of a simple
62program. In this particular case, we do not take much advantage
63of the flexibility of the DOM.
64
65<P>
66<div class="verbatim">
67<pre>import xml.dom.minidom
68
69document = """&#92;
70&lt;slideshow&gt;
71&lt;title&gt;Demo slideshow&lt;/title&gt;
72&lt;slide&gt;&lt;title&gt;Slide title&lt;/title&gt;
73&lt;point&gt;This is a demo&lt;/point&gt;
74&lt;point&gt;Of a program for processing slides&lt;/point&gt;
75&lt;/slide&gt;
76
77&lt;slide&gt;&lt;title&gt;Another demo slide&lt;/title&gt;
78&lt;point&gt;It is important&lt;/point&gt;
79&lt;point&gt;To have more than&lt;/point&gt;
80&lt;point&gt;one slide&lt;/point&gt;
81&lt;/slide&gt;
82&lt;/slideshow&gt;
83"""
84
85dom = xml.dom.minidom.parseString(document)
86
87def getText(nodelist):
88 rc = ""
89 for node in nodelist:
90 if node.nodeType == node.TEXT_NODE:
91 rc = rc + node.data
92 return rc
93
94def handleSlideshow(slideshow):
95 print "&lt;html&gt;"
96 handleSlideshowTitle(slideshow.getElementsByTagName("title")[0])
97 slides = slideshow.getElementsByTagName("slide")
98 handleToc(slides)
99 handleSlides(slides)
100 print "&lt;/html&gt;"
101
102def handleSlides(slides):
103 for slide in slides:
104 handleSlide(slide)
105
106def handleSlide(slide):
107 handleSlideTitle(slide.getElementsByTagName("title")[0])
108 handlePoints(slide.getElementsByTagName("point"))
109
110def handleSlideshowTitle(title):
111 print "&lt;title&gt;%s&lt;/title&gt;" % getText(title.childNodes)
112
113def handleSlideTitle(title):
114 print "&lt;h2&gt;%s&lt;/h2&gt;" % getText(title.childNodes)
115
116def handlePoints(points):
117 print "&lt;ul&gt;"
118 for point in points:
119 handlePoint(point)
120 print "&lt;/ul&gt;"
121
122def handlePoint(point):
123 print "&lt;li&gt;%s&lt;/li&gt;" % getText(point.childNodes)
124
125def handleToc(slides):
126 for slide in slides:
127 title = slide.getElementsByTagName("title")[0]
128 print "&lt;p&gt;%s&lt;/p&gt;" % getText(title.childNodes)
129
130handleSlideshow(dom)
131</pre>
132<div class="footer">
133<a href="minidom-example.txt" type="text/plain">Download as text (original file name: <span class="file">minidom-example.py</span>).</a>
134</div></div>
135
136<P>
137
138<DIV CLASS="navigation">
139<div class='online-navigation'>
140<p></p><hr />
141<table align="center" width="100%" cellpadding="0" cellspacing="2">
142<tr>
143<td class='online-navigation'><a rel="prev" title="13.7.1 DOM Objects"
144 href="dom-objects.html"><img src='../icons/previous.png'
145 border='0' height='32' alt='Previous Page' width='32' /></A></td>
146<td class='online-navigation'><a rel="parent" title="13.7 xml.dom.minidom "
147 href="module-xml.dom.minidom.html"><img src='../icons/up.png'
148 border='0' height='32' alt='Up One Level' width='32' /></A></td>
149<td class='online-navigation'><a rel="next" title="13.7.3 minidom and the"
150 href="minidom-and-dom.html"><img src='../icons/next.png'
151 border='0' height='32' alt='Next Page' width='32' /></A></td>
152<td align="center" width="100%">Python Library Reference</td>
153<td class='online-navigation'><a rel="contents" title="Table of Contents"
154 href="contents.html"><img src='../icons/contents.png'
155 border='0' height='32' alt='Contents' width='32' /></A></td>
156<td class='online-navigation'><a href="modindex.html" title="Module Index"><img src='../icons/modules.png'
157 border='0' height='32' alt='Module Index' width='32' /></a></td>
158<td class='online-navigation'><a rel="index" title="Index"
159 href="genindex.html"><img src='../icons/index.png'
160 border='0' height='32' alt='Index' width='32' /></A></td>
161</tr></table>
162<div class='online-navigation'>
163<b class="navlabel">Previous:</b>
164<a class="sectref" rel="prev" href="dom-objects.html">13.7.1 DOM Objects</A>
165<b class="navlabel">Up:</b>
166<a class="sectref" rel="parent" href="module-xml.dom.minidom.html">13.7 xml.dom.minidom </A>
167<b class="navlabel">Next:</b>
168<a class="sectref" rel="next" href="minidom-and-dom.html">13.7.3 minidom and the</A>
169</div>
170</div>
171<hr />
172<span class="release-info">Release 2.4.2, documentation updated on 28 September 2005.</span>
173</DIV>
174<!--End of Navigation Panel-->
175<ADDRESS>
176See <i><a href="about.html">About this document...</a></i> for information on suggesting changes.
177</ADDRESS>
178</BODY>
179</HTML>