title: Trying to use XslTransform to validate an XSL with a script fails
body: <p>The XSL is</p>
  
  <pre><code>&lt;xsl:stylesheet version="1.0"
      xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
      xmlns:msxsl="urn:schemas-microsoft-com:xslt"
      exclude-result-prefixes="msxsl"
      xmlns:cs="urn:cs"&gt;
    &lt;msxsl:script language="C#" implements-prefix="cs"&gt;
      &lt;msxsl:using namespace="System.IO" /&gt;
      &lt;![CDATA[public void f(){}]]&gt;
    &lt;/msxsl:script&gt;
  
    &lt;xsl:output method="text" /&gt;
    &lt;xsl:template name="abc" /&gt;
  
  &lt;/xsl:stylesheet&gt;
  </code></pre>
  
  <p>Using <code>XslCompiledTransform</code> I am able to validate this XSL easily using the following code:</p>
  
  <pre><code>var xslTransform = new XslCompiledTransform();
  using (var stream = new FileStream(XSL_PATH, FileMode.Open))
  {
      using (var reader = XmlReader.Create(stream))
      {
          xslTransform.Load(reader, new XsltSettings(false, true),  new XmlUrlResolver());
      }
  }
  </code></pre>
  
  <p>But, if I am trying to use the obsolete (I have reasons to) <code>XslTransform</code> as below:</p>
  
  <pre><code>var xslTransform = new XslTransform();
  using (var stream = new FileStream(XSL_PATH, FileMode.Open))
  {
      using (var reader = XmlReader.Create(stream))
      {
          xslTransform.Load(reader/*, new XsltSettings(false, true)*/,  new XmlUrlResolver());
      }
  }
  </code></pre>
  
  <p>I get <strong>The 'msxsl:script' element cannot be empty.</strong></p>
  
  <p>Why?</p>