Pode ter ouvido falar de linguagem XML (Extensible Markup Language) e pode ter ouvido várias razões pelas quais a sua organização deve usá-la. Mas o que é exatamente XML? Este artigo explica as noções básicas sobre XML: o que é e como funciona.

Neste artigo

Um breve olhar sobre marcações, marcações e etiquetas

Para compreender os dados XML, é uma boa ideia compreender a marcação de dados. As pessoas criaram documentos para demorarem algum tempo a criar e durante o mesmo tempo que marcaram esses documentos. Por exemplo, os professores marcam sempre trabalhos de estudantes. Eles dizem aos alunos para mover parágrafos, esclarecer frases, corrigir os ortografismos, entre outros. Marcar um documento é a forma como definemos a estrutura, significado e aspeto visual das informações no documento. Se já alguma vez tiver utilizado a funcionalidade Controlar Alterações no Microsoft Office Word, terá utilizado um formulário de marcação informatizado.

Na computação, a "marcação" também evoluiu para "marcação". A marcação é o processo de utilizar códigos denominados etiquetas (ou, por vezes, tokens) para definir a estrutura, o aspeto visual e, no caso do XML, o significado de quaisquer dados.

O código HTML para este artigo é um bom exemplo da marcação de computador no trabalho. Se navegar pela mesma (no Microsoft Internet Explorer, clique com o botão direito do rato na página e, em seguida, clique em Ver Origem),verá uma combinação de textos lidos e etiquetas HTML (Hypertext Markup Language), como <p> e <h2>. As etiquetas em documentos HTML e XML são fáceis de reconhecer porque estão entre parênteses angulares. No código fonte deste artigo, as etiquetas HTML fazem várias tarefas, 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 entre etiquetas, mas é aí que as semelhanças entre os dois idiomas terminam. Em HTML, as etiquetas definem o aspeto e a inspeção dos seus dados. Os cabeçalhos são apresentados aqui, o parágrafo começa aí e assim por aí vai. Em XML, as etiquetas definem a estrutura e significado dos seus dados, ou seja, quais os dados.

Quando descreve a estrutura e o significado dos seus dados, permite reutilizar os dados de várias formas. Por exemplo, se tiver um bloco de dados de vendas e cada item no bloco estiver identificado de forma clara, pode carregar apenas os itens de que precisa para um relatório de vendas e carregar outros itens para uma base de dados de contabilidade. De outra forma, pode utilizar um sistema para gerar os seus dados e marcá-los com etiquetas XML e, em seguida, processar os dados em qualquer número de outros sistemas, independentemente da plataforma de hardware ou sistema operativo. Essa portabilidade é a razão pela qual O 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 pode utilizar HTML em vez de XML. No entanto, pode envolver os seus dados XML em etiquetas HTML e exibi-los numa página Web.

  • O HTML está limitado a um conjunto predefinido de etiquetas que todos os utilizadores partilham.

  • O XML permite-lhe criar qualquer etiqueta que precise para descrever os seus dados e a estrutura dos dados. Por exemplo, digamos que precisa de 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 etiquetas XML fazem com que seja possível saber exatamente o tipo de dados que está a ver. Por exemplo, sabe que se tratam de dados sobre um gato e pode encontrar facilmente o nome do gato, a idade, entre outros. A capacidade de criar etiquetas que definem quase qualquer estrutura de dados é o que torna XML "extensível".

Mas não confunda as etiquetas nesse exemplo de código com etiquetas num ficheiro HTML. Por exemplo, se colar essa estrutura XML num ficheiro HTML e visualizar o ficheiro no seu browser, os resultados terão um asste parecido com este:

Izzy Siamese 6 yes no Izz138bod Colin Wilcox

O browser ignora as suas etiquetas XML e apresenta apenas os dados.

Uma palavra sobre dados bem formados

Poderá 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 estritas que regem XML. Se um ficheiro não cumprir essas regras, o XML deixa de funcionar. Por exemplo, no exemplo de código anterior, todas as etiquetas de abertura têm uma etiqueta de fecho, pelo que a amostra adere a uma das regras para se formar bem. Se remover uma etiqueta e tentar abrir esse ficheiro num dos programas do Office, verá uma mensagem de erro e o programa irá impedi-lo de utilizar o ficheiro.

Não precisa necessariamente de conhecer as regras para criar XML bem formado (embora sejam fáceis de compreender), mas tem de se lembrar que pode partilhar dados XML entre programas e sistemas apenas se os dados estiverem bem formados. Se não conseguir abrir um ficheiro XML, o mais certo é que o ficheiro não está bem formado.

O XML também é independente da plataforma, o que significa que qualquer programa criado para utilizar XML pode ler e processar os seus dados XML, independentemente do hardware ou sistema operativo. Por exemplo, com as etiquetas XML certas, pode utilizar um programa de ambiente de trabalho para abrir e trabalhar com dados de um computador principal. Independentemente de quem criar um corpo de dados XML, pode trabalhar com os mesmos dados em vários programas Office dados. Uma vez que é tão portátil, o XML tornou-se uma das tecnologias mais populares para a troca de dados entre bases de dados e ambientes de trabalho de utilizadores.

XML utilizado por outros programas

Para além de dados com etiquetas e bem formatados, os sistemas XML utilizam normalmente dois componentes adicionais: esquemas e transformações. As secções seguintes explicam como funcionam estes componentes adicionais.

Uma rápida visualção dos esquemas

Não deixe que o termo "esquema" o deixe intimidar. Um esquema é apenas um ficheiro XML que contém as regras que podem ou não estar num ficheiro de dados XML. Os ficheiros de esquema utilizam normalmente a extensão de nome de ficheiro .xsd, enquanto os ficheiros de dados XML utilizam a .xml extensão.

Os esquemas permitem aos programas validar dados. Fornecem a estrutura para estruturar dados e asseguram que faz sentido para o criador e para todos os outros utilizadores. Por exemplo, se um utilizador introduzir dados inválidos, como texto num campo de data, o programa pode pedir ao utilizador que introduza os dados corretos. Desde que os dados num ficheiro XML sejam em conformidade com as regras de um determinado esquema, qualquer programa que suporte XML pode utilizar esse esquema para ler, interpretar e processar os dados. Por exemplo, conforme apresentado na seguinte ilustração, Excel validar os <CAT> dados em vez do esquema CAT.

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

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

<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 compreender tudo no exemplo. Tenha estes factos em atenção:

  • Os itens de linha no esquema de exemplo são denominados declarações. Se precisar de informações adicionais sobre um animal, como a sua cor ou marcações, é possível que o seu departamento de TI adicione uma declaração ao esquema. Pode alterar o seu sistema XML à medida que as necessidades da sua empresa evoluem.

  • As declarações fornecem uma quantidade de controlo total sobre a estrutura de dados. Por exemplo, a declaração <xsd:sequence> significa que as etiquetas, como <NAME> e <BREED> , têm de ocorrer pela ordem em 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 necessita de um número positivo para a idade do gato e valores booleanos (VERDADEIRO ou FALSO) para as etiquetas ALTERED e DECLAWED.

  • Quando os dados num ficheiro XML estão em conformidade com as regras fornecidas por um esquema, os dados são ditos como válidos. O processo de verificação de um ficheiro de dados XML relativamente a um esquema chama-se validação (lógica suficiente). A grande vantagem de utilizar esquemas é que podem ajudar a impedir dados danificados. Também facilitam a procura de dados danificados porque XML para quando encontra um problema.

Um breve olhar sobre transformações

Como mencionado anteriormente, O XML também fornece formas poderosas de utilizar ou reutilizar dados. O mecanismo de reutilização de dados denomina-se XSLT (Extensible Stylesheet Language Transformation) ou simplesmente uma transformação.

O utilizador (o seu departamento de TI) também pode utilizar 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 adaptada para o departamento de contabilidade. A Base de Dados B pode utilizar uma transformação para aceitar dados de A e escrever os dados nas tabelas corretas.

A combinação de ficheiros de dados, esquema e transformação constituem um sistema XML básico. A seguinte ilustração mostra como esses sistemas normalmente funcionam. O ficheiro de dados é validado em vez do esquema e, em seguida, é apresentado de várias formas usá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

O exemplo de código seguinte mostra uma forma de escrever uma transformação. Esta ação carrega <CAT> dados numa tabela numa página Web. Mais uma vez, o ponto do exemplo não mostra como escrever uma transformação, mas para lhe mostrar um formulário que uma transformação pode assumir.

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

Este exemplo mostra como um tipo de transformação poderá ter quando está codificado, mas lembre-se de que pode descrever o que precisa dos dados em inglês simples. Por exemplo, pode ir para o seu departamento de TI e dizer que tem de imprimir os dados de vendas de determinadas regiões dos últimos dois anos "e preciso que se vejam desta forma." O seu departamento de IT pode, então, escrever (ou alterar) uma transformação para fazer essa tarefa.

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 tarefas de todos os tipos. No futuro, é possível que consiga transferir uma transformação que se ajusta às suas necessidades ou que se ajuste de acordo com o seu objetivo. Isto significa que o XML irá custar menos tempo a utilizar.

Uma espreitadela em XML no Microsoft Office System

As edições profissionais do Office fornecem suporte XML extenso. 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 o XML armazena dados num formato de texto em vez de um formato binário de propriedade, os seus clientes podem definir os seus próprios esquemas e utilizar os seus dados de mais formas, tudo sem terem de pagar royalties. Para obter mais informações sobre os novos formatos, consulte Formatos Open XML e extensões de nome de ficheiro. Outras vantagens incluem:

  • Tamanhos de ficheiro mais pequenos. O novo formato utiliza o ZIP e outras tecnologias de compressão para reduzir o tamanho do ficheiro até 75% em comparação com os formatos binários utilizados em versões anteriores do Office.

  • Recuperação de informações mais fácil e maior segurança. O XML pode ser lido por pessoas, pelo que, se um ficheiro ficar danificado, pode abrir o ficheiro no Microsoft Bloco de notas 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 Visual Basic for Applications código VBA. Se utilizar o novo formato para criar modelos, quaisquer ActiveX e macros do VBA residem numa secção separada e mais segura do ficheiro. Além disso, pode utilizar ferramentas, como o Inspetor de Documentos, para remover dados pessoais. Para obter mais informações sobre como utilizar o Inspetor de Documentos, consulte o artigo Remover dados ocultos e informações pessoais através da inspeção de documentos.

Até agora, ainda bem, mas e se tiver dados XML sem esquema? Os Office programas que suportam XML têm uma abordagem própria que o ajuda a trabalhar com os dados. Por exemplo, Excel infere um esquema se abrir um ficheiro XML que ainda não tenha um. Excel em seguida, dá-lhe a opção de carregar estes dados para uma tabela XML. Pode utilizar as listas e tabelas XML para ordenar, filtrar ou adicionar cálculos aos dados.

Ativar as ferramentas XML no Office

O separador Programador não é apresentado por predefinição, mas terá de o adicionar ao separador quando quiser utilizar comandos XML no Office.

Precisa de mais ajuda?

Aumente os seus conhecimentos
Explore as formações
Seja o primeiro a obter novas funcionalidades
Aderir ao Microsoft Office insiders

As informações foram úteis?

Quão satisfeito está com a qualidade do idioma?
O que afetou a sua experiência?

Obrigado pelo seu feedback!

×