0% acharam este documento útil (0 voto)
33 visualizações16 páginas

XML: Namespaces e CDATA Explicados

Enviado por

alexlimatds
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
33 visualizações16 páginas

XML: Namespaces e CDATA Explicados

Enviado por

alexlimatds
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

XML: Namespaces e

CDATA
Parte I - Namespaces
Introdução
 Motivação
 Documentos XML podem conter elementos
conflitantes
 Exemplo
 Informações sobre tabela HTML
<table>
<tr>
<td>Maçãs</td>
<td>Bananas</td>
</tr>
</table>
Introdução
 Exemplo
 Informações sobre mobília (em inglês)
<table>
<name>Mesa em granito</name>
<width>80</width>
<length>120</length>
</table>

 Caso se trabalhe com as informações dos


dois exemplos, teremos um conflito da tag
<table>
Resolução de conflitos
 Solução: utilizar prefixos
<h:table>
<h:tr>
<h:td>Maçãs</h:td>
<h:td>Bananas</h:td>
</h:tr>
</h:table>
<m:table>
<m:name>Mesa em granito</m:name>
<m:width>80</m:width>
<m:length>120</m:length>
</m:table>
Prefixos e namespaces
 Podemos utilizar o atributo xmlns para
associar um prefixo com um namespace
<h:table xmlns:h=”[Link]
<h:tr>
<h:td>Maçãs</h:td>
<h:td>Bananas</h:td>
</h:tr>
</h:table>
<m:table xmlns:m=“[Link]
<m:name>Mesa em granito</m:name>
<m:width>80</m:width>
<m:length>120</m:length>
</m:table>
Atributo namespace
 O atributo xmlns é colocado na tag inicial de
um elemento
 Sintaxe
 xmlns:prefixo=“URI do namespace”
 Quando um namespace é definido na tag
inicial de um elemento, todos os elementos
filhos com o mesmo prefixo são associados
ao mesmo namespace
Uniform Resource Identifier
 Uma URI é uma string que identifica um
recurso na Internet
 O mais comum é utilizar URLs como URIs
 O endereço da URI não é utilizado pelo
parser para procurar informações
 Objetivo é dar um nome único a um
namespace
Namespaces padrão
 Pode-se definir um namespace padrão
(default) a um elemento
 Não é necessário utilizar prefixo nos
elementos filhos do elemento associado ao
namespace padrão
 Sintaxe
 xmlns=“URI do namespace”
Namespaces padrão
 Exemplo
<table xmlns=“[Link]
<tr>
<td>Maçãs</td>
<td>Bananas</td>
</tr>
</table>
<table xmlns=“[Link]
<name>Mesa em granito</name>
<width>80</width>
<length>120</length>
</table>
Namespaces em ação!
 À primeira vista namespaces aparentam
pouca utilidade, mas...
 Extremamente útil (ou essencial) quando se
utilizam outras tecnologias XML
 XLS
 XMLSchema
 XPath
 ...
Parte II - CDATA
Introdução
 Analisadores sintáticos (parsers) geralmente
analisam todo o texto de um documento XML
 O texto entre as tags também é analisado
 Um documento XML pode conter seções
CDATA
 O conteúdo de CDATA é tratado como texto
e nunca é interpretado como XML
Seções CDATA
 Iniciam com <![CDATA[ e terminam com
]]>
 Seu conteúdo não pode conter ]]>
 Não é permitido o aninhamento de seções
CDATA
 Não pode haver espaços entre os caracteres
]]>
Exemplo
<titulo>Curso de XML</titulo>
<exemplo>Considere o seguinte trecho de
XML:
<![CDATA[
<empresa>
<nome>João & Maria S/A</nome>
</empresa>
]]>
</exemplo>
Referências
 [Link]
 [Link]/~danielle
 TITTEL, Ed. Teoria e Problemas de XML
(coleção Schaum) – Porto Alegre: Bookman,
2003

Você também pode gostar