gildot

Topo
Sobre
FAQ
Tópicos
Autores
Preferências
Artigos
Sondagens
Propor artigo


8/3
gildicas
9/30
jobs
10/9
perguntas
10/25
press

 
XML? Para que serve?
Contribuído por jmce em 06-11-01 19:46
do departamento xmldomsaxrdfxsltxmlpsoapdcdwidlvmlsmilsvgxul...
Web NokiaMan escreve "Estou a farto de ouvir a Microsoft a dizer que o XML é o futuro mas afinal para que serve o XML? Eu só lhe dou um uso: importação e exportação de conteúdos de site para site. De resto não sei que uso é que pode ter e porque é que a M$ acredita que é futuro. "
JMCE: Para além das utilizações mais "pragmáticas", abundam as visões sobre o XML e conceitos relacionados, entre o hype da Grande Esperança para a Partilha de Informação (a roçar promessas de inteligência artificial) e o cepticismo dos que vêem a coisa como uma pilha de convenções "burocráticas" a complicar-se rapidamente e sem grande eficácia para resolver problemas de semântica. Quais são as experiências e... visões dos leitores do Gildot?

O problema dos sites só para Internet Explorer ver | Facturação ?  >

 

gildot Login
Login:

Password:

Referências
  • XML
  • inteligência artificial
  • problemas de semântica
  • Mais acerca Web
  • Também por jmce
  • Esta discussão foi arquivada. Não se pode acrescentar nenhum comentário.
    XML, para que serve!?!!!! (Pontos:1)
    por Hvm em 07-11-01 1:13 GMT (#1)
    (Utilizador Info)
    Eu tambem nao percebia muito bem para que servia o XLM, ate que falei com um formador de uma empresa Multinacional, fornecedora de um sistema de messaging para Correios, Banca, etc. Precisavam de enviar enviar informaçao nao obstante da plataforma usada, *nixes, MaOS, Wins, etc. e principalmente nao obstante de a transferencia de dados ser de 7bits, 8bits, etc...
    Esta empresa ja utilizava uma tecnologia desenvolvida por eles, no qual esta a base do XML. Que é a linguagem semantica. Basicamente, o XML serve para transportar dados de um sitio para o outro, sem limitaçoes de tecnologia. Se abrirem um ficheiro xml, verao que é pura e simplesmente ASCII TEXT.
    Outra das vantagens e sua simplicidade e facilidade de utilização.
    Qualquer dado que esteja "metido" num ficheiro XML vem delimitado por "" (sorry nao me lembro do nome :-) ou seja, por exemplo um simples campo do nome:
    manel das couves>

    Um campo mais complexo:



    manel das couves

    rua chimpaze de cima
    4

    696969696


    Viram...simples e eficaz...como é um ficheiro de texto, acaba por poder ser lido em qualquer plataforma, e até por uma pessoa, abrindo apenas o ficheiro...
    Re:XML, para que serve!?!!!! (Pontos:1)
    por slug em 07-11-01 12:38 GMT (#6)
    (Utilizador Info)
    aqui os delimitadores das tags n funcionam :))
    XML, para que serve!?!!!! (Pontos:2, Esclarecedor)
    por Hvm em 07-11-01 1:16 GMT (#2)
    (Utilizador Info)
    Eu tambem nao percebia muito bem para que servia o XLM, ate que falei com um formador de uma empresa Multinacional, fornecedora de um sistema de messaging para Correios, Banca, etc. Precisavam de enviar enviar informaçao nao obstante da plataforma usada, *nixes, MaOS, Wins, etc. e principalmente nao obstante de a transferencia de dados ser de 7bits, 8bits, etc...
    Esta empresa ja utilizava uma tecnologia desenvolvida por eles, no qual esta a base do XML. Que é a linguagem semantica.
    Basicamente, o XML serve para transportar dados de um sitio para o outro, sem limitaçoes de tecnologia. Se abrirem um ficheiro xml, verao que é pura e simplesmente ASCII TEXT.
    Outra das vantagens e sua simplicidade e facilidade de utilização.<br>
    Qualquer dado que esteja "metido" num ficheiro XML vem delimitado por "<" e ">" (sorry nao me lembro do nome :-) ou seja, por exemplo um simples campo do nome:
    <nome>manel das couves</nome>

    Um campo mais complexo:

    <lista de nomes>
            <nome>manel das couves</nome>
            <morada>
                    <endereço>rua chimpaze de cima</endereço>
                    <andar>4</andar>
            </morada>
            <telefone>696969696</telefone>
    </lista de nomes>

    Viram...simples e eficaz...como é um ficheiro de texto, acaba por poder ser lido em qualquer plataforma, e até por uma pessoa, abrindo apenas o ficheiro...

    (Pesso desculpa por ter feito o POST 2x, mas enganei-me no botao =)
    Re:XML, para que serve!?!!!! (Pontos:2)
    por Lowgitek em 07-11-01 2:15 GMT (#3)
    (Utilizador Info) http://www.ideiasdigitais.co.pt
    Umas das maiores anormalidades que ja vi na imprenssa foi o anunciar que a Microsoft havia inventado uma tecnologia revolucionária tecnologia essa chamada XML! Ora bem ao ver esse post lembrei me bastante da historia do inventor ehehe... Okay certo a microsoft colaborou bastante no desenvolvimento do XML e colabora ainda, ainda que a bem proveito deles porque novamente se acham no direito de criar standarts só para eles.

    Para os mais iniciados essa nova sopa de letras pode parecer confuso, pese embora que, possa parecer numa leitura diagonal muito mais facil.

    Na realidade é o intermedio das duas coisas e porquê? (Claro NMHO) primeiro que a nivel de escrita podemos usar qualquer coisa para escrevr o ficheiro tal como faziamos já com o html com a vantagem de reeinventamors novas tags(1).

    O primeiro contra é que ao reeinventarmos ou darmos novos uso as já existentes temos que explicar ao software que vai usar aquilo afinal do que aquilo se trata, vejam isso como uma espécie de template ou um indice a dizer isto é aquilo ao veres isso fazes aquilo etc etc.

    Ora bem é ai que como se diz lá pela minha terra que a "porca torce o rabo". Porque ou usamos os padrões já predefinidos e utilizados ou optamos por uma abordagem mais radical e começamos desde o inicio.
    A mágica disso tudo e que dependendo do cliente que leia o tal ficheiro pode dar um conceito diferente ao mesmo, ou seja, muito resumidamente e acreditem mesmo muito resumidamente :), o mesmo ficheiro numa dada aplicação pode servir de ficheiro de dados, ficheiro de um relatorio ou mesmo uma simples página de internet ou ate mesmo um ficheiro de configuração, tudo dependerá da aplicação a utilizar aquele ficheiro e o modo a que aquela aplicação esta preparada ou instruída para reconhecer.

    Para aqueles que se setem famintos em saber mais sobre o xml o melhor mesmo é ir a: http://www.w3.org/
    onde podem encontrar informação dos standarts em vigor (Sim os verdadeiros!!!) e muito mais informação sobre o xml e tudo a que ele esta inerente.

    Mas se você é daqueles que ainda não tomou coragem e continua covardamente a usar produtos da microsoft então o melhor mesmo é ir a casa das trevas (eheheh :>) então o melhor mesmo é ir a: http://msdn.microsoft.com/library/default.asp?url=/nhp/Default.asp?contentid=28000438

    é óbvio que existe muito mais informação para alem dessa(e ainda bem) mas se você é daqueles que não se contenta com nada que lhes é dado então só há mesmo uma coisa a fazer deixe-se de ser preguiçoso e faça uma visita ao www.google.com é procure por você mesmo e se mesmo assim você disser que não consegue encontrar nada de jeito ou não sabe procurar então o melhor mesmo e desistir de saber o que é XML.

    Espero que possa ter ajudado de alguma maneira.

    P.S Todos aqueles que agora começaram a programar olhem para o XML como o vosso SANTO GRAAL :) leiam bem sobre a matéria que vale apena.

    Cheers

    o exemplo gildot (Pontos:2, Esclarecedor)
    por nuno em 07-11-01 4:23 GMT (#4)
    (Utilizador Info)
    Um dos exemplos de utilização de xml podia ser o gildot (portais em geral). Aqueles "canais" todos que existem a disposição para colocar do lado direito da página principal de entrada para cada utilizador registado são possíveis graças a xml (isto é, rdf/rss).

    Sites como o gildot disponibilizam o seu conteúdo principal em xml: http://www.gildot.org/gildot.xml. Este xml segue o dtd/schema do sites tipo slashdot. Como há mais portais de outros tipos disponibiliza-se também em rdf/rss (que é no fundo um dtd/schema comum para os portais disponibilizarem conteúdo para outros): http://www.gildot.org/gildot.rdf.

    Tendo este rdf/rss e um parser de xml torna-se fácil ter um módulo para incluir conteúdo do gildot em qualquer outro portal bem como em qualquer outra markup language. O mesmo módulo pode ser usado para incluir as headlines da slashdot (http://slashdot.org/slashdot.rdf) bem como de outros sites. E adicionando uma pitada de xslt as possibilidades são bastantes interessantes (exemplo: gerar algo como http://www.gildot.org/wap/index.wml).

    Isto é tudo muito bonito mas onde esta realmente o $$ que as empresas procuram é em dtd/schemas standards para trocarem dados comerciais. Coisas tão simples com uma ordem de compra podem ser uma dor de cabeça de conversão entre formatos privados. Se dois e/ou mais empresas chegarem a acordo (que também é díficil :!) num dtd/schema comum então basicamente muitos $$$ irão ser poupados em desenvolvimento, manutenção, etc... chega-se assim ao "chavão" B2B.

    Até dentro das próprias empresas se conseguem poupar muitos $$$ se os seus sistemas poderem "falar" em formatos standards e bem definidos (dtd/schema). Imaginem que uma empresa comprou um novo pacote de contabilidade. Se este entender os tais dtd/schemas standards e comuns a integração com os restantes sistemas existentes na empresa torna-se trivial.

    Mas isto não passa de importação/exportação de dados básica. A Microsoft, entre outros, tem tentado puxar o xml para um outro patamar. Por exemplo, ter um formato comum para transmissão de dados genéricos com aqueles campos habituais que todos nós conhecemos (data de criação, tamanho, tipo mime de conteúdo, etc...)... SOAP. Adicionando uma pitada do bom velho RPC tenta-se chegar a outras coisas (exemplo microsoft: "serviços xml"). Talvez, na minha opinião, o exemplo ainda mais importante (especialmente também ao nível de redução de custos nas empresas) é a troca de "mensagens" entre todos os sistemas sabendo todos eles a ler e utilizar (desde o "monstro" unix com montanhas de poder de computação até ao PDAzito). Mas isto leva a outras questões :)

    XML e IA (Pontos:1)
    por lbrito em 07-11-01 11:18 GMT (#5)
    (Utilizador Info) http://alfa.di.uminho.pt/~lbrito
    Já que se falou de Inteligência Artificial (que é a área em que me movo) posso afirmar que o "hype" do XML já aí chegou em força. De facto, as promessas de troca de informação em ambientes heterogéneos repercutem-se tanto no âmbito de sistemas distribuídos tradicionais como no âmbito de Sistemas Baseados em Agentes (SBA) ou Sistemas Multiagente (SMA).

    A minha visão sobre o XML parte da sua utilização enquanto ferramenta de transferência de argumentos (em sistemas de argumentação para Comércio Electrónico) dentro de comunidades heterogéneas. Desta forma, não há problemas quanto à maneira como o raciocínio sobre os argumentos é feito. A facilidade de percepção, a demarcação de conteúdos, a orientação à Web, e a facilidade de criar tradutores para outras notações são apenas algumas das vantagens. Para além do mais, há um grande movimento para a introdução do XML e, como tal, há inúmeras iniciativas a surgir que impelem trabalho na área. Por exemplo, o uso de XML para o transporte de argumentos permite uma fácil integração com uma framework de Comércio Electrónico já definida em XML: a eCo (www.commerce.net).

    Luís Brito
    lbrito@di.uminho.pt
    alfa.di.uminho.pt/~lbrito
    Leituras (Pontos:2)
    por Gimp em 07-11-01 13:39 GMT (#7)
    (Utilizador Info)
    Ora sente-se lá na poltrona, coma umas pipocas e leia.

    1 2 e 3


    "Os meus 2 Duh!" Gimp zZzZz

    XML mágico (Pontos:2)
    por Tintim em 07-11-01 13:41 GMT (#8)
    (Utilizador Info) http://paulo.trezentos.gul.pt
    Na Caixa Mágica utilizamos para armazenar informação de sistemas.
    Depois de escritos esse ficheiros de XML, passamos um motor pelos ficheiros, para reflectir na configuração do sistema as alterações feitas pelo utilizador.
    Ver aqui o esquema.
    A vantagem é que os ficheiros de configuração têm uma abordagem hierárquica e são facilmente lidos pelo utilizador se não pretender utilizar os interfaces gráficos.

    Meta-Programação (XML? Para que serve) (Pontos:1)
    por mlemos em 07-11-01 15:33 GMT (#9)
    (Utilizador Info) http://www.ManuelLemos.net/
    Eis uma aplicação completamente inovadora para XML: uma linguagem de meta-programação.
    Re:Meta-Programação (XML? Para que serve) (Pontos:1)
    por lbrito em 07-11-01 18:55 GMT (#10)
    (Utilizador Info) http://alfa.di.uminho.pt/~lbrito
    Serve para (através do uso de uma síntaxe baseada numa estrutura XML) criar programas/aplicações/objectos/'whatever' recorrendo a uma descrição de alto-nível, tipicamente comportamental.

    Luís Brito
    Torna tudo mais fácil... (Pontos:3, Interessante)
    por mvalente em 07-11-01 20:19 GMT (#11)
    (Utilizador Info) http://www.ruido-visual.pt/
    XML ? Para que serve ?

    Ainda estive vai nao vai para escrever um longo post sobre isto. Tipo tutorial. Mas o tempo é que é pouco...sorry.

    De forma curta:

    • Simplicidade
    • Extensibilidade
    • Interoperabilidade
    • Abertura
    Sim, são chavões/palavrões. Mas são importantes. Já passo a (tentar) explicar.

    Tens o seguinte HTML (vide source):

    • Jose
      • 33
      • 1234567
    • Maria
      • 34
      • 9876543

    Porque é que isto é mau ? Porque:

    • Os dados estão misturados com o aspecto/layout
    • Descobrir o que é cada um dos campos/valores ou pesquisa-los é dificil/impossivel
    • O layout/aspecto está strongly-coupled (ligado) à logica do HTML

    Em XML terias uma coisa tipo:

    <CLIENT>
    <NAME>Jose</NAME>
    <ID>33</ID>
    </CLIENT>

    O que é que ganhavas ?

    • O aspecto/layout/GUI é factorizado. Está numa stylesheet que podes alterar em qq altura ou consoante o device.
    • Descobrir o que é o campo com o valor 33 é mais fácil (especialmente se utilizares um DTD standardizado) assim como são mais fáceis as pesquisas (imagina poderes chegar ao Google e pesquisares por paginas onde <NAME>="Jose"
    • O codigo/informacao/dados é mais legivel para terceiros (outros programadores/parceiros/programas/etc)

    No HTML tens do H1 ao H7. E se te der jeito ter um H8 ? Não há. O XML permite-te defini-lo de uma forma simples. Extensibilidade com simplicidade.

    Como tu proprio dizes, usas o XML para fazer interchange de dados entre sites. Porque ? Porque o XML é legivel, simples, parsavel, extensivel.

    Aplica a mesma logica, em vez de ser ao interchange de conteudos, ao interchange de funcionalidades. Antes se querias chegar a uma base de dados Oracle/Sybase/etc tinhas de codar um procedure nessa BD, fazer o marshalling dos parametros à unha e receber/fazer o marshalling dos resultados. Boa sorte se nao apanhasses pelo meio uma maquina big-endian quando a tua era little-endian. O XML, com coisas como o SOAP ou o XMLRPC vêm permitir a execução de uma função/método/aplicação numa qq maquina remota de uma forma simples, enviando os parametros em XML e recebendo-os da mesma forma.

    Mas este raciocinio aplica-se tambem à propria estrutura interna do teu site. Tens uma pagina X que chama um metodo/funcao Y. Na pagina X, para apresentares o HTML que faz o render dos dados devolvidos por Y, TENS de conhecer a forma dos resultados devolvidos (numero de resultados e tipo dos dados). Com o XML é mais simples: a tua pagina X chama a funcao Y que devolve os resultados em XML. O render destes é feito pela aplicacao da CSS/XSLT (isto neste momento nao é bem assim porque nao é possivel criar data islands de XML dentro de HTML). E mesmo que o teu metodo Y seja chamado das paginas XA, XB e XC, a "coisa" continua a funcionar. Se XA, XB e XC estivessem em HTML+linguagem de scripting da tua escolha tinhas de ir alterar cada uma dessas paginas XA, XB e XC para contarem e fazerem o render dos novos campos de resultados.

    É principalmente por causa destes 2 ultimos paragrafos que a M$ acha o XML o máximo. A possibilidade de processamento distribuido e execucao remota de funcionalidades/aplicacoes que o XML permite de forma facil poderá potenciar muito o numero de programadores/developers e o mercado de web services. Existe o potencial para ser criado um mercado de applets/web services e de aparecerem milhares de programadores e milhares de consumidores que precisarao de uma plataforma comum de "entendimento". Can you spell .NET ?

    Como disse nao tenho muito tempo para construir um argumento/apresentacao mais coerente. Este post mesmo assim já vai longo. Sugiro uma visita a http://downloads.oninet.pt/ ou http://jogos.oninet.pt/ com o IE6 (ou entao a http://downloads.oninet.pt/index.xml e http://jogos.oninet.pt/index.xml ; nao esquecer View Source ) para ver o "aspecto" de sites feitos em XML.

    Cumprimentos

    Mario Valente

     

     

    [ Topo | Sugerir artigo | Artigos anteriores | Sondagens passadas | FAQ | Editores | Preferências | Contacto ]