Posts recientes

El contenido de este blog tiene una licencia Creative Commons.
Creative Commons

Librerías de plantillas y funciones XSLT   

Existen numerosas librerías de plantillas y funciones para desarrollo de transformaciones XSLT que en muchas ocasiones pueden resultar de utilidad ya que complementan carencias del propio lenguaje en relación a procesamiento de cadenas, tipos de fecha y hora, proceso de URLs, etc. Algunas de las que podemos encontrar en la red son:

 

Todas ellas (y otras no referenciadas) incorporan importantes complementos a XSLT que nos pueden ser de utilidad y únicamente hace falta referenciarlas en nuestros XSLT. Se debe tener en cuenta que algunas de ellas requerirán XSLT 2.0, con lo que nuestro motor de transformación deberá cumplir con esta versión. Lastimosamente la versión 3.0 de SharePoint Services (incluida la versión de servidor) no cumple con esta versión.

<xsl:stylesheet version="1.0" 
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:msxsl="urn:schemas-microsoft-com:xslt"
    xmlns:user="urn:my-scripts"> 
  <msxsl:script language="C#" implements-prefix="user">
     <![CDATA[
     public double circumference(double radius){
       double pi = 3.14;
       double circ = pi*radius*2;
       return circ;
     }
      ]]>
   </msxsl:script> 
  <xsl:template match="data">  
  <circles> 
  <xsl:for-each select="circle">
    <circle>
    <xsl:copy-of select="node()"/>
       <circumference>
          <xsl:value-of select="user:circumference(radius)"/> 
       </circumference>
    </circle>
  </xsl:for-each>
  </circles>
  </xsl:template>
</xsl:stylesheet>

 

Si trabajamos con .NET tenemos la posibilidad además añadir extensiones en lenguaje manejado mediante <msxsl:script>

Más información sobre extensiones XSLT en .NET en http://msdn.microsoft.com/es-es/library/533texsx(VS.90).aspx

 
Publicado  en  02/06/2010  por  Rubén Claramunt Vicente
0  Comentarios  |  Trackback Url  | 0  Enlaces a este post | Bookmark este post con:          
Etiquetas: ASP.NET, C#, XSLT
Technorati Tags: , ,
 

Vinculos a este post

Comentarios