Transcript

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 1/63

 

 

Sumário   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 começar? 

  Desenvolvimento de um exemplo   Para criar e salvar um projeto

o  Criação de um exemplo de projeto o  Nomear e salvar o exemplo de projeto 

  Criação de classes o  Criação da classe Colunista (Columnist) o  Criação da classe Autor (Author) o  Criação das subclasses de Autor (Author) o  Modificação da hierarquia o  Criação de uma classe abstrata o  Criação da classe Empregado (Employee) o  Adição de outra superclasse a uma classe existente o  Adição de uma superclasse com arrastar-e-soltar 

  Criação de slots o  Criação de um slot a partir da "etiqueta slot" (Slots tab) o  Atribuição de um slot a uma classe o  Criação de um slot na "etiqueta classes" (Classes tab) o  Slots e herança 

  Criação de facetas (facets) para slots o  Definição de facetas de slots para salário (salary) o  Criação de um relacionamento com o uso de slots 

  Inserção de instâncias   Configuração do slot de apresentação   Criação de um relacionamento entre instâncias   Personalização de um formulário 

o  Redimensionamento de formas gráficas (widgets) o  Movimentação de formas gráficas (widgets) 

o  Personalização dos botões das formas gráficas (widgets) o  Ocultamento de uma forma gráfica (widget) o  Apresentação de uma forma gráfica (widget) oculta o  Uso do layout padrão 

  Criação e armazenamento de uma consulta o  Criação de uma consulta (query) o  Execução de uma consulta (query) o  Armazenamento de uma consulta (query) o  Recuperação de uma consulta (query) 

Entendendo ontologias...

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 2/63

 

Esse tutorial apresenta uma introdução ao Protege, um ambiente para criaçãoe edição de ontologias e bases de conhecimento, que permite ao usuárioiniciar o projeto de uma ontologia rápida e intuitivamente. O usuário aprendea criar, modificar e salvar um projeto no Protege. Será criado um projetochamado "tutorial", o qual contém umas poucas classes e exemplos de umexemplo, denominado newspaper, que acompanha a instalação do Protege.Uma vez lido o tutorial, se está pronto para explorar o Protege por contaprópria.

Nem todos os usuários do Protege estão familiarizados com o projeto e odesenvolvimento de ontologias. Dessa forma, além de introduzir a interfacedo Protege, esse tutorial apresenta uma breve visão geral de algunsconceitos básicos do projeto de ontologias e se baseia nos conceitos descritosno artigo Ontology Development 101  . Caso se esteja familiarizado com oprojeto de ontologias, pode-se pular diretamente para o item "Criar e salvarum projeto". Para documentação mais completa, tutoriais, artigos eapresentações, veja a página de documentação (documentation page ) no

site do Protege.

  O que é uma ontologia?   Porque criar uma ontologia?   Como criar uma ontologia?   Como saber se está se fazendo certo?   Por onde começar?     O que é uma ontologia?

Uma ontologia descreve os conceitos básicos em um domínio deconhecimento e define relações entre eles. Os fundamentos básicos doprojeto de ontologias incluem:

  Classes ou conceitos;  Propriedades de cada conceito, que descrevem características e

atributos de um conceitos (slots, algumas vezes denominados "papéis"ou "propriedades");

  Facetas (facets), algumas vezes denominadas "restrições sobre slots".

Uma ontologia mais um conjunto de instâncias individuais de classes constituiuma base de conhecimento.

Porque criar uma ontologia?

Uma ontologia fornece um vocabulário comum para pesquisadores quenecessitam compartilhar informações em um domínio. Algumas razões parase criar uma ontologia são:

  Compartilhar um entendimento comum da estrutura da informaçãoentre pessoas ou agentes de software;

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 3/63

 

  Possibilitar o reuso do domínio de conhecimento;  Tornar explícitas hipóteses sobre o domínio;  Separar o conhecimento do domínio e o conhecimento do

conhecimento operacional;  Analisar o domínio de conhecimento.

Como criar uma ontologia?

Não existe uma única metodologia correta para o desenvolvimento deontologias, nem um único resultado correto. Desenvolver uma ontologia é,em geral, um processo interativo. Começa-se com um primeiro rascunho daontologia. Então, essa primeira versão é refinada e detalhes são inseridos.

Em termos práticos, desenvolver uma ontologia inclui:

1.  Definir classes da ontologia;2.  Arranjar as classes em uma hierarquia de subclasses e superclasses;3.  Definir slots e descrever os valores permitidos para eles;4.  Preencher os valores para os slots com instâncias.

Como saber se está se fazendo certo?

Existem muitas possibilidades de ontologias para um determinado domínio;qualquer ontologia específica é apenas uma maneira de estruturas conceitose relações. Existem alguns poucos princípio que podem ajudar a tomar

decisões de projeto em muitos casos:

  Não existe uma única maneira correta de modelar um domínio -sempre existem alternativas viáveis. A melhor solução quase sempredepende da aplicação que se está concebendo e nas previsão para seuuso;

  O desenvolvimento de ontologias é, necessariamente, um processointerativo;

  Conceitos em uma ontologia devem representar objetos (físicos oulógicos) e relações do domínio de interesse. São muito provavelmentesubstantivos (objetos) ou verbos (relações) em sentenças quedescrevem o domínio.

Por onde começar?

Pode-se começar determinando para que se pretende usar a ontologia, e oquanto detalhada ou geral a ontologia deve ser. Entre várias alternativasviáveis, deve-se determinar qual delas funcionará melhor para a tarefaimaginada, a mais intuitiva, mas extensível e a mais fácil de se manter. Umaontologia é um modelo de um domínio real no mundo e os conceitos daontologia devem refletir esse realidade.

Após definir uma versão inicial da ontologias, pode-se avaliá-la e corrigi-lautilizando-a em aplicações ou em métodos de solução de problemas

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 4/63

 

(problem-solving methods ), ou discutindo com especialistas da área. Comoresultado, quase sempre será preciso revisar a ontologia inicial. Esseprocesso de projeto interativo continua através de todo o ciclo de vida daontologia.

Desenvolvimento de um exemploSuponho que é preciso desenvolver um sistema que auxilia a gerencia custoe a organização de um jornal. A subpasta "examples/newspaper " do diretóriode instalação do Protege contém um projeto completo, denominadonewspaper , o qual fornece uma ontologia possível para esse domínio.Algumas questões que pode-se desejar responder são:

  Quem é responsável para cada seção do jornal?  Qual é o conteúdo de cada artigo em uma seção, e quem é o autor?  A quem cada autor se reporta?  Qual é o layout e o custo de cada seção?

