Faculdade de Engenharia da Universidade do Porto
This presentation is the property of its rightful owner.
Sponsored Links
1 / 20

XML PowerPoint PPT Presentation


  • 62 Views
  • Uploaded on
  • Presentation posted in: General

Faculdade de Engenharia da Universidade do Porto. XML. Extensible Markup Language. Gabriel David [email protected] Lígia Ribeiro [email protected] 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>

Download Presentation

XML

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Xml

Faculdade de Engenharia da Universidade do Porto

XML

Extensible Markup Language

Gabriel David

[email protected]

Lígia Ribeiro

[email protected]


Estrutura sem ntica e formato

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>


Compara o

Comparação

  • HTML:

    • <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


  • Metalinguagem

    Metalinguagem

    • SGML

      • 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)


    Paralelo

    Paralelo

    SGML

    XML

    HTML

    XHTML


    Aplica es

    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

    • ...


    Primeiro documento

    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


    Ainda o primeiro documento

    Ainda o primeiro documento

    • Variante

      <?xml version="1.0" standalone="yes" ?>

      <p>

      Bom dia a quem chegou a horas!

      </p>

    • Outra

      <?xml version="1.0" standalone="yes" ?>

      <saudacao>

      Bom dia a quem chegou a horas!

      </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)


    Apresenta o

    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>


    Xml

    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


    Verifica o de documentos xml

    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


    Exemplo

    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>

      <turma>

      <nome>João Sousa</nome>

      <media>11.0</media>

      </aluno>

      </turma>

      <aluno><nome>Ana Costa</nome>

      <media>17.0</media></aluno>

      </turma>

      • Erros?


    Correc o do exemplo

    Correcção do exemplo

    <?xml version=“1.0” standalone=“yes”?>

    <escola>

    <turma>

    <aluno>

    <nome>Rui Silva</nome>

    <media>13.6</media>

    </aluno>

    <aluno>

    <nome>João Sousa</nome>

    <media>11.0</media>

    </aluno>

    </turma>

    <turma>

    <aluno>

    <nome>João Sousa</nome>

    <media>11.0</media>

    </aluno>

    <aluno><nome>Ana Costa</nome>

    <media>17.0</media></aluno>

    </turma>

    </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


    Representa o em rvore

    Representação em árvore

    escola

    turma

    turma

    aluno

    aluno

    aluno

    aluno

    nome

    média

    nome

    média

    nome

    nome

    média

    média

    João Sousa

    11,0

    Ana Costa

    17,0

    João Sousa

    Rui Silva

    11,0

    13,6

    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


    Atributos

    Atributos

    <?xml version=“1.0” standalone=“yes”?>

    <escola nome=“Devesas” telefone=“225437610>

    <turma nr=“A”>

    <aluno>

    <nome>Rui Silva</nome>

    <media escala=“0-20”>13.6</media>

    </aluno>

    <aluno>

    <nome>João Sousa</nome>

    <media escala=“0-20”>11.0</media>

    </aluno>

    </turma>

    <turma nr=“B”>

    <aluno>

    <nome>João Sousa</nome>

    <media escala=“0-20”>11.0</media>

    </aluno>

    <aluno><nome>Ana Costa</nome>

    <media escala=“0-20”>17.0</media></aluno>

    </turma>

    </escola>

    • informações auxiliares, metainformações, etc. podem estar em atributos

    • opção entre elemento ou atributo feita pelo criador do documento


    Segundo n vel de verifica o

    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 (http://www.w3.org/2000/09/webdata/xsv)

      • IEXMLTLS (livre) : adiciona-se aos menus do Internet Explorer

      • Verificação como serviço remoto nas páginas do W3C (http://www.w3.org/2000/09/webdata/xsv)

    • Outras ligações com interesse

      • O sítio do XML: http://www.w3.org/XML/

      • Portal: http://home.wanadoo.nl/techlinq/xml.html


    Exemplo de documento xml

    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?


    Aplica es de troca de dados

    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.

    ---------------------

    DEEC2020

    DEC2030

    <telephone num="2020"><dept>DEEC</dept><person>jlopes</person>

    <person>jpascoal</person>

    <person>aaguiar</person>

    </telephone>

    ...

    NomeExt.

    -------------------------

    jlopes2020

    arocha2030

    jpascoal2020

    aaguiar2020

    2020DEECjlopes, jpascoal, aaguiar

    2030DECarocha


    Aplica es de publica o de doc

    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="20000508"><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


    Conclus o da introdu o

    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)


  • Login