Módulo 2b - Ontologias - RDF

Documentos relacionados
RDF (Resource Description Framework) RDFS (Resource Description Framework Schema)

Resource Description Framework (RDF) Instituto de Informática Universidade Federal de Goiás

Sistemas de informação governados por ontologias

Linked Data Management. Capítulo 1: Linked Data & the Semantic Web Standards

Web Semântica: Conceitos, Tecnologias e Aplicações

Semântica na Web Vocabulários

Web semântica e Ontologias OWL

L A C Laboratory for Advanced Collaboration

5 Tecnologias estudadas

DIOGO FERNANDO VEIGA PEDRO DE STEGE CECCONELLO. Metabolic IsaViz: Representando Vias Metabólicas em Grafos RDF Customizados

TECNOLOGIAS LOD E A PUBLICAÇÃO E INTERLIGAÇÃO DE ACERVOS DIGITAIS DE ARQUIVOS, BIBLIOTECAS E MUSEUS NA WEB

ONTOLOGIAS E ONTOLOGIAS DIFUSAS

Utilização da API Jena para a manipulação de uma ontologia representada em RDF

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS-GRADUAÇÃO EM COMPUTAÇÃO

Minicurso: Introdução ao RDF e SPARQL

2.1. Visão Geral das Ferramentas utilizadas no Ciclo de Vida de Desenvolvimento de Software

1 Introdução. 1 World Wide Web Consortium -

OMNIPAPER ARQUITECTURA DE METADADOS E SUA IMPLEMENTAÇÃO NO RDF GATEWAY

ANEXO C INSTÂNCIAS DA ONTOLOGIA DE MATERIAIS DE APRENDIZAGEM

UNIVERSIDADE LUTERANA DO BRASIL CURSO DE CIÊNCIA DA COMPUTAÇÃO CÂMPUS GRAVATAÍ UM PACOTE.NET PARA MANIPULAÇÃO DE RDF E RDF SCHEMA SOBRE SGBD

OWL-DL Propriedades. Tópicos Especiais em Ontologias UTFPR/CPGEI/Prof. Tacla

D2R EDITOR: HABILITANDO A PUBLICAÇÃO AUTOMÁTICA DE ANOTAÇÕES SEMÂNTICAS DE SITES DINÂMICOS

ANEXO B ONTOLOGIA DE DOMÍNIO SOBRE DISCIPLINAS

Padrões, Ferramentas e Boas Práticas no Desenvolvimento de Software para Web Semântica

UNIVERSIDADE ESTADUAL PAULISTA

Padrões, Ferramentas e Boas Práticas no Desenvolvimento de Software para Web Semântica

Uma Proposta de Navegação na Web Utilizando Facetas

PROTÓTIPO DE FERRAMENTA DE CONSULTA DE INFORMAÇÕES BASEADAS EM ONTOLOGIAS PETER ANTONY RAUSCH JOYCE MARTINS

3 Viabilizando interoperabilidade através de OnOCs

3. Instrumentos metodológicos -> definições DEFINIÇÕES E MODELAGEM

Ontologias MARIANNA ARAÚJO

ABD Arquivos e Bibliotecas Digitais

Sistema de Gerenciamento de Objetos de Aprendizagem para dispositivos Móveis

1 Introdução. 1.1 A Web Semântica

Padrões para Definição de Metadados

RDF e RDF Schema na representação de páginas do portal CEULP/ULBRA

A Web Semântica: Conceitos e Aplicações. Valéria M. Pequeno Universidade Autónoma de Lisboa

7 Referências bibliográficas

RDF e RDFS na Infra-estrutura de Suporte à Web Semântica

4 O Projeto Conceitual SHDM

3 Ontologias e Vocabulários

XML Schema, RDF(S) e UML: uma Comparação

2 Fundamentos Ontologias

A Web Semântica é uma extensão da Web atual e não uma substituta.

Este capítulo aborda os fundamentos principais aplicados neste trabalho.

Web Semântica. Marisa Bräscher 2007

XML - Extensible Markup Language

Banco de Dados. Profs: - Ana Carolina - Fernando Fonseca 2017

Predição de tags usando linked data: um estudo de caso no banco de dados Arquigrafia. Ricardo Augusto Teixeira de Souza

4 EduCO: Representando a Informação Contida em Materiais de Aprendizagem

Semântica na Web. Carlos Bazilio. Depto de Computação Instituto de Ciência e Tecnologia Universidade Federal Fluminense

ver também: Cool URIs for the Semantic Web,

Denise Gomes Silva Morais Cavalcante. Programa de Pós-graduação em Ciências da Informação/ECA- USP. Orientador: Nair Yumiko Kobashi

EDEILSON MILHOMEM DA SILVA DESENVOLVIMENTO DE UM SISTEMA UTILIZANDO A TECNOLOGIA JSP PARA A MANIPULAÇÃO E RECUPERAÇÃO DE FOTOS DOCUMENTADAS EM RDF

