Podcast
Questions and Answers
Qual das seguintes opções melhor descreve o papel dos standards na Web Semântica?
Qual das seguintes opções melhor descreve o papel dos standards na Web Semântica?
- Limitar a criação de novos conjuntos de dados semânticos.
- Eliminar a necessidade de gestão de dados semânticos.
- Substituir a necessidade de partilha de dados.
- Garantir a uniformidade no tratamento da informação. (correct)
O que são URIs (Uniform Resource Identifiers) no contexto da Web Semântica?
O que são URIs (Uniform Resource Identifiers) no contexto da Web Semântica?
- Normas para representar e partilhar dados semânticos.
- Linguagens de pesquisa para dados semânticos.
- Ferramentas para a gestão de dados semânticos.
- Identificadores globais únicos para identificar entidades. (correct)
Qual a função do RDF (Resource Description Framework) na Web Semântica?
Qual a função do RDF (Resource Description Framework) na Web Semântica?
- Permitir a pesquisa de dados em diferentes formatos.
- Representar e partilhar dados semânticos de forma padronizada. (correct)
- Definir protocolos de comunicação entre sistemas.
- Criar identificadores únicos para recursos na web.
O que é SPARQL (SPARQL Protocol and RDF Query Language)?
O que é SPARQL (SPARQL Protocol and RDF Query Language)?
Por que é importante o uso de identificadores únicos (URIs) em grafos de conhecimento?
Por que é importante o uso de identificadores únicos (URIs) em grafos de conhecimento?
Qual a relação entre URIs e URLs?
Qual a relação entre URIs e URLs?
Em RDF, qual é a função dos 'URI References' (URIref)?
Em RDF, qual é a função dos 'URI References' (URIref)?
Qual a importância dos nós anónimos (ou vazios) no RDF?
Qual a importância dos nós anónimos (ou vazios) no RDF?
Os triplos RDF são compostos por quais elementos?
Os triplos RDF são compostos por quais elementos?
Qual é a finalidade de usar 'xsd:integer' ao definir um valor literal em RDF?
Qual é a finalidade de usar 'xsd:integer' ao definir um valor literal em RDF?
Qual das seguintes opções é um formato de serialização RDF que se destaca pela sua simplicidade?
Qual das seguintes opções é um formato de serialização RDF que se destaca pela sua simplicidade?
Qual a principal característica da representação RDF em N-Triples?
Qual a principal característica da representação RDF em N-Triples?
Qual a principal vantagem do formato N3 em relação ao N-Triples para representação de dados RDF?
Qual a principal vantagem do formato N3 em relação ao N-Triples para representação de dados RDF?
O que permite o uso de URIs prefixados na representação N3?
O que permite o uso de URIs prefixados na representação N3?
Em RDF/XML, como os predicados são especificados?
Em RDF/XML, como os predicados são especificados?
Qual é uma das principais desvantagens do formato RDF/XML?
Qual é uma das principais desvantagens do formato RDF/XML?
No contexto dos standards da Web Semântica, o que é FOAF (Friend of a Friend)?
No contexto dos standards da Web Semântica, o que é FOAF (Friend of a Friend)?
Qual das seguintes opções descreve corretamente a finalidade da linguagem SPARQL?
Qual das seguintes opções descreve corretamente a finalidade da linguagem SPARQL?
Quais são as quatro formas principais de pesquisa que podem ser realizadas através de SPARQL?
Quais são as quatro formas principais de pesquisa que podem ser realizadas através de SPARQL?
Qual a função da cláusula WHERE
numa consulta SPARQL?
Qual a função da cláusula WHERE
numa consulta SPARQL?
Qual das seguintes opções descreve o propósito da consulta SPARQL do tipo ASK
?
Qual das seguintes opções descreve o propósito da consulta SPARQL do tipo ASK
?
Qual é o principal objetivo de uma consulta SPARQL do tipo CONSTRUCT
?
Qual é o principal objetivo de uma consulta SPARQL do tipo CONSTRUCT
?
Para que serve a diretiva PREFIX
numa consulta SPARQL?
Para que serve a diretiva PREFIX
numa consulta SPARQL?
Numa consulta SPARQL, qual a função da cláusula FILTER
?
Numa consulta SPARQL, qual a função da cláusula FILTER
?
O que é uma Triplestore (GraphDB)?
O que é uma Triplestore (GraphDB)?
Qual das seguintes opções descreve uma característica fundamental de uma GraphDB?
Qual das seguintes opções descreve uma característica fundamental de uma GraphDB?
Qual a principal diferença entre as edições 'Free', 'Standard Edition (SE)' e 'Enterprise Edition (EE)' do GraphDB?
Qual a principal diferença entre as edições 'Free', 'Standard Edition (SE)' e 'Enterprise Edition (EE)' do GraphDB?
Quais das seguintes tarefas podem ser realizadas através da Workbench Interface do GraphDB?
Quais das seguintes tarefas podem ser realizadas através da Workbench Interface do GraphDB?
Para que serve a biblioteca Python "s4api" no contexto da GraphDB?
Para que serve a biblioteca Python "s4api" no contexto da GraphDB?
Qual a finalidade da especificação SPARQL 1.1 Graph Store HTTP Protocol
do W3C?
Qual a finalidade da especificação SPARQL 1.1 Graph Store HTTP Protocol
do W3C?
Das listadas abaixo, qual é a forma mais comum de pesquisa em SPARQL, baseada em padrões de triplos?
Das listadas abaixo, qual é a forma mais comum de pesquisa em SPARQL, baseada em padrões de triplos?
Qual a funcionalidade principal do comando ORDER BY
numa query SPARQL?
Qual a funcionalidade principal do comando ORDER BY
numa query SPARQL?
No contexto de SPARQL, o que representa a cláusula OPTIONAL
?
No contexto de SPARQL, o que representa a cláusula OPTIONAL
?
Qual é o impacto da função regex
numa query SPARQL?
Qual é o impacto da função regex
numa query SPARQL?
Para que serve a declaração UNION
numa consulta SPARQL?
Para que serve a declaração UNION
numa consulta SPARQL?
Qual a função das queries SPARQL do tipo UPDATE
?
Qual a função das queries SPARQL do tipo UPDATE
?
Assumindo que se pretende inserir um novo triplo num grafo RDF usando SPARQL, qual comando seria usado?
Assumindo que se pretende inserir um novo triplo num grafo RDF usando SPARQL, qual comando seria usado?
Para remover dados específicos de um grafo RDF usando SPARQL, qual comando UPDATE é o mais apropriado?
Para remover dados específicos de um grafo RDF usando SPARQL, qual comando UPDATE é o mais apropriado?
Flashcards
O que são URIs?
O que são URIs?
Identificadores globais únicos que permitem identificar uma entidade com grau absoluto de certeza.
O que é RDF?
O que é RDF?
Norma formal para representar e partilhar dados semânticos.
O que é SPARQL?
O que é SPARQL?
Linguagem standard de pesquisa para dados semânticos.
O que é RDF (Resource Description Framework)?
O que é RDF (Resource Description Framework)?
Signup and view all the flashcards
Por que cada nó precisa de um identificador único?
Por que cada nó precisa de um identificador único?
Signup and view all the flashcards
Como o RDF vê o universo?
Como o RDF vê o universo?
Signup and view all the flashcards
O que é um URL (Uniform Resource Locator)?
O que é um URL (Uniform Resource Locator)?
Signup and view all the flashcards
O que é o RDF?
O que é o RDF?
Signup and view all the flashcards
Quais são os elementos de um triplo RDF?
Quais são os elementos de um triplo RDF?
Signup and view all the flashcards
Quais elementos RDF sempre são recursos?
Quais elementos RDF sempre são recursos?
Signup and view all the flashcards
O que é um URI Reference (URIref)?
O que é um URI Reference (URIref)?
Signup and view all the flashcards
O que são nós anónimos (ou vazios) em RDF?
O que são nós anónimos (ou vazios) em RDF?
Signup and view all the flashcards
O que são Valores Literais em RDF?
O que são Valores Literais em RDF?
Signup and view all the flashcards
O que é FOAF (Friend of a Friend)?
O que é FOAF (Friend of a Friend)?
Signup and view all the flashcards
O que são N-Triples?
O que são N-Triples?
Signup and view all the flashcards
Como URIs são expressos em N-Triples?
Como URIs são expressos em N-Triples?
Signup and view all the flashcards
Como literais são expressos em N-Triples?
Como literais são expressos em N-Triples?
Signup and view all the flashcards
O que é N3?
O que é N3?
Signup and view all the flashcards
Como URIs são abreviados em N3?
Como URIs são abreviados em N3?
Signup and view all the flashcards
O que é RDF/XML?
O que é RDF/XML?
Signup and view all the flashcards
O que é SPARQL?
O que é SPARQL?
Signup and view all the flashcards
Quais são as formas de pesquisa em SPARQL?
Quais são as formas de pesquisa em SPARQL?
Signup and view all the flashcards
Qual a forma mais comum de pesquisa SPARQL?
Qual a forma mais comum de pesquisa SPARQL?
Signup and view all the flashcards
O que é GraphDB?
O que é GraphDB?
Signup and view all the flashcards
Quais são as características do GraphDB?
Quais são as características do GraphDB?
Signup and view all the flashcards
O que GraphDB permite?
O que GraphDB permite?
Signup and view all the flashcards
Study Notes
- Este documento aborda a Representação do Conhecimento e os Standards da Web Semântica.
Questões Base na Web Semântica
- Quais predicados usar.
- Que tipos de dados são encontrados (números, textos).
- Quais formatos usar para representar as entidades.
- Se esses formatos serão reconhecidos por outros sistemas.
- A melhor forma para guardar e partilhar dados semânticos será na forma de triplos separados por vírgulas.
- As questões levantadas relacionam-se com a gestão e partilha de grandes conjuntos de dados semânticos, existentes e futuros.
- A adoção de standards partilhados traz uniformidade ao tratamento da informação na web semântica.
Standards Essenciais da Web Semântica
- URIs (Uniform Resource Identifiers) são identificadores globais únicos para identificar entidades com certeza absoluta.
- RDF (Resource Description Framework) é uma norma formal para representar e partilhar dados semânticos.
- SPARQL (SPARQL Protocol and RDF Query Language) é uma linguagem standard de pesquisa para dados semânticos.
URIs (Uniform Resource Identifiers)
- Cada nó (entidade) em um grafo necessita de um identificador único para ser referenciado consistentemente.
- Símbolos como "ridley_scott" foram usados como identificadores, mas não garantem identificação unívoca absoluta.
- O standard RDF conceptualiza tudo no universo como um recurso (material ou imaterial) para evitar ambiguidades.
- Um URI é atribuído a qualquer recurso sobre o qual seja possível falar.
- Um URI identifica univocamente um recurso, não importa qual.
URIs e URLs
- URLs (Uniform Resource Locators) permitem localizar um determinado recurso, especificando a sua localização e protocolo de acesso na web.
- URLs são um subconjunto dos URIs.
RDF (Resource Description Framework)
- Um modelo padrão para expressar dados semânticos, usando declarações na forma de triplos (sujeito – predicado – objeto).
- Sujeitos e objetos podem ser recursos; predicados são sempre recursos.
- O URI de um recurso em uma declaração RDF é chamado URI Reference (URIref).
Representação abreviada de URIs em RDF
- Exemplo da referência do predicado "type":
- URI total: http://www.w3.org/1999/02/22-rdf-syntax-ns#type
- URI base: rdf = http://www.w3.org/1999/02/22-rdf-syntax-ns#
- URI abreviada: rdf:type
Nós Anónimos (Vazios) em RDF
- Nem todos os sujeitos precisam ser recursos com URIs conhecidos.
- É possível fazer declarações sobre sujeitos com URIs desconhecidos utilizando nós anónimos ou vazios.
- Exemplo de grafo com nós anónimos, os nós Blank1 e Blank2 não precisam de URIs, mas Ids no formato "_:id".
- A maioria das bibliotecas RDF gera automaticamente um “id” interno que só é válido no grafo em questão.
- Exemplo de triplos:
(_:ax1, "weblog", "http://blog.kiwitobes.com")
(_:ax1, "surName", "Segaran")
(_:ax1, "givenName", "Toby")
(_:ax1, "knows", _:zb7)
(_:zb7, "surName", "Taylor")
(_:zb7, "givenName", "Jamie")
(_:zb7, "email", "[email protected]")
- Pode haver interesse na utilização de nós anónimos
Valores Literais em RDF
- Objetos podem ser valores literais
- Opcionalmente, pode-se associar uma língua (português, inglês) e/ou um tipo (integer, boolean, string etc.) ao valor.
- Para tipos, usam-se os tipos especificados pelo XML Schema (ex: xsd:integer).
- Para a língua, usam-se os códigos ISO 639 (ex: pt, en).
Formatos de Representação RDF
- Existem várias bibliotecas open source para a representação de RDF.
- É importante conhecer os formatos mais utilizados:
- N-Triples: o mais simples.
- N3: uma compactação da N-Triples.
- RDF/XML: o mais utilizado inicialmente.
- RDFa: permite embutir RDF em páginas web.
- Para estudar os formatos de representação, usam-se um grafo de amigos como cenário de aplicação.
- O grafo de amigos contém uma modelagem da rede social de Toby, com informações que ajudam a identificar a entidade de forma única;
- Essa informação, chamada informação de contexto, auxilia a identificação.
- Isso levará a um URI para o indivíduo, podendo ser usado a partir daí.
FOAF (Friend of a Friend)
- FOAF consiste num conjunto de vocábulos, bem conhecidos, que podem ser usados como predicados num grafo de conhecimento.
- Estes vocábulos permitem descrever pessoas, as suas atividades, assim como a sua relação com outras pessoas ou objetos, sendo muito usados no domínio das redes sociais
- Exemplos: foaf:name; foaf:nick; foaf:knows; foaf:interest; etc.
RDF – Representação em N-Triples
- É muito simples e aproxima-se muito do formato usado nos ficheiros CSV.
- Este formato é mais utilizado em situações de teste e depuração de conjuntos de dados em que há necessidade de intervenção manual.
- Cada linha neste formato, representa uma única declaração (triplo), contendo sempre sujeito, predicado e objeto
- É finalizada por ponto final ;
RDF – N-Triples
- Sujeitos, predicados e objetos são sempre expressos com URIs absolutos entre parêntesis angulares “< >”
- A exceção fica para os nós anónimos, que aparecem na forma _:name, sendo name uma palavra alfanumérica começada por uma letra.
- Objetos literais aparecem como strings entre aspas – ex: “Manuel Maria”
- Opcionalmente, pode ter associado:
- Uma língua – ex: “Manuel Maria”@pt
- Ou um tipo – ex: “27”^^xsd:integer
Exemplo N-Triples
RDF - N3
- A representação N-Triples é muito simples mas também muito custosa, pois a muita repetição leva a maior tempo de transmissão e de processamento.
- A representação N3 consegue condensar muita da repetição imposta pela N-Triples usando:
- Um URI prefixo para encurtar o URI de cada nó.
- Um reaproveitamento dos nós que participam em múltiplos triplos.
RDF - N3 - URIs prefixo
- Usando no início: @prefix semp: .
- Pode-se substituir: http://semprog.com/people/colin
- Por: semp:colin
RDF - N3 - Reaproveitamento de Nós
- Sujeito:
- Podem ser representados adicionando duplos (predicado, objeto) separados por ponto e vírgula (;) Exemplo:
semp:colin foaf:knows <http://kiwitobes.com/toby.rdf#ts>; foaf:mbox "[email protected]".
- Podem ser representados adicionando duplos (predicado, objeto) separados por ponto e vírgula (;) Exemplo:
- Predicado:
- Podem ser representados adicionando apenas objetos, separados por vírgula (,); Exemplo:
semp:colin rdf:type foaf:person, dc:author.
- Podem ser representados adicionando apenas objetos, separados por vírgula (,); Exemplo:
RDF - N3 Abreviadas
- Entidades anónimas como Objetos:
- Na qual tem um exemplo.
foaf:knows [ <http://www.w3.org/2006/vcard/ns#street-address> "1005 Gravenstein Hwy North" ; <http://www.w3.org/2006/vcard/ns#locality> "Sebastopol, California" ].
- Alguns predicados mais usados podem ser abreviados por exemplos como:
- a para
- = para
- => para
- <= para = http://www.w3.org/2000/10/swap/log#implies > (inverso)
A Linguagem SPARQL
- SPARQL é a linguagem padrão pelo W3C para pesquisa de RDF (Simple Protocol and RDF Query Language);
- Ele consiste num conjunto de especificações, entre as quais:
- SPARQL 1.1 Query Language ;
- SPARQL Query Results XML Format (Second Edition);
- SPARQL 1.1 Graph Store HTTP Protocol
Estrutura de uma pesquisa SELECT
- Diretiva “base” (só pode haver uma), lista de prefixos (podem existir múltiplos)
- Seleção das variáveis resultado, grafo a pesquisar (opcional).
- Padrão de pesquisa e modificadores.
As 4 Formas da Linguagem SPARQL
- SELECT;
- ASK;
- DESCRIBE;
- CONSTRUCT.
Funções da Linguagem SPARQL
- A forma mais usada é a SELECT e todas elas são baseadas em padrões de triplos
- Partindo da união de resultados de 2 grupos de padrões:
- Filmes com data superior a 2002;
Pesquisa com múltiplos grupos padrão
- Nomes de realizadores e atores na qual faz uma conjunção entre os resultados dos grupos.
- Nos nomes de realizadores e atores é feita uma união entre os resultados dos grupos.
SPARQL - CONSTRUCT
- Esta forma de pesquisa devolve como resultado a criação de novos grafos, em vez do resultado de uma coleção de variáveis.
SPARQL - ASK
- Esta forma de pesquisa verifica a validade de uma determinada declaração.
SPARQL - DESCRIBE
- Esta forma de pesquisa também devolve novos grafos como resultado.
SPARQL - SINTAXE
- Pedir uma descrição de todos os atores que participaram no filme "Blade Runner".
SPARQL 1.1 Update
- A função Insert e a Delete para inserção e remoção de dados.
A Triplestore GraphDB
- É uma base de dados orientada a grafos (triplestore)
- Suporta um conjunto significativo de standards e tecnologias que são a base da web semântica.
- Tem como caracteristicas a Elevada eficiência, robusta e escalável.
- Consegue lidar com carregamentos, pesquisas e inferências, em tempo real, de modo massivo.
- Implementa e reconhece standards como: RDF, RDFS, OWL, SPARQL;
- Permite efetuar pesquisas a repositórios federados com uma boa integração com ferramentas exteriores de pesquisa como o Lucene, SOLR e Elasticsearch.
- É apresentado nas seguintes edições;
- Free – comercial; baseada em ficheiros; escalável até dezenas de biliões de triplos RDF; executa num único servidor; apresenta a limitação de 2 queries concorrentes.
- Standard Edition (SE) – igual à anterior, mas sem limitação de queries concorrentes.
- Enterprise Edition (EE) – baseada num cluster de alta disponibilidade, com uma implementação Master-Slave, para resiliência e alta performance em queries paralelas.
Funções do GraphDB
- Workbench Interface
- Gestão da base de dados a partir de uma interface gráfica.
- Permite Gerir repositórios, Carregar e exportar dados
- Ver e editar recursos RDF e Executar queries SPARQL.
- Fazer monitorização de queries, recursos e utilizadores;
- Oferece uma API REST para acesso programático, com acesso por defeito.
GraphDB – s4api
- Para o desenvolvimento mais fácil de uma aplicação que usa a API REST da GraphDB, é possível usar a biblioteca python "s4api"
- Esta biblioteca implementa as operações básicas de acesso, via REST, não sendo necessário ter em conta os detalhes técnicos desse acesso.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.