SlideShare une entreprise Scribd logo
1  sur  15
XML (eXtensible Markup Language)

              Carlos J. Costa




CJC 2005
XML
• eXtensible Markup Language
• Linguagem
• Sub-Conjunto da SGML
    – Standard Generalized Markup Language
    – Meta-linguagem complexa de descrição de
      documentos
• Ficheiro que permite descrever a estrutura e
  conteúdo dos documentos, não a sua
  formatação
CJC 2005
XML
           Titulo
 Factura   Numero
           Dadoscliente      Descrição
           Serviços tipo n   Preço
                             Hora
                             Total




CJC 2005
XML factura.xml
 <?xml version ="1.0" standalone="yes"?>
 <FACTURA>
    <TITULO>Factura</TITULO>
    <NUMERO>111</NUMERO>
    <DADOSCLIENTE>
     <NOME>Empresa 123</NOME>
     <MORADA>
           <RUA>Av. Liberdade 123</RUA>
           <CPOSTAL>1000 Lisboa</CPOSTAL>
     </MORADA>
    </DADOSCLIENTE>
    <SERVICOS TIPO="CONSULTORIA">
     <DESCRICAO>relatorio estrategia</DESCRICAO>
     <PRECO>30</PRECO>
     <HORAS>2</HORAS>
     <TOTAL>60</TOTAL>
    </SERVICOS>
 </FACTURA>

CJC 2005
DTD
• Document Type Definition
• Define conjunto de regras a que os
  elementos e atributos XML do documento
  deve obedecer
• descreve
    – Elementos e regras
    – Atributos
    – Entidades


CJC 2005
DTD
• Elementos
     - marcas (ou tags referidos no ficheiro xml) são criadas a partir deles. Ex:
           • Factura
           • Titulo
           • Numero
           • Dadoscliente
           • Nome
           • Morada

• Regras
           - <!ELEMENT TITULO (#PCDATA)> - O titulo é um contentor de caracteres
           - <!ELEMENT TITULO ANY)> - pode ter qualquer tipo de conteúdo
           - <!ELEMENT SERVICOS (DESCRICAO,PRECO,HORAS,TOTAL)> - diz
             quais os elementos que podem fazer parte de um elemento

• Atributos
           • <!ATTLIST SERVICOS TIPO
             (CONSULTORIA,CONTABILIDADE,ENGENHARIA) #REQUIRED>
           ...
