Você está na página 1de 6

Aula

de Laboratrio: Iniciao ao Protg/Frames


1. Arranque

Iniciar a aplicao Protg em Windows ou Linux.

Criar um novo projeto opo New Project, escolhendo a opo Protg Files
(.pont and .pins):



Ao longo deste guio vamos ilustrar as opes da ferramenta representando a
frase A Sara consertou a cadeira com cola.

2. Criao de Classes, Slots e Instncias

A janela do projeto tem inicialmente 5 separadores (Classes, Slots, Forms,
Instances e Queries).

1/6

Para cada novo projeto comear por criar a classe CoisasXXX, onde XXX dever
ser algo que identifique o projeto. Por exemplo, para resolver o exerccio 1. e) (A
Sara consertou a cadeira com cola), podemos criar a classe CoisasSara.

2.1 Classes

A criao de classes feita no separador Classes, selecionando a superclasse da
classe que se pretende criar e clicando no cone
. Para criar a classe
CoisasSara, a classe de topo do projeto, selecionar a classe :THING.

O nome da classe dever ser escrito no campo Name. No campo Role dever
ser escolhido o tipo da classe:
Concrete A classe pode ter instncias diretas.
Abstract No podem ser criadas instncias desta classe.

2.2 Slots
A criao de slots feita no separador Slots, clicando no cone .



Vamos ilustrar, criando um slot que nos vai permitir guardar o nome a utilizar
para visualizar as instncias que forem criadas neste projeto.
necessrio definir trs coisas principais para cada slot: nome, domnio e tipo do
valor:
nome colocado no campo Name (nome_instancia, no exemplo
acima).

2/6

domnio definido em Domain, representa a classe para a qual se est a

definir o atributo em causa e dever ser escolhida clicando no cone


.
(no exemplo acima, a classe CoisasSara)
tipo de valor escolhido em Value Type, define o tipo de valor do slot.
Pode ser um tipo primitivo (como String, no exemplo acima) ou uma
referncia a um nome de uma classe (ver na seco 3.).
Para alm destas trs componentes, obrigatrias, podem ainda ser especificados
outros atributos do slot, nomeadamente: cardinalidade, valores mnimo e/ou
mximo, valores padro ou por omisso.

2.3 Instncias
A criao de instncias feita no separador Instances, clicando no cone


Em cima, um exemplo da criao de uma instncia da classe Pessoa, com o nome
Sara (notar que a classe Pessoa tem que ser criada previamente).

Como se pode verificar na figura acima, na janela INSTANCE BROWSER, o
nome da instncia um nome interno (quando o ideal seria que aparecesse
Sara).

De modo a obter este comportamento por parte do Protg, ainda no separador
Instances, selecionar a classe CoisasSara, clicar no cone
que aparece na
janela INSTANCE BROWSER e escolher como display slot o slot
nome_instancia.



Deste modo, todas as instncias deste projeto sero apresentadas com o nome
que for escolhido e no com o nome interno:

3/6






3. Mais sobre os tipos de valores dos slots

Para alm dos tipos primitivos, podemos criar slots cujos valores sejam
referncias a classes.
Por exemplo, vamos considerar a definio dos slots associados classe
Consertar, que representa uma ao genrica de consertar alguma coisa.
Recordando, consertar alguma coisa necessita da definio trs atributos: o
agente que conserta (uma pessoa), o objecto que consertado (um objecto) e um
utenslio usado para realizar o conserto (tambm um objecto).

Em vez de utilizarmos o separador Slots, tambm podemos criar slots
diretamente no separador Classes. Assim, assumindo tambm j criadas as
classes Objecto, Cadeira, Cola e Consertar, vamos selecionar esta ltima e
clicar no cone que aparece na janela CLASS EDITOR.

O slot que representa o agente que realiza o conserto dever ter como valor uma
pessoa concreta. Assim, deveremos escolher como Value Type a opo
Instance e, em Allowed Classes escolher de que classe tm que ser as
instncias que podem assumir o valor do slot:



Notar que Domain j aparece preenchido, pois corresponde classe que estava
inicialmente selecionada.

4/6


Quando no nos queremos referir a instncias concretas, devemos indicar em
Value Type a opo Class. Por exemplo, podemos querer dizer que o utenslio
usado foi cola sem referir que tipo ou instncia de cola foi utilizado.

A instncia de consertar que representa a frase em causa fica ento:




4. Visualizao grfica

De modo a visualizarmos a rede correspondente ao que se definiu, temos que
comear por adicionar um novo separador ao projeto.
Para isso:

Menu Project -> Configure... -> e, no separador Tab Widgets, selecionar
OntovizTab. adicionado o separador Ontoviz lista de separadores:



Antes de continuar necessrio gravar o projeto (Menu File -> Save Project.
Na janela que aparece, carregar no cone
do campo Project e escolher um
local e nome para o projeto.

Para visualizar, selecionar o separador Ontoviz.

Selecionar a classe de topo do projeto, no caso CoisasSara e carregar no cone
para a adicionar como classe a ser visualizada. Seguidamente, selecionar os
itens a visualizar nas boxs correspondentes:


Finalmente, carregar no cone

para visualizar.

5/6

Caso se pretenda gravar a representao grfica da rede num ficheiro .gif, pode-
se escolher essa opo clicando no cone
.

A rede final dever ficar anloga representada na figura mostrada na pgina
seguinte.

Importante
Se o grfico no aparecer, os problemas mais comuns so:
- esquecimento de gravar previamente o projeto;
- utilizao de caracteres acentuados nos nomes (de instncias, slots ou
classes).


6/6

Você também pode gostar