Biblioteca Virtual & Pública, com Peer-to-Peer e Web Services. Universidade Federal de Santa Catarina. Departamento de Informática e Estatística

Predição de tags usando linked data: um estudo de caso no banco de dados Arquigrafia. Ricardo Augusto Teixeira de Souza

5 O Projeto Navegacional SHDM

Introdução XML. Vanessa Braganholo

Apache Jena. jena.apache.org. André Henrique Dantas Neves Cordeiro

O padrão RDF na descrição de imagens

Web Semântica para Máquinas de Busca

XML. Prof. Júlio Machado

JONATHAN SCHNEIDER CRIAÇÃO E CONSUMO DE DADOS NOS PADRÕES DA WEB SEMÂNTICA, UTILIZANDO RDF E JENA

Universidade Estadual de Maringá Centro de Tecnologia Departamento de Informática Curso de Engenharia de Produção

CONVERSÃO DE METADADOS DO PADRÃO DUBLIN CORE PARA O RDF Arlindo Leal Boica Leandro Henrique Mendonça de Oliveira

Uma Proposta de Arcabouço para Implementação de Comunidades Virtuais de Prática no Contexto da Web Semântica

4 Exemplo. 4.1 Modelo conceitual

Sistema de Gerenciamento de Objetos de Aprendizagem para dispositivos Móveis

3 Estado da arte. 3.1 A linguagem de consultas SPARQL

RDF -Resource Description Framework

Web Semântica e PLN. Paulo Gomes DEI FCTUC

GESTÃO DE DOCUMENTOS DE ARQUIVO

PODCAST: UMA PROPOSTA DE DESCRIÇÃO POR MEIO DE PADRÕES DE METADADOS

Manipulação de uma ontologia desenvolvida em OWL através da utilização da API JENA 2 Ontology

Introdução à Web Semântica

Uma Arquitetura para Catálogos de Objetos baseados em Ontologias

Em Direção a Descoberta de Recursos Baseada em Matching Semântico para UBICOMP

Aula Introdutória ao Protégé 5.X

(com a colaboração de Nuno Oliveira) Departamento de Informática Universidade do Minho

Spectrum Miner. Versão 8.0. Quadstone Metadata Markup Language

Web semântica aplicada ao serviço da Consultadoria jurídica - Lei de arrendamento

Web Semântica. Web Semântica. uma

documentos, apenas indicações de formatação de como o texto deve ser exibido. Por exemplo, imagine o seguinte trecho de documento em HTML:

L A C Laboratory for Advanced Collaboration

Obtendo Interoperabilidade Semântica em Sistemas. Metamorphosis

UNIVERSIDADE FEDERAL DO CEARÁ UFC PROGRAMA DE MESTRADO E DOUTORADO EM CIÊNCIA DA COMPUTAÇÃO CURSO DE CIÊNCIA DA COMPUTAÇÃO


Capítulo 2. Fundamentos 25

EdV-Linguateca 2006 Ontologias & Terminologias: Perspectivas da engenharia

Ontologias e suas Aplicações

Um estudo para representação da semântica de diagramas entidade-relacionamento em OWL

Prof. Daniela Barreiro Claro

Web de hoje (2.0) Porquê WEB 2.0?

Ativação de componentes de software com a utilização de uma ontologia de componentes. Augusto Carbol Lorza

Neste capítulo iremos abordar, de forma introdutória, os principais conceitos teóricos utilizados nesta dissertação e na construção do HyperDE.

UNIVERSIDADE FEDERAL DO CEARÁ CENTRO DE CIÊNCIAS DEPARTAMENTO DE COMPUTAÇÃO MESTRADO E DOUTORADO EM CIÊNCIA DA COMPUTAÇÃO LUÍS EUFRASIO TEIXEIRA NETO

Castro (2008, p.7) define a palavra ontologia de forma mais simplificada:

comparando as linguagens para representação de ontologias 1 COMPARING LANGUAGES FOR THE REPRESENTATION OF ONTOLOGIES

3 O Sistema: SetFramework

Transcrição:

Tecnologias de Banco de Dados para a Web Semântica Módulo 2b - Ontologias - RDF Marco A. Casanova 7/3/2005 (c) Marco A. Casanova - PUC-Rio 1

Tópicos Introdução URIref e Qname RDF Básica RDF/XML Outros recursos de RDF RDF Schema Exemplos de RDF Schemas 7/3/2005 (c) Marco A. Casanova - PUC-Rio 2

Introdução RDF: provê uma linguagem comum que as aplicações podem utilizar para intercambiar informação, sem perda de significado: informação sobre recursos na Web, particularmente metadados informação sobre objetos que podem ser identificados na Web, mesmo que não possam ser recuperados pela Web (como produtos vendidos pela Web) 7/3/2005 (c) Marco A. Casanova - PUC-Rio 3

