Artigo .net Magazine 62 - XML e Web Services
Saiba como passar parâmetros no formato XML para um Web Service.
XML e Web Services
Passagem de parâmetros no formato XML para um Web Service
A linguagem XML – abreviatura para eXtensible Markup Language ou Linguagem de Marcação Extensível – é uma linguagem definida principalmente para carregar dados e facilitar a compreensão do seu significado. É bastante semelhante ao HTML, pois assim como este, é composto por TAGS, mas apresenta um diferencial onde essas TAGS não são previamente definidas sendo possível que o usuário crie suas próprias.
A XML foi desenvolvido para ser auto-descritiva, ou seja, ao olharmos para um documento destes o seu significado é facilmente compreendido, embora seja possível criar documentos extremamente complexos. Na Listagem 1 temos um exemplo de um documento simples que é um registro de dados cadastrais de uma pessoa.
Listagem 1. Exemplo de documento XML
1 <?xml version="1.0" encoding="iso-8859-1"?>
2 <empresa>
3 <cnpj>00.000.000/0000-00</cnpj>
4 <inscricao>000.000000</inscricao>
5 <RazaoSocial>R.V. Atacadista Ltda</RazaoSocial>
6 <fundacao>01/02/1986</fundacao>
7 <faturamento>1000000,00</faturamento>
8 <telefone>99-9999-9999</telefone>
9 <email>rvatacadista@rvatac.com</email>
10 </empresa>
Olhando rapidamente é fácil entender o significado dos dados e como estão estruturados. Note que a XML não executa nenhuma ação sendo usado apenas para estruturar, armazenar e eventualmente transportar dados.
Podem-se escrever aplicações especiais que ao ler os arquivos XML dêem algum significado especial para os dados armazenados entre as TAGS. Um exemplo dentro do nosso contexto é o arquivo WEB.CONFIG usado tanto por aplicações Web Services como ASP.NET. Na Listagem 2 temos um exemplo de um arquivo WEB.CONFIG.
Listagem 2. Arquivo Web.Config
1 <?xml version="1.0"?>
2
3 <configuration>
4
5 <appSettings/>
6 <connectionStrings/>
7
8 <system.web>
9 <!--
10 Set compilation debug="true" to insert debugging
11 symbols into the compiled page. Because this
12 affects performance, set this value to true only
13 during development.
14 -->
15 <compilation debug="true" />
16 <!--
17 The <authentication> section enables configuration
18 of the security authentication mode used by
19 ASP.NET to identify an incoming user.
20 -->
21 <authentication mode="Windows" />
22 <!--
23 The <customErrors> section enables configuration
24 of what to do if/when an unhandled error occurs
25 during the execution of a request. Specifically,
26 it enables developers to configure html error pages
27 to be displayed in place of a error stack trace.
28
29 <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
30 <error statusCode="403" redirect="NoAccess.htm" />
31 <error statusCode="404" redirect="FileNotFound.htm" />
32 </customErrors>
33 -->
34 </system.web>
35 </configuration>
Cada TAG existente no arquivo da Listagem 2 representa uma configuração a ser aplicada em Web Service ou site ASP.NET. Não entrarei em detalhes do que cada configuração faz porque foge do escopo do artigo.
Estrutura do documento XML
Não existe nenhuma TAG XML pré-definida. Você pode criar suas próprias livremente, porém é necessário obedecer-se a algumas regras. Os documentos XML são compostos por uma estrutura em forma de árvore, sendo possíveis várias ramificações até se chegar ao nó final. Considere novamente a Listagem 1.
A primeira linha é a declaração padrão do XML. Define sua versão, 1.0 e a codificação usada para o texto. A próxima linha define o elemento raiz do documento, que conterá as informações e no nosso caso é algo como se dissesse que este documento contém dados de empresa:
<empresa>
As próximas linhas armazenam os dados do elemento raiz:
<cnpj>00.000.000/0000-00</cnpj>
<inscricao>000.000000</inscricao>"
[...] continue lendo...Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo