Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web...

48
Web Semântica Fred Freitas CIn - UFPE

Transcript of Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web...

Page 1: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Web Semântica Fred FreitasCIn - UFPE

Page 2: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Objetivos

• Entender a utilidade e a filosofia da Web Semântica

• Distinguir as camadas da Web Semântica• De cada camada:

– Discernir a expressividade de cada uma delas

– Entender o papel de cada uma delas– Conhecer suas respectivas linguagens

Page 3: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Plano de aula

• Motivação: Problemas e potenciais da Web

• A Web Semântica e suas camadas

• As camadas XML e RDF

• A camada de Ontologias

• Aplicações e perspectivas

Page 4: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Trajetória da Internet

• 1a. Geração - troca de dados entre máquinas distintas• 2a. Geração - a World Wide Web• Disponibilizou uma vasta gama de aplicativos e

informação para as pessoas• Comércio eletrônico entre clientes e empresas (b2c)

Page 5: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

A Internet

• A linguagem em que são codificadas as páginas da Internet (HTML – HyperText Markup Language) garante apenas apresentação e navegação

• Como achar a informação desejada??

Page 6: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Quero saber o que pesquisa o Prof. Robin…

Page 7: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Página dele, em HTML

<meta NAME="Author" CONTENT="Jacques Robin"><meta NAME="Description" CONTENT="Personal HOme-page of

Jacques Robin professor"> …<h3><font face="Arial">Research Interests</font></h3><ul> <li> Artificial Intelligence </li>

<li> Multi-Agent Systems </li> <li> Computational Linguistics </li>

<li> NLP </li><li> Hypertext Generation </li>

<li> Intelligent Databases </li><li> Logic Programming </li><li>Data Warehousing and OLAP</li>

</ul>

O que está O que está codificadocodificado na na página dele não diz nadapágina dele não diz nada a respeito do conteúdo! a respeito do conteúdo!

Page 8: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Os Engenhos de Busca se confundem…

Baixa precisão

Baixa Cobertura

Page 9: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Motivação: Problemas de Recuperação de Informação na Web

• Falta de precisão: muitos resultados irrelevantes

• Principais ausências– Falta de contexto – Falta de semântica na definição das páginas

• O usuário em busca de informações objetivas é quem fica com o trabalho duro de interpretar, filtrar e combinar os resultados de sistemas de busca

Page 10: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Franklin Ramalho is a PhD student in the Centro de Informática at the Universidade Federal de Pernambuco.

http://www.cin.ufpe.br/~fsr/

http://www.di.ufpe.br/~jr/students.html

O significado dos links está relacionado a:

• O que há em torno

• Um contexto

Jacques Robin's Research StudentsPhD. students:

Franklin Ramalho

Qual o significado dos Links?

Page 11: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

„Quais são os competidores da Audi no mercado em Recife ?“?

Motivação: Perguntas que podem ser respondidas (mas não são!)

Respostas:

Volvo

Page 12: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

1 A Audi vende carros de luxo em Recife.

A Volvo vende carros de luxo em Recife.2

3 Audi e são competidores no mercado de Recife.

&

=

Motivação: Informações implícitas

Page 13: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Plano de aula

• Motivação: Problemas e potenciais da Web

• A Web Semântica e suas camadas

• As camadas XML e RDF

• A camada de Ontologias

• Aplicações e perspectivas

Page 14: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

3a. Geração - A Web Semântica

• Objetivo: prover contexto e semântica à informação para o software

• Transformar os dados e aplicativos em elementos úteis, legíveis e compreensíveis para o software

• Facilitar a comunicação dinâmica, a cooperação e a inferência para os agentes inteligentes

• Possibilitar o comércio eletrônico entre empresas (b2b)

Page 15: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Camadas da Web Semântica

Troca de dados

Dedução do Implícito

Semântica Explícita

Dados relacionais distrib.

Page 16: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

As camadas de lógica, prova e confiança

• Estas camadas ainda estão sendo pesquisadas• A camada lógica permite a especificação de regras que

atuam sobre instâncias e recursos• A camada de prova as executa• A camada de confiança avalia se a prova está correta ou

não

Page 17: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Plano de aula

• Motivação: Problemas e potenciais da Web

• A Web Semântica e suas camadas

• As camadas XML e RDF

• A camada de Ontologias

• Aplicações e perspectivas

Page 18: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

XML• HTML foi abstraída para XML

– eXtensible Markup Language

• As etiquetas (tags) podem ser rotulados• Dados ganham sintaxe, mas não significado:

• Etiquetas como “livro” e “autor” são intuitivas para nós– Mas não para o computador: o que é “livro”? Quais as relações? ...

<livraria> <livro> <titulo>O Lobo da Estepe</titulo> <autor>Herman Hesse</autor> <isbn>0836217462</isbn> </livro></livraria>

A camada XML

Page 19: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Definições de Tipos de Documentos (DTDs)

• DTDs definem a estrutura (e sintaxe) de um documento

• Classes, atributos, valores default e ordem de aparecimento dos dados das instâncias – Aninhamento léxico

<!DOCTYPE livraria [<!ATTLIST livro id ID #IMPLIED><!ATTLIST autor id ID #IMPLIED><!ATTLIST ISBN id ID #IMPLIED>]>

XML

Page 20: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Esquemas XML (XMLS)

• Semelhantes a DTDs, porém mais ricos• Definem-se ainda tipo e formato exato dos

atributos, número exato de instâncias de um aninhamento

• Há mecanismos de inclusão e derivação de esquemas que proporcionam reuso

• A camada XML descreve a estrutura do documento, deixando para as que acima dela a definição do conteúdo

XML

Page 21: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Web Semântica & XML

Empresa 2: <Automovel> <Nome>Jaguar XJ </Nome> <Custo>100.000 US$ </Custo></Automovel>

Empresa 1: <Produto> <tipo>Carro</tipo> <Nome>Jaguar</Nome> <Preco>300.000 R$</Preco></Produto>

Problemas:–Conflitos de Nome

–Conflitos de Valor

–Conflitos de Estrutura

XML

XML não provê semântica formalServe apenas para colaboração previamente acertada, com agentes e páginas num ambiente limitado (comunidade ou intranet).. Mas não para páginas a serem disponibilizadas para quaisquer usuários na Internet

• XML organiza os dados em árvores e define sintaxe• Mas só sintaxe não ajuda muito em B2B:

Page 22: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

A camada RDF

• Resource Description Framework• Adiciona semântica a um documento, sem referir-se

à sua estrutura• Usa XML como sintaxe• Descreve “recursos” (URIs) da Web

– Partes específicas de documentos ou dados como lugares, pessoas, etc

RDF+RDFSchema

Page 23: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Exemplo de descrição em RDF

http://www.cin.ufpe.br/~jr Date

CreatorJacques Robin

02-05-2002

http://www.cin.ufpe.br

Professor

Sujeito (recurso) http://www.cin.ufpe.br/~jrPredicado(atributo)

Criador (“creator”)

Objeto(valor)

“Jacques Robin"

Page 24: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Código em RDF

<rdf:RDF xmlns:rdf=http://www.w3.org/1999/02/22-rdf-syntax-ns#xmlns:dc=http://pur1.org/metadata/dublin_core#

><rdf:Description about= http://www.cin.ufpe.br/~jr>

<dc:Creator>Jacques Robin</dc:Creator><dc:Date>05-02-2002</dc:Date><dc:Description>Personal home-page …</dc:Description><Professor rdf:resource=“http://www.cin.ufpe.br”/>

</rdf:Description></rdf:RDF>

Meta-descrição

Descrição

Page 25: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

• RDF• Recursos são descritos como trios objetos-atributos-valores

• Os objetos são recursos • Valores são recursos ou strings• Ao invés de árvores, trios representam grafos diretos

rotulados

• RDF Schema– Padroes (primitivas) de modelagem

• class, subclassof, type• property, subpropertyof (hierarquias de propriedade)• domain, range (domínio e imagem)

• Motores de inferência: TRIPLE e Sesame

RDF & RDF(S)RDF+RDFSchema

Page 26: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

• RDF• Recursos são descritos como trios objetos-atributos-valores

• Os objetos são recursos • Valores são recursos ou strings• Ao invés de árvores, trios representam grafos diretos

rotulados

• RDF Schema– Padroes (primitivas) de modelagem

• class, subclassof, type• property, subpropertyof (hierarquias de propriedade)• domain, range (domínio e imagem)

• Motores de inferência: TRIPLE e Sesame

RDF & RDF(S)RDF+RDFSchema

TercioFred

Professor

Pessoa

subClassOf subproperty

type

responsavelPordomain

range

typeorienta

Empregado

orientaAluno

Page 27: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Avaliação de RDF & RDF(S)RDF+RDFSchema

• Com RDF(S) é possível :– Falar sobre recursos da Web– Definir vocabulário – Modelar relações simples

• Porém, isto é insuficiente para a Web– Como expressar contexto apropriadamente:

• Igualdade? –ex: 2 páginas que falam sobre um mesmo livro

• Características de relações? –Relações inversas, transitivas, simétricas

• Conjuntos disjuntos• ...

Page 28: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Plano de aula

• Motivação: Problemas e potenciais da Web

• A Web Semântica e suas camadas

• As camadas XML e RDF

• A camada de Ontologias

• Aplicações e perspectivas

Page 29: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Definições de ontologia

• Ontologia: Especificação de uma conceitualização [Gruber 91]

• Hierarquia de conceitos (classes) com suas relações, restrições, axiomas e terminologia associada

Id Modelo

Xy 777

Agente da Cia. Aérea

Ont. de Meios de Transporte

Trem Avião Barco

Transporte Carreira Caça

Avião

Meu agente

777[é-um 777]

Id Modelo

Xy 777

Agente da Cia. Aérea

Ont. de Meios de Transporte

Trem Avião Barco

Transporte Carreira Caça

Avião

Meu agente

777[é-um 777]

[Huhns & Singh 97]

Ontologias

Page 30: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

• “Uma ontologia é uma especificação explícita e formal de uma conceitualização compartilhada” [Studer et al 98]

• Explícita: definições declarativas de conceitos, instâncias, relações, restrições e axiomas

• Formal: declarativamente definida, sendo compreensível e manipulável para inferência por agentes e sistemas– Precisa estar representada num formalismo de representação de

conhecimento, como Frames e Lógica de Descrições! • Conceitualização: modelo abstrato de uma área de

conhecimento ou de um universo limitado de discurso• Compartilhada: conhecimento consensual

OntologiasDefinições de ontologia II

Page 31: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Ontologia Ciência Ontologias

Page 32: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Relações na Ontologia Ciência

Page 33: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

• A camada de ontologias foi padronizada pelo W3C usando a linguagem OWL (Web Ontology Language)

• Implementa o formalismo lógica de descrições– Inferência completa e decidível– Motores de inferência: FAcT, Racer

OntologiasA linguagem OWL

Page 34: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

• Classes podem ser construídas por:– União– Interseção– Complemento– Enumeração de instâncias

• Classes podem ter disjunções • Propriedades podem ter:

– transitividade, simetria, atributos inversos– propriedades funcionais

• (se P(x,y) ^ P(y,x) => x=y)

• Igualdade e desigualdade de instâncias

OntologiasExpressividade da camadade ontologias

Page 35: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Igualdade

x:Professor

x:Person

x:PhD-Student

x:Human

rdfs:Class

x:Fred x:Rafaelx:Tercio

sub-classe

instância

Declaração de classes

x:Human

x:email

x:supervises

x:advises

x:Person x:Person

rdf:Literal

x:Human

rdfs:domain

rdfs:domain

rdfs:range

rdfs:range

rdfs:rangeDeclaração de propriedades

RDFRDFOntologias

igualdade

desigualdade

Page 36: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Igualdade

x:Professor

x:Person

x:PhD-Student

x:Human

rdfs:Class

x:Fred x:Rafaelx:Tercio

sub-classe

instância

Declaração de classes

x:Human

x:email

x:supervises

x:advises

x:Person x:Person

rdf:Literal

x:Human

rdfs:domain

rdfs:domain

rdfs:range

rdfs:range

rdfs:rangeDeclaração de propriedades

RDFRDFOntologias

igualdade

desigualdade

instance(Human) ?

Fred, Tercio, Rafael

Advises( Fred, ?)

Tercio

x:Terciox:Fred

X:Rafael

[email protected]

[email protected]

x:advises

x:email

x:email

x:email

[email protected]

x:supervises

x:isSupervisedBy

Page 37: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Igualdade

x:Professor

x:Person

x:PhD-Student

x:Human

rdfs:Class

x:Fred x:Rafaelx:Tercio

sub-classe

instância

Declaração de classes

x:Human

x:email

x:supervises

x:advises

x:Person x:Person

rdf:Literal

x:Human

rdfs:domain

rdfs:domain

rdfs:range

rdfs:range

rdfs:rangeDeclaração de propriedades

RDFRDFOntologias

igualdade

desigualdade

x:Terciox:Fred

X:Rafael

[email protected]

[email protected]

x:advises

x:email

x:email

x:email

[email protected]

x:supervises

x:isSupervisedBy

Conhecimento adicional•supervises e isSupervisedBy sao inversos• cooperatesWith é simétrica• Os tópicos de pesquisa de um Phd-Student sao um subconjunto dos tópicos do Professor que o orienta

Page 38: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Plano de aula

• Motivação: Problemas e potenciais da Web

• A Web Semântica e suas camadas

• As camadas XML e RDF

• A camada de Ontologias

• Aplicações e perspectivas

Page 39: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Aplicações

• Gestão de Conhecimento– A Web semântica pode ser o elemento agregador, pois o

conhecimento de uma empresa pode ser organizado em torno de ontologias

• Agentes inteligentes!– Poderão trocar e processar informação convenientemente

em processos de comércio eletrônico– Se programados convenientemente poderão responder a

perguntas sobre informações da Web

• ITTALKS: Palestras de TI são anotadas em OWL automaticamente– Usuários são avisados sobre palestras de seu interesse

Page 40: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Perspectivas da Web semântica

• Deve se popularizar primeiro em segmentos empresariais – Comércio eletrônico B2B– Workflow– E-government, e-learning

• Florescem aplicações e ferramentas– Motores de inferência– Ambientes para ontologias– Anotadores semi-automáticos

Page 41: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Cuidado com padrões complexos!

• Misturar navegação, apresentação e semântica numa só definição prejudica a legibilidade

• È preciso aprender com os erros da Ontolingua• Problemas relativos à lógica de descrições:

OWL é bastante expressivo, mas...– Que usuários estão familiarizados com LD?– O usuário comum se habituará à LD

Page 42: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Conclusão

• Tecnologias ligadas à Web Semântica podem ser muito úteis– Soluções para Gestão de Conhecimento e de

Documentos– Muitas possíveis aplicações para a Web– Muitas possíveis aplicações para eBusiness, e-

gov, e-learning...

Page 43: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Conclusão II

• A Web Semântica pode levar o tratamento de informação a outro patamar– Domínios modelados com clareza e interpretação

semântica– Relações entre itens de informação podem ser

descritas com interpretação compreensível para o software

– Usuários recebem respostas, e não listas de links!

Page 44: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Para fixar: Resumo• A Web Semântica visa transformar os dados e

aplicativos em elementos úteis, legíveis, compreensíveis para o software

• Com ela é possível inferir dados implícitos• As principais camadas são:

– A camada XML, que provê sintaxe– A camada RDF, que provê semântica simples– A camada de ontologias, que provê rica expressividade

para definir domínios de aplicação

• Existem ferramentas para a Web semântica• Existem repositórios para reuso de ontologias

Page 45: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Próximas aulas

Page 46: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Ferramentas para Manipulação de Ontologias

Page 47: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Reusos de Ontologias Colaboradores remotos

Escritores

Leitores

Aplicações remotas

DB

Aplic. GUI

Aplicações stand-alone

Aplic.

BC

KQML

NGFP

Servidor / Editor de Ontologias

Editor

Servidor

HTTP

NGFP

Tradutores:LOOM,IDL,CLIPS...

Bibl

Transferência de arquivos (Batch)

Page 48: Web Semântica Fred Freitas CIn - UFPE Objetivos Entender a utilidade e a filosofia da Web Semântica Distinguir as camadas da Web Semântica De cada camada:

Aos Interessados

• Tutorial “Ontologias e Web Semântica”– Fred Freitas– JAIA (Jornada de Atualização em IA), Congresso da

Sociedade Brasileira de Computação (SBC), Campinas, 2-8/agosto

• Tutorial “Ontologies: Representation, Engineering, Learning & Applications”– Prof. Dr. Rudi Studer, W3C– 3rd IFIP Conference on E-Commerce, E-business and E-

Government (I3E), Casa Grande Hotel, Guarujá, 21-24/setembro de 2003