ATPS_LOTDW

17
ATPS – Linguagem de Organização de Transferência de Dados para Web Etapa 1 Passo 1 A XML (eXtensible Markup Language, ou Linguagem de Marcação Estendida) é um subconjunto da SGML (Standard Generalized Markup Language, ou Linguagem de Marcação Padrão Generalizada) que permite que uma marcação específica seja criada para especificar idéias e compartilhá-las na rede. Ela tem as virtudes da SGML e da HTML sem qualquer das limitações óbvias. O XML traz uma sintaxe básica que pode ser utilizada para compartilhar informações entre diferentes computadores e aplicações. Quando combinado com outros padrões, torna possível definir o conteúdo de um documento separadamente de seu formato, tornando simples para reutilizar o código em outras aplicações para diferentes propósitos. O XML agrupa-se em tags, que é um identificador dentro do sinal de menor que “<” e do sinal de maior que “>” . Por exemplo <cras> é uma tag. Existem dois tipos de tags, as que não têm a barra e as que têm a barra. O termo <cras> é uma tag inicial e a </cras> é uma tag final. Toda tag inicial tem uma tag final correspondente. Assim se um texto tem a tag inicial <cras> ele tem que ter também, em algum lugar mais adiante, a tag final</cras>. Entre a tag de inicio e a tag final ficam as informações. Observe o exemplo para que se

description

ATPS_LOTDWATPS_LOTDWATPS_LOTDWATPS_LOTDWATPS_LOTDWATPS_LOTDWATPS_LOTDWATPS_LOTDWATPS_LOTDWATPS_LOTDWATPS_LOTDWATPS_LOTDWATPS_LOTDWATPS_LOTDWATPS_LOTDWATPS_LOTDWATPS_LOTDWATPS_LOTDWATPS_LOTDWATPS_LOTDWATPS_LOTDWATPS_LOTDWATPS_LOTDWATPS_LOTDWATPS_LOTDWATPS_LOTDW

Transcript of ATPS_LOTDW

Page 1: ATPS_LOTDW

ATPS – Linguagem de Organização de Transferência de Dados para Web

Etapa 1Passo 1A XML (eXtensible Markup Language, ou Linguagem de Marcação Estendida) é um subconjunto da SGML (Standard Generalized Markup Language, ou Linguagem de Marcação Padrão Generalizada) que permite que uma marcação específica seja criada para especificar idéias e compartilhá-las na rede. Ela tem as virtudes da SGML e da HTML sem qualquer das limitações óbvias.

O XML traz uma sintaxe básica que pode ser utilizada para compartilhar

informações entre diferentes computadores e aplicações. Quando combinado com

outros padrões, torna possível definir o conteúdo de um documento separadamente

de seu formato, tornando simples para reutilizar o código em outras aplicações para

diferentes propósitos.

O XML agrupa-se em tags, que é um identificador dentro do sinal de menor que

“<” e do sinal de maior que “>”.Por exemplo <cras> é uma tag. Existem dois tipos de

tags, as que não têm a barra e as que têm a barra. O termo <cras> é uma tag inicial e a

</cras> é uma tag final.

Toda tag inicial tem uma tag final correspondente. Assim se um texto tem a tag

inicial <cras> ele tem que ter também, em algum lugar mais adiante, a tag final</cras>.

Entre a tag de inicio e a tag final ficam as informações.

Observe o exemplo para que se

entenda melhor a utilização e posição das tags.

<cras>

<ibge>530010</ibge>

<idcras>53001012541</idcras>

<mes>6</mes>

<ano>2012</ano>

<a1>4</a1>

<a2>3</a2>

Page 2: ATPS_LOTDW

</cras>

É importante saber que, para que o computador entenda que o arquivo é do

formato XML é necessário no momento em que o usuário for salvar o arquivo, utilizar

a extensão (.xml), por exemplo, cras.xml.Para fazer um arquivo XML recomenda-se tomar cuidado na formatação do arquivo:

• Possuir todas as tags em letras minúsculas;

• Conter os elementos devidamente aninhados;

• Manter conformidade rígida com a versão adotada;

