A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Extensible Markup Language

Apresentações semelhantes


Apresentação em tema: "Extensible Markup Language"— Transcrição da apresentação:

1 Extensible Markup Language
XML, Maio 2000 Faculdade de Engenharia da Universidade do Porto XML Extensible Markup Language Gabriel David Lígia Ribeiro JCL, AJR

2 Estrutura, semântica e formato
Exemplo: registo de uma música HTML <dt>Grândola <dd>música usada como sinal de acção militar <ul> <li>Autor: José Afonso <li>Data: 1972 <li>Editora: Valentim de Carvalho </ul> XML <MUSICA> <TITULO>Grândola</TITULO> <OBS>música usada como sinal de acção militar</OBS> <AUTOR>José Afonso</AUTOR> <DATA>1972</DATA> <EDITORA>Valentim de Carvalho</EDITORA> </MUSICA>

3 Comparação HTML: XML: mais semântica, também estrutura, sem formato
<TD> – estrutura <STRONG> - semântica <B> - formato O <dt> é mesmo uma definição ou só uma maneira de indentar texto? XML: mais semântica, também estrutura, sem formato Facilita a leitura e a interpretação relativamente à realidade Suporta a pesquisa Flexível Necessita indicações de apresentação

4 Metalinguagem SGML HTML XML
Standard Generalized Markup Language (1986, ISO 8879) Charles Goldfarb, Ed Mosher, Ray Lorie (1969, IBM) Anotação de documentos para facilitar o seu processamento Define os mecanismos básicos para as linguagens concretas HTML Hypertext Markup Language (1993) Tim Berners-Lee (criou a Web) Linguagem SGML concreta para facilitar a apresentação de documentos na Internet XML eXtensible Markup Language (1996) Jon Bosak para W3C (WWW Consortium) conjunto de regras que os documentos devem seguir (simplificação do SGML, de processamento pesado, pelas excepções que admite)

5 Paralelo SGML XML HTML XHTML

6 Aplicações Para além do XHTML Chemical Markup Language
Mathematical Markup Language Channel Definition Format Open Software Description Resource Description Framework Scalable Vector Graphics Music ML ...

7 Primeiro documento Um documento XML
<?xml version="1.0" standalone="yes" ?> <foo> Bom dia a quem chegou a horas! </foo> <? ... ?> é uma instrução de processamento (xml) Um atributo é um par nome=valor Standalone=“yes” significa que não são necessários documentos auxiliares O elemento <foo> é constituído por uma marca de início, uma marca de fim e conteúdo

8 Ainda o primeiro documento
Variante <?xml version="1.0" standalone="yes" ?> <p> Bom dia a quem chegou a horas! </p> Outra <saudacao> </saudacao> As marcas podem ter três tipos de significado Estrutura, semântica e estilo Estrutura organiza o documento (em árvore) Semântica relaciona com o mundo Estilo determina a apresentação As três formas do documento são equivalentes pois têm a mesma estrutura e conteúdo O significado está na cabeça do leitor (terceira forma é a melhor)

9 Apresentação Ensinando o navegador a apresentar os elementos
Definir folha de estilo (CSS) Partilhável por vários documentos, tal como um conjunto de marcas é partilhado Diferentes estilos permitem adequar a diferentes meios Ficheiro saudacao.css saudacao {display : block; font-size : 24pt; font-weight : bold; } Nova instrução de processamento liga o estilo <?xml version="1.0" standalone="yes" ?> <?xml-stylesheet type="text/css" href="saudacao.css" ?> <saudacao> Bom dia a quem chegou a horas! </saudacao>

10 XML Formato standard para descrever e trocar dados estruturados
Documentos são separados em 3 partes: Estrutura — XML Estilo — XSL (eXtensible Style Language) Conteúdo — definido pelo utilizador É extensível permitindo juntar novas marcas e atributos A estrutura pode ser encaixada Permite a inclusão de meta-informação para descrição da informação — DTD

11 Verificação de documentos XML
Um documento XML é bem-formado sse: <?xml version="1.0" standalone="...?> valores de atributos entre aspas a marcas de abertura correspondem marcas de fecho marcas são encaixadas correctamente  o processador consegue construir uma estrutura em árvore

12 Exemplo Registar informação sobre turmas e alunos, com o seu nome, média e, nalguns casos, idade Um dos alunos frequenta duas turmas <?xml version=“1.0” standalone=“yes”> <turma> <aluno> <nome>Rui Silva</nome> <media>13.6</media> <nome>João Sousa</nome> <media>11.0</media> </aluno> </turma> <aluno><nome>Ana Costa</nome> <media>17.0</media></aluno> Erros?

