102
Tecnologia XML Prof. Antonio Geraldo Vidal [email protected] FEA/USP Tecnologia de Informática

Tecnologia XML Prof. Antonio Geraldo Vidal [email protected] FEA/USP Tecnologia de Informática

Embed Size (px)

Citation preview

Page 1: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Tecnologia XMLProf. Antonio Geraldo [email protected]/USP

Tecnologia de Informática

Page 2: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

O que é XML XML tem como propósito fundamental a

descrição de informações. Permite colocarmos em um mesmo

documento dados e metadados (a descrição destes dados).

Estabelece um formato textual que pode ser facilmente entendido quando lido por uma pessoa ou software.

Ao contrário dos formatos tradicionais, em XML os dados são armazenados com a sua descrição.

Page 3: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Formato Tradicional Uma maneira tradicional de se transmitir

dados de um sistema para outro é por meio de arquivos texto delimitados.

Cada registro ocupa uma linha e cada coluna de dados é separada das outras por um delimitador.

Tanto o programa que gera, como o programa que recebe e utiliza estes dados precisam conhecer o formato exato dos registros.

Page 4: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Formato Tradicional

950.241.318-00Antonio Geraldo Vidal Rua Bela Cintra100.231.342-60José da Silva Santos Rua Tiradentes234.123.123-34Maria Aparecida dos Santos Paiva Av. Brasil, 231 . . . . . . . . .

Coluna PosiçãoCPF 1-14Nome 15-55Endereço 56-100Etc. ....

Neste formato, o deslocamento de uma única posição muda todo o conjunto de dados que será lido por um programa.

Page 5: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Formato XML

Em XML a adição ou a remoção de elementos tem pequeno impacto sobre o programa que estiver lendo as informações contidas no documento XML.

<PESSOA><CPF>950.241.318-00</CPF><NOME>Antonio Geraldo Vidal</NOME><ENDEREÇO>Rua Bela Cintra, 2262</ENDEREÇO><CEP>01415-002</CEP>

</PESSOA><PESSOA>

<CPF>100.231.342-60</CPF><NOME>José da Silva Santos</NOME><ENDEREÇO>Rua Tiradentes, 2104</ENDEREÇO><CEP>05059-001</CEP>

</PESSOA>

Page 6: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Formato XML Por ter uma estrutura simples e bem definida,

XML permite que um documento seja validado antes de ser iniciado seu processamento.

XML é uma maneira simples, estruturada, flexível e precisa para se descrever informações.

Na prática, XML habilita a comunicação com parceiros de negócio, de um modo que não é possível com qualquer outra tecnologia.

Em sistemas para transações eletrônicas, XML permite a separação dos dados dos processos que agem sobre esses dados.

Page 7: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

eXtensible Markup Language XML é uma linguagem padronizada,

originalmente direcionada para o processamento de documentos.

Fornece uma sintaxe que permite definir cada objeto de informação de um modo não ambíguo.

Fazendo isso, pode-se capturar as informações como sendo um objeto e então processá-lo utilizando diferentes aplicativos, dependendo dos requisitos de cada contexto de negócio.

Page 8: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

XML vs. HTML A linguagem HTML pode ser considerada

um tipo ou caso particular de XML. Um documento HTML é um documento

XML se ele aderir a algumas regras de construção denominadas well-formedness constraints.

Deveremos continuar a usar HTML para exibir informações, enquanto usamos XML para trocar e processar essas informações.

Page 9: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

XML vs. HTML Ao contrário de HTML, que tem um

conjunto fixo de tags, XML fornece flexibilidade para você criar suas próprias tags.

Você pode chamar as informações a serem trocadas e processadas de qualquer nome que desejar.

As tags de XML normalmente representam dados reais.

Page 10: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Aplicações em Negócios Eletrônicos O principal propósito de um site

empresarial é gerar negócios. Para isso, freqüentemente constrói-se um

aplicativo de comércio eletrônico que faz uma conexão com cadastros de produtos e serviços que a nossa companhia fornece.

Estes cadastros normalmente tomam a forma de uma base de dados SQL.

Page 11: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Aplicativo Padrão para Negócios Eletrônicos

Page 12: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Informações Externas Dados externos podem ser uma rica fonte de

informações para os nossos clientes ou usuários. Entretanto, as informações externas não estão

em bases de dados em nosso próprio servidor. Podemos, porém, usar XML para solicitar e obter

informações como objetos XML, podendo processá-los posteriormente.

O trabalho é, portanto, agregar certos tipos de conteúdo de vários sites e disponibilizá-los em nossas páginas, para fornecer ao nosso visitante ou usuário toda informação que ele precisa.

Page 13: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Aplicativo XML para Negócios Eletrônicos

XML

Sites externos tornam-se parte da camada de dados, e um aplicativo de agregação é usado para integrar estes novos dados na camada de regras de negócio.

Page 14: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Exemplo Nosso site poderia enviar uma requisição de informações

sobre a previsão do tempo através de um pedido eletrônico em XML, como abaixo:

<weather_request days="5" temp="celsius" wind="mph"><zipcode>80112</zipcode>

</weather_request>

Page 15: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Exemplo Em resposta, receberíamos um documento XML como a seguir:

