XSL - XSL

Na computação , o termo Extensible Stylesheet Language ( XSL ) é usado para se referir a uma família de linguagens usadas para transformar e renderizar documentos XML .

Historicamente, o W3C XSL Working Group produziu uma especificação preliminar sob o nome de "XSL", que acabou se dividindo em três partes:

  1. Transformação XSL ( XSLT ): uma linguagem XML para transformar documentos XML
  2. Objetos de formatação XSL ( XSL-FO ): uma linguagem XML para especificar a formatação visual de um documento XML
  3. XML Path Language ( XPath ): uma linguagem não XML usada por XSLT, e também disponível para uso em contextos não XSLT, para endereçar as partes de um documento XML.

Como resultado, o termo " XSL " agora é usado com vários significados diferentes:

  • Às vezes, refere-se a XSLT : é melhor evitar esse uso. No entanto, "xsl" é usado como o prefixo de namespace convencional para o namespace XSLT e como o sufixo de nome de arquivo convencional para arquivos contendo módulos de folha de estilo XSLT
  • Às vezes se refere a XSL-FO : esse uso pode ser justificado pelo fato de que a especificação XSL-FO carrega o título Extensible Stylesheet Language (XSL) ; no entanto, o termo XSL-FO é menos provável de ser mal interpretado
  • Às vezes, refere-se a ambas as línguas consideradas em conjunto, ou ao grupo de trabalho que desenvolve ambas as línguas
  • Às vezes, especialmente no mundo da Microsoft, ele se refere a uma variante agora obsoleta de XSLT desenvolvida e enviada pela Microsoft como parte do MSXML antes que a especificação W3C fosse finalizada

Este artigo trata dos vários usos do termo " XSL ": para obter detalhes sobre os vários idiomas abrangidos pelo termo, consulte o artigo relevante.

História

XSL começou como uma tentativa de trazer a funcionalidade de DSSSL , particularmente na área de impressão e composição de alta tecnologia , para XML.

Em resposta a um envio de Arbortext, Inso e Microsoft, um grupo de trabalho W3C em XSL começou a operar em dezembro de 1997, com Sharon Adler e Steve Zilles como co-presidentes, com James Clark atuando como editor (e não oficialmente como designer-chefe), e Chris Lilley como o contato da equipe do W3C. O grupo lançou um primeiro Working Draft público em 18 de agosto de 1998. XSLT e XPath tornaram-se Recomendações W3C em 16 de novembro de 1999 e XSL-FO alcançou o status de Recomendação em 15 de outubro de 2001.

A família XSL

Transformações XSL

Transformações XSL (XSLT) atualmente tem muitas implementações disponíveis. Vários navegadores da web , incluindo Internet Explorer (usando o mecanismo MSXML ), Opera (mecanismo nativo) e Safari , todos suportam a transformação de XML em HTML (ou outras linguagens) por meio de XSLT. Outras implementações notáveis ​​incluem Saxon e Xalan .

O suporte no Firefox , Mozilla e Netscape (todos usando o mecanismo TransforMiiX) está incompleto. O suporte para desativar o escape de saída não funciona, e é por isso que os fragmentos de HTML não são renderizados corretamente. Este bug é conhecido desde 2001 https://bugzilla.mozilla.org/show_bug.cgi?id=98168 .

Objetos de formatação XSL

O suporte para objetos de formatação XSL está disponível em vários produtos:

  • o pacote XEP de RenderX tem quase 100% de suporte para XSL-FO 1.0
  • XSLFormatter da Antenna House também tem quase 100% de suporte para a especificação XSL-FO 1.0 e 100% de suporte para todos os novos recursos dentro da especificação XSL-FO 1.1
  • O XINC da Lunasil tem um grande suporte para a especificação XSL-FO 1.0
  • O FOP do projeto Apache pode renderizar uma parte da especificação 1.0 dos objetos de formatação XSL para PDF
  • XML2PDF Formatting Engine Server da AltSoft tem quase 100% de suporte para o XSL-FO 1.1

Esses produtos oferecem suporte à saída em vários formatos de arquivo , em vários graus:

XPath

O XML Path Language ( XPath ), ele próprio parte da família XSL, funciona dentro do XSLT como um meio de navegar em um documento XML.

Outro projeto W3C , XQuery , visa fornecer recursos semelhantes para consultar documentos XML usando XPath .

Referências

links externos