the triql.p browser filtering information using context-, content- and rating-based trust policies...

27
The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer , Freie Universität Berlin, Germany Richard Cyganiak, Freie Universität Berlin, Germany Tobias Gauss, Freie Universität Berlin, Germany Oliver Maresch, Technische Universität Berlin, Germany Semantic Web and Policy Workshop @ ISWC 2005 Galway, Ireland, 7 November 2005

Upload: maximillian-hoover

Post on 20-Jan-2016

219 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

The TriQL.P BrowserFiltering Information using Context-,

Content- and Rating-Based Trust Policies

Christian Bizer, Freie Universität Berlin, GermanyRichard Cyganiak, Freie Universität Berlin, Germany

Tobias Gauss, Freie Universität Berlin, GermanyOliver Maresch, Technische Universität Berlin, Germany

Semantic Web and Policy Workshop @ ISWC 2005 Galway, Ireland, 7 November 2005

Page 2: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

Agenda

1. Trust policies in the context of the Semantic Web

2. Demonstration of the TriQL.P browser

3. Explanation of the technologies used by the browser

Page 3: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

Introduction

The Semantic Web is envisioned as an open, dynamic network of autonomous information providers.

They have different views of the world, different levels of knowledge, and different intentions.

Statements published on the Semantic Web have to be seen as claims rather than as facts.

Thus before Semantic Web information should be used its trustworthiness has to be evaluated according to task-specific criteria.

Page 4: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

How do we decide what to trust in the offline world?

In everyday life, we use a wide range of trust policies.

These policies depend on the specific situation, our subjective preferences, our past experiences and the trust relevant information available. We might trust Andy on restaurants but not on computers,

trust professors on their research field,

believe foreign news only when it is reported by several independent sources and

buy only from sellers on eBay who have more than 100 positive ratings.

Page 5: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

Trust Assessment Methods

Every trust policy employs one or more trust assessment methods.

These methods can be classified into three categories: Rating-based assessment methods

Context-based assessment methods

Content-based assessment methods

Page 6: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

Rating-Based Assessment Methods

most proposals for the Semantic Web fall in this category.

have a general problem: they require explicit and topic-specific ratings.

high effort for information consumers.

Central question: Are the users willing to rate?

Page 7: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

Context-Based Assessment Methods

use background information about the information provider e.g. his role in the application domain or his membership in a

specific group

example policies: “Trust professors about their research field.” or "Distrust everything a vendor says about his competitor.“

use information created in the information gathering process publishing and retrieval date and the retrieval URL

information whether a signature is verifiable or not

example policy: “Trust all information which has been signed and is not older than a month.”

Page 8: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

Content-Based Assessment Methods

use information content itself, together related information content published by other information providers.

Example policies: “Believe information which has been stated by at least 2

independent sources.”

“Distrust product prices that are more than 50% below the average price.”

Page 9: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

The TriQL.P Semantic Web Browser

Browse General purpose RDF browser for exploring RDF datasets containing

information from multiple sources.

Collect information together with provenance meta-information from the Web.

Filter Filter information using a wide range of user-definable reputation-, context-

and content-based trust policies.

Explain In order to facilitate the user’s understanding of the filtering decisions, the

browser creates explanations why information fulfils a selected policy.

The TriQL.P browser builds on Piggy Bank.

Page 10: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

Demonstration ….

Page 11: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

How does it work?

Page 12: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

The Named Graphs Data Model

A Named Graph is an entity which consists of A name, which is an URIref

A graph, which is an RDF Graph

A Named Graph is a resource, which can be described by RDF statements within the graph or in another graph.

Pragmatic alternative to reification!

Formal definition: Jeremy Carroll, Christian Bizer, Patrick Hayes, Patrick Stickler: Named Graphs. Journal of Web Semantics, Vol. 3, Issue 4, 2005

Page 13: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

Named Graphs in W3C SPARQL

Set of Named Graphs RDF Dataset

DefaultGraph

Page 14: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

NG4J – Named Graphs API for Jena

Extension to the Jena semantic web toolkit

APIs for manipulating sets of Named Graphs

Memory and database backed storage

TriQL and SPARQL query languages

Serialization using TriX, TriG and collections of RDF/XML files

SWP API for signing sets of graphs

Available under BSD license

Page 15: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

TriX

plays well with generic XML tools like XSLT or XQuery

<TriX xmlns="http://www.w3.org/2004/03/trix/trix-1/"> <graph> <uri>http://www.bizer.de/InformationAboutRichard</uri> <triple> <uri>http://richard.cyganiak.de/foaf.rdf#RichardCyganiak</uri> <uri>http://xmlns.com/foaf/0.1/mbox</uri> <uri>mailto:[email protected]</uri> </triple> </graph> <graph> <uri>http://www.bizer.de/ProvenanceInformation</uri> <triple> <uri>http://www.bizer.de/InformationAboutRichard</uri> <uri>http://purl.org/dc/elements/1.1/author</uri> <plainLiteral>Chris Bizer</plainLiteral> </triple> </graph></TriX>

Page 16: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

TriG

Turtle subset of N3 extended with graph naming.

@prefix dc: <http://purl.org/dc/elements/1.1/> . @prefix ex: <http://www.example.org/vocabulary/> . @prefix : <http://www.example.org/exampleDocument/> .

:G1 { _:Monica ex:name "Monica Murphy" . _:Monica ex:email <mailto:[email protected]>. :G1 ex:disallowedUsage ex:Marketing }

:G2 { :G1 ex:author :Chris . :G1 ex:date "2003-09-03"^^xsd:date }

