XSL - extemsible Stylesheet Language. Prof. Antonio Almeida de Barros Jr.

Documentos relacionados
Notas sobre XSLT. O modo correcto para declarar um documento xsl é:

GERÊNCIA DE DADOS SEMIESTRUTURADOS - XSLT. Prof. Angelo Augusto Frozza, M.Sc.

Transformação de documentos XML

Linguagens e Programação XPATH / XSLT. Paulo Proença

extensible Stylesheet Language (XSL) XSL descreve como fazer o display de um documento XML. XSL é uma espécie de style sheets para XML...

Programação para Internet I Aulas 10 e 11

DOM (Document Object Model)

Série Rações Semanais Xpath e XSLT Rogério Araújo

XPath e XSLT. Ferramentas para Internet Marx Gomes Van der Linden. ( Material baseado no original de Marcelo José Siqueira Coutinho de Almeida )

CONTEÚDO PROGRAMÁTICO

XSLT. Sub-linguagens. Processamento Estruturado de Documentos 2003 By jcr XSL XSLFO XSLT. XPath. 11 de Setembro de 2003 jcr - ped2003-1

XSLT e recursividade estrutural. Gestão e Tratamento de Informação DEI IST

Comentários: Desenvolvimento de Sistemas Rogério Araújo

GERÊNCIA DE DADOS SEMI ESTRUTURADOS - XPATH. Prof. Angelo Augusto Frozza, M.Sc.

Extensible Markup Language (XML) Júnio César de Lima Cedric Luiz de Carvalho. Instituto de Informática Universidade Federal de Goiás

MAPEAMENTO DE CONSULTAS SQL EM XML ENTRE SISTEMAS GERENCIADORES DE BANCO DE DADOS RELACIONAIS

Plano das aulas. Aula 3 Documentos em XML Estruturas lógicas Estruturas físicas Modelos e DTDs Construção de modelos. Exemplos

XML. Prof. Júlio Machado

XML: uma introdução prática X100. Helder da Rocha

XSLT Transforming XML

XML - Extensible Markup Language

XML e XSL. Ciência da Computação DESENVOLVIMENTO DE APLICAÇÕES PARA WEB. Claudinei Dias prof.claudinei.dias@gmail.com

Document Composer: uma aplicação XML para extracção

TECNOLOGIA WEB INTRODUÇÃO CONSTRUÇÃO DE PÁGINAS ESTÁTICAS HTML / XHTML

FEUP Faculdade de Engenharia da Universidade do Porto XSL. Porto, Maio de Gabriel David FEUP, Maio 2002 XML/XSL

TUTORIAL: LINGUAGENS XSL E XSLT

Capítulo 2. Conceitos básicos 17

XML e Banco de Dados. Prof. Daniela Barreiro Claro DCC/IM/UFBA

Introdução XML. Vanessa Braganholo

CSS Organizado e simples. Cercomp Equipe Web Nícolas Lazarte -

Módulo III Introdução a XML

HTML BÁSICO E TEMPLATE VIEW. Gabrielle Amorim Porto

5a. Aula - XML

Introdução ao XML. Charles Alex Rockenbach, Lucas Moreno de Araujo, Moisés Lima dos Anjos, Roneylson de Alencar Neiva

Dreamweaver CC_15x21.indd 1 06/04/ :04:22

Noções de XML. Henrique Silva Direção-Geral do Território FCUL, 12 e 19 de Outubro de 2017

Programação para Internet I

Guia de Bolso HTML e XHTML

Folhas de estilo. Jomi Fred Hübner (XSL e XPath) FURB / DSC

CSS. Cascading Style Sheets Style Sheets

O que faz um servidor/navegador web? 14/03/2016 Rômulo da Silva Lima Slid e 2

DOSSIER DA DISCIPLINA

INFORMÁTICA. Instruções: Para responder às questões de números 71 e 72, considere o texto a seguir:

COM222 DESENVOLVIMENTO DE SISTEMAS WEB. Aula 01: HTML e CSS

XML para transferência de dados Estrutura hierárquica do XML DTDs e XML Schema Consultas de documentos XML: XPath e XQuery Transformação de

Volnys Bernal. Introdução à linguagem HTML. Introdução à linguagem HTML. Visão geral. Visão geral. Visão geral. Visão geral.

Introdução à linguagem HTML. Volnys Borges Bernal

Notas sobre TinyXML (TP2)

Apresentação. Paralelização. do Processo de. de Documentos XSL-FO. Introdução Objetivos. Renderização

XML para transferência de dados Estrutura hierárquica do XML DTDs e XML Schema Consultas de documentos XML: XPath e XQuery Transformação de

XMLs E INTEGRAÇÃO COM BANCOS DE DADOS

XML: uma introdução prática X100. Helder da Rocha

Rui Carneiro, Rui Pereira, Tiago Orfão

