xml - parte 1
TRANSCRIPT
![Page 2: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/2.jpg)
XML - Conceitos XML - EXtensible Markup Language -
Linguagem de Marcação Extensível
Criada por um consórcio de empresas, profissionais e instituições interessadas no desenvolvimento da WWW: http://www.w3.org/xml
XML é recomendação W3C desde 1998. Atualmente na versão 1.1 de 04/02/2004. Disponível em http://www.w3.org/TR/xml11/
![Page 3: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/3.jpg)
XML - Conceitos
É uma versão simplificada da SGML (Standard Generalized Markup Language)
Capaz de descrever diversos tipos de dados.
Seu propósito principal é a facilidade de compartilhamento de informações através da Internet.
Marcas identificam dados ou trechos de um documento
![Page 4: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/4.jpg)
XML – Características Separação do conteúdo e da formatação; Legibilidade tanto por humanos quanto por
máquinas; Possibilidade de criação de elementos de
marcação tags sem limitação; Criação de arquivos para validação de estrutura; Com seu uso pode-se interligar bancos de
dados distintos; Simplicidade; XML separa a estrutura da informação de sua
apresentação.
![Page 5: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/5.jpg)
HTML HTML (HyperText Markup Language)
possui um conjunto limitado de tags que são interpretados pelos navegadores.
O conteúdo é representado juntamente com sua estrutura e forma de apresentação especificada por meio das tags.
O XML identifica facilmente as estruturas mas não inclui orientações de apresentação (formatação) do conteúdo.
![Page 6: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/6.jpg)
XML Dimensão de Informação:
Conteúdo: XMLEstrutura: XML, DTD, XMLSchema
Dimensão de ApresentaçãoCSSXSL
Dimensão de processamento: ParsesAPIsDOM
![Page 7: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/7.jpg)
XML – Estrutura e Conteúdo Um documento XML pode conter
Instruções de processamento <? ... ?>Comentários <!- - ... - ->Elementos (tags) e atributosReferência a entidades &ref;Seções CDATA
![Page 8: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/8.jpg)
XML – Documentos Bem Formados
Uma linguagem impõe regras que indicam como escrever um documento bem formado.
Essas regras são chamadas de sintaxe.
A observação dessas regras é fundamental para que um navegador consiga interpretar o código XML
![Page 9: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/9.jpg)
XML – Documentos Bem Formados
1. Documento XML sempre inicia com uma instrução de processamento indicando a versão e o conjunto de caracteres:
<?xml version="1.0" encoding="ISO-8859-1"?>
Existem vários conjuntos de caracteres: Unicode, ISO-10646, UTF-8, UTF-16.
![Page 10: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/10.jpg)
XML – Documentos Bem Formados
2. As tags XML são sensíveis ao caso, ou seja, <tipo> é diferente de <Tipo> e de <TIPO>:
<nome>Jorge Luiz</NOME> <email>[email protected]</email>
</NOME> não é a tag de término de<nome>, por isto não é bem formado.
![Page 11: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/11.jpg)
XML – Documentos Bem Formados
3. Cada tag de abertura deve ter uma tag de fechamento correspondente:
<nome>Jorge Luiz <email>[email protected]</email>
A tag <nome> não possui término (</nome>), por isto é mal-formada.
![Page 12: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/12.jpg)
XML – Documentos Bem Formados
4. Respeitar a hierarquia e o aninhamento de tags:
<nome>Jorge Luiz <email>[email protected]</nome> </email>
A tag <email> não pode encerrar-se depois da tag <nome>, por isto é mal-formada.
![Page 13: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/13.jpg)
XML – Documentos Bem Formados 5. Possui um elemento raiz (root) que
contém todos os outros:<agenda>
<pessoa id="1"><nome>Jorge Luiz</nome><email>[email protected]</email>
</pessoa><pessoa id="2">
<nome>Ana Paula</nome><email>[email protected]</email>
</pessoa></agenda>
A tag <agenda> é a raiz do documento
![Page 14: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/14.jpg)
XML – Documentos Bem Formados6. Preferencialmente, o nome do arquivo XML
deve ser o nome do elemento raiz:
<agenda><pessoa id="1">
<nome>Jorge Luiz</nome><email>[email protected]</email>
</pessoa><pessoa id="2">
<nome>Ana Paula</nome><email>[email protected]</email>
</pessoa></agenda>
Salve o documento com o nome de agenda.xml
![Page 15: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/15.jpg)
XML – Documentos Bem Formados W3C recomenda que os aplicativos que
utilizam XML não tentem corrigir erros de formação como acontece com HTML.
![Page 16: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/16.jpg)
Exercício 1Faça uma análise do documento XML abaixo indicando onde e quais são os erros de formação que existem:
<?xml version=”1.0” encoding="ISO-8859-1"?>
<MICRO> <HD>Capacidade 20 Gb</Hd> <DISQUETE>Capacidade 1,44 Mb</MICRO></DISQUETE>
![Page 17: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/17.jpg)
Exercício 2Faça uma análise do documento XML abaixo indicando onde e quais são os erros de formação que existem:<xml version=”1.0” encoding="ISO-8859-1"?><CURSO> <DISCIPLINA sem=“4”>Linguagem IV <OBJETIVO>Ensinar XML</OBJETIVO> <METODOLOGIA>Laboratórios<metodologia> <avaliação>3 provas</avaliacao></CURSO>
![Page 18: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/18.jpg)
XML – Documentos Válidos (estrutura+semântica)Algumas vezes, além de bem formados, o
documento XML também precisa ser válido.
Ou seja, deve estar de acordo com uma definição de estrutura previamente estabelecida
Para indicar a estrutura de um documento pode ser usado o DTD (Document Type Definition) ou XMLSchema
![Page 19: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/19.jpg)
XML – Documentos Válidos (estrutura+semântica)Por exemplo, o arquivo agenda.xml
pode ter sua estrutura definida pelo arquivo agenda.dtd.
Neste caso, além de ser bem formado, o documento XML deve obedecer as especificações definidas pelo DTD
![Page 20: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/20.jpg)
XML – Apresentação Uma pequena alteração no arquivo XML
permite que o conteúdo seja apresentado em um navegador
Faz-se uma referência a um arquivo CSS (agenda.css) com orientações de formatação:
<?xml-stylesheet type="text/css" href="agenda.css"?>
![Page 21: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/21.jpg)
XML – Apresentação
Outra forma de apresentar conteúdos XML é através de XSL
XSL - XML Stylesheeet Language<?xml-stylesheet type="text/xsl" href="agenda.xsl"?>
![Page 22: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/22.jpg)
XML – Parsers, APIs, DOM
Documentos XML podem ser processados e gerados por outras aplicações, para isto, o W3C criou interfaces para facilitar o intercâmbio e a criação de documentos XML
![Page 23: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/23.jpg)
XML – Parsers, APIs, DOMParsers
processam documentos XML sequencialmente gerando um outro documento em formato diferente
APIsgeram eventos para aplicações
DOMgera uma árvore percorrida pela aplicação
![Page 24: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/24.jpg)
XML - Exemplo
Exemplo de documento XML – agenda.xml:
<?xml version="1.0" encoding="ISO-8859-1"?><agenda>
<nota><para>Paulo</para><de>Maria</de><assunto>Lembrete</assunto><texto>Não esqueça da reunião</texto>
</nota></agenda>
![Page 25: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/25.jpg)
XML - Exemplo
Exemplo de documento DTD – agenda.dtd:
<?xml version="1.0" encoding="ISO-8859-1"?><!ELEMENT agenda (nota+)><!ELEMENT nota (para,de,assunto,texto)><!ELEMENT para (#PCDATA)><!ELEMENT de (#PCDATA)><!ELEMENT assunto (#PCDATA)><!ELEMENT texto (#PCDATA)>
![Page 26: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/26.jpg)
XML - ExemploExemplo de documento XML com DTD externo:
<?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE agenda SYSTEM "agenda.dtd"><agenda>
<nota><para>Paulo</para><de>Maria</de><assunto>Lembrete</assunto><texto>Não esqueça da reunião</texto>
</nota></agenda>
![Page 27: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/27.jpg)
XML - ExemploExemplo de documento XSL para apresentação:
<?xml version="1.0" encoding="ISO-8859-1"?><xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform“>
<xsl:template match="agenda"><html>
<title>Agenda de Compromissos</title><h1>Agenda de Compromissos</h1><xsl:apply-templates/>
</html></xsl:template><xsl:template match="nota">
<hr/><xsl:apply-templates/><p/>
</xsl:template>...
</xsl:template><xsl:template match="text()">
<xsl:value-of select="."/></xsl:template>
</xsl:stylesheet>
![Page 28: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/28.jpg)
XML - ExemploExemplo de documento XML com XSL:
<?xml version="1.0" encoding="ISO-8859-1"?><?xml-stylesheet type="text/xsl" href="agenda.xsl"?><!DOCTYPE agenda SYSTEM "agenda.dtd"><agenda>
<nota><para>Paulo</para><de>Maria</de><assunto>Lembrete</assunto><texto>Não esqueça da reunião</texto>
</nota></agenda>
![Page 29: XML - Parte 1](https://reader031.vdocuments.net/reader031/viewer/2022021920/58d13bca1a28ab455d8b4e43/html5/thumbnails/29.jpg)
XML - ExemploApresentação no Browser do XML com XSL: