Anda di halaman 1dari 29

Aula 1 Conceitos bsicos XML

Web Services nada mais so do que servios

disponveis na internet, que permitem outros sistemas interagirem com eles de forma transparente sem a interveno humana. Web services so aplicaes autocontidas, que possuem interface baseadas em XML e que descrevem uma coleo de operaes acessveis atravs de rede, independentemente da tecnologia usada na implementao do servio Fonte: W3C

Criando um documento XML

Elementos e atributos
Documento bem formado Validando o XML

XML no linguagem de marcao Ele uma metalinguagem de marcao. Mas qual a diferena?

O HTML uma linguagem de marcao porque suas tags foram predefinidas por seus criadores com o objetivo de fazer a marcao de cada parte do documento HTML. No XML no existe nenhuma tag predefinida voc cria suas prprias tags criando assim a sua linguagem de marcao. por isso que o XML no uma linguagem e sim uma metalinguagem ou seja uma linguagem usada para criar outra linguagem.

Como HTML:
simples, legvel, fcil de aprender universal e transportvel suportado pela W3C

Mas, Alm de HTML


flexvel : podemos representar qualquer tipo de informao extensvel: pode-se representar informao de qualquer forma

"Para qu serve isso?" ou "Porque algum precisaria criar marcaes em um arquivo texto?". A resposta simples:
arquivo, podendo assim usar a informao da maneira que melhor lhe convier.

para ter controle sobre as informaes contidas no

Idia fundamental:
Considere um documento, desejvel separar completamente as informaes de estrutura das informaes de apresentao.

Cabealho Objeto Saudao

Bar da Noite Rua das Bodegas, s/n 58106-920 C. Grande

Logotipo
Campina GRande, 20 de maio de 2001

Tel: 012133564 Fax: 879765426

Data Destinatrio Corpo

Sr. Edilson Silva, Rua das Flores, 12 581293 Caruaru

Objet: Dvida?

Forma Polida

Prezado Senhor, Bla bla bli, bli blo bla, kkkk vhlg vckjdhklbg fdskjbvhv feje slc ifehfe fhckh c jeflccj n khef iheznf jkvbc lkhdklvn v

Aproveito do ensejo para renovar meus protestos de elevada estima e considerao. assinatura

Rodap

Assinatura
Rodap

<carta> . . . </carta>

<cabeca> <logotipo loc="logo-graph"/> . . . <endereco> &abrev-endereco; </cabeca> </endereco> <destinatario> <nome> Sr Edilson Silva </nome> <endereco> <rua> rua das Flores </rua> <cidade> Caruaru </cidade> </endereco> </destinatario> <objeto> bla bla </objeto> <data> 20 Maio 2001 </data> <para> <saudacao> Aqui o primeiro Prezado Senhor, pargrafo </saudacao> </para> <corpo> <para> . . . aqui o segundo ... </corpo> </para>

10

A representao desta carta em XML no tem nenhuma indicao sobre a apresentao. As numerosas propriedades grficas ou tipogrficas esto ausentes da fonte XML. Estas propriedades sero definidas por intermdio de uma folha de estilo.

11

Extensibilidade e estrutura

Em XML, um autor ou uma comunidade de autores inventam livremente as tags que lhes paream teis para marcar os componentes de um documento. Exemplo: diversas formas de representar uma data
<date> 5 janeiro 2000 </date> <date> <ano> 2000 </ano> <mes> 01 </mes> <dia> 05 </dia> </date> <date format='ISO-8601'> 2000-01-05 </date>

Grande liberdade de escolha das estruturas de dados facilita a troca de dados

comrcio eletrnico, transaes financeiras e comerciais, pesquisa e indstria de biotecnologias multimdia

12

Cada usurio livre para definir suas prprias estruturas de documento

Um documento pode ser escrito conforme as estruturas tipadas, chamadas DTD Cada comunidade pode propor as estruturas normalizadas A validao a um DTD permite a automatizao no tratamento dos dados e assegura uma possibilidade de controle de integridade

13

Um documento XML composto de

um prlogo cuja presena facultativa, mas fortemente aconselhada


<?xml version="1.0" standalone="yes" ?>

uma rvore de elementos, obrigatria


<documento> <saudacao> Bom dia! </saudacao> </documento>

comentrios, seo CDATA e de instrues de tratamento, facultativos


14

Uma declarao XML, facultativa da forma


<?xml version="1.0" encoding="ISO-8859-1" standalone="yes">

indica ao processador que vai tratar o documento:


a verso da linguagem XML utilizada o cdigo de caracteres utilizado a existncia de declaraes exteriores ao documento

Uma declarao de tipo de documento, facultativa


