Clique aqui para ler todos os artigos desta edição
XPath sem Traumas
Por Fábio Vazquez
Este artigo discute |
Este artigo usa as seguintes tecnologias: |
· O que é XPath e seus métodos · Como gerar e ler XML · Pesquisar dados com XPath |
XML, C# Download: xxx.zip (xxKB) |
Chapéu XPath |
|
Não é à toa que vemos poucos desenvolvedores usando os recursos maravilhosos disponibilizados por tecnologias como XPath (XML Path Language) e XSLT (Extensible Stylesheet Language Transformation): elas podem realmente parecer muito complexas. O objetivo deste artigo é dar uma visão de algumas utilizações práticas da linguagem de consulta XPath. Não detalharei questões intrincadas que envolvem a interpretação da sintaxe das expressões XPath, mas tentarei despertar a atenção do leitor para alguns usos interessantes proporcionados por esta tecnologia. Este artigo assume que o leitor já tenha familiaridade com os conceitos da tecnologia XML.
Faça o simples antes. Deixe o complicado para depois
Como qualquer consumidor convencional, nós, consumidores de tecnologia, precisamos ter a nossa atenção despertada para que criemos o interesse por algum produto tecnológico. Se algo parece muito complexo a primeira vista, pode até estimular o interesse de alguns, mas a maioria não chegará a ter desejo por usar a tecnologia, seja porque ela é demasiadamente complexa ou porque esta pessoa simplesmente não entende o que está a sua frente. XML em geral e as tecnologias acessórias como XPath, XSLT, XSD e outras, são baseadas em princípios altamente consolidados para desenvolvedores, como hierarquias, relacionamentos, caminhos, tipos de dados, gramáticas, entre outros. Por esta razão, não podemos deixar de usá-las porque as achamos complexas ou desnecessárias.
Por serem baseados em texto, os documentos XML são facilmente lidos e interpretados, não somente por diferentes linguagens e plataformas operacionais, mas também pelo ser humano. Por exemplo, o documento mostrado na Listagem 1 é fácil verificar que se trata da representação de alguns pedidos e os seus respectivos itens. Mais precisamente, os pedidos do cliente “TRAIH” do database Northwind, que é distribuído com o Microsoft SQL Server 2000.
Listagem 1 - Documento XML hierárquico gerado a partir de um DataSet.
xml version="1.0" standalone="yes"?>
<PedidosItens>
<Pedidos>
<OrderID>10574OrderID>
<OrderDate>1997-06-19T00:00:00.0000000-03:00OrderDate>
<Itens>
<OrderID>10574OrderID>
<ProductID>33ProductID>
<UnitPrice>2.5000UnitPrice>
<Quantity>14Quantity>
<Discount>0Discount>
Itens>
<Itens>
<OrderID>10574OrderID>
<ProductID>40ProductID>
<UnitPrice>18.4000UnitPrice>
<Quantity>2Quantity>
<Discount>0Discount>
Itens>
<Itens>
<OrderID>10574OrderID>
<ProductID>62ProductID>
...