Web Semântica   Bernadette Farias Lóscio  [email_address] Universidade Federal do Ceará – UFC Departamento de Computação
Conteúdo <ul><li>A Web (Sintática x Semântica) </li></ul><ul><li>Tecnologias para a Web Semântica </li></ul><ul><li>Aplica...
Web Atual  <ul><li>Páginas direcionadas para pessoas e não para o processamento </li></ul><ul><li>O principal foco é apres...
Web Atual Por que os computadores não conseguem interpretar as informações? Faltam informações sobre as páginas!
Web Atual A Web atual é uma Web Sintática!
Web Sintática <ul><li>Principal ferramenta: mecanismos de busca baseados em palavras-chave </li></ul><ul><li>Problemas... ...
Web Sintática O que fazer? Adicionar semântica as páginas!
Web Semântica <ul><li>Representar o conteúdo da Web para facilitar o seu processamento </li></ul><ul><li>Categorizar as in...
Web Semântica Cenário clássico  (Tim Berners Lee, 2001) <ul><li>A Lucy quer marcar uma consulta e uma série de sessões de ...
Web Semântica Agente da Lucy Agente do médico Informações sobre o tratamento da mãe da Lucy Quais médicos atendem aos requ...
Web Semântica  Arquitetura em níveis
XML <ul><li>Proposta pelo W3C </li></ul><ul><li>Linguagem de marcação extensível </li></ul><ul><li>Troca de informações </...
XML <ul><li>Exemplo: </li></ul><eventosSBC> <evento codigo=“XXIISBBD”> <nome> Simpósio Brasileiro de Banco de Dados </nome...
XML <ul><li>Esquema XML </li></ul><ul><ul><li>Define a estrutura de um conjunto de instâncias de documentos XML </li></ul>...
XML <ul><li>XML Schema </li></ul><ul><ul><li>Linguagem padrão para descrição de esquemas XML </li></ul></ul><ul><ul><li>Ba...
XML <ul><li>XML Schema – Exemplo </li></ul><ul><li><?xml version=&quot;1.0&quot;?> </li></ul><ul><li><xsd:schema xmlns:xsd...
XML <ul><li>XML Schema – Exemplo </li></ul><ul><li><xsd:element name=“evento“ type=“eventoT” /> </li></ul><ul><li><xsd:com...
XML <ul><li>Namespaces </li></ul><ul><ul><li>mecanismo para identificar unicamente os elementos e atributos de XML </li></...
Web Semântica  Principais Tecnologias metadados ontologias agentes lógica
Metadados Dados sobre dados ! “ informações para a Web que podem ser compreendidas por máquinas”. (W3C – World Wide Web Co...
Metadados <ul><li>“ O termo se refere a qualquer informação utilizada para a identificação, descrição e localização de rec...
Metadados <ul><li>As páginas html não trazem metadados explícitos! </li></ul><ul><li>As tags html especificam detalhes de ...
Metadados <ul><li>Como adicionar semântica às páginas html? </li></ul>XML e RDF
Metadados XML é suficiente? <ul><li><curso nome= “Banco de Dados” > </li></ul><ul><li><professor> Berna Farias </professor...
RDF Resource Description Framework <ul><li>Linguagem baseada em XML para descrever metadados na Web </li></ul><ul><li>Obje...
RDF <ul><li>Descrevendo recursos Web com RDF </li></ul><ul><ul><li>Propriedades para itens de compra </li></ul></ul><ul><u...
RDF  Idéias básicas recurso propriedade valor + + Sentença
RDF  Idéias básicas <ul><li>É um objeto sobre o qual queremos “falar”! Ex: autores, livros, hotéis... </li></ul><ul><li>De...
RDF Idéias básicas <ul><li>Recursos que descrevem relacionamentos entre recursos </li></ul><ul><li>Ex: escrito_por, idade,...
RDF Idéias básicas <ul><li>É um objeto que pode ser um recurso ou um literal! </li></ul><ul><li>Ex: nome de uma pessoa </l...
RDF Visões de uma sentença <ul><li>Exemplo de sentença: </li></ul><ul><li>Berna Farias  criou o site </li></ul><ul><li>htt...
RDF Visões de uma sentença <ul><li>Exemplo de sentença: </li></ul><ul><li>Berna Farias  criou o site </li></ul><ul><li>htt...
RDF Visões de uma sentença ...como uma tripla: ( http://www.lia.ufc.br/~bernafarias, http://meudominio.org/criadoPor, “Ber...
RDF <ul><li>Representação que pode ser processada </li></ul><ul><li><rdf:RDF> </li></ul><ul><li><rdf:Description </li></ul...
RDF Sintaxe básica <ul><li>Elemento raiz <rdf: RDF> </li></ul><ul><li>Contém um conjunto de elementos </li></ul><ul><li><r...
<ul><li><rdf:RDF> </li></ul><ul><li><rdf:Description  about = “91002043177”> </li></ul><ul><li><uni:nome> Berna Farias </u...
RDF Sintaxe básica <ul><li>rdf: resource </li></ul><rdf:Description  about = “92345566994”> <uni:nome> Vania Vidal </uni:n...
RDF <ul><li>RDF permite descrever recursos </li></ul><ul><li>RDF não define a semântica de um domínio </li></ul>Como descr...
RDF Schema Idéias básicas <ul><li>Permite definir termos de um vocabulário e relacionamentos entre eles </li></ul><ul><ul>...
RDF Schema Idéias básicas <ul><li>Utiliza-se o RDF Schema em conjunto com o RDF </li></ul><ul><li>RDF Schema é um tipo de ...
RDF Schema Idéias básicas <ul><li>Principais conceitos </li></ul><ul><ul><li>Classes </li></ul></ul><ul><ul><li>Propriedad...
Níveis RDF e RDF Schema Banco de Dados Berna Farias   ensinadoPor RDF RDFS prof. adjunto prof. visitante prof. substituto ...
RDF Schema Idéias básicas <ul><li><rdf:RDF </li></ul><ul><li>xmlns:rdf = “http://www.w3.org/1999/02/02/22-rdf-syntax-ns#” ...
RDF Schema Idéias básicas <ul><li>... </li></ul><ul><li><rdfs:Class rdf:ID=“professor”> </li></ul><ul><li><rdfs:comment> C...
RDF Schema Idéias básicas <ul><li>... </li></ul><ul><li><rdf:Property rdf:ID=“envolve”> </li></ul><ul><li><rdfs:comment> R...
RDF Schema Idéias básicas <ul><li>... </li></ul><ul><li><rdf:Property rdf:ID=“ensinadoPor”> </li></ul><ul><li><rdfs:commen...
Problemas com RDFS <ul><li>RDFS muito limitada para descrever detalhes dos recursos </li></ul><ul><li>Não permite especifi...
RDF e RDFS  Resumindo... <ul><li>RDF: modelo de dados para descrever recursos da Web </li></ul><ul><li>RDF: complementa XM...
RDF e RDFS Resumindo... <ul><li>RDFS: linguagem para descrever vocabulários para domínios específicos </li></ul><ul><li>RD...
Web Semântica  Principais Tecnologias metadados ontologias agentes lógica
Ontologia <ul><li>Ramo da filosofia que lida com a natureza e organização da realidade </li></ul><ul><ul><li>O que é ser ?...
Ontologia <ul><li>“ Uma ontologia é uma especificação explícita e formal de uma conceitualização compartilhada”.  </li></u...
Ontologia <ul><li>Especificação explícita: engloba definições de conceitos, instâncias, relações, restrições e axiomas </l...
Ontologia <ul><li>Conceitualização: trata-se de um modelo abstrato de uma área de conhecimento </li></ul><ul><li>Compartil...
Ontologia <ul><li>“ A definição dos termos utilizados na descrição e na representação de uma área do conhecimento.”  </li>...
Ontologias  Pra quê? <ul><li>Para compartilhar conhecimento comum sobre a estrutura da informação: </li></ul><ul><ul><li>E...
Ontologias Pra quê? <ul><li>Para permitir a reutilização do conhecimento sobre um domínio: </li></ul><ul><ul><li>Para evit...
Ontologias <ul><li>Classificação quanto à expressividade e grau de formalismo </li></ul><ul><ul><li>Vocabulários </li></ul...
Ontologias <ul><li>Devem prover descrições para: </li></ul><ul><ul><li>Classes (“conceitos”) nos vários domínios de intere...
Linguagens para a definição de Ontologias <ul><li>Requisitos </li></ul><ul><ul><li>Sintaxe bem-definida (informação poderá...
Linguagens para a definição de Ontologias <ul><li>Requisitos </li></ul><ul><ul><li>Suporte para raciocínio (permite checar...
A linguagem OWL <ul><li>É uma evolução da linguagem DAML + OIL </li></ul><ul><li>Proposta pelo W3C </li></ul><ul><li>Proje...
A linguagem OWL OWL Full OWL DL OWL Lite Ferramentas, raciocínio mais eficiente... Expressividade
A linguagem OWL <ul><li>Cabeçalho </li></ul><ul><li><?xml version=&quot;1.0&quot;?> </li></ul><ul><li><rdf:RDF </li></ul><...
A linguagem OWL Classes <ul><li>Classes </li></ul><ul><li><owl: Class rdf: ID=“ProfessorAdjunto”> </li></ul><ul><li><rdfs:...
A linguagem OWL Classes <ul><li>Disjunção entre classes </li></ul><ul><li><owl:Class rdf:about=&quot;ProfessorAdjunto&quot...
A linguagem OWL Classes <ul><li>Equivalência entre classes </li></ul><ul><li><owl:Class rdf:ID=“Docente&quot;> </li></ul><...
A linguagem OWL Propriedades <ul><li>Propriedades </li></ul><ul><ul><li>Estabelecem relacionamentos indivíduo-indivíduo e/...
A linguagem OWL Propriedades <ul><li>Propriedade de Tipo de Dados </li></ul><ul><li><owl:DataTypeProperty rdf:ID=“idade”> ...
A linguagem OWL  Propriedades <ul><li>Propriedade de Objeto </li></ul><ul><li><owl:ObjectProperty rdf:ID=“ensinadoPor”> </...
A linguagem OWL Propriedades <ul><li>Propriedades inversas </li></ul><ul><li><owl:ObjectProperty rdf:ID=“ensina”> </li></u...
A linguagem OWL Propriedades <ul><li>Restrições das propriedades </li></ul><ul><ul><li>Valores (allValuesFrom, someValuesF...
A linguagem OWL Propriedades <ul><li>allValuesFrom </li></ul><ul><li><owl:Class rdf:about=“#disciplinaObrigatoria&quot;> <...
A linguagem OWL Propriedades <ul><li>hasValue </li></ul><ul><li><owl:Class rdf:about=“#disciplinaBD&quot;> </li></ul><ul><...
A linguagem OWL Propriedades <ul><li>someValuesFrom </li></ul><ul><li><owl:Class rdf:about=“#professor&quot;> </li></ul><u...
A linguagem OWL Propriedades <ul><li>Restrições de cardinalidade </li></ul><ul><li><owl:Class rdf:about=“#disciplina&quot;...
A linguagem OWL Propriedades <ul><li>Propriedades das propriedades: são definidas diretamente nas propriedades </li></ul><...
A linguagem OWL Propriedades <ul><li>Exemplo </li></ul><ul><li><owl:ObjectProperty rdf:ID=“temMesmaNota”> </li></ul><ul><l...
A linguagem OWL Propriedades <ul><li>Exemplo </li></ul><ul><li><owl:ObjectProperty rdf:ID=“supervisor”> </li></ul><ul><li>...
A linguagem OWL Propriedades <ul><li>Exemplo </li></ul><ul><li><owl:ObjectProperty rdf:ID=“éCPFde”> </li></ul><ul><li><rdf...
A linguagem OWL <ul><li>União de classes </li></ul><ul><li><owl:Class rdf:ID=“pessoasUni”> </li></ul><ul><li><owl:unionOf ...
A linguagem OWL <ul><li>Interseção de classes </li></ul><ul><li><owl:Class rdf:ID = “professorCS”> </li></ul><ul><li><owl:...
A linguagem OWL <ul><li>Criação de instâncias </li></ul><ul><li><rdf:Description rdf:ID = “91887711”> </li></ul><ul><li><r...
Etapas do Projeto de uma Ontologia <ul><li>Determinar o escopo </li></ul><ul><li>Considerar o reuso </li></ul><ul><li>Enum...
1. Determinar o escopo <ul><li>Qual o domínio a ser coberto pela ontologia? </li></ul><ul><li>Para quê será usada esta ont...
2. Considerar o reuso <ul><li>Por que reutilizar outras ontologias? </li></ul><ul><ul><li>Para poupar esforços </li></ul><...
3. Enumerar termos <ul><li>Quais os termos sobre os quais vamos falar? </li></ul><ul><li>Quais as propriedades desses term...
4. Definir taxonomia <ul><li>Definir as classes que irão compor a ontologia </li></ul><ul><li>Definir a hierarquia das cla...
5. Definir propriedades <ul><li>Definir as propriedades de objetos que definem relacionamentos entre classes </li></ul><ul...
6. Definir restrições <ul><li>Restrições sobre Propriedades (facetas) descrevem ou limitam o conjunto de valores possíveis...
7. Definir instâncias <ul><li>Criar as instâncias das classes </li></ul><ul><li>Atribuir os valores das propriedades para ...
Exemplo <ul><li>Criar uma ontologia para representação de relações de parentesco </li></ul><ul><li>Quais termos serão repr...
A ferramenta Protégé
Protégé – Criação de Classes
Protégé – Criação de Classes
Protégé – Criação de Propriedades
Protégé – Criação de Instâncias
Protégé – Criação de Restrições
Protégé – Criação de Restrições
Protégé – Criação de Restrições
Protégé – Criação de Restrições
Protégé – Criação de Instâncias
Protégé
Ontologias  Ferramentas  <ul><li>Editores de Ontologias e de Metadados. Ex.: OilEd, OntoEdit, Protégé </li></ul><ul><li>Fe...
Bibliotecas de Ontologias <ul><li>Reutilização de ontologias é importante! </li></ul><ul><li>Sistemas de gerência de bibli...
Web Semântica  Principais Tecnologias metadados ontologias agentes lógica
Agentes de Software <ul><li>“ Em vez de fazer tudo para os usuários, os agentes (de software) vão achar maneiras possíveis...
Agentes de Software Características <ul><li>Autonomia </li></ul><ul><li>Proatividade </li></ul><ul><li>Adaptatividade </li...
Agentes de software na Web Semântica <ul><li>Serão responsáveis por: </li></ul><ul><ul><li>Coordenar tarefas de busca </li...
Agentes de Software na Web Semântica <ul><li>Vão se comunicar através do compartilhamento de ontologias do domínio </li></...
Agentes de Software na Web Semântica <ul><li>E se não existir uma única ontologia? </li></ul>
Agentes de Software na Web Semântica <ul><li>Como os agentes de software determinam se conceitos compartilhados são semant...
Agentes de Software na Web Semântica <ul><li>Como agentes de software determinam se conceitos diferentes têm o mesmo signi...
Agentes de Software na Web Semântica Como prover a interoperabilidade semântica entre os agentes? Alinhamento de ontologias!
Agentes de Software Interoperabilidade semântica Agente 1 Ontologia 1 Agente 2 Ontologia 2 mapeamentos semânticos (O 1 , O...
Alinhamento de ontologias Publicacao ISBN autor ano String String Integer Livro editora String Periódico classif. String L...
Web Semântica  Principais Tecnologias metadados ontologias agentes lógica
Lógica <ul><li>Como pode ser usada na Web Semântica? </li></ul>Para descobrir novos conhecimentos e auxiliar na tomada de ...
Lógica <ul><li>Pode ser usada para descobrir conhecimento ontológico que não está explícito </li></ul><ul><li>Ex:  </li></...
Lógica <ul><li>Pode ser usado por agentes inteligentes para auxiliar a tomada de decisões </li></ul><ul><li>Ex:  </li></ul...
Lógica <ul><li>Pode oferecer explicações para conclusões </li></ul><ul><li>Os passos para se chegar a uma conclusão podem ...
Lógica <ul><li>Explicações são necessárias para a comunicação entre agentes </li></ul>Agente 1 Agente 2 Você me deve R$100...
Lógica <ul><li>Deverá ser capaz de ser processada... </li></ul>
Aplicações Comércio eletrônico <ul><li>O processamento de informações é feito manualmente </li></ul><ul><ul><li>O que faze...
Aplicações Web Semântica Geo-espacial <ul><li>Busca Semântica  </li></ul><ul><ul><li>Dicionários Geográficos </li></ul></u...
Conclusão <ul><li>A Web Semântica é uma evolução da Web atual </li></ul><ul><ul><li>Agentes farão o “trabalho pesado” </li...
Conclusão <ul><li>Grande desafio:  </li></ul><ul><li>adoção da tecnologia! </li></ul>
Bibliografia <ul><ul><li>Breitman, K. “Web Semântica: a Internet do Futuro”. Editora LTC, 2005. </li></ul></ul><ul><ul><li...
<ul><li>Obrigada! </li></ul><ul><li>[email_address] </li></ul>
Próximos SlideShares
Carregando em…5
×

Apresentacao Web Semântica SBBD 2007

6.543 visualizações

Publicada em

Publicada em: Tecnologia, Educação
0 comentários
7 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
6.543
No SlideShare
0
A partir de incorporações
0
Número de incorporações
39
Ações
Compartilhamentos
0
Downloads
0
Comentários
0
Gostaram
7
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Apresentacao Web Semântica SBBD 2007

  1. 1. Web Semântica Bernadette Farias Lóscio [email_address] Universidade Federal do Ceará – UFC Departamento de Computação
  2. 2. Conteúdo <ul><li>A Web (Sintática x Semântica) </li></ul><ul><li>Tecnologias para a Web Semântica </li></ul><ul><li>Aplicações </li></ul><ul><li>Conclusões </li></ul>
  3. 3. Web Atual <ul><li>Páginas direcionadas para pessoas e não para o processamento </li></ul><ul><li>O principal foco é apresentação de informações </li></ul><ul><li>O processo de interpretação é feito pelos usuários </li></ul>
  4. 4. Web Atual Por que os computadores não conseguem interpretar as informações? Faltam informações sobre as páginas!
  5. 5. Web Atual A Web atual é uma Web Sintática!
  6. 6. Web Sintática <ul><li>Principal ferramenta: mecanismos de busca baseados em palavras-chave </li></ul><ul><li>Problemas... </li></ul><ul><ul><li>Grande número de páginas com pouca precisão </li></ul></ul><ul><ul><li>Informações distribuídas em várias páginas e integração manual </li></ul></ul>
  7. 7. Web Sintática O que fazer? Adicionar semântica as páginas!
  8. 8. Web Semântica <ul><li>Representar o conteúdo da Web para facilitar o seu processamento </li></ul><ul><li>Categorizar as informações para facilitar o acesso </li></ul>
  9. 9. Web Semântica Cenário clássico (Tim Berners Lee, 2001) <ul><li>A Lucy quer marcar uma consulta e uma série de sessões de fisioterapia para a mãe dela! </li></ul><ul><ul><li>A consulta tem que ser no horário que a Lucy tem disponibilidade </li></ul></ul><ul><ul><li>De preferência deve ser próximo da casa dela </li></ul></ul><ul><ul><li>O médico e os fisioterapeutas devem ser qualificados e credenciados pelo plano de saúde </li></ul></ul>
  10. 10. Web Semântica Agente da Lucy Agente do médico Informações sobre o tratamento da mãe da Lucy Quais médicos atendem aos requisitos iniciais? Casa os horários da Lucy com os horários vagos dos profissionais Serviços médicos
  11. 11. Web Semântica Arquitetura em níveis
  12. 12. XML <ul><li>Proposta pelo W3C </li></ul><ul><li>Linguagem de marcação extensível </li></ul><ul><li>Troca de informações </li></ul><ul><li>Usada para criação de novas linguagens de marcação </li></ul>
  13. 13. XML <ul><li>Exemplo: </li></ul><eventosSBC> <evento codigo=“XXIISBBD”> <nome> Simpósio Brasileiro de Banco de Dados </nome> <cidade> João Pessoa </cidade> <local> Hotel Tambaú </local> <periodo> <inicio> 15/10/2007 </inicio> <fim> 19/10/2007 </fim> </periodo> ... </evento> ... </eventosSBC>
  14. 14. XML <ul><li>Esquema XML </li></ul><ul><ul><li>Define a estrutura de um conjunto de instâncias de documentos XML </li></ul></ul><ul><ul><li>Define elementos válidos e seus respectivos modelos de conteúdo </li></ul></ul>
  15. 15. XML <ul><li>XML Schema </li></ul><ul><ul><li>Linguagem padrão para descrição de esquemas XML </li></ul></ul><ul><ul><li>Baseada em XML </li></ul></ul><ul><ul><li>Um esquema em XML Schema é composto de: </li></ul></ul><ul><ul><ul><li>Definições de tipos </li></ul></ul></ul><ul><ul><ul><li>Declarações de elementos </li></ul></ul></ul>
  16. 16. XML <ul><li>XML Schema – Exemplo </li></ul><ul><li><?xml version=&quot;1.0&quot;?> </li></ul><ul><li><xsd:schema xmlns:xsd=http://www.w3.org/2001/XMLSchema> </li></ul><ul><li><xsd:element name=“eventosSBC&quot;> </li></ul><ul><li><xsd:complexType> </li></ul><ul><li><xsd:sequence> </li></ul><ul><li><xsd:element ref=“evento&quot; minOccurs=&quot;1&quot; </li></ul><ul><li>maxOccurs=&quot;unbounded&quot;/> </li></ul><ul><li></xsd:sequence> </li></ul><ul><li></xsd:complexType> </li></ul><ul><li></xsd:element> </li></ul><ul><li>... </li></ul>
  17. 17. XML <ul><li>XML Schema – Exemplo </li></ul><ul><li><xsd:element name=“evento“ type=“eventoT” /> </li></ul><ul><li><xsd:complexType name = “eventoT”> </li></ul><ul><li><xsd:sequence> </li></ul><ul><li><xsd:element name=“nome&quot; type=&quot;xsd:string&quot;/> </li></ul><ul><li><xsd:element name=“cidade&quot; type=&quot;xsd:string&quot;/> </li></ul><ul><li><xsd:element name=“local&quot; type=&quot;xsd:string&quot;/> </li></ul><ul><li><xsd:element name=“periodo“ type = “periodoT/> </li></ul><ul><li></xsd:sequence> </li></ul><ul><li><xsd:attribute name=“codigo&quot; type=&quot;xsd:string&quot;/> </li></ul><ul><li></xsd:complexType> </li></ul><ul><li>... </li></ul><ul><li></xsd:schema> </li></ul>
  18. 18. XML <ul><li>Namespaces </li></ul><ul><ul><li>mecanismo para identificar unicamente os elementos e atributos de XML </li></ul></ul><ul><ul><li>definido através de um URI (ex: URL) </li></ul></ul><ul><ul><li>Exemplo: </li></ul></ul><ul><ul><li>xmlns:xsd =“http://www.w3.org/2001/XMLSchema” </li></ul></ul>
  19. 19. Web Semântica Principais Tecnologias metadados ontologias agentes lógica
  20. 20. Metadados Dados sobre dados ! “ informações para a Web que podem ser compreendidas por máquinas”. (W3C – World Wide Web Consortium)
  21. 21. Metadados <ul><li>“ O termo se refere a qualquer informação utilizada para a identificação, descrição e localização de recursos.” </li></ul><ul><li>(International Federation of Library Associations) </li></ul>
  22. 22. Metadados <ul><li>As páginas html não trazem metadados explícitos! </li></ul><ul><li>As tags html especificam detalhes de apresentação! </li></ul>
  23. 23. Metadados <ul><li>Como adicionar semântica às páginas html? </li></ul>XML e RDF
  24. 24. Metadados XML é suficiente? <ul><li><curso nome= “Banco de Dados” > </li></ul><ul><li><professor> Berna Farias </professor> </li></ul><ul><li></curso> </li></ul><ul><li><professor nome=“Berna Farias”> </li></ul><ul><li><leciona> Banco de Dados </leciona> </li></ul><ul><li></professor> </li></ul>A semântica dos dados não fica explícita!
  25. 25. RDF Resource Description Framework <ul><li>Linguagem baseada em XML para descrever metadados na Web </li></ul><ul><li>Objetiva tornar a semântica dos recursos Web acessíveis a máquinas </li></ul>
  26. 26. RDF <ul><li>Descrevendo recursos Web com RDF </li></ul><ul><ul><li>Propriedades para itens de compra </li></ul></ul><ul><ul><li>Informações sobre páginas (título e autor) </li></ul></ul><ul><ul><li>Conteúdo e classificação de figuras </li></ul></ul><ul><ul><li>Conteúdo para máquinas de busca </li></ul></ul>
  27. 27. RDF Idéias básicas recurso propriedade valor + + Sentença
  28. 28. RDF Idéias básicas <ul><li>É um objeto sobre o qual queremos “falar”! Ex: autores, livros, hotéis... </li></ul><ul><li>Deve ter um identificador universal único (URI) Ex: URL </li></ul>recurso propriedade valor + + Sentença
  29. 29. RDF Idéias básicas <ul><li>Recursos que descrevem relacionamentos entre recursos </li></ul><ul><li>Ex: escrito_por, idade, título... </li></ul>recurso propriedade valor + + Sentença
  30. 30. RDF Idéias básicas <ul><li>É um objeto que pode ser um recurso ou um literal! </li></ul><ul><li>Ex: nome de uma pessoa </li></ul>recurso propriedade valor + + Sentença
  31. 31. RDF Visões de uma sentença <ul><li>Exemplo de sentença: </li></ul><ul><li>Berna Farias criou o site </li></ul><ul><li>http://www.lia.ufc.br/~bernafarias </li></ul>
  32. 32. RDF Visões de uma sentença <ul><li>Exemplo de sentença: </li></ul><ul><li>Berna Farias criou o site </li></ul><ul><li>http://www.lia.ufc.br/~bernafarias </li></ul>recurso propriedade literal
  33. 33. RDF Visões de uma sentença ...como uma tripla: ( http://www.lia.ufc.br/~bernafarias, http://meudominio.org/criadoPor, “Berna Farias”) http://www.lia.ufc.br/~bernafarias Berna Farias criadoPor ... como um grafo:
  34. 34. RDF <ul><li>Representação que pode ser processada </li></ul><ul><li><rdf:RDF> </li></ul><ul><li><rdf:Description </li></ul><ul><li>about = “http://www.lia.ufc.br/~bernafarias”> </li></ul><ul><li><b:criadoPor> Berna Farias </b:criadoPor> </li></ul><ul><li></rdf:Description> </li></ul><ul><li></rdf:RDF> </li></ul>
  35. 35. RDF Sintaxe básica <ul><li>Elemento raiz <rdf: RDF> </li></ul><ul><li>Contém um conjunto de elementos </li></ul><ul><li><rdf: Description> </li></ul><ul><ul><li>Cada elemento especifica uma sentença sobre um recurso </li></ul></ul>
  36. 36. <ul><li><rdf:RDF> </li></ul><ul><li><rdf:Description about = “91002043177”> </li></ul><ul><li><uni:nome> Berna Farias </uni:nome> </li></ul><ul><li><uni:cargo> professor </uni:cargo> </li></ul><ul><li></rdf:Description> </li></ul><ul><li><rdf:Description about = “CK120”> </li></ul><ul><li><uni:nomeDisciplina> Banco de Dados </uni:nomeDisciplina> </li></ul><ul><li><uni:ensinadoPor> Berna Farias </uni:ensinadoPor> </li></ul><ul><li></rdf:Description> </li></ul><ul><li></rdf:RDF> </li></ul>RDF Sintaxe básica RDF - Exemplo
  37. 37. RDF Sintaxe básica <ul><li>rdf: resource </li></ul><rdf:Description about = “92345566994”> <uni:nome> Vania Vidal </uni:nome> <uni:cargo> professor </uni:cargo> </rdf:Description> <rdf:Description about = “CK120”> <uni:nomeDisciplina> Fundamentos de Banco de Dados </uni:nomeDisciplina> <uni:ensinadoPor rdf:resource = “ 92345566994 ”/> </rdf:Description>
  38. 38. RDF <ul><li>RDF permite descrever recursos </li></ul><ul><li>RDF não define a semântica de um domínio </li></ul>Como descrever um domínio em particular? Usando RDF Schema!
  39. 39. RDF Schema Idéias básicas <ul><li>Permite definir termos de um vocabulário e relacionamentos entre eles </li></ul><ul><ul><li>Oferece um significado extra aos recursos e propriedades RDF </li></ul></ul><ul><ul><li>Este significado extra (semântica) especifica como um termo deve ser interpretado </li></ul></ul>
  40. 40. RDF Schema Idéias básicas <ul><li>Utiliza-se o RDF Schema em conjunto com o RDF </li></ul><ul><li>RDF Schema é um tipo de dicionário que pode ser lido por máquinas </li></ul>
  41. 41. RDF Schema Idéias básicas <ul><li>Principais conceitos </li></ul><ul><ul><li>Classes </li></ul></ul><ul><ul><li>Propriedades </li></ul></ul><ul><ul><li>Hierarquia de classes </li></ul></ul><ul><ul><li>Hierarquia de propriedades </li></ul></ul>
  42. 42. Níveis RDF e RDF Schema Banco de Dados Berna Farias ensinadoPor RDF RDFS prof. adjunto prof. visitante prof. substituto funcionario professor subClassOf subClassOf subClassOf subClassOf literal id fone domain domain range range range range disciplina ensinadoPor envolve subPropertyOf domain domain
  43. 43. RDF Schema Idéias básicas <ul><li><rdf:RDF </li></ul><ul><li>xmlns:rdf = “http://www.w3.org/1999/02/02/22-rdf-syntax-ns#” </li></ul><ul><li>xmlns:rdfs = “http://www.w3.org/2000/01/rdf-schema#”> </li></ul><ul><li><rdfs:Class rdf:ID=“funcionario”> </li></ul><ul><li><rdfs:comment> Classe de todos os funcionarios</rdfs:comment> </li></ul><ul><li></rdfs:Class> </li></ul><ul><li>... </li></ul>
  44. 44. RDF Schema Idéias básicas <ul><li>... </li></ul><ul><li><rdfs:Class rdf:ID=“professor”> </li></ul><ul><li><rdfs:comment> Classe de todos os professores </rdfs:comment> </li></ul><ul><li><rdfs:subClassOf rdf:resource=“#funcionario”/> </li></ul><ul><li></rdfs:Class> </li></ul><ul><li><rdfs:Class rdf:ID=“disciplina”> </li></ul><ul><li><rdfs:comment> Classe de todas as disciplinas</rdfs:comment> </li></ul><ul><li></rdfs:Class> </li></ul><ul><li>... </li></ul>
  45. 45. RDF Schema Idéias básicas <ul><li>... </li></ul><ul><li><rdf:Property rdf:ID=“envolve”> </li></ul><ul><li><rdfs:comment> Relaciona disciplinas a </li></ul><ul><li>funcionarios</rdfs:comment> </li></ul><ul><li><rdfs:domain rdf:resource=“#disciplina”/> </li></ul><ul><li><rdfs:range rdf:resource=“#funcionario”/> </li></ul><ul><li><rdf:Property/> </li></ul><ul><li>... </li></ul>
  46. 46. RDF Schema Idéias básicas <ul><li>... </li></ul><ul><li><rdf:Property rdf:ID=“ensinadoPor”> </li></ul><ul><li><rdfs:comment> Herda domain e o range da propriedade </li></ul><ul><li>envolve</rdfs:comment> </li></ul><ul><li><rdfs:subPropertyOf rdf:resource=“#envolve”/> </li></ul><ul><li><rdf:Property/> </li></ul><ul><li>... </li></ul><ul><li></rdf:RDF> </li></ul>
  47. 47. Problemas com RDFS <ul><li>RDFS muito limitada para descrever detalhes dos recursos </li></ul><ul><li>Não permite especificar </li></ul><ul><ul><li>restrições de cardinalidade </li></ul></ul><ul><ul><li>propriedades transitivas, inversas ou simétricas </li></ul></ul><ul><ul><li>disjunção de classes </li></ul></ul>
  48. 48. RDF e RDFS Resumindo... <ul><li>RDF: modelo de dados para descrever recursos da Web </li></ul><ul><li>RDF: complementa XML oferecendo significado para o aninhamento de tags </li></ul>
  49. 49. RDF e RDFS Resumindo... <ul><li>RDFS: linguagem para descrever vocabulários para domínios específicos </li></ul><ul><li>RDFS: linguagem primitiva para descrição de ontologias </li></ul>
  50. 50. Web Semântica Principais Tecnologias metadados ontologias agentes lógica
  51. 51. Ontologia <ul><li>Ramo da filosofia que lida com a natureza e organização da realidade </li></ul><ul><ul><li>O que é ser ? </li></ul></ul><ul><ul><li>Quais as características comuns a todos os seres? </li></ul></ul><ul><li>Ciência do ser (Aristóteles) </li></ul>
  52. 52. Ontologia <ul><li>“ Uma ontologia é uma especificação explícita e formal de uma conceitualização compartilhada”. </li></ul><ul><li>(Gruber) </li></ul>
  53. 53. Ontologia <ul><li>Especificação explícita: engloba definições de conceitos, instâncias, relações, restrições e axiomas </li></ul><ul><li>Formal: é declarativamente definida, portanto, compreensível para agentes e sistemas </li></ul>“ Uma ontologia é uma especificação explícita e formal de uma conceitualização compartilhada”.
  54. 54. Ontologia <ul><li>Conceitualização: trata-se de um modelo abstrato de uma área de conhecimento </li></ul><ul><li>Compartilhada: trata-se de um conhecimento consensual </li></ul>“ Uma ontologia é uma especificação explícita e formal de uma conceitualização compartilhada ”.
  55. 55. Ontologia <ul><li>“ A definição dos termos utilizados na descrição e na representação de uma área do conhecimento.” </li></ul><ul><li>(W3C – World Wide Web Consortium) </li></ul>
  56. 56. Ontologias Pra quê? <ul><li>Para compartilhar conhecimento comum sobre a estrutura da informação: </li></ul><ul><ul><li>Entre pessoas </li></ul></ul><ul><ul><li>Entre agentes de software </li></ul></ul>
  57. 57. Ontologias Pra quê? <ul><li>Para permitir a reutilização do conhecimento sobre um domínio: </li></ul><ul><ul><li>Para evitar a “reinvenção da roda” </li></ul></ul><ul><ul><li>Para introduzir padrões que permitam a interoperabilidade entre aplicações </li></ul></ul>
  58. 58. Ontologias <ul><li>Classificação quanto à expressividade e grau de formalismo </li></ul><ul><ul><li>Vocabulários </li></ul></ul><ul><ul><li>Glossários </li></ul></ul><ul><ul><li>Tesauros </li></ul></ul><ul><ul><li>Taxonomias </li></ul></ul><ul><ul><li>Redes Semânticas </li></ul></ul><ul><ul><li>Ontologias </li></ul></ul>Objetivam oferecer um vocabulário compartilhado para a troca de informações
  59. 59. Ontologias <ul><li>Devem prover descrições para: </li></ul><ul><ul><li>Classes (“conceitos”) nos vários domínios de interesse </li></ul></ul><ul><ul><li>Relacionamentos entre esses “conceitos” </li></ul></ul><ul><ul><li>Propriedades que essas “conceitos” devem possuir </li></ul></ul>
  60. 60. Linguagens para a definição de Ontologias <ul><li>Requisitos </li></ul><ul><ul><li>Sintaxe bem-definida (informação poderá ser processada) </li></ul></ul><ul><ul><li>Semântica formal (define o conhecimento precisamente, permite raciocinar sobre o conhecimento) </li></ul></ul>
  61. 61. Linguagens para a definição de Ontologias <ul><li>Requisitos </li></ul><ul><ul><li>Suporte para raciocínio (permite checar a consistência da ontologia, classificar instâncias) </li></ul></ul><ul><ul><li>Poder de expressividade </li></ul></ul>
  62. 62. A linguagem OWL <ul><li>É uma evolução da linguagem DAML + OIL </li></ul><ul><li>Proposta pelo W3C </li></ul><ul><li>Projetada para descrever a estrutura de um domínio em termos de </li></ul><ul><ul><li>Classes </li></ul></ul><ul><ul><li>Instâncias </li></ul></ul><ul><ul><li>Propriedades </li></ul></ul>
  63. 63. A linguagem OWL OWL Full OWL DL OWL Lite Ferramentas, raciocínio mais eficiente... Expressividade
  64. 64. A linguagem OWL <ul><li>Cabeçalho </li></ul><ul><li><?xml version=&quot;1.0&quot;?> </li></ul><ul><li><rdf:RDF </li></ul><ul><li>xmlns:owl=&quot;http://www.w3.org/2002/07/owl#&quot; </li></ul><ul><li>xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot; </li></ul><ul><li>xmlns:rdfs=&quot;http://www.w3.org/2000/01/rdf-schema#&quot; </li></ul><ul><li>xmlns:xsd=&quot;http://www.w3.org/2001/XMLSchema#&quot;> </li></ul>
  65. 65. A linguagem OWL Classes <ul><li>Classes </li></ul><ul><li><owl: Class rdf: ID=“ProfessorAdjunto”> </li></ul><ul><li><rdfs: subClassOf rdf:resource=“#Professor”/> </li></ul><ul><li></owl: Class> </li></ul>
  66. 66. A linguagem OWL Classes <ul><li>Disjunção entre classes </li></ul><ul><li><owl:Class rdf:about=&quot;ProfessorAdjunto&quot;> </li></ul><ul><li><owl:disjointWith rdf:resource=&quot;#ProfessorSubstituto&quot;/> </li></ul><ul><li><owl:disjointWith rdf:resource=&quot;#ProfessorVisitante&quot;/> </li></ul><ul><li></owl:Class> </li></ul>
  67. 67. A linguagem OWL Classes <ul><li>Equivalência entre classes </li></ul><ul><li><owl:Class rdf:ID=“Docente&quot;> </li></ul><ul><li><owl:equivalentClass rdf:resource=&quot;#Professor&quot;/> </li></ul><ul><li></owl:Class> </li></ul>
  68. 68. A linguagem OWL Propriedades <ul><li>Propriedades </li></ul><ul><ul><li>Estabelecem relacionamentos indivíduo-indivíduo e/ou indivíduo-dados </li></ul></ul><ul><ul><ul><li>Propriedades de objeto </li></ul></ul></ul><ul><ul><ul><ul><li>Ex: ensinadoPor </li></ul></ul></ul></ul><ul><ul><ul><li>Propriedade de tipo de dados </li></ul></ul></ul><ul><ul><ul><ul><li>Ex: nome, fone </li></ul></ul></ul></ul>
  69. 69. A linguagem OWL Propriedades <ul><li>Propriedade de Tipo de Dados </li></ul><ul><li><owl:DataTypeProperty rdf:ID=“idade”> </li></ul><ul><li><rdfs:range </li></ul><ul><li>rdf:resource=“http://www.w3.org.2001/ </li></ul><ul><li>XMLSchema#NonNegativeInteger&quot;/> </li></ul><ul><li></owl:DataTypeProperty> </li></ul>
  70. 70. A linguagem OWL Propriedades <ul><li>Propriedade de Objeto </li></ul><ul><li><owl:ObjectProperty rdf:ID=“ensinadoPor”> </li></ul><ul><li><rdfs:domain rdf:resource=&quot;#Disciplina&quot;/> </li></ul><ul><li><rdfs:range rdf:resource=&quot;#Professor&quot;/> </li></ul><ul><li><rdfs:subpropertyof rdf:resource=&quot;#envolve&quot;/> </li></ul><ul><li></owl:objectProperty> </li></ul>
  71. 71. A linguagem OWL Propriedades <ul><li>Propriedades inversas </li></ul><ul><li><owl:ObjectProperty rdf:ID=“ensina”> </li></ul><ul><li><rdfs:range rdf:resource=&quot;#Disciplina&quot;/> </li></ul><ul><li><rdfs:domain rdf:resource=&quot;#Professor&quot;/> </li></ul><ul><li><owl:inverseof rdf:resource=&quot;#ensinadoPor&quot;/> </li></ul><ul><li></owl:objectProperty> </li></ul>
  72. 72. A linguagem OWL Propriedades <ul><li>Restrições das propriedades </li></ul><ul><ul><li>Valores (allValuesFrom, someValuesFrom, hasValue) </li></ul></ul><ul><ul><li>Cardinalidade (maxCardinality, minCardinality, Cardinality) </li></ul></ul>
  73. 73. A linguagem OWL Propriedades <ul><li>allValuesFrom </li></ul><ul><li><owl:Class rdf:about=“#disciplinaObrigatoria&quot;> </li></ul><ul><li><rdfs:subClassOf> </li></ul><ul><li><owl:Restriction> </li></ul><ul><li><owl:onProperty </li></ul><ul><li>rdf:resource=&quot;#ensinadoPor&quot;/> </li></ul><ul><li><owl:allValuesFrom </li></ul><ul><li>rdf:resource=“ProfessorAdjunto&quot;/> </li></ul><ul><li></owl:Restriction> </li></ul><ul><li><rdfs:subClassOf> </li></ul><ul><li></owl:Class> </li></ul>Toda disciplina obrigatória tem que ser ensinada por um professor adjunto!
  74. 74. A linguagem OWL Propriedades <ul><li>hasValue </li></ul><ul><li><owl:Class rdf:about=“#disciplinaBD&quot;> </li></ul><ul><li><rdfs:subClassOf> </li></ul><ul><li><owl:Restriction> </li></ul><ul><li><owl:onProperty </li></ul><ul><li>rdf:resource=&quot;#ensinadoPor&quot;/> </li></ul><ul><li><owl:hasValue </li></ul><ul><li>rdf:resource=“#91002043177&quot;/> </li></ul><ul><li></owl:Restriction> </li></ul><ul><li><rdfs:subClassOf> </li></ul><ul><li></owl:Class> </li></ul>Toda disciplina de Banco de Dados tem que ser ensinada pela professora Berna Farias!
  75. 75. A linguagem OWL Propriedades <ul><li>someValuesFrom </li></ul><ul><li><owl:Class rdf:about=“#professor&quot;> </li></ul><ul><li><rdfs:subClassOf> </li></ul><ul><li><owl:Restriction> </li></ul><ul><li><owl:onProperty </li></ul><ul><li>rdf:resource=&quot;#ensina&quot;/> </li></ul><ul><li><owl:someValuesFrom </li></ul><ul><li>rdf:resource=“#DisciplinaPosGraduacao&quot;/> </li></ul><ul><li></owl:Restriction> </li></ul><ul><li><rdfs:subClassOf> </li></ul><ul><li></owl:Class> </li></ul>Todos os professores devem ensinar pelo menos uma disciplina da pós-graduação!
  76. 76. A linguagem OWL Propriedades <ul><li>Restrições de cardinalidade </li></ul><ul><li><owl:Class rdf:about=“#disciplina&quot;> </li></ul><ul><li><rdfs:subClassOf> </li></ul><ul><li><owl:Restriction> </li></ul><ul><li><owl:onProperty </li></ul><ul><li>rdf:resource=&quot;#ensinadoPor&quot;/> </li></ul><ul><li><owl:minCardinality rdf:datatype=“&xsd;nonNegativeInteger&quot;> </li></ul><ul><li>1 </li></ul><ul><li></owl:minCardinality> </li></ul><ul><li></owl:Restriction> </li></ul><ul><li><rdfs:subClassOf> </li></ul><ul><li></owl:Class> </li></ul>
  77. 77. A linguagem OWL Propriedades <ul><li>Propriedades das propriedades: são definidas diretamente nas propriedades </li></ul><ul><ul><li>owl:TransitiveProperty </li></ul></ul><ul><ul><li>owl:SymmetricProperty </li></ul></ul><ul><ul><li>owl:FunctionalProperty </li></ul></ul><ul><ul><li>owl:InversefunctionalProperty </li></ul></ul>
  78. 78. A linguagem OWL Propriedades <ul><li>Exemplo </li></ul><ul><li><owl:ObjectProperty rdf:ID=“temMesmaNota”> </li></ul><ul><li><rdf:type rdf:resource=“&owl;TransitiveProperty”/> </li></ul><ul><li><rdf:type rdf:resource=“&owl;SymmetricProperty”/> </li></ul><ul><li><rdfs:domain rdf:resource = “#aluno”/> </li></ul><ul><li><rdfs:range rdf:resource = “#aluno”/> </li></ul><ul><li></owl:ObjectProperty> </li></ul>
  79. 79. A linguagem OWL Propriedades <ul><li>Exemplo </li></ul><ul><li><owl:ObjectProperty rdf:ID=“supervisor”> </li></ul><ul><li><rdf:type rdf:resource=“&owl;FunctionalProperty”/> </li></ul><ul><li><rdfs:domain rdf:resource = “#professor”/> </li></ul><ul><li><rdfs:range rdf:resource = “#professor”/> </li></ul><ul><li></owl:ObjectProperty> </li></ul>Um professor tem no máximo um supervisor!
  80. 80. A linguagem OWL Propriedades <ul><li>Exemplo </li></ul><ul><li><owl:ObjectProperty rdf:ID=“éCPFde”> </li></ul><ul><li><rdf:type rdf:resource=“&owl;InversaFunctionalProperty”/> </li></ul><ul><li><rdfs:domain rdf:resource = “#CPF”/> </li></ul><ul><li><rdfs:range rdf:resource = “#professor”/> </li></ul><ul><li></owl:ObjectProperty> </li></ul>Dois professores não podem ter o mesmo valor para CPF!
  81. 81. A linguagem OWL <ul><li>União de classes </li></ul><ul><li><owl:Class rdf:ID=“pessoasUni”> </li></ul><ul><li><owl:unionOf rdf:parseType = “Collection”> </li></ul><ul><li><owl:Class rdf:about = “professor”/> </li></ul><ul><li><owl:Class rdf:about = “aluno”/> </li></ul><ul><li></owl:unionOf> </li></ul><ul><li></owl:Class> </li></ul>
  82. 82. A linguagem OWL <ul><li>Interseção de classes </li></ul><ul><li><owl:Class rdf:ID = “professorCS”> </li></ul><ul><li><owl:intersectionOf rdf:parseType=“Collection”> </li></ul><ul><li><owl:Class rdf:about = “professor”/> </li></ul><ul><li><owl: Restriction> </li></ul><ul><li><owl:onProperty rdf:resource=“#pertenceA”/> </li></ul><ul><li><owl:hasvalue </li></ul><ul><li>rdf:resource=“#DepartamentoCS”/> </li></ul><ul><li></owl:Restriction> </li></ul><ul><li></owl:intersectionOf> </li></ul><ul><li></owl:Class> </li></ul>
  83. 83. A linguagem OWL <ul><li>Criação de instâncias </li></ul><ul><li><rdf:Description rdf:ID = “91887711”> </li></ul><ul><li><rdf:type rdf:resource =“#professor”> </li></ul><ul><li></rdf:Description> </li></ul><ul><li>Ou </li></ul><ul><li><professor rdf:ID = “91887711”/> </li></ul>
  84. 84. Etapas do Projeto de uma Ontologia <ul><li>Determinar o escopo </li></ul><ul><li>Considerar o reuso </li></ul><ul><li>Enumerar termos </li></ul><ul><li>Definir taxonomia </li></ul><ul><li>Definir propriedades </li></ul><ul><li>Definir restrições </li></ul><ul><li>Definir instâncias </li></ul>
  85. 85. 1. Determinar o escopo <ul><li>Qual o domínio a ser coberto pela ontologia? </li></ul><ul><li>Para quê será usada esta ontologia? </li></ul><ul><li>Para que tipo de questões a informação na ontologia deve oferecer respostas? </li></ul>
  86. 86. 2. Considerar o reuso <ul><li>Por que reutilizar outras ontologias? </li></ul><ul><ul><li>Para poupar esforços </li></ul></ul><ul><ul><li>Para interagir com as ferramentas que usam outras ontologias </li></ul></ul><ul><ul><li>Para empregar ontologias que foram validadas através do uso em outras aplicações. </li></ul></ul>
  87. 87. 3. Enumerar termos <ul><li>Quais os termos sobre os quais vamos falar? </li></ul><ul><li>Quais as propriedades desses termos? </li></ul><ul><li>O que queremos dizer sobre esses termos? </li></ul>
  88. 88. 4. Definir taxonomia <ul><li>Definir as classes que irão compor a ontologia </li></ul><ul><li>Definir a hierarquia das classes, incluindo os conceitos de superclasses e subclasses </li></ul>
  89. 89. 5. Definir propriedades <ul><li>Definir as propriedades de objetos que definem relacionamentos entre classes </li></ul><ul><li>Definir propriedades de dados </li></ul><ul><li>Definir domain e range para as propriedades </li></ul>
  90. 90. 6. Definir restrições <ul><li>Restrições sobre Propriedades (facetas) descrevem ou limitam o conjunto de valores possíveis para as propriedades </li></ul>
  91. 91. 7. Definir instâncias <ul><li>Criar as instâncias das classes </li></ul><ul><li>Atribuir os valores das propriedades para as instância de acordo com as restrições definidas </li></ul>
  92. 92. Exemplo <ul><li>Criar uma ontologia para representação de relações de parentesco </li></ul><ul><li>Quais termos serão representados pela ontologia? </li></ul><ul><ul><li>Pai, mãe, filho, filha, irmã, irmão... </li></ul></ul>
  93. 93. A ferramenta Protégé
  94. 94. Protégé – Criação de Classes
  95. 95. Protégé – Criação de Classes
  96. 96. Protégé – Criação de Propriedades
  97. 97. Protégé – Criação de Instâncias
  98. 98. Protégé – Criação de Restrições
  99. 99. Protégé – Criação de Restrições
  100. 100. Protégé – Criação de Restrições
  101. 101. Protégé – Criação de Restrições
  102. 102. Protégé – Criação de Instâncias
  103. 103. Protégé
  104. 104. Ontologias Ferramentas <ul><li>Editores de Ontologias e de Metadados. Ex.: OilEd, OntoEdit, Protégé </li></ul><ul><li>Ferramentas de Visualização. Ex.: OilViz (do OilEd), TGViz </li></ul><ul><li>Mecanismos de Inferência (reasoners). Ex.: JESS, FaCT, RACER, Pellet </li></ul>
  105. 105. Bibliotecas de Ontologias <ul><li>Reutilização de ontologias é importante! </li></ul><ul><li>Sistemas de gerência de bibliotecas de ontologias oferecem </li></ul><ul><ul><li>Suporte à reutilização </li></ul></ul><ul><ul><li>Infra-estrutura para armazenamento, busca e recuperação de ontologias </li></ul></ul><ul><ul><li>Mecanismos de tradução de ontologias </li></ul></ul><ul><ul><li>Suporte para a edição de ontologias </li></ul></ul><ul><li>Ex: Ontolingua, WebOnto, Ontology Server </li></ul>
  106. 106. Web Semântica Principais Tecnologias metadados ontologias agentes lógica
  107. 107. Agentes de Software <ul><li>“ Em vez de fazer tudo para os usuários, os agentes (de software) vão achar maneiras possíveis de atender às suas necessidades, e então oferecer as opções ao usuário.” </li></ul><ul><li>(James Hendler) </li></ul>
  108. 108. Agentes de Software Características <ul><li>Autonomia </li></ul><ul><li>Proatividade </li></ul><ul><li>Adaptatividade </li></ul><ul><li>Mobilidade </li></ul><ul><li>Interatividade </li></ul><ul><li>... </li></ul><ul><li>Comportam-se mais como um assistente do que como uma ferramenta </li></ul>
  109. 109. Agentes de software na Web Semântica <ul><li>Serão responsáveis por: </li></ul><ul><ul><li>Coordenar tarefas de busca </li></ul></ul><ul><ul><li>Comparação e negociação na rede </li></ul></ul><ul><li>Não vão agir de modo 100% autônomo </li></ul><ul><li>Vão realizar o trabalho “pesado” para que o usuário tome decisões </li></ul>
  110. 110. Agentes de Software na Web Semântica <ul><li>Vão se comunicar através do compartilhamento de ontologias do domínio </li></ul><ul><li>Ontologias servirão como base para a troca de informações entre agentes de software </li></ul>
  111. 111. Agentes de Software na Web Semântica <ul><li>E se não existir uma única ontologia? </li></ul>
  112. 112. Agentes de Software na Web Semântica <ul><li>Como os agentes de software determinam se conceitos compartilhados são semanticamente equivalentes? </li></ul>
  113. 113. Agentes de Software na Web Semântica <ul><li>Como agentes de software determinam se conceitos diferentes têm o mesmo significado? </li></ul>Como agentes de software determinam se suas ontologias pertencem a um mesmo domínio?
  114. 114. Agentes de Software na Web Semântica Como prover a interoperabilidade semântica entre os agentes? Alinhamento de ontologias!
  115. 115. Agentes de Software Interoperabilidade semântica Agente 1 Ontologia 1 Agente 2 Ontologia 2 mapeamentos semânticos (O 1 , O 2 ) Domínio A alinhamento
  116. 116. Alinhamento de ontologias Publicacao ISBN autor ano String String Integer Livro editora String Periódico classif. String Livro editora String ISBN String ano Integer Ontologia 1 Ontologia 2 Artigo confer. String Autor nome String Artigo confer. String
  117. 117. Web Semântica Principais Tecnologias metadados ontologias agentes lógica
  118. 118. Lógica <ul><li>Como pode ser usada na Web Semântica? </li></ul>Para descobrir novos conhecimentos e auxiliar na tomada de decisões
  119. 119. Lógica <ul><li>Pode ser usada para descobrir conhecimento ontológico que não está explícito </li></ul><ul><li>Ex: </li></ul><ul><ul><li>Todos os professores são funcionários da universidade </li></ul></ul><ul><ul><li>Se Berna é uma professora então Berna é uma funcionária da universidade </li></ul></ul>
  120. 120. Lógica <ul><li>Pode ser usado por agentes inteligentes para auxiliar a tomada de decisões </li></ul><ul><li>Ex: </li></ul><ul><ul><li>Um agente de compras pode decidir oferecer um desconto para um cliente com base na seguinte regra </li></ul></ul><ul><ul><li>clienteFiel(X)  desconto(5%) </li></ul></ul>
  121. 121. Lógica <ul><li>Pode oferecer explicações para conclusões </li></ul><ul><li>Os passos para se chegar a uma conclusão podem ser rastreados </li></ul><ul><ul><li>Recursos importante porque aumenta a confiança dos usuários </li></ul></ul>
  122. 122. Lógica <ul><li>Explicações são necessárias para a comunicação entre agentes </li></ul>Agente 1 Agente 2 Você me deve R$100,00 Por que? compra(X, Item) ٨ preco(Item,P) ٨ entrega (Item, X)  deve(X, P)
  123. 123. Lógica <ul><li>Deverá ser capaz de ser processada... </li></ul>
  124. 124. Aplicações Comércio eletrônico <ul><li>O processamento de informações é feito manualmente </li></ul><ul><ul><li>O que fazer? </li></ul></ul><ul><ul><ul><li>Usar agentes para interpretar as informações </li></ul></ul></ul><ul><ul><ul><li>Usar ontologias </li></ul></ul></ul><ul><li>Benefícios com a Web Semântica </li></ul><ul><ul><li>Informações extraídas em um único formato </li></ul></ul>
  125. 125. Aplicações Web Semântica Geo-espacial <ul><li>Busca Semântica </li></ul><ul><ul><li>Dicionários Geográficos </li></ul></ul><ul><ul><li>Catálogos de Metadados </li></ul></ul><ul><ul><ul><li>(Opções + simples de compartilhamento) </li></ul></ul></ul><ul><ul><li>Geo-Ontologias </li></ul></ul><ul><ul><li>Descrição de dados e serviços espaciais </li></ul></ul>
  126. 126. Conclusão <ul><li>A Web Semântica é uma evolução da Web atual </li></ul><ul><ul><li>Agentes farão o “trabalho pesado” </li></ul></ul><ul><ul><li>Ontologias serão usadas para definição de vocabulários comuns para os agentes </li></ul></ul><ul><ul><li>A troca de informações entre os agentes poderá ser feita com linguagens baseadas em XML </li></ul></ul><ul><ul><li>Estratégias de negociação poderão ser escritas em lógica </li></ul></ul><ul><li>O primeiro passo poderá ser dados pelas grandes organizações </li></ul>
  127. 127. Conclusão <ul><li>Grande desafio: </li></ul><ul><li>adoção da tecnologia! </li></ul>
  128. 128. Bibliografia <ul><ul><li>Breitman, K. “Web Semântica: a Internet do Futuro”. Editora LTC, 2005. </li></ul></ul><ul><ul><li>Goméz-Pérez, A., Corcho, O., Fernandez-Lopez, M. “Ontological Engineering (Advanced Information and Knowledge Processing)”, Springer-Verlag, 2004. </li></ul></ul><ul><ul><li>Uschold, M., Gruninger, M. “ Ontologies and Semantics for Seamless Connectivity”. ACM SIGMOD Record Vol. 33, Issue 4, 2004. </li></ul></ul><ul><ul><li>“ DAML+OIL: a Reason-able Web Ontology Language”. Keynote talk given at WES/CAiSE 2002, Toronto, May 28th, 2002. </li></ul></ul><ul><ul><li>“ OWL Web Ontology Language Guide”. W3C Recommendation 10 February 2004 in http:// www.w3.org/TR/owl-guide/ </li></ul></ul><ul><ul><li>Lacy, L.W. “OWL – Representing Information Using the Web Ontology Language”, Trafford, 2005. </li></ul></ul><ul><ul><li>RDF/XML Syntax Specification (Revised). Dave Beckett, Editor. W3C Recommendation, 10 February 2004, Available at: http://www.w3.org/TR/rdf-syntax-grammar/. </li></ul></ul>
  129. 129. <ul><li>Obrigada! </li></ul><ul><li>[email_address] </li></ul>

×