Você está na página 1de 12

Aprimorando a visualizao e composio de regras SWRL na Web

ADRIANO RVOLLI DA SILVA 1 DILVAN DE ABREU MOREIRA


1 1

ICMC/USP - Instituto de Cincias Matemticas e de Computao / Universidade de So Paulo Av. Trabalhador Sancarlense, 400 So Carlos SP {rivolli,dilvan}@gmail.com

Resumo. A Web Semntica tem como meta fazer com que os contedos disponibilizados na Web tenham significado no apenas para pessoas, mas tambm que possam ser processados por mquinas. Essa meta est sendo realizada com o desenvolvimento e uso de ontologias para criar dados anotados semanticamente. Entre as distintas formas de anotao semntica, a Semantic Web Rule Language (SWRL) torna possvel criar anotaes no formato de regras que combinam regras com conceitos definidos em ontologias, especificadas em Web Ontology Language (OWL), para representar conhecimento sobre dados por meio de afirmaes condicionais. Todavia, medida que o nmero dessas regras crescem, seus desenvolvedores podem enfrentar dificuldades para gerenci-las adequadamente. Um grande conjunto de regras torna-se difcil de entender e propcio a erros, principalmente quando usado e mantido de forma colaborativa. Neste trabalho apresentado um conjunto de solues para aprimorar o uso e gerenciamento de regras SWRL, que compreendem o desenvolvimento de novas representaes visuais, tcnicas de classificao de regras e ferramenta de deteco de erros. Essas solues resultaram no SWRL Editor, uma ferramenta Web de visualizao e composio de regras que roda como um plug-in para o Web Protg. Como estudo de caso, foi utilizada a Autism Phenologue Rules, uma ontologia para caracterizar fentipos de autismo, para exemplificar um conjunto grande e complexo de regras SWRL. A partir desse estudo, uma nova representao visual especfica para as regras dessa ontologia foi elaborada, permitindo que um especialista em autismo, sem grandes conhecimentos computacionais, seja capaz de ver e editar regras sem ter de se preocupar com a sintaxe da linguagem SWRL. Os resultados obtidos indicam que o SWRL Editor uma ferramenta clara e intuitiva, contribuindo para um melhor entendimento, criao e gerenciamento de regras SWRL. Palavras-chaves: Regras SWRL; Editor de regras; Composio de regras; Visualizao de regras; Anotao de dados; Web Semntica. 1 Introduo A Web Semntica busca fazer com que os contedos disponibilizados na Web tenham significado no apenas para as pessoas, mas tambm que possam ser processados por mquinas (Berners-Lee, Hendler e Lassila, 2001). Para tanto, utiliza ontologias na representao do conhecimento e possibilita a gerao de dados anotados semanticamente. Entre as distintas formas da anotao semntica, a Semantic Web Rule Language (SWRL) possibilita criar anotaes no formato de regras, utilizando os conceitos definidos na Web Ontology Language (OWL), representando, organizando e compartilhando o conhecimento de um domnio especfico por meio de afirmaes condicionais (Horrocks et al., 2004). Todavia, medida que os conjuntos de regras crescem, os desenvolvedores podem enfrentar dificuldades para gerenci-los adequadamente. Um sistema com um grande nmero de regras torna-se difcil de entender e propcio a erros, principalmente quando mantido por mais de uma pessoa ou possui regras complexas (Hassanpour, OConnor e Das, 2009). Assim, os desenvolvedores precisam de ferramentas para criar, visualizar e gerenciar regras, que possibilitem principalmente: 1) Aquisio do conhecimento sem inconsistncias, ambiguidade e regras duplicadas; 2) Visualizao de regras e conjunto de regras de forma a facilitar o entendimento e conhecimento das mesmas. Tais requisitos motivaram a investigao e desenvolvimento de representaes visuais para abstrair os detalhes da sintaxe da linguagem SWRL e tcnicas para acrescentar ou melhorar os recursos disponveis para gerenciamento de regras. Desta forma, o objetivo central deste trabalho desenvolver solues que aprimorem o processo de

visualizao e composio de regras SWRL. Em especial, permitir que especialistas do domnio biomdico, que utilizam o conjunto de regras Autism Phenologue Rules, sejam capazes de visualizar e escrever regras (com o mnimo de conhecimento tcnico adicional), sem se deparar com os detalhes tcnicos da sintaxe da linguagem SWRL. Para atingir esse objetivo, foram explorados 4 aspectos do trabalho com regras SWRL. O primeiro aspecto explorado a visualizao de regras SWRL, ou seja, como apresentar regras e conjuntos de regras de maneira a facilitar seu entendimento e manuteno. O segundo aspecto explorado a composio das regras SWRL, para permitir que os desenvolvedores tenham um controle maior sobre o que produzido. O terceiro aspecto explorado a colaborao entre os usurios. O objetivo aqui permitir o desenvolvimento colaborativo e paralelo das regras SWRL. O quarto, e final, aspecto um estudo de caso. O objetivo foi conduzir um estudo aplicando as tcnicas desenvolvidas s regras da ontologia Autism Phenologue Rules para identificar os padres, problemas e caractersticas desse conjunto de regras. Para a concretizao dos objetivos foram realizados os seguintes passos: 1) Investigao de estudos relacionados a ontologias, anotaes, regras e suas interfaces, buscando abstraes adequadas para o uso em aplicaes de regras SWRL; 2) Desenvolvimento de uma ferramenta baseada na Web para a produo, manuteno e gerenciamento de regras SWRL, aplicando e validando as solues desenvolvidas; 3) Estudo de caso usando as regras e os especialistas no domnio do autismo, que permitiram gerar uma nova representao visual aprimorando o uso da ferramenta para este domnio; 2 Contexto Terico A Web Semntica, uma extenso da Web atual, uma representao capaz de associar significados explcitos aos contedos dos documentos disponveis na Internet, sendo que sua principal meta possibilitar que programas processem e interpretem automaticamente esses documentos (Berners-Lee, Hendler e Lassila, 2001). Para Berners-Lee, a Web Semntica deve possibilitar que computadores sejam capazes de acessar dados estruturados e de definir regras de inferncias, transformando grandes volumes de dados em informao. A tarefa de associar significados aos dados possvel pelo uso de ontologias.

O termo ontologia emprestado da filosofia e empregado na cincia da informao e em inteligncia artificial. Ontologia pode ser definida como uma especificao explcita da conceituao de um domnio, visando uma classificao padronizada e formal por meio de um vocabulrio controlado que representa semanticamente e exatamente os termos de um domnio especfico e seus relacionamentos (Gruber, 1993). A linguagem de ontologia OWL destinada para os que desejam grande expressividade na descrio dos objetos e seus relacionamentos. Em 2004, passou a ser o padro recomendado pelo W3C, para representar e compartilhar ontologias na Web (Smith, Welty e McGuinness, 2004). Alm disso, possvel aumentar a expressividade de OWL com o uso de regras SWRL e assim realizar anotaes semnticas como asseres, uma vez que, com o seu uso cria-se afirmaes condicionais que permitem a inferncia de novos conhecimentos sobre os indivduos. SWRL uma expressiva linguagem de regras que combina clusulas Horn com conceitos definidos em OWL e pode ser usada para aumentar a capacidade de inferncia sobre os indivduos em uma base de conhecimento em OWL (Horrocks et al., 2004) Regras em SWRL so compostas de duas partes: o antecedente (body) e o consequente (head). Cada regra uma implicao entre o antecedente e o consequente, que pode ser entendida como: quando as condies do antecedente so verdadeiras, ento as condies do consequente tambm so verdadeiras. Ambas as partes consistem em uma conjuno de zero ou mais tomos, no permitindo disjunes ou negao. Os tomos, por sua vez, so formados por um predicado e um ou mais argumentos (cuja quantidade e tipo so determinados pelo tipo do predicado e consequentemente pelo tipo do tomo). A especificao W3C define seis tipos de tomos (Hassanpour, O'Connor e Das, 2010), apresentados na Tabela 1. Desta forma, tomos podem se referir a: 1) indivduos; 2) valores; 3) variveis para indivduos; 4) variveis para valores; Variveis so tratadas como quantificadores universais e possuem o escopo limitado regra a qual pertence. Apenas variveis que ocorrem no antecedente podem ocorrer no consequente.

Tabela 1 Tipos de tomos SWRL


Tipo de tomo Class Descrio O predicado corresponde a uma classe definida na ontologia e recebe um indivduo1 como argumento. O predicado corresponde a uma propriedade definida na ontologia e recebe dois indivduos como argumentos e os relaciona entre si. O predicado corresponde a uma propriedade definida na ontologia e recebe dois argumentos: um indivduo e um valor2 relacionando-os. O predicado corresponde a um tipo de dado definido na ontologia e recebe um valor como argumento. O predicado corresponde ao termo sameAs ou differentFrom e recebe dois indivduos como argumentos definindo que estes so iguais ou diferentes respectivamente. O predicado corresponde a um conjunto de funes pr-definidas (comparaes, funes matemticas, lgicas, ...) ou definida pelo usurio que recebe um ou mais argumentos e retorna verdadeiro quando estes satisfazem o predicado.

3 Trabalhos Relacionados O SWRL Tab (SWRLTab, 2011) um plug-in para o editor de ontologias Protg, sua principal finalidade permitir a edio e gerenciamento de regras SWRL. As regras so apresentadas no formato tabular, sendo possvel edit-las em um editor textual integrado. A ferramenta realiza a identificao dos erros sintticos conforme a especificao SWRL (Horrocks et al., 2004), e valida o correto uso dos termos da ontologia. Alm disso, um conjunto de APIs disponibilizado permitindo, por exemplo, a inferncia das regras e realizao de testes (SWRLTab, 2011). Por outro lado, a ferramenta no possui nenhum tipo de recurso relacionado organizao das regras. O Axiom (Hassanpour, OConnor e Das, 2009) tambm um plug-in para o Protg e faz uso das APIs disponibilizadas pela ferramenta SWRL Tab. Sob a perspectiva do usurio o Axiom amplia a quantidade de recursos voltados organizao e visualizao das regras, alm de disponibilizar a edio das regras por meio de templates gerados com base na estrutura das regras. As principais tcnicas que a ferramenta agrega so: Agrupamento automtico das regras; Grficos de visualizao e dependncias das regras; Parfrases em regras (uma explicao textual da regra gerada dinamicamente); e Template para edio e aquisio de regras. Atualmente, a ferramenta est sendo migrada para a verso Web do Protg e recursos semnticos esto sendo agregada a mesma (Hassanpour, O'Connore Das, 2010). A ferramenta ACE View (Kaljurand, 2008) um editor de regras e ontologias que utiliza o Attempto Controlled English (ACE) que pode ser usado para criar, visualizar e editar axiomas OWL e regras SWRL. O ACE uma linguagem natural controlada, formada por um subconjunto da lngua inglesa, destinada representao do conhecimento. Embora se assemelhe muito linguagem natural escrita, uma linguagem formal que permite dois tipos de mapeamento: ACE OWL/SWRL e OWL ACE. Tambm desenvolvida como um plug-in do editor de ontologias Protg, o ACE View utiliza um paradigma diferente de interao diferente das demais ferramentas de regras SWRL ao utilizar apenas a linguagem natural para permitir a criao de regras e conceitos da ontologia. As sentenas descritas em ACE correspondem a axiomas OWL ou regras SWRL e as palavras correspondem a conceitos e propriedades da linguagem OWL.

Object property

Data valued property

Data range

Same/different

Built-in

Embora as regras SWRL possam ser representadas em mais de um formato, o formato de leitura humano adotado neste trabalho. Neste formato, a seta () usada para separar antecedente e consequente, o acento circunflexo (^) representa a conjuno entre os tomos e o sinal de interrogao (?) distingue as variveis dos nomes de indivduos. Usando esta sintaxe e os conceitos apresentados anteriormente, uma regra que define que o irmo do pai de um indivduo o seu tio ilustrada na Figura 1.

Figura 1 - Exemplo de regra SWRL e suas partes


1

Na Tabela 1 o termo indivduo empregado para representar indivduos ou variveis para indivduos O termo valor neste caso uma livre traduo de data value e representa um dado de um tipo primitivo definido na ontologia (Ex: inteiro, real, string). Na Tabela 1 o termo valor empregado para representar valores constantes ou variveis para valores

Alm das ferramentas SWRL, existe um grande nmero de tcnicas e ferramentas relacionadas criao de regras de negcio, que podem apontar a direo para o aprimoramento e criao de novas tcnicas relacionadas a regras SWRL (Rivollli, Orlando e Moreira, 2011). Embora os avanos das ferramentas e os estudos relacionados a criao de regras de negcio, ainda no estejam consolidados (Zacharias, 2008), o estgio atual de seu desenvolvimento est muito a frente se comparado a regras semnticas. A anlise destas ferramentas mostra as distintas formas de interao do usurio com as regras, como por exemplo: tabelas e rvores de deciso, templates para edio de regras, linguagem natural, diagramas para visualizao e editores integrados que utilizam tcnicas de agrupamento, sugesto de termos, deteco e correo de erros. 4 Aprimorando o uso de Regras SWRL Foi desenvolvido um conjunto de solues para aprimorar o uso de regras SWRL, que foram integradas a uma ferramenta Web para o gerenciamento de regras SWRL. 4.1 Representao Lgica das regras As regras SWRL so armazenadas no formato OWL como parte da prpria ontologia em que so criadas. As regras e suas partes, so representadas internamente pela ferramenta Protg como indivduos que pertencem a uma ou mais classes e possuem propriedades que os relacionam entre si, como pode ser visto na especificao W3C (Horrocks et al., 2004), nas sees XML Concrete Syntax e RDF Concrete Syntax. Alm disso, as ferramentas SWRL Tab e Axiom so muito acopladas ao Protg. Com isso, uma API para regras SWRL passou a ser desenvolvida para ser independente de uma ferramenta especfica. Nessa API, as regras so representadas de um modo mais prximo ao modelo lgico utilizado pelos desenvolvedores de regras. Na Figura 2 so apresentadas as principais classes e seus relacionamentos utilizados na representao das regras em SWRL. A partir deste modelo foi desenvolvido um procedimento automtico para extrao de informaes e caractersticas do conjunto de regras que oferece uma viso completa das mesmas. As principais caractersticas extradas foram: quantidade; mdia; mnimo e mximo; distribuio e frequncia referentes aos tomos, tipos de tomo, predicados, argumentos e tipos de argumentos.

possvel analisar estas informaes observando apenas o antecedente, o consequente, ou ambos.

Figura 2 - Principais classes do modelo lgico desenvolvido Alm disso, a API possui um mdulo de integrao do modelo com as APIs do Protg verses 3 (OWL verso 1) e 4 (OWL verso 2) para obteno dos conceitos definidos na ontologia e suas regras. Isso permitiu o desenvolvimento de um plug-in para esta ferramenta. 4.2 Representaes visuais Foram elaboradas duas representaes visuais para abstrair as regras SWRL denominadas de SWRL Highlight e Visualizao Hierrquica, apresentadas na Figura 3.

Figura 3 - Representaes visuais para regras SWRL. A) SWRL Highlight; B) Visualizao Hierrquica. Enquanto a representao visual SWRL highlight exibe a regra agregando cores aos tomos e argumentos de acordo com seu tipo a Visualizao Hierrquica abstrai a sintaxe da regra apresentando-a de modo hierrquico conforme o significado e tipo dos tomos. Ambas as representaes, ao mesmo tempo em que tornam a regra mais clara para apresentao, enriquecem com cores e smbolos o seu significado.

4.3 Similaridade entre regras Mensurar um fator que determina o quanto duas regras so similares ou diferentes se mostrou uma opo capaz de auxiliar na visualizao, organizao e no processo de composio de regras. Alm disso, a maneira como foi desenvolvido o algoritmo de similaridade permite identificar padres nas regras. O primeiro passo do algoritmo consiste na elaborao de uma matriz de caractersticas, com as linhas correspondendo s regras e as colunas correspondendo aos tomos. Para cara linha/coluna atribudo o nmero de ocorrncias do tomo na regra. Essa matriz de caractersticas permite algumas variaes. Ao invs de utilizar a regra como um todo, pode ser utilizado apenas o antecedente ou consequente. Alm disso, os argumentos podem ser descartados utilizando apenas os predicados. A partir da matriz de caractersticas obtida, possvel determinar a distncia entre duas regras P e Q quaisquer pela expresso:

O K-means o mais simples e mais utilizado algoritmo que aplica o critrio de erro quadrtico. Classificado como um algoritmo divisvel faz com que os grupos sejam obtidos em parties simples, sem uma estrutura hierrquica por exemplo. Isso faz com que possa ser aplicado em pequenos e grandes conjuntos de dados, mas precisa que o nmero de grupos seja pr-definido, fato que pode se tornar um problema. O mtodo no requer interveno e superviso humana (no supervisionado) e os dados iniciais no precisam ser prclassificados. O algoritmo utilizado para o agrupamento das regras a partir da similaridade pode ser descrito em cinco passos: 1. Selecionar k regras aleatrias, que sero utilizadas como centro dos grupos; 2. Calcular a similaridade entre cada regra e os centroides; 3. Agrupar cada regra com o centroide mais similar; 4. Calcular os novos centroides para os k grupos; 5. Voltar ao passo 2 at que haja convergncia, ou seja, nenhum grupo sofra alteraes e os centroides sejam mantidos. 4.5 Deteco de Erros

Onde: P = [p1, p2, ..., pn] e Q = [q1, q2, ..., qn] so os vetores de caractersticas das regras P e Q, respectivamente. A frmula da distncia Euclidiana, utilizada para o clculo da similaridade, fornece a distncia entre dois pontos em um plano n-dimensional (Salzberg, 1991). Com isso, quando duas regras possuem exatamente os mesmos tomos o resultado obtido pela aplicao da frmula zero, e as regras so consideradas idnticas. Desta forma, quanto maior a distncia obtida, maior a diferena entre as regras e consequentemente menor a similaridade entre elas. 4.4 Agrupamento de Regras O agrupamento automtico das regras SWRL a partir de sua estrutura (Hassanpour, OConnor e Das, 2009), faz com que os grupos gerados contenham regras cujos significados no tenham ligao entre si, uma vez que o agrupamento realizado pela quantidade e tipos de tomos que as regras possuem. Na busca de gerar grupos de regras significativos sob a perspectiva do usurio, o fator de similaridade foi considerado juntamente com a aplicao do mtodo de clusterizao K-means (Jain, Murty e Flynn, 1999).

Ferramentas capazes de identificar e corrigir erros so um dos mais importantes requisitos apontados pelos desenvolvedores de regras (Zacharias, 2008). Desta maneira, integrar estes recursos na API se mostrou essencial para aprimorar o processo de composio de regras e diminuir o nmero de erros. A partir da especificao SWRL, foi definida uma lista com os possveis erros que os desenvolvedores de regras podem cometer durante o processo de composio de regras. Alm disso, proposta uma classificao de escopo e tipo para os erros. A classificao de escopo compreende: 1) Regra; 2) tomo; 3) Argumento. A classificao de tipo compreende: 1) Aviso; 2) Erro lxico; 3) Erro sinttico; 4) Erro semntico. A listagem conta ainda com as informaes de descrio para correo e mensagem formatada para o

usurio. A deteco de erros semnticos no foi alvo desse trabalho. 4.6 SWRL Editor A ferramenta SWRL Editor integra as representaes visuais, tcnicas desenvolvidas e as demais funcionalidades previstas neste trabalho. Ela foi desenvolvida como um plug-in da ferramenta Web Protg. A arquitetura baseada em plug-ins uma das principais funcionalidades do Protg, pois esse mecanismo de extenso permite que novas funcionalidades sejam adicionadas gradativamente, o que tornou o Protg uma slida plataforma para o desenvolvimento de tecnologias semnticas (Tudorache, Vendetti e Noy, 2008). Os plug-ins tornam possvel utilizar novas bibliotecas e permitem a adio de novas abas (tabs) contendo um ou mais componentes reutilizveis (portlets) na ferramenta Web Protg. O SWRL Editor passou a ser desenvolvido aps a investigao das ferramentas de regras e a implementao da SWRL Editor API com as tcnicas e recursos anteriormente apresentados. Optou-se primeiramente pelo desenvolvimento de prottipos de baixa fidelidade, de modo a facilitar a captao de novos requisitos e permitir a simulao de diversos cenrios de uso. Foram utilizadas as tecnologias Java e Google Web Toolkit (GWT) na construo do plug-in que representa a ferramenta e consiste em uma aba e dois componentes reutilizveis: (1) Rule Properties; e (2) Rule Panel. A portlet Rule Properties subdividida em View, Composer, Information e Options. As duas primeiras ativam respectivamente os modos de visualizao e composio no Rule Panel e exibem funes para filtrar as regras, quando no modo View, e para compor regras quando no modo Composer. O painel Information exibe as informaes geradas sobre o conjunto de regras e o Options dever conter opes para customizao da ferramenta. Uma das telas da ferramenta SWRL Editor apresentada na Figura 4. A mesma encontra-se disponvel em http://biomac.icmc.usp.br:8080/SWRLEditor/. 5 Estudo de Caso: Autism Phenologue Rules Nesta seo, os resultados obtidos durante o desenvolvimento do estudo de caso usando as regras da ontologia Autism Phenologue Rules, verso 3.4.4 de maro de 2010. A partir desse estudo, foi possvel propor uma nova representao visual que atende especialmente as regras dessa ontologia e abstrai os detalhes da

linguagem SWRL, priorizando os conceitos utilizados nas anotaes.

Figura 4 Tela da ferramenta SWRL Editor A escolha da Autism Phenologue Rules para este estudo de caso motivada pelos seguintes fatores: 1) A ontologia possui um grande nmero de regras SWRL; 2) As regras so grandes, ou seja, possuem diversos tomos tanto no antecedente quanto no consequente; 3) Temos contato direto com os desenvolvedores das regras e pesquisadores do autismo (atravs do BMIR); O autismo uma srie de transtornos complexos no desenvolvimento mental, caracterizados por deficincias sociais, dificuldades de comunicao e padres restritos, repetitivos e estereotipados de comportamento (Frith e Hill, 2003). Sua escolha para o projeto Phenologue se deve ao fato da no identificao dos genes responsveis pela doena, alm de estudos recentes demonstrarem o crescimento da ocorrncia em casos de autismo na populao (Tu et al., 2008). O projeto Phenologue, coordenado pelo professor Amar Das (Stanford University), tem por objetivo buscar colaborativamente adquirir, gerenciar, e inferir novas informaes a cerca de fentipos do autismo a partir de dados experimentais e resultados publicados na literatura (Hassanpour, O'Connor e Das, 2010). O projeto envolve especialistas em autismo e informtica da universidade e do National Database for Autism Research (NDAR), que tambm um repositrio de dados de pesquisas desenvolvido pelo National Institutes of Health (NIH) para apoiar e acelerar o avano da pesquisa sobre Autism Spectrum Disorders (ASD) (NDAR, 2010). Dentro deste projeto, est sendo elaborada e criada a ontologia Autism Phenologue Rules. Esta ontologia estende ontologias

disponveis na OBO Foundry e sua criao ocorreu por meio de uma reviso sistemtica da literatura para identificar termos do domnio e relacionamentos relevantes para fentipos de autismo (Tu et al., 2008). Para realizar a categorizao dos fentipos de autismo foi utilizada a linguagem SWRL, de modo que, a cada caracterizao os pesquisadores criam regras para descrev-lo. A colaborao com os envolvidos no projeto Phenologue contribuiu na definio dos requisitos e anlise dos resultados obtidos. Eles tambm tiveram acesso a ferramenta para utilizao no desenvolvimento de novas regras e manuteno das regras atuais. 5.1 Conjunto de regras Foi feita uma anlise das principais caractersticas do conjunto de regras, utilizado a SWRL Editor API, com o objetivo de conhecer em detalhes as regras. Na Tabela 2 so apresentadas as informaes pertinentes as 156 regras presentes na ontologia. Tabela 2 Viso Geral das regras do autismo
Informao Nmero de regras Nmero de tomos Nmero de predicados distintos Mdia de tomos por nmero de regras Mn. e mx. nmero de tomos por regra Nmero de argumentos Mdia de argumentos por nmero de regras Mn. e mx.nmero de argumentos por regra Total 156 2137 155 13 [10,20] 3886 24 [18,46] Antecedente 994 147 6 [5,15] 1877 12 [9,37] Consequente 1143 9 7 [5,8] 2009 12 [9,14]

5.2 Representao visual das regras do autismo As representaes visuais desenvolvidas neste trabalho tm por objetivo facilitar e ampliar o entendimento das regras. Enquanto a visualizao SWRL Highlight melhora a disposio dos tomos e enriquece a visualizao com cores, a visualizao hierrquica oculta alguns detalhes da sintaxe e, alm de cores, agrega smbolos para cada tipo de tomo. Pelo fato de as regras do autismo apresentarem uma estrutura homognea e uma quantidade significativa de tomos, o ganho ainda maior. Visualmente, as regras so mais bem apresentadas, o que permite ao observador identificar, de maneira objetiva, os padres que a regra possui, principalmente quando a visualizao hierrquica usada. Durante a explorao das regras nas visualizaes SWRL highlight e hierrquica foram identificados padres de estruturas nas regras que possibilitaram desenvolver uma representao especifica para este conjunto, denominada de visualizao do autismo. Inicialmente, foi possvel identificar que todas as regras compartilhavam determinados tomos, sendo que apenas uma pequena parte (alguns predicados ou argumentos) que distinguem cada uma das regras. Quanto parte comum das regras, foram identificadas poucas variaes de estrutura, aps a identificao dessas estruturas, foi percebido que alguns tomos do antecedente esto ligados a tomos do consequente por meio de variveis, ou seja, se referem ao mesmo argumento. Tal padro foi observado em todas as estruturas comuns identificadas. Dessa forma, aps identificar as estruturas comuns e um padro entre essas estruturas e partes especficas das regras, foi elaborada uma representao visual capaz de representar adequadamente e objetivamente as estruturas e padres encontrados para este conjunto de regras. Na Figura 5 apresenta a representao do autismo para uma das regras do conjunto.

O grande nmero de tomos presente nas regras contrasta com a quantidade de predicados utilizados. Isso revela que embora a mdia de tomos por regra seja grande (13 no total, 6 no antecedente e 7 no consequente), se comparado com outros conjuntos, os predicados se repetem com certa frequncia nas regras. Tal observao acentuada quando observado apenas os consequentes das regras, pois todas as regras utilizam apenas 9 predicados distintos como consequentes. A menor regra possui 10 tomos (distribudos igualmente entre antecedente e consequente) e a maior regra 20 tomos, com o consequente tendo no mximo 8 tomos.

ou adio de um novo elemento (no nosso caso, uma regra) exige o reagrupamento. Para avaliar a abordagem apresentada neste trabalho, foi feito um estudo comparativo entre os agrupamentos gerados com a ferramenta Axiom e com a abordagem apresentada para o conjunto de regras Autism Phenologue Rules. O uso da estrutura da regra para realizar o agrupamento, agrega pouco valor para o entendimento das mesmas, pois o fator determinante para o agrupamento so os tipos dos tomos utilizados ao invs dos prprios tomos. No caso especfico do autismo, o fato das regras serem muito parecidas entre si (possurem muitos predicados em comum) contribuiu para que os grupos com poucas regras possuam regras similares. Por exemplo, duas regras idnticas so classificadas no mesmo grupo (pois possuem a mesma estrutura), entretanto se acrescentado um novo tomo a uma dessas regras, essa passa a pertencer a um novo grupo. Diferentemente da abordagem utilizada pela ferramenta Axiom, ao considerar o grau de similaridade na realizao dos agrupamentos, o esperado que os grupos contenham regras similares independentemente da estrutura, logo, utilizando o cenrio do exemplo anterior o mtodo desenvolvido classificar as duas regras no mesmo grupo mesmo aps a modificao. 5.5 Deteco de erros A deteco de erros realizada aps cada modificao em uma regra, durante a realizao da tarefa de composio de regras. Na ocorrncia de algum problema, um aviso apresentado ao desenvolvedor para que ele possa corrigi-lo, caso contrrio, uma mensagem de sucesso apresentada no painel de apresentao dos problemas, sem interferir na interao do usurio. Como parte do estudo de caso, o algoritmo de deteco de erros foi aplicado para todas as regras da Autism Phenologue Rules com a finalidade de identificar possveis regras com erros. Aps a aplicao desse teste, foram encontrados os seguintes problemas: 1. 2. 3. 4. 5 pares de regras com o antecedente idntico; 10 pares de regras com o consequente idntico; Duas regras repetidas; Todas as regras acusaram o erro, no qual as variveis ?date e ?qv aparecem como variveis de dois tipos distintos na mesma regra;

Figura 5 Representao visual do autismo 5.3 Similaridade entre as regras O fator de similaridade entre duas regras, gerado pela SWRL Editor API, utilizado na ferramenta em quatro momentos distintos: 1) Durante a visualizao das regras, quando possvel visualizar as regras similares a uma determinada regra; 2) Na formao dos grupos, quando esse fator utilizado pelo algoritmo de agrupamento; 3) Durante a composio das regras, quando possvel visualizar as regras similares e reutilizar os tomos dessas regras; 4) Durante a deteco de erros, quando se utiliza a similaridade para detectar regras ou partes da regra repetidas; Com o objetivo de ter uma noo geral das distncias entre as regras, foi feito o clculo da distncia entre todos os pares de regras (12090 pares, para um total de 156 regras). Foram observados o menor e o maior grau de similaridade, alm da moda e do nmero de graus distintos que ocorreram em cada situao. 5.4 Agrupamento A tcnica de agrupamento desenvolvida neste trabalho foi empregada com o objetivo de agrupar as regras de acordo com a similaridade ao invs da estrutura de regras (os tipos de tomos que a regra possui), utilizado pela ferramenta Axiom. O algoritmo escolhido para realizar o agrupamento foi o K-means (Jain, Murty e Flynn, 1999), pela sua simplicidade (a facilidade de implementao). Como desvantagens, pode-se citar: o fato de ele no ser determinstico3; a necessidade de se definir o nmero de agrupamentos a serem obtidos; e a necessidade de se executar o algoritmo novamente no caso de modificao
3

O no determinismo faz com que o algoritmo possa gerar resultados distintos para o mesmo conjunto de regras.

Embora os 3 primeiros no sejam propriamente erros, mas avisos, e possivelmente no acarretam problemas na

interpretao do conjunto de regras, tais situaes podem no ser desejveis, e, nesse caso, poderiam ter sido evitadas. O fato de algumas regras possurem o mesmo antecedente ou o mesmo consequente pode ser proposital, pois a primeira possibilidade pode simplificar o consequente4 e a segunda supre a falta do operador lgico OR no antecedente, que no suportado pela sintaxe da linguagem SWRL5. Entretanto, esses avisos podem alertar o desenvolvedor e evitar possveis equvocos por parte dele. Tais regras e combinaes foram analisadas manualmente, possibilitando realizar as seguintes constataes: As regras duplicadas apareceram no antecedente e consequente; Os demais pares de regras com antecedente idntico apresentaram pequenas diferenas no consequente, o que pareceu ter ocorrido intencionalmente. Em um dos pares o diferencial foram os valores dos predicados 'is derived from' e autismcore:subject_has_quality_or_disp osition, e nos demais apenas o predicado 'is derived from'. Com consequente idntico, as regras com o prefixo ConcludeDelayedPhrases apresentaram a seguinte diferena: ?phraseage > 36 e ?phraseage > 33, com isso possvel afirmar que a segunda engloba a primeira, tornando-a desnecessria. O mesmo ocorreu com as regras cujo prefixo ConcludeNotDelayedPhrases porm, nesse caso, a diferena foi: ?phraseage <= 36 e ?phraseage <= 33, e, assim, pode-se dizer que a primeira torna a segunda desnecessria. Todavia, as regras ConcludeDelayedPhrases e ConcludeNotDelayedPhrases so complementares (geram resultados disjuntos) e no poderiam sofrer interseco como est ocorrendo. Caso o valor da varivel ?phraseage seja igual a 35 e todas as demais condies do antecedente sejam satisfeitas a

regra classificaria o indivduo em ambos os casos. As regras com o prefixo ConcludeSavantNegative e ConcludeSavantPositive apresentaram o mesmo cenrio descrito anteriormente. Os demais pares de regras com consequente idntico apresentaram tomos adicionais no antecedente e/ou tomos repetidos com valores diferentes. Neste caso, no possvel afirmar se essas ocorrncias foram desejveis ou no. Generalizando, o problema de regras duplicadas mais crtico que os outros dois, uma vez que a redundncia, nesse contexto, no oferece nenhuma vantagem para o desenvolvedor. O motivo da ocorrncia desse erro, segundo os responsveis (do BMIR), se d pelo fato das regras serem desenvolvidas colaborativamente. A hiptese da duplicao das regras por um erro6 de um usurio foi descartada porque as regras possuem nomes que atendem o padro estabelecido. Tais identificaes tambm foram realizadas durante os testes de analise de similaridade, pois, algumas das verificaes do algoritmo de deteco de erros utilizam o resultado do mtodo de similaridade. Ao utilizar a ferramenta SWRL Editor esses problemas poderiam ser evitados uma vez que o usurio alertado quando intencionalmente ou casualmente os gera. Diferente dos demais tipos de erros os avisos no desabilitam o boto salvar e, consequentemente, no impedem que as regras possam ser salvas. O erro em que a mesma varivel aparece relacionada a dois tipos distintos na mesma regra (I-Object e DObject) eram desconhecidos pelos desenvolvedores biomdicos, que at o momento, esto usando as regras exclusivamente para modelar o domnio de conhecimento. A ferramenta usada por eles, a SWRL Tab do Protg, no identificou o erro, todavia, em tempo de execuo a mquina de inferncia JESS (usada pelo Protg para executar regras SWRL) no executaria as regras como esperado, o que alertaria sobre a existncia de algum problema. Mesmo assim, a deteco durante o desenvolvimento o mais apropriado ao permitir a identificao e correo imediata dos erros.

Suponha que as expresses A B e A C so vlidas, ento a expresso A B ^ C equivalente. Suponha que as expresses A C e B C so vlidas, ento a expresso A B C equivalente.
6

As ferramentas SWRL Tab e Axiom possuem a opo de duplicar uma regra.

6 Concluses A linguagem SWRL permite aumentar a expressividade das ontologias definidas em OWL, por meio de afirmaes condicionais (regras), proporcionando a inferncia de novos conhecimentos sobre indivduos da ontologia. Embora a sintaxe da linguagem SWRL seja simples para profissionais da computao, o mesmo no vlido para especialistas de outros domnios, no caso deste trabalho, pesquisadores biomdicos envolvidos no projeto Phenologue. Isso verdade principalmente quando os conjuntos de regras usados se tornam grandes e complexos, a mesmo desenvolvedores da rea de computao tem dificuldades em gerenci-las adequadamente. As solues desenvolvidas e apresentadas no decorrer deste trabalho, tiveram como principal objetivo contribuir para a melhoria da visualizao e composio de regras SWRL, ao gerar representaes visuais para estas regras, permitir a identificao de regras similares, o agrupamento a partir da similaridade e refinamentos na deteco de erros. Tais solues foram integradas a ferramenta Web SWRL Editor, desenvolvida como um plug-in do Web Protg, disponvel em http://biomac.icmc.usp.br:8080/SWRLEditor/. 6.1 Contribuies O objetivo central deste trabalho foi desenvolver solues que aprimorassem o processo de visualizao e composio de regras SWRL. Especialmente para uso dos pesquisadores do projeto Phenologue. Para atingir esse objetivo, foram explorados 4 aspectos do trabalho com regras SWRL, para cada um deles apresentamos as contribuies desse trabalho. Com relao a visualizao das regras, os objetivos eram o desenvolvimento de representaes visuais que abstraiam a sintaxe da linguagem SWRL; de um mtodo de agrupamento que considere a similaridade das regras; e a gerao de informaes automticas, que forneam uma viso geral e especifica, de regras e de conjunto de regras. As contribuies neste aspecto so: 1) Lista de interfaces e recursos utilizados nas ferramentas de regras a partir do levantamento das ferramentas de regras, foi possvel identificar e analisar as distintas formas de interao do usurio com as regras. Assim, as ferramentas, interfaces e recursos ilustram o cenrio atual de desenvolvimento das ferramentas de regras, especialmente as que suportam a linguagem SWRL. As interfaces identificadas compreendem: tabelas e rvores de deciso; diagrama grfico; editor de texto;

formulrios e templates; interface interativa; e linguagem natural. Alm disso, recursos como segmentao de regras, representaes visuais, agrupamento, componentes de sugesto e cones complementam e enriquecem as interfaces e, por consequncia, as mais diversas formas de interao; 2) Representaes visuais das regras SWRL foram elaboradas trs representaes para abstrair as regras SWRL: SWRL Highlight, visualizao hierrquica; e, visualizao do autismo. Enquanto as duas primeiras so genricas e podem ser empregadas para representar qualquer regra SWRL, a visualizao do autismo especfica para as regras da ontologia Autism Phenologue Rules e oculta detalhes tcnicos da linguagem SWRL sem perda de significado. Tais representaes so destinadas primeiramente para simplificar a visualizao, contudo, podem ser tambm empregadas para auxiliar na composio das regras. Alm disso, ao mesmo tempo em que simplifica a apresentao da regra, apresenta informaes adicionais sobre os tipos dos tomos. 3) Agrupamento de regras por meio da similaridade entre regras SWRL com o objetivo de mensurar o quanto duas regras so similares (ou diferentes) a tcnica desenvolvida utiliza a ocorrncia dos tomos/predicados das regras para o clculo do fator de similaridade. Com isso, quanto menor o valor obtido mais as regras so similares, de modo que, o valor 0 (zero) indica regras idnticas. Foram apresentadas variaes da tcnica com o intuito de atender a um maior nmero de cenrios de uso. Uma das aplicaes dessa estratgia consiste no agrupamento das regras a partir da similaridade entre elas (o uso de similaridade no agrupamento se mostrou mais adequado do que a utilizao da estrutura da regra); Com relao a composio das regras, os nossos objetivos eram a elaborao de uma lista com os possveis erros (classificados em escopo e tipo) que os desenvolvedores esto sujeitos e implementao de um mecanismo que faa a deteco desses erros. As contribuies neste aspecto so: 1) Elaborao de uma lista categorizada de erros em regras SWRL foi elaborada uma lista de erros dividida em quatro categorias: (1) avisos; (2) erros lxicos; (3) erros sintticos; e (4) erros semnticos. Para a elaborao da lista, foram considerados os estudos realizados e a observao das ferramentas de regras, sem deixar de atender a especificao da linguagem SWRL. 2) Organizao e deteco de erros em conjuntos de regras SWRL a partir da lista com os possveis erros que os desenvolvedores de regras podem cometer, o

mecanismo de deteco de erros foi desenvolvido. Apenas os erros classificados no tipo semntico no so suportados. Quanto a colaborao entre os usurios, o objetivo era permitir o desenvolvimento colaborativo e paralelo das regras SWRL. Para isso, foi desenvolvida uma ferramenta Web, como um plug-in do Web Protg. A contribuio neste aspecto : 1) Ferramenta SWRL Editor o SWRL Editor integra um conjunto de solues para aprimorar a visualizao e composio de regras SWRL. Embora no esteja ainda totalmente completa, possvel utilizar os principais recursos propostos neste trabalho. O grande diferencial do SWRL Editor em relao s ferramentas SWRL Tab, Axiom e ACE View so o fato dele estar disponvel na Web, seu mecanismo de busca de regras, a deteco de erros e as representaes visuais que ele usa. Por fim, o estudo de caso teve por objetivo conduzir um estudo aplicando as tcnicas desenvolvidas s regras da ontologia Autism Phenologue Rules para identificar os padres, problemas e caractersticas desse conjunto de regras. Com isso, podemos validar algumas das tcnicas empregadas e contribuir com os pesquisadores biomdicos envolvidos em seu desenvolvimento. A contribuio neste aspecto : 1) Melhoramento do conjunto de regras SWRL da ontologia Autism Phenologue Rules a API e ferramenta desenvolvida permitiram analisar as regras dessa ontologia. A anlise parte da observao de informaes como a quantidade, mdia e distribuio dos tomos, predicados e argumentos no antecedente, consequente ou ambos. Em seguida, as representaes visuais foram observadas permitindo encontrar os padres que este conjunto de regras possui. As tcnicas de anlise de similaridade, agrupamento e deteco de erros foram aplicadas a essas regras e revelaram alguns problemas sobre as mesmas. Destaca-se ainda que, aps a conduo deste estudo de caso, houve um melhoramento desse conjunto de regras, pois: (1) problemas foram solucionados; (2) os desenvolvedores se motivaram a simplificar as regras; e (3) uma nova verso do conjunto de regras foi desenvolvida. 6.2 Trabalhos futuros Como trabalhos futuros, podem ser consideradas as limitaes e restries encontradas no desenvolvimento deste trabalho. Podem ser listados como trabalhos futuros: Uma avaliao de usabilidade nas interfaces da ferramenta SWRL Editor e assim validar

quantitativamente e qualitativamente os recursos desenvolvidos e o impacto que esses causam na interao com o usurio. De modo especial, realizar um estudo comparativo entre o uso das ferramentas de regras SWRL e identificar as melhores estratgias para visualizao e composio das anotaes. O suporte linguagem natural se mostra um importante recurso para a melhoria do uso da ferramenta, uma vez que esse tipo de interface a mais natural para usurios no tcnicos em computao. Para tanto, pode-se utilizar a linguagem ACE. A implementao de todos os recursos previstos na ferramenta SWRL Editor para completar a visualizao das regras e do conjunto de regras, a rvore de deciso pode ser aplicada e tem grande potencial para cumprir este objetivo. Na composio foi previsto a sugesto de termos, contudo, alguns desenvolvedores consultados revelaram que o recurso de auto completar vem a ser mais atrativo que a sugesto. Por fim, a customizao da ferramenta se mostra um importante recurso para torn-la familiar aos usurios. A deteco de erros semnticos, para tanto desejvel ter suporte semntico na anlise de similaridade e na deteco de erros. Para tanto, no primeiro caso a matriz de caractersticas pode ser alterada para considerar informaes semntica adicionais sobre os predicados disponveis na ontologia: como hierarquia das classes e caractersticas das propriedades (transitividade, propriedades inversas, domnios, faixa de valores, etc). Na deteco de erros, alm de considerar as informaes adicionais disponveis na ontologia, necessrio recorrer a uma mquina de inferncia para identificar possveis equivalncias e inconsistncias lgicas. O agrupamento hierrquico de regras, pois, o emprego de outro algoritmo que se baseie na similaridade, porm que utilize uma estrutura hierrquica e seja determinstico, sugerido. Com isso, os grupos podem ser melhores distribudos e a reaplicao do mtodo no gera novos grupos. E por fim, a elaborao de uma metodologia genrica formal que utiliza as tcnicas propostas neste trabalho: a anlise do conjunto de regras se mostrou completa o bastante para ser generalizada em um modelo de anlise e estudo de regras SWRL. O resultado das tcnicas de similaridade somado ao conjunto de informaes disponibilizado pela ferramenta possibilita tambm classificar os conjuntos, por exemplo, em homogneo/heterogneo e simtrico/assimtrico.

References A. K. Jain, M. N. Murty, P. J. Flynn,Data clustering: A review, ACM Computer Survey, 1999, New York, NY, USA, v. 31, n. 3, p. 264-323. doi: 10.1145/331499.331. A. Rivolli, J. P. Orlando, D. A. Moreira, An Analysis of Rules-Based Systems to Improve SWRL Tools, ICEIS 2011: International Conference on Enterprise Information Systems, 2011, Beijing, China, p. 191-194. I. Horrocks, P. F. Pastel-Schneider, H. Boley, S. Tabet, B. Grosof, M. Dean, SWRL: A Semantic Web Rule Language Combining OWL and RuleML, W3C. 2004. Disponvel em: http://www.w3.org/Submission/SWRL/, acesso em Jan. 2010. K. Kaljurand, ACE View an ontology and rule editor based on Attempto Controlled English, In: Proceedings of the Fifth OWLED Workshop on OWL: Experiences and Directions (OWLED 2008), 2008, v. 432, p. 1-12. doi: 10.5167/uzh-8822. M. K. Smith, C. Welty, D. L. Mcguinness (Editors), OWL Web Ontology Language Guide, W3C, 2004. Disponvel em: http://www.w3.org/TR/owl-guide/, acesso em Nov. 2008. Ndar, Frequently Asked Questions, 2010. Disponvel em: http://ndar.nih.gov/ndarpublicweb/faq.go, acesso em Fev. 2011. S. Hassanpour, M. J. OConnor, A. K. Das, Visualizing Logical Dependencies in SWRL Rule Bases, The International RuleML Symposium on Rule Interchange and Applications, 2010, Washington, DC, p. 259-272. S. Hassanpour, M. J. OConnor, A. K. Das, Exploration of SWRL Rule Bases through Visualization, Paraphrasing, and Categorization of Rules, In: Proceedings of the 2009 International Symposium on Rule Interchange and Applications (RuleML 2009), 2009, Las Vegas, Nevada, p. 246261. doi: 10.1007/978-3-64204985-9_23.

S. Salzberg, Distance Metrics for Instance-Based Learning, In: Proceedings of ISMIS'916th International Symposium, 1991, v. 542, p. 399-408. doi: 10.1007/3-54054563-8_103. S. Tu, L. Tennakoon, M. J. Oconnor, R. Shankar, A. K. Das, Using an integrated ontology and information model for querying and reasoning about phenotypes: the case of autism, In: Proceedings of the American Medical Informatics Association, 2008, Washington, DC, v. 6, p. 727731. SWRLTab, SWRL Tab, 2011, Disponvel em: http://protege.cim3.net/cgi-bin/wiki.pl?SWRLTab, acesso em Dez. 2010. T. Berners-Lee, J. Hendler, O. Lassila, The Semantic Web, Scientific American, 2001, p. 3443. Disponvel em: http://www.scientificamerican.com/article.cfm?id=thesemantic-web, acesso em Out. 2009. T. R. Gruber, A translation approach to portable ontology specifications, Knowl. Acquis, 1993, London, UK, v. 5, n. 2, p. 199-220. doi: 10.1006/knac.1993.1008. T. Tudorache, J. Vendetti, N. F. Noy, Web-Protg: A Lightweight OWL Ontology Editor for the Web, In: OWLED 2008: OWL: Experiences and Directions, 2008, Karlsruhe, Germany. doi: 10.1.1.142.8568. U. Frith, E. L. Hill, Autism: Mind and Brain, Oxford University Press, 2003. V. Zacharias, Development and verification of rule based systems a survey of developers, In: Rule Representation, Interchange and Reasoning on the Web: International Symposium, 2008, Orlando, Florida, USA, v. 5321, p. 6-16. doi:10.1007/978-3-540-88808-6_4.