De que se trata o artigo

Apresentar para o leitor o XSD (XML Schema Definition), a linguagem de validação de documentos XML (eXtensible Markup Language) mais utilizada, demonstrando suas principais funcionalidades e aplicabilidades. Depois que o leitor estiver familiarizado com as principais terminologias do assunto iremos aplicá-las no Microsoft SQL Server.

Em que situação o tema útil

Imagine que sua empresa acaba de fechar uma parceria com um ex-concorrente e você foi incumbido de realizar a integração dos softwares. Naturalmente você optará por fazer a transferência de informações através de documentos XML, o problema é que o padrão XML é extremamente flexível, ocasionando problemas na integração. A fim de evitar retrabalhos você precisará definir uma estrutura “engessada” do documento para que possa haver uma correta integração entre os dados.

Resumo DevMan

A integração entre sistemas já é uma realidade na área de desenvolvimento de software, porém para que esta integração possa ocorrer sem maiores problemas faz-se necessário o uso de tecnologias de padronização para o meio de comunicação entre as partes. Como, atualmente, o principal meio de transmissão de dados se dá através de documentos XML, torna-se obrigatória a compressão das principais formas de validação destes documentos. Hoje em dia, a principal forma de realizar tal validação é utilizando os recursos do XML Schema. Estes recursos serão abordados no decorrer do artigo de uma forma prática e de fácil entendimento.

Autores: Dhiego Piroto e Rodrigo Oliveira Spínola

Não é de hoje que a parceria entre empresas de um mesmo segmento vem sendo usada como saída para a preservação de uma carteira de clientes. Digamos que sua empresa possui um sistema contábil de forte nome no mercado (sistema A) e um cliente que vocês pleiteiam já utiliza outro sistema que não é tão forte na área contábil (sistema B) mas que os atendem nas operações gerais; devido às grandes dificuldades que se apresentam na implantação de um novo ERP (nota DevMan 1) o cliente optou por não substituir o sistema em operação (sistema B), mas sim fazer solicitações de melhoria das suas funcionalidades. A software house que mantém o sistema B não tem interesse em realizar tais adequações, ou por falta de tempo, pessoal ou expertise. A solução mais plausível seria uma integração entre os softwares, onde o Sistema B enviaria as informações necessárias para que o sistema A pudesse funcionar a contento.

Após algumas reuniões foi definido que o transporte dos dados deverá ser feito através de documentos XML (ler Nota DevMan 2). Até aí nenhuma surpresa, o XML é atualmente, com certeza, o mais aceito e utilizado padrão de transporte de dados, devido a sua simplicidade, segurança e confiabilidade. Como se sabe, o padrão XML possui uma altíssima flexibilidade no que tange a construção de suas tags, por isso se diz que ele é linguagem auto descritiva. Contudo, toda esta elasticidade culmina em problemas para validação dos documentos a serem transmitidos. Para que este problema fosse contornado criaram-se padrões para validação dos dados na camada de transporte.

Nota DevMan 1. Riscos na implantação de um ERP

Sistemas Integrados de Gestão Empresarial (SIGE ou SIG), em inglês Enterprise Resource Planning (ERP), são sistemas de informação que integram todos os dados e processos de uma organização em um único sistema. A integração pode ser vista sob a perspectiva funcional (sistemas de: finanças, contabilidade, recursos humanos, fabricação, marketing, vendas, compras, etc) e sob a perspectiva sistêmica (sistema de processamento de transações, sistemas de informações gerenciais, sistemas de apoio a decisão, etc).

Os ERPs, em termos gerais, são uma plataforma de software desenvolvida para integrar os diversos departamentos de uma empresa, possibilitando a automação e armazenamento de todas as informações de negócios.

Existem diversos fatores que podem ocasionar uma falha na implantação de um ERP, podemos citar:

- Erros de estimativa de custos de infraestrutura.

- Desmotivação pessoal.

- Falta de capacitação dos usuários finais.

Nota DevMan 2. XML

O padrão XML vem como um meio de garantir a interoperabilidade entre sistemas, através de uma linguagem simples, fácil e confiável. Com ele os desenvolvedores podem focar na codificação de regras de negócio ou outras tarefas que demandem um nível de conhecimento específico, ao invés de criarem lógicas complexas para validação dos arquivos na camada de transporte dos dados.

Neste contexto, apresentaremos neste artigo o XSD (XML Schema Definition), a linguagem de validação de documentos XML mais utilizada, demonstrando suas principais funcionalidades e aplicabilidades. Depois que o leitor estiver familiarizado com as principais terminologias do assunto iremos aplicá-las no Microsoft SQL Server

Documentos XML podem ser classificados em bem formados ou válidos. Um documento é considerado bem formado quando segue as regras definidas pela sintaxe da XML. Para ser válido, além de seguir a sintaxe da XML, é necessário que o documento esteja de acordo com algum esquema previamente definido. O objetivo do XML Schema é, justamente, definir os blocos legais de construção de um documento XML. Neste esquema podem ser definidos: os elementos presentes no documento, os atributos que podem aparecer, quais elementos são filhos de outros elementos, a sequência em que os elementos filhos podem ser utilizados, a quantidade de elementos filhos, se um elemento pode ser vazio ou conter texto, os tipos de dados para os elementos e atributos e valores padrão para atributos dentre outros.

O XML Schema foi originalmente proposto pela Microsoft e é, atualmente, uma recomendação do W3C. Alguns pontos que têm apoiado sua utilização são:

• suporte a tipo de dados facilitando descrever o conteúdo do documento;

• a utilização da sintaxe da linguagem XML para definir o esquema. Isto possibilita sua manipulação utilizando os mesmos princípios de um documento XML além de permitir a aplicação de regras de transformação definidas em XSLT (ler Nota DevMan 3).

A Listagem 1 apresenta um exemplo de definição de esquema para o documento XML da Listagem 2. Os conceitos básicos que devem ser entendidos são os de elemento (element) e tipo complexo (complexType). A marcação element deve aparecer para cada elemento do documento XML. É nela que são definidas as possíveis propriedades de cada nó de um documento XML como: nome (name), tipo (type), atributos (attribute) e cardinalidade (minOccurs, maxOccurs e occurs). Tendo identificado os elementos, é preciso definir seu tipo. Este pode ser um tipo simples (string, data, inteiro) ou complexo. Neste último caso, utilizamos a marcação complexType para especificar como é estruturado o elemento em questão.

Nota DevMan 3. XSLT

A XSLT (XML StyLesheeT) é uma linguagem para definição de regras de transformação em documentos XML. Estas regras são definidas em folhas de estilo (do inglês stylesheet) seguindo a sintaxe da linguagem XML.

...
Quer ler esse conteúdo completo? Tenha acesso completo