URIref e Qname URI Reference (URIref): uma URI com um identificador de fragmento opcional utilizada para identificar: indivíduos, e.g., Eric Miller, identificado por http://www.w3.org/people/em/contact#me tipos de objetos, e.g., Person, identificado por http://www.w3.org/2000/10/swap/pim/contact#person propriedades de objetos, e.g., mailbox, identificado por http://www.w3.org/2000/10/swap/pim/contact#mailbox valores das propriedades, e.g. mailto:em@w3.org, identificado por http://www.example.org/staffem/85741 7/3/2005 (c) Marco A. Casanova - PUC-Rio 4

URIref e Qname Qualified Name (QName): uma abreviação para uma URI reference QName prefix: uma abreviação para um URI namespace Exemplo: foo é um QName prefix abreviando o URI namespace http://example.org/somewhere/ foo:bar é um QName abreviando a URIref http://example.org/somewhere/bar 7/3/2005 (c) Marco A. Casanova - PUC-Rio 5

URIref e Qname Exemplos de QName prefix mais usados: rdf: rdfs: dc: daml: ex: xsd: http://www.w3.org/1999/02/22-rdf-syntax-ns# http://www.w3.org/2000/01/rdf-schema# http://purl.org/dc/elements/1.1/ http://www.daml.org/2001/03/daml+oil# http://www.example.org/ http://www.w3.org/2001/xmlschema# 7/3/2005 (c) Marco A. Casanova - PUC-Rio 6

RDF Básica RDF Model: um recurso em RDF é qualquer URIref uma afirmação em RDF é uma tripla (S, P, O), entendida como S possui P com valor O, onde S é o sujeito da afirmação, designado por um recurso P é o predicado da afirmação, designado por um recurso O é o o objeto da afirmação, designado por um recurso ou literal 7/3/2005 (c) Marco A. Casanova - PUC-Rio 7

RDF Básica RDF Model: um grupo de afirmações em RDF deve ser entendido como a conjunção das afirmações 7/3/2005 (c) Marco A. Casanova - PUC-Rio 8

RDF Básica Exemplo: http://www.example.org/index.html has a creator whose value is John Smith sujeito: http://www.example.org/index.html predicado: http://purl.org/dc/elements/1.1/creator (URI para creator ) objeto: http://www.example.org/staffid/85740 (URI para John Smith ) 7/3/2005 (c) Marco A. Casanova - PUC-Rio 9

RDF Básica Notação em triplas: <http://www.example.org/index.html> <http://purl.org/dc/elements/1.1/creator> <http://www.example.org/staffid/85740>. Notação em grafo: Sujeito propriedade Objeto 7/3/2005 (c) Marco A. Casanova - PUC-Rio 10

<http://www.example.org/index.html> <http://purl.org/dc/elements/1.1/creator> <http://www.example.org/staffid/85740>. <http://www.example.org/index.html> <http://www.example.org/terms/creation-date> "August 16, 1999". <http://www.example.org/index.html> <http://www.example.org/terms/language> "English". literais 7/3/2005 (c) Marco A. Casanova - PUC-Rio 11

RDF Básica 7/3/2005 (c) Marco A. Casanova - PUC-Rio 12

RDF Básica Valores estruturados de propriedades e nós vazios: exstaff:85740 exterms:address _:johnaddress. _:johnaddress exterms:street "1501 Grant Avenue". _:johnaddress exterms:city "Bedford". _:johnaddress exterms:state "Massachusetts". _:johnaddress exterms:zip "01730". 7/3/2005 (c) Marco A. Casanova - PUC-Rio 13

RDF Básica nó vazio 7/3/2005 (c) Marco A. Casanova - PUC-Rio 14

RDF Básica Literais tipados: ex:index.html exterms:creation-date "1999-08-16"^^xsd:date. 7/3/2005 (c) Marco A. Casanova - PUC-Rio 15

RDF/XML Exemplo: ex:index.html exterms:creation-date "August 16, 1999". ex:index.html exterms:language "English". ex:index.html dc:creator http://www.example.org/staffid/85740. <?xml version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:exterms="http://www.example.org/terms/"> <rdf:description rdf:about="http://www.example.org/index.html"> <exterms:creation-date>august 16, 1999</exterms:creation-date> <exterms:language>english</exterms:language> <dc:creator rdf:resource="http://www.example.org/staffid/85740"/> </rdf:description> </rdf:rdf> 7/3/2005 (c) Marco A. Casanova - PUC-Rio 16

<?xml version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:exterms="http://www.example.org/terms/"> <rdf:description rdf:about="http://www.example.org/index.html"> <exterms:creation-date>august 16, 1999</exterms:creation-date> <exterms:language>english</exterms:language> <dc:creator rdf:resource="http://www.example.org/staffid/85740"/> </rdf:description> </rdf:rdf> 7/3/2005 (c) Marco A. Casanova - PUC-Rio 17

RDF/XML rdf:rdf indica que o documento XML define afirmações em RDF rdf:description indica o início da descrição de um recurso <?xml version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:exterms="http://www.example.org/terms/"> <rdf:description rdf:about="http://www.example.org/index.html"> <exterms:creation-date>august 16, 1999</exterms:creation-date> <exterms:language>english</exterms:language> <dc:creator rdf:resource="http://www.example.org/staffid/85740"/> </rdf:description> </rdf:rdf> 7/3/2005 (c) Marco A. Casanova - PUC-Rio 18

RDF/XML rdf:about valor do atributo é uma URIref identificando o recurso property elements aninhados no elemento "rdf:description" indicam que a propriedade aplica-se ao recurso em "rdf:about" <?xml version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:exterms="http://www.example.org/terms/"> <rdf:description rdf:about="http://www.example.org/index.html"> <exterms:creation-date>august 16, 1999</exterms:creation-date> <exterms:language>english</exterms:language> <dc:creator rdf:resource="http://www.example.org/staffid/85740"/> </rdf:description> </rdf:rdf> 7/3/2005 (c) Marco A. Casanova - PUC-Rio 19

RDF/XML rdf:id indica o uso de um fragment identifier, uma abreviação para a URIref completa do recurso sendo descrito a URIref completa para o recurso é criada concatenando-se: a base URI com o símbolo "#" com o valor de "rdf:id" rdf:id="fragment identifier" é equivalente a rdf:about="#fragment identifier" 7/3/2005 (c) Marco A. Casanova - PUC-Rio 20

RDF/XML Exemplo: fragment identifier: item10245 base URI: http://www.example.com/2002/04/products URIref equivalente: http://www.example.com/2002/04/products#item10245 <?xml version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:exterms="http://www.example.com/terms/"> <rdf:description rdf:id="item10245"> <exterms:model>overnighter</exterms:model> <exterms:sleeps>2</exterms:sleeps> <exterms:weight>2.4</exterms:weight> <exterms:packedsize>14x56</exterms:packedsize> </rdf:description> </rdf:rdf> 7/3/2005 (c) Marco A. Casanova - PUC-Rio 21

RDF/XML XML base por default, a base URI é a URI do documento que contém as afirmações em RDF alternativamente, a base URI pode ser indicada explicitamente através do atributo xml:base <?xml version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:exterms="http://www.example.com/terms/" xml:base="http://www.example.com/2002/04/products"> <rdf:description rdf:id="item10245"> <exterms:model>overnighter</exterms:model> <exterms:sleeps>2</exterms:sleeps> <exterms:weight>2.4</exterms:weight> <exterms:packedsize>14x56</exterms:packedsize> </rdf:description> </rdf:rdf> 7/3/2005 (c) Marco A. Casanova - PUC-Rio 22

RDF/XML rdf:type propriedade tal que: valor da propriedade: recurso representando uma categoria ou classe de objetos sujeito da propriedade: instância da categoria ou classe 7/3/2005 (c) Marco A. Casanova - PUC-Rio 23

Exemplo de rdf:type RDF/XML <?xml version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:exterms="http://www.example.com/terms/" xml:base="http://www.example.com/2002/04/products"> <rdf:description rdf:id="item10245"> <rdf:type rdf:resource="http://www.example.com/terms/tent" /> <exterms:model>overnighter</exterms:model> <exterms:sleeps>2</exterms:sleeps> <exterms:weight>2.4</exterms:weight> <exterms:packedsize>14x56</exterms:packedsize> </rdf:description>...other product descriptions... </rdf:rdf> 7/3/2005 (c) Marco A. Casanova - PUC-Rio 24

RDF/XML Exemplo de notação simplificada para rdf:type <?xml version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:exterms="http://www.example.com/terms/" xml:base="http://www.example.com/2002/04/products"> <exterms:tent rdf:id="item10245"> <exterms:model>overnighter</exterms:model> <exterms:sleeps>2</exterms:sleeps> <exterms:weight>2.4</exterms:weight> <exterms:packedsize>14x56</exterms:packedsize> </exterms:tent>...other product descriptions... </rdf:rdf> 7/3/2005 (c) Marco A. Casanova - PUC-Rio 25

RDF/XML Exemplo de uso de literais tipados ex:index.html exterms:creation-date "1999-08-16"^^xsd:date. <?xml version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:exterms="http://www.example.org/terms/"> <rdf:description rdf:about="http://www.example.org/index.html"> <exterms:creation-date rdf:datatype= "http://www.w3.org/2001/xmlschema#date">1999-08-16 </exterms:creation-date> </rdf:description> </rdf:rdf> 7/3/2005 (c) Marco A. Casanova - PUC-Rio 26

Outros recursos de RDF RDF Containers um container é um recurso que contém objetos, chamados de membros os membros podem ser recursos ou literais 7/3/2005 (c) Marco A. Casanova - PUC-Rio 27

Outros recursos de RDF RDF Containers tipos de containers: rdf:bag rdf:seq rdf:alt tipo dos containers que designam conjuntos ("bag") de recursos ou literais tipo dos containers que designam seqüências de recursos ou literais tipo dos containers que designam grupos de recursos ou literais que representam alternativas 7/3/2005 (c) Marco A. Casanova - PUC-Rio 28

Outros recursos de RDF 7/3/2005 (c) Marco A. Casanova - PUC-Rio 29

