Revista MSDN Magazine Edição 16 - XPath sem Traumas
Artigo Originalmente Publicado na MSDN Magazine Edição 16
XPath sem Traumas
Por Fábio Vazquez
| Este artigo discute | Este artigo usa as seguintes tecnologias |
|---|---|
|
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>10574</orderid>
<orderdate>1997-06-19T00:00:00.0000000-03:00</orderdate>
<itens>
<orderid>10574</orderid>
<productid>33</productid>
<unitprice>2.5000</unitprice>
<quantity>14</quantity>
<discount>0</discount>
</itens>
<itens>
<orderid>10574</orderid>
<productid>40</productid>
<unitprice>18.4000</unitprice>
<quantity>2</quantity>
<discount>0</discount>
</itens>
<itens>
<orderid>10574</orderid>
<productid>62</productid>
<unitprice>49.3000</unitprice>
<quantity>10</quantity>
<discount>0</discount>
</itens>
<itens>
<orderid>10574</orderid>
<productid>64</productid>
<unitprice>33.2500</unitprice>
<quantity>6</quantity>
<discount>0</discount>
</itens>
</pedidos>
<pedidos>
<orderid>10577</orderid>
<orderdate>1997-06-23T00:00:00.0000000-03:00</orderdate>
<itens>
<orderid>10577</orderid>
<productid>39</productid>
<unitprice>18.0000</unitprice>
<quantity>10</quantity>
<discount>0</discount>
</itens>
<itens>
<orderid>10577</orderid>
<productid>75</productid>
<unitprice>7.7500</unitprice>
<quantity>20</quantity>
<discount>0</discount>
</itens>
<itens>
<orderid>10577</orderid>
<productid>77</productid>
<unitprice>13.0000</unitprice>
<quantity>18</quantity>
<discount>0</discount>
</itens>
</pedidos>
<pedidos>
<orderid>10822</orderid>
<orderdate>1998-01-08T00:00:00.0000000-03:00</orderdate>
<itens>
<orderid>10822</orderid>
<productid>62</productid>
<unitprice>49.3000</unitprice>
<quantity>3</quantity>
<discount>0</discount>
</itens>
<itens>
<orderid>10822</orderid>
<productid>70</productid>
<unitprice>15.0000</unitprice>
<quantity>6</quantity>
<discount>0</discount>
</itens>
</pedidos>
</pedidositens>"Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo