Tutorial básico do Protege

Download Tutorial básico do Protege

Post on 09-Jul-2015

114 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

<p>Sumrio</p> <p>Entendendo ontologias... o O que uma ontologia? o Porque criar uma ontologia? o Como criar uma ontologia? o Como saber se est se fazendo certo? o Por onde comear? Desenvolvimento de um exemplo Para criar e salvar um projeto o Criao de um exemplo de projeto o Nomear e salvar o exemplo de projeto Criao de classes o Criao da classe Colunista (Columnist) o Criao da classe Autor (Author) o Criao das subclasses de Autor (Author) o Modificao da hierarquia o Criao de uma classe abstrata o Criao da classe Empregado (Employee) o Adio de outra superclasse a uma classe existente o Adio de uma superclasse com arrastar-e-soltar Criao de slots o Criao de um slot a partir da "etiqueta slot" (Slots tab) o Atribuio de um slot a uma classe o Criao de um slot na "etiqueta classes" (Classes tab) o Slots e herana Criao de facetas (facets) para slots o Definio de facetas de slots para salrio (salary) o Criao de um relacionamento com o uso de slots Insero de instncias Configurao do slot de apresentao Criao de um relacionamento entre instncias Personalizao de um formulrio o Redimensionamento de formas grficas (widgets) o Movimentao de formas grficas (widgets) o Personalizao dos botes das formas grficas (widgets) o Ocultamento de uma forma grfica (widget) o Apresentao de uma forma grfica (widget) oculta o Uso do layout padro Criao e armazenamento de uma consulta o Criao de uma consulta (query) o Execuo de uma consulta (query) o Armazenamento de uma consulta (query) o Recuperao de uma consulta (query)</p> <p>Entendendo ontologias...</p> <p>Esse tutorial apresenta uma introduo ao Protege, um ambiente para criao e edio de ontologias e bases de conhecimento, que permite ao usurio iniciar o projeto de uma ontologia rpida e intuitivamente. O usurio aprende a criar, modificar e salvar um projeto no Protege. Ser criado um projeto chamado "tutorial", o qual contm umas poucas classes e exemplos de um exemplo, denominado newspaper, que acompanha a instalao do Protege. Uma vez lido o tutorial, se est pronto para explorar o Protege por conta prpria. Nem todos os usurios do Protege esto familiarizados com o projeto e o desenvolvimento de ontologias. Dessa forma, alm de introduzir a interface do Protege, esse tutorial apresenta uma breve viso geral de alguns conceitos bsicos do projeto de ontologias e se baseia nos conceitos descritos no artigo Ontology Development 101 . Caso se esteja familiarizado com o projeto de ontologias, pode-se pular diretamente para o item "Criar e salvar um projeto". Para documentao mais completa, tutoriais, artigos e apresentaes, veja a pgina de documentao (documentation page ) no site do Protege. </p> <p>O que uma ontologia? Porque criar uma ontologia? Como criar uma ontologia? Como saber se est se fazendo certo? Por onde comear?</p> <p>O que uma ontologia?</p> <p>Uma ontologia descreve os conceitos bsicos em um domnio de conhecimento e define relaes entre eles. Os fundamentos bsicos do projeto de ontologias incluem: </p> <p>Classes ou conceitos; Propriedades de cada conceito, que descrevem caractersticas e atributos de um conceitos (slots, algumas vezes denominados "papis" ou "propriedades"); Facetas (facets), algumas vezes denominadas "restries sobre slots".</p> <p>Uma ontologia mais um conjunto de instncias individuais de classes constitui uma base de conhecimento.</p> <p>Porque criar uma ontologia?Uma ontologia fornece um vocabulrio comum para pesquisadores que necessitam compartilhar informaes em um domnio. Algumas razes para se criar uma ontologia so:</p> <p>Compartilhar um entendimento comum da estrutura da informao entre pessoas ou agentes de software;</p> <p>Possibilitar o reuso do domnio de conhecimento; Tornar explcitas hipteses sobre o domnio; Separar o conhecimento do domnio e o conhecimento do conhecimento operacional; Analisar o domnio de conhecimento.</p> <p>Como criar uma ontologia?No existe uma nica metodologia correta para o desenvolvimento de ontologias, nem um nico resultado correto. Desenvolver uma ontologia , em geral, um processo interativo. Comea-se com um primeiro rascunho da ontologia. Ento, essa primeira verso refinada e detalhes so inseridos. Em termos prticos, desenvolver uma ontologia inclui: 1. 2. 3. 4. Definir classes da ontologia; Arranjar as classes em uma hierarquia de subclasses e superclasses; Definir slots e descrever os valores permitidos para eles; Preencher os valores para os slots com instncias.</p> <p>Como saber se est se fazendo certo?Existem muitas possibilidades de ontologias para um determinado domnio; qualquer ontologia especfica apenas uma maneira de estruturas conceitos e relaes. Existem alguns poucos princpio que podem ajudar a tomar decises de projeto em muitos casos:</p> <p>No existe uma nica maneira correta de modelar um domnio sempre existem alternativas viveis. A melhor soluo quase sempre depende da aplicao que se est concebendo e nas previso para seu uso; O desenvolvimento de ontologias , necessariamente, um processo interativo; Conceitos em uma ontologia devem representar objetos (fsicos ou lgicos) e relaes do domnio de interesse. So muito provavelmente substantivos (objetos) ou verbos (relaes) em sentenas que descrevem o domnio.</p> <p>Por onde comear?Pode-se comear determinando para que se pretende usar a ontologia, e o quanto detalhada ou geral a ontologia deve ser. Entre vrias alternativas viveis, deve-se determinar qual delas funcionar melhor para a tarefa imaginada, a mais intuitiva, mas extensvel e a mais fcil de se manter. Uma ontologia um modelo de um domnio real no mundo e os conceitos da ontologia devem refletir esse realidade. Aps definir uma verso inicial da ontologias, pode-se avali-la e corrigi-la utilizando-a em aplicaes ou em mtodos de soluo de problemas</p> <p>(problem-solving methods ), ou discutindo com especialistas da rea. Como resultado, quase sempre ser preciso revisar a ontologia inicial. Esse processo de projeto interativo continua atravs de todo o ciclo de vida da ontologia.</p> <p>Desenvolvimento de um exemploSuponho que preciso desenvolver um sistema que auxilia a gerencia custo e a organizao de um jornal. A subpasta "examples/newspaper" do diretrio de instalao do Protege contm um projeto completo, denominado newspaper, o qual fornece uma ontologia possvel para esse domnio. Algumas questes que pode-se desejar responder so: </p> <p>Quem responsvel para cada seo do jornal? Qual o contedo de cada artigo em uma seo, e quem o autor? A quem cada autor se reporta? Qual o layout e o custo de cada seo?</p> <p>Uma vez que se tem uma idia do que preciso cobrir, pode-se listas alguns termos importantes que so necessrios. Esses termos podem incluir conceitos bsicos, propriedade que os conceitos devem ter e relaes entre eles. Para comear, pode-se apenas coletar termos sem preocupao sobre o papel que eles vo desempenhar na ontologia. No exemplo do jornal, tem-se sees. Cada seo contem contedo, tal como artigos e anncios, e cada uma tem tambm um editor, que responsvel por cada seo. Cada artigo tem um autor, e aquele autor pode ter ou no um empregado. Para cada empregado, preciso determinar o nome e o salrio, e tambm a quem ele se reporta. Ao continuar a gerar termos, se est implicitamente definindo o escopo da ontologia, ao definir o que se deve incluir ou excluir. Por exemplo, ao examinar preliminarmente o termo empregado, pode-se desejar adicionar zelador ou motorista. Entretanto, refletindo, pode-se perceber que a ontologia enfatize custos diretamente associados com a gerao de contedo e a apresentao do jornal. Dessa forma, poder-se-ia decidir no incluir zelador como um termo de interesse. Quando se tem uma lista suficientemente completa, pode-se iniciar o processo de categorizar diferentes termos, de acordo com sua funo na ontologia. Conceitos que so objetos, tais como artigo ou autor, so provavelmente representados por classes. Propriedades das classes, tais como contedo ou salrio, podem ser representados por slots; e restries sobre as propriedades ou sobre relaes entre classes ou slots, so representados por restries sobre slots. Em seguida, descreve-se como usar a interface do Protege para criar a estrutura desses componentes da ontologia.</p> <p>Para criar e salvar um projeto</p> <p>Em primeiro lugar, deve-se criar um novo projeto no Protege. Uma explicao mais detalhada do modelo de conhecimento do Protege est disponvel na seo Overview do site do Protege. </p> <p>Criao de um exemplo de projeto Nomear e salvar o exemplo de projeto</p> <p>Criao de um exemplo de projetoPara criar um exemplo de projeto, siga as instrues: 1. Inicie o Protege. Se j existe um projeto do Protege aberto, feche-o e reinicie o programa. Ao iniciar o Protege, a caixa de dilogo de boas vindas apresentada, para que se possa criar um novo projeto, abrir um projeto recente ou obter ajuda.</p> <p>Nota: Para explorar os exemplos includos no Protege, clique em Abrir um projeto existente... (Open Existing Project...) e selecione o projeto desejado. Para criar um novo projeto, selecione Arquivo | Novo projeto (File | New Project...)</p> <p>2. Clique em Criar novo projeto... (Create New Project...). Uma caixa de dilogo ser aberta, permitindo a escolha do tipo de projeto. A menos que seja necessrio um tipo especial de formato para os arquivos, apenas clique em Terminar (Finish) para aceitar a definio padro: "Protege Files (.pont and pins)".</p> <p>3. A janela do Protege aberta e as etiquetas (tabs) se tornam visveis. Um novo projeto sempre aberto na viso de Classes. As classes internas de sistema do Protege (:THING e :SYSTEM-CLASS) so apresentadas. No sero criadas instncias.</p> <p>Sumrio | Acima: Para criar e salvar um projeto | Anterior: Criao de um exemplo de projeto</p> <p>Nomear e salvar o exemplo de projetoEmbora o tutorial no seja longo, pode-se desejar sair do projeto antes de termin-lo. Salvar o projeto permite encerrar a atividade sempre que se ache conveniente. Para salvar o projeto: 1. Clique no boto "Salvar Projeto" (Save Project) (o terceiro da esquerda no menu superior do Protege). Pode-se escolher tambm "Salvar Projeto" no menu "Arquivo" (File). A caixa de dilogo de arquivos do Protege (Protege Files) ser aberta.</p> <p>2. Escolha a localizao para salvar o projeto, clique no boto a direita da linha "Projeto" (Project). A caixa de dilogo de arquivos do Protege (Protege Files), navegue para selecionar ou criar um diretrio.</p> <p>3. Entre com um nome de arquivo (por exemplo, "tutorial").</p> <p>4. Clique em "Selecionar" (select). 5. A caixa de dilogo de arquivos do Protege (Protege Files) aparecer novamente. Clique em OK para salvar os arquivos e deixar a caixa de dilogo.</p> <p>Nota: Pode-se tambm escolher uma localizao digitando o caminho completo na linha Projeto (Project). Os nomes dos outros arquivos sero preenchidos automaticamente.</p> <p>Criao de ClassesA janela principal do Protege consiste de etiquetas (tabs) que apresentam vrios aspectos do modelo de conhecimento. A etiqueta mais importante que aparece ao se iniciar um projeto a etiqueta "Classes". Em geral, classes vo corresponder a objetos, ou tipos de objetos, no domnio. No exemplo do jornal, classes podem ser pessoas, tais como editores, reprteres e vendedores; componentes do layout do jornal, tais como sees; e contedo do jornal, tais como anncios e artigos.</p> <p>Classes no Protege so mostradas em uma hierarquia com heranas, apresentadas em um "Navegador de Classes" (Class Browser), do lado esquerdo da etiqueta "Classes". As propriedades da classe selecionadas na rvore, no momento, so apresentadas no "Editor de Classes" (Class Editor) direita. Nessa seo, o objetivo ensinar como criar classes e subclasses, modificar a hierarquia de classes, criar classes abstratas, e adicionar superclasses adicionais a classes existentes. </p> <p>Criao da classe Colunista (Columnist) Criao da classe Autor (Author) Criao das subclasses de Autor (Author) Modificao da hierarquia Criao de uma classe abstrata Criao da classe Empregado (Employee) Adio de outra superclasse a uma classe existente Adio de uma superclasse com arrastar-e-soltar</p> <p>Criao da classe Colunista (columnist)Deseja-se acompanhar fonte de cada artigo, e assim, sero criados diferentes tipos de pessoas e servios que originam artigos. Primeiro, vai-se criar uma nova classe denominada colunista (columnist): 1. Selecione a etiqueta de classes (Classes Tab). 2. Localize a rea "Hierarquia de Classes" (Class Hierarchy) no painel "Navegador de Classes" (Class Browser) do lado esquerdo da janela do Protege. Essa rea mostra a hierarquia de classes e destaca a classe selecionada no momento.</p> <p>3. Assegure-se de que a classe :THING est destacada. Quase todas as classes que sero criadas estaro subordinadas a :THING. A classe :SYSTEM_CLASS usada para definir a estrutura de vrios formulrios do Protege. 4. Clique no boto Criar classe (Create Class) , do na parte superior direita do "Navegador de Classes". Uma classe criada com um nome genrico, baseado no nome do projeto, tal como "tutorial_Class_0". Pode-se ver o nome no "Navegador de Classes" e, alm disso, ele</p> <p>aparece destacado para mostrar que est selecionado.</p> <p>5. Digite Colunista (Columnist). Uma conveno recomendvel no Protege criar o primeiro carter de cada palavra em um nome de classe, em maisculo, e o resto do nome em minsculo, alm de separar as palavras por um trao baixo (underscore). 6. Tecle Enter ou clique de novo na classe destacada para completar a operao e mostrar a alterao.</p> <p>Caso ocorram problemas em renomear a classe, verifique o painel Editor de Classes (Class Editor), do lado direito da janela do Protege. O nome genrico da classe criada deve ser apresentado e destacado no campo "Nome" (Name). Se o nome genrico correto mostrado, mas no destacado, apenas d um clique duplo no campo "Nome" para editar o nome. Se um nome incorreto mostrado, ento a classe errada est selecionada na rea de "Hierarquia de Classes" (Class Hierarchy). Clique na classe que se deseja renomear.</p> <p>Criao da classe Autor (Author)Um Autor (Author) qualquer possvel fontes de um artigo, tal como um servios de notcias ou um colunista. Para criar a classe Autor (Author): 1. Marque com o mouse a classe :THING. Se isso no for feito, ser criada uma classe que subclasse de Colunista (Columnist). 2. Clique no boto Criar Classe (Create Class) (Author). e digite Autor</p> <p>3. Tecle Enter para completar a operao e apresentar a alterao.</p> <p>Note: Se acidentalmente for criada uma subclasse de Colunista (Columnist), significa que no foi selecionada a classe :THING antes de se criar a nova classe. Pode-se apagar e recriar a classe Autor (Author), clicando no boto Apagar Classe (Delete Class, o quarto boto a partir da esquerda, na parte superior da rea Class Hierarchy) para apagar a classe e, ento, clicar em :THING e recriar outra classe. Pode-se tambm rearranjar a hierarquia de classes arrastando a classe criada para a :THING e, ento, soltando o boto do mouse.</p> <p>Criao das subclasses de Autor (Author)Deseja-se agora adicionar duas novas fontes de artigos, denominadas Servio_de_Noticias (News_Service) e Editor (Editor), as quais sero criad...</p>