Escolar Documentos
Profissional Documentos
Cultura Documentos
<xml:fundamentos />
Helder da Rocha
www.argonavis.com.br
<x/>
Salve o arquivo
Abra no Internet Explorer
Um elemento
Contedo do
Elemento
Etiqueta
final
Elemento vazio
<nome></nome>
<nome/>
<contato>
<nome>Fulano de Tal</nome>
<email>fulano@site.com.br</email>
<telefone>
<ddd>11</ddd>
<numero>8765 4321</numero>
</telefone>
</contato>
5
Componentes de um documento
rvore XML
ns,
raiz,
galhos e
folhas
Prlogo
Comentrios
Instrues de processamento
Elementos
Atributos
Ns de texto
Entidades
6
Estrutura XML
Um documento XML pode ser representado como uma
Prlogo
Declarao XML
Comentrio
Instruo de processamento
Declarao de tipo de documento
<?xml version="1.0" encoding="iso-8859-1" ?>
<!-- Isto um comentrio -->
<?comando tipo="simples" parametro ?>
<!DOCTYPE cartao-simples SYSTEM "cartoes.dtd">
<cartao-simples>
<logotipo href="/imagens/logo14bis.gif" />
<nome>Alberto Santos Dumont</nome>
<endereco>Rua do Encanto, 22 - 2o. andar Centro - 25600-000 - Petrpolis - RJ</endereco>
<email>dumont@14bis.com.br</email>
<telefone tipo="residencial" >
<ddd>21</ddd>
<numero>2313011</numero>
</telefone>
</cartao-simples>
N raiz e elementos
elemento raiz
n raiz ( / )
Atributos
S podem conter um descendente (s texto)
<?xml version="1.0" encoding="iso-8859-1" ?>
<cartao-simples>
<logotipo href="/imagens/logo14bis.gif" />
<nome>Alberto Santos Dumont</nome>
<endereco>Rua do Encanto, 22 - 2o. andar Centro - 25600-000 - Petrpolis - RJ</endereco>
<email>dumont@14bis.com.br</email>
<telefone tipo="residencial" >
<ddd>21</ddd>
<numero>2313011</numero>
</telefone>
atributos
</cartao-simples>
10
Ns de texto
No podem ter descendentes (so as folhas da rvore)
<?xml version="1.0" encoding="iso-8859-1" ?>
<cartao-simples>
<logotipo href="/imagens/logo14bis.gif" />
<nome>Alberto Santos Dumont</nome>
<endereco>Rua do Encanto, 22 - 2o. andar Centro - 25600-000 - Petrpolis - RJ</endereco>
<email>dumont@14bis.com.br</email>
<telefone tipo="residencial" >
<ddd>21</ddd>
<numero>2313011</numero>
ns de
</telefone>
texto
</cartao-simples>
11
Entidades
So constantes associadas a um valor de texto
Podem aparecer em qualquer lugar do documento
Substitudas durante o processamento do documento
Sintaxe:
&ENTIDADE;
Exemplo:
&data_de_hoje;
Entidades pr-definidas:
< que corresponde a <
> que corresponde a >
& que corresponde a &
" que corresponde a "
' que corresponde a '
12
Entidades de caracteres
Substitudas durante o processamento do documento
Sintaxe:
&#CDIGO_16b_decimal;
ÍIGO_16b_hexadecimal;
Exemplo:
  ou  
Um espao em Unicode
Veja em www.unicode.org/charts/
13
Elementos e atributos
Regras bsicas
Etiqueta inicial e final tm que ter o mesmo nome
(considerando diferena de maiscula e minscula)
No pode haver espao depois do < nas etiquetas iniciais
nem depois do </ nas finais
Atributos tm sempre a forma nome="valor" ou nome =
'valor':
aspas podem ser usadas entre apstrofes e apstrofes podem
informao em XML
<data>23/02/1998</data>
<data dia="23" mes="02" ano="1998" />
<data>
<dia>23</dia>
<mes>02</mes>
<ano>1998</ano>
</data>
15
16
Identificadores
Nomes de atributos e elementos
Podem conter
qualquer caractere alfanumrico ou ideograma
. (ponto)
- (hfen)
_ (sublinhado)
No podem comear com
ponto,
hfen ou
nmero
17
Identificadores
Elementos bem formados
< >
</ >
< xml:lang='ru'>
<> </>
< ="1799"
="1837"> </>
</>
<_1_/>
<cdd:gen.inf cdd:cod="005">Introduo a XML</cdd:gen.inf>
18
Contedo misto
<trecho>
<secao>2</secao>
<paragrafo>A unidade de informao
dentro de um documento XML o
<definicao>elemento</definicao>. Um
elemento formado por duas
<definicao>etiquetas</definicao> que
atribuem algum significado ao contedo.
</paragrafo>
</trecho>
19
Seo CDATA
Ignora efeitos especiais dos caracteres
<titulo>Curso de XML</titulo>
<exemplo>Considere o seguinte trecho de
XML:
<![CDATA[
<empresa>
<nome>Joo & Maria S/A</nome>
</empresa>
]]>
</exemplo>
20
Instrues de processamento
Instrues dependentes do processador
Funcionam como comentrios para os processadores
que no a conhecem
<?nome-do-alvo rea de dados ?>
<?query-sql select nome,
email
from agenda
where id=25 ?>
21
Comentrios
Iguais aos comentrios HTML
<!-- Isto um comentrio -->
<!--
22
Declarao XML
Opcional (exceto queno conjunto de
23
24
XML Namespaces
Permite que elementos de mesmo nome de diferentes
xmlns:prefixo="identificador"
25
Exemplo
Vale para todo
o elemento
<cartao>
Esta URI
est associada a
este prefixo
<ct:cartao
xmlns:ct="01.234.567/0001-89/cartoes">
<ct:nome>Alberto Santos Dumont</ct:nome>
<ct:endereco>Rua do Encanto, 22 - Centro
25600-000 - Petrpolis - RJ</ct:endereco>
<ct:email>dumont@14bis.com.br</ct:email>
<ct:telefone tipo="residencial">
<ct:ddd>21</ct:ddd>
<ct:numero>2313011</ct:numero>
</ct:telefone>
</ct:cartao>
26
27