Outros recursos de RDF Exemplo de rdf:bag <?xml version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:s="http://example.edu/students/vocab#"> <rdf:description rdf:about="http://example.edu/courses/6.001"> <s:students> <rdf:bag> <rdf:li rdf:resource="http://example.edu/students/amy"/> <rdf:li rdf:resource="http://example.edu/students/tim"/> <rdf:li rdf:resource="http://example.edu/students/john"/> <rdf:li rdf:resource="http://example.edu/students/mary"/> <rdf:li rdf:resource="http://example.edu/students/sue"/> </rdf:bag> </s:students> </rdf:description> </rdf:rdf> 7/3/2005 (c) Marco A. Casanova - PUC-Rio 30

Outros recursos de RDF 7/3/2005 (c) Marco A. Casanova - PUC-Rio 31

Outros recursos de RDF Exemplo de rdf:alt <?xml version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:s="http://example.org/packages/vocab#"> <rdf:description rdf:about="http://example.org/packages/x11"> <s:distributionsite> <rdf:alt> <rdf:li rdf:resource="ftp://ftp.example.org"/> <rdf:li rdf:resource="ftp://ftp.example1.org"/> <rdf:li rdf:resource="ftp://ftp.example2.org"/> </rdf:alt> </s:distributionsite> </rdf:description> </rdf:rdf> 7/3/2005 (c) Marco A. Casanova - PUC-Rio 32

Outros recursos de RDF RDF Collection um grupo de objetos representado como uma lista em RDF através do seguinte vocabulário: rdf:list rdf:first rdf:rest rdf:nil tipo das listas de recursos ou literais primeiro elemento de uma lista resto de uma lista lista vazia 7/3/2005 (c) Marco A. Casanova - PUC-Rio 33

7/3/2005 (c) Marco A. Casanova - PUC-Rio 34

Outros recursos de RDF Exemplo de RDF Collection <?xml version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:s="http://example.edu/students/vocab#"> <rdf:description rdf:about="http://example.edu/courses/6.001"> <s:students rdf:parsetype="collection"> <rdf:description rdf:about="http://example.edu/students/amy"/> <rdf:description rdf:about="http://example.edu/students/tim"/> <rdf:description rdf:about="http://example.edu/students/john"/> </s:students> </rdf:description> </rdf:rdf> 7/3/2005 (c) Marco A. Casanova - PUC-Rio 35

Outros recursos de RDF RDF Reification rdf:statement indica que a afirmação é sobre outra afirmação rdf:subject sujeito da afirmação rdf:predicate predicado da afirmação rdf:object objeto da afirmação 7/3/2005 (c) Marco A. Casanova - PUC-Rio 36

Outros recursos de RDF Exemplo de RDF Reification [[exproducts:item10245 exterms:weight "2.4".]] dc:creator exstaff:85740. _:xxx rdf:type rdf:statement. _:xxx rdf:subject exproducts:item10245. _:xxx rdf:predicate exterms:weight. _:xxx rdf:object "2.4". _:xxx dc:creator exstaff:85740. 1. Estas triplas indicam que "há uma afirmação cujo sujeito é "exproducts:item10245", cujo predicado é "exterms:weight", e cujo objeto é "2.4" e que a afirmação foi feita pelo recurso identificado por "exstaff:85740" " 2. Estas triplas não indicam que a afirmação (identificada por "_:xxx") é a mesma que alguma afirmação específica em um documento RDF. 7/3/2005 (c) Marco A. Casanova - PUC-Rio 37

Resumo do Vocabulário Termos Básicos rdf:rdf rdf:description rdf:about rdf:id rdf:resource property elements rdf:type rdf:property termo indicando que o documento define afirmações em RDF termo indicando o início da descrição de um recurso termo indicando uma URIref identificando o recurso termo indicando um fragment identifier identificando o recurso termo indicando um recurso elementos aninhados no elemento "rdf:description"; indicam que a propriedade aplica-se ao recurso descrito valor da propriedade é um recurso representando uma categoria ou classe de objetos; sujeito da propriedade é uma instância da categoria ou classe classe das propriedades Descrição 7/3/2005 (c) Marco A. Casanova - PUC-Rio 38

Resumo do Vocabulário RDF Container rdf:seq rdf:bag rdf:alt rdf:li classe das seqüência de recursos ou literais classe dos conjuntos ("bag") de recursos ou literais classe dos grupo de recursos ou literais que representam alternativas indica um elemento Descrição 7/3/2005 (c) Marco A. Casanova - PUC-Rio 39

Resumo do Vocabulário RDF Collection rdf:list rdf:first rdf:rest rdf:nil rdf:parsetype= "Collection" Descrição classe das listas de recursos ou literais propriedade indicando o primeiro elemento de uma lista propriedade indicando o resto de uma lista recurso indicando a lista vazia (equivalente a rdf:list em RDF/XML) 7/3/2005 (c) Marco A. Casanova - PUC-Rio 40

