XML para principiantes

Já deve ter ouvido falar de Linguagem de Marcação Extensível (XML), e pode ter ouvido muitas razões pelas quais a sua organização deve usá-la. Mas o que é XML, exatamente? Este artigo explica o básico do XML — o que é e como funciona.

Neste artigo

Um breve olhar para marcação, marcação e etiquetas

Então, o que o torna XML?

Uma palavra sobre dados bem formados

Um rápido olhar para os schemas

Um rápido olhar para as transformações

Uma espreitadela no XML no Microsoft Office System

Um breve olhar para marcação, marcação e etiquetas

Para compreender o XML, ajuda a compreender a ideia de marcar dados. Há séculos que as pessoas criam documentos, e há tanto tempo que marcaram esses documentos. Por exemplo, os professores da escola marcam sempre os papéis dos alunos. Dizem aos alunos para moverem parágrafos, clarificarem frases, corrigirem erros ortográficos, e assim por diante. Marcar um documento é como definimos a estrutura, significado e aparência visual da informação no documento. Se já utilizou a funcionalidade Track Changes no Microsoft Office Word, utilizou uma forma informatizada de marcação.

Na computação, "marcar" também evoluiu para "marcação". A marcação é o processo de utilização de códigos chamados tags (ou às vezes fichas) para definir a estrutura, a aparência visual e , no caso do XML – o significado de qualquer dado.

O código HTML para este artigo é um bom exemplo de marcação de computador no trabalho. Se pesquisar através dela (no Microsoft Internet Explorer, clique na página e clique no View Source),verá uma mistura de etiquetas de texto legível e linguagem de marcação de hipertexto (HTML), como <p> e <h2>. As etiquetas nos documentos HTML e XML são fáceis de reconhecer porque estão rodeadas por suportes angulares. No código fonte para este artigo, as tags HTML fazem uma variedade de trabalhos, tais como definir o início e o fim de cada parágrafo (<p> ... </p>) e marcar a localização de cada imagem.

Então, o que o torna XML?

Os documentos HTML e XML contêm dados que estão rodeados de tags, mas é aí que terminam as semelhanças entre as duas línguas. Em HTML, as tags definem o aspeto e a sensação dos seus dados — as manchetes vão aqui, o parágrafo começa aí, e assim por diante. No XML as tags definem a estrutura e o significado dos seus dados — quais são os dados.

Quando descreve a estrutura e o significado dos seus dados, torna-se possível reutilizar esses dados de várias formas. Por exemplo, se tiver um bloco de dados de vendas e cada item do bloco estiver claramente identificado, pode carregar apenas os itens que precisa num relatório de vendas e carregar outros itens numa base de dados contabilística. Dito de outra forma, pode utilizar um sistema para gerar os seus dados e marcá-lo com tags XML, e depois processá-lo em qualquer número de outros sistemas, independentemente da plataforma de hardware ou do sistema operativo. Essa portabilidade é a razão pela qual a XML se tornou uma das tecnologias mais populares para a troca de dados.

Lembre-se dos factos que se seguem à medida que for avançando:

  • Não é possível utilizar o HTML no lugar do XML. Pode, no entanto, embrulhar os seus dados XML em tags HTML e exibi-las numa página Web.

  • O HTML limita-se a um conjunto predefinido de tags que todos os utilizadores partilham.

  • O XML permite-lhe criar qualquer etiqueta que precise para descrever os seus dados e a estrutura desses dados. Por exemplo, diga que precisa armazenar e partilhar informações sobre animais de estimação. Pode criar o seguinte código XML:

    <?xml version="1.0"?>
    <CAT>
      <NAME>Izzy</NAME>
      <BREED>Siamese</BREED>
      <AGE>6</AGE>
      <ALTERED>yes</ALTERED>
      <DECLAWED>no</DECLAWED>
      <LICENSE>Izz138bod</LICENSE>
      <OWNER>Colin Wilcox</OWNER>
    </CAT>
    

Pode ver que as tags XML tornam possível saber exatamente que tipo de dados está a ver. Por exemplo, você sabe que estes são dados sobre um gato, e você pode facilmente encontrar o nome do gato, idade, e assim por diante. A capacidade de criar tags que definem quase qualquer estrutura de dados é o que torna o XML "extensível".

Mas não confunda as etiquetas nessa amostra de código com etiquetas num ficheiro HTML. Por exemplo, se colar essa estrutura XML num ficheiro HTML e visualizar o ficheiro no seu navegador, os resultados serão parecidos com isto:

Izzy Siamese 6 yes no Izz138bod Colin Wilcox

O navegador ignora as suas tags XML e exibe apenas os dados.

Uma palavra sobre dados bem formados

Pode ouvir alguém do seu departamento de TI mencionar XML "bem formado". Um ficheiro XML bem formado está em conformidade com um conjunto de regras muito rígidas que regem o XML. Se um ficheiro não estiver em conformidade com essas regras, o XML deixa de funcionar. Por exemplo, na amostra de código anterior, cada etiqueta de abertura tem uma etiqueta de fecho, pelo que a amostra adere a uma das regras para estar bem formada. Se remover uma etiqueta e tentar abrir esse ficheiro num dos programas do Office, verá uma mensagem de erro e o programa impedirá a utilização do ficheiro.

Você não precisa necessariamente de conhecer as regras para criar XML bem formado (embora sejam fáceis de entender), mas você precisa lembrar que você pode compartilhar dados XML entre programas e sistemas apenas se esses dados estiverem bem formados. Se não consegue abrir um ficheiro XML, é provável que o ficheiro não esteja bem formado.

O XML também é independente da plataforma, o que significa que qualquer programa construído para usar o XML pode ler e processar os seus dados XML, independentemente do hardware ou do sistema operativo. Por exemplo, com as etiquetas XML certas, pode utilizar um programa de desktop para abrir e trabalhar com dados de um computador mainframe. E, independentemente de quem cria um corpo de dados XML, pode trabalhar com os mesmos dados em vários programas do Office. Por ser tão portátil, a XML tornou-se uma das tecnologias mais populares para a troca de dados entre bases de dados e desktops de utilizadores.

XML utilizado por outros programas

Além de dados marcados e bem formados, os sistemas XML normalmente utilizam dois componentes adicionais: schemas e transformações. As seguintes secções explicam como estes componentes adicionais funcionam.

Um rápido olhar para os schemas

Não deixes que o termo "esquema" te intimide. Um esquema é apenas um ficheiro XML que contém as regras para o que pode e não pode residir num ficheiro de dados XML. Os ficheiros Schema normalmente utilizam a extensão do nome do ficheiro .xsd, enquanto os ficheiros de dados XML utilizam a extensão .xml.

Os esquemas permitem que os programas validem dados. Fornecem o quadro para estruturar dados e garantir que faz sentido para o criador e para quaisquer outros utilizadores. Por exemplo, se um utilizador introduzir dados inválidos, como texto num campo de data, o programa pode levar o utilizador a introduzir os dados corretos. Desde que os dados de um ficheiro XML estejam em conformidade com as regras de um determinado esquema, qualquer programa que suporte o XML pode usar esse esquema para ler, interpretar e processar os dados. Por exemplo, como mostra a seguinte ilustração, o Excel pode validar os dados <CAT> contra o esquema CAT.

Os esquemas permitem que as aplicações partilhem dados XML.

Os schemas podem tornar-se complexos, e ensinar-te a criar um está fora do âmbito deste artigo. (Além disso, provavelmente tem um departamento de TI que sabe como.) No entanto, ajuda saber como são os schemas. O seguinte esquema define as regras para o <CAT> ... conjunto de etiquetas> </CAT.

<xsd:element name="CAT">  
  <xsd:complexType>  
    <xsd:sequence>
      <xsd:element name="NAME" type="xsd:string"/>
      <xsd:element name="BREED" type="xsd:string"/>
      <xsd:element name="AGE" type="xsd:positiveInteger"/>
      <xsd:element name="ALTERED" type="xsd:boolean"/>
      <xsd:element name="DECLAWED" type="xsd:boolean"/>
      <xsd:element name="LICENSE" type="xsd:string"/>
      <xsd:element name="OWNER" type="xsd:string"/>        
    </xsd:sequence>
  </xsd:complexType>
</xsd:element>

Não se preocupe em entender tudo na amostra. Lembre-se destes factos:

  • Os itens de linha no esquema da amostra são chamados declarações. Se precisar de informações adicionais sobre um animal, como a sua cor ou marcas, é provável que o seu departamento de TI adicione uma declaração ao esquema. Pode alterar o seu sistema XML à medida que o seu negócio precisa evoluir.

  • As declarações proporcionam um enorme controlo sobre a estrutura de dados. Por exemplo, a declaração <xsd:sequence> significa que as etiquetas, como <NAME> e <BREED> , têm de ocorrer na ordem de que estão listadas acima. As declarações também podem controlar os tipos de dados que os utilizadores podem introduzir. Por exemplo, o esquema acima requer um número positivo para a idade do gato, e valores boolean (VERDADEIRO ou FALSO) para as etiquetas ALTERADAs e DECLAWED.

  • Quando os dados de um ficheiro XML estão em conformidade com as regras fornecidas por um esquema, esses dados são ditos como válidos. O processo de verificação de um ficheiro de dados XML contra um esquema é chamado de validação (logicamente suficiente). A grande vantagem de usar esquemmas é que podem ajudar a prevenir dados corrompidos. Também facilitam a descoberta de dados corrompidos porque o XML para quando encontra um problema.

Um rápido olhar para as transformações

Como mencionamos anteriormente, o XML também fornece formas poderosas de usar ou reutilizar dados. O mecanismo de reutilização de dados chama-se Transformação linguística de Folha de Estilo Extensível (XSLT), ou simplesmente, uma transformação.

Você (ok, o seu departamento de TI) também pode usar transformações para trocar dados entre sistemas de back-end, como bases de dados. Por exemplo, digamos que a Base de Dados A armazena os dados de vendas numa estrutura de tabela que funciona bem para o departamento de vendas. A base de dados B armazena os dados de receitas e despesas numa estrutura de tabela que é adaptada ao departamento de contabilidade. A base de dados B pode utilizar uma transformação para aceitar dados de A e escrever esses dados para as tabelas corretas.

A combinação de ficheiros de dados, esquemae transformação constitui um sistema Básico de XML. A seguinte ilustração mostra como tais sistemas normalmente funcionam. O ficheiro de dados é validado contra o esquema e, em seguida, renderizado de várias formas utilizáveis por uma transformação. Neste caso, a transformação implementa os dados numa tabela numa página Web.

Uma estrutura de ficheiro XML básica com um esquema e transformação

A amostra de código que se segue mostra uma maneira de escrever uma transformação. Coloca os dados <CAT> numa tabela numa página Web. Mais uma vez, o objetivo da amostra não é mostrar-lhe como escrever uma transformação, mas mostrar-lhe uma forma que uma transformação pode tomar.

<?xml version="1.0"?>
<xsl:stylesheet version="1.0"> 
<TABLE>
  <TR>
    <TH>Name</TH>
    <TH>Breed</TH>
    <TH>Age</TH>
    <TH>Altered</TH>
    <TH>Declawed</TH>    
    <TH>License</TH>
    <TH>Owner</TH>
  </TR>
  <xsl:for-each select="CAT">
  <TR ALIGN="LEFT" VALIGN="TOP">
    <TD>
      <xsl:value-of select="NAME"/>
    </TD>
    <TD>
      <xsl:value-of select="BREED"/>
    </TD>
    <TD>
      <xsl:value-of select="AGE"/>
    </TD>
    <TD>
      <xsl:value-of select="ALTERED"/>
    </TD>
    <TD>
      <xsl:value-of select="DECLAWED"/>
    </TD>
    <TD>
      <xsl:value-of select="LICENSE"/>
    </TD>
    <TD>
      <xsl:value-of select="OWNER"/>
    </TD>
  </TR>
