XSLT 2.0

www.altova.com Imprimir este apartado Página anterior Subir un nivel Página siguiente

Inicio >  Anexos > Información sobre motores XSLT y XQuery >

XSLT 2.0

Temas de este apartado:

 

Especificaciones con las que cumple el motor
Compatibilidad con versiones antiguas
Espacios de nombres
Compatibilidad con esquemas
Comportamiento propio de esta implementación

 

Especificaciones

El motor XSLT 2.0 de StyleVision cumple con la recomendación XSLT 2.0 del 23 de enero de 2007 y la recomendación XPath 2.0 del 14 de diciembre de 2010, ambas del W3C.

 

Compatibilidad con versiones antiguas

El motor XSLT 2.0 es compatible con versiones previas. Esto solamente es relevante cuando se utiliza el motor XSLT 2.0 para procesar una hoja de estilos XSLT 1.0. Tenga en cuenta que los resultados obtenidos con el motor XSLT 1.0 pueden ser diferentes a los obtenidos con el motor XSLT 2.0 en modo de compatibilidad con versiones antiguas.

 

Espacios de nombres

En su hoja de estilos XSLT 2.0 debe declarar estos espacios de nombres para poder usar los constructores de tipo y las funciones disponibles en XSLT 2.0. Los prefijos que aparecen a continuación son los que se suelen usar, pero puede usar otros prefijos si quiere.

 

Espacio de nombres

Prefijo

URI del espacio de nombres

Tipos XML Schema

xs:

http://www.w3.org/2001/XMLSchema

Funciones XPath 2.0

fn:

http://www.w3.org/2005/xpath-functions

 

Estos espacios de nombres se suelen declarar en el elemento xsl:stylesheet o en el elemento xsl:transform:

 

<xsl:stylesheet version="2.0"

xmlns:xsl="http://www.w3.org/1999/XSL/Transform"

xmlns:xs="http://www.w3.org/2001/XMLSchema"

xmlns:fn="http://www.w3.org/2005/xpath-functions"

...

</xsl:stylesheet>

 

Es necesario tener en cuenta que:

 

El motor XSLT 2.0 utiliza el espacio de nombres Funciones XPath 2.0 y XQuery 1.0 como espacio de nombres de funciones predeterminado. Esto significa que puede usar funciones XPath 2.0 y XSLT 2.0 en su hoja de estilos sin prefijos. Si declara el espacio de nombres Funciones XPath 2.0 en su hoja de estilos con un prefijo, podrá usar el prefijo asignado en la declaración.
Cuando se usan constructores de tipo y tipos del espacio de nombres XML Schema, el prefijo utilizado en la declaración de espacio de nombres se debe usar en la llamada al constructor de tipo (por ejemplo, xs:date).
Algunas funciones XPath 2.0 se llaman igual que algunos tipos de datos de XML Schema. Por ejemplo, las funciones XPath fn:string y fn:boolean y los tipos de datos de XML Schema xs:string y xs:boolean. Por tanto, si usa la expresión string('Hello'), la expresión se evalúa como fn:string('Hello') y no como xs:string('Hello').

 

 

Compatibilidad con esquemas

El motor XSLT 2.0 está preparado para esquemas de modo que puede usar tipos de esquema definidos por el usuario y la instrucción xsl:validate.

 

 

Comportamiento propio de esta implementación

Más abajo puede ver cómo se ocupa el motor XSLT 2.0 de algunos aspectos del comportamiento de las funciones XSLT 2.0 relacionadas con esta implementación.

 

xsl:result-document

También son compatibles estas codificaciones específicas de Altova: x-base16tobinary y x-base64tobinary.

 

function-available

Esta función mira si hay funciones del ámbito disponibles (funciones XSLT, XPath y de extensión).

 

unparsed-text

El atributo href acepta (i) rutas de acceso relativas para archivos que estén en la carpeta del URI base y (ii) rutas de acceso absolutas con o sin el protocolo file://. También son compatibles estas codificaciones específicas de Altova: x-binarytobase16 y x-binarytobase64.

 

unparsed-text-available

El atributo href acepta (i) rutas de acceso relativas para archivos que estén en la carpeta del URI base y (ii) rutas de acceso absolutas con o sin el protocolo file://. También son compatibles estas codificaciones específicas de Altova: x-binarytobase16 y x-binarytobase64.

 

Nota:estos valores de codificación estaban implementados en el ya descatalogado AltovaXML pero ya no se utilizan (son obsoletos): base16tobinary, base64tobinary, binarytobase16 y binarytobase64.

 


© 2019 Altova GmbH