title: How to ensure an xml entity has a valid name
body: <p>I have an app that generates a bunch of xml based off of some data from a source that I don't control. Basically I'm turning that data into an xml doc for serving via rss feeds. I may be getting data like </p>
  
  <pre><code>2_br=1
  3_br=0
  </code></pre>
  
  <p>and I'm turning it into the following xml</p>
  
  <pre><code>&lt;2_br&gt;1&lt;/2_br&gt;
  &lt;3_br&gt;0&lt;/3_br&gt;
  </code></pre>
  
  <p>Obviously an xml tag can't start with a digit. I couldn't find anywhere a list of valid characters. Does it exists somewhere? I'm basically just going to prefix and invalid starting character or replace an inline invalid character with an <code>_</code>. </p>
  
  <p>It's not hard to do, but basically I just cant find a list of invalid characters for an xml tag name.</p>