<weather_response zipcode='80012' Updated='2000-01-07 21:49:06'>    <location>Aurora, CO</location>        <current>            <condition name='temp'>28</condition>            <condition name='wind chill'>12</condition>            <condition name='wind'>from the Southeast at 8 mph</condition>            <condition name='dewpoint'>18</condition>            <condition name='relative humidity'>66%</condition>            <condition name='visibility'>25 miles</condition>            <condition name='barometer'>30.02 inches</condition>            <condition name='Sunrise'>7:20 am MST</condition>            <condition name='Sunset'>4:50 pm MST</condition>        </current>        <forecast>            <day date='20000108 21:49:06'                  High='49' Low='20' Sky='Partly Cloudy'/>            <day date='20000109 21:49:06'                  High='46' Low='21' Sky='Partly Cloudy'/>            <day date='20000110 21:49:06'                  High='51' Low='25' Sky='Partly Cloudy'/>            <day date='2000-01-11 21:49:06'                  High='51' Low='19' Sky='Partly Cloudy'/>            <day date='2000-01-12 21:49:06'                  High='53' Low='21' Sky='Partly Cloudy'/>        </forecast>    </weather_response>

Page 16: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Exemplo Os documentos XML que a empresa fornecedora

de previsões do tempo enviar conterão apenas os dados solicitados.

Poderemos processá-los de diferentes formas, dependendo do tipo de saída desejada, em cada situação.

Os dados poderão ser apresentados como desejado, pois temos acesso aos dados brutos e poderemos processá-los da maneira mais apropriada às nossas necessidades.

Page 17: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Exemplo SOAP - Simple Object Access Protocol é um

protocolo de comunicação padrão, via Internet, proposto pelo IETF - Internet Engineering Task Force (IETF), que permite invocar procedimentos em sistemas remotos (RPC) usando um conjunto padrão de tags XML.

O SOAP utiliza o HTTP como seu protocolo de requisição e resposta de dados.

Portanto, utilizando-o pode-se obter dados rápida e eficazmente de um provedor de conteúdo, ou de parceiros de negócio.

Page 18: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

SOAP – Simple Object Access Protocol

Page 19: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Aplicativos XML para Negócios Eletrônicos

XML/SOAP

XML/SOAP

Vários parceiros de negócio (syndication partners) fornecerão conteúdo baseado em padrões, portanto, nós poderemos agregar várias fontes de informações diferentes em uma única base de assuntos correlatos.

Page 20: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Aplicativos XML para Negócios Eletrônicos

Cada parceiro de negócio exige um conversor especializado que transforma sua estrutura particular de informações em uma forma que nosso “site” pode usar.

Page 21: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Aplicativos XML para Negócios Eletrônicos

Multiplique os conversores especializados pelo número de “sites” usando os conteúdos disponíveis.

Os problemas com “sites” individuais serão também multiplicados.

Page 22: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Aplicativos XML para Negócios Eletrônicos

Fornecendo dados em um formato único e padronizado elimina-se a necessidade de software de conversão proprietário para cada pro-vedor de dados.Cada provedor precisa criar um só filtro, para converter o conteúdo do formato do provedor para o formato padrão (no exemplo NITF). A partir daí, cada site pode utilizar a informação em seu formato padrão nativo ou convertê-la mais uma vez para a forma exigida para seus sistemas de infor-mação.

Page 23: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

<?xml version="1.0"?><nitf> <head> <title>Technology Tools and Toys</title> </head> <body> <body.head> <headline> <hl1>Pac-Man chomps its way toward 20</hl1> <hl2>Seminal video game rose from humble beginnings</hl2> </headline> <byline> By<person>Steven Kent</person>                       <bytag>MSNBC CONTRIBUTOR</bytag> </byline> <dateline> <location></location> <story.date>1999-09-03</story.date> </dateline> </body.head> <body.content> <p>He may have been a fixture in bars for  most of the last two decades, but Pac-Man,  one of the video game industry's greatest  living legends, is still a bit shy of legal  age.</p> ... </body.content>         <body.end></body.end> </body>

</nitf>

Exemplo

Page 24: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

XML como Padrão para Negócios Eletrônicos XML é um padrão criado pelo W3C -

World Wide Web Consortium. O W3C é um consórcio das

companhias dedicadas a criar e manter tecnologias essenciais para a Internet como o HTML e o XML.

XML é uma sintaxe poderosa que permite às organizações criar estruturas para o intercâmbio de eficiente de informações.

Page 25: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

EDI vs. XML EDI – Eletronic Data Interchange

(Troca Eletrônica de Dados): Longos prazos para desenvolvimento; Requisitos variados das companhias; Alto custo; Dificuldades para implementar uma

especificação comum; Soluções proprietárias.

Page 26: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

EDI vs. XML Um grupo chamado XML/EDI está

trabalhando em uma versão mais aberta das especificações de EDI.

Esperam que usuários tradicionais de EDI adotem XML como sua sintaxe padrão para intercâmbio de dados.

Muitos outros grupos estão trabalhando para o mesmo fim: Criar um modo universal de fazer negócios,

usando XML como a sintaxe de definição de dados.

Page 27: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Um destes esforços é a iniciativa ebXML("eb" significa "electronic business“).

As Nações Unidas/CEFACT e a OASIS - Organization for the Advancement of Structured Information Standards - um grupo de indústrias XML - estão trabalhando sobre o ebXML.

A meta do ebXML é usar um conjunto padrão de objetos XML para facilitar o comércio internacional.

A iniciativa ebXML deve desenvolver uma infra-estrutura técnica que habilitará o uso de XML de uma maneira consistente para a troca de todo tipo de dados de negócios de eletrônicos.

ebXML

Page 28: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

A lista parcial de participantes deste grupo parece a lista do quem é quem no comércio eletrônico internacional:

ebXML

Ariba Amazon.com Bank of America Boeing CommerceNet Dunn and

Bradstreet

IBM Microsoft Oracle Sun E muitas outras

companhias ao redor do mundo

Page 29: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

XML como Padrão para Negócios Eletrônicos Assim como o ebXML, existem muitas outras

especificações e padrões sendo desenvolvidos por outros grupos neste ambiente.

Estas especificações provavelmente resultarão em um conjunto de padrões chamados esquemas, que descreverão determinados documentos de negócio como faturas, ordens de compra, registros médicos e transações financeiras.

Neste ambiente, os esquemas serão componentes críticos da solução de comércio eletrônico.

Page 30: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Onde XML se encaixa nos Negócios Eletrônicos? Em todo lugar! XML é apenas um conjunto de regras - uma

sintaxe - para marcar dados. É uma sintaxe simples, padronizada e compacta,

porém, são exatamente estas qualidades que a valorizam.

Para participar de qualquer transação de negócios, uma empresa deve comunicar-se claramente com seus parceiros de negócio.

XML, portanto, fornece uma sintaxe para se comunicar de modo direto e preciso, identificando cada pedaço de informação exigida para completar uma transação.

Page 31: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Outro aspecto comum entre XML e negócios eletrônicos é a confiabilidade.

Se você não confiar em uma empresa ou pessoa, você não vai fazer negócios com ela, quer esteja face a face numa loja real ou na Internet numa loja virtual.

XML pode fornecer um grande nível confiabilidade porque informações sobre sua transação podem ser transmitidas com segurança e verificadas.

XML e Negócios Eletrônicos

Page 32: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

XML e Negócios Eletrônicos Assim como HTML se tornou a linguagem padrão

de apresentação de informações na Web, XML será, provavelmente, a linguagem padrão para transações eletrônicas através da Web.

XML propriamente não define o vocabulário das transações, este é o trabalho do esquema.

XML será apenas a sintaxe usada para permutar os dados e fazer as transações se realizarem entre diferentes sistemas de diferentes organizações ao redor do planeta.

Page 33: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

O padrão XML XML é um padrão aberto. Não pertence a uma única organização Foi definida por um consórcio de

organizações altamente competitivas de diversos setores.

Elas perceberam o grande benefício para todos na utilização de uma sintaxe simples e padronizada para trocar informações.

Page 34: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

O padrão XML Por ser um padrão aberto, XML trabalha

sob qualquer plataforma computacional com qualquer linguagem de programação.

XML realmente não faz nada; ela é somente uma sintaxe que fornece um modo estruturar e representar dados e informações.

O benefício chave da XML é que ela permite separar os dados dos processos que agem sobre estes dados.

Page 35: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

XML & Java Você provavelmente já ouviu muito sobre

a dupla XML e Java: XML para representar dados e Java para processá-los

Esta dupla faz muita sensação por serem padrões abertos, independentes de plataformas computacionais.

Os desenvolvedores podem criar aplicativos multi-plataforma em Java e usar XML para trocar dados entre eles.

Page 36: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Origem de XML Está na SGML - Standard Generalized

Markup Language. SGML é um padrão, pertencente à ISO,

que foi criado para permitir o compartilhamento de informações entre as companhias que poderiam possuir sistemas diferentes.

A IBM, a DEC, a Receita Federal (IRS) e o Departamento de Defesa (DoD) dos EUA são (ou eram) grandes usuários da SGML.

Page 37: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

SGML e XML SGML foi a primeira tecnologia padrão que

permitiu que usuários separassem dados dos processos que agiam sobre eles.

Usando SGML, pode-se executar um processo, chamado análise de informações, para descobrir a estrutura e o conteúdo dos dados.

Um vocabulário chamado Document Type Definition – DTD – ou definição de tipo de documento, pode ser então desenvolvido a partir daquela análise.

Page 38: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

DTDDocument Type Definition Um DTD define uma classe de informações,

portanto, cada DTD é específico para cada conjunto de dados.

Um DTD indica o conteúdo de objetos no conjunto de informações usando uma sintaxe precisa chamada modelo de conteúdo.

Uma vez que cada conjunto de informações tem requisitos e objetos diferentes, o DTD para descrever cada conjunto é diferente.

Page 39: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

SGML e XML Um documento SGML consiste em caracteres ASCII

com tags (marcações) e conteúdo. Um interpretador (parser) lê o documento e

determina a estrutura das informações identificando as tags e extraindo os dados nelas contidos.

Uma vez que um documento SGML é escrito em formato texto ASCII simples, ele é portável e executável em qualquer plataforma que possua um interpretador.

XML possui estas mesmas características. SGML porém, não pôde acompanhar o

desenvolvimento da Web, pois foi projetada em 1980, uma era de computadores lentos e caros.

Page 40: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Surgimento da XML Precisava-se, portanto, de algo:

Portável, barato, rápido e fácil como HTML; Extensível como SGML; Compatível com que já era conhecido, de

forma que pudéssemos usar as técnicas e ferramentas já existentes.

Com esse objetivo, um grupo do W3C trabalhou entre 1996 e 1997 até apresentar a primeira definição de XML em 1998.

Page 41: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

10 Objetivos da XML1. XML deve ser utilizável através da Internet.2. XML deve suportar uma ampla variedade aplicações.3. XML deve ser compatível com SGML.4. Deve ser fácil escrever programas que processam documentos

XML.5. O número de características opcionais em XML deve ser mantido

num mínimo absoluto, idealmente zero.6. Documentos XML devem ser razoavelmente claros e legíveis por

pessoas comuns.7. Um projeto de XML deve poder ser preparado depressa.8. Um projeto de XML deve ser formal e conciso.9. Documentos XML devem ser fáceis de serem criados.10. A concisão nas marcações ou tags de XML é de importância

mínima.

Page 42: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Essência da XML XML é uma sintaxe que permite que

usuários criem linguagens de marcação. As linguagens que são usadas para criar

linguagens de marcação são comumente conhecidas como meta linguagens de marcação.

XML é uma recomendação técnica do W3C (http://www.w3c.org).

XML é um padrão multi-plataforma, aberto, não-proprietário e gratuito.

Page 43: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Mitos da XML Há uma série de mitos sobre XML

que não são verdadeiros, entre eles: XML é uma linguagem de marcação

(markup language) como HTML; XML é apenas para a Web; HTML é um subconjunto da XML; XML é a solução perfeita para

transações em negócios eletrônicos.

Page 44: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Padronizadores da XML Organismos que de certa forma regulam

os padrões da XML: International Organization for Standardization

(ISO) American National Standards Institute (ANSI) Organization for the Advancement of

Structured Information Systems (OASIS) World Wide Web Consortium (W3C) Internet Engineering Task Force (IETF) Indústrias que definem esquemas XML

Page 45: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Padrões Derivados da XML Namespaces: especifica como qualificadores

nomes de elementos e atributos com identificadores de espaços de nomes únicos.

DOM: conjunto de interfaces de programação abstratas para percorrer, manipular e criar documentos XML.

XML Schema – Structures e Datatypes: linguagem para descrever elementos, atributos e notações em termos de tipos hierárquicos e tipos de dados.

XML Information Set: descrição de um documento XML abstrato, sem preocupação com sintaxe.

Page 46: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Padrões Derivados da XML XML Base (XBase): especifica como determinar

a URI a utilizar. XML Inclusions (XInclude): uma alternativa a

DTDs para acessar entidades externas. XML Path Language (XPath): permite

selecionar um conjunto de nós em um documento XML.

XML Pointer Language: usa expressões XPath como identificadores URI, para permitir a referência de elementos em documentos externos.

XML Linking Language: representa ligações entre documentos XML.

Page 47: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática
Page 48: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

DOMDocument Object Model Conjunto completo de padrões publicados

pelo W3C que apóiam a XML.

Page 49: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

O Modelo DOMDocument Object Model Expõe um documento XML como uma estrutura

em árvore na memória do computador e fornece um ambiente fácil de se programar para o desenvolvedor de aplicações.

Fornece um objeto acessível pode ser consultado e manipulado como qualquer outro objeto em linguagens de programação orientadas para objeto.

Define um conjunto padrão de objetos e interfaces que podem ser usados para manipular a linguagem XML, fornecendo acesso a documentos, elementos e atributos.

Page 50: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

DOM

Page 51: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Documentos XML Um documento XML é estruturado em forma de

árvore. Possui sempre um elemento raiz, a partir do qual

outros elementos vão se ramificar. Essa estrutura de árvore estabelece como

documentos XML vão ser definidos e tratados. O tratamento envolve principalmente encontrar

um determinado elemento, ou grupo de elementos a serem processados.

Duas relações entre os elementos são importantes: hierarquia e seqüência.

Page 52: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Hierarquia e Seqüência Hierarquia:

Estabelece relações pai/filho e ancestral/descendente entre os elementos.

Seqüência: Estabelece a seqüência em que as

informações aparecem.

Page 53: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Exemplo<?xml version=“’=1.0”?><Instruções> <Titulo> Lavar os Cabelos </Titulo> <Seqüência> <Passo> Molhar os cabelos</Passo> <Passo> Colocar xampu</Passo> <Passo> Fazer espuma com as mãos</Passo> <Passo> Esfregar bem</Passo> <Passo> Enxaguar bem</Passo> </Seqüência></Instruções>

Page 54: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Documentos XMLBem Formados e Válidos Um documento XML pode estar em dois estados:

Bem formado Válido

Um documento bem formado adere a várias regras ou restrições de formação, detalhadas na especificação da XML.

Um documento XML é válido se possuir uma declaração de tipo de documento associada (DTD ou esquema) e se o documento estiver de acordo com as regras e restrições nela expressas.

Page 55: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Documentos XMLBem Formados1. Todo elemento deve ter uma tag de início e uma de fim.2. Deve ter um elemento raiz único.3. Nomes de elemento e atributo são sensíveis a letras

maiúsculas e minúsculas.4. Elementos devem ser corretamente intercalados; eles

não podem ter sobre-elos estruturais.5. Certos caracteres devem ser evitados, ou representados

por uma combinação de caracteres especiais.6. Valores de atributo devem estar sempre entre aspas.7. Elementos vazios têm um formato especial ao qual

devem estar aderentes.

Page 56: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Documentos XMLVálidos Um documento XML é válido se ele tem uma

declaração de tipo de documento associada – DTD Document Type Definition – e se o documento estiver de acordo com as regras nela expressas.

A declaração de tipo de documento diz ao interpretador XML onde achar um conjunto de regras contra as quais um documento pode ser conferido e validado.

De onde vem este conjunto de regras? Alguém precisa determinar a estrutura dos

membros de uma classe particular de documentos e tornar esta descrição de estrutura disponível para o interpretador XML.

Page 57: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Dados e Marcações em Documentos XML Um documento XML é formado por uma combinação de

dados textuais e marcações (tags). As tags podem ser:

De início e de fim Elementos vazios Referências a entidades Referências a caracteres Comentários Delimitadores de seções CDATA (valores ignorados pela XML) Declaração de tipo de documento Instruções de processamento Declarações XML Declarações textuais

Page 58: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Exemplo<?xml version=“1.0”?><!DOCTYPE PRECOS [<!ELEMENT PRECOS (LIVRO+)><!ELEMENT LIVRO (TITULO,DISTRIBUIDOR?)><!ATTLIST TITULO VALOR CDATA #REQUIRED><!ELEMENT TITULO (#PCDATA)><!ELEMENT DISTRIBUIDOR (#PCDATA)>]><PRECOS> <LIVRO> <TITULO VALOR=“120”>Manual de Comercio Eletrônico</TITULO> <DISTRIBUIDOR>Editora Choque</DISTRIBUIDOR> </LIVRO> <LIVRO> <TITULO VALOR=“78”>Tudo sobre Negócios na Web</TITULO> <DISTRIBUIDOR>Editora Teia</DISTRIBUIDOR> </LIVRO></PRECOS>

Page 59: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Atributos Cada item de elemento de informação pode ter

uma ou mais propriedades ou atributos. Cada atributo tem um nome único e possui

possui uma propriedade consistindo de zero ou mais caracteres.

Em HTML é normal o uso de atributos para qualificar elementos: par nome+valor.

Em XML atributos podem ser usados para descrever ou fornecer informações sobre um elemento.

<TITULO VALOR=“120”>Manual de Comércio Eletrônico</TITULO>

Page 60: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Visualização de Documentos HTML e XML Documentos XML que não precisam ser

transformados podem usar folhas de estilo em cascata – CSS – usadas em HTML.

Documentos XML que precisam de algum tipo de transformação precisam usar XSL.

Esta transformação cria um conteúdo HTML por meio de um processador XSL, que pode residir no navegador do cliente ou no servidor Web.

XSL é uma linguagem de transformação declarativa, que busca encontrar determinadas tags para aplicar determinado tipo de estilo de formatação visual HTML sobre elas.

Page 61: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Opções de Visualização de um Documento XML

DocumentoHTML Apresentação

HTML

ProcessadorCSS

Folha de EstiloCSS Processador

XSL

Folha de EstiloXSL

DocumentoXML

1

2

345

Page 62: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Formatação deDocumentos XML CSS se limita a percorrer o documento XML

aplicando formatos HTML. XSL processa o documento de maneira

programável, através de tags especiais que localizam determinados elementos e neles efetua as transformações definidas.

Por exemplo, aplicar determinadas tags HTML sobre estes elementos.

Alteração de documentos XML: Se a alteração for só nos dados, não temos que nos

preocupar com tags HTML, pois são definidas no XSL. Se a alteração for só na apresentação, basta modificar

o documento XSL.

Page 63: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Ferramentas para XML Navegadores: Internet Explorer 5.0 ou

posterior. Editores: programas que permitem a criação e

edição de documentos XML. Parsers: programas que verificam a sintaxe XML

e possibilitam o desenvolvimento de aplicações para tratar documentos XML.

Processadores XSL: transformam documentos XML em documentos HTML.

Banco de Dados XML: armazenam dados ou retornam resultados de consultas como documentos XML.

Page 64: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

XML Namespaces Namespaces possuem dois propósitos básicos:

1. Habilitar o compartilhamento de esquemas de estruturas e tipos de dados e

2. Qualificar exclusivamente nomes de elementos em um ambiente de múltiplos esquemas.

Namespaces são projetados para resolver o problema de fontes de dados que possuem elementos com o mesmo nome mas com significados diferentes.

Namespaces apontam para esquemas que contém informações sobre o documento que você está usando.

Page 65: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Namespaces Permitem a qualificação de nomes de maneira

única na Internet, evitando conflitos entre elementos que tenham o mesmo nome.

Esse risco existe uma vez que XML permite a criação de tags.

Diferentes pessoas em diferente lugares podem criar os mesmos nomes de tag em contextos diferentes.

Namespace é uma tecnologia que permite declarar os nomes que estamos utilizando, como pertencentes à um vocabulário.

Dessa forma, os nomes podem ser especificados de maneira não ambígua no documento XML.

Page 66: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

NamespacesExemploDocumento Livro<LIVRO> <TITULO>Tudo Sobre Negócios Eletrônicos</TITULO> <PRECO moeda=“BR Reais”>73.50</PRECO><LIVRO>

Documento Autor<AUTOR> <TITULO>Professor Doutor</TITULO> <NOME>Antonio Geraldo da Rocha Vidal</NOME></AUTOR>

Page 67: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

NamespacesExemplo Enquanto uma pessoa pode diferenciar os dois

tipos de TITULO, um programa de computador não possui contexto suficiente para distingui-los.

Namespaces resolvem este problema por meio da associação de um vocabulário a uma tag.

<Livros:TITULO>E-Commerce Manual</TITULO><Autor:TITULO>Mr.</TITULO> O nome que precede a tag é um namespace,

também conhecido como URI – Universal Resource Identifier.

Um URI garante que haverá unicidade quando dois ou mais documentos XML forem combinados.

Page 68: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

NamespacesExemplo<lv:LIVRO xmlns:lv=“urn:Biblioteca:InformacaoLivros” xmlns:dinheiro=“urn:Financas:Dinheiro”> <lv:TITULO>E-Commerce Manual</lv:TITULO> <dinheiro:PRECO dinheiro:moeda=“BR Real”

59.80</dinheiro:PRECO></lv:LIVRO> A declaração do namespace vai definir uma

abreviação, ou prefixo, para substituir o nome completo do namespace.

Em geral se usa uma declaração explícita para referenciar um elemento que esteja declarado em um namespace diferente do atual.

Page 69: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

DTDDocument Type Definition A descrição da estrutura de um documento é

chamada esquema. Em XML 1.0, o único tipo de esquema permitido é

o DTD – Document Type Definition. O DTD foi herdado diretamente da SGML e define

as tags possíveis para uma classe de documentos. Tendo-se um DTD, um documento XML pode ser

validado. Pode-se confirmar que o documento segue certa

definição ou estrutura. Uma vez validado, a aplicação que irá processar

esse documento não precisa se preocupar com erros de estrutura.

Page 70: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

DTDDocument Type Definition Usando-se um DTD assegura-se que diferentes

pessoas e programas podem tratar informações uns dos outros.

DTDs são usados para definir os assim chamados vocabulários.

Cada vocabulário estabelece que elementos são aplicáveis em um determinado contexto.

Cada setor de atividade que está envolvido na transferência de um determinado tipo de informação ou tipo de documento, tem um grande potencial para o uso de vocabulários próprios ou DTDs.

Alguns exemplos de vocabulários padronizados: XMLNews, SMIL, CDF.

Page 71: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

DTDDocument Type Definition A declaração do DTD aparece no prólogo do

documento XML, antes do elemento-raiz. Pode ser: DTD local (interno ao documento): descreve

estruturas específicas de um dado documento.

DTD externo (externo ao documento): descreve estruturas gerais de uma classe de documentos.

Processadores XML dão prioridade ao DTD interno, ou seja, pode-se redefinir estruturas gerais em DTDs internos.

Page 72: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

DTDExemplo<?xmlversion=“1.0”?standalone=‘yes’><!DOCTYPE nota [<!ELEMENT nota (de,para,assunto,conteudo)><!ELEMENT de (#PCDATA)><!ELEMENT from (#PCDATA)><!ELEMENT assunto (#PCDATA)><!ELEMENT conteudo (#PCDATA)>]><nota> <para>Turma MBA Informatica e Tecnologia Internet</para> <de>Prof. Vidal</de> <assunto>Paper para Avaliacao</assunto> <conteudo>Cada aluno devera elaborar um trabalho

descrevendo um plano de negocio com a aplicacao de tecnologias Internet</conteudo>

</nota>

Page 73: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

DTDExemplo O DTD do exemplo pode ser interpretado da

seguinte maneira: !DOCTYPE nota: é o elemento de nível mais alto que

estabelece um nome para o tipo de documento, neste caso “nota”.

!ELEMENT nota: define o elemento raiz, determinando que o elemento nota possui quatro elementos: de, para, assunto e conteudo; que devem aparecer nesta ordem.

!ELEMENT para: define que o elemento para é do tipo #PCDATA. E assim por diante...

#PCDATA estabelece que o conteúdo dados textuais, isto é, não pode conter elementos-filhos.

Page 74: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

DeclaraçõesDTD DTDs descrevem informações vitais sobre a

estrutura de um documento. Podemos especificar os seguintes tipos de

declarações num DTD: Elementos permitidos no documento, bem como os

tipos de dados que podem apresentar; Atributos que podem ser associados com cada

elemento; Entidades que são permitidas no documento; Notações que são permitidas para uso com entidades

externas. Qualquer coisa que não for declarada no DTD não será

permitida no documento XML.

Page 75: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

DTD Declaração de Elementos <!ELEMENT >:

ANY: dados textuais ou elementos-filhos. #PCDATA: apenas dados textuais.<!ELEMENT AUTOMOVEL (modelo,marca,ano)><!ELEMENT MODELO (#PCDATA)><!ELEMENT MARCA (#PCDATA)><!ELEMENT ANO (#PCDATA)>

Número de ocorrências de elementos-filhos: +: podem aparecer um ou mais elementos-filhos; *: podem aparecer zero ou mais elementos-filhos; ?: podem aparecer zero ou um elemento-filho; |: escolha de um elemento-filho alternativo; ( | ): grupos de elementos-filhos.

Elementos vazios Comentários

Page 76: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

DTD Atributos: são usados para especificar

informações adicionais sobre um dado elemento: Formados por um par: NOME/VALOR; <!ATTLIST elemento atributo tipo valor_padrão> Tipo: determina os valores aceitáveis para o atributo:

• CDATA: cadeia de caracteres;• Enumeração: lista de valores possíveis para escolha de

apenas um;• NMTOKEN ou NMTOKENS: valores que seguem as regras de

nomenclatura XML;• ID: identifica elementos no documento de maneira única;• IDREF: elemento que tem um atributo que faz referência ao

ID de outro; permite conectar elementos;• ENTITY/ENTITIES: associa dados externos ao documento;• NOTATION: notação para identificar formato de dados não-

XML.

Page 77: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

DTD xml:space: descreve como espaços em branco

são tratados no elemento. xml:lang: indica a linguagem com a qual o

conteúdo do elemento é escrito. Valores padrão (default) do atributo:

#REQUIRED: atributo obrigatório; #IMPLIED: atributo opcional; #FIXED: atributo com valor fixo que não pode ser

alterado. Entidades:

Podem ser um arquivo, um registro num banco de dados, o resultado de um processamento ou qualquer item que contenha dados externos ao documento.

Page 78: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

DTD vs. XML Schemas Encontra-se em desenvolvimento no

W3C um padrão denominado XML Schemas que deve substituir o DTD.

Ou contrário do DTD, no XML Schemas a definição do documento segue as mesmas regras de XML.

Page 79: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

XML Schemas Desde que a recomendação XML 1.0 foi finalizada em

fevereiro de 1998, o W3C tem trabalhado em uma especificação alternativa para substituir o DTD para descrever esquemas.

O grupo de trabalho “W3C XML Schema” está focando em três áreas de melhoria: Os esquemas devem ser escritos usando a sintaxe XML, assim

nos permitindo usar as mesmas ferramentas que costumamos usar para processar documentos XML.

Deve ser definido um novo padrão de esquemas para suportar tipos de dados comuns, como numérico, data e moeda; como também tipos de dados definidos pelo usuário. Este novo tipo de esquema moveria a tarefa de validação dos dados do aplicativo para o interpretador XML, onde os dados são acessíveis por todos os programas que lêem documentos XML.

O novo padrão de esquemas deve suportar modelos de conteúdo aberto.

Page 80: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Esquemas<Schema name=“bookSchema_v_1.2”> <ElementType name=“book”> <element type=“id”/> <element type=“price”/> <element type=“author”/> <element type=“title”/> <element type=“grade.level”/> </ElementType> <ElementType name=“price” dt:type=“float” required=“yes”/> <ElementType name=“id” dt:type=“string” required=“yes”/> . . .</Schema>

Page 81: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

O W3C está trabalhando em uma especificação chamada Datatypes para DTDs (DT4DTD), o que adicionará suporte a tipos de dados para o DTD.

Esta é uma correção para a sintaxe do DTD, mas permitirá aos usuários que queiram continuar a usar o DTD ter acesso a tipos de dados mais complexos.

Os interpretadores XML deverão suportar este padrão para que ele possa ser útil.

XML Schemas - Datatypes

Page 82: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

AlgumasTecnologias XML CSS – Folhas de Estilo em Cascata

É uma linguagem de descrição que define as regras pelas quais um navegador exibirá um documento HTML ou XML.

XPath – XML Path Language Permite o endereçamento de subconjuntos em um único

documento (intradocumento). XPointer – XML Pointer Language

Permite o endereçamento interdocumentos. XSL – Extensible Stylesheet Language

Definem regras para transformação de documento, associando uma saída com uma entrada.

XSLT – XSL Transformations Define uma linguagem de programação baseada em XML

para expressar regras de transformação de uma classe de documentos XML para outra.

BizTalk Server – Servidor para Transformação XML.

Page 83: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

XSLExtensible Stylesheet Language XSL é um recurso de propósito geral usado para

transformar e formatar documentos XML. A transformação se refere a mudar um

documento XML para outro documento XML ou outro tipo de documento (p.ex. HTML).

A formatação se refere à exibição visual do documento XML.

A transformação é útil se a sua empresa usa um esquema para documentos XML e seus fornecedores usam esquemas diferentes.

Você pode empregar XSL para traduzir um documento XML que usa um esquema em outro que usa outro esquema.

Page 84: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

XSL

Page 85: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

XSLT

Page 86: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Trocando Informações

Banco de

Dados

www.empresa.com.brwww.empresa.com.br

CatálogoCatálogoXMLXML

Navegador WEBNavegador WEBFornecedorFornecedor

Folha de Estilo XSL

CatálogoCatálogoXMLXML

EsquemaEsquemaXMLXML

Page 87: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

BizTalk O que acontecerá se centenas de companhias

diferentes criarem seus próprios esquemas para descrever uma fatura?

Os esquemas poderiam conter os mesmos elementos, mas cada esquema poderá usar nomes diferentes para os elementos.

Cada documento teria uma estrutura diferente, tornando difícil o compartilhamento de informações entre as empresas que desejam realizar negócios.

Se cada parceiro de negócio usar seu próprio esquema, você precisaria escrever um programa diferente para trabalhar com cada documento XML, de cada parceiro de negócio.

Page 88: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

BizTalk A estrutura do BizTalk fornece um conjunto de

regras e um conjunto de tags para criar esquemas para negócios eletrônicos business-to-business (B2B).

BizTalk foi criado para facilitar o uso de XML construindo esquemas que parceiros de negócio podem compartilhar.

Um conjunto comum de regras para criar esquemas promoverá a criação de mais esquemas.

Com isso, torna-se mais fácil para os parceiros de negócio concordar com um esquema comum para usar em suas transações.

Page 89: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

BizTalk Para processar documentos BizTalk, você

precisa de um servidor BizTalk (BFC). BizTalk permite que vendedores de

software independentes (ISVs) e desenvolvedores criem facilmente um mapa do processo de negócio.

Desta forma torna-se possível a adoção mais rápida do intercâmbio eletrônico de informações por uma larga variedade de indústrias que já estão usando XML.

Page 90: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

BizTalk Especificação de documento independente:

BizTalk é um conjunto de tags XML que fornece uma definição para trocar documentos entre dois sites e invocar um processo de cada lado. BizTalk se parece com um envelope virtual para enviar documentos comerciais entre parceiros de negócio.

BizTalk.org: é um Web Site que fornece informações para se aprender sobre tecnologias de comércio eletrônico em geral, com ênfase particular sobre XML e BizTalk.

Page 91: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

BizTalk Server Para processar seus documentos BizTalk,

você precisará de um servidor BizTalk, que é o software que lê documentos BizTalk e então faz algo inteligente com eles.

Um servidor BizTalk pode ser escrito em qualquer linguagem em qualquer plataforma computacional.

Várias companhias estão trabalhando em servidores que processam documentos BizTalk e os integram com sistemas corporativos legados ou ERPs.

Page 92: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática
Page 93: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática
Page 94: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Projeto de Fluxo de Informações Inter-organizacionais

Page 95: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Negócios Eletrônicos via XML e BizTalk

FornecedorFabricante

Page 96: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

XML Web Services Evolução das Aplicações Web:

Acessíveis por outros computadores, não só por pessoas como os Web Sites;

Transformam “páginas Web” em componentes reutilizáveis ou serviços;

Podem ser fornecidos e/ou consumidos; Permitem transações seguras através

de parceiros de negócio.

Page 97: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

XML Web Services Nova metodologia de integração:

Utiliza interações XML entre sistemas; Baseados em padrões abertos, nativos da

Internet; Trabalham sob qualquer sistema operacional,

linguagem de programação ou rede de comunicação;

É possível expor o sofware existente como um Web Service.

Sistemas aplicativos distintos podem realmente trocar dados entre si de forma automática.

Page 98: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

XML Web Services As informações da Web tradicional só

podem ser acessadas por usuários humanos;

XML Web Services são uma evolução para o acesso a serviços e informações na Web, de forma automática e programada;

XML Web Services trabalham como componentes de software;

XML Web Services tornam possível que um sistema aplicativo “converse” com qualquer outro sistema aplicativo, sem requerer nenhuma intervenção humana.

Page 99: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

XML Web Services Padrão simples, aberto e largamente

suportado pela indústria:

Publicar, Localizar e Usar Serviços: UDDIInterações entre serviços: SOAPFormato universal de dados: XMLPadrão universal de comunicação: Internet

UDDI: Universal Description, Discovery and Integration

Page 100: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

XML Web ServicesClientesClientes

Ferra

men

tas

Web Services

Servidores

Informações, Soluções e Negócios

Page 101: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

Endereços Interessantes Site do W3C: http://www.w3c.org/ Site sobre XML: http://www.xml.com/ Site sobre BizTalk: http://www.biztalk.org/ Site MS BizTalk: http://www.microsoft.com/biztalk/ Demo MS BizTalkServer 2000:

http://www.microsoft.com/biztalk/code/demo2002/frame.html Demo IBM WebSphere:

http://www-3.ibm.com/software/webservers/studio/wsaddemo.html Demos Oracle (vários, inclusive Web Services):

http://www.oracle.com/ip/index.html?think9i_appdev.html Site da Sun: http://www.sun.com Banco Central do Brasil – Sistema Brasileiro de

Pagamentos - http://www.bancocentral.gov.br

Page 102: Tecnologia XML Prof. Antonio Geraldo Vidal vidal@usp.br FEA/USP Tecnologia de Informática

FimObrigado!