Special symbols disappear when using XDocument.Load
<p>As I know, there are several symbols in XML, that should be replaced because they are not valid in pure form in xml: </p>

<pre><code>&lt; - &amp;lt;
&amp; - &amp;amp;
&gt; - &amp;gt;
" - &amp;quot;
' - &amp;apos;
</code></pre>

<p>So, I'm trying to load xml document using XDocument.Load(string uri). 
For example I have in my xml document string that looks like this:</p>

<pre><code>        &lt;net name="&amp;lt;const0&amp;gt;_1"/&gt;
</code></pre>

<p>But when my xml is loaded this string is represented in XDocument as </p>

<pre><code>        &lt;net name="&lt;const0&gt;_1"/&gt;
</code></pre>

<p>I've tried to save it using xdocument.Save(string uri), but in result LT and GT symbols wasn't replaced back with &amp; lt; and &amp; gt; it still looks like &lt; and >. Actually when I loaded it again no exception was thrown.
It makes me confused. How could this symbols exist in saved xml file if they are not valid? How can I save my xml file with special symbols replacement? The xml file I'm reading and XDocument I want to save  has a declaration with UTF-8 encoding.</p>

<p>Thanks!</p>