Resumo do Vocabulário RDF Reification rdf:statement rdf:subject rdf:predicate rdf:object Descrição tipo indicando que a afirmação é sobre outra afirmação propriedade indicando o sujeito da afirmação propriedade indicando o predcado da afirmação propriedade indicando o objeto da afirmação 7/3/2005 (c) Marco A. Casanova - PUC-Rio 41

RDF Schema Definição de RDF Schema (RDFS): sistema de tipos para RDF, permitindo definir: classes hierarquia de classes propriedades de classes usa o próprio RDF para especificar o sistema de tipos 7/3/2005 (c) Marco A. Casanova - PUC-Rio 42

RDF Schema Definição de RDF Schema (RDFS): provê um conjunto de recursos e propriedades: com significado definido utilizado para descrever classes e propriedades de uma aplicação forma um vocabulário reservado (de RDF Schema) estendendo o vocabulário de RDF 7/3/2005 (c) Marco A. Casanova - PUC-Rio 43

RDF Schema Vocabulário de RDF: rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns# Vocabulário de RDF Schema: rdfs: http://www.w3.org/2000/01/rdf-schema# Namespace usado para os exemplos: ex: http://www.example.org/ 7/3/2005 (c) Marco A. Casanova - PUC-Rio 44

RDF Schema Definição de classe: sujeito: o nome da classe propriedade: rdf:type objeto: rdfs:class Exemplo: ex:motorvehicle rdf:type rdfs:class. (nota: triplas usando QName prefixes dispensam o uso de < e > ) 7/3/2005 (c) Marco A. Casanova - PUC-Rio 45

RDF Schema Definição de classe em RDF/XML: xml:base: ex: tripla: ex:motorvehicle rdf:type rdfs:class. <?xml version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns# > <rdf:description rdf:id="motorvehicle"> <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#class"/> </rdf:description> </rdf:rdf> 7/3/2005 (c) Marco A. Casanova - PUC-Rio 46

RDF Schema Definição de subclasse: sujeito:o recurso identificando o nome da classe propriedade: rdfs:subclassof objeto: o recurso identificando o nome da classe Exemplo: ex:van rdf:type rdfs:class. ex:van rdfs:subclassof ex:motorvehicle. 7/3/2005 (c) Marco A. Casanova - PUC-Rio 47

RDF Schema Subclasse (cont.): a propriedade rdfs:subclassof é transitiva Exemplo de subclasses transitivas: ex:van rdf:type rdfs:class. ex:minvan rdf:type rdfs:class. ex:van rdfs:subclassof ex:motorvehicle. ex:minvan rdfs:subclassof ex:van. ex:minvan rdfs:subclassof ex:motorvehicle. 7/3/2005 (c) Marco A. Casanova - PUC-Rio 48

7/3/2005 (c) Marco A. Casanova - PUC-Rio 49

RDF Schema Exemplo de esquema em triplas: ex:motorvehicle rdf:type rdfs:class. ex:passengervehicle rdf:type rdfs:class. ex:van rdf:type rdfs:class. ex:truck rdf:type rdfs:class. ex:minivan rdf:type rdfs:class. ex:passengervehicle rdfs:subclassof ex:motorvehicle. ex:van rdfs:subclassof ex:motorvehicle. ex:truck rdfs:subclassof ex:motorvehicle. ex:minivan rdfs:subclassof ex:van. ex:minivan rdfs:subclassof ex:passengervehicle. 7/3/2005 (c) Marco A. Casanova - PUC-Rio 50

<?xml version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"> Exemplo de esquema em RDF/XML <rdf:description rdf:id="motorvehicle"> <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#class"/> </rdf:description> <rdf:description rdf:id="passengervehicle"> <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#class"/> <rdfs:subclassof rdf:resource="#motorvehicle"/> </rdf:description> <rdf:description rdf:id="truck"> <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#class"/> <rdfs:subclassof rdf:resource="#motorvehicle"/> </rdf:description> <rdf:description rdf:id="van"> <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#class"/> <rdfs:subclassof rdf:resource="#motorvehicle"/> </rdf:description> <rdf:description rdf:id="minivan"> <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#class"/> <rdfs:subclassof rdf:resource="#van"/> <rdfs:subclassof rdf:resource="#passengervehicle"/> </rdf:description> 7/3/2005 </rdf:rdf> (c) Marco A. Casanova - PUC-Rio 51

RDF Schema Definição de instância de classe: sujeito:o recurso identificando a instância da classe propriedade: rdf:type objeto: o recurso identificando o nome da classe Exemplo: ex:companycar rdf:type ex:motorvehicle. 7/3/2005 (c) Marco A. Casanova - PUC-Rio 52

RDF Schema Definição de inst. de classe em RDF/XML: xml:base: ex: tripla: ex:companycar rdf:type ex:motorvehicle. <?xml version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:ex="http://example.org/schemas/vehicles"> <rdf:description rdf:id="companycar"> <rdf:type rdf:resource="http://example.org/schemas/vehicles#motorvehicle"/> </rdf:description> </rdf:rdf> 7/3/2005 (c) Marco A. Casanova - PUC-Rio 53

