![Page 1: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/1.jpg)
XMLExtended Markup Language
Wagner Meira Jr.
![Page 2: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/2.jpg)
O que é?
XML é uma linguagem para documentação estruturada.
Documentos Estruturados contém não apenas conteúdo (palavras, imagens) como também a função do conteúdo.
![Page 3: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/3.jpg)
XML vs. HTML
• HTML: conjunto e semântica de tags pré-definidos– <H1> e <ati.product.code>
• XML: meta-linguagem para descrever linguagens de marcação.– XML provê recursos para para definir tags e as
relações estruturais entre elas.– Toda a semântica vem de aplicações ou estilos
![Page 4: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/4.jpg)
XML vs. SGML
• SGML é o padrão OSI para documentação estruturada.
• XML é um “perfil de aplicação” de SGML.
• XML é muito mais restrito que SGML.
• SGML permite estruturas arbitrárias, mas a dificuldade de implementação é muito grande para que navegadores a suportem.
![Page 5: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/5.jpg)
XML: Objetivos
• Uso de XML na Internet deve ser trivial.– Deve ser possível visualizar documentos tão
fácil e rapidamente quanto em HTML.
• XML deve suportar várias aplicações.
• XML deve ser compatível com SGML.
• Programas para processar documentos XML devem ser fáceis de implementar.
![Page 6: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/6.jpg)
XML:Objetivos• O número de recursos opcionais em XML
deve ser mínimo, idealmente zero.• O projeto do padrão XML deve ser rápido.• O projeto de XML deve ser formal e conciso.• Documentos XML devem ser simples de
criar.• Concisão na marcação não é importante.
![Page 7: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/7.jpg)
XML: Componentes
• XML: define a sintaxe de XML.
• XLL: define um padrão de representação de referências entre recursos.
• XSL: define uma linguagem de descrição de estilos para XML.
• XUA: Padroniza a criação de agentes XML.
![Page 8: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/8.jpg)
Exemplo XML
<?XML version=“1.0”?>
<oldjoke>
<burns>Say<quote>goodnight </quote>, Gracie. </burns>
<allen>Goodnight, Gracie</allen>
<applause/>
</oldjoke>
![Page 9: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/9.jpg)
Marcadores XML
• Elementos
• Referências a entidades
• Comentários
• Instruções de Processamento
• Seções Formatadas
• Declarações de Tipos de Documentos
![Page 10: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/10.jpg)
Elementos
• Marcação mais comum
• Delimitados por < e >
• Exemplos:– <element> bla bla bla </element>– <element/>
![Page 11: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/11.jpg)
Atributos
• Pares nome-valor que caracterizam o elemento
• Em XML, todos os atributos devem vir entre aspas.
• Exemplo:– <div class=“preface”>
![Page 12: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/12.jpg)
Referências a Entidades
• Utilizadas para representar caracteres especiais:– < = “– > = ”– & = &– Caracteres Unicode: ℞ ou ℞
![Page 13: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/13.jpg)
Comentários
• Não são processados pelo interpretador XML
• Início: <!--
• Fim: -->
![Page 14: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/14.jpg)
Instruções de Processamento
• Recurso para prover informações para uma aplicação
• Não são parte do documento XML, mas são passados às aplicações
• Instruções não reconhecidas são ignoradas
• Formato:– <?name pidata?>
![Page 15: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/15.jpg)
Seções CDATA
• Desabilita as marcações
• Exemplo:
<![CDATA[
*p= &q;
b = (I <=3);
]]>
![Page 16: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/16.jpg)
Declaração de Tipos de Documentos
• Permite a criação de Tags
• Permite definição de semântica diferenciada
• Tipos:– Declarações de elementos– Declarações de listas de atributos– Declarações de entidades– Declarações de notação
![Page 17: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/17.jpg)
Exemplo
![Page 18: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/18.jpg)
DTD: Exemplo
<?xml version="1.0" ?><!DOCTYPE PurchaseOrder [ <!ELEMENT PurchaseOrder (Customer,Supplier,Order)> <!ELEMENT Customer Supplier (Name,Address*)> <!ELEMENT Order (Item+)> <!ELEMENT Name Item Address (#PCDATA)> <!ENTITY ctp "Cambridge Technology Partners"><!ATTLIST Customer uid ID #REQUIRED ><!ATTLIST Order cid IDREF #REQUIRED >]>
![Page 19: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/19.jpg)
DTD: Exemplo
<PurchaseOrder> <Customer uid="C0023416"> <Name>&ctp;</Name> <Address>304 Vassar St.,Cambridge,MA</Address> </Customer> <Supplier> <Name>Computer And Printer Paradise</Name> <Address>45 Seabreeze Dr., Miami, FL</Address> </Supplier > <Order cid="C0023416"> <Item>A brown hat</Item> </Order></PurchaseOrder>
![Page 20: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/20.jpg)
Declarações de Elementos
• Exemplo:– <!ELEMENT Customer Supplier (Name,Address*)>
– <!ELEMENT Order (Item+)>
– <!ELEMENT Name Item Address (#PCDATA)>
• Declarações para todos os elementos usados devem estar no DTD
• Definição especial #PCDATA indicando string• Dois outros modelos de conteúdo
– Empty
– Any (desaconselhável)
![Page 21: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/21.jpg)
Declarações de Atributos
• Exemplo:– <!ATTLIST Customer uid ID #REQUIRED >
– <!ATTLIST Order cid IDREF #REQUIRED >
• Tipos:– CDATA: strings genéricas
– ID: nome único no documento
– IDREF: conjuntos de Ids
– ENTITY: nome de uma entidade
– NMTOKEN: uma única palavra
– Lista de nomes: enumeração de valores possíveis
![Page 22: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/22.jpg)
Declarações de Atributos
• Valores padrão:– #REQUIRED: deve ser instanciado para cada ocorrência
– #IMPLIED: não é obrigatório e não há valor padrão
– “value”: o valor dado é o padrão para cada ocorrência
– #FIXED “value”: Se o atributo ocorrer deve ter o valor especificado
![Page 23: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/23.jpg)
Declarações de Entidade
• Permitem associar nomes com outros fragmentos do documento: – Texto
– Parte do DTD
– Arquivo Externo
• Exemplo:– <!ENTITY ctp "Cambridge Technology Partners">
![Page 24: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/24.jpg)
Entidades Internas
• Podem incluir referências para outras entidades, mas não podem ser recursivas.
• Entidades pré-definidas:– < = <– > = >– & = &– &apos = ‘– " = “
![Page 25: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/25.jpg)
Entidades Externas
• A referência à entidade causa a inserção do arquivo indicado.
• Entidades externas podem ser texto ou binárias
![Page 26: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/26.jpg)
Entidades Parametrizadas
• Podem ocorrer apenas dentro do DTD
• É identificada por <%> antes do seu nome
• Funcionam como macros, sendo imediatamente expandidas na DTD.
![Page 27: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/27.jpg)
Declarações de Notação
• Identificam tipos binários externos específicos.
• Informação é passada para a aplicação.
• Exemplo:– <!NOTATION GIF87A SYSTEM “GIF”>
![Page 28: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/28.jpg)
Tipos de documentos
• Documentos bem formados:– Compiláveis por XML
• Documentos Válidos– Possuem um DTD e o seguem
![Page 29: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/29.jpg)
Vantagens
• Flexível
• Auto-contida
• Portável
• Fácil de utilizar
• Robusta
• Legível
![Page 30: XML Extended Markup Language Wagner Meira Jr.. O que é? XML é uma linguagem para documentação estruturada. Documentos Estruturados contém não apenas conteúdo](https://reader035.vdocuments.net/reader035/viewer/2022062418/552fc130497959413d8d500d/html5/thumbnails/30.jpg)
Desvantagens
• Tamanho
• Custo de processamento
• Complexidade