</xsl:for-each>
</TABLE>

Esta amostra mostra como um tipo de transformação pode parecer quando está codificada, mas lembre-se que pode apenas descrever o que precisa dos dados em inglês simples. Por exemplo, pode ir ao seu departamento de TI e dizer que precisa imprimir os dados de vendas para determinadas regiões nos últimos dois anos, "e eu preciso que ele olhe para este lado." O seu departamento de TI pode então escrever (ou mudar) uma transformação para fazer esse trabalho.

O que torna tudo isto ainda mais conveniente é que a Microsoft e um número crescente de outros fornecedores estão a criar transformações para empregos de todos os tipos. No futuro, é provável que consiga descarregar uma transformação que responda às suas necessidades ou que possa ajustar-se de acordo com o seu propósito. Isto significa que o XML custará menos para ser usado ao longo do tempo.

Uma espreitadela no XML no Microsoft Office System

As edições profissionais do Office fornecem um apoio extensivo ao XML. Introduzido inicialmente no Microsoft Office system de 2007, o Microsoft Office utiliza os formatos de ficheiro XML, tais como .docx, .xlsx e .pptx. Uma vez que a XML armazena dados num formato de texto em vez de um formato binário proprietário, os seus clientes podem definir os seus próprios esquemas e usar os seus dados de forma mais possível, tudo sem ter de pagar royalties. Para mais informações sobre os novos formatos, consulte formatos XML abertos e extensõesde nome de ficheiro . Outras vantagens incluem:

  • Tamanhos de ficheiro menores. O novo formato utiliza zip e outras tecnologias de compressão para reduzir o tamanho dos ficheiros em até 75% em comparação com os formatos binários que são usados em versões anteriores do Office.

  • Mais fácil recuperação de informação e maior segurança. O XML é legível para humanos, por isso, se um ficheiro ficar danificado, pode abrir o ficheiro no Microsoft Notepad ou noutro leitor de texto e recuperar pelo menos algumas das suas informações. Além disso, os novos ficheiros são mais seguros porque não podem conter o código Visual Basic for Applications (VBA). Se utilizar o novo formato para criar modelos, quaisquer controlos ActiveX e macros VBA residem numa secção separada e mais segura do ficheiro. Além disso, pode utilizar ferramentas, como o Inspetor de Documentos, para remover quaisquer dados pessoais. Para obter mais informações sobre a utilização do Inspetor de Documentos, consulte o artigo Remova dados ocultos e informações pessoais inspecionando documentos.

Até agora tudo bem, mas e se tiver dados XML sem esquema? Os programas do Office que suportam o XML têm as suas próprias abordagens para ajudá-lo a trabalhar com os dados. Por exemplo, o Excel infere um esquema se abrir um ficheiro XML que já não tem um. O Excel dá-lhe então a opção de carregar estes dados numa tabela XML. Pode utilizar as listas e tabelas XML para classificar, filtrar ou adicionar cálculos aos dados.

Ativar as ferramentas XML no Office

O separador Developer não é apresentado por defeito, mas terá de adicioná-lo à fita quando pretender utilizar comandos XML no Office.

Nota:  Esta página foi traduzida automaticamente e pode conter erros gramaticais ou imprecisões. O nosso objetivo é que estes conteúdos lhe sejam úteis. Pode indicar-nos se estas informações foram úteis? Eis o artigo em inglês para sua referência.​

Aumente os seus conhecimentos do Office
Explore as formações
Seja o primeiro a obter novas funcionalidades
Adira ao Office Insider

As informações foram úteis?

Obrigado pelos seus comentários!

Obrigado pelo seu feedback! Parece que poderá ser benéfico reencaminhá-lo para um dos nossos agentes de suporte do Office.

×