DTD De Um Sistema
Pesquisas Acadêmicas: DTD De Um Sistema. Pesquise 862.000+ trabalhos acadêmicosPor: Rsilvasantos • 2/6/2014 • 1.558 Palavras (7 Páginas) • 239 Visualizações
Formatar XML com XSL usando .NET
05 de agosto de 2011 por Oscar Casagrande
Com o advento de
integração SOA e Web Services, cada dia mais temos que adaptar o
conteúdo de nossos dados com agilidade. No meu caso, eu atuo em uma
empresa na qual temos vários parceiros comerciais que consomem nosso
catálogo de produtos, e a forma de integração que temos é com o
uso de XML – bom para acelerar o desenvolvimento do XML para cada
parceiro.
Nós criávamos um XML para cada um, só que isso não era
feito de forma automática. A codificação de cada XML era feita
individualmente e os objetos eram reutilizados. Só que então tivemos
problemas com performance pois a consulta era feita em tempo real,
ou seja, os parceiros concorriam com os clientes que navegavam no
site.
O XML demorava para ser carregado e, quando era necessário
efetuar algum filtro por categoria, gênero, marca, isso era
feito na aplicação, ou seja, o catálogo era carregado inteiro e
filtrado através de um delegate. Quando eram poucos parceiros e poucos clientes, tudo bem. Mas um ano depois com muito mais acessos o
negócio ficou ruim. É isso que vou mostrar como fazer aqui, como
esse problema foi resolvido e os passos abaixo:
1. Não acessar mais
o banco diretamente, mas sim um XML base;
2. Efetuar a
formatação dos dados baseado em um XSL e não mais fazer isso na
codificação;
3. Colocar os
critérios dentro do XSL em vez de fazer na aplicação ou em
query.
Neste artigo, utilizei
Visual C# 2010 Express, Framework 4.0 e para o aplicativo teste fiz
um console application.
O que é um arquivo XSL e para que serve
Segundo a Wikpedia, XSL Transformations ou XSLT (eXtensible Stylesheet Language for
Transformation – linguagem extensível para folhas de estilo de
transformações) é uma linguagem de marcação XML usada para
criar documentos XSL que, por sua vez, definem a apresentação dos
documentos XML nos browsers e outros aplicativos que a suportem. Ou seja, serve para formatar a saída de dados do XML
Fonte: XSLT – Wikipédia
Agora que estamos
alinhados com o cenário, vamos começar.
XML Base
Isso é algo muito
tranquilo. Foi criado um JOB que gera um XML em uma pasta visível
pela aplicação com todo catálogo de produtos.
Para esse estudo,
vamos usar o exemplo abaixo:
<?xml version="1.0"
encoding="utf-8" ?>
<catalogo>
<item>
<Sku>500135</Sku>
<Descricao><![CDATA[Bola de Tênis Wilson
Championship ]]></Descricao>
<CodigoCategoria>102</CodigoCategoria>
<Categoria>RACKET
</Categoria>
<CodigoMarca>15</CodigoMarca>
<Marca>WILSON</Marca>
</item>
<item>
<Sku>500139</Sku>
<Descricao><![CDATA[Haltere Ferro Centauro Meio
Kg]]></Descricao>
<CodigoCategoria>107</CodigoCategoria>
<Categoria>BODY
</Categoria>
<CodigoMarca>999</CodigoMarca>
<Marca>FORTE</Marca>
</item>
<item>
<Sku>500140</Sku>
<Descricao><![CDATA[Halteres Ferro Centauro 1 Kg
]]></Descricao>
<CodigoCategoria>107</CodigoCategoria>
<Categoria>BODY
</Categoria>
<CodigoMarca>999</CodigoMarca>
<Marca>FORTE</Marca>
</item>
<item>
<Sku>500141</Sku>
<Descricao><![CDATA[Halteres Ferro Centauro 2Kg
]]></Descricao>
<CodigoCategoria>107</CodigoCategoria>
<Categoria>BODY
</Categoria>
<CodSubGrupo>34</CodSubGrupo>
<Marca>FORTE</Marca>
...