CJC 2005
DTD (factura.dtd)
 <!-- DTD DA FACTURA-->
 <!ELEMENT FACTURA (TITULO,DADOSCLIENTE,SERVICOS)>
    <!ELEMENT TITULO (#PCDATA)>
    <!ELEMENT DADOSCLIENTE (NOME,MORADA)>
      <!ELEMENT NOME (#PCDATA)>
      <!ELEMENT MORADA (RUA,CPOSTAL)>
    <!ELEMENT SERVICOS (DESCRICAO,PRECO,HORAS,TOTAL)>
    <!ATTLIST SERVICOS TIPO
    (CONSULTORIA,CONTABILIDADE,ENGENHARIA)
    #REQUIRED>
      <!ELEMENT DESCRICAO (#PCDATA)>
      <!ELEMENT PRECO (#PCDATA)>
      <!ELEMENT HORAS (#PCDATA)>
      <!ELEMENT TOTAL (#PCDATA)>


CJC 2005
Diagrama de Classes
                                   FACTURA
                              + TITULO : #PCDATA



                                  FACTURA          FACTURA



            CLIENTE

               DADOSCLIENTE
            + NOME : #PCDATA



            CLIENTE
                                                                         SERVICOS

                       MORADA                                  SERVICOS
                                                     +   DESCRICAO   :   #PCDATA
                 MORADA
                                                     +   PRECO       :   #PCDATA
           + RUA     : #PCDATA                       +   HORAS       :   #PCDATA
           + CPOSTAL : #PCDATA                       +   TOTAL       :   #PCDATA
                                                     +   TIPO        :   ENUMERATION


CJC 2005
CSS (factura.css)
 FACTURA {font-family:Arial, Helvetica, sans-serif; font-size:medium}

 TITULO{text-align:center; text-decoration: underline; display:block; font-size:x-large}
 NUMERO {text-align:center; display:block}

 CLIENTE {text-align:right; display: block}
 DADOSNOME {text-align:right; display: block}
 MORADA {text-align:right; display: block}
 RUA {text-align:right; display: block}
 CPOSTAL {text-align:right; display: block}

 SERVICOS {position:relative; display: block}

 DESCRICAO {position:absolute left: 20%}
 PRECO {position:absolute; left: 30%}
 HORAS {position:absolute; left: 50%}
 TOTAL {position:absolute; left: 80%}


CJC 2005
XML factura.xml (nova versão)
 <?xml version ="1.0" standalone="yes"?>
 <?xml-stylesheet href="factura.css" type="text/css" ?>
 <FACTURA>
     <TITULO>Factura</TITULO>
     <NUMERO>111</NUMERO>
     <DADOSCLIENTE>
       <NOME>Empresa 123</NOME>
       <MORADA>
              <RUA>Av. Liberdade 123</RUA>                Ligação à folha
              <CPOSTAL>1000 Lisboa</CPOSTAL>
       </MORADA>
                                                          de estilos
     </DADOSCLIENTE>
     <SERVICOS TIPO="CONSULTORIA">
       <DESCRICAO>relatorio estrategia</DESCRICAO>
       <PRECO>30</PRECO>
       <HORAS>2</HORAS>
       <TOTAL>60</TOTAL>
     </SERVICOS>
     <SERVICOS TIPO="CONSULTORIA">
       <DESCRICAO>relatorio GESI</DESCRICAO>
                                                          Mais uma linha
       <PRECO>30</PRECO>
       <HORAS>3</HORAS>
                                                          na factura
       <TOTAL>90</TOTAL>
     </SERVICOS>
 </FACTURA>
CJC 2005
Folha de Estilos - XSL
•   Extensible Style Languge
•   Lingugem de transformação
•   Linguagem de formatação
•   Mais potente que CSS




CJC 2005
XMI
• eXtended Matadata Interchange
• Especificação de um modelo de troca de
  informação para programas orientados a
  objectos
• Foi definido tendo por base o XML e o
  UML




CJC 2005
RSS
• RSS é um formato baseado em XMl
• permite a partilha simples de conteúdos
  web.
• permite criar e disponibilizar facilmente os
  conteúdos e integrá-los em portais ou sítios
  de internet.
• permite que os utilizadores tenham acesso
  facilitado a esses conteúdos através do seu
  browser ou outras ferramentas.
CJC 2005
RSS?
•   Really Simple Syndication
•   Rich Site Summary
•   RDF Site Summary
•   Rich Site Syndication
•   Rich Syndication Standard

• Existem vários formatos
• Os mais utilizados são:
•    - RSS vs. 1.0 (utiliza formato RDF)
•    - RSS vs. 2.0
CJC 2005
RSS
• Pode ser produzido pelas actualizações
  feitas no nosso portal (ex.: Mambo)
• Pode ser colocado e visto no nosso portal o
  RSS produzido por terceiros (ex.:PHP-
  Nuke)




CJC 2005

Contenu connexe

Similaire à XML

364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf
364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf
364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdfQuitriaSilva550
 
Como funciona um banco de dados? (Worldwide Online TechDay 2010)
Como funciona um banco de dados? (Worldwide Online TechDay 2010)Como funciona um banco de dados? (Worldwide Online TechDay 2010)
Como funciona um banco de dados? (Worldwide Online TechDay 2010)Fabrício Catae
 
Uso de estatísticas pelo postgre sql
Uso de estatísticas pelo postgre sqlUso de estatísticas pelo postgre sql
Uso de estatísticas pelo postgre sqlLocaweb
 
AERio 2011 - BPM e SOA - Leonardo Azevedo
AERio 2011 - BPM e SOA - Leonardo AzevedoAERio 2011 - BPM e SOA - Leonardo Azevedo
AERio 2011 - BPM e SOA - Leonardo AzevedoFernando Botafogo
 
MVP Virtual Conference 2013: Suporte a padrões Web
MVP Virtual Conference 2013: Suporte a padrões WebMVP Virtual Conference 2013: Suporte a padrões Web
MVP Virtual Conference 2013: Suporte a padrões WebRogério Moraes de Carvalho
 
Fundamentos Da Itil V3
Fundamentos Da Itil V3Fundamentos Da Itil V3
Fundamentos Da Itil V3Caiuá França
 
Trabalho de HTML, CSS e JavaScript - Eduardo Bertolucci - UNOPAR 2010
Trabalho de HTML, CSS e JavaScript - Eduardo Bertolucci - UNOPAR 2010Trabalho de HTML, CSS e JavaScript - Eduardo Bertolucci - UNOPAR 2010
Trabalho de HTML, CSS e JavaScript - Eduardo Bertolucci - UNOPAR 2010Eduardo Bertolucci
 
Fundamentos e Desenvolvimento de Interface Web com HTML5 & CSS3
Fundamentos e Desenvolvimento de Interface Web com HTML5 & CSS3 Fundamentos e Desenvolvimento de Interface Web com HTML5 & CSS3
Fundamentos e Desenvolvimento de Interface Web com HTML5 & CSS3 Cristofer Sousa
 
Omar Mussi Ti Inside 25 Ago 2009 GovernançA De Ti Com ServiçOs De Terceiros
Omar Mussi   Ti Inside 25 Ago 2009 GovernançA De Ti Com ServiçOs De TerceirosOmar Mussi   Ti Inside 25 Ago 2009 GovernançA De Ti Com ServiçOs De Terceiros
Omar Mussi Ti Inside 25 Ago 2009 GovernançA De Ti Com ServiçOs De TerceirosOmar Mussi
 
SGBD - ORACLE - JAVA
SGBD - ORACLE - JAVASGBD - ORACLE - JAVA
SGBD - ORACLE - JAVAssuser4cf889
 
Criando APIs com Node e TypeScript
Criando APIs com Node e TypeScriptCriando APIs com Node e TypeScript
Criando APIs com Node e TypeScriptAndre Baltieri
 

Similaire à XML (20)

364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf
364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf
364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf
 
Como funciona um banco de dados? (Worldwide Online TechDay 2010)
Como funciona um banco de dados? (Worldwide Online TechDay 2010)Como funciona um banco de dados? (Worldwide Online TechDay 2010)
Como funciona um banco de dados? (Worldwide Online TechDay 2010)
 
XML - Parte 2
XML - Parte 2XML - Parte 2
XML - Parte 2
 
Tatic XDR Positioning
Tatic XDR PositioningTatic XDR Positioning
Tatic XDR Positioning
 
Uso de estatísticas pelo postgre sql
Uso de estatísticas pelo postgre sqlUso de estatísticas pelo postgre sql
Uso de estatísticas pelo postgre sql
 
AERio 2011 - BPM e SOA - Leonardo Azevedo
AERio 2011 - BPM e SOA - Leonardo AzevedoAERio 2011 - BPM e SOA - Leonardo Azevedo
AERio 2011 - BPM e SOA - Leonardo Azevedo
 
MVP Virtual Conference 2013: Suporte a padrões Web
MVP Virtual Conference 2013: Suporte a padrões WebMVP Virtual Conference 2013: Suporte a padrões Web
MVP Virtual Conference 2013: Suporte a padrões Web
 
Criação de sites
Criação de sitesCriação de sites
Criação de sites
 
Fundamentos Da Itil V3
Fundamentos Da Itil V3Fundamentos Da Itil V3
Fundamentos Da Itil V3
 
Protheus V12
Protheus V12Protheus V12
Protheus V12
 
Institucional Quality 2020
Institucional Quality 2020Institucional Quality 2020
Institucional Quality 2020
 
Oracleplsql
OracleplsqlOracleplsql
Oracleplsql
 
Trabalho de HTML, CSS e JavaScript - Eduardo Bertolucci - UNOPAR 2010
Trabalho de HTML, CSS e JavaScript - Eduardo Bertolucci - UNOPAR 2010Trabalho de HTML, CSS e JavaScript - Eduardo Bertolucci - UNOPAR 2010
Trabalho de HTML, CSS e JavaScript - Eduardo Bertolucci - UNOPAR 2010
 
Fundamentos e Desenvolvimento de Interface Web com HTML5 & CSS3
Fundamentos e Desenvolvimento de Interface Web com HTML5 & CSS3 Fundamentos e Desenvolvimento de Interface Web com HTML5 & CSS3
Fundamentos e Desenvolvimento de Interface Web com HTML5 & CSS3
 
Omar Mussi Ti Inside 25 Ago 2009 GovernançA De Ti Com ServiçOs De Terceiros
Omar Mussi   Ti Inside 25 Ago 2009 GovernançA De Ti Com ServiçOs De TerceirosOmar Mussi   Ti Inside 25 Ago 2009 GovernançA De Ti Com ServiçOs De Terceiros
Omar Mussi Ti Inside 25 Ago 2009 GovernançA De Ti Com ServiçOs De Terceiros
 
Codelab HTML e CSS
Codelab HTML e CSSCodelab HTML e CSS
Codelab HTML e CSS
 
Sql proficiente
Sql proficienteSql proficiente
Sql proficiente
 
SGBD - ORACLE - JAVA
SGBD - ORACLE - JAVASGBD - ORACLE - JAVA
SGBD - ORACLE - JAVA
 
Criando APIs com Node e TypeScript
Criando APIs com Node e TypeScriptCriando APIs com Node e TypeScript
Criando APIs com Node e TypeScript
 
Evolução das arquiteturas
Evolução das arquiteturasEvolução das arquiteturas
Evolução das arquiteturas
 

Plus de Carlos J. Costa

Plus de Carlos J. Costa (20)

Generative AI
Generative AIGenerative AI
Generative AI
 
IA Generativa
IA GenerativaIA Generativa
IA Generativa
 
Machine Learning
Machine LearningMachine Learning
Machine Learning
 
Power BI Computing Languages
Power BI Computing LanguagesPower BI Computing Languages
Power BI Computing Languages
 
Python Scikit-Learn
Python Scikit-LearnPython Scikit-Learn
Python Scikit-Learn
 
Python Pandas
Python PandasPython Pandas
Python Pandas
 
Python Numpy
Python NumpyPython Numpy
Python Numpy
 
Open Source Robotics as Booster to Creativity
Open Source Robotics as  Booster to CreativityOpen Source Robotics as  Booster to Creativity
Open Source Robotics as Booster to Creativity
 
Introdução à Gestão de Projetos - Conceitos
Introdução à Gestão de Projetos - ConceitosIntrodução à Gestão de Projetos - Conceitos
Introdução à Gestão de Projetos - Conceitos
 
Pós-Graduação em Gestão de Projetos
Pós-Graduação em Gestão de ProjetosPós-Graduação em Gestão de Projetos
Pós-Graduação em Gestão de Projetos
 
Introdução à Gestão de Projeto
Introdução à Gestão de ProjetoIntrodução à Gestão de Projeto
Introdução à Gestão de Projeto
 
Usability
UsabilityUsability
Usability
 
Wordpress
WordpressWordpress
Wordpress
 
Client-Side Web Development - An Overview
Client-Side Web Development - An OverviewClient-Side Web Development - An Overview
Client-Side Web Development - An Overview
 
HTML
HTMLHTML
HTML
 
Web Page Development - An Overview
Web Page Development - An OverviewWeb Page Development - An Overview
Web Page Development - An Overview
 
ERP
ERPERP
ERP
 
Weka
WekaWeka
Weka
 
Modelo Relacional
Modelo RelacionalModelo Relacional
Modelo Relacional
 
Globalization
GlobalizationGlobalization
Globalization
 

XML

  • 1. XML (eXtensible Markup Language) Carlos J. Costa CJC 2005
  • 2. XML • eXtensible Markup Language • Linguagem • Sub-Conjunto da SGML – Standard Generalized Markup Language – Meta-linguagem complexa de descrição de documentos • Ficheiro que permite descrever a estrutura e conteúdo dos documentos, não a sua formatação CJC 2005
  • 3. XML Titulo Factura Numero Dadoscliente Descrição Serviços tipo n Preço Hora Total CJC 2005
  • 4. XML factura.xml <?xml version ="1.0" standalone="yes"?> <FACTURA> <TITULO>Factura</TITULO> <NUMERO>111</NUMERO> <DADOSCLIENTE> <NOME>Empresa 123</NOME> <MORADA> <RUA>Av. Liberdade 123</RUA> <CPOSTAL>1000 Lisboa</CPOSTAL> </MORADA> </DADOSCLIENTE> <SERVICOS TIPO="CONSULTORIA"> <DESCRICAO>relatorio estrategia</DESCRICAO> <PRECO>30</PRECO> <HORAS>2</HORAS> <TOTAL>60</TOTAL> </SERVICOS> </FACTURA> CJC 2005
  • 5. DTD • Document Type Definition • Define conjunto de regras a que os elementos e atributos XML do documento deve obedecer • descreve – Elementos e regras – Atributos – Entidades CJC 2005
  • 6. DTD • Elementos - marcas (ou tags referidos no ficheiro xml) são criadas a partir deles. Ex: • Factura • Titulo • Numero • Dadoscliente • Nome • Morada • Regras - <!ELEMENT TITULO (#PCDATA)> - O titulo é um contentor de caracteres - <!ELEMENT TITULO ANY)> - pode ter qualquer tipo de conteúdo - <!ELEMENT SERVICOS (DESCRICAO,PRECO,HORAS,TOTAL)> - diz quais os elementos que podem fazer parte de um elemento • Atributos • <!ATTLIST SERVICOS TIPO (CONSULTORIA,CONTABILIDADE,ENGENHARIA) #REQUIRED> ... CJC 2005
  • 7. DTD (factura.dtd) <!-- DTD DA FACTURA--> <!ELEMENT FACTURA (TITULO,DADOSCLIENTE,SERVICOS)> <!ELEMENT TITULO (#PCDATA)> <!ELEMENT DADOSCLIENTE (NOME,MORADA)> <!ELEMENT NOME (#PCDATA)> <!ELEMENT MORADA (RUA,CPOSTAL)> <!ELEMENT SERVICOS (DESCRICAO,PRECO,HORAS,TOTAL)> <!ATTLIST SERVICOS TIPO (CONSULTORIA,CONTABILIDADE,ENGENHARIA) #REQUIRED> <!ELEMENT DESCRICAO (#PCDATA)> <!ELEMENT PRECO (#PCDATA)> <!ELEMENT HORAS (#PCDATA)> <!ELEMENT TOTAL (#PCDATA)> CJC 2005
  • 8. Diagrama de Classes FACTURA + TITULO : #PCDATA FACTURA FACTURA CLIENTE DADOSCLIENTE + NOME : #PCDATA CLIENTE SERVICOS MORADA SERVICOS + DESCRICAO : #PCDATA MORADA + PRECO : #PCDATA + RUA : #PCDATA + HORAS : #PCDATA + CPOSTAL : #PCDATA + TOTAL : #PCDATA + TIPO : ENUMERATION CJC 2005
  • 9. CSS (factura.css) FACTURA {font-family:Arial, Helvetica, sans-serif; font-size:medium} TITULO{text-align:center; text-decoration: underline; display:block; font-size:x-large} NUMERO {text-align:center; display:block} CLIENTE {text-align:right; display: block} DADOSNOME {text-align:right; display: block} MORADA {text-align:right; display: block} RUA {text-align:right; display: block} CPOSTAL {text-align:right; display: block} SERVICOS {position:relative; display: block} DESCRICAO {position:absolute left: 20%} PRECO {position:absolute; left: 30%} HORAS {position:absolute; left: 50%} TOTAL {position:absolute; left: 80%} CJC 2005
  • 10. XML factura.xml (nova versão) <?xml version ="1.0" standalone="yes"?> <?xml-stylesheet href="factura.css" type="text/css" ?> <FACTURA> <TITULO>Factura</TITULO> <NUMERO>111</NUMERO> <DADOSCLIENTE> <NOME>Empresa 123</NOME> <MORADA> <RUA>Av. Liberdade 123</RUA> Ligação à folha <CPOSTAL>1000 Lisboa</CPOSTAL> </MORADA> de estilos </DADOSCLIENTE> <SERVICOS TIPO="CONSULTORIA"> <DESCRICAO>relatorio estrategia</DESCRICAO> <PRECO>30</PRECO> <HORAS>2</HORAS> <TOTAL>60</TOTAL> </SERVICOS> <SERVICOS TIPO="CONSULTORIA"> <DESCRICAO>relatorio GESI</DESCRICAO> Mais uma linha <PRECO>30</PRECO> <HORAS>3</HORAS> na factura <TOTAL>90</TOTAL> </SERVICOS> </FACTURA> CJC 2005
  • 11. Folha de Estilos - XSL • Extensible Style Languge • Lingugem de transformação • Linguagem de formatação • Mais potente que CSS CJC 2005
  • 12. XMI • eXtended Matadata Interchange • Especificação de um modelo de troca de informação para programas orientados a objectos • Foi definido tendo por base o XML e o UML CJC 2005
  • 13. RSS • RSS é um formato baseado em XMl • permite a partilha simples de conteúdos web. • permite criar e disponibilizar facilmente os conteúdos e integrá-los em portais ou sítios de internet. • permite que os utilizadores tenham acesso facilitado a esses conteúdos através do seu browser ou outras ferramentas. CJC 2005
  • 14. RSS? • Really Simple Syndication • Rich Site Summary • RDF Site Summary • Rich Site Syndication • Rich Syndication Standard • Existem vários formatos • Os mais utilizados são: • - RSS vs. 1.0 (utiliza formato RDF) • - RSS vs. 2.0 CJC 2005
  • 15. RSS • Pode ser produzido pelas actualizações feitas no nosso portal (ex.: Mambo) • Pode ser colocado e visto no nosso portal o RSS produzido por terceiros (ex.:PHP- Nuke) CJC 2005