da forma
<!DOCTYPE exemplo SYSTEM "exemplo.dtd" [ declaraes ]>

indica a estrutura particular a qual deve estar de acordo um documento

15

Um elemento da forma:

<nome> a tag de abertura (XML case sensitive!) </nome> a tag de fechamento. A presena obrigatria, a exceo particular dos elementos nulos, denotado por <nome> </nome> ou <nome/> contedo o contedo de um elemento, pode ser:
vazio texto outros elementos uma mistura de texto e elementos instrues de tratamento comentrios

<nome attr='valor'> contedo </nome>

attr='valor' representa um conjunto eventualmente vazio de atributos, ou seja, de pares (nome,valor). Os nomes dos atributos so nicos num elemento.

16

Um nome de elemento uma sequncia no nula de caracteres que pode conter: caracteres alfanumricos underscore sinal de menos Ponto Deve satisfazer as seguintes restries o primeiro caracter deve ser alfabtico ou um underscore. os trs primeiros caracteres no devem formar uma cadeia cuja representao em letras minsculas seja "xml".

17

Exemplos de nomes de elementos corretos _toto Nome_sociedade xsl:rule X.11 incorretos 1998-catalogo xmlSpecification nome sociedade

18

Um atributo um par nome= "valor" que permite de caracterizar um elemento. Um elemento pode ter vrios atributos. Neste caso, os pares nome='valor' sero separados por um espao. Exemplos O nome de um atributo obedece as mesmas regras que o nome de um elemento O valor de um atributo uma string entre aspas(") ou apstrofos simples ('). Um valor de atributo no deve conter os caracteres ^, % e &.
<relatorio lingua= "pt" ult-modif= "08/07/99" > <anuario generator= "SQL2XML V2.0" update= "07.08.99" >

19

Uma seo CDATA instrui o analisador a ignorar os caracteres de marcao. Exemplo:

<![CDATA[ *p = &q; b = (i <= 3); ]]>

Entre o incio da seo, <![CDATA[ e o fim da seo, ]]>, todos os caracteres so passados diretamente para a aplicao, sem interpretao. A nica string que no pode ocorrer numa seo CDATA ]]>.

20

Comentrios iniciam com <!-- e terminam com -->. (s no podem conter o string --).
Ex.: <!-- Isto um comentrio -->

Comentrios podem ser colocados em qualquer linha do documento.

21

Um documento XML contm uma rvore de elementos, com as seguintes restries: Existe num documento um nico elemento pai que contm todos os outros. a raiz do documento. Todo elemento distinto da raiz totalmente includo dentro de seu pai. Assim:

<p> <b> bla bla </p> bla </b>


no uma estrutura XML.

22

Todo documento XML deve ser vlido (valid) e bem-formado (well formed).
Um documento bem formado aquele que foi construdo obedecendo as regras de sintaxe.

Um documento vlido aquele que bem formado e obedece as regras definidas na DTD (Document Type Definition) ou XML Squema.

23

Um documento dito bem formado se:


<?xml version="1.0" standalone="yes" ?> <documento> <saudacao> Bom dia! </saudacao> </documento>
<documento> <saudacao> Bom dia! </documento> </saudacao>

est de acordo com as regras sintticas de XML

Exemplo de documento no bem formado

http://www.w3schools.com/XML/xml_valid ator.asp

24

Um documento dito vlido se:


seu prlogo contm uma declarao de tipo de documento. sua rvore de elementos respeita a estrutura definida pelo DTD
<?xml version="1.0" ?> <!DOCTYPE documento [ <!ELEMENT documento (saudacao)> <!ELEMENT saudacao (#PCDATA)> ]> <documento> <saudacao> Bom dia! </saudacao> </documento>

25

Escreva um documento XML que declara uma caderneta de endereos que contm endereos de contato. Cada contato tem um nome, endereo e telefone. O endereo tem o nome da rua, nmero e CEP.

26

<?xml version="1.0" ?> <caderneta> <nome>jose</nome> <endereco > <rua> Rio Branco </rua> <numero> 1000 </numero> <CEP> 36000-00 </CEP> </endereco> <telefone>32116666r</telefone> </caderneta>

27

Crie o documento XML que declare um produto, representado por um elemento produto. Produto deve ter um fabricante representado por um elemento fabricante. Utilize detalhes como nome, endereo, etc.. como elementos filhos de um elemento fabricante. Cada produto tem os elementos: nome do produto, preo unitrio, quantidade e categoria.

28

<produto> <nomeProduto> chip </nomeProduto> <categoria> eletronico</categoira> <preco>4.00</preco> <quantidade>2</quantidade> <fabricante> <nome >Paulo</nome> <endereco>Rua AA </endereco> </fabricante> </produto>

29