PROTEGÉ Suporte FRAMES INSTALAÇÃO Descarregar do site http://protege.stanford.edu/ Escolher o instalador que contem VJM incluso. Executar o instalador. É automático. INTRODUÇÃO - PROTEGÉ Protégé é uma plataforma em JAVA de código aberto desenvolvido pelo grupo de pesquisa Stanford Medical Informatics da escola de medicina da Universidade de Stanford. Sistema para edição de ontologias e bases de conhecimento que permite criar formulários para a aquisição de conhecimento baseados em ontologias. Independência de um algoritmo específico de inferência Fornece uma API de representação de conhecimento que permite a extensão do programa para necessidades específicas. INTRODUÇÃO - PROTEGÉ Arquitetura integrável a diversas aplicações, via componentes que podem ser adicionados ou conectados ao sistema, sem necessitar o re desenvolvimento. Backends, permitem usuários armazenar e importar bases de conhecimento em vários formatos Slot widgets, são usados para mostrar e editar valores de slot ou suas combinações em modos de domínio específico e tarefa específica; Tab plug-ins, são aplicativos em janelas adicionais, como visualizadores, máquinas de inferência, intérprete sistemas especialistas (Jess), Netbeans para multiagentes em Jade, etc. INTRODUÇÃO - PROTEGÉ A linguagem axiomática PAL (Protégé Axiomatic Language) Suporte Cliente-Servidor Suporte Multi usuário colaborativo Painel Colaborativo, chat/fórum de discussão, propostas, votação, e buscas colaborativas. ESTRUTURA DE PROTEGÉ ALGUMOS TABS PLUGINS PSM Librarian - Biblioteca de Métodos de Solução de Problemas reutilizáveis JAMBALAYA - Visualização de ontologias Protégé Algernon – Máquina de inferência baseado em regras JessTab, ClipsTab – Intérpretes Sistemas Especialistas XML Tab - Extração de ontologias de arquivos XML ( Extensible Markup Language ) de/para Protégé ALGUMOS FORMATOS DE ARQUIVOS PADRÃO .pprj Contém um projeto, formado por formulário customizado e referências externas relacionadas às informações do domínio. .pont Formato CLIPS que contém uma ontologia. .pins Formato CLIPS que contém instâncias. .OWL Formato OWL PROTEGÉ- AS DUAS FORMAS DE MODELAGEM DE ONTOLOGIAS O editor Protégé-Frames permite aos usuários construir e compartilhar ontologias baseadas em quadros (Frames), de acordo com a Open Knowledge Base Connectivity protocol (OKBC). O editor Protégé-OWL editor permite aos usuários construir ontologias para redes semânticas, particularmente para o W3C's Web Ontology Language (OWL). A semântica formal OWL especifica como derivar suas conseqüências lógicas (fatos não literalmente presentes na ontologia, mas inferido pela semântica). Quadros (Frames) Idéia fundamental introduzida por Marvin Minksy em 1975 (“A framework to represent knowledge”). Os Quadros ou Cenários (“Frames”), e sua variação, foi introduzidos para permitir a expressão das estruturas internas dos objetos, mantendo a possibilidade de representar herança de propriedades. As pessoas, ao enfrentarem uma nova situação, guardam o repertório do comportamento para situações similares. Está na origem das idéias que levaram às linguagens de programação orientadas a objetos. Quadros (Frames) Um quadro consiste em um conjunto de atributos (“slots”) que através de seus valores, descrevem as características do objeto representado pelo quadro. Os valores atribuídos aos atributos podem ser, além dos valores do objeto em particular, valores default, ponteiros para outros quadros, e conjuntos de regras de procedimento que podem ser implementados. Se os valores dos atributos forem apontadores para outros quadros, cria-se uma rede de dependências entre os quadros. Os conjuntos de procedimentos indicam que procedimento deve ser executado quando certas condições forem satisfeitas, por exemplo: ao ser criado o atributo, ao ser lido o valor do atributo, ao ser modificado o valor do atributo, ou ao ser destruído o valor do atributo. EXEMPLO DE FRAMES ANIMAL MAMIFERO : É UM CLASSE RESPIRA: BOOLEAN : COME: INSTANCE CLASSE É UM É UM MORA: INSTANCE : SetStatus() CLASSE LOBO COELHO RESPIRA: BOOLEAN RESPIRA: BOOLEAN COME: INSTANCE COME MORA: BOOLEAN É UM COME: INSTANCE MORA: BOOLEAN : : SetStatus() INSTANCIA CLASSE É UM SetStatus COLMILHO BRANCO BUGGS BUNNY COME: INSTANCE : MORA: INSTANCE : SetStatus(matar) MORA EM INSTANCIA COME: INSTANCE COME MORA: INSTANCE SetStatus(morrer) MORA EM BRASIL COORDENADA: INSTANCE INSTANCIA CLASSE PAIS : ESTRUTURA: INSTANCE SetAmbente() : É UM SetAmbente() PROTEGÉ- REPRESENTAÇÃO DE FRAMES CLASSE COME LOBO DOMÍNIO TIPO DE PROPIEDADE (SLOT) MORA: INSTANCE COME: INSTANCE MORA: INSTANCE : RELAÇONAMENTO: STRING RELAÇONAMENTO: STRING SetStatus() INMIGOS SetStatus ALHETIUS CANINUS É UM COME: INSTANCE MORA: INSTANCE CLASSE RELAÇÃO: STRING : RELAÇONAMENTO: STRING : COME: INSTANCE COELHO É UM DOMÍNIO DOMÍNIO RELAÇÃO:STRING SetStatus(matar) COLMILHO BRANCO COME: INSTANCE PROPIEDADES (SLOTS) MORA: INSTANCE COME PROPIEDADE (SLOT) INDIVIDUAL COME: INSTANCE MORA: INSTANCE RELAÇÃO RELAÇÃO:STRING SetStatus(matar) BUGGS BUNNY INMIGOS SetStatus(morrer) INSTANCIA Entorno Protégé Frames Entorno Protégé Frames Entorno Protégé Frames PROTEGÉ Suporte OWL OWL (Ontology Web Language) Recomendada pela W3C (World Wide Web Consortium), a OWL possibilita incluir um maior número de vocabulários para descrição de classes e propriedades, dando mais expressividade sobre o domínio definido. SUB-LINGUAGENS DE OWL COMPONENTES OWL PROPRIEDADES Conhecidas também Atributos Classificadas em 3 tipos: Propriedades de Objeto Propriedades de Tipo de Dados Propriedades de Anotações SIGNIFICADOS DAS PROPRIEDADES Funcionais Funcionais Inversas Transitivas Simétricas Assimétricas Reflexiva Irreflexiva CLASSES As classes são definidas como sendo o conjunto dos indivíduos, representando concretamente os conceitos. Organizadas em: Superclasses Subclasses CRIAÇÃO DE ONTOLOGIA Definição do domínio e escopo da ontonlogia Reutilizar ontologias existentes (se possível) Definir classes e sua hierarquia Definir as propriedades da classe e suas restrições Criar (instanciar) a ontologia MODELAGEM DE HIERARQUIAS DE CLASSES - PIZZA SUB-CLASSES Todos os indivíduos que são membros de uma subclasse são membros da classe ancestral. DEFININDO AS PROPRIEDADES DEFININDO AS PROPRIEDADES DEFININDO DOMÍNIO E ESCOPO