PROGRAMAÇÃO PARA INTERNET RICA FUNDAMENTOS DO CSS PARTE I

Introdução a XML X100

MAPEAMENTO DE CONSULTAS SQL ENTRE SISTEMAS GERENCIADORES DE BANCOS DE DADOS UTILIZANDO TECNOLOGIA XSLT

Plano das aulas. Aula 6 Transformação e apresentação de documentos XML XSLT CSS. Departamento de Ciência de Computadores da FCUP ADI2 Aula 6 1

Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) XML Origens. HTML Problemas

XML e Banco de Dados de Internet. Tópicos Especiais em Tecnologia da Informação Profa. Késsia R. C. Marchi

ATIVIDADES PRÁTICAS SUPERVISIONADAS

Introdução ao XML. Extensible Markup Language

XML extensible Markup Language. Prof. Fellipe Aleixo

Sumário. XML (extensible Markup Language)

XML Básico. Murillo Vasconcelos Henriques B. Castro. 17 de maio de 2011

Introdução e motivação SGBD XML Nativo Consultas em SGBDs XML Prática. Bancos de dados XML. Conceitos e linguagens de consulta

PROGRAMAÇÃO PARA INTERNET RICA DHTML E O DOCUMENT OBJECT MODEL

A Linguagem XML & estilos & apresentação

Conceitos de HTML 5 Aula 1

Introdução à Tecnologia Web

Linguagem de Programação Visual. Estrutura Basica do HTML5 Prof. Gleison Batista de Sousa

Para as respostas de escolha múltipla use os quadrados junto da pergunta Seja sucinto e claro nas suas respostas Escreva com letra legível

MÓDULO 1: Tags: estrutura; tipos; atributos. Estrutura de um documento. Tags de blocos: <?xml?>, <!DOCTYPE>, <html>, <head>, <body>, <body bgcolor>.

GERÊNCIA DE DADOS SEMIESTRUTURADOS -XML. Prof. Angelo Augusto Frozza, M.Sc.

Hiperlinks. Hiperlinks. Hiperlinks. Tag <a></a> Hiperlinks 07/05/2011

GERÊNCIA DE DADOS SEMI ESTRUTURADOS -XML. Prof. Angelo Augusto Frozza, M.Sc.

Sistemas de Informação: XML- XSLT

Revisando os conteúdos. Introdução ao CSS

Nesta disciplina aprenderemos. HTML CSS JavaScript Jquery PHP

CSS CASCADING STYLE SHEET

Tarlis Portela Web Design HTML

Manual do KXSLDbg. Keith Isdale Tradução: Marcus Gama

Introdução. Definição. Validação. Universo XML. Apresentação. Processamento. Prof. Enzo Seraphim. Banco de Dados

AULA 01 Introdução (HTML, CSS e Javascript) PROGRAMAÇÃO PARA WEB Marcelo Henrique dos Santos

- HTML : papel central na Web - Esquema de marcação para as páginas

Um esquema de nomes para localização de fontes de informação na Web, esse esquema chama-se URI.

Programação Web Aula 2 XHTML/CSS/XML

Transformações em XML: XSLT

Programação para Web I Desenvolvendo templates com Facelets. Prof. Eder de Lima Lacerda

PROGRAMAÇÃO PARA INTERNET RICA DHTML E O DOCUMENT OBJECT MODEL

Exame de Época Especial / 1º Semestre / 2007/2008. Todas as folhas devem ser identificadas, de forma legível, com o nome e número do aluno.

Desenvolvimento Web. Introdução Geral. Prof. Vicente Paulo de Camargo

Escola de Ciência da Informação ECI/UFMG. Eduardo Ribeiro Felipe

XML - DTD - XSL Exemplos de Exercícios TWEB II

GERÊNCIA DE DADOS SEMI ESTRUTURADOS - XQUERY. Prof. Angelo Augusto Frozza

PROCESSAMENTO ESTRUTURADO DE DOCUMENTOS. Departamento de Documentação Curso de Arquivologia

INTERNET BÁSICA: EXTENSIBLE HYPERTEXT MARKUP LANGUAGE XHTML PARTE 2

INTRODUÇÃO AO DESENVOLVIMENTO WEB. PROFª. M.Sc. JULIANA H Q BENACCHIO

Transcrição:

XSL - extemsible Stylesheet Language Prof. Antonio Almeida de Barros Jr.

Agenda Conceitos XSLT - XSL Transformations Iteração e Classificação Processamento Condicional Copiando Nodos Variáveis Estude de Caso: XSLT e Xpath Práticas XSL-FO Conceitos 2

