xml extended markup language wagner meira jr.. o que é? xml é uma linguagem para documentação...

30
XML Extended Markup Language Wagner Meira Jr.

Upload: internet

Post on 18-Apr-2015

108 views

Category:

Documents


0 download

TRANSCRIPT

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

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

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

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

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

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

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

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

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

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

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

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

Referências a Entidades

• Utilizadas para representar caracteres especiais:– < = &ldquo;– > = &rdquo;– & = &amp;– Caracteres Unicode: &#8478 ou &#x211E

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

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

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

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

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

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

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

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

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

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

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

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

Entidades Internas

• Podem incluir referências para outras entidades, mas não podem ser recursivas.

• Entidades pré-definidas:– &lt = <– &gt = >– &amp = &– &apos = ‘– &quot = “

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

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

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

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

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

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

Desvantagens

• Tamanho

• Custo de processamento

• Complexidade