18/08/2 014 Relatório de Acompanhamento Técnico de Projetos Nº do Contrato / Convênio (01.23.4567.89) 0 1 . 1 0 . 0 2 Referência FINEP (1234/56) 9 9 . 0 0 2 3 3 6 / Beneficiário (a) / Conveniente Período (mm/aa até mm/aa) FAURGS 07/2010 até 06/2013 0 9 Título do projeto Infraestrutura OBAA-MILOS: Infraestrutura Multiagente para Suporte a Objetos de Aprendizagem OBAA ANEXO ZE – Biblioteca para desenvolvimento de aplicações OBAA em Java Biblioteca para desenvolvimento de aplicações OBAA em Java Versão 2.1-SNAPSHOT Título do projeto: Infraestrutura OBAA-MILOS: Infraestrutura Multiagente para Suporte a Objetos de Aprendizagem OBAA Sigla do Projeto: OBAA-MILOS Referência: 2336/09 Número: 01.10.0299.00 Executores: UFRGS – Universidade Federal do Rio Grande do Sul UNISINOS- Universidade do Vale do Rio dos Sinos Coordenador Geral: Rosa Vicari Coordenador (UNISINOS): João Carlos Gluz Proponente: FAURGS – Fundação de Apoio a UFRGS Data: 12 de abril de 2014 Autores: Luiz Henrique Longhi Rossi e Marcos Nunes Projeto Infraestrutura OBAA-MILOS 1/1 18/08/201 4 Relatório de Acompanhamento Técnico de Projetos Nº do Contrato / Convênio (01.23.4567.89) 0 1 . 1 0 . 0 2 Referência FINEP (1234/56) 9 9 . 0 0 2 3 3 6 / Beneficiário (a) / Conveniente Período (mm/aa até mm/aa) FAURGS 07/2010 até 06/2013 0 9 p. 2/15 Título do projeto Infraestrutura OBAA-MILOS: Infraestrutura Multiagente para Suporte a Objetos de Aprendizagem OBAA 1. Introdução 5 1.1. Objetivo 5 1.2. Escopo 5 1.3. Estrutura do Documento 5 2. Biblioteca OBAA para Java 7 2.1. Dependências da biblioteca 7 2.2. Aplicação no projeto FEB 8 2.3 Aplicação no Repositório Cognix 8 2.3.1 Conteúdo dos Objetos de Aprendizagem 9 2.3.2 Apresentação no tablet educacional 10 2.4. Concretização dos metadados 12 2.5. Notas da última release 15 3. Condições de Uso Projeto Infraestrutura OBAA-MILOS 15 2/15 18/08/201 4 Relatório de Acompanhamento Técnico de Projetos Nº do Contrato / Convênio (01.23.4567.89) 0 1 . 1 0 . 0 2 Referência FINEP (1234/56) 9 9 . 0 0 2 3 3 6 / Beneficiário (a) / Conveniente Período (mm/aa até mm/aa) FAURGS 07/2010 até 06/2013 0 9 p. 3/15 Título do projeto Infraestrutura OBAA-MILOS: Infraestrutura Multiagente para Suporte a Objetos de Aprendizagem OBAA LISTAS DE ABREVIATURAS API DCMI FEB FIPA IA IDE IEEE IEEE-LOM IEEE-LTSC ILO JADE JAR JASON LOM MAS MILOS MPEG MPEG-7 NS OA OAI-PMH OBAA POM RNP SE-FEB SMA SQL XML XSD JSON LGPL Applications Programmers Interface Dublin Core Metadata Initiative Federação Educa Brasil Foundation for Intelligent Physical Agents Inteligência Artificial Integrated Developer Environment Institute of Electrical and Electronics Engineers IEEE Learning Object Metadata IEEELearning Technology Standard Comitee Intelligent Learning Objects Plataforma de Agentes que suporta o padrão FIPA Java Archive Ambiente de Desenvolvimento de SMA para a linguagem AgentSpeak(L) Learning Object Metadata Multiagent System Multiagent Infrastructure for Learning Object Support Moving Picture Experts Group MPEG Multimedia Content Description Interface standards Name Space Objetos de Aprendizagem Open Archives Initiative - Protocol for Metadata Harvesting Objetos de aprendizagem Baseados em Agentes Artificiais Project Object Model Rede Nacional de ensino e Pesquisa Serviço Experimental Federação Educa Brasil Sistema Multiagente Structured Query Language Extensible Markup Language XML Schema Definition JavaScript Object Notation Lesser General Public License Projeto Infraestrutura OBAA-MILOS 3/15 18/08/201 4 Relatório de Acompanhamento Técnico de Projetos Nº do Contrato / Convênio (01.23.4567.89) 0 1 . 1 0 . 0 2 Referência FINEP (1234/56) 9 9 . 0 0 2 3 3 6 / Beneficiário (a) / Conveniente Período (mm/aa até mm/aa) FAURGS 07/2010 até 06/2013 0 9 p. 4/15 Título do projeto Infraestrutura OBAA-MILOS: Infraestrutura Multiagente para Suporte a Objetos de Aprendizagem OBAA 1. Introdução Concordando com o objetivo geral do projeto Infraestrutura OBAA-MILOS, que é de criar as bases tecnológicas para a adoção da proposta de metadados, foi desenvolvido uma biblioteca para uso do OBAA em Java e XML. A biblioteca foi desenvolvida com o intuito de facilitar que aplicações desenvolvidas na linguagem Java adotem o padrão OBAA, isso é de suma importância para difundir o padrão. Por não ser um padrão pequeno, sem o aporte de ferramentas como essa fica bem dificultada a adoção do OBAA em diversas ferramentas pelo tempo de desenvolvimento que é adicionado quando se tem que implementar o padrão inteiro. A linguagem Java foi escolhida por ser uma linguagem portável, assim como o padrão, para diversos dispositivos1. Além disso, é uma linguagem extremamente difundida, bem documentada, com muitos recursos de bibliotecas, inclusive para sistemas multiagente2. Foi desenvolvida também, uma interface XML para a biblioteca, pode-se então importar e exportar XML para a concretização dos metadados em Java. Além disso, a biblioteca contempla traduções de metadados entre inglês, português e os valores canônicos do padrão, sem a necessidade do desenvolvedor que usar essa biblioteca fazer suas próprias traduções. Na última versão a biblioteca traz outra opção de interface para os dados, conversão no formato JSON (JavaScript Object Notation), com isso, é muito facilitada a interface para uso com a web, como em HTML ou JSP. 1.1. Objetivo Este anexo tem como propósito descrever em linhas gerais como a biblioteca OBAA/Java foi desenvolvida e como é feito o seu uso. 1.2. Escopo A biblioteca Java é essencial para a popularização do padrão entre os desenvolvedores de software. 1.3. Estrutura do Documento O relatório está organizado da seguinte forma: 1 2 http://docs.oracle.com/javase/1.5.0/docs/guide/vm/index.html http://jade.tilab.com/ Projeto Infraestrutura OBAA-MILOS 4/15 18/08/201 4 Relatório de Acompanhamento Técnico de Projetos Nº do Contrato / Convênio (01.23.4567.89) 0 1 . 1 0 . 0 2 Referência FINEP (1234/56) 9 9 . 0 0 2 3 3 6 / Beneficiário (a) / Conveniente Período (mm/aa até mm/aa) FAURGS 07/2010 até 06/2013 0 9 p. 5/15 Título do projeto Infraestrutura OBAA-MILOS: Infraestrutura Multiagente para Suporte a Objetos de Aprendizagem OBAA • O capítulo 1 apresenta a introdução deste relatório; • O capítulo 2 apresenta como foi desenvolvida a biblioteca Java, sua interface XML e seu uso; • O capítulo 3 apresenta as condições de uso da biblioteca. Projeto Infraestrutura OBAA-MILOS 5/15 18/08/201 4 Relatório de Acompanhamento Técnico de Projetos Nº do Contrato / Convênio (01.23.4567.89) 0 1 . 1 0 . 0 2 Referência FINEP (1234/56) 9 9 . 0 0 2 3 3 6 / Beneficiário (a) / Conveniente Período (mm/aa até mm/aa) FAURGS 07/2010 até 06/2013 0 9 p. 6/15 Título do projeto Infraestrutura OBAA-MILOS: Infraestrutura Multiagente para Suporte a Objetos de Aprendizagem OBAA 2. Biblioteca OBAA para Java Uma biblioteca de uma linguagem orientada a objetos é um conjunto de classes (atributos e métodos) com funcionalidades específicas, com o intuito de reutilização de código-fonte. Neste caso a funcionalidade da biblioteca é possibilitar a instância de um objeto OBAA em um programa Java. Essa coleção possibilita a criação de diversas aplicações OBAA, como um validador de metadados, a biblioteca já disponibiliza a possibilidade de validar os metadados de acordo com os vocabulários restritos de certos metadados. Além disso ela já está sendo usada no projeto SE-FEB da RNP, onde é utilizada a interface XML da biblioteca. Esta aplicação é compactada no formato jar, que facilmente pode ser utilizado por diversas IDEs. 2.1. Dependências da biblioteca A biblioteca possui algumas dependências, porém todas são resolvidas se for criado um projeto Maven3, são elas: J Uint o Versão 4.10 o Apenas para os pacotes de testes Simple XML o Versão 2.6.4 o Usado para as conversões XML – Classes Java Hamcrest o Versão 1.1 o Usado apenas nos pacotes de teste Commons IO o Versão 2.3 o Usado apenas nos pacotes de teste Log4J o Versão 1.2.16 3 http://maven.apache.org/ Projeto Infraestrutura OBAA-MILOS 6/15 18/08/201 4 Relatório de Acompanhamento Técnico de Projetos Nº do Contrato / Convênio (01.23.4567.89) 0 1 . 1 0 . 0 2 Referência FINEP (1234/56) 9 9 . 0 0 2 3 3 6 / Beneficiário (a) / Conveniente Período (mm/aa até mm/aa) FAURGS 07/2010 até 06/2013 0 9 p. 7/15 Título do projeto Infraestrutura OBAA-MILOS: Infraestrutura Multiagente para Suporte a Objetos de Aprendizagem OBAA o Usado para registro de atividades (log) Cloning o Versão 1.9.0 o Usado para criar cópias de objetos OBAA Commons Codec o Versão 1.9 o Também usado para criar clones de objetos OBAA Cardme o Versão 0.3.6 o Usado para criar os V-cards contidos no padrão Saxon e Saxon-dom o Versão 8.7 o Usado para serializar e deserializar XMLs Apache commons lang o Versão 3.1 o Usado para o sistema de traduções Google Gson o Versão 2.2.4 o Usado para criar JSon a partir de objetos Java 2.2. Aplicação no projeto FEB O projeto FEB consiste numa federação de repositórios, onde os OAs são convertidos a partir de diversos padrões, DC ou LOM, por exemplo, para o padrão OBAA. Essa tradução depois de feita é utilizada no FEB sob forma de um objeto OBAA dessa biblioteca aqui descrita, depois de processadas as informações, os dados são gravados na base no formato XML também aqui definido em linhas gerais. 2.3 Aplicação no Repositório Cognix Projeto Infraestrutura OBAA-MILOS 7/15 18/08/201 4 Relatório de Acompanhamento Técnico de Projetos Nº do Contrato / Convênio (01.23.4567.89) 0 1 . 1 0 . 0 2 Referência FINEP (1234/56) 9 9 . 0 0 2 3 3 6 / Beneficiário (a) / Conveniente Período (mm/aa até mm/aa) FAURGS 07/2010 até 06/2013 0 9 p. 8/15 Título do projeto Infraestrutura OBAA-MILOS: Infraestrutura Multiagente para Suporte a Objetos de Aprendizagem OBAA Foi desenvolvido um aplicativo para o tablet educacional do MEC com planos de aula interativos para o uso com alunos do ensino fundamental nas matérias de ciências, língua portuguesa e matemática. O aplicativo foi baseado em um repositório de objetos de aprendizagem chamado COGNIX que utiliza o padrão OBAA para catalogar os objetos e prover os meta-dados dos mesmos. 2.3.1 Conteúdo dos Objetos de Aprendizagem Todos os materiais que foram desenvolvidos tem em seus dados catalográficos de acordo com o padrão OBAA: Título; Nível de ensino; Ano do ensino fundamental; Componente curricular (ciências, língua portuguesa ou matemática); Tema; Duração da aula; Modalidade de ensino; E o plano de aula é separado organizado da seguinte forma de apresentação: Objetivos: O que se pretende atingir ao final das aulas; Pré-requisitos: O que é necessário que o aluno saiba para executar as atividades dessa aula, em geral vinculados a familiaridade com os sistemas do computador educacional; Recursos / materiais de apoio: Descrição dos materiais ou espaços necessários para a realização dessas atividades propostas; Glossário: Definição de alguns termos usados nas aulas; Questões problematizadoras: Temas para debate com os alunos; Leis, princípios, teorias, teoremas, axiomas, fundamentos, regras, ...: Onde está o conteúdo propriamente dito; Para refletir com os alunos: Temas para intrigar os alunos e gerar reflexões; Atividades desenvolvidas pelo professor: É uma sugestão do formato pelo qual pode ser apresentado o material aos alunos; Tarefas dos alunos: É a descrição das atividades a serem desenvolvidas, em geral com o uso dos computadores educacionais; Para saber mais: Material ou sugestões de assuntos complementares a essa matéria; Avaliação: Os critérios para a avaliação da absorção do conhecimento por parte dos alunos; Projeto Infraestrutura OBAA-MILOS 8/15 18/08/201 4 Relatório de Acompanhamento Técnico de Projetos Nº do Contrato / Convênio (01.23.4567.89) 0 1 . 1 0 . 0 2 Referência FINEP (1234/56) 9 9 . 0 0 2 3 3 6 / Beneficiário (a) / Conveniente Período (mm/aa até mm/aa) FAURGS 07/2010 até 06/2013 0 9 p. 9/15 Título do projeto Infraestrutura OBAA-MILOS: Infraestrutura Multiagente para Suporte a Objetos de Aprendizagem OBAA Exercícios de fixação: Exercícios complementares para melhorar a absorção do conhecimento dos alunos, em geral, com o uso do computador educacional; Exercícios para avaliação: São questões sobre o conteúdo trabalhado, que são resolvidas no próprio objeto educacional; 2.3.2 Apresentação no tablet educacional Após a conversão de alguns os OAs foram publicados em um servidor que contém apenas os objetos, ainda não catalogados. Para o tablet educacional foi desenvolvido um cliente para o repositório em HTML5 onde estão catalogados todos os OAs, separados por disciplina entre português, matemática e ciências. Por meio de uma conexão a internet através dessa aplicação é possível acessar a lista de todos os objetos de cada disciplina e executar cada um deles. A opção por um repositório é útil para manter as propriedades interessantes de um objeto de aprendizagem como: reuso, adaptabilidade, versionamento, entre outros. Mantendo os objetos em um servidor, qualquer modificação, adição ou remoção de OAs é possível de ser feita. Portanto, caso o projeto tenha continuidade é possível ir adicionando objetos a essa plataforma de forma descentralizada e que seu conteúdo seja redistribuído em todos os tablets educacionais, inclusive em outros computadores normais. Exemplos: Projeto Infraestrutura OBAA-MILOS 9/15 18/08/201 4 Relatório de Acompanhamento Técnico de Projetos Nº do Contrato / Convênio (01.23.4567.89) 0 1 . 1 0 . 0 2 Referência FINEP (1234/56) 9 9 . 0 0 2 3 3 6 / Beneficiário (a) / Conveniente Período (mm/aa até mm/aa) FAURGS 07/2010 até 06/2013 0 9 p. 10/15 Título do projeto Infraestrutura OBAA-MILOS: Infraestrutura Multiagente para Suporte a Objetos de Aprendizagem OBAA Esta tela mostra um dos objetos transformados pela ferramenta GoogleSwiffy e a sua disposição na tela do tablet. Nesta tela está apresentado um dos objetos substituídos por um similar que seria a batalha naval. Projeto Infraestrutura OBAA-MILOS 10/15 18/08/201 4 Relatório de Acompanhamento Técnico de Projetos Nº do Contrato / Convênio (01.23.4567.89) 0 1 . 1 0 . 0 2 Referência FINEP (1234/56) 9 9 . 0 0 2 3 3 6 / Beneficiário (a) / Conveniente Período (mm/aa até mm/aa) FAURGS 07/2010 até 06/2013 0 9 p. 11/15 Título do projeto Infraestrutura OBAA-MILOS: Infraestrutura Multiagente para Suporte a Objetos de Aprendizagem OBAA Por fim, apresentamos a tela com um OA que foi totalmente desenvolvido durante a execução do projeto mantendo a necessidade inicial do objeto que não pode ser transformado. O objeto foi desenvolvido totalmente em HTML5 e oferece a pintura de maneira intuitiva em um tablet pois basta clicar na cor escolhida e preencher o espaço em branco. 2.4. Concretização dos metadados Projeto Infraestrutura OBAA-MILOS 11/15 18/08/201 4 Relatório de Acompanhamento Técnico de Projetos Nº do Contrato / Convênio (01.23.4567.89) 0 1 . 1 0 . 0 2 Referência FINEP (1234/56) 9 9 . 0 0 2 3 3 6 / Beneficiário (a) / Conveniente Período (mm/aa até mm/aa) FAURGS 07/2010 até 06/2013 0 9 p. 12/15 Título do projeto Infraestrutura OBAA-MILOS: Infraestrutura Multiagente para Suporte a Objetos de Aprendizagem OBAA Os metadados foram concretizados em uma classe denominada Obaa, essa classe, como todas as outras da biblioteca, possuem um construtor e setters e getters para seus atributos, sendo assim, para se saber um valor de um determinado atributo usa-se o método de get, e para atribuir o método de set para ele. obaa.getTechnical().getLocation().get(0).getText(); Assim como o padrão existem classes que compreendem mais de um atributo de mesmo nome, por exemplo general.keywords um documento pode ter mais de uma palavras-chave, nesses casos usa-se uma lista desses atributos. Como pode-se perceber no exemplo o objeto pode ter mais de uma Location, portanto o que retorna do get é uma lista, e por isso é necessário dar um novo get, utilizando a sua posição get(0), neste caso retorna o primeiro elemento da lista. O exemplo responde o valor textual (String) da primeira localização do objeto. A classe Obaa contém onze atributos: general, lifeCycle, metametadata, technical, educational, rights, relation, anootation, classification, assessibility e segmentInformationTable. Para cada um desses atributos foi criado sua respectiva classe com todos os seus metadados também representados. Os metadados valorados (aqueles que não são containers de outros) são implementados estendendo uma classe que foi denominada TextElement, onde pode-se somente gravar ou ver o valor de seu texto (set e get); já variáveis com vocabulário restrito aceita por padrão qualquer valor, porém pode ser verificado usando o método validate que caso o valor esteja correto, nada faz, caso não pertença ao domínio do valor é disparada uma exceção do tipo IllegalArgumentException, que é uma classe padrão de exceções Java, mas com uma mensagem informando qual é o vocabulário de determinado metadado. Exception in thread "main" java.lang.IllegalArgumentException: LearningContentType must be one of: fatual, conceitual, procedimental, atitudinal at cognitivabrasil.obaa.Educational.LearningContentType.validate(LearningContentType.java:61) Um Interface em XML também foi desenvolvida, usando a biblioteca SimpleXML 4 onde anotações no código-fonte são adicionadas fazendo a coerência entre os nomes dos atributos da classe java com elementos, atributos ou valores de um XML. O XML foi padronizado no formato camel case, onde todas as tags começam por letras minúsculas e letras iniciais de novas palavras se iniciam por maiúsculas (lifeCycle, resourceDescription, …), o name space (NS) usado é obaa (todo em letras minúsculas) e todos os campos criam novos elementos e atributos não são usados, como mostra o exemplo seguinte. Na definição do XSD (schema) e do NS que esses ainda estão em desenvolvimento e estão sendo usados os definidos pelo padrão LOM. 4 http://simple.sourceforge.net/ Projeto Infraestrutura OBAA-MILOS 12/15 18/08/201 4 Relatório de Acompanhamento Técnico de Projetos Nº do Contrato / Convênio (01.23.4567.89) 0 1 . 1 0 . 0 2 Referência FINEP (1234/56) 9 9 . 0 0 2 3 3 6 / Beneficiário (a) / Conveniente Período (mm/aa até mm/aa) FAURGS 07/2010 até 06/2013 0 9 p. 13/15 Título do projeto Infraestrutura OBAA-MILOS: Infraestrutura Multiagente para Suporte a Objetos de Aprendizagem OBAA <obaa:obaa xsi:schemaLocation="http://ltsc.ieee.org/xsd/LOM http://ltsc.ieee.org/xsd/obaav1.0/lom.xsd" xmlns:obaa="http://ltsc.ieee.org/xsd/LOM" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <obaa:general> <obaa:title>Trocas de calor</obaa:title> <obaa:keyword>Trocas de calor</obaa:keyword> <obaa:keyword>Condução</obaa:keyword> <obaa:keyword>Convecção</obaa:keyword> <obaa:keyword>Irradiação</obaa:keyword> <obaa:description>Esse objeto destina-se a identificar as trocas de calor.</obaa:description> </obaa:general> <obaa:lifeCycle> <obaa:status>Final</obaa:status> <obaa:contribute> <obaa:entity>Bulegon, Ana Marli</obaa:entity> <obaa:role>author</obaa:role> <obaa:date></obaa:date> </obaa:contribute> </obaa:lifeCycle> <obaa:rights> <obaa:cost>no</obaa:cost> <obaa:copyright>yes</obaa:copyright> </obaa:rights> <obaa:educational> <obaa:interactivityType>active</obaa:interactivityType> <obaa:learningResourceType>exercise</obaa:learningResourceType> <obaa:typicalAgeRange>16 anos</obaa:typicalAgeRange> <obaa:description>Esse objeto de aprendizagem pode ser utilizado pelos alunos e/ou professores na escola e/ou fora dela.</obaa:description> </obaa:educational> <obaa:technical> <obaa:location>http://hdl.handle.net/123456789/31</obaa:location> <obaa:size></obaa:size> </obaa:technical> <obaa:relation> <obaa:kind>ispartof</obaa:kind> <obaa:resource></obaa:resource> </obaa:relation> Projeto Infraestrutura OBAA-MILOS 13/15 18/08/201 4 Relatório de Acompanhamento Técnico de Projetos Nº do Contrato / Convênio (01.23.4567.89) 0 1 . 1 0 . 0 2 Referência FINEP (1234/56) 9 9 . 0 0 2 3 3 6 / Beneficiário (a) / Conveniente Período (mm/aa até mm/aa) FAURGS 07/2010 até 06/2013 0 9 p. 14/15 Título do projeto Infraestrutura OBAA-MILOS: Infraestrutura Multiagente para Suporte a Objetos de Aprendizagem OBAA <obaa:relation> <obaa:kind>isversionof</obaa:kind> <obaa:resource></obaa:resource> </obaa:relation> </obaa:obaa> O quadro acima é um exemplo de um objeto que teve seu XML gerado usando essa biblioteca no projeto FEB. Para definir o idioma que a biblioteca estará operando basta utilizar o método setLocale da classe principal OBAA: OBAA exemplo = new OBAA(); OBAA.setLocale(“pt-BR”); A partir de definida a localização como português do Brasil, os metadados devem ser usados todos nesse idioma, o mesmo acontece com o inglês, ou qualquer outro idioma que venha a ser implementado pelo padrão. 2.5. Notas da última release Correção de bugs; Melhora na interface de métodos que usam constantes; Criação de testes e exemplos de uso; Migração para o controle de versões do GitHub; Inferência de valores padronizados: o Alguns métodos tem vocabulários restritos bem abrangentes, como o “format”, que seu vocabulário são os Mime Types, se é passado o valor “pdf” para esse campo, ele é inferido “application/pdf”, por exemplo. 3. Condições de Uso A biblioteca foi desenvolvida pela empresa Cognitiva Brasil – Tecnologias Educacionais LTDA, uma empresa criada e composta por um mestre e dois doutorandos do programa de pós-graduação em computação pela UFRGS, Marcos Freitas Nunes, Paulo Schreiner e Projeto Infraestrutura OBAA-MILOS 14/15 18/08/201 4 Relatório de Acompanhamento Técnico de Projetos Nº do Contrato / Convênio (01.23.4567.89) 0 1 . 1 0 . 0 2 Referência FINEP (1234/56) 9 9 . 0 0 2 3 3 6 / Beneficiário (a) / Conveniente Período (mm/aa até mm/aa) FAURGS 07/2010 até 06/2013 0 9 p. 15/15 Título do projeto Infraestrutura OBAA-MILOS: Infraestrutura Multiagente para Suporte a Objetos de Aprendizagem OBAA Luiz Henrique Longhi Rossi, e está incubada no Centro de Empreendimentos em Informática, também da UFRGS. A empresa disponibiliza essa biblioteca sob licença LGPL5. A biblioteca está disponível para uso e pode ser baixada diretamente pelo Git Hub 6, com seu código fonte e arquivos de testes com exemplos de uso, ou utilizando o repositório maven7 adicionando os seguintes dados no arquivo POM do projeto: <distributionManagement> <repository> <id>cognitiva</id> <name>Cognitiva Brasil Repository</name> <url>scpexe://143.54.83.93/var/www/maven/</url> </repository> </distributionManagement> <dependency> <groupId>cognitivabrasil</groupId> <artifactId>obaa</artifactId> <version>1.0-SNAPSHOT</version> </dependency> 5 6 7 http://www.gnu.org/licenses https://github.com/cognitivabrasil/obaa http://maven.apache.org Projeto Infraestrutura OBAA-MILOS 15/15