XSL - Conceitos XML derivada de SGML; Padronizada pelo W3C; XSL derivada de DSSSL (Document Style Semantics and Specification Language); Primeira proposta formal em 1997 pela W3C (já continha conceitos de XSLT, como uso de templates) Novembro de 1999 XSLT tornou-se uma recomendação da W3C; XSL-FO Vr. 1.1: Dezembro de 2006; 3

XSL - Conceitos Utiliza-se a Extensible StyleSheet Language (XSL) para formatar documentos XML; A XSL é dividida em duas partes: 1. XSL Transformation Language (XSLT) Utiliza-se a XSLT para mudar a forma de um documento XML; Utiliza X-Path para identificar nodos; 2. XSL-FO é uma linguagem para descrever folhas de estilo para documentos XML Fornece uma alternativa às CSS para formatar um documento de XML; 4

XSL Transformation Language (XSLT) Prof. Antonio Almeida de Barros Jr.

XSL usa XSLT para transformar uma árvore XML em outra; XSLT permite: transformar XML em XHTML; filtrar e ordenar componentes de XML; formatar um componente de XML com base no seu valor; formatar XML para exibição na tela, impressão ou saída em áudio; 6

O documento XSLT é um documento XML com um elemento raiz stylesheet; Em uma transformação XSL, há duas árvores de nodos: Árvore de origem Os nodos nessa árvore correspondem ao documento XML original ao qual a transformação é aplicada. Árvore de resultados Contém todos os nodos produzidos pela transformação XSL; Apresenta o documento produzido pela transformação. 7

Template simples Apresenta o elemento raiz do documento XSLT (isto é, xsl:stylesheet) e seus atributos. 8

Template simples Este elemento identifica nodos específicos do documento XML utilizando uma expressão Xpath no atributo match. 9

Template simples Quando um nodo do elemento mymessage é identificado na árvore de origem, o conteúdo do elemento template é colocado na árvore de resultado. 10

Template simples Utilizando o elemento value-of e uma expressão XPath no atributo select, o conteúdo do conjunto de nodos retornado pela expressão XPath é colocado na árvore de resultado. 11

Template simples Utilizando o elemento value-of e uma expressão XPath no atributo select, o conteúdo do conjunto de nodos retornado pela expressão XPath é colocado na árvore de resultado. 12

Template simples Documento XML de entrada Uso do stylesheet para anexar uma folha de estilo a um documento XML. O atributo type define o tipo de arquivo que está sendo anexado. 13

Template simples Documento XML de entrada 14

Iteração e Classificação Exemplo 02 15

Iteração e Classificação Exemplo 02 Template XSLT que corresponde ao elemento book. 16

Iteração e Classificação Exemplo 02 Cria o título para o documento HTML. Foi utilizado o ISBN do livro a partir do atributo isbn e também o conteúdo do elemento title para criar o string de título. 17

Iteração e Classificação Exemplo 02 Cria o um elemento header (cabeçalho) com o título do livro, selecionado a partir do elemento title. 18

Iteração e Classificação Exemplo 02 Cria outro elemento header, exibindo o autor do livro. Utiliza-se a expressão Xpath author/lastname para selecionar o sobrenome do autor. 19

Iteração e Classificação Exemplo 02 Mostra o elemento for-each de XSLT, que aplica o conteúdo do elemento a cada um dos nodos selecionados pelo atributo select. Neste caso, foram selecionados todos os elementos preface do elemento chapters. 20

Iteração e Classificação Exemplo 02 O elemento sort de XSLT, classifica os nodos selecionados pelo elemento for-each pelo campo no atributo select, na ordem especificada no atributo order. 21

Processamento Condicional Exemplo 03 Mostra um condicional when do elemento choose. O atributo test fornece a instrução condicional a ser testada. Neste elemento, testamos se o atributo time do elemento note tem um valor maior que 500 e menor que 1200. 22

Processamento Condicional Exemplo 03 O elemento otherwise é opcional, mas, se incluído, deve aparecer somente uma vez, depois de todos os elementos when. Esse elemento é utilizado se nenhum elemento wen for correspondido. 23

Processamento Condicional Exemplo 03 Diferente do elemento choose, utiliza-se o elemento if para fornecer um único teste condicional, no atributo test. 24

Copiando nodos Exemplo 04 O elemento copy produz uma duplicata do nodo de contexto na árvore de resultado. 25

Copiando nodos Exemplo 04 Diferente do elemento copy, o elemento copy-of duplica todos os filhos (Isto é, texto, instruções de processamento, comentários etc) e atributos do nodo. 26

Variáveis Exemplo 05 Cria o elemento variable com o atributo name de sum, para armazenar a soma do número de páginas no livro. 27

Variáveis Exemplo 05 O elemento value-of envia para a saída a variável sum que usa o sinal de cifrão ($) para fazer referência à variável. 28

Estudo de caso: XSLT e XPath Exemplo 06 O caminho de localização /product seleciona todos os product filhos do nodo raiz. 29