RDF Schema Definição de inst. de classe em RDF/XML: xml:base: ex: tripla: ex:companycar rdf:type ex:motorvehicle. <?xml version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns# > <rdf:description rdf:id="companycar"> <rdf:type rdf:resource= #MotorVehicle"/> </rdf:description> URIref relativa </rdf:rdf> 7/3/2005 (c) Marco A. Casanova - PUC-Rio 54

RDF Schema Definição de inst. de classe em RDF/XML: xml:base: ex: tripla: ex:companycar rdf:type ex2:motorvehicle. <?xml version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:ex2="http://example.org/schemas/vehicles"> <rdf:description rdf:id="companycar"> <rdf:type rdf:resource= ex2:#motorvehicle"/> </rdf:description> </rdf:rdf> 7/3/2005 (c) Marco A. Casanova - PUC-Rio 55

RDF Schema Definição de propriedade: sujeito:o recurso identificando o nome da propriedade propriedade: rdf:type objeto: rdf:property (uma classe definida em RDF) Exemplo: exterms:weightinkg rdf:type rdf:property. 7/3/2005 (c) Marco A. Casanova - PUC-Rio 56

RDF Schema Definição de domínio (Domain): sujeito:o recurso identificando o nome da propriedade propriedade: rdfs:domain objeto: o recurso identificando o nome de uma classe Exemplos: ex:book rdf:type rdfs:class. ex:author rdf:type rdf:property. ex:author rdfs:domain ex:book. 7/3/2005 (c) Marco A. Casanova - PUC-Rio 57

RDF Schema Definição de contradomínio (Range): sujeito:o recurso identificando o nome da propriedade propriedade: rdfs:range objeto: o recurso identificando o nome de uma classe ou o nome de um XSD data type Exemplos: ex:person rdf:type rdfs:class. ex:age rdf:type rdf:property. ex:author rdf:type rdf:property. ex:age rdfs:range xsd:integer. ex:author rdfs:range ex:person. xsd:integer rdf:type rdfs:datatype. 7/3/2005 (c) Marco A. Casanova - PUC-Rio 58

<rdf:description rdf:id="registeredto"> <rdf:type Exemplo de propriedades em RDF/XML rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#property"/> <rdfs:domain rdf:resource="#motorvehicle"/> <rdfs:range rdf:resource="#person"/> </rdf:description> <rdf:description rdf:id="rearseatlegroom"> <rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#property"/> <rdfs:domain rdf:resource="#passengervehicle"/> <rdfs:range rdf:resource="http://www.w3.org/2001/xmlschema#integer"/> </rdf:description> <rdf:description rdf:id="person"> <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#class"/> </rdf:description> <rdf:description rdf:about="http://www.w3.org/2001/xmlschema#integer"> <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#datatype"/> </rdf:description> 7/3/2005 (c) Marco A. Casanova - PUC-Rio 59

RDF Schema Subpropriedade: sujeito:o recurso identificando o nome da propriedade propriedade: rdfs:subpropertyof objeto: recurso identificando o nome da sub-propriedade Exemplo de definição de sub-propriedade: ex:driver rdf:type rdf:property. ex:primarydriver rdf:type rdf:property. ex:primarydriver rdfs:subpropertyof ex:driver. 7/3/2005 (c) Marco A. Casanova - PUC-Rio 60

RDF Schema Exemplo em RDF/XML: <rdf:description rdf:id="driver"> <rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#property"/> <rdfs:domain rdf:resource="#motorvehicle"/> </rdf:description> <rdf:description rdf:id="primarydriver"> <rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#property"/> <rdfs:subpropertyof rdf:resource="#driver"/> </rdf:description> 7/3/2005 (c) Marco A. Casanova - PUC-Rio 61

RDF Schema Instância de propriedade: sujeito: recurso identificando uma instância de uma classe propriedade: o nome da propriedade objeto: recurso identificando uma instância de uma classe ou literal indicando o valor da propriedade Exemplo: ex:johnsmithscar ex:registeredto ex:85740. 7/3/2005 (c) Marco A. Casanova - PUC-Rio 62

RDF Schema Instância de propriedade em RDF/XML: <?xml version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:ex="http://example.org/schemas/vehicles"> <rdf:description rdf:id="johnsmithscar"> <rdf:type rdf:resource="http://example.org/schemas/vehicles#passengervehicle"/> <ex:registeredto rdf:resource="http://www.example.org/staffid/85740"/> <ex:rearseatlegroom rdf:datatype="http://www.w3.org/2001/xmlschema#integer"> 127 </ex:rearseatlegroom> <ex:primarydriver rdf:resource="http://www.example.org/staffid/85740"/> </rdf:description> </rdf:rdf> 7/3/2005 (c) Marco A. Casanova - PUC-Rio 63

RDF Schema Forma abreviada em RDF/XML: <?xml version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:ex="http://example.org/schemas/vehicles"> <ex:passengervehicle rdf:id="johnsmithscar"> <ex:registeredto rdf:resource="http://www.example.org/staffid/85740"/> <ex:rearseatlegroom rdf:datatype="http://www.w3.org/2001/xmlschema#integer"> 127 </ex:rearseatlegroom> <ex:primarydriver rdf:resource="http://www.example.org/staffid/85740"/> </ex:passengervehicle> </rdf:rdf> 7/3/2005 (c) Marco A. Casanova - PUC-Rio 64

RDF Schema Interpretação de um RDF Schema: regra de escopo para propriedades: linguagens de programação: RDF: o escopo de um atributo é restrito à classe ou tipo em que é definido o escopo de uma propriedade é global, ou seja, independente da definição das classes 7/3/2005 (c) Marco A. Casanova - PUC-Rio 65

RDF Schema Interpretação de um RDF Schema: papel das descrições em um esquema: linguagens de programação: RDF: a definição dos tipos ou classes é prescritiva um RDF schema é apenas uma descrição adicional dos recursos a aplicação decide como interpretar o esquema 7/3/2005 (c) Marco A. Casanova - PUC-Rio 66

RDF Schema Interpretação de um RDF Schema (cont.): papel das descrições em um esquema: uma descrição de uma instância pode ser considerada válida (por uma aplicação) sem que especifique alguma propriedade definida no esquema ou com uma propriedade adicional não descrita no esquema 7/3/2005 (c) Marco A. Casanova - PUC-Rio 67

RDF Schema Vocabulário de RDF Schema Classe Conceito Propriedade de classe Recurso rdfs:class rdfs:resource rdf:property Propriedade rdf:type rdfs:subclassof rdf:type rdfs:domain rdfs:range rdfs:subpropertyof 7/3/2005 (c) Marco A. Casanova - PUC-Rio 68

Exemplos de RDF Schemas Dublin Core Metadata Initiative http://dublincore.org/documents/dces/ conjunto mínimo de elementos descritivos para facilitar a descrição e indexação automática de objetos, como documentos, interligados entre si, de forma semelhante ao catálogo de uma biblioteca 7/3/2005 (c) Marco A. Casanova - PUC-Rio 69

Exemplos de RDF Schemas <?xml version="1.0" encoding="utf-8"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xml:lang="en-us"> <rdf:description rdf:about="http://wanderlust.com/2000/08/corfu.jpg"> <dc:identifier rdf:resource="http://wanderlust.com/content/2357845" /> <dc:description>photograph taken at 6:00 am on Corfu with two models </dc:description> <dc:title>walking on the Beach in Corfu</dc:title> <dc:creator>john Peterson</dc:creator> <dc:contributor>sally Smith, lighting</dc:contributor> <dc:format>image/jpeg</dc:format> </rdf:description> </rdf:rdf> 7/3/2005 (c) Marco A. Casanova - PUC-Rio 70

Exemplos de RDF Schemas PRISM: Publishing Requirements for Industry Standard Metadata http://www.prismstandard.org/ especificação de metadados para a imprensa, enfatizando: descoberta pesquisa, browsing, distribuição de conteúdo, etc... acompanhamento de direitos autorais transmissão de metadados (junto com o conteúdo). baseia-se no Dublin Core 7/3/2005 (c) Marco A. Casanova - PUC-Rio 71

Exemplos de RDF Schemas <?xml version="1.0" encoding="utf-8"?> <rdf:rdf xmlns:prism="http://prismstandard.org/namespaces/1.2/basic/" 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://wanderlust.com/2000/08/corfu.jpg"> <dc:identifier rdf:resource=" http://wanderlust.com/content/2357845" /> <prism:copyright>copyright 2001, Wanderlust Publications. All rights reserved. </prism:copyright> <prism:rightsagent>phantasy Photos, Philadelphia</prism:rightsAgent> </rdf:description> </rdf:rdf> 7/3/2005 (c) Marco A. Casanova - PUC-Rio 72

Exemplos de RDF Schemas Open Directory Project http://rdf.dmoz.org/ diretório para a Web editado manualmente (!) construído e mantido por uma comunidade de voluntários (!!) 7/3/2005 (c) Marco A. Casanova - PUC-Rio 73

Exemplos de RDF Schemas Composite Capabilities/Preferences Profile (CC/PP) define um framework genérico para descrever, para servidores, o contexto de entrega de um cliente: capacidade do dispositivo preferências do usuário características da rede etc... 7/3/2005 (c) Marco A. Casanova - PUC-Rio 74

Exemplos de RDF Schemas Gene Ontology (GO) Consortium: provê um vocabulário controlado para descrever aspectos de produtos derivados da Genética 7/3/2005 (c) Marco A. Casanova - PUC-Rio 75

Referências RDF Primer (W3C Working Draft 23 January 2003) http://www.w3.org/tr/2003/wd-rdf-primer-20030123/ 7/3/2005 (c) Marco A. Casanova - PUC-Rio 76

Referências 7/3/2005 (c) Marco A. Casanova - PUC-Rio 77