Page 17: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

The Semantic Web Publishing Vocabulary

Named Graphs provide the hooks on which we pin provenance information

propositional attitudes

digital signatures

The Semantic Web Publishing Vocabulary (SWP) provides the necessary terms http://www.w3.org/2004/03/trix/swp-2/

Page 18: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

The Semantic Web Publishing Vocabulary

Page 19: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

Graph containing provenance information about itself

<urn:uuid:8c845860-dce7-11d9-b9c0-00112ff60c7f>

{ ex:PeterSmith a foaf:Person ;

foaf:name "Peter Smith" ;

foaf:mbox <mailto:[email protected]> .

<urn:uuid:8c845860-dce7-11d9-b9c0-00112ff60c7f>

swp:assertedBy

<urn:uuid:8c845860-dce7-11d9-b9c0-00112ff60c7f> ;

swp:authority <http://www.bizer.de> ;

dc:date "2005-06-14T17:18:10+02:00" ;

swp:savedFrom <http://www.bizer.de/myFriends.htm> .

}

Page 20: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

TPL - Trust Policy Language

A Trust Policies consists of a Policy Name

Policy Description

Query Template

Explanation Templates

A Query Template consists of Graph patterns

- which are matched against the set of Named Graphs in the browser’s repository.

Constraints

- which further restrict the resulting variable bindings.

Page 21: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

Example Policy

Trust only information that has been asserted by at least two different sources.

:Policy6 rdf:type tpl:TrustPolicy ; tpl:policyName "Two different sources" ; tpl:policyDescription "Trust only information that has been asserted by at least two different sources."; tpl:textExplanation "it was stated by at least two different sources. The sources are:" ; tpl:graphPattern [ tpl:pattern "(?GRAPH swp:assertedBy ?warrant . ?warrant swp:authority ?authority)"; tpl:textExplanation "@@?authority@@" ; ] ; tpl:constraint "COUNT(?authority) >= 2" .

Page 22: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

Applying the Policy

:Policy6 rdf:type tpl:TrustPolicy ; tpl:policyName "Two different sources" ; tpl:policyDescription "Trust only information that has been asserted by at least two different sources."; tpl:textExplanation "it was stated by at least two different sources. The sources are:" ; tpl:graphPattern [ tpl:pattern "(?GRAPH swp:assertedBy ?warrant . ?warrant swp:authority ?authority)"; tpl:textExplanation "@@?authority@@" ; ] ; tpl:constraint "COUNT(?authority) >= 2" .

Trust Policy

SELECT ?GRAPH, ?PRED, ?OBJ, ?warrant, ?authority

WHERE ?GRAPH ( ex:Chris, ?PRED, ?OBJ )

             (?GRAPH swp:assertedBy ?warrant .

              ?warrant swp:authority ? authority )

AND COUNT(?authority) >= 2

TriQL.P Query

ex:Chris, ANY, ANY

Query Triple

Page 23: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

Justification Bindings

The TriQL.P query engine caches the variable bindings resulting from policy patterns.

They may be used later to generate explanations.

ex:Chris dc:name “Chris”

Triple Justification Bindings

?GRAPH = <urn:uuid:8c845860…>?warrant = <urn:uuid:8c845860…>?authority = <http://www.bizer.de>

?GRAPH = <urn:uuid:4748a58b0…>?warrant = <urn:uuid:4748a58b0…>?authority = <http://www.reynolds.org>

Page 24: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

Generating Explanations

it was stated by at least two different sources. The

sources are:•Monica Reynolds•Chris Bizer

Explanation

ex:Chris dc:name “Chris”

Triple Justification Bindings

?GRAPH = <urn:uuid:8c845860…>?warrant = <urn:uuid:8c845860…>?authority = <http://www.bizer.de>

?GRAPH = <urn:uuid:4748a58b0…>?warrant = <urn:uuid:4748a58b0…>?authority = <http://www.reynolds.org>

Page 25: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

The METRIC() Interface

The browser provides and open interface for integrating application domain specific assessment metrics.

Metrics currently implemented:

- eBay, TidalTrust, Appleseed- PageRank (foaf:knows, rdf:seeAlso)

Metrics generate custom explanationsabout their calculation process.

SELECT ?GRAPH, ?PRED, ?OBJ, ?warrant, ?authority

WHERE ?GRAPH ( ex:Chris, ?PRED, ?OBJ )

             (?GRAPH swp:assertedBy ?warrant .

              ?warrant swp:authority ?authority )

AND METRIC(tpl:TidalTrustMetric, ?USER, ?authority, 0.5)

TriQL.P Query using the TidalTrust Metric

Page 26: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

Summary

Semantic Web applications need flexible trust architectures supporting subjective, task-specific trust policies.

Context- and content-based assessment methods are applicable in situations where ratings are not available.

The Named Graphs data model proved suitable for representing information together with trust-related meta-information.

Expressing policies as query templates is an alternative to expressing them as rules.

Next step: Redesign TPL syntax to be closer to SPARQL.

Page 27: The TriQL.P Browser Filtering Information using Context-, Content- and Rating-Based Trust Policies Christian Bizer, Freie Universität Berlin, Germany Richard

Thanks :-)

TriQL.P Browser http://www.wiwiss.fu-berlin.de/suhl/bizer/TriQLP/browser

Named Graphs Paper http://www.websemanticsjournal.org/ps/pub/2005-23

NG4J - Named Graphs API for Jena http://www.wiwiss.fu-berlin.de/suhl/bizer/ng4j/