title: Empty element error with Beautiful Soup
body: <p>I am parsing an xml file using Beautiful Soup but have found inconsistent behaviour when parsing empty elements. I.e.</p>
  
  <pre><code>from BeautifulSoup import BeautifulSoup
  s1 = "&lt;c&gt;&lt;a /&gt;&lt;b /&gt;&lt;/c&gt;"
  s2 = "&lt;c&gt;&lt;a&gt;&lt;/a&gt;&lt;b&gt;&lt;/b&gt;&lt;/c&gt;"
  soup1 = BeautifulSoup(s1)
  soup2 = BeautifulSoup(s2)
  print soup1
  # &lt;c&gt;&lt;a&gt;&lt;b&gt;&lt;/b&gt;&lt;/a&gt;&lt;/c&gt;
  print soup2
  # &lt;c&gt;&lt;a&gt;&lt;/a&gt;&lt;b&gt;&lt;/b&gt;&lt;/c&gt;
  </code></pre>
  
  <p>Note that the <code>b</code> tag is inside the <code>a</code> tag in the first case, but not in the second. I thought that the XML spec meant that <code>s1</code> and <code>s2</code> were equivalent?</p>
  
  <p>Any thoughts as to how I can deal with this?</p>