Estudo de caso: XSLT e XPath Exemplo 06 Este elemento contém o caminho de localização completetrainingcourses//node() em seu atributo select. O caminho de localização seleciona o conjunto de todos os nodos que são descendentes dos elementos completetrainingcourses, 30

Estudo de caso: XSLT e XPath Exemplo 06 O elemento xsl:value-of com o caminho de localização recuperam o nodo pai de qualquer nodo no documento XML cujo valor de string é igual ao string C How to Program. 31

Estudo de caso: XSLT e XPath Exemplo 06 Seleciona o nodo de elemento title do segundo elemento completetrainingcourse no documento e adiciona seu valor de string ao documento HTML. 32

Estudo de caso: XSLT e XPath Exemplo 06 Verifica se o elemento product é antepassado do nodo cujo valor de string é XML How to Program. 33

Estudo de caso: XSLT e XPath Exemplo 06 Neste exemplo, foi utilizado o caminho de localização para adicionar o valor de string do elemento subject. 1º. Seleciona o elemento subject com o valor de string Programming COM+ with Visual Basic. 2º. Utiliza o eixo preceding-sibling para selecionar o elemento subject do primeiro irmão que é o eixo inverso, assim os nodos que ele seleciona estão na ordem inversa do documento. 34

Estudo de caso: XSLT e XPath Exemplo 06 1º. Seleciona o nodo do elemento subject cujo valor de string é Introduction to Java programming. 2º. Seleciona o primeiro elemento subject na ordem do documento no eixo following-sibling. 35

XSL Práticas Prática 01 Exemplo Oi Mundo : arquivo oi.xml <?xml version="1.0"?> <?xml-stylesheet href="oi.xsl" type="text/xsl"?> <oi> Olá todos. </oi> 36

XSL - Conceitos Prática 01 Exemplo Oi Mundo : arquivo oi.xsl <?xml version="1.0" encoding="iso-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/xsl/transform"> <xsl:output method="html"/> <xsl:template match="/"> <html> <body> <h1> <xsl:value-of select="." /> </h1> </body> </html> </xsl:template> </xsl:stylesheet> 37

XSL - Conceitos Prática 02 Exemplo: catalogo.xml 38

XSL - Conceitos Prática 02 Exemplo: catalogo.xsl 39

XSL: objetos de formatação da Extensible Stylesheeet Language Prof. Antonio Almeida de Barros Jr.

XSLFO: objetos de formatação da Extensible Stylesheeet Language Vantagens de separar apresentação de conteúdo: Múltiplos formatos de saída: tamanhos diferentes, mídias diferentes (papel, online), dispositivos diferentes (PDA, celular, PC); Interface voltada para usuário (ex.: acessabilidade), cores, fontes, etc; Uso de estilos padrões; Liberdade do autor não se preocupar com apresentação, que será tratada depois por um profissional. 41

XSLFO - Conceitos CSS versus XSL: CSS - Style Sheet para HTML tags em HTML com sintaxe e semântica pré-definidas; CSS descreve como formatar tags de HTML. XSL - Style Sheet para XML tags em XML não são pré-definidas; browser não tem informação para formatar um documento XML; XSL descreve como exibir documentos XML. 42

XSLFO - Conceitos Pode-se utilizar uma folha de estilo para transformar um documento XML em uma variedade de formatos. Documento XML Documento CSS Documento HTML Documento XSL Documento XML Etc. 43

XSLFO - Conceitos O documento XML é transformado em um documento XSL que marca os dados utilizando objetos de formatação; Esse documento XSL pode ser transformado em outros formatos, incluindo Portable Document Format (PDF); 44

XSLFO - Conceitos Formatting objects Usado para formatar documentos XML para apresentação; Tipicamente usado quando o resultado da transformação é para mídia impressa; livros, revistas, encartes, etc. FOP Ferramenta em Java da Apache; Transforma documentos XSL que contêm formatting objects; Download em xml.apache.org/fop. 45

XSLFO - Conceitos Exemplos de ferramentas: http://xml.apache.org/fop - FOP para PDF http://www.unicorn-enterprises.com/ - TeX para PDF http://www.jfor.org/ - XSLFO para RTF http://www.xsmiles.org/ - browser XML que usa FOP 46

Referências [1] Deitel, H. M.; Deitel, P. J.; Nieto, R.; XML: Como Programar. Ed. Bookman, 2003. ISBN: 8536301473. [2] Casanova, M.A.; Processamento de documentos XML XSL (Tecnologias de Banco de Dados para a Web Semântica) [3] Hübner, J.F.; Folhas de estilo (XSL e XPath). [4] http://www.macoratti.net/xml.htm [5]http://www.dsc.ufcg.edu.br/~jacques/cursos/daca/html/xsl/i ndex.html [6] http://xml.apache.org/xalan-j/ 47