Usar xsl: si no incluye la etiqueta de cierre

Intentando usar el siguiente código para insertar un anuncio de google dentro de un blog roll

   

Por alguna razón, la etiqueta de cierre no se procesa en HTML y causa un error. ¿Hay alguna manera de resolver esto?

No hay diferencia (excepto léxico) en XML entre :

  

y

  

Estos representan exactamente el mismo elemento XML, y diferentes procesadores XSLT son libres cualquiera de las dos representaciones que elijan.

Si la forma larga del elemento es realmente necesaria en HTML, esto puede lograrse ya sea :

  • Usando . El método xhtml solo está disponible en XSLT 2.0.

  • Usando . El resultado de la transformación XSLT será un documento HTML (no XML).

  • Usando un truco, como:

        

donde $vsomeVar no tiene ningún valor y no hará que se $vsomeVar nada, pero engañará al procesador XSLT para que piense que algo salió y por lo tanto generará la forma larga del elemento.

Use el método de salida html .

Esta hoja de estilo:

         

Salida:

  

Probado con MSXSL, Xalan, Oracle, Saxon, Altova, XQSharp.