¿Cómo puedo convertir una cadena en mayúscula o minúscula con XSLT?

¿Cómo se hace la conversión de casos en XSL?

UPPER CASE  

En XSLT 1.0 las funciones upper-case() y lower-case() no están disponibles. Si está utilizando una hoja de estilo 1.0, el método común de conversión de casos es translate() :

      

XSLT 2.0 tiene funciones en upper-case() y lower-case() . En el caso de XSLT 1.0, puede usar translate() :

  

La implementación .NET XSLT permite escribir funciones administradas personalizadas en la hoja de estilos. Para minúsculas () puede ser:

 < ?xml version="1.0" encoding="utf-8"?>    < ![CDATA[ public string ToLower(string stringValue) { string result = String.Empty; if(!String.IsNullOrEmpty(stringValue)) { result = stringValue.ToLower(); } return result; } ]]>      

Supongamos que puede ser lento pero aceptable.

No se olvide de habilitar el soporte de scripts incrustados para la transformación:

 // Create the XsltSettings object with script enabled. XsltSettings xsltSettings = new XsltSettings(false, true); XslCompiledTransform xslt = new XslCompiledTransform(); // Load stylesheet xslt.Load(xsltPath, xsltSettings, new XmlUrlResolver()); 
 UPPER CASE   //displays UPPER CASE as upper case 

mayúscula (cadena) y minúscula (cadena)

Para la encoding de caracteres ANSI:

  translate(//variable, 'ABCDEFGHIJKLMNOPQRSTUVWXYZÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞŸŽŠŒ', 'abcdefghijklmnopqrstuvwxyzàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿžšœ')