Um sistema para disponibilizar informações do Planejamento Individual de Atividades Docentes utilizando JAVA e XML Taylor Augusto Savegnago (PIBIC-CNPQ) e-mail: [email protected], Angelita Maria De Ré (Orientadora), e-mail: [email protected]. Universidade Estadual do Centro-Oeste/Departamento de Ciência da Computação – Guarapuava – PR. Palavras-chave: XML; DTD; Java; DOM Resumo: Este trabalho consiste na implementação de um sistema para disponibilizar informações do Planejamento de atividades dos docentes do Departamento de Ciência da Computação - DECOMP da UNICENTRO, assim para a sua efetivação foi desenvolvido um documento XML. As implementações se deram através da ferramenta Altova XML Spy. E, a partir do documento XML pronto, sua validação foi feita de acordo com uma DTD (Document Type Definition). Também, foi implementado um sistema em Java para acessar o documento XML existente, permitindo assim a manipulação dos dados a partir das necessidades do DECOMP. Assim obteve-se um documento XML com todos os dados, sendo este validado de acordo com uma DTD e um sistema em Java que acessa o documento XML. Introdução A XML (eXtensible Markup Language) é uma linguagem de computador com a finalidade de descrever informações. Assim, representa um aperfeiçoamento da abordagem HTML (HyperText Markup Language) e faz com que a World Wide Web seja mais adequada para atividades comerciais, aprendizado e entretenimento. A XML não define nenhum conjunto de tags em particular, ao invés disso, oferece uma estrutura padrão que possibilita criar estruturas próprias ou definidas por terceiros. É uma tecnologia considerada simples com a característica importante de permitir a utilização de outras para melhorar sua performance [1]. A XML separa a descrição da estrutura dos documentos quanto a detalhes e apresentação. Assim, rótulos ou tags XML servem principalmente para descrever a estrutura dos documentos sem, no entanto, descrever a forma na qual os documentos serão apresentados por um navegador ou browser [2]. É possível definir um esquema para um ou mais documentos XML, a fim de criar regras e restrições para validar estes documentos, de maneira automática. Segundo [3], um esquema é um conjunto de regras e restrições onde se definem explicitamente o nome, o conteúdo e a estrutura de cada elemento. Para ser considerado válido, um documento XML, além de ser bem formado, deve estar de acordo com as restrições definidas no esquema. A forma utilizada nessa implementação para se definir esquemas foi a DTD (Document Type Definition). Com o objetivo de personalizar, o World Wide Web Consortium (W3C) especificou mecanismos para acessar e manipular documentos XML. Tratam-se de normas que indicam, aos desenvolvedores, a maneira de acessar os documentos. Essas incluem uma hierarquia de objetos com métodos e atributos que simplificam as tarefas relativas ao acesso a partes do documento. Tendo, como principais APIs (Application Programming Interface) o DOM (Document Object Model) e SAX (Simple API for XML). Assim, o DOM é uma interface independente de linguagem e plataforma a qual permite programas e scripts acessarem dinamicamente o conteúdo, estrutura e estilo de um documento XML ou HTML [4]. E a SAX é uma API baseada em eventos, utilizada para acessar, manipular e modificar documentos XML. Neste trabalho, foi desenvolvida uma pesquisa sobre XML, sendo implementada uma aplicação utilizando esta tecnologia. Nesta, o foco principal foi o desenvolvimento de um sistema para o DECOMP (Departamento de Ciência da Computação), que mantém atualizados os dados dos professores pertencentes ao departamento. Para esta implementação utilizou-se a linguagem Java. Material e Métodos No início da pesquisa, foi necessário um estudo detalhado dos conceitos básicos da linguagem XML. Para tanto, foi feita uma análise bibliográfica, buscando aprender conhecimentos específicos da linguagem. Para a implementação dos documentos XML foram realizados testes com diversos editores, sendo que o mais adequado foi o Altova XML Spy, pois é uma ferramenta amigável, acessível, tem muitas funcionalidades, e atendeu a todas as necessidades da pesquisa em questão. Para este estudo utilizou-se a sua home edition free [5]. Na seqüência foi definida a aplicação para o documento e os requisitos para a sua implementação. Tendo em vista as necessidades especificadas, optou-se pela implementação do documento XML do cadastro de professores do DECOMP. E, como o documento XML de cadastro dos professores é um documento que envolve a apresentação de informações subdivididas, percebeu-se a necessidade de diminuir o escopo do trabalho. Sendo que isto foi utilizado somente no período de estudo e teste preliminar da implementação. E, posteriormente, expandiu-se o conhecimento adquirido para o contexto completo da implementação. O objetivo do documento é manter um cadastro desses professores, disponibilizando informações, tais como: dados pessoais do professor, matérias ministradas, projetos de pesquisa e extensão, atividades administrativas e complementares, e também suas qualificações e participações em comissões. Sendo que o foco principal do documento é o professor, ele é constituído por um elemento chamado “professor” que é o raiz de todos os outros. E, é através dele que o documento se expande. Com o documento XML pronto, surgiu a necessidade de validá-lo de acordo com uma DTD. Nas regras definidas na DTD estão as características que definem se o documento associado a ela é considerado um documento válido. Dando continuidade foi implementado um sistema em Java para acessar o documento XML existente, permitindo assim a manipulação dos dados, como: adicionar, alterar e excluir. Para fazer o acesso a esses dados através do Java, utilizou-se a API DOM, que possui várias funções prédefinidas para manipular dados XML, assim como, para buscar informações no documento, para identificar tags, entre outras utilizadas no decorrer do trabalho. Para esta implementação utilizaram-se as ferramentas Eclipse e Netbeans 5.5. Resultados e Discussão Como observação dos resultados do trabalho desenvolvido foi dado ênfase na manipulação de documentos XML. E para tando, destaca-se a possibilidade de integrar Java com XML utilizando a API DOM. Além disso, relativo ao editor Altova XML Spy, o mesmo mostrou-se muito eficiente nas implementações, pois não foi registrado problemas nesse contexto. A partir do momento em que a implementação da DTD, e sua associação ao documento XML, o torna válido, considera-se que atende as regras definidas na DTD. Para a implementação do sistema em Java foi utilizada a ferramenta Eclipse, a qual permitiu atender os requisitos de: inclusões, exclusões, e alterações de dados contidos no documento XML. E, por último, na criação da interface gráfica do sistema foi utilizado o NetBeans 5.5, contemplando assim todo o suporte de tecnologia existente. Conclusões A importância de se definir um esquema foi demonstrado nesse trabalho, considerando que s é através desse que são delimitadas as regras a serem seguidas na elaboração do documento. Por outro lado, a tecnologia XML necessita estar associada a outras para solucionar problemas de acesso, disponibilização e apresentação da informação contida no documento. Outra fator importante a ser considerado quando ocorre a implementação de documentos XML são as ferramentas de qualidade disponíveis e sem custo de aquisição. O que o torna a tecnologia acessível a nível de pesquisa bem como no contexto comercial. Também, foi possível constatar que o tempo de resposta do sistema é muito eficiente, o que pode-se atribuir a integração da linguagem Java com XML através da API DOM. Referências Bibliográficas [1] MCGRATH, S. XML, Aplicações práticas. Rio de Janeiro: Campus, 1999. 370p. [2] SILVA FILHO, A. M. Programando com XML. Rio de Janeiro: Campus, 2004, 307 pg. [3] MASSARO, G. A.; FORNARI, M. R., Evolução de Esquemas e Documentos XML no Oracle XML DB. Disponível em: <http://www.inf.ufrgs.br/erbd/Artigos/7902.pdf>. Acesso em: 18/06/2007. [4] BRUNETTO, M. A. O. C. Linguagens e padrões para representação de documentos na web. Disponível em: <http://www.dc.uel.br/~angelica/publicados/eri2002_ultimomesmo.pdf>, Acesso em: 18/06/2007. [5] ALTOVA XML SPY 2007. Disponível em: <http://www.altova.com>, Acesso em: 18/06/2007.