Ferramentas de Apoio à Criação e Edição de Ontologias: Tainacan Ontology e uma Análise Comparativa Ernesto Fonseca Veiga1 , Dalton Lopes Martins1 , Marcel Ferrante Silva1 1 Media Lab – Laboratório de Pesquisa, Desenvolvimento e Inovação em Mı́dias Interativas Universidade Federal de Goiás (UFG) Caixa Postal 131 – 74.690-900 – Goiânia – GO – Brazil {ernestofonsecaveiga, dmartins, marcelf}@gmail.com Abstract. With the need to handle large amounts of data on the web, and treat this data as significant knowledge, the Web of Data has migrated to a new paradigm, the Semantic Web. Ontologies composes the core of the semantic web, and to develop it is necessary to use tools called ontologies editors. This article presents a comparative analysis of these tools, focused on providing function- ality based on OWL constructors, inserting in this study the web-collaborative editor of ontologies: Tainacan Ontology. Resumo. Com a necessidade de lidar com grandes quantidades de dados na web, e tratar estes dados como conhecimento expressivo, a Web de Dados tem migrado para um novo paradigma, a Web Semântica. As ontologias formam o núcleo da semântica na web, e para desenvolve-las é necessária a utilização de ferramentas denominadas editores de ontologias. Este artigo apresenta uma análise comparativa dessas ferramentas, como foco na disponibilização de fun- cionalidades baseadas nos construtores OWL, inserindo neste estudo o editor de ontologias web-colaborativo: Tainacan Ontology. 1. Introdução Na era da Web de Dados, em que a informação e o conhecimento são fragmentados na rede e os recursos estão em constante evolução, o desenvolvimento de aplicativos basea- dos em dados abertos não pode seguir o paradigma em que as bases de dados são estáticas e criadas para um problema muito especı́fico em um domı́nio restrito. Neste cenário surge o requisito de bases de dados conectados, altamente compartilháveis, que permitam a in- teroperabilidade e a possibilidade de lidar com o acúmulo de conhecimento (novos dados conectados) disponı́vel na Web [Isotani and Bittencourt 2015, Hebeler et al. 2011]. Para cumprir este requisito, permitindo a conexão dos dados de diferentes bases, o compartilhamento e a interoperabilidade na Web, além de tornar as informações mais expressivas por meio da descrição de sua semântica, tem se destacado a abordagem baseada em ontologias. Como parte da proposta da Web Semântica, a concepção e o uso das ontologias estão no centro da arquitetura projetada por [Berners-Lee et al. 2001], e têm-se mostrado uma das tecnologias chave para atender a necessidade de aplica- tivos mais adequados para lidar com grandes quantidades de informações, de maneira inteligente [McGuinness 2004, Horrocks 2008]. A Web Ontology Language1 (OWL) é uma linguagem projetada para representar o conhecimento e a semântica sobre coisas, grupos de coisas e as relações entre elas, 1 W3C OWL: https://www.w3.org/OWL/ 155 sendo o padrão da Web Semântica para o desenvolvimento de ontologias, recomendado pela W3C. Baseada em lógica computacional, o conhecimento OWL pode ser explorado por software, por exemplo, para verificar a consistência do conhecimento representado ou para raciocinar novos conhecimentos implı́citos [Welty and McGuinness 2004]. A linguagem OWL provê um conjunto de classes, propriedades, indivı́duos e ax- iomas que são a base para a construção de ontologias que, por sua vez, são o modelo para disponibilização de informações na Web Semântica [Noy et al. 2001]. Para permitir a utilização destes elementos, denominados construtores na criação de ontologias, são utilizadas ferramentas denominadas editores de ontologias. Este trabalho apresenta brevemente o Tainacan Ontology, um editor de ontolo- gia criado pelo grupo de pesquisa do L3P/MediaLab2 da Universidade Federal de Goiás (UFG), cuja proposta é facilitar o processo de criação de ontologias por usuários que não possuem conhecimento técnico aprofundado; e realiza uma análise comparativa do edi- tor apresentado com as ferramentas para edição de ontologias mais comumente utilizadas nesta área. A análise comparativa teve como foco a disponibilização de interface gráfica para utilização dos recursos e construtores da linguagem OWL, e a maneira como estes são oferecidos para o usuário. O trabalho está estruturado como se segue: a Seção 2 realiza uma breve descrição dos editores de ontologias incluı́dos na comparação realizada e apresenta o Tainacan On- tology; a Seção 3 apresenta a análise comparativa dos editores em relação aos construtores OWL; e a Seção 4 sintetiza e conclui este trabalho. 2. Editores de Ontologia Esta seção apresenta os editores de ontologia analisados neste trabalho. 2.1. Protégé O Protégé 3 é um editor de ontologias open-source e framework para desenvolvimento de sistemas inteligentes. É desenvolvido e mantido pelo Stanford Center for Biomedical Informatics Research (BMIR). A ferramenta Protégé é disponibilizada em duas versões, sendo estas respectivamente destinadas para as plataformas desktop e web. A versão Protégé para desktop apoia a criação e edição de uma ou mais ontolo- gias em um único espaço de trabalho através de uma interface de usuário personalizável. Ferramentas de visualização, integradas por meio de plug-ins, permitem a navegação in- terativa nas relações da ontologia. Também oferece ferramenta para verificação de incon- sistências, fusão de ontologias, consulta de dados via linguagem SPARQL e raciocı́nio utilizando máquinas de inferências. Já a versão para web, chamada de WebProtégé, oferece como principais carac- terı́sticas que não estão presentes na versão desktop: ferramentas colaborativas, tais como compartilhamento e permissões, notas e discussões, e e-mails de notificação; acompan- hamento de revisões e histórico de alterações; interface web customizável; e múltiplos formatos para upload e download de ontologias. 2 O Laboratório de Polı́ticas Públicas Participativas (L3P) https://l3p.fic.ufg.br/ é parte integrante do MediaLab/UFG. 3 Protégé: http://protege.stanford.edu/ 156 A Figura 1 apresenta uma tela do editor de ontologias WebProtégé 4 . Figura 1. Tela de uma classe no editor de ontologias WebProtégé 2.2. OntoWiki A ferramenta OntoWiki é uma wiki de dados semânticos, permitindo a criação e edição de ontologias através de uma interface web. De maneira geral, sua abordagem é centrada na apresentação da informação e tem como objetivo simplificar a apresentação e aquisição de instâncias de dados de/para usuários. Isso é feito através da representação do conheci- mento como “mapas de informação”: cada nó no mapa de informação é representado de maneira intuitiva para os usuários. O OntoWiki possui mecanismos para facilitar edição de conteúdo através de uma interface de edição inline, manter registros de edições realizadas, reversão de alterações e mecanismos que possibilitam a colaboração de vários usuários. No que se refere à parte colaborativa, essa ferramenta objetiva facilitar a correção de erros ao invés de impedir que estes ocorram. A Figura 2 apresenta uma tela do editor de ontologias OntoWiki 5 . 2.3. Tainacan Ontology O Tainacan Ontology é um editor de ontologias baseado na plataforma Wordpress, cujo intuito é oferecer uma interface simples e intuitiva para que usuários não especialistas em ontologias e sem conhecimentos aprofundados dos padrões da Web Semântica possam 4 WebProtégé: http://webprotege.stanford.edu/ 5 OntoWiki: http://aksw.org/Projects/OntoWiki.html 157 Figura 2. Tela de uma classe no editor de ontologias OntoWiki criar suas próprias ontologias. Além de ser uma ferramenta disponibilizada para web, também oferece colaboração entre usuários, permitindo votações de termos, comentários e controle de alterações. Muitos especialistas de domı́nio, que possuem os conhecimentos necessários para modelar uma determinada área de conhecimento, muitas vezes não possuem conheci- mento aprofundado em questões técnicas como a especificação OWL e demais padrões da Web Semântica. Neste intuito, o Tainacan apoia o desenvolvimento colaborativo de ontologias, preocupando-se com as questões de usabilidade e oferecendo uma interface baseada em Wordpress, de fácil compreensão e utilização. A Figura 3 apresenta uma tela do editor de ontologias Tainacan Ontology 6 . 3. Análise Comparativa A metodologia adotada para realização da análise comparativa foi composta pelos seguintes passos: i) instalação das versões desktop do editor Protégé e criação de con- tas de usuários nos demais editores web: WebProtégé, OntoWiki e Tainacan Ontology; ii) estudo e documentação das funcionalidades e construtores disponibilizados por cada editor; e iii) criação de ontologias de teste (replicadas em cada editor) para avaliação da utilização dos construtores OWL. Com base nos principais construtores disponibilizados pela OWL 7 , a Tabela 1 ap- resenta uma análise comparativa dos editores de ontologia. Cada ferramenta foi analisada e avaliada recebendo uma das possı́veis classificações: • Interface Gráfica Web: o construtor é oferecido por meio de interface gráfica interativa com o usuário via web (a ferramenta é web). 6 Tainacan Ontology: http://minc.gi.fic.ufg.br/snic/ 7 A especificação da OWL considerada nesta avaliação é a OWL 1. 158 Figura 3. Tela de uma classe no editor de ontologias Tainacan Ontology • Interface Gráfica Desktop: o constutor é disponibilizado através de interface gráfica em plataforma desktop. • Linguagem Simplificada: a ferramenta utiliza algum tipo de linguagem simplifi- cada (ex.: OWL Manchester Syntax) para que o usuário utilize um construtor. • Linguagem OWL: o construtor deve ser inserido manualmente via texto, na lin- guagem OWL. • Não Suporta: ainda não foi implementado ou não se encontra no escopo da fer- ramenta. Em relação ao Protégé, foram avaliadas duas versões distintas da plataforma desk- top (3.4.8 e 5.0.0), que marcam diferentes gerações consolidadas da ferramenta, e também a sua versão web, o WebProtégé. O OntoWiki e o Tainacan, ambos disponibilizados para web, foram avaliados quanto as suas versões mais recentes. Constatou-se, como é demonstrado pela Tabela 1, que as versões desktop do Protégé oferecem grande parte dos construtores OWL via interface gráfica. Porém, uma vez que esta ferramenta é instalada localmente, não há opções de colaboratividade na criação e edição das ontologias. O WebProtégé, no entanto, oferece estas opções, per- mitindo o trabalho colaborativo e compartilhamento das ontologias, porém oferece um número reduzido de construtores via interface gráfica. A plataforma OntoWiki, por sua vez, também web e colaborativa, oferece poucos construtores, e sua interface de utilização não é tão intuitiva, sendo necessário um maior conhecimento técnico da ferramenta. Enquanto isso, o Tainacan Ontology se preocupa em disponibilizar praticamente a totalidade dos construtores via interface gráfica, e também ferramentas voltadas para as questões colaborativas, com opções e configurações de personalização mais completas que os demais editores. 4. Conclusões Este artigo apresentou uma análise comparativa entre os principais editores de ontolo- gias citados pela literatura, propondo o editor Tainacan Ontology como possı́vel alterna- tiva, uma vez que fornece interface web e colaborativa para a utilização do conjunto de 159 construtores da OWL. Destaca-se a importância de oferecer uma interface intuitiva e de fácil usabilidade para que usuários especialistas de domı́nio, porém com pouco ou nen- hum conhecimento técnico, possam gerar ontologias que representem com fidelidade as informações necessárias. Como trabalhos futuros desta pesquisa destacam-se o desenvolvimento de novas ferramentas para o editor de ontologias Tainacan Ontology, tais como: i) funcionalidade de importação de ontologias já existentes; e ii) uma interface para a etapa de pré-definição de classes e propriedades, buscando facilitar ainda mais o processo de construção de on- tologias. Os passos seguintes serão a disponibilização e divulgação do Tainacan Ontology à comunidade e a continuação da análise comparativa das ferramentas, abordando demais critérios e requisitos além da disponibilização dos construtores. Referências Berners-Lee, T., Hendler, J., Lassila, O., et al. (2001). The semantic web. Scientific american, 284(5):28–37. Hebeler, J., Fisher, M., Blace, R., and Perez-Lopez, A. (2011). Semantic Web Program- ming. John Wiley & Sons. Horrocks, I. (2008). Ontologies and the semantic web. Communications of the ACM, 51(12):58–67. Isotani, S. and Bittencourt, I. I. (2015). Dados Abertos Conectados. Novatec Editora. McGuinness, D. L. (2004). Question answering on the semantic web. IEEE Intelligent Systems, 19(1):82–85. Noy, N. F., McGuinness, D. L., et al. (2001). Ontology development 101: A guide to creating your first ontology. Welty, C. and McGuinness, D. (2004). OWL Web Ontology Language Guide. W3C Recommendation, W3C. http://www.w3.org/TR/2004/REC-owl-guide-20040210/. 160 Tabela 1. Comparativo das funcionalidades oferecidas por editores de ontologias 1 – Protégé 3.x 2 – Protégé 4.0+ 3 – Web Protégé 4 – Onto Wiki 5 – Tainacan Editores de Ontologia 1 2 3 4 5 Construtores RDFS rdfs:domain B B A A A rdfs:range B B A A A rdfs:subPropertyOf B B A A A rdfs:subClassOf B B A E A Construtores OWL1 owl:Class B B A A A owl:ObjectProperty B B A E A owl:DatatypeProperty B B A E A owl:equivalentProperty B B D A A owl:inverseOf B B D E A owl:FuncionalProperty B B D E A owl:InverseFuncionalProperty B B D E A owl:TransitiveProperty B B D E A owl:SymmetricProperty B B D E A owl:allValuesFrom C B D E A owl:someValuesFrom C B D E A owl:hasValue C B D E A owl:maxCardinality C B D E A owl:minCardinality C B D E A owl:cardinality C B D E A owl:intersectionOf B D D E A owl:unionOf B D D E A owl:complementOf B D D E A owl:equivalentClass B B D E A owl:disjointWith B B D A A owl:sameAs B B D E A owl:differentFrom B B D E E owl:AllDifferent B D D E E A – Interface Gráfica Web B – Interface Gráfica Desktop C – Linguagem Simplificada D – Linguagem OWL E – Não Suporta 161