Visão Geral
A separação do conteúdo e apresentação é uma característica chave de um projeto do XML. A estrutura de um documento XML é projetada para refletir e esclarecer relacionamentos importantes entre os aspectos individuais do próprio conteúdo, unhindered por uma necessidade fornece qualquer indicação sobre como este dado deve eventualmente ser apresentado. Esta estruturação inteligente é particularmente importante como cada vez mais transferências de dados são automatizadas e ocorrem entre máquinas altamente heterogêneas ligadas por uma rede.
Eventualmente muito do conteúdo armazenado em documentos XML precisarão ser apresentados para leitores humanos. Por isso o navegador proporciona uma interface familiar e altamente flexível, isto é um mecanismo ideal para entregar para apresentação as versões do conteúdo XML. Construído de baixo para cima utilizando uma variedade de tecnologias XML, o Mozilla incorpora nele todos os mecanismos necessários para processar todos os documentos XML originais e as folhas de estilo especializadas usadas para o estilo e disposição da exibição HTML, reduzindo o carregamento do servidor com o lado de processamento do cliente.
No momento, o Gecko (a disposição do motor por trás do Mozilla e Firefox) suporta duas formas de folhas de estilo XML. Para controle básico da aparência — fontes, cores, posições, e assim por diante — Gecko usa a CSS, familiar de DHTML. Toda a CSS1 e a maior parte da CSS2 são suportados. O suporte para a CSS3 esá em desenvolvimento. Para informações adicionais sobre CSS, veja Eric Meyer's CSS pages.
Nosso foco aqui é no segundo tipo de folhas de estilo que o Gecko suporta: a folha de estilo XSLT (Extensible Stylesheet Language Transformations). XSLT permite a um autor de folhas de estilo transfomrar um documento XML primário em dois caminhos significantes: manipulando e classificando o conteúdo, incluindo reordenação por atacado, se desejado assim, e transformação do conteúdo em um formato diferente (e no caso do Mozilla, o foco é na conversão disto em HTML que pode ser exibido pelo navegador.
Referência XSLT/XPath
Elementos
- xsl:apply-imports(suportado)
- xsl:apply-templates(suportado)
- xsl:attribute(suportado)
- xsl:attribute-set(suportado)
- xsl:call-template(suportado)
- xsl:choose(suportado)
- xsl:comment(suportado)
- xsl:copy(suportado)
- xsl:copy-of(suportado)
- xsl:decimal-format(suportado)
- xsl:element(suportado)
- xsl:fallback(não suportado)
- xsl:for-each(suportado)
- xsl:if(suportado)
- xsl:import(suportado na maior parte)
- xsl:include(suportado)
- xsl:key(suportado)
- xsl:message(suportado)
- xsl:namespace-alias(não suportado)
- xsl:number(parcialmente suportado)
- xsl:otherwise(suportado)
- xsl:output(parcialmente suportado)
- xsl:param(suportado)
- xsl:preserve-space(suportado)
- xsl:processing-instruction
- xsl:sort(suportado)
- xsl:strip-space(suportado)
- xsl:stylesheet(parcialmente suportado)
- xsl:template(suportado)
- xsl:text(parcialmente suportado)
- xsl:transform(suportado)
- xsl:value-of(parcialmente suportado)
- xsl:variable(suportado)
- xsl:when(suportado)
- xsl:with-param(suportado)
Eixos
- ancestor
- ancestor-or-self
- attribute
- child
- descendant
- descendant-or-self
- following
- following-sibling
- namespace(não suportado)
- parent
- preceding
- preceding-sibling
- self
Funções
- boolean()(suportado)
- ceiling()(suportado)
- concat()(suportado)
- contains()(suportado)
- count()(suportado)
- current()(suportado)
- document()(suportado)
- element-available()(suportado)
- false()(suportado)
- floor()(suportado)
- format-number()(suportado)
- function-available()(suportado)
- generate-id()(suportado)
- id()(parcialmente suportado)
- key()(suportado)
- lang()(suportado)
- last()(suportado)
- local-name()(suportado)
- name()(suportado)
- namespace-uri()(suportado)
- normalize-space()(suportado)
- not()(suportado)
- number()(suportado)
- position()(suportado)
- round()(suportado)
- starts-with()(suportado)
- string()(suportado)
- string-length()(suportado)
- substring()(suportado)
- substring-after()(suportado)
- substring-before()(suportado)
- sum()(suportado)
- system-property()(suportado)
- translate()(suportado)
- true()(suportado)
- unparsed-entity-url()(não suportado)
Para leitura adicional
Informação Original do Documento
- Informação de Copyright: Copyright © 2001-2003 Netscape. All rights reserved.
- Nota: Este artigo reimpresso era originalmente parte do site DevEdge.