title: XML parsing - ElementTree vs SAX and DOM
body: <p>Python has several ways to parse XML...</p>
  
  <p>I understand the very basics of parsing with <strong>SAX</strong>.  It functions as a stream parser, with an event-driven API.</p>
  
  <p>I understand the <strong>DOM</strong> parser also.  It reads the XML into memory and converts it to objects that can be accessed with Python.</p>
  
  <p>Generally speaking, it was easy to choose between the two depending on what you needed to do, memory constraints, performance, etc.</p>
  
  <p>(Hopefully I'm correct so far.)</p>
  
  <p>Since Python 2.5, we also have <strong>ElementTree</strong>. How does this compare to DOM and SAX? Which is it more similar to? Why is it better than the previous parsers?</p>