View
2
Download
0
Category
Preview:
Citation preview
Web semântica eOntologias OWL
EBRALC 2008
EBRALC 2008 - Renata Vieira PUCRS
EBRALC 2008Renata Vieira - PUCRS
Web Atual
� Atualmente a Web é usada basicamente para:� Consumo humano de informações� Compras
EBRALC 2008 - Renata Vieira PUCRS
� Compras� Comunicação� Acesso a conteúdo
Web Atual
� Dificuldades na gestão do conhecimento:� Busca de informação� Extração de informação� Troca de informação entre serviços
EBRALC 2008 - Renata Vieira PUCRS
� Troca de informação entre serviços� Inconsistências de terminologia
EBRALC 2008 - Renata Vieira PUCRS
Web Semântica
� Organização do conhecimento em espaços conceituais correspondentes ao seu significado� Metadados semânticos
EBRALC 2008 - Renata Vieira PUCRS
� Metadados semânticos
Web Semântica
� Em outras palavras:� Melhorar a descrição do conteúdo e serviços
disponíveis na Web� Usar técnicas avançadas da IA de representação
EBRALC 2008 - Renata Vieira PUCRS
� Usar técnicas avançadas da IA de representação de conhecimento
mundo
conceito
Ontologias (Harmelen)
EBRALC 2008 - Renata Vieira PUCRS
Desentendimento
Confusão conceituale terminológica
Concordar com umaconceitualizaçãoTorná-la explícitaem alguma linguagem.
língua/linguagem
Ontologias e lógica
� A inferência tem um papel importante na estrutura da Web Semântica
� O conhecimento pode ser manipulado por meio de regras lógicas e verificar questões
EBRALC 2008 - Renata Vieira PUCRS
meio de regras lógicas e verificar questões não explicitamente representadas, mas que derivam de uma especificação inicial
Ontologias e lógica
� Lógicas específicas para a descrição de conceitos foram desenvolvidas:
� são as chamadas lógicas de descrição
EBRALC 2008 - Renata Vieira PUCRS
� Como adaptar essas linguagens para a Web?
Web Semântica
� Reformulação das linguagens básicas (html)
� As novas linguagens relacionadas a metadados e ontologias são:
EBRALC 2008 - Renata Vieira PUCRS
� XML
� RDF
� OWL
Web Semântica
EBRALC 2008 - Renata Vieira PUCRSWebMedia 2005 – Poços de Caldas, MG
XML
� Fácil de entender e de analisar (através de parsing, por exemplo) e possui um formato auto-descritivo para troca de dados
EBRALC 2008 - Renata Vieira PUCRS
� Assim como a HTML a XML usa tags, ou etiquetas, para fazer a marcação
XML
� As etiquetas são criadas formalmente como elementos
� Por sua vez os elementos possuem atributos que os identificam e caracterizam
EBRALC 2008 - Renata Vieira PUCRS
identificam e caracterizam
� Enquanto a HTML possui elementos e atributos pré-definidos para a criação de hipertextos a XML permite a criação de diversos elementos e atributos, por isso é extensível
XML
� Linguagens genéricas: � São linguagens criadas a partir da XML para
manipulação de documentos com estrutura também em XML
EBRALC 2008 - Renata Vieira PUCRS
em XML
� Ou servem para chegar a outros níveis da Web Semântica
XML
� Exemplos de linguagens genéricas: � XSLT (Extensible Style Sheet Language
Transformation)� XPath (XML Path)
EBRALC 2008 - Renata Vieira PUCRS
� XPath (XML Path)� XQL (XML Query Language)� XHTML� XSD (XML Schema Definition)
XML
� Linguagens específicas: � São criadas por indústrias e comunidades com fins
específicos de aplicação
As linguagens genéricas são usadas para
EBRALC 2008 - Renata Vieira PUCRS
� As linguagens genéricas são usadas para manipular linguagens específicas
Exemplo de XML específico: catálago de CDs
<CATALOG><CD><TITLE>Empire Burlesque</TITLE><ARTIST>Bob Dylan</ARTIST><COUNTRY>USA</COUNTRY><COMPANY>Columbia</COMPANY><PRICE>10.90</PRICE>
EBRALC 2008 - Renata Vieira PUCRS
<PRICE>10.90</PRICE><YEAR>1985</YEAR></CD>
<CD><TITLE>Hide your heart</TITLE><ARTIST>Bonnie Tyler</ARTIST><COUNTRY>UK</COUNTRY><COMPANY>CBS Records</COMPANY><PRICE>9.90</PRICE><YEAR>1988</YEAR></CD>
Linguagens XML para a WS
� XML providencia uma sintaxe para criação de documentos estruturados, mas não impõe restrições semânticas
EBRALC 2008 - Renata Vieira PUCRS
� em relação à organização semântica, algumas extensões XML foram propostas
� RDF - OWL
Linguagens XML para a WS
� RDF é um modelo de dados para os recursos como objetos e relacionamentos entre eles
� OWL fornece uma descrição rica para as
EBRALC 2008 - Renata Vieira PUCRS
� OWL fornece uma descrição rica para as classes e propriedades através de restrições lógicas
Recursos Web
� Representam objetos do nosso mundo real em um ambiente virtual
� São identificados por URIs (identificadores únicos na web)
EBRALC 2008 - Renata Vieira PUCRS
únicos na web)
� Possuem relacionamentos entre si
RDFResource Description Framework
� O RDF é um padrão da W3C para descrever recursos da Web
� Alguns exemplos de descrições de recursos são:
EBRALC 2008 - Renata Vieira PUCRS
recursos são:
� título, autor, data de atualização, conteúdo e informação de copyright
� propriedades de itens de compras, como preço e disponibilidade
RDF
� Para um melhor entendimento podemos definir os seguintes conceitos:
� Um recurso é qualquer coisa que possa ter um URI (identificador Web), como "http://www.inf.pucrs/~rvieira";
EBRALC 2008 - Renata Vieira PUCRS
� Uma propriedade indica uma informação sobre um recurso, como “autor”;
� Um valor é o valor da propriedade, como “Renata Vieira”.
� Observa-se que o valor da propriedade pode ser outro recurso.
RDF� A forma que o RDF usa para descrever tais
recursos segue a estrutura básica:
� recurso – propriedade – valor.
� sujeito – predicado – objeto.
EBRALC 2008 - Renata Vieira PUCRS
sujeito – predicado – objeto.
inf.pucrs.br/~rvieira dc:Creator Renata Vieira
Página Web “inf.pucrs.br/~rvieira” – autor – Renata Vieira
RDF
<?xml version="1.0" >
<rdf:RDF
xmlns:rdf=“http://www.w3.org/1999/02/22-rdf-syntax-ns”
EBRALC 2008 - Renata Vieira PUCRS
xmlns:rdf=“http://www.w3.org/1999/02/22-rdf-syntax-ns”
xmlns:dc=“http://purl.org/dc/elements/1.1”>
<rdf:Description rdf:about=“http://inf.pucrs.br/~rvieira">
<dc:Creator>Renata Vieira</dc:Creator>
</rdf:Description>
</rdf:RDF>
RDF Schema
� O RDFS é um esquema de descrição que utiliza classes e propriedades para descrever os recursos
� Permite a estruturação hierárquica e
EBRALC 2008 - Renata Vieira PUCRS
� Permite a estruturação hierárquica e generalização/especialização
RDF Schema
� rdfs:Resource : todas as coisas descritas são recursos
� rdfs:Property: propriedades
� rdfs:Class: classes
EBRALC 2008 - Renata Vieira PUCRS
� rdfs:Class: classes
� rdfs:subClassOf: subclasses
� rdfs:subPropertyOf: indica que uma propriedade é especialização de outra
RDF Schema
rdfs:Resource
rdfs:Class xyz:VeiculoMotor
rdfs:subClassOf
rdf:Type
EBRALC 2008 - Renata Vieira PUCRS
rdfs:Class xyz:VeiculoMotor
xyz:Caminhaoxyz:Van
xyz:MiniVan
xyz:Carro
<rdf:RDF xml:lang=”en” xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#”xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#">
<rdf:Description ID="VeiculoMotor"><rdf:type resource="http://www.w3.org/2000/01/rdf-schema#Class"/><rdfs:subClassOf rdf:resource="http://www.w3.org/2000/01/rdf- schema#Resource"/>
</rdf:Description><rdf:Description ID="Carro">
<rdf:type resource="http://www.w3.org/2000/01/rdf-schema#Class"/><rdfs:subClassOf rdf:resource="#VeiculoMotor"/>
RDF Schema
EBRALC 2008 - Renata Vieira PUCRS
<rdfs:subClassOf rdf:resource="#VeiculoMotor"/></rdf:Description>
<rdf:Description ID="Van"><rdf:type resource="http://www.w3.org/2000/01/rdf-schema#Class"/><rdfs:subClassOf rdf:resource="#VeiculoMotor"/>
</rdf:Description><rdf:Description ID="MiniVan">
<rdf:type resource="http://www.w3.org/2000/01/rdf-schema#Class"/><rdfs:subClassOf rdf:resource="#Van"/><rdfs:subClassOf rdf:resource="#Carro"/>
</rdf:Description></rdf:RDF>
RDF e OWL – ontology web language
� Base de OWL � Ontology Web Language
OWL incrementa o poder de expressão na
EBRALC 2008 - Renata Vieira PUCRS
� OWL incrementa o poder de expressão na descrição dos recusos
Componentes OWL
� classes + hierarquia de classes� instâncias� slots/propriedades/relações � herança
EBRALC 2008 - Renata Vieira PUCRS
� herança � restrições nas propriedades (tipo, cardinalidade)� propiedades das relações (simetria, transitividade)� relações entre classes (disjuntas, sobrepostas)� tarefas de raciocínio: classificação, subclassificação
OWL - Elementos Básicos
� Classes� Indivíduos� Propriedades
EBRALC 2008 - Renata Vieira PUCRS
� Propriedades
Grafo
Exemplo:Classes
Instâncias
Propriedades
EBRALC 2008 - Renata Vieira PUCRSWebMedia 2005 – Poços de Caldas, MG
Propriedades
OWL - Classes
<owl:Class rdf:ID="Mae"><rdfs:subClassOf>
<owl:Class rdf:ID="Mulher"/>
EBRALC 2008 - Renata Vieira PUCRS
</rdfs:subClassOf></owl:class>
OWL - Indivíduos
<Mae rdf:ID="Eva"><temMarido><Homem rdf:ID="Adao"/>
</temMarido>
EBRALC 2008 - Renata Vieira PUCRS
</temMarido><temFilho><Homem rdf:ID="Abel"><temMae rdf:resource="#Eva"/>
</Homem></temFilho>
</Mae>
OWL - Propriedades
� ObjectProperty, DatatypeProperty, rdfs:subPropertyOf, rdfs:domain, rdfs:range.
� Tipos de Propriedades:
EBRALC 2008 - Renata Vieira PUCRS
� Propriedades de Objetos
� Propriedades de Tipos de Dados
OWL – Propriedade tipo Objeto
<owl:ObjectProperty rdf:about="#temMarido"><rdfs:range rdf:resource="#Homem"/><rdfs:domain rdf:resource="#Mae"/>
EBRALC 2008 - Renata Vieira PUCRS
<rdfs:domain rdf:resource="#Mae"/></owl:ObjectProperty>
OWL
� Além de classes, instâncias e relações
� Permite explicitar que uma relação é simétrica, transitiva, funcional, funcional inversa, etc.
EBRALC 2008 - Renata Vieira PUCRS
OWL - propriedades
� Propriedade Transitiva
� Se uma propriedade P é especificada como transitiva então para qualquer x, y e z:
EBRALC 2008 - Renata Vieira PUCRS
P(x,y) e P(y,z) implica P(x,z)
OWL - propriedades
� Propriedade Simétrica
� Se a propriedade P é marcada como simétrica então para qualquer x e y:
EBRALC 2008 - Renata Vieira PUCRS
P(x,y) se somente se P(y,x)
OWL - propriedades
� Propriedade Funcional
� Se uma propriedade P é marcada como funcional então para todo x, y e z:
EBRALC 2008 - Renata Vieira PUCRS
P(x,y) e P(x,z) implica que y = z
OWL - propriedades
� Propriedade Inversa
� Se a propriedade P1 é marcada como inversa de P2, então para todo x e y:
EBRALC 2008 - Renata Vieira PUCRS
P1(x,y) se somente se P2(y,x)
OWL - propriedades
� Permite definir cardinalidade para as relações, variando entre cardinalidade máxima, mínima e cardinalidade exata.
� Ex. tem no máximo um marido
EBRALC 2008 - Renata Vieira PUCRS
� Ex. tem no máximo um marido
� Divisão da base de conhecimento� Conhecimento Intensional
� conhecimento geral sobre o domínio do problema
Conhecimento Extensional
OWL - DL
EBRALC 2008 - Renata Vieira PUCRS
� Conhecimento Extensional � especifica um problema particular.
� Divisão da base de conhecimento em DL� TBox� ABox
• Conceitos (ou classes): são conjuntos• Construtores: são os operadores que
podem ser usados para construir novosconceitos
OWL - DL
EBRALC 2008 - Renata Vieira PUCRS
conceitos
• Papéis: são propriedades dos conceitos
• Quantificadores: quantificam os papéis
TBox
� O TBox contém o conhecimento intensional naforma de terminologia
� Ele é construído através de declarações quedescrevem as propriedades gerais dos conceitos
� A forma básica de declaração em um TBox é a
EBRALC 2008 - Renata Vieira PUCRS
� A forma básica de declaração em um TBox é adefinição de conceito, que é a definição de umnovo conceito em termos de outros conceitosdefinidos previamente. Ex:
Mulher ≡ Pessoa ┌┐ Fêmea
TBox
� As declarações do TBox são representadas usualmente como equivalências lógicas (condições necessárias e suficientes ).
EBRALC 2008 - Renata Vieira PUCRS
TBox
� Mulher ≡ Pessoa ┌┐ Fêmea� Homem ≡ Pessoa ┌┐ ¬Mulher� Mãe ≡ Mulher ┌┐ ∃ temFilho. Pessoa
EBRALC 2008 - Renata Vieira PUCRS
� Mãe ≡ Mulher ∃ temFilho. Pessoa� Pai ≡ Homem ┌┐ ∃ temFilho. Pessoa� Pais ≡ Pai └┘ Mãe
EBRALC 2008 - Renata Vieira PUCRS
ABox
• O ABox contém o conhecimento extensional,que especifica os indivíduos do domínio.
EBRALC 2008 - Renata Vieira PUCRS
• É a instanciação da estrutura de conceitos.
ABox
• Declaração de Conceitos : C(a)– Declara que “a” é um indivíduo do conceito C.
– EX : Pessoa(Ana)
EBRALC 2008 - Renata Vieira PUCRS
• Declaração de Papel : R(a,b)– Declara que o indivíduo “a” está relacionado
com o indivíduo “b” através da propriedade R.
– Ex : temFilho(Ana,João)
Exemplo de um ABox
� Mulher(Maria)� Homem(João)� temFilho(Maria,Pedro)
EBRALC 2008 - Renata Vieira PUCRS
� temFilho(Maria,Pedro)� temFilho(João,Pedro)
EBRALC 2008 - Renata Vieira PUCRS
Grafo
EBRALC 2008 - Renata Vieira PUCRSWebMedia 2005 – Poços de Caldas, MG
Mapeamento da DL em OWL
� Classe� DL : Nome
� OWL : <owl:Class rdf:ID=“Nome"/>
� Sub-classe
EBRALC 2008 - Renata Vieira PUCRS
� Sub-classe� DL : ⊆� OWL : rdfs:subClassOf
� Equivalência� DL : ≡� OWL : owl:equivalentClass
Mapeamento da DL em OWL
� Negação� DL : ¬
� OWL : owl:complementOf
EBRALC 2008 - Renata Vieira PUCRS
� Interseção� DL : ┌┐
� OWL : owl:intersectionOf
� União� DL : └┘� OWL : owl:unionOf
Mapeamento da DL em OWL
� Quantificador existencial� DL : ∃� OWL : owl:someValuesFrom
EBRALC 2008 - Renata Vieira PUCRS
� Quantificador Universal� DL : ∀� OWL : owl:allValuesFrom
Mapeamento da DL em OWL
� Restrição de números qualificada
� DL : =
� OWL : owl:cardinality
EBRALC 2008 - Renata Vieira PUCRS
� OWL : owl:cardinality
� DL : ≥
� OWL : owl:minCardinality
� DL : ≤
� OWL : owl:maxCardinality
Mapeamento da DL em OWL
� Propriedade
� DL : Nome_Propriedade
� OWL :
EBRALC 2008 - Renata Vieira PUCRS
<owl:ObjectProperty rdf:about="# Nome_Propriedade ">
<rdfs:range rdf:resource="#Imagem"/>
<rdfs:domain rdf:resource="#Domínio"/>
</owl:ObjectProperty>
Mapeamento da DL em OWL : Exemplos
� Definição de Classe Primitiva� DL :
FêmeaOWL :
EBRALC 2008 - Renata Vieira PUCRS
� OWL : <owl:Class rdf:ID="Fêmea"/>
� DL : Pessoa
� OWL : <owl:Class rdf:ID="Pessoa"/>
Mapeamento da DL em OWL : Exemplos
� Definição de Classes Compostas� DL :
Mulher ≡ Pessoa ┌┐ Fêmea� OWL :
<owl:Class rdf:about="#Mulher">
EBRALC 2008 - Renata Vieira PUCRS
<owl:equivalentClass><owl:Class>
<owl:intersectionOf rdf:parseType="Collection"><owl:Class rdf:about="#Pessoa"/><owl:Class rdf:about="#Fêmea"/>
</owl:intersectionOf></owl:Class>
</owl:equivalentClass></owl:Class>
DL : Mãe ≡ Mulher ┌┐ ∃ temFilho. Pessoa
OWL :<owl:Class rdf:ID="Mãe">
<owl:equivalentClass><owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
Mapeamento da DL em OWL : Exemplos
EBRALC 2008 - Renata Vieira PUCRS
<owl:intersectionOf rdf:parseType="Collection"><owl:Class rdf:about="#Mulher"/><owl:Restriction>
<owl:onProperty><owl:ObjectProperty rdf:about="#temFilho"/>
</owl:onProperty><owl:someValuesFrom rdf:resource="#Pessoa"/>
</owl:Restriction></owl:intersectionOf>
</owl:Class></owl:equivalentClass>
</owl:Class>
DL : Mãe_CMF ≡ Mãe ┌┐ (temFilho ≥ 4)
OWL :<owl:Class rdf:ID="Mãe_CMF">
<owl:equivalentClass><owl:Class><owl:intersectionOf rdf:parseType="Collection">
Mapeamento da DL em OWL : Exemplos
EBRALC 2008 - Renata Vieira PUCRS
<owl:intersectionOf rdf:parseType="Collection"><owl:Class rdf:ID="Mãe"/><owl:Restriction><owl:onProperty><owl:ObjectProperty rdf:ID="temFilho"/>
</owl:onProperty><owl:minCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int">4</owl:minCardinality>
</owl:Restriction></owl:intersectionOf>
</owl:Class></owl:equivalentClass>
</owl:Class>
Mapeamento da DL em OWL : Exemplos
� DL:Mulher(Joana)Mulher(Maria)Mulher(Ana)
� OWL : <Mulher rdf:ID="Joana">
<temFilho><Mulher rdf:ID="Maria">
�Criação de Instâncias
EBRALC 2008 - Renata Vieira PUCRS
Mulher(Ana)Homem(Pedro)
temFilho(Joana,Maria)temFilho(Maria,Pedro)temFilho(Maria,Ana)
<Mulher rdf:ID="Maria"><temFilho><Mulher rdf:ID="Ana"/>
</temFilho><temFilho><Homem rdf:ID="Pedro"/>
</temFilho></Mulher>
</temFilho></Mulher>
Mapeamento da DL em OWL
� Propriedade� Transitividade
� <owl:TransitiveProperty rdf:about="#Nome">
Simetria
EBRALC 2008 - Renata Vieira PUCRS
� Simetria � <owl:SymmetricProperty rdf:about="#Nome">
� Funcional� <owl:FunctionalProperty rdf:about="#Nome">
� Inversa Funcional � <owl:InverseFunctionalProperty rdf:about="#Nome">
Reasoners
� Jena Framework
� Racer
Pellet
EBRALC 2008 - Renata Vieira PUCRS
� Pellet
ClassificaçãoNationalPark � A RuralArea is a
Destination� A Campground is
BudgetAccomodation� Hiking is a Sport� Therefore:
Every NationalPark is a Backpackers-Destiantion
EBRALC 2008 - Renata Vieira PUCRS
BackpackersDestination
Backpackers-Destiantion
(Other BackpackerDestinations)
Classificação� Input: Asserted class definitions� Output: Inferred subclass relationships
EBRALC 2008 - Renata Vieira PUCRS
Leitura complementar
� The semantic web vision� http://mitpress.mit.edu/books/chapters/0262012103chap1.pdf
� Tutorial WebMedia 2005
EBRALC 2008 - Renata Vieira PUCRS
� Tutorial WebMedia 2005
Recommended