Uma vez que se tem uma idéia do que é preciso cobrir, pode-se listas algunstermos importantes que são necessários. Esses termos podem incluirconceitos básicos, propriedade que os conceitos devem ter e relações entreeles. Para começar, pode-se apenas coletar termos sem preocupação sobre opapel que eles vão desempenhar na ontologia.

No exemplo do jornal, tem-se seções. Cada seção contem conteúdo, tal comoartigos e anúncios, e cada uma tem também um editor, que é responsávelpor cada seção. Cada artigo tem um autor, e aquele autor pode ter ou nãoum empregado. Para cada empregado, é preciso determinar o nome e osalário, e também a quem ele se reporta.

Ao continuar a gerar termos, se está implicitamente definindo o escopo daontologia, ao definir o que se deve incluir ou excluir. Por exemplo, aoexaminar preliminarmente o termo empregado, pode-se desejar adicionarzelador ou motorista. Entretanto, refletindo, pode-se perceber que aontologia enfatize custos diretamente associados com a geração de conteúdoe a apresentação do jornal. Dessa forma, poder-se-ia decidir não incluirzelador 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 função naontologia. Conceitos que são objetos, tais como artigo ou autor, sãoprovavelmente representados por classes. Propriedades das classes, taiscomo conteúdo ou salário, podem ser representados por slots; e restriçõessobre as propriedades ou sobre relações entre classes ou slots, sãorepresentados por restrições sobre slots.

Em seguida, descreve-se como usar a interface do Protege para criar aestrutura desses componentes da ontologia.

Para criar e salvar um projeto

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 5/63

 

Em primeiro lugar, deve-se criar um novo projeto no Protege. Umaexplicação mais detalhada do modelo de conhecimento do Protege estádisponível na seção Overview do site do Protege.

  Criação de um exemplo de projeto  

Nomear e salvar o exemplo de projeto 

Criação de um exemplo de projeto

Para criar um exemplo de projeto, siga as instruções:

1.  Inicie o Protege. Se já existe um projeto do Protege aberto, feche-o ereinicie o programa. Ao iniciar o Protege, a caixa de diálogo de boasvindas é apresentada, para que se possa criar um novo projeto, abrirum projeto recente ou obter ajuda.

Nota: Para explorar os exemplos incluídos no Protege, clique em Abrir um projeto existente...(Open Existing Project...) e selecione o projeto desejado. Para criar um novo projeto, selecioneArquivo | Novo projeto (File | New Project...)

2.  Clique em Criar novo projeto... (Create New Project...). Uma caixade diálogo será aberta, permitindo a escolha do tipo de projeto. Amenos que seja necessário um tipo especial de formato para osarquivos, apenas clique em Terminar (Finish) para aceitar a definiçãopadrão: "Protege Files (.pont and pins)".

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 6/63

 

 

3.  A janela do Protege é aberta e as etiquetas (tabs) se tornam visíveis.Um novo projeto sempre é aberto na visão de Classes. As classesinternas de sistema do Protege (:THING e :SYSTEM-CLASS) sãoapresentadas. Não serão criadas instâncias.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 7/63

 

 

Sumário | Acima: Para criar e salvar um projeto | Anterior: Criação de um exemplo deprojeto 

Nomear e salvar o exemplo de projeto

Embora o tutorial não seja longo, pode-se desejar sair do projeto antes determiná-lo. Salvar o projeto permite encerrar a atividade sempre que se acheconveniente. Para salvar o projeto:

1.  Clique no botão "Salvar Projeto" (Save Project ) (o terceiro daesquerda no menu superior do Protege). Pode-se escolher também"Salvar Projeto" no menu "Arquivo" (File). A caixa de diálogo dearquivos do Protege (Protege Files) será aberta.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 8/63

 

 

2.  Escolha a localização para salvar o projeto, clique no botão a direitada linha "Projeto" (Project ). A caixa de diálogo de arquivos doProtege (Protege Files), navegue para selecionar ou criar um

diretório.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 9/63

 

3.  Entre com um nome de arquivo (por exemplo, "tutorial").

4.  Clique em "Selecionar" (select ).

5.  A caixa de diálogo de arquivos do Protege (Protege Files) apareceránovamente. Clique em OK para salvar os arquivos e deixar a caixa dediálogo.

Nota: Pode-se também escolher uma localização digitando o caminho completo na linha Projeto

(Project ). Os nomes dos outros arquivos serão preenchidos automaticamente.

Criação de Classes

A janela principal do Protege consiste de etiquetas (tabs) que apresentamvários aspectos do modelo de conhecimento. A etiqueta mais importante queaparece ao se iniciar um projeto é a etiqueta "Classes". Em geral, classes vãocorresponder a objetos, ou tipos de objetos, no domínio. No exemplo do jornal, classes podem ser pessoas, tais como editores, repórteres e

vendedores; componentes do layout do jornal, tais como seções; e conteúdodo jornal, tais como anúncios e artigos.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 10/63

 

Classes no Protege são mostradas em uma hierarquia com heranças,apresentadas em um "Navegador de Classes" (Class Browser ), do ladoesquerdo da etiqueta "Classes". As propriedades da classe selecionadas naárvore, no momento, são apresentadas no "Editor de Classes" (Class Editor )à direita.

Nessa seção, o objetivo é ensinar como criar classes e subclasses, modificar ahierarquia de classes, criar classes abstratas, e adicionar superclassesadicionais a classes existentes.

  Criação da classe Colunista (Columnist )   Criação da classe Autor ( Author )   Criação das subclasses de Autor ( Author )   Modificação da hierarquia   Criação de uma classe abstrata   Criação da classe Empregado (Employee)   Adição de outra superclasse a uma classe existente   Adição de uma superclasse com arrastar-e-soltar 

Criação da classe Colunista (columnist )

Deseja-se acompanhar fonte de cada artigo, e assim, serão criados diferentestipos de pessoas e serviços que originam artigos. Primeiro, vai-se criar umanova 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 doProtege. Essa área mostra a hierarquia de classes e destaca a classeselecionada no momento.

3.  Assegure-se de que a classe :THING está destacada. Quase todas asclasses que serão criadas estarão subordinadas a :THING. A classe:SYSTEM_CLASS é usada para definir a estrutura de vários formuláriosdo Protege.

4.  Clique no botão Criar classe (Create Class) , do na parte superiordireita do "Navegador de Classes". Uma classe é criada com um nomegenérico, baseado no nome do projeto, tal como "tutorial_Class_0".Pode-se ver o nome no "Navegador de Classes" e, além disso, ele

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 11/63

 

aparece destacado para mostrar que está selecionado.

5.  Digite Colunista (Columnist ). Uma convenção recomendável noProtege é criar o primeiro caráter de cada palavra em um nome declasse, em maiúsculo, e o resto do nome em minúsculo, além deseparar as palavras por um traço baixo (underscore).

6.  Tecle Enter ou clique de novo na classe destacada para completar aoperação e mostrar a alteração.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 12/63

 

 

Caso ocorram problemas em renomear a classe, verifique o painelEditor de Classes (Class Editor ), do lado direito da janela do Protege.O nome genérico da classe criada deve ser apresentado e destacadono campo "Nome" (Name). Se o nome genérico correto é mostrado,mas não destacado, apenas dê um clique duplo no campo "Nome" paraeditar o nome. Se um nome incorreto é mostrado, então a classeerrada está selecionada na área de "Hierarquia de Classes" (ClassHierarchy ). Clique na classe que se deseja renomear.

Criação da classe Autor ( Author )Um Autor ( Author ) é qualquer possível fontes de um artigo, tal como umserviços de notícias ou um colunista. Para criar a classe Autor ( Author ):

1.  Marque com o mouse a classe :THING. Se isso não for feito, serácriada uma classe que é subclasse de Colunista (Columnist ).

2.  Clique no botão Criar Classe (Create Class) e digite Autor ( Author ).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 13/63

 

3.  Tecle Enter para completar a operação e apresentar a alteração.

Note: Se acidentalmente for criada uma subclasse de Colunista (Columnist ), significa que não foiselecionada a classe :THING antes de se criar a nova classe. Pode-se apagar e recriar a classeAutor ( Author ), clicando no botão Apagar Classe (Delete Class, o quarto botão a partir daesquerda, na parte superior da área Class Hierarchy ) para apagar a classe e, então, clicar em:THING e recriar outra classe. Pode-se também rearranjar a hierarquia de classes arrastando aclasse criada para a :THING e, então, soltando o botão do mouse.

Criação das subclasses de Autor ( Author )Deseja-se agora adicionar duas novas fontes de artigos, denominadasServiço_de_Noticias (News_Service) e Editor (Editor ), as quais serãocriadas como subclasses de Autor ( Author ).

1.  Selecione Autor (Author) no painel de "Hierarquia de Classes" (ClassHierarchy ).

2.  Clique no botão Criar Classe (Create Class) e renomeie a novaclasse como o nome Serviço_de_Noticias (News_Service). Todavez que uma nova classe for criada, ela é criada como subclasse daclasse destacada no momento. Note que quando se cria a primeirasubclasse de uma classe, um ícone ou aparece a sua esquerda.

Pode-se usar esse ícone para mostrar ou ocultar as subclasses de umaclasse. Para que se possa desenvolver a ontologia em seçõesposteriores, será criada outra subclasse de Autor ( Author ).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 14/63

 

3.  Selecione Autor (Author) no "Navegador de Classes" (Class Browser ).

4.  Clique no botão Criar Classe (Create Class) e renomeie a novaclasse Editor.

Modificação da hierarquiaNesse ponto, observa-se que Autor ( Author ) e Colunista (Columnist )estão no mesmo nível (irmãos) na hierarquia. Entretanto, conceitualmente,Serviço_de_Noticias (News_Service), Editor (Editor ) e Colunista (Columnist ) estão todos no mesmo nível de generalidade, enquanto Autor ( Author ) é um conceito mais genérico. Essa disposição não atende aos bonsprincípios de projeto de ontologias: todos os irmãos na hierarquia (excetoaqueles que estão na raiz) devem estar no mesmo nível de generalidade.Dessa forma, é preciso modificar a hierarquia para fazer com que a classeColunista (Columnist ) seja uma subclasse de Autor ( Author ), o quereflete com mais precisão a estrutura subjacente. Para modificar a hierarquiae tornar Colunista (Columnist ) uma subclasse de Autor ( Author ):

1.  Clique em Colunista (Columnist ) e arraste-o para sobre a classe

Autor ( Author ) e então, solte o mouse. Repare que ao arrastar aprimeira classe sobre autor, esta última é destacada.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 15/63

 

 

2.  Colunista (Columnist ) é movida e agora aparece como umasubclasse de Autor ( Author ).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 16/63

 

 

Nesse caso, o problema pode parecer óbvio. Entretanto, quando sedesenvolvem ontologias, o próprio processo de desenvolvimento pode revelardiferenças ou paralelos que não eram tão claros no início do processo. Dessaforma, é provável que a medida que tal processo caminha será precisorearranjar a hierarquia, criar e apagar classes, de forma a modelar melhor osconceitos que se pretende utilizar.

Criação de uma classe abstrata

Uma classe do Protege pode ser Concreta (Concrete), o que significa que elapode ter instâncias diretas, ou pode ser Abstrata (Abstract), o que significaque ela aparece na hierarquia, mas não tem instâncias diretas. Quando secria a primeira classe, ela é, por convenção, concreta. Agora que se sabemais sobre a classe Autor ( Author ), percebe-se que qualquer instância deAutor vai realmente ser uma instância de um tipo particular de autor, talcomo, por exemplo, um colunista ou um serviço de noticias. Dessa forma,vai-se alterar a classe Autor ( Author ) para uma classe abstrata. Pararealizar essa tarefa:

1.  Selecione Autor ( Author ) na hierarquia de classes. No "Editor deClasses" (Class Editor), do lado direito do "Navegador de Classes",localize o menu Papel (Role), logo abaixo do nome da classe.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 17/63

 

 

2.  Clique no menu Papel (Role) e selecione Abstrata ( Abstract ).

3.  Note que quando se muda o papel da classe, o ícone em frente aonome da classe, no caso o nome "Autor", é alterado. O novo íconeindica uma classe abstrata na hierarquia. Um ícone sólido indica umaclasse concreta.

Criação da classe Empregado (Employee)

Agora vai se criar outra classe, Empregado (Employee). Um Empregado (Employee) é qualquer empregado do jornal, que pode ser ou não um autor.Observe entretanto, que se está apenas interessado em empregado queestão envolvidos na criação e gestão do conteúdo do jornal. Uma dasescolhas a tomar no projeto de uma ontologia é o que não considerar. Aomesmo tempo que é necessário assegurar-se de que foram incluídos todos osconceitos relevantes, não se deve complicar a hierarquia adicionando classesque são dispensáveis. Dessa forma, mesmo que um zelador possa ser,tecnicamente, um empregado do jornal, não há interesse em criar uma

subclasse chamada "zelador".

1.  Selecione :THING no "Navegador de Classes" (Class Browser ). Emboraalguns autores sejam empregados, não se deseja que Empregado (Employee) seja uma subclasse de Autor ( Author ). Na maioria doscasos, deve-se selecionar :THING para criar um classe de nível maisalto na hierarquia. 

2.  Clique no botão Criar Classe (Create Class) e renomeie a classeEmpregado (Employee).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 18/63

 

 

Adição de outra superclasse a uma classe existente

Conforme mencionado anteriormente, deseja-se que um Colunista (Columnist ) seja um Empregado (Employee). Como a classe Colunista (Columnist ) já está criada, não se deseja criá-la novamente. Ao invés disso,é possível fazer com que a classe Colunista (Columnist ) existente seja umasubclasse de Empregado (Employee ), da forma explicada a seguir:

1.  Selecione Colunista (Columnist ) no "Navegador de Classes".

2.  Vá até o painel de superclasses na parte inferior esquerda da janela doProtege, abaixo do "Navegador de Classes " (Class Browser ). Noteque, quando Colunista (Columnist ) está selecionado, a superclasse

atual de Colunista (Columnist ), que é Autor ( Author ), éapresentada no painel de superclasses.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 19/63

 

 

3.  Clique no botão Adicionar Superclasse ( Add Superclass) naparte superior direita no painel de superclasses. Uma caixa de diálogode "Selecionar Classes" (Select Classes) será apresentada, mostrandotodas as classes que foram criadas até agora, organizadas em umahierarquia.

4.  Marque Empregado (Employee) e clique em OK. O Colunista (Columnist ) agora tem duas superclasses: Autor ( Author ) eEmpregado (Employee). Ambas as superclasses são apresentadas no

painel de superclasses.

5.  Note que um ícone aparece do lado esquerdo de Empregado (Employee). Clique nesse ícone para expandir o "filho" (na hierarquia)de Empregado (Employee). Colunista (Columnist ) agora apareceem dois lugares no "Navegador de Classes" (Class Browser ): uma vez,

abaixo de Autor ( Author ) e, novamente, abaixo de Empregado (Employee).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 20/63

 

 

Adição de uma superclasse com arrastar-e-soltar  Pode-se também adicionar uma superclasse como recurso arrastar-e-soltar:

1.  Selecione Editor (Editor ) no "Navegador de Classes" (Class Browser ).

2.  Clique no botão do mouse, segure e arraste a classe "Editor" paracima da classe Empregado (Employee). Empregado (Employee) édestacado.

3.  Antes de soltar o botão do mouse, pressione a tecla Ctrl, e então solteo botão do mouse para transferir a subclasse.

Para remover uma superclasse de uma classe, marque a superclasse que sedeseja remover no painel Superclasses e clique no botão RemoverSuperclasse (Remove Superclass) . Agora pode-se designar algunsatributos para as classes já inseridas, criando-se slots. Esse assunto serátratado na próxima seção.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 21/63

 

 Criação de slots No Protege, as classes podem ser consideradas como conceitos concretos dodomínio, tal como Editor (Editor ) e Colunista (Columnist ). Classes são

mais do que simples objetos organizados na hierarquia. Elas pode tambémter atributos, tais como nome, número de telefone ou salário, e relaçõesentre elas, tais como o Autor ( Author ) de um Artigo ( Article).

Atributos de classes são descritos utilizando-se slots. Nas seções seguintesapresenta-se o processo de criar slots e atribuí-los a classes, a descrição derelacionamentos entre classes usando slots, e o funcionamento da herança deslots.

  Criação de um slot a partir da "etiqueta slots" (slot tab)   Atribuição de um slot a uma classe   Criação de um slot na "etiqueta classes" (Classes tab)   Slots e herança 

Criação de um slot a partir da "etiqueta slot " ( slot tab)

Existem várias formas de se criar um slot . Uma maneira é criar slots usandoa "etiqueta slots" e, então, atribuí-lo a uma ou mais classes. Para criar umaslot denominado nome (name) dessa forma, faça:

1.  Clique na "etiqueta slots". Observe que essa etiqueta tem uma layout  similar ao da "etiqueta classes", com os slots listados a esquerda, e o"editor de slots" mostrando as propriedades dos slots, a direita.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 22/63

 

 

2.  Clique no botão Criar slot (Create Slot ) no lado direito superior dopainel de "hierarquia de slots" (Slot Hierarchy ). Um novo slot é criado.Assim que o slot é criado, recebe um nome genérico, talcomo "tutorial_Slot_0". Esse nome é automaticamente destacado no"Editor de Slots" (Slot Editor ).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 23/63

 

 

3.  Para nomear o slot, assegure-se de que o nome genérico está

destacado no campo nome (name) do "Editor de Slots" (Slot Editor ).Digite o nome do slot , que nesse caso, se chama nome (name). Umaconvenção recomendada é usar letras minúsculas nomes de slots, comas palavras separadas por traços baixos (underscores). Criar slots comnomes em letra minúscula, e classes com nomes que se iniciam comletras maiúsculas, facilita a distinção entre eles na ontologia.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 24/63

 

 

4.  Observe que esse slot tem string como "tipo de valor padrão" (default  

Value Type). O tipo de valor (Value Type) impõem restrições relativasaos tipos de valores que um slot pode ter. Um slot do tipo string recebe valores que são qualquer caractere alfanumérico, inclusiveespaços.

Para esse slot simples, não vai-se alterar quaisquer outras facetas (restriçõessobre os slots) no "Editor de Slots" (Slot Editor ).

Atribuição de um slot a uma classe

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 25/63

 

Tudo o que foi feito até aqui foi criar um slot que define o atributo geralnome (name). Para incorporá-lo a ontologia, é preciso atribuí-lo a umaclasse, por exemplo: se deseja que cada instância da classe Autor ( Author )tenha um nome.

Para fazer isso, retorna-se a "etiqueta Classes" (Classes Tab) e edita-se aclasse Autor ( Author ). Quaisquer atributos criados ou atribuídos a umaclasse são apresentados no "Editor de Classes" (Class Editor ), a direita do"Navegador de Classes" (Class Browser ). Já se utilizou o "Editor de Classes(Class Editor ) para alterar o nome de classes criadas, e também para alteraro papel da classe Autor ( Author ) para abstrata. Agora, vai se utilizá-lo paraver e nomear slots.

Para atribuir o slot nome (name) a uma classe:

1.  Clique na "etiqueta Classes" (Classes Tab).

2.  Destaque a classe Autor (Author) no painel de hierarquia de classes(Class Hierarchy ).

Durante um momento, observe o "Editor de Classes" (Class Editor), àdireita. Essa área tem um Nome (Name), o qual foi alteradoanteriormente para Autor (Author), o papel (Abstract), além da

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 26/63

 

documentação e restrições. Abaixo desse campo está o painel de"Modelos de Slots" (Template Slots), o qual ocupa toda a metadeinferior do painel "Editor de Classes" (Class Editor). Nessa área sãolistados todos os slots atribuídos a uma classe. No momento, ela estávazia. 

3.  Para adicionar um slot a uma classe, clique no botão Adicionar Slot  ( Add Slot ) . Os botões de slots aparecem a direita da janela doProtege, logo acima do painel de "Modelos de Slots" (Template Slots).

