XML Básico Murillo Vasconcelos Henriques B. Castro 17 de maio de 2011
O QUE É? Sigla para extensible Markable Language É uma linguagem de marcação, assim como HTML Desenvolvida para ser auto explicativa Recomendada pela W3C
CARACTERÍSTICAS A linguagem XML não FAZ nada especicamente Seu proposito principal é transportar, estruturar e armazenar dados Para mostrar, enviar ou receber os dados em XML é necessario um software especico para isso É uma ferramenta independente de software e hardware
RELAÇÃO COM HTML HTML voltada para mostrar informação com foco na aparência dos dados XML voltada para transportar informação, com foco no que são exatamente os dados Ambos utilizam o recurso de tags: HTML: tags pre denidas XML: tags denidas pelo autor do documento XML XML nao substitui HTML, ambos se complementam
PRINCIPAIS USOS DA LINGUAGEM Separar dados de HTML: Simplica possíveis mudanças nos dados Preserva a estrutura do codigo HTML Permite que o código HTML foque mais no layout e na apresentação dos dados Simplica compartilhamento, transporte de dados e mudanças de plataforma: Formato de texto simples permite ampla compatibilidade Criar novas linguagens: Ex: XHTML, WSDL para descrever web services disponiveis, WAP WML para dispositivos móveis, RSS e SMIL para descrever multimídia para web
ESTRUTURA DOS DOCUMENTOS Primeira linha -> versão da linguagem usada e codicação Tem estrutura de árvore, começa num elemento raiz e se divide em elementos folha Primeiro elemento é sempre a raiz Relação de "pai", "lho"e "irmao"entre elementos. Todos elementos podem ter texto e um ou mais atributos
Exemplo 1
Exemplo 2 Representação de uma loja de livros:
Exemplo 2
SINTAXE Todos elementos DEVEM ter uma tag de fechamento Case sensitive: tags de início e m devem ser escritas da mesma forma Todos os documentos DEVEM ter um elemento raiz Tags devem ser centralizadas corretamente Modo correto: <b><i>text</i></b> Modo incorreto: <b><i>text</b></i> Atributos entre aspas Caracteres reservados: < = < > = > & = & ' = ' "= " Comentários: <!comentario> Espaço em branco preservado, ao contrário de HTML
ELEMENTOS Um elemento é tudo que se tem após sua tag de início e antes da tag de m (incluindo as mesmas) Pode conter: Texto Outros elementos Atributos Regras para nomear elementos: Pode ter letras, núzmeros e outros caracteres Não podem começar com números, sinais de pontuação ou com as letras xml (ou XML, Xml etc.) Não podem ter espaços em branco Não há palavras reservadas É bom colocar nomes simples, curtos e autoexplicativos Evitar usar '-', '.' e ':' Elementos XML podem ser extendidos (adicionando novos elementos) sem causar erro nas aplicações que funcionavam para os elementos antigos
ATRIBUTOS Fornecem informações adicionais sobre elementos Podem ser informações que não fazem parte dos dados mas que podem ser importantes para a aplicação que manipulará os elementos Devem vir entre aspas simples ou dupla '..."texto entre apas do atributo"...' "..."texto entre apas do atributo"..." Não há regras quanto à diferença entre atributos e elementos, ambos podem ter a mesma informação Recomendado evitar uso de atributos para representar dados Não podem ter múltiplos valores (elementos podem) Não podem ter estruturas de arvore (elementos podem) Não são facilmente expandíveis para possiveis mudanças
ATRIBUTOS Os trechos a seguir são equivalentes:
ATRIBUTOS Ou, de uma maneira melhor:
ATRIBUTOS Usados para representar metadados (dados sobre dados), enquanto o dado em si é representado por um elemento
XML BEM FORMADO E XML VÁLIDO Um documento XML bem formado é aquele que cumpre as regras de sintaxe da linguagem Um documento XML válido é um XML bem formado e que também cumpre as regras de uma DTD (Document Type Denition) Uma aplicação para de funcionar caso encontre um XML não válido Um DTD serve para denir a estrutura de um documento XML, com uma lista de elementos que são legais Pode ser declarado no documento XML referenciando para um arquivo.dtd externo ou pode ser denido no próprio XML
VISUALIZAÇÃO Um documento XML é mostrado em um browser da mesma maneira que ele é visto "cru" Se o documento for inválido, o browser acusará o erro e não mostrará o documento Pode ser combinado com CSS (não muito recomendado) ou XSLT para formatar a exibição dos dados XSLT: servidor ou browser transforma XML para HTML antes da exibição do documento
EDIÇÃO Pode ser editado em qualquer bloco de notas Há softwares especícos para quem deseja desenvolver documentos XML mais complexos Linux -> xmlcopyeditor
REFERÊNCIAS www.w3schools.com/xml