title: How to return a subset of XElements inside parent XElement
body: <p>If I have xml such as the following:</p>
  
  <pre><code>&lt;ValidationResults&gt;
    &lt;ValidationResult&gt;     
      &lt;Scheme&gt;Scheme A&lt;/Scheme&gt;
    &lt;/ValidationResult&gt;
    &lt;ValidationResult&gt;  
      &lt;Scheme&gt;Scheme B&lt;/Scheme&gt;
    &lt;/ValidationResult&gt;   
  </code></pre>
  
  <p></p>
  
  <p>I want to query it using <code>Linq to Xml</code> so that I return:</p>
  
  <pre><code>&lt;ValidationResults&gt;
    &lt;ValidationResult&gt;     
      &lt;Scheme&gt;Scheme A&lt;/Scheme&gt;
    &lt;/ValidationResult&gt;     
  &lt;/ValidationResults&gt;
  </code></pre>
  
  <p>If I do something like this:</p>
  
  <pre><code>....Element("ValidationResults").Elements("ValidaitonResult")
                                  .Where(x =&gt; x.Element("Scheme").Value == "Scheme A");
  </code></pre>
  
  <p>I return only:</p>
  
  <pre><code> &lt;ValidationResult&gt;     
      &lt;Scheme&gt;Scheme A&lt;/Scheme&gt;
   &lt;/ValidationResult&gt;  
  </code></pre>
  
  <p>Then I am currently creating the parent again and adding the children to it, which does not seem correct:</p>
  
  <pre><code>var parentElement = new XElement("ValidationResults");
  var childElements = //get as above
  
  parentElement.Add(childElements);
  </code></pre>
  
  <p>How do I return a queried subset of elements inside it's original parent?</p>