4.  Quando se clica no botão Adicionar Slot ( Add Slot ), a caixa dediálogo "selecionar modelos de slots" (Select Template Slots)apresenta todos os slots do projeto atual, em ordem alfabética (comexceção das classes de sistema do Protege, as quais são listadasabaixo da hierarquia de slots).

5.  Selecione nome (name) e clique OK.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 27/63

 

 

Observando o painel "Modelos de Slots" (Template Slots) para Autor ( Author ), verifica-se que nome (name) foi adicionado a lista  deslots, junto com suas propriedades, nesse caso, sua cardinalidade (umautor pode ter apenas um nome) e o tipo do slot (slot type), String.

Criação de um slot na "etiqueta classes" (Classes Tab)

Alternar entre a "etiqueta classes" (Classes Tab) e a "etiqueta slots" (SlotsTab) pode ser cansativo. Além disso, uma vez que slots representampropriedades de classes, seria mais simples criar slots diretamente da"etiqueta classes" (Classes Tab), o que é fácil fazer no Protege.

Para criar um slot para a classe Empregado (Employee):

1.  Selecione Empregado (Employee) no painel "hierarquia de classes"(Class Hierarchy ).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 28/63

 

 

2.  Clique no botão Criar Slot (Create Slot ) no lado direito do painel"modelos de slots" (Template Slots), o qual apresenta o formuláriopara preenchimento de dados sobre o slot :

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 29/63

 

3.  Digite salário (salary) no campo nome (name) e tecle Enter.

4.  Retorne a janela principal (pode-se deixar caixa de diálogo do editorde slots para salary aberta, caso se deseje; vai-se retornarposteriormente a ela para editar mais propriedades do slot   salary ).Observe que o slot agora aparece no painel "modelos de slots"(Template Slots) quando Empregado (Employee) é destacado.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 30/63

 

 

Slots e herança

Não é preciso atribuir o slot  nome (name) a cada classe em que se desejaque ele apareça. Qualquer subclasse de uma classe automaticamente herdatodos os slots da superclasse. Por exemplo, ao clicar na classeServiço_de_Notícias (News_Service), pode-se ver que:

a) o slot  nome (name) já foi atribuído a essa classe através de herança;b) o ícone do slot está diferente de quando ele foi atribuído a Autor ( Author ), ou seja, o ícone de "slot herdado" (inherited slot ) mostra queesse slot foi atribuído por herança.

Nota: Na barra de menus, clique em Help | Icons para ver a lista de todos os ícones da interface doProtege, além de descrições textuais sobre o significado do ícone.

Classes com mais de uma superclasse herdam slots de todas as classessuperiores. Por exemplo, ao clicar na classe Editor (Editor ), pode-se ver que

ela herda o slot  nome (name) de Autor ( Author ), e o slot  salário ( salary )de Empregado (Employee). A herança múltipla é uma funcionalidadeimportante do Protege.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 31/63

 

 

Criação de facetas (facets) para slots 

Os slots criados até aqui são bem simples. Entretanto, slots podem terpropriedades. Por exemplo, um "salário" (salary ) é sempre um número.Pode-se também utilizar slots para criar relacionamentos entre as classes. Aspropriedades de um slot , chamadas facetas (facets), podem ser criadas eeditadas a partir "etiqueta classes" (Classes Tab) usando o diálogo deespecificação de slots, ou a partir da "etiqueta slots" (Slots Tab) no painel"editor de slots" (Slot Editor ).

  Definição de facetas de slots para salário (salary )   Criação de um relacionamento com o uso de slots 

Definição de facetas de slots para salário ( salary )Pode-se definir algumas facetas para o slot  salário ( salary ) criadoanteriormente.

1.  Selecione a classe Empregado (Employee) no painel "hierarquia declasses" (Class Hierarchy ).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 32/63

 

 

2.  Dê um clique duplo no slot  salário ( salary ) no painel "modelos deslots" (Template Slots) para a abrir o formulário de slots. Éapresentada uma caixa de diálogo solicitando que seja selecionada a"visão do slot" (Slot View ). Ao editar um slot , pode-se escolher se asmudanças serão aplicadas ao slot e a todas as classes relacionados aesse slot -- "slot de nível superior" (top level slot ) -- ou apenas aclasse corrente e todas as suas classes filhas, ou seja, de nível inferiorna hierarquia.

3.  Nesse caso, deseja-se ver e editar o "slot de nível superior" (top-level slot ). Assegure-se que a opção "visão do slot de nível superior" (View top-level slot ) está selecionada e clique em OK. Essa ação vai alterara definição do slot em qualquer lugar que ele apareça na ontologia.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 33/63

 

 

4. 

No formulário de slots resultante, selecione Flutuante (Float ) nomenu Tipo de valor (Value Type), a esquerda. Ao criar instâncias,será possível fornecer apenas números decimais para esse slot .

5.  Entre com 0 (zero) no campo "mínimo" (Minimum) na parte inferioresquerda. Essa ação especifica que, para casa instância de Empregado(Employee), o valor que será atribuído ao salário ( salary ) deve serpositivo.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 34/63

 

 

6. 

Feche a caixa de diálogo de edição de slots. Pode-se ver que adescrição do slot foi alterada no painel "modelos de slots" (TemplateSlots). O tipo agora está configurado como "Flutuante" (Float ), e ovalor mínimo de 0.0 aparece na coluna "outras facetas" (Other Facets).

Note: Fazer alterações no "slot de nível superior" (top-level slot ) significa modificar a definiçãofundamental do slot . Corresponde a fazer alterações na "etiqueta de slots" (Slots Tab). Caso seselecione a opção Ver o slot na classe (View slot at class), todas as mudanças realizadas serãoaplicadas apenas àquela classe e a seus filhos. Por exemplo, caso se inicie um programa quepermita uma pessoa pagar para fazer um estágio no jornal, pode-se criar uma nova subclasse paraEmpregado (Employee), denominada Pagamento_estagiário (Paying_intern), abrir o slot  salário ( salary ), selecionar Ver slot na classe (View slot at class) e apagar o valor mínimo.Essa ação criaria um "slot sobreposto" (slot override), o qual afetaria apenas a classePagamento_estagiário (Paying_intern), enquanto que para os outros empregados seria precisocriar um salário não negativo.

Criação de um relacionamento com o uso de slots 

O Protege também permite criar slots que podem ser utilizados paradescrever relacionamentos entre classes, os quais não foram definidos nahierarquia de classes. Isso pode ser feito usando slots do tipo "instância"(instance) ou do tipo "classe" (class). Por exemplo, um editor pode ser"responsável por" (responsible for ) um ou mais empregados. Pode-se criarum slot que representa esse relacionamento entre Editor (Editor) eEmpregado (Employee), da seguinte maneira:

1.  Selecione a classe Editor (Editor ) no painel "hierarquia de classes"(Class Hierarchy ).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 35/63

 

 

2.  Clique no botão "Criar Slot" (Create Slot ) para criar um novo slot apara Editor (Editor ).

3.  No formulário de slots resultante, digite responsável_por(responsible_for ) no campo "nome" (Name).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 36/63

 

 

4.  Selecione "instância" (Instance) no menu "tipo de valor" (Value Type).

Um novo campo, "classes permitidas" ( Allowed Classes), é

apresentado abaixo do menu do menu "tipo de valor" (Value Type).

5.  Clique no botão "adicionar classe" ( Add Class) que aparece na partesuperior direita da área de "classes permitidas" ( Allowed Classes).Surge uma caixa de diálogo para "selecionar classes" (Select Classes), apresentando todas as classes do projeto. Selecione

Empregado (Employee) e clique em OK.

6.  Para permitir que um editor seja responsável por mais de umempregado, clique na opção "múltiplo" (multiple) na área de"cardinalidade" (Cardinality ), do lado direito da área de "tipo de valor"(Value Type).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 37/63

 

Após completar os passos de 1 a 6, o slot  responsável por (responsible_for ) deve estar com a seguinte configuração:

O que realmente foi feito? Foi criado um slot que abrangeu uma ou maisinstâncias da classe Empregado (Employee) com seus valores. Mais tarde,ao se criar uma instância da classe Editor (Editor ), será preciso especificarpor quem o editor é responsável, e poderá se escolher uma ou maisinstâncias da classe Empregado (Employee) para preencher o valor do slot  Responsável por (responsible_for ).

Inserção de instâncias

Instâncias são os dados reais da base de conhecimento. Uma boa idéia éassegurar-se de que o projeto foi bem estruturado, antes de inserir umgrande número de instâncias. Caso sejam necessárias alterações na estruturadas classes ou slots após a inserção das instâncias, pode ocorrer perda deinformação. Além disso, caso se adicionem outros slots, será necessáriovoltar e preencher os valores de slots para todas as instâncias criadasanteriormente.

Nessa seção, vai-se criar duas instâncias para a classe Editor (Editor ):

1.  Clique na "etiqueta instâncias" (Instances Tab). Essa etiqueta tem trêspainéis. O primeiro, do lado esquerdo, apresenta a hierarquia declasses (class hierarchy ). O painel do meio, o qual aparece em branco,apresentará a lista de instâncias a serem criadas para uma classeespecífica. O terceiro painel corresponde ao "editor de instâncias"(Instance Editor ), o qual apresenta o formulário para a instânciamarcada no momento, na qual serão inseridos valores de slots.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 38/63

 

 

2.  Clique em para expandir as subclasses de Empregado (Employee).

3.  Clique em Editor (Editor ). O botão Criar instância (Create Instance) no "navegador de instâncias" (Instance Browser ) se tornaativo, indicando que pode-se agora criar uma instância.

4.  Clique no botão Criar instância (Create Instance) . Uma instânciaé criada, e o formulário do "editor de instâncias" (Instance Editor )aparece. Pode-se observar que existem campos, um para cada slot  criado anteriormente. Esses campos devem ser usados para inserirvalores para os slots. Note que no painel "hierarquia de classes" (Class

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 39/63

 

Hierarchy ), a apresentação da classe Editor (Editor ) foi alteradaquando se criou a instância. O número "um" entre parênteses (1),após a classe Editor (Editor ), indica que aquela classe agora possuiuma instância.

5.  Entre como o nome Chief Honcho no campo Nome (Name).

6.  Entre com o valor 150000 no campo Salário (Salary ). Observe que oscaracteres nesse campo vão aparecer em vermelho, se outro valor quenão seja um valor flutuante (float ) válido for inserido (no Protege, atentativa de inserir valores que não satisfaçam as restriçõesdeterminadas para o slot , fará com que esse valor seja apresentadoem vermelho).

A "etiqueta instâncias" (Instances Tab) agora, deve parece com a figura

abaixo. Observe que a instância ainda tem um nome genérico no Navegadorde Instâncias (Instance Browser), tal como "tutorial_instance_0". Na próxima

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 40/63

 

seção, será explicado como alterar essa situação.

Para criar uma outra instância:

1.  Clique no botão Criar instância (Create Instance) no "navegadorde instâncias" (Instance Browser ).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 41/63

 

 

2.  Digite Mr. Science no campo Nome (Name).

3.  Digite 60000 no campo Salário (Salary ).

Agora que se criaram algumas instâncias, pode-se definir um relacionamentoentre elas, por exemplo, pode-se dizer que Chief Honcho é "responsável por"(responsible for ) Mr. Science. Antes de fazer isso, de forma a tornar otrabalho com as instâncias mais simples, vai-se configurar um "slot deapresentação" (display slot ) para a classe Editor (Editor ). O Protegeapresenta o valor do "slot de apresentação" cada vez que foremapresentadas as instâncias da classe. A configuração desse slot é explicadana próxima seção.

Configuração do slot de apresentação

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 42/63

 

Para cada classe da ontologia, pode-se especificar um de seus slots para serum "slot de apresentação" (display slot ). O Protege vai apresentar o valordesse slot cada vez que apresentar instâncias da classe. Caso não seconfigure um "slot de apresentação", o Protege apresenta um nome geradopelo sistema para o slot , tal como "tutorial_Instance_0". Assim, é útilconfigurar um "slot de apresentação" para todas as classes que terãoinstâncias. De fato, pode-se escolher configurar esses slots para as classesantes mesmo de começar a criar instâncias.

Para configurar um "slot de apresentação" (display slot ) para a classe Editor(Editor ):

1.  Selecione a "etiqueta de instâncias" (Instances Tab).

2.  Selecione Editor no painel "hierarquia de classes" (Class Hierarchy ).

3.  Clique no ícone do menu "Instância" (Instance), em uma seta que

aponta para baixo, do lado direito do "navegador de instâncias"(Instance Browser ).

4.  Selecione no menu Configurar Slot de Apresentação (Set Display Slot ).

5.  Selecione nome (name) no menu Slot de Apresentação (Display Slot ).

6.  A apresentação da lista de instâncias no "navegador de instâncias"(Instance Browser ) se altera para refletir o "slot de apresentação"(display slot ) escolhido. As instâncias do "editor de classes" (ClassEditor ) são agora listadas por valor do nome (name) do slot  (instâncias são sempre apresentadas em ordem alfabética ounumérica). A partir de agora, será possível navegar nas instâncias daclasse Editor (Editor ) por nome (name) na "etiqueta de instâncias"(Instances Tab), e em qualquer outro lugar na interface do Protege