• Prover o correto fechamento das tags, inclusive de tags vazias;

• Não incluir comentários no arquivo XML;

• Não incluir anotação e documentação no arquivo XML (TAG annotation e TAG

documentation);

• Não incluir caracteres de formatação no arquivo XML ("line-feed", "carriage

return", "tab", caractere de "espaço" entre as TAGs);

-XML Schemaé uma linguagem baseada no formato XML para definição de regras de validação ("esquemas") em documentos no formato XML. Foi a primeira linguagem de esquema para XML a obter o status de recomendação por parte do W3C. Esta linguagem é uma alternativa ao DTD, cuja sintaxe não é baseada no formato XML.Foi amplamente utilizado para desenvolvimento da NF-e (Nota Fiscal Eletrônica) Brasileira.Um arquivo contendo as definições na linguagem XML Schema é chamado de XSD(XML Schema Definition), este descreve a estrutura de um documento XML.

História: Em meados de 99, o consórcio W3C (responsável por vários padrões da WEB) publicou pela primeira vez o XML Schema. Sendo a primeira iniciativa de apresentar uma alternativa ao padrão DTD. Após diversas revisões, em 2001, foi lançada a recomendação final do XML Schema e em 2004 houve algumas adaptações. Dessa data até hoje, diversos fabricantes tem incluído esse padrão em seus produtos. Existem diversas APIs para validação, bancos de dados que dão suporte a tipos de dados XML, além de bancos de dados nativos que trabalham apenas com XML e tem o XML Schema como seu mecanismo básico de controle de consistência.

Padrões de validação:Conteúdos: DTD ou XML Schema.

Desenho: CSS ou XSL.

Programação: SAX ou DOM.

Page 3: ATPS_LOTDW

Quando um documento XML é bem formado, ele pode ser validado com base em regras que podem ser definidas utilizando a linguagem XML Schema.

-DTD:A utilização de DTDs teve grande importância quando o padrão XML surgiu. Pois era o padrão para validação de documentos da linguagem antecessora da XML (o SGML) e foi utilizada como forma de validação também para o XML. Embora sendo capaz de realizar a validação, a DTD possui muitas limitações. Não existe um conjunto amplo de tipos (todos os dados são interpretados como texto), trazendo efeitos desagradáveis como validação, comparação, etc. Também não suportam espaços de nomes (namespace), forçam que os elementos sempre apareçam na ordem especificada, etc. Levando ao desuso.

-XSD:O padrão XSD (Xml Schema Definition) ou XS (Xml Schema) é a recomendação oficial do W3C desde 2001 para validação. Esse padrão consegue suprir as limitações da DTD, além de fornecer diversas funcionalidades, é possível construir tipos próprios derivados dos tipos básicos, realizar relacionamentos entre elementos de dados dentro do XML (similar aos relacionamentos entre tabelas).Em sua essência é um documento XML. Isso é, deve obedecer as mesmas regras que um documento XML. Um documento XSD também possui outras necessidades que um documento XML não necessita. Para que essas necessidades sejam atendidas é preciso definir as partes de um documento XSD.Os elementos são declarados utilizando-se a tag “element”. Os principais atributos da tag são:

name: especifica o nome do elementotype: especifica o tipo de dados do elementominOccurs: especifica o mínimo de vezes que o elemento pode aparecermaxOccurs: especifica o máximo de vezes que o elemento pode aparecer (a palavra unbounded pode ser utilizada para especificar uma quantidade ilimitada).

A declaração abaixo cria um elemento chamado “endereco” tipo string, que pode aparecer

no mínimo zero (0) vezes e no máximo uma (1) vez:

<xsd:element name="endereco" type="xsd:string" minOccurs="0" maxOccurs="1"/>

Dizem que o XML é um 10% do SGML e é verdade, porque na realidade as normas que tem são muito simples. Escreve-se em um documento de texto ASCII, igual que o HTML e no cabeçalho do documento tem que colocar o texto<?xml versao="1.0"?>

<ETIQ1>...<ETIQ2>...</ETIQ2>...</ETIQ1>

Qualquer etiqueta pode ter atributos. Podemos colocar os atributos que quisermos.

<ETIQ atributo1="valor1" atributo2="valor2"...>

<!-- Comentario -->

Passo 2

Estrutura de dados do XML:

-Primeira linha -> versão da linguagem usada e codificação, Os caracteres “?>” indicam que esta é uma

instrução de abertura de documento, para que o

interpretador XML compreenda que esta instrução

não deve ser apresentada aos usuários.

Page 4: ATPS_LOTDW

<?xml version="1.0"?>

-Tem estrutura de árvore, começa num elemento raiz e se

divide em elementos folha

-Primeiro elemento é sempre a raiz

-Relação de "pai", "filho" e "irmão" entre elementos.

-Todos elementos podem ter texto e um ou mais atributos

Exemplo 1

<?xml version=”1.0” enconding=”UTF8” ?>

<root>

<child attribute1=”something” attribute2=”something else”>

<subchild1>....text....</subchild1>

<subchild2>....text....</subchild2>

</child>

<child attribute1=”something” attribute2=”something else”> <subchild1>....text....</subchild1> <subchild2>....text....</subchild2> </child>

</root>

Exemplo 2Representação de uma loja de livros:

Page 5: ATPS_LOTDW

Tipos da codificação

Há principalmente dois tipos de codificação:

UTF-8

UTF-16

UTF suportes para UCS Transformation Format, e UCS próprio significa Universal Character

Set. O número 8 ou 16 refere o número de bocados usados para representar um caráter.

São 8 (um byte) ou 16 (dois bytes). Para os originais sem informação de codificação, UTF-8

é ajustado à revelia.

Sintaxe XML-Todos elementos DEVEM ter uma tag de fechamento

-Case sensitive: tags de início e fim devem ser escritas da mesma forma

-Todos os documentos DEVEM ter um elemento raiz

-Tags devem ser centralizadas corretamente: -Modo correto: <b><i>text</i></b>

-Modo incorreto: <b><i>text</b></i>

-Atributos entre aspas

-Caracteres reservados:

-< = &lt;

-> = &gt;

-& = &amp;

-' = &apos;

-"= &quot;

Page 6: ATPS_LOTDW

-Comentários: <!#comentario#>-Espaço em branco preservado, ao contrário de HTML

ELEMENTOS

-Um elemento é tudo que se tem após sua tag de início e antes da tag de fim (incluindo as mesmas)

Pode conter:

-Texto

-Outros elementos

-Atributos

Regras para nomear elementos:

-Pode ter letras, núzmeros e outros caracteres

-Não podem começar com números, sinais de pontuação ou com as letras xml (ou XML, Xml etc.)

-Não podem ter espaços em branco

-Não há palavras reservadas

-É bom colocar nomes simples, curtos e autoexplicativos

-Evitar usar '-', '.' e ':'

-Elementos XML podem ser extendidos (adicionando novos-elementos) sem causar erro nas aplicações que funcionavam para os elementos antigos

ATRIBUTOS

-Fornecem informações adicionais sobre elementos

-Podem ser informações que não fazem parte dos dados mas que podem ser importantes para a aplicação que manipulará os elementos

-Devem vir entre aspas simples ou dupla

-'..."texto entre apas do atributo"...'

-"...&quot;texto entre apas do atributo&quot;..."

-Não há regras quanto à diferença entre atributos e elementos,ambos podem ter a mesma informação

-Recomendado evitar uso de atributos para representar dados

Page 7: ATPS_LOTDW

-Não podem ter múltiplos valores (elementos podem)

-Não podem ter estruturas de arvore (elementos podem)

-Não são facilmente expandíveis para possiveis mudanças

ATRIBUTOS

Os trechos a seguir são equivalentes:

ATRIBUTOS

Ou, de uma maneira melhor:

ATRIBUTOS

-Usados para representar metadados (dados sobre dados),enquanto o dado em si é representado por um elemento

Page 8: ATPS_LOTDW

XML BEM

FORMADO E XML VÁLIDO

-Um documento XML bem formado é aquele que cumpre as regras de sintaxe da linguagem

-Um documento XML válido é um XML bem formado e que também cumpre as regras de uma DTD (Document Type Definition)

-Uma aplicação para de funcionar caso encontre um XML não válido

-Um DTD serve para definir a estrutura de um documento XML, com uma lista de elementos que são legais

-Pode ser declarado no documento XML referenciando para um arquivo .dtd externo ou pode ser definido no próprio XML.

VISUALIZAÇÃO

-Um documento XML é mostrado em um browser da mesma-maneira que ele é visto "cru"

-Se o documento for inválido, o browser acusará o erro e não mostrará o documento

-Pode ser combinado com CSS (não muito recomendado) ou XSLT para formatar a exibição dos dados

-XSLT: servidor ou browser transforma XML para HTML antes da exibição do documento

EDIÇÃO

-Pode ser editado em qualquer bloco de notas

Page 9: ATPS_LOTDW

-Há softwares específicos para quem deseja desenvolver documentos XML mais complexos

-Linux -> xmlcopyeditor

Passo 3: Montar um arquivo XML para interface das vendas entre a Vassoura Vassourinha XXI Ltda. E

Vassouras Lindaura YY Ltda. baseado nos dados descritos a seguir.

Tabela de Vendas – Vassoura Vassourinha Ltda-ID-LOJA-VENDEDOR-MODELO-ESPECIFICACAO-PESO-COMPRIMENTO DO CABO-MATERIAL CERDAS-QUANTIDADE-VALOR TOTAL

XML<?xml version="1.0"?><cadastro_vendas> <venda> <id>1</id> <loja>LjCentro</loja> <vendedor>12564</vendedor> <modelo>1</modelo> <especificacao>star</especificacao> <peso>100gr</peso> <comprimento_total>1.20</comprimento_total> <material_cerdas>Plástico</material_cerdas> <quantidade>10</quantidade> <valor_total>120,00</valor_total> </venda></cadastro_vendas>

Tabela de Vendas – Vassouras Lindaura Ltda:-CODIGO DE VENDA-REVENDA-MODELO-COMPRIMENTO TOTAL-MATERIAL CABO-MATERIAL CERDAS-QUANTIDADE-ENDERECO ENTREGA-CLIENTE-DESCONTO-VALOR TOTAL

XML

Page 10: ATPS_LOTDW

<?xml version="1.0"?><cadastro_venda> <venda> <codigo_de_venda>3<codigo_de_venda> <revenda>Centro</revenda> <modelo>Home</modelo> <comprimento_total>1.5</comprimento_total> <material_cabo>plástico</material_cabo> <material_cerdas>plástico</material_cerdas> <quantidade>5</quantidade> <endereço_entrega>Rua Pastoral,764 – São Lucas Viamão/RS</endereço_entrega> <cliente>Joaquim Pereira</cliente> <desconto>15,00</desconto> </venda></cadastro_venda>

Passo 4:Elaborar o Relatório 1 – Manual de Desenvolvimento XML, sendo este um documento de

referência em XML para a equipe de TI da Vassoura Vassourinha XXI Ltda., contendo os

resultados alcançados com a elaboração da Etapa 1; Esse material fará parte do relatório final.

Manual de Desenvolvimento XML

No passo 1 foi passado todo um descritivo sobre a linguagem XML, como funciona, mostrando todas as funcionalidades e características e todos os seus pontos positivos como a facilidade do uso e toda a sua eficiência e consistência. Após foi apresentada a sintaxe da linguagem XML mostrando como é montada a sintaxe inicial passando pelo elemento raiz os elementos folha e a finalização dos elementos, em seguida foi passado duas tabelas de vendas(cadastro), uma da empresa Vassoura Vassourinha Ltda e outra da empresa Vassouras Lindaura Ltda, selecionamos todos os campos relevantes das duas empresas e criamos um arquivo XML onde cada campo é um elemento deste XML.

Etapa 2Passo 1XML (eXtensible Markup Language) é uma recomendação da W3C para gerar linguagens de marcação para necessidades especiais.

A filosofia do xml é incorporada por vários princípios importantes:

Separação do conteúdo da formataçãoSimplicidade e legibilidade, tanto para humanos quanto para computadoresPossibilidade de criação de tags sem limitaçãoCriação de arquivos para validação de estrutura (chamados DTDs)Interligação de bancos de dados distintosConcentração na estrutura da informação, e não na sua aparência

Pela sua portabilidade, já que é um formato que não depende das plataformas de hardware ou de software, um banco de dados pode, através de uma aplicação, escrever em um arquivo XML, e um outro banco distinto pode ler então estes mesmos dados.

A seguir temos todos os campos com a descrição para padronização:

-Campo ID: identificador do cadastro da venda, necessária à garantia de Chave Primária para o campo, de modo que o mesmo não se repita dentro do arquivo.

Page 11: ATPS_LOTDW

-Campo Loja: Deve ser preenchido obrigatoriamente,para saber de qual loja o produto vai sair.

-Campo Vendedor: Descreve qual o vendedor efetuou a venda.

-Campo Modelo: Descreve o modelo do produto,preenchimento obrigatório.

-Campo Especificação: Sem regras específicas.

-Campo Peso: Sem regras específicas.-Campo Comprimento do Cabo: Sem regras específicas.

-Campo Material Cerdas: Descreve o tipo de material que é fabricada a vassoura.

-Campo Quantidade: Indica a quantidade de produto vendida,preenchimento obrigatório.

-Campo Valor Total: Mostra o valor total da venda, preenchimento obrigatório.

Passo 2

:Gerar um documento “DTD” (Definição do Tipo de Documento) para padronização do

arquivo XML da empresa, baseado no passo anterior.

<!ATTLIST cadastro_vendasid ID #REQUIREDloja CDATA #REQUIRED

vendedor CDATAmodelo CDATA #REQUIRED

especificacao CDATAcomprimento_cabo CDATAmaterial_cerdas CDATAquantidade CDATA #REQUIREDvalor_total CDATA #REQUIRED>

Passo 3

:Aplicar estilos aos atributos da linguagem, de modo que os atributos-árvore fiquem com

fonte maior que seus respectivos atributos-folha.

cadastro_vendas {display: block;font-family: Arial, Helvetica;font-size: 20pt;color: #FF0000;}

venda {display: block;font-family: Arial, Helvetica;font-size: 16pt;

Page 12: ATPS_LOTDW

color: #FF0000;}id{display: block;font-family: Arial, Helvetica;font-size: 12pt;color: #FF0000;}loja {display: block;font-family: Arial, Helvetica;font-size: 12pt;color: #FF0000;}

vendedor {display: block;font-family: Arial, Helvetica;font-size: 12pt;color: #FF0000;}modelo {display: block;font-family: Arial, Helvetica;font-size: 12pt;color: #FF0000;}especificacao {display: block;font-family: Arial, Helvetica;font-size: 12pt;color: #FF0000;}comprimento_cabo {display: block;font-family: Arial, Helvetica;font-size: 12pt;color: #FF0000;}material_cerdas {display: block;font-family: Arial, Helvetica;font-size: 12pt;color: #FF0000;}quantidade {display: block;font-family: Arial, Helvetica;font-size: 12pt;color: #FF0000;}valor_total {display: block;font-family: Arial, Helvetica;

Page 13: ATPS_LOTDW

font-size: 12pt;color: #FF0000;}

Passo 4

:Elaborar o Relatório 2 – Manual de desenvolvimento DTD e CSS. Baseados na especificação

de trabalhos relacionada em “Padronização”

.

Etapa 3Passo 1:Apresentar a linguagem XSL para a equipe de TI e descrever detalhadamente seu uso e sua formatação.

XSLExtensible Stylesheet Language(XSL)(Linguagem de Folha de Estilo Extensível)permite que a informação do formato seja associada com os elementos em um original de fonte para permitir a produção de um formatado original.Extensible Stylesheet Language é um vocabulário de XML criado para a finalidade exclusiva de transformar originais de XML de um estado a outro. Esse estado pode ser de XML a XML, de XML ao HTML, de XML ao texto, ou de XML a todo o outro formulário.

XSL = Estilo para XML

XML não usa tags predefinidas (podemos usar qualquer tag de nomes que nós gostamos),

e, portanto, o significado de cada tag não é bem compreendida. A tag <table> poderia

significar uma tabela HTML, uma peça de mobiliário, ou qualquer outra coisa - e um

navegador não sabe como exibi-lo. XSL descreve como o documento XML deve ser exibido.

XSL - Mais do que uma Style Sheet Idioma

XSL inicialmente consistia de três partes:

1-XSLT - uma linguagem para transformar documentos XML

2-XPath - uma linguagem para a navegação em documentos XML

3-XSL-FO - uma linguagem de formatação XML para documentos

Passo 2

:Apresentar o conceito de arquivos formatadores de XSL

O que é XSLT(XSL)?XSLT significa transformações XSLXSLT é a parte mais importante de XSLXSLT transforma um documento XML em outro documento XMLXSLT usa XPath para navegar em documentos XMLXSLT é uma recomendação da W3C

XSLT é usado para transformar um documento XML em outro documento XML, ou outro

Page 14: ATPS_LOTDW

tipo de documento que é reconhecido por um browser, como HTML e XHTML. Normalmente XSLT faz isso por transformar cada elemento XML em um (X) elemento HTML. Com XSLT você pode adicionar / remover elementos e atributos para ou a partir do arquivo de saída. Você também pode reorganizar e classificar elementos, realizar testes e tomar decisões sobre quais os elementos para se esconder e de exibição, e muito mais.Uma forma comum de descrever o processo de transformação é dizer que XSLT transforma uma árvore de códigos XML em um resultado-árvore XML.XSLT usa XPath para localizar informações em um documento XML. XPath é usado para navegar através de elementos e atributos em documentos XML.No processo de transformação, XSLT usa XPath para definir partes do documento de origem que deve corresponder a um ou mais modelos pré-definidos. Quando for encontrada uma correspondência, XSLT vai transformar a parte correspondente do documento de origem para o documento resultado. Todos os principais navegadores têm suporte para XML e XSLT.

Internet Explorer suporta XML, XSLT e XPath a partir da versão 6.

Chrome suporta XML, XSLT e XPath da versão 1.

Firefox suporta XML, XSLT e XPath a partir da versão 3.

Safari suporta XML e XSLT da versão 3.

Opera suporta XML, XSLT e XPath a partir da versão 9.

O elemento raiz que declara o documento para ser uma folha de estilo XSL é <xsl: stylesheet> ou <xsl: transform>.

Nota: <xsl: stylesheet> e <xsl: transform> são completamente sinônimos e qualquer um pode ser usado!

A maneira correta de declarar uma folha de estilo XSL de acordo com a recomendação do W3C XSLT é:

<xsl: stylesheet version = "1.0"

xmlns: xsl = "http://www.w3.org/1999/XSL/Transform">

ou:

<xsl: transformar version = "1.0"

xmlns: xsl = "http://www.w3.org/1999/XSL/Transform">

Principais ferramentas de formatação XSL.:

Microsoft. NET Framework: Classe VB.NET XslCompiledTransform.

Tiger XSLT Mapper é uma ferramenta que pode ser usada por usuários iniciantes a fim de realizar o mapeamento entre estruturas de XML. Ela cria automaticamente os mapeamentos, que podem ser editados usando a GUI de arrastar e soltar.

Kernow é uma API Java que executa as transformações programaticamente. Kernow é uma ótima escolha quando um desenvolvedor precisa executar transformações XSLT repetidamente usando uma interface visual.Algumas ferramentas XSLT com base na Web também são úteis:XSLT Online TransformationW3C Online XSLT 2.0 Service

Passo 3

:Elaborar o Relatório 3 – Manual de desenvolvimento XSL de referência no uso de

formatadores XSL

Page 15: ATPS_LOTDW

Bibliografia:

http://pt.wikipedia.org/wiki/XML

http://pt.wikipedia.org/wiki/XML_Schema

http://www.devmedia.com.br/um-estudo-sobre-o-xml-schema-para-documentos-xml/5264

http://pt.wikipedia.org/wiki/Extensible_Stylesheet_Language