none
XslCompiledTransform .Net 4.5 - XSLT unparsed-entity-uri unsupported RRS feed

  • Question

  • When I try to execute a transform with XslCompiledTransform (in VS 2012 with .Net 4.5) I get an error message "unparsed-entity-uri() is an unsupported XSLT function. I have reviewed the .NET 4.5 XSLT documentation and it shows that this function is supported in XSLT. Here is my transform:

      <xsl:template match="GRAPHIC">

        <xsl:element name="img">

          <xsl:attribute name="src">

            <xsl:value-of select="unparsed-entity-uri('@entity')"/>

          </xsl:attribute>

          <xsl:attribute name="alt">

            <xsl:value-of select="@alt"/>

          </xsl:attribute>

          <xsl:apply-templates/>

        </xsl:element>

      </xsl:template>

    Is this an error in the MS documentation?

    Thanks

    Monday, October 21, 2013 3:22 PM

All replies

  • Hi,

    This is by design. Visual Studio still does not support XSLT 2.0 and hence is unable to recognize unparsed-entity-uri() XSLT function.

    Thanks,

    Kunal (MSFT)

    Friday, October 25, 2013 2:22 PM
  • Kunal

    Thank you for your response.

    I guess was just confused about what VS 2012 supported. The .NET 4.5 documentation sure makes it look like it was supported (http://msdn.microsoft.com/en-us/library/ms256080.aspx) and the XSLT 1.0 specification looks like it included it (http://www.w3.org/TR/xslt).

    But nevertheless it sounds like it isn't supported in the .NET 4.5 product.

    Thanks

    Friday, October 25, 2013 4:09 PM
  • Hi,

    .NET 4.5 does support XSLT 2.0, but the editor Visual Studio does not. If you use any other editor which supports XSLT 2.0 to develop a .NET 4.5 application, you would not get this error.  

    Thanks,

    Kunal

    Monday, October 28, 2013 3:14 PM
  • Kunal

    I guess I am still confused. I don't understand what it means that Visual Studio editor does not support XSLT 2.0. Are you referring to Intellisense? and translator executable from the editor?

    I have tried to execute the translation using both Visual Studio (from within the editor) and the .NET 4.5 XslCompiledTransform class to perform the translation. In both cases I get the same error. (I built a small C# routine to execute XSLT scripts using .NET 4.5 XslCompiledTransform. My project settings for the C# project are set to .NET 4.5.)

    Would you mind clarifying?

    Thank you

    Tuesday, October 29, 2013 1:51 PM