onde listas de instâncias são apresentadas.

Criação de um relacionamento entreinstâncias

Nessa seção, a instância Chief Honcho será modificada para torná-loresponsável pelo Mr. Science:

1.  Clique na "etiqueta de instâncias" (Instances Tab), clique no íconepara expandir a classe Empregado (Employee) no painel "hierarquiade classes" (Class Hierarchy ), e selecione a classe Editor (Editor ).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 43/63

 

Instâncias de Editor são agora listadas no "navegador de instâncias"(Instance Browser ).

2.  Selecione Chief Honcho no "navegador de instâncias" (InstanceBrowser ). Serão apresentados os slots para Chief Honcho noformulário do "editor de instâncias" (Instance Editor ), inclusive o slot  Responsável Por (Responsible For ). Note que o Protege usa o slot  

"nomes" (names) no formulário de instâncias, mas automaticamenteconverte os traços baixos (underscores) para espaços e tornamaiúscula a primeira letra de cada palavra.

3.  Clique no botão Adicionar Instância ( Add Instance) do ladodireito superior do campo Responsável por (Responsible For ).

4.  Uma caixa de diálogo com dois painéis é aberta. Do lado esquerdo,pode-se ver a hierarquia de "classes permitidas" (allowed classes) parao slot  responsável_por (responsible_for ).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 44/63

 

 

5.  Dê um clique simples em Editor. Do lado direito do diálogo, todas asinstâncias da classe Editor (Editor ) são apresentadas. Selecione Mr.Science e clique OK.

6.  Agora, foi criado um relacionamento na ontologia, especificando queChief Honcho é "responsável por" (responsible for ) Mr. Science.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 45/63

 

 

Personalização de um formulário

Para cada classe na ontologia, o Protege gera um formulário padrão que podeser utilizado para inserir dados, ou seja, instâncias. Os formulários (forms)

contém um campo de entrada de dados, denominado "forma gráfica"(widget ), para cada slot relacionado a uma classe. Existem diferentes tiposde "formas gráficas" (widgets), para manipular os vários tipos de valores deslots. Por exemplo, o Protege atribui um widget denominado"InstanceListWidget " a slots com tipos de valores "instância" (instance) ecardinalidade múltipla.

Caso não se queira utilizar o formulário padrão que o Protege gera para umaclasse, pode-se personalizá-lo através da "etiqueta formulários" (Forms Tab).Dentre outras possibilidades, pode-se redimensionar widgets, arrastá-lospara outros locais do formulário, ocultá-los, e mesmo selecionar diferentestipos de widgets.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 46/63

 

Para ver como as mudanças que serão realizadas na "etiqueta formulários"(Forms Tab) nas próximas seções refletem no "editor de instâncias" (InstanceEditor ), vá até o "editor de instâncias" (Instances Tab), e dê um clique duplosobre Chief Honcho no "navegador de instâncias" (Instance Browser ) paraapresentar uma janela separada do "editor de instâncias" (Instance Editor).Observe que se foram criados slots para a classe Editor de forma diferentedaquela explicada nesse tutorial, o formulário pode não ser apresentadoexatamente igual as figuras das seções seguintes.

  Redimensionamento de formas gráficas (widgets)   Movimentação de formas gráficas (widgets)   Personalização dos botões das formas gráficas (widgets)   Ocultamento de uma forma gráfica (widget )   Apresentação de uma forma gráfica (widget ) oculta   Uso do layout padrão 

Redimensionamento de formas gráficas (widgets)Pode-se redimensionar um widget arrastando suas linhas de contorno oucantos. Para redimensionar um widget dessa forma:

1.  Clique na "etiqueta de formulários" (Forms Tab).

2.  Assegure-se de que Editor está selecionado no "navegador deformulários" (Form Browser ), a esquerda. Em seguida, selecione o tipode widget denominado "FloatFieldWidget " para o slot  salário ( salary ),clicando sobre ele no "editor de formulários" (Form Editor ), do ladodireito da tela. Esse widget é então destacado com uma linha de

contorno verde, que confirma que ele foi selecionado. Observe que acaixa tipo combo box denominada "tipo de forma gráfica selecionada"(Selected Widget Type), do lado superior direito, informa que se tratade uma "forma gráfica para campo flutuante" (FloatFieldWidget ), aqual é um widget usado para entrada de números com pontoflutuante.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 47/63

 

 

3.  Clique sobre o lado direito do widget e arraste para aumentar seutamanho. Tente alinhar o lado direito desse widget com o lado direitodo widget do slot  nome (name).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 48/63

 

 

4.  Observe que o ícone em frente a Editor no "navegador deformulários" (Form Browser ) foi alterado. O novo ícone indica que oformulário para essa classe foi personalizado.

Movimentação de formas gráficas (widgets)Pode-se também mover qualquer widget arrastando-o:

1.  Selecione a opção "InstanceListWidget " para o slot  responsável_por (responsible_for ).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 49/63

 

 

2.  Arraste-o para a parte superior direita do formulário, de forma que alinha superior do widget se alinhe como a linha superior do widget  para o slot  nome (name).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 50/63

 

 

Personalização dos botões de formas gráficas(widgets)

Pode-se personalizar formas gráficas (widgets) de forma que apresentem umtítulo diferente, ou mesmo um conjunto de botões diferente do padrão. Porexemplo, pode-se desejar ter a possibilidade de apagar uma instância do

projeto clicando em um botão na "InstanceListWidget ", que foi atribuída aoslot  responsável_por (responsible_for ). Para apresentar o botão deapagar:

1.  Dê um clique duplo no "InstanceListWidget " denominadoResponsável Por (Responsible For ) no "editor de formulários"(Form Editor ).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 51/63

 

 

2.  Clique na "etiqueta botões" (Buttons tab).

3.  Clique na caixa de seleção em frente de "Mostrar botão de apagarinstância" (Show Delete Instance Button) para selecionar essa opção.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 52/63

 

4. Clique em OK. A "forma gráfica para lista de instâncias"(InstanceListWidget ) para o slot  responsável_por (responsible_for ) tem agora cinco botões.

5. Ocultamento de uma forma gráfica (widget )

Pode-se ocultar uma "forma gráfica" (widget ) para que ela não possa ser

vista no "editor de formulários" (Form Editor ) e no "editor de instâncias"(Instance Editor ). Essa ação não remove qualquer informação da ontologia.Por exemplo, pode-se ocultar o widget para o slot salário ( salary ). Para fazerisso:

1.  Selecione a "forma gráfica para campo flutuante" (FloatFieldWidget )denominado Salário (Salary ) no "editor de formulários" (FormEditor ).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 53/63

 

 

2.  Selecione "<none>" para a caixa combo box "tipo de forma gráficaselecionada" (Selected Widget Type).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 54/63

 

 

3.  A "forma gráfica" (widget ) para o slot  salário ( salary ) não está maisvisível no "editor de formulários" (Form Editor ).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 55/63

 

 

Apresentação de uma forma gráfica (widget ) ocultaPara restaurar e voltar a visualizar uma "forma gráfica" (widget ) oculta:

1.  No "navegador de formulário" (Form Browser ), clique no botão Verpersonalizações de formulários (View Form Customizations) ,do lado direito superior.

2.  Na caixa de diálogo "configurar formulário" (Configure form), pode-sever uma lista de todos os slots e suas formas gráficascorrespondentes.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 56/63

 

 

3.  Clique em "<none>" na coluna do lado direito, ao lado de salário ( salary ), para apresentar diferentes opções de widgets para esse slot ,e selecione "forma gráfica de ponto flutuante" (FloatFieldWidget ).

4.  Clique OK.

5.  A "forma gráfica de ponto flutuante" (FloatFieldWidget ) para o slot  salário ( salary ) está agora visível novamente no "editor deformulário" (Form Editor ).

Uso do layout padrão

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 57/63

 

Caso as personalizações realizadas não atendam as expectativas, o Protegepermite rearranjar rapidamente todos as "formas gráficas" (widgets) visíveisde acordo com o layout padrão, acomodando o tamanho atual de cadawidget .

Para que o Protege organize automaticamente todas as "formas gráficas"(widgets) de acordo com o layout padrão:

1.  Assegure-se que Editor está selecionado no "navegador deformulários" (Form Browser ).

2.  Clique no botão Remover personalizações de formulários (Remove Form Customizations) , do lado superior direito do"navegador de formulários".

3.  O formulário se ajusta para apresentar o layout padrão. Caso setenham ocultado "formas gráficas" (widgets), elas serão apresentadas

novamente. Observe também que o ícone em frente de Editor volta aser o ícone de formulário padrão .

Criação e armazenamento de uma consulta

A "etiqueta de consultas" (Queries Tab) permite que sejam realizadasconsultas no projeto e que se recuperem todas as instâncias que atendam acritérios específicos. Para criar uma consulta (query ), deve-se selecionar umaou mais classes, e um ou mais slots dessas classes. Pode-se também salvaras consultas na "biblioteca de consultas" (Query Library ) para utilizaçãofutura.

  Criação de uma consulta (query )   Execução de uma consulta (query )   Armazenamento de uma consulta (query )   Recuperação de uma consulta (query ) 

Criação de uma consulta (query )

Considere-se que se deseja localizar todos os empregados que tem umsalário superior a $75,000 por ano. Para criar uma consulta:

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 58/63

 

1.  Clique na "etiqueta de consultas" (Queries tab).

2.  Clique no botão Selecionar Classes (Select Cls) acima da caixa detexto para classes (class), no painel de consultas (Query pane).

3.  Selecione Empregado (Employee) na caixa de diálogo "selecionarclasses" (Select Classes), e então clique em OK.

Empregado (Employee) é agora apresentado na caixa de texto paraclasses.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 59/63

 

 

4.  Clique no botão "selecionar slot " (Select Slot ) acima da caixa detexto para Slots.

5.  Selecione salário ( salary ) na caixa de diálogo "selecionar slot "(Select Slot ) e clique OK.

O menu do lado direito da caixa de texto de slots está agora ativo, e acaixa de texto mais a direita da janela relembra que o tipo de valor doslot selecionado é "ponto flutuante" (float ).

6.  Selecione "é maior que" (is greater than) no menu suspenso (dropdown menu). Em seguida, entre com o valor "75000" na caixa de textoFloat .

Execução de uma consulta (query )Agora que a consulta está configurada, pode-se executá-la e ver osresultados.

1.  Para executar a consulta, clique no botão "encontrar" (Find ), na parteinferior direita do "painel de consultas" (Query pane).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 60/63

 

 

2.  Os resultados são mostrados no painel de "resultados de busca"(Search Results), do lado direito da tela. Caso não seja possível ver osresultados, será preciso aumentar a janela ou mover a barra quesepara o painel.

Note: Para ver o "editor de instâncias" (Instance Editor ) basta dar um clique duplo em qualquerinstância dos "resultados da busca" (Search Results).

Armazenamento de uma consulta (query )

Pode-se salvar qualquer consulta antes ou depois que ela for executada. Parasalvar uma consulta na "biblioteca de consultas" (Query Library ):

1.  Clique no botão Adicionar a Biblioteca de consultas ( Add toQuery Library ) , do lado direito da caixa de texto "nome daconsulta" (Query Name).

2.  Digite "sample_query" na caixa de diálogo "entrar com o nome daconsulta" (Input Query Name).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 61/63

 

 

Note: Pode-se digitar um nome de consulta diretamente na caixa de texto "nome da consulta"(Query Name) na janela principal e clicar no botão Adicionar a biblioteca de consultas ( Add toQuery Library ).

3.  Clique OK. O nome é apresentado na caixa de texto "nome daconsulta" (Query Name) e a consulta é listada no painel "biblioteca deconsultas" (Query Library ) na parte de inferior da tela.

Recuperação de uma consulta (query )

Para recuperar um consulta salva, ela deve ser selecionada na "biblioteca de

consultas" (Query Library ):

1.  Em primeiro lugar, porque se está executando uma mesma consultanovamente, clique no botão "limpar" (Clear ) para limpar os resultadode consulta. Caso contrário, não será possível visualizar a alteração.

2.  Selecione "sample_query" na "biblioteca de consultas" (Query Library )na parte inferior da tela. Caso não seja possível ver a "biblioteca deconsultas" ( Query Library ), será preciso aumentar a janela ou movera barra de separação.

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 62/63

 

 

3.  Clique no botão Recuperar consulta (Retrieve Query ) pararecuperar a consulta escolhida.

4.  A consulta salva é agora apresentada na parte superior da janela.Caso desejado, pode-se nesse momento, alterar a consulta. Pode-setambém combinar consultas clicando no botão Mais (More).

5/10/2018 Tutorial básico do Protege - slidepdf.com

http://slidepdf.com/reader/full/tutorial-basico-do-protege 63/63

 

5.  Para executar a consulta, clique no botão "encontrar" (Find ).

Você está no site www.eci.ufmg.br/mba - Tutorial: Noções básicas para uso do Protege.Tradução: Prof. Mauricio B.Almeida - [email protected] - Escola de Ciência da Informação - UFMG

Original: Sachs, E. Getting Started with Protege-Frames. (2006). Available from Internet:

<http://protege.stanford.edu/doc/tutorial/get_started/get-started.html>. Acess 9 July 2006


Top Related