13 Correcção do exemplo Falta elemento raiz
<?xml version=“1.0” standalone=“yes”?> <escola> <turma> <aluno> <nome>Rui Silva</nome> <media>13.6</media> </aluno> <nome>João Sousa</nome> <media>11.0</media> </turma> <aluno><nome>Ana Costa</nome> <media>17.0</media></aluno> </escola> Falta elemento raiz Há sobreposição, não encaixada, de elementos (turma) Falta marcar os alunos da primeira turma Fica estrutura em árvore Nota: a disposição das marcas não é significativa, só facilita a leitura

14 Representação em árvore
escola turma turma aluno aluno aluno aluno nome média nome média nome média nome média Rui Silva 13,6 João Sousa 11,0 João Sousa 11,0 Ana Costa 17,0 Nota: organização estritamente hierárquica força a repetição dos elementos inferiores comuns (aluno João Sousa) em vez de usar referências para uma única ocorrência (redundância e inconsistência); ver modelo relacional

15 Atributos <?xml version=“1.0” standalone=“yes”?>
<escola nome=“Devesas” telefone=“ > <turma nr=“A”> <aluno> <nome>Rui Silva</nome> <media escala=“0-20”>13.6</media> </aluno> <nome>João Sousa</nome> <media escala=“0-20”>11.0</media> </turma> <turma nr=“B”> <aluno><nome>Ana Costa</nome> <media escala=“0-20”>17.0</media></aluno> </escola> informações auxiliares, metainformações, etc. podem estar em atributos opção entre elemento ou atributo feita pelo criador do documento

16 Segundo nível de verificação
Documentos XML bem-formados podem ser válidos se verificarem certas restrições Definição de tipos de documentos (Document type definition - DTD) Especifica regras para elementos, atributos, ... Ferramentas podem auxiliar a verificar se o documento está bem formado e se é válido XML spy (comercial) : ambiente de desenvolvimento XML validator (livre) : linha de comando ( IEXMLTLS (livre) : adiciona-se aos menus do Internet Explorer Verificação como serviço remoto nas páginas do W3C ( Outras ligações com interesse O sítio do XML: Portal:

17 Exemplo de documento XML
Bem-formado Não validado <?xml version="1.0" standalone="yes"?> <conversation> <greeting>Hello, world!</greeting> <response>Stop the planet, I want to get off!</response> <image src="mad-planet.gif"/> </conversation> Poderá ser validável?

18 Aplicações de Troca de Dados
XML é formato adequado para troca de dados complexos Domínios já identificados push technology EDI (Electronic Data Interchange) meta-dados: MCF (Netscape, XML-data (MS), RDF (W3C) Bases de dados relacionais Dep. Ext. DEEC 2020 DEC 2030 <telephone num="2020"> <dept>DEEC</dept> <person>jlopes</person> <person>jpascoal</person> <person>aaguiar</person> </telephone> ... Nome Ext. jlopes 2020 arocha 2030 jpascoal 2020 aaguiar 2020 2020 DEEC jlopes, jpascoal, aaguiar 2030 DEC arocha

19 Aplicações de Publicação de Doc.
XML é formato adequado para anotar documentos semi-estruturados XML facilita a geração e gestão de meta-informação toc, index, etc. XML facilita a publicação em formatos diversos CD-ROM, papel, Palms, Web Estado da Arte Introdução <book CommDate=" "> <title>O Livro</title> <chapter> <title>Introdução</title> ... <chapter> <title>Estado da Arte</title> O Livro 1 Introdução 2. Estado da Arte meta-informação

20 Conclusão da introdução
XML pode codificar uma representação para um documento ordinário um registo estruturado (e.g. ordem de compra) um registo de dados (e.g. o resultado de uma interrogação) um objecto com dados e métodos meta-dados, entidades e tipos (XMI) meta-conteúdos acerca de um site Web (CDF) XML é auto-contido e pode ser validado, interpretado e processado sem intervenção humana Pode ser usado para: formato de ligação (para transferência de dados entre cliente e servidor) formato de troca de informação (e.g. entre a aplicação e a base de dados) formato persistente (para guardar dados) Alguns DTD existentes: CDF (conteúdo Web), OFX (Financial), OSD (Open Software Distribution), CML (Chemical), MML (Mathematical)


Carregar ppt "Extensible Markup Language"

Apresentações semelhantes


Anúncios Google