SPARQL: Un Lenguaje de Consulta para la Web

Size: px
Start display at page:

Download "SPARQL: Un Lenguaje de Consulta para la Web"

Transcription

1 SPARQL: Un Lenguaje de Consulta para la Web Semántica Marcelo Arenas Pontificia Universidad Católica de Chile y Centro de Investigación de la Web M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 1 / 54

2 Outline RDF model Querying RDF data Conjunctive queries Entailment of RDF graphs Graphs with RDFS vocabulary Inference rules Querying RDFS data: Closure, Core. Querying RDF Data in practice: SPARQL Formal semantics for SPARQL Complexity of the SPARQL evaluation problem A procedural semantics: Well designed patterns M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 2 / 54

3 Semantic Web The Semantic Web is an extension of the current web in which information is given well-defined meaning, better enabling computers and people to work in cooperation. Specific Goals: [Tim Berners-Lee et al ] Build a description language with standard semantics. Make semantics machine-processable and understandable. Incorporate logical infrastructure to reason about resources. W3C Proposal: Resource Description Framework (RDF). M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 3 / 54

4 RDF in a nutshell RDF is the W3C proposal framework for representing information in the Web. Abstract syntax based on directed labeled graph. Schema definition language (RDFS): Define new vocabulary (typing, inheritance of classes and properties). Extensible URI-based vocabulary. Support use of XML schema datatypes. Formal semantics. M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 4 / 54

5 RDF formal model U Subject Predicate Object U = set of Uris B = set of Blank nodes U B U B L L = set of Literals M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 5 / 54

6 RDF formal model U Subject Predicate Object U = set of Uris B = set of Blank nodes U B U B L L = set of Literals (s,p,o) (U B) U (U B L) is called an RDF triple M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 5 / 54

7 RDF formal model U Subject Predicate Object U = set of Uris B = set of Blank nodes U B U B L L = set of Literals (s,p,o) (U B) U (U B L) is called an RDF triple A set of RDF triples is called an RDF graph M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 5 / 54

8 RDFS: An example person rdf:dom works in rdf:range company rdf:sc sportman rdf:sp rdf:sc rdf:sc soccer player rdf:dom plays in rdf:range soccer team rdf:type rdf:type Ronaldinho plays in Barcelona lives in Spain M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 6 / 54

9 RDFS: An example person rdf:dom works in rdf:range company rdf:sc sportman rdf:sp rdf:sc rdf:sc soccer player rdf:dom plays in rdf:range soccer team rdf:type rdf:type Ronaldinho plays in Barcelona lives in Spain M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 6 / 54

10 RDF model Some difficulties: Existential variables as datavalues Built-in vocabulary with fixed semantics (RDFS) Graph model where nodes may also be edge labels RDF data processing can take advantage of database techniques: Query processing Storing Indexing M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 7 / 54

11 RDF model Some difficulties: Existential variables as datavalues Built-in vocabulary with fixed semantics (RDFS) Graph model where nodes may also be edge labels RDF data processing can take advantage of database techniques: Query processing Storing Indexing M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 7 / 54

12 Querying RDF data Conjunctive query: Q(X) = Y t 1 t 2 t k Some examples: M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 8 / 54

13 Querying RDF data Conjunctive query: Q(X) = Y t 1 t 2 t k Some examples: (Ronaldinho, plays in, Barcelona) M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 8 / 54

14 Querying RDF data Conjunctive query: Q(X) = Y t 1 t 2 t k Some examples: (Ronaldinho, plays in, Barcelona) (Ronaldinho, plays in, X) M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 8 / 54

15 Querying RDF data Conjunctive query: Q(X) = Y t 1 t 2 t k Some examples: Y (Ronaldinho, plays in, Barcelona) (Ronaldinho, plays in, X) (X, plays in, Y ) (X, lives in,spain) M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 8 / 54

16 Semantics of conjunctive queries Given an RDF graph G, a conjunctive query Q(X) and a tuple ā of values in U B L: Notation: G = Q(ā) Is ā an answer to Q(X) in G? Notice that Q(X) and ā may include blank nodes. Blank nodes play a similar role as existential variables. (Ronaldinho, plays in, B) and X (Ronaldinho, plays in, X) are equivalent. M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 9 / 54

17 Conjunctive queries and entailment of RDF graphs Q(ā) can be transformed into an RDF graph G. Notion to define: G = G Entailment of RDF graphs: M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 10 / 54

18 Conjunctive queries and entailment of RDF graphs Q(ā) can be transformed into an RDF graph G. Notion to define: G = G Entailment of RDF graphs: Can be defined in terms of classical notions such model, interpretation, etc M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 10 / 54

19 Conjunctive queries and entailment of RDF graphs Q(ā) can be transformed into an RDF graph G. Notion to define: G = G Entailment of RDF graphs: Can be defined in terms of classical notions such model, interpretation, etc As for the case of first order logic M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 10 / 54

20 Conjunctive queries and entailment of RDF graphs Q(ā) can be transformed into an RDF graph G. Notion to define: G = G Entailment of RDF graphs: Can be defined in terms of classical notions such model, interpretation, etc As for the case of first order logic Has a graph characterization via homomorphisms. M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 10 / 54

21 Homomorphism A function h : U B L U B L is a homomorphism h from G 1 to G 2 if: h(c) = c for every c U L; for every (a,b,c) G 1, (h(a),h(b),h(c)) G 2 Notation: G 1 G 2 Example: h = {B b} a p B a p p b b M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 11 / 54

22 Entailment Theorem (CM77) G 1 = G 2 if and only if there is a homomorphism G 2 G 1. M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 12 / 54

23 Entailment Theorem (CM77) G 1 = G 2 if and only if there is a homomorphism G 2 G 1. a a p B p = p b b M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 12 / 54

24 Entailment Theorem (CM77) G 1 = G 2 if and only if there is a homomorphism G 2 G 1. a a p B p = p b b p M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 12 / 54

25 Entailment Theorem (CM77) G 1 = G 2 if and only if there is a homomorphism G 2 G 1. a a p B p = p b b p Complexity Entailment for RDF is NP-complete M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 12 / 54

26 Graphs with RDFS vocabulary Previous characterization of entailment is not enough to deal with RDFS vocabulary: M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 13 / 54

27 Graphs with RDFS vocabulary Previous characterization of entailment is not enough to deal with RDFS vocabulary: (Ronaldinho, rdf : type, person) person rdf:dom works in rdf:range company rdf:sc sportman rdf:sp rdf:sc rdf:sc soccer player rdf:dom plays in rdf:range soccer team rdf:type rdf:type Ronaldinho plays in Barcelona lives in Spain M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 13 / 54

28 Graphs with RDFS vocabulary Built-in predicates have pre-defined semantics: M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 14 / 54

29 Graphs with RDFS vocabulary Built-in predicates have pre-defined semantics: rdf:sc: transitive M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 14 / 54

30 Graphs with RDFS vocabulary Built-in predicates have pre-defined semantics: rdf:sc: transitive rdf:sp: transitive M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 14 / 54

31 Graphs with RDFS vocabulary Built-in predicates have pre-defined semantics: rdf:sc: transitive rdf:sp: transitive More complicated interactions: (p,rdf:dom, c) (a, p, b) (a, rdf:type, c) M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 14 / 54

32 Graphs with RDFS vocabulary Built-in predicates have pre-defined semantics: rdf:sc: transitive rdf:sp: transitive More complicated interactions: (p,rdf:dom, c) (a, p, b) (a, rdf:type, c) RDFS-entailment can be characterized by a set of rules An Existential rule Subproperty rules Subclass rules Typing rules Implicit typing M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 14 / 54

33 Graphs with RDFS vocabulary: Inference rules Inference system in [MPG07] has 14 rules: Existential rule : Subproperty rules : Subclass rules : Typing rules : Implicit typing : M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 15 / 54

34 Graphs with RDFS vocabulary: Inference rules Inference system in [MPG07] has 14 rules: Existential rule : G 1 G 2 if G 2 G 1 Subproperty rules : Subclass rules : Typing rules : Implicit typing : M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 15 / 54

35 Graphs with RDFS vocabulary: Inference rules Inference system in [MPG07] has 14 rules: Existential rule : Subproperty rules : G 1 G 2 if G 2 G 1 (p,rdf:sp, q) (a, p, b) (a, q, b) Subclass rules : Typing rules : Implicit typing : M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 15 / 54

36 Graphs with RDFS vocabulary: Inference rules Inference system in [MPG07] has 14 rules: Existential rule : Subproperty rules : Subclass rules : G 1 G 2 if G 2 G 1 (p,rdf:sp, q) (a, p, b) (a, q, b) (a, rdf:sc, b) (b, rdf:sc, c) (a, rdf:sc, c) Typing rules : Implicit typing : M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 15 / 54

37 Graphs with RDFS vocabulary: Inference rules Inference system in [MPG07] has 14 rules: Existential rule : Subproperty rules : Subclass rules : Typing rules : G 1 G 2 if G 2 G 1 (p,rdf:sp, q) (a, p, b) (a, q, b) (a, rdf:sc, b) (b, rdf:sc, c) (a, rdf:sc, c) (p,rdf:dom, c) (a, p, b) (a, rdf:type, c) Implicit typing : M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 15 / 54

38 Graphs with RDFS vocabulary: Inference rules Inference system in [MPG07] has 14 rules: Existential rule : Subproperty rules : Subclass rules : Typing rules : Implicit typing : G 1 G 2 if G 2 G 1 (p,rdf:sp, q) (a, p, b) (a, q, b) (a, rdf:sc, b) (b, rdf:sc, c) (a, rdf:sc, c) (p,rdf:dom, c) (a, p, b) (a, rdf:type, c) (q, rdf:dom, a) (p, rdf:sp, q) (b, p, c) (b, rdf:type, a) M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 15 / 54

39 Graphs with RDFS vocabulary: Inference rules Inference system in [MPG07] has 14 rules: Existential rule : Subproperty rules : (p,rdf:sp, q) (a, p, b) (a, q, b) Subclass rules : Typing rules : Implicit typing : (p,rdf:dom, c) (a, p, b) (a, rdf:type, c) (q, rdf:dom, a) (p, rdf:sp, q) (b, p, c) (b, rdf:type, a) M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 15 / 54

40 Graphs with RDFS vocabulary: Inference rules Inference system in [MPG07] has 14 rules: Existential rule : Subproperty rules : (p,rdf:sp, q) (a, p, b) (a, q, b) Subclass rules : Typing rules : Implicit typing : (p,rdf:dom, c) (a, p, b) (a, rdf:type, c) (B, rdf:dom, a) (p, rdf:sp, B) (b, p, c) (b, rdf:type, a) M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 15 / 54

41 RDFS Entailment Theorem (H03,GHM04,MPG07) G 1 = G 2 iff there is a proof of G 2 from G 1 using the system of 14 inference rules. Complexity RDFS-entailment is NP-complete. Proof idea Membership in NP: If G 1 = G 2, then there exists a polynomial-size proof of this fact. M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 16 / 54

42 Querying RDFS data System of inference rules can be used as a mechanism for evaluating queries. It is difficult to implement. Is there any practical mechanism for evaluating queries? M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 17 / 54

43 Querying RDFS data System of inference rules can be used as a mechanism for evaluating queries. It is difficult to implement. Is there any practical mechanism for evaluating queries? Making explicit the implicit information. M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 17 / 54

44 Closure of an RDF Graph Notation: ground(g) : Graph obtained by replacing every blank B in G by a constant c B. ground 1 (G) : Graph obtained by replacing every constant c B in G by B. Closure of an RDF graph G (denoted by closure(g)): M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 18 / 54

45 Closure of an RDF Graph Notation: ground(g) : Graph obtained by replacing every blank B in G by a constant c B. ground 1 (G) : Graph obtained by replacing every constant c B in G by B. Closure of an RDF graph G (denoted by closure(g)): G {t (U B) U (U B L) there exists a ground tuple t such that ground(g) = t and t = ground 1 (t )} M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 18 / 54

46 Closure of an RDF Graph: Example c c rdf : sc rdf : sc b b rdf : sc rdf : sc rdf : sc a a M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 19 / 54

47 Closure of an RDF Graph: Example c c rdf : sc rdf : sc b b rdf : sc rdf : sc rdf : sc a a M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 19 / 54

48 Querying RDFS data: Using the closure of a graph Proposition (H03,GHM04,MPG07) G 1 = G 2 iff G 2 closure(g 1 ) Complexity The closure of G can be computed in time O( G 4 log G ). M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 20 / 54

49 Querying RDFS data: Using the closure of a graph Proposition (H03,GHM04,MPG07) G 1 = G 2 iff G 2 closure(g 1 ) Complexity The closure of G can be computed in time O( G 4 log G ). Can the closure be used in practice? M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 20 / 54

50 Querying RDFS data: Using the closure of a graph Proposition (H03,GHM04,MPG07) G 1 = G 2 iff G 2 closure(g 1 ) Complexity The closure of G can be computed in time O( G 4 log G ). Can the closure be used in practice? Can we use an alternative materialization? M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 20 / 54

51 Querying RDFS data: Using the closure of a graph Proposition (H03,GHM04,MPG07) G 1 = G 2 iff G 2 closure(g 1 ) Complexity The closure of G can be computed in time O( G 4 log G ). Can the closure be used in practice? Can we use an alternative materialization? Can we materialize a small part of the closure? M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 20 / 54

52 Core of an RDF Graph An RDF Graph G is a core if there is no homomorphism from G to a proper subgraph of it. Theorem (HN92,FKP03,GHM04) Each RDF graph G has a unique core (denoted by core(g)). Deciding if G is a core is conp-complete. Deciding if G = core(g ) is DP-complete. M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 21 / 54

53 Core and RDFS For RDF graphs with RDFS vocabulary, the core of G may contain redundant information: d d rdf : sc rdf : sc rdf : sc c c rdf : sc rdf : sc B rdf : sc b b rdf : sc rdf : sc rdf : sc a a M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 22 / 54

54 Core and RDFS For RDF graphs with RDFS vocabulary, the core of G may contain redundant information: d d rdf : sc rdf : sc rdf : sc c c rdf : sc rdf : sc B rdf : sc b b rdf : sc rdf : sc rdf : sc a a M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 22 / 54

55 Core and RDFS For RDF graphs with RDFS vocabulary, the core of G may contain redundant information: d d rdf : sc rdf : sc rdf : sc c c rdf : sc rdf : sc B rdf : sc b b rdf : sc rdf : sc rdf : sc a a M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 22 / 54

56 A normal form for RDF graphs To reduce the size of the materialization, we can combine both core and closure. M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 23 / 54

57 A normal form for RDF graphs To reduce the size of the materialization, we can combine both core and closure. nf(g) = core(closure(g)) M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 23 / 54

58 A normal form for RDF graphs To reduce the size of the materialization, we can combine both core and closure. nf(g) = core(closure(g)) Theorem (GHM04) G 1 is equivalent to G 2 iff nf(g 1 ) = nf(g 2 ). G 1 = G 2 iff G 2 nf(g 1 ) M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 23 / 54

59 A normal form for RDF graphs To reduce the size of the materialization, we can combine both core and closure. nf(g) = core(closure(g)) Theorem (GHM04) G 1 is equivalent to G 2 iff nf(g 1 ) = nf(g 2 ). G 1 = G 2 iff G 2 nf(g 1 ) Complexity The problem of deciding if G 1 = nf(g 2 ) is DP-complete. M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 23 / 54

60 Querying RDF Data in practice SPARQL is the W3C candidate recommendation query language for RDF. SPARQL is a graph-matching query language. A SPARQL query consists of three parts: Pattern matching: optional, union, nesting, filtering. Solution modifiers: projection, distinct, order, limit, offset. Output part: construction of new triples,.... M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 24 / 54

61 A simple RDF query language SELECT?Name? WHERE {?X :name?name?x : ? } M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 25 / 54

62 A simple RDF query language SELECT?Name? WHERE {?X :name?name?x : ? } M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 25 / 54

63 A simple RDF query language SELECT?Name? WHERE {?X :name?name?x : ? } M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 25 / 54

64 A simple RDF query language SELECT?Name? WHERE {?X :name?name?x : ? } M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 25 / 54

65 A simple RDF query language SELECT?Name? WHERE {?X :name?name?x : ? } In general, in a query we have: H Head: processing of some variables. M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 25 / 54

66 A simple RDF query language SELECT?Name? WHERE {?X :name?name?x : ? } In general, in a query we have: H P Head: processing of some variables. Body: pattern matching expression. M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 25 / 54

67 A simple RDF query language SELECT?Name? WHERE {?X :name?name?x : ? } In general, in a query we have: H P Head: processing of some variables. Body: pattern matching expression. We focus on P. M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 25 / 54

68 But things can become more complex... Interesting features of pattern matching on graphs Grouping Optional parts Nesting Union of patterns Filtering... { P1 P2 } M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 26 / 54

69 But things can become more complex... Interesting features of pattern matching on graphs Grouping Optional parts Nesting Union of patterns Filtering... { { P1 P2 } } { P3 P4 } M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 26 / 54

70 But things can become more complex... Interesting features of pattern matching on graphs Grouping Optional parts Nesting Union of patterns Filtering... { { P1 P2 OPTIONAL { P5 } } } { P3 P4 OPTIONAL { P7 } } M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 26 / 54

71 But things can become more complex... Interesting features of pattern matching on graphs Grouping Optional parts Nesting Union of patterns Filtering... { { P1 P2 OPTIONAL { P5 } } } { P3 P4 OPTIONAL { P7 OPTIONAL { P8 } } } M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 26 / 54

72 But things can become more complex... Interesting features of pattern matching on graphs Grouping Optional parts Nesting Union of patterns Filtering... { { P1 P2 OPTIONAL { P5 } } { P3 P4 OPTIONAL { P7 OPTIONAL { P8 } } } } UNION { P9 } M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 26 / 54

73 But things can become more complex... Interesting features of pattern matching on graphs Grouping Optional parts Nesting Union of patterns Filtering... { { P1 P2 OPTIONAL { P5 } } { P3 P4 OPTIONAL { P7 OPTIONAL { P8 } } } } UNION { P9 FILTER ( R ) } M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 26 / 54

74 But things can become more complex... Interesting features of pattern matching on graphs Grouping Optional parts Nesting Union of patterns Filtering... { { P1 P2 OPTIONAL { P5 } } { P3 P4 OPTIONAL { P7 OPTIONAL { P8 } } } } UNION { P9 FILTER ( R ) } M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 26 / 54

75 A formal semantics for SPARQL is needed. A formal approach would be beneficial for: Clarifying corner cases Helping in the implementation process Providing sound foundations M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 27 / 54

76 A formal semantics for SPARQL is needed. A formal approach would be beneficial for: Clarifying corner cases Helping in the implementation process Providing sound foundations Our primary interest M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 27 / 54

77 A formal semantics for SPARQL is needed. A formal approach would be beneficial for: Clarifying corner cases Helping in the implementation process Providing sound foundations Our primary interest In our work: A formal compositional semantics (for simple RDF) Complexity bounds Optimization procedures M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 27 / 54

78 A standard algebraic syntax Triple patterns: just triples + variables, without blanks?x :name "john" (?X, name, john) Graph patterns: full parenthesized algebra { P1 P2 } (P 1 AND P 2 ) { P1 OPTIONAL { P2 }} (P 1 OPT P 2 ) { P1 } UNION { P2 } (P 1 UNION P 2 ) { P1 FILTER ( R ) } (P 1 FILTER R ) original SPARQL syntax algebraic syntax M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 28 / 54

79 A standard algebraic syntax Explicit precedence/association Example { t1 t2 OPTIONAL { t3 } OPTIONAL { t4 } t5 } ((((t 1 AND t 2 ) OPT t 3 ) OPT t 4 ) AND t 5 ) M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 29 / 54

80 Mappings: building block for the semantics Definition A mapping is a partial function from variables to RDF terms. The evaluation of a pattern results in a set of mappings. M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 30 / 54

81 Mappings: building block for the semantics Definition A mapping is a partial function from variables to RDF terms. The evaluation of a pattern results in a set of mappings. M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 30 / 54

82 The semantics of triple patterns Given an RDF graph and a triple pattern t Definition The evaluation of t is the set of mappings that M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 31 / 54

83 The semantics of triple patterns Given an RDF graph and a triple pattern t Definition The evaluation of t is the set of mappings that make t to match the graph M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 31 / 54

84 The semantics of triple patterns Given an RDF graph and a triple pattern t Definition The evaluation of t is the set of mappings that make t to match the graph have as domain the variables in t. M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 31 / 54

85 The semantics of triple patterns Given an RDF graph and a triple pattern t Definition The evaluation of t is the set of mappings that make t to match the graph have as domain the variables in t. Example graph triple evaluation (R 1, name, john)?x?y (R 1, , (?X, name,?y ) µ 1 : R 1 john (R 2, name, paul) µ 2 : R 2 paul M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 31 / 54

86 The semantics of triple patterns Given an RDF graph and a triple pattern t Definition The evaluation of t is the set of mappings that make t to match the graph have as domain the variables in t. Example graph triple evaluation (R 1, name, john)?x?y (R 1, , (?X, name,?y ) µ 1 : R 1 john (R 2, name, paul) µ 2 : R 2 paul M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 31 / 54

87 The semantics of triple patterns Given an RDF graph and a triple pattern t Definition The evaluation of t is the set of mappings that make t to match the graph have as domain the variables in t. Example graph triple evaluation (R 1, name, john)?x?y (R 1, , (?X, name,?y ) µ 1 : R 1 john (R 2, name, paul) µ 2 : R 2 paul M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 31 / 54

88 Compatible mappings Definition Two mappings are compatible if they agree in their shared variables. Example?X?Y?Z?V µ 1 : R 1 john µ 2 : R 1 µ 3 : R 2 M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 32 / 54

89 Compatible mappings Definition Two mappings are compatible if they agree in their shared variables. Example?X?Y?Z?V µ 1 : R 1 john µ 2 : R 1 µ 3 : R 2 M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 32 / 54

90 Compatible mappings Definition Two mappings are compatible if they agree in their shared variables. Example?X?Y?Z?V µ 1 : R 1 john µ 2 : R 1 µ 3 : R 2 µ 1 µ 2 : R 1 john M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 32 / 54

91 Compatible mappings Definition Two mappings are compatible if they agree in their shared variables. Example?X?Y?Z?V µ 1 : R 1 john µ 2 : R 1 µ 3 : R 2 µ 1 µ 2 : R 1 john M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 32 / 54

92 Compatible mappings Definition Two mappings are compatible if they agree in their shared variables. Example?X?Y?Z?V µ 1 : R 1 john µ 2 : R 1 µ 3 : R 2 µ 1 µ 2 : R 1 john µ 1 µ 3 : R 1 john R 2 M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 32 / 54

93 Compatible mappings Definition Two mappings are compatible if they agree in their shared variables. Example?X?Y?Z?V µ 1 : R 1 john µ 2 : R 1 µ 3 : R 2 µ 1 µ 2 : R 1 john µ 1 µ 3 : R 1 john R 2 µ 2 and µ 3 are not compatible M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 32 / 54

94 Sets of mappings and operations Let M 1 and M 2 be sets of mappings: Definition M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 33 / 54

95 Sets of mappings and operations Let M 1 and M 2 be sets of mappings: Definition Join: M 1 M 2 extending mappings in M 1 with compatible mappings in M 2 M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 33 / 54

96 Sets of mappings and operations Let M 1 and M 2 be sets of mappings: Definition Join: M 1 M 2 extending mappings in M 1 with compatible mappings in M 2 Difference: M 1 M 2 mappings in M 1 that cannot be extended with mappings in M 2 M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 33 / 54

97 Sets of mappings and operations Let M 1 and M 2 be sets of mappings: Definition Join: M 1 M 2 extending mappings in M 1 with compatible mappings in M 2 Difference: M 1 M 2 mappings in M 1 that cannot be extended with mappings in M 2 Union: M 1 M 2 mappings in M 1 plus mappings in M 2 (set theoretical union) M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 33 / 54

98 Sets of mappings and operations Let M 1 and M 2 be sets of mappings: Definition Join: M 1 M 2 extending mappings in M 1 with compatible mappings in M 2 Difference: M 1 M 2 mappings in M 1 that cannot be extended with mappings in M 2 Union: M 1 M 2 mappings in M 1 plus mappings in M 2 (set theoretical union) Definition Left Outer Join: M 1 M 2 = (M 1 M 2 ) (M 1 M 2 ) M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 33 / 54

99 Semantics of SPARQL operators Let M 1 and M 2 be the result of evaluating P 1 and P 2. Definition The evaluation of: (P 1 AND P 2 ) (P 1 UNION P 2 ) (P 1 OPT P 2 ) M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 34 / 54

100 Semantics of SPARQL operators Let M 1 and M 2 be the result of evaluating P 1 and P 2. Definition The evaluation of: (P 1 AND P 2 ) M 1 M 2 (P 1 UNION P 2 ) (P 1 OPT P 2 ) M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 34 / 54

101 Semantics of SPARQL operators Let M 1 and M 2 be the result of evaluating P 1 and P 2. Definition The evaluation of: (P 1 AND P 2 ) M 1 M 2 (P 1 UNION P 2 ) M 1 M 2 (P 1 OPT P 2 ) M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 34 / 54

102 Semantics of SPARQL operators Let M 1 and M 2 be the result of evaluating P 1 and P 2. Definition The evaluation of: (P 1 AND P 2 ) M 1 M 2 (P 1 UNION P 2 ) M 1 M 2 (P 1 OPT P 2 ) M 1 M 2 M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 34 / 54

103 Simple example Example (R 1, name, john) (R 1, , (R 2, name, paul) ((?X, name,?y ) OPT (?X, ,?e)) M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 35 / 54

104 Simple example Example (R 1, name, john) (R 1, , (R 2, name, paul) ((?X, name,?y ) OPT (?X, ,?e)) M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 35 / 54

105 Simple example Example (R 1, name, john) (R 1, , (R 2, name, paul) ((?X, name,?y ) OPT (?X, ,?e))?x?y R 1 john paul R 2 M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 35 / 54

106 Simple example Example (R 1, name, john) (R 1, , (R 2, name, paul) ((?X, name,?y ) OPT (?X, ,?e))?x?y R 1 john paul R 2 M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 35 / 54

107 Simple example Example (R 1, name, john) (R 1, , (R 2, name, paul) ((?X, name,?y ) OPT (?X, ,?e))?x?y R 1 john paul R 2?X?E R 1 M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 35 / 54

108 Simple example Example (R 1, name, john) (R 1, , (R 2, name, paul) ((?X, name,?y ) OPT (?X, ,?e))?x?y R 1 john paul R 2?X?E R 1 M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 35 / 54

109 Simple example Example (R 1, name, john) (R 1, , (R 2, name, paul) ((?X, name,?y ) OPT (?X, ,?e))?x?y R 1 john paul R 2?X?Y?E R 1 john R 2 paul?x?e R 1 M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica 35 / 54

RDF y SPARQL: Dos componentes básicos para la Web de datos

RDF y SPARQL: Dos componentes básicos para la Web de datos RDF y SPARQL: Dos componentes básicos para la Web de datos Marcelo Arenas PUC Chile & University of Oxford M. Arenas RDF y SPARQL: Dos componentes básicos para la Web de datos Valladolid 2013 1 / 61 Semantic

More information

Introduction to Logic in Computer Science: Autumn 2006

Introduction to Logic in Computer Science: Autumn 2006 Introduction to Logic in Computer Science: Autumn 2006 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam Ulle Endriss 1 Plan for Today Now that we have a basic understanding

More information

Logic and Reasoning in the Semantic Web (part I RDF/RDFS)

Logic and Reasoning in the Semantic Web (part I RDF/RDFS) Logic and Reasoning in the Semantic Web (part I RDF/RDFS) Fulvio Corno, Laura Farinetti Politecnico di Torino Dipartimento di Automatica e Informatica e-lite Research Group http://elite.polito.it Outline

More information

Object Database on Top of the Semantic Web

Object Database on Top of the Semantic Web WSS03 Applications, Products and Services of Web-based Support Systems 97 Object Database on Top of the Semantic Web Jakub Güttner Graduate Student, Brno Univ. of Technology, Faculty of Information Technology,

More information

Formal Engineering for Industrial Software Development

Formal Engineering for Industrial Software Development Shaoying Liu Formal Engineering for Industrial Software Development Using the SOFL Method With 90 Figures and 30 Tables Springer Contents Introduction 1 1.1 Software Life Cycle... 2 1.2 The Problem 4 1.3

More information

Lecture 7: NP-Complete Problems

Lecture 7: NP-Complete Problems IAS/PCMI Summer Session 2000 Clay Mathematics Undergraduate Program Basic Course on Computational Complexity Lecture 7: NP-Complete Problems David Mix Barrington and Alexis Maciel July 25, 2000 1. Circuit

More information

Formalization of the CRM: Initial Thoughts

Formalization of the CRM: Initial Thoughts Formalization of the CRM: Initial Thoughts Carlo Meghini Istituto di Scienza e Tecnologie della Informazione Consiglio Nazionale delle Ricerche Pisa CRM SIG Meeting Iraklio, October 1st, 2014 Outline Overture:

More information

13 RDFS and SPARQL. Internet Technology. MSc in Communication Sciences 2011-12 Program in Technologies for Human Communication.

13 RDFS and SPARQL. Internet Technology. MSc in Communication Sciences 2011-12 Program in Technologies for Human Communication. MSc in Communication Sciences 2011-12 Program in Technologies for Human Communication Davide Eynard nternet Technology 13 RDFS and SPARQL 2 RDF - Summary Main characteristics of RDF: Abstract syntax based

More information

RDF Resource Description Framework

RDF Resource Description Framework RDF Resource Description Framework Fulvio Corno, Laura Farinetti Politecnico di Torino Dipartimento di Automatica e Informatica e-lite Research Group http://elite.polito.it Outline RDF Design objectives

More information

XML Data Integration

XML Data Integration XML Data Integration Lucja Kot Cornell University 11 November 2010 Lucja Kot (Cornell University) XML Data Integration 11 November 2010 1 / 42 Introduction Data Integration and Query Answering A data integration

More information

Updating Action Domain Descriptions

Updating Action Domain Descriptions Updating Action Domain Descriptions Thomas Eiter, Esra Erdem, Michael Fink, and Ján Senko Institute of Information Systems, Vienna University of Technology, Vienna, Austria Email: (eiter esra michael jan)@kr.tuwien.ac.at

More information

Bounded-width QBF is PSPACE-complete

Bounded-width QBF is PSPACE-complete Bounded-width QBF is PSPACE-complete Albert Atserias 1 and Sergi Oliva 2 1 Universitat Politècnica de Catalunya Barcelona, Spain atserias@lsi.upc.edu 2 Universitat Politècnica de Catalunya Barcelona, Spain

More information

A Review and Comparison of Rule Languages and Rule-based Inference Engines for the Semantic Web

A Review and Comparison of Rule Languages and Rule-based Inference Engines for the Semantic Web A Review and Comparison of and -based Inference Engines for the Semantic Web Thanyalak Rattanasawad, Kanda Runapongsa Saikaew Department of Computer Engineering, Faculty of Engineering, Khon Kaen University,

More information

Generating models of a matched formula with a polynomial delay

Generating models of a matched formula with a polynomial delay Generating models of a matched formula with a polynomial delay Petr Savicky Institute of Computer Science, Academy of Sciences of Czech Republic, Pod Vodárenskou Věží 2, 182 07 Praha 8, Czech Republic

More information

Rigorous Software Development CSCI-GA 3033-009

Rigorous Software Development CSCI-GA 3033-009 Rigorous Software Development CSCI-GA 3033-009 Instructor: Thomas Wies Spring 2013 Lecture 11 Semantics of Programming Languages Denotational Semantics Meaning of a program is defined as the mathematical

More information

A Secure Mediator for Integrating Multiple Level Access Control Policies

A Secure Mediator for Integrating Multiple Level Access Control Policies A Secure Mediator for Integrating Multiple Level Access Control Policies Isabel F. Cruz Rigel Gjomemo Mirko Orsini ADVIS Lab Department of Computer Science University of Illinois at Chicago {ifc rgjomemo

More information

An Ontology-based e-learning System for Network Security

An Ontology-based e-learning System for Network Security An Ontology-based e-learning System for Network Security Yoshihito Takahashi, Tomomi Abiko, Eriko Negishi Sendai National College of Technology a0432@ccedu.sendai-ct.ac.jp Goichi Itabashi Graduate School

More information

The Recovery of a Schema Mapping: Bringing Exchanged Data Back

The Recovery of a Schema Mapping: Bringing Exchanged Data Back The Recovery of a Schema Mapping: Bringing Exchanged Data Back MARCELO ARENAS and JORGE PÉREZ Pontificia Universidad Católica de Chile and CRISTIAN RIVEROS R&M Tech Ingeniería y Servicios Limitada A schema

More information

XML with Incomplete Information

XML with Incomplete Information XML with Incomplete Information Pablo Barceló Leonid Libkin Antonella Poggi Cristina Sirangelo Abstract We study models of incomplete information for XML, their computational properties, and query answering.

More information

Elena Baralis, Silvia Chiusano Politecnico di Torino. Pag. 1. Query optimization. DBMS Architecture. Query optimizer. Query optimizer.

Elena Baralis, Silvia Chiusano Politecnico di Torino. Pag. 1. Query optimization. DBMS Architecture. Query optimizer. Query optimizer. DBMS Architecture INSTRUCTION OPTIMIZER Database Management Systems MANAGEMENT OF ACCESS METHODS BUFFER MANAGER CONCURRENCY CONTROL RELIABILITY MANAGEMENT Index Files Data Files System Catalog BASE It

More information

Layering the Semantic Web: Problems and Directions

Layering the Semantic Web: Problems and Directions First International Semantic Web Conference (ISWC2002), Sardinia, Italy, June 2002. Layering the Semantic Web: Problems and Directions Peter F. Patel-Schneider and Dieter Fensel Bell Labs Research Murray

More information

Computational Methods for Database Repair by Signed Formulae

Computational Methods for Database Repair by Signed Formulae Computational Methods for Database Repair by Signed Formulae Ofer Arieli (oarieli@mta.ac.il) Department of Computer Science, The Academic College of Tel-Aviv, 4 Antokolski street, Tel-Aviv 61161, Israel.

More information

From Causes for Database Queries to Repairs and Model-Based Diagnosis and Back

From Causes for Database Queries to Repairs and Model-Based Diagnosis and Back From Causes for Database Queries to Repairs and Model-Based Diagnosis and Back Babak Salimi 1 and Leopoldo Bertossi 2 1 Carleton University, School of Computer Science, Ottawa, Canada bsalimi@scs.carleton.ca

More information

CSC 373: Algorithm Design and Analysis Lecture 16

CSC 373: Algorithm Design and Analysis Lecture 16 CSC 373: Algorithm Design and Analysis Lecture 16 Allan Borodin February 25, 2013 Some materials are from Stephen Cook s IIT talk and Keven Wayne s slides. 1 / 17 Announcements and Outline Announcements

More information

Fixed-Point Logics and Computation

Fixed-Point Logics and Computation 1 Fixed-Point Logics and Computation Symposium on the Unusual Effectiveness of Logic in Computer Science University of Cambridge 2 Mathematical Logic Mathematical logic seeks to formalise the process of

More information

OSLC Primer Learning the concepts of OSLC

OSLC Primer Learning the concepts of OSLC OSLC Primer Learning the concepts of OSLC It has become commonplace that specifications are precise in their details but difficult to read and understand unless you already know the basic concepts. A good

More information

A Comparison of Database Query Languages: SQL, SPARQL, CQL, DMX

A Comparison of Database Query Languages: SQL, SPARQL, CQL, DMX ISSN: 2393-8528 Contents lists available at www.ijicse.in International Journal of Innovative Computer Science & Engineering Volume 3 Issue 2; March-April-2016; Page No. 09-13 A Comparison of Database

More information

RDF Support in Oracle Oracle USA Inc.

RDF Support in Oracle Oracle USA Inc. RDF Support in Oracle Oracle USA Inc. 1. Introduction Resource Description Framework (RDF) is a standard for representing information that can be identified using a Universal Resource Identifier (URI).

More information

Path Querying on Graph Databases

Path Querying on Graph Databases Path Querying on Graph Databases Jelle Hellings Hasselt University and transnational University of Limburg 1/38 Overview Graph Databases Motivation Walk Logic Relations with FO and MSO Relations with CTL

More information

RDF Resource Description Framework

RDF Resource Description Framework RDF Resource Description Framework Rückblick HTML Auszeichnung, vorgegeben XML, XHTML, SGML Auszeichnung, eigene RDF, OWL Auszeichnung, inhaltliche Einordnung RDF-Model RDF-Konzept (Tripel) RDF-Graph RDF-Syntax

More information

Repair Checking in Inconsistent Databases: Algorithms and Complexity

Repair Checking in Inconsistent Databases: Algorithms and Complexity Repair Checking in Inconsistent Databases: Algorithms and Complexity Foto Afrati 1 Phokion G. Kolaitis 2 1 National Technical University of Athens 2 UC Santa Cruz and IBM Almaden Research Center Oxford,

More information

Testing LTL Formula Translation into Büchi Automata

Testing LTL Formula Translation into Büchi Automata Testing LTL Formula Translation into Büchi Automata Heikki Tauriainen and Keijo Heljanko Helsinki University of Technology, Laboratory for Theoretical Computer Science, P. O. Box 5400, FIN-02015 HUT, Finland

More information

Query Processing in Data Integration Systems

Query Processing in Data Integration Systems Query Processing in Data Integration Systems Diego Calvanese Free University of Bozen-Bolzano BIT PhD Summer School Bressanone July 3 7, 2006 D. Calvanese Data Integration BIT PhD Summer School 1 / 152

More information

Lecture 2: Query Containment

Lecture 2: Query Containment CS 838: Foundations of Data Management Spring 2016 Lecture 2: Query Containment Instructor: Paris Koutris 2016 In this lecture we will study when we can say that two conjunctive queries that are syntactically

More information

12 The Semantic Web and RDF

12 The Semantic Web and RDF MSc in Communication Sciences 2011-12 Program in Technologies for Human Communication Davide Eynard nternet Technology 12 The Semantic Web and RDF 2 n the previous episodes... A (video) summary: Michael

More information

Relational Databases

Relational Databases Relational Databases Jan Chomicki University at Buffalo Jan Chomicki () Relational databases 1 / 18 Relational data model Domain domain: predefined set of atomic values: integers, strings,... every attribute

More information

COMS4236: Introduction to Computational Complexity. Summer 2014

COMS4236: Introduction to Computational Complexity. Summer 2014 COMS4236: Introduction to Computational Complexity Summer 2014 Mihalis Yannakakis Lecture 17 Outline conp NP conp Factoring Total NP Search Problems Class conp Definition of NP is nonsymmetric with respect

More information

Linked Data & the Semantic Web Standards

Linked Data & the Semantic Web Standards Chapter 1 Linked Data & the Semantic Web Standards Aidan Hogan Digital Enterprise Research Institute, National University of Ireland, Galway Department of Computer Science, Universidad de Chile 1.1 Introduction...............................................................

More information

Complexity of Higher-Order Queries

Complexity of Higher-Order Queries Complexity of Higher-Order Queries Huy Vu Oxford University Computing Laboratory Parks Road, Oxford, UK huy.vu@comlab.ox.ac.uk Michael Benedikt Oxford University Computing Laboratory Parks Road, Oxford,

More information

CSE 459/598: Logic for Computer Scientists (Spring 2012)

CSE 459/598: Logic for Computer Scientists (Spring 2012) CSE 459/598: Logic for Computer Scientists (Spring 2012) Time and Place: T Th 10:30-11:45 a.m., M1-09 Instructor: Joohyung Lee (joolee@asu.edu) Instructor s Office Hours: T Th 4:30-5:30 p.m. and by appointment

More information

Ampersand and the Semantic Web

Ampersand and the Semantic Web Ampersand and the Semantic Web The Ampersand Conference 2015 Lloyd Rutledge The Semantic Web Billions and billions of data units Triples (subject-predicate-object) of URI s Your data readily integrated

More information

Lecture 1: Oracle Turing Machines

Lecture 1: Oracle Turing Machines Computational Complexity Theory, Fall 2008 September 10 Lecture 1: Oracle Turing Machines Lecturer: Kristoffer Arnsfelt Hansen Scribe: Casper Kejlberg-Rasmussen Oracle TM Definition 1 Let A Σ. Then a Oracle

More information

Position Paper: Validation of Distributed Enterprise Data is Necessary, and RIF can Help

Position Paper: Validation of Distributed Enterprise Data is Necessary, and RIF can Help Position Paper: Validation of Distributed Enterprise Data is Necessary, and RIF can Help David Schaengold Director of Business Solutions Revelytix, Inc Sept 19, 2011, Revised Oct 17, 2011 Overview Revelytix

More information

Semantic Modeling with RDF. DBTech ExtWorkshop on Database Modeling and Semantic Modeling Lili Aunimo

Semantic Modeling with RDF. DBTech ExtWorkshop on Database Modeling and Semantic Modeling Lili Aunimo DBTech ExtWorkshop on Database Modeling and Semantic Modeling Lili Aunimo Expected Outcomes You will learn: Basic concepts related to ontologies Semantic model Semantic web Basic features of RDF and RDF

More information

Why? A central concept in Computer Science. Algorithms are ubiquitous.

Why? A central concept in Computer Science. Algorithms are ubiquitous. Analysis of Algorithms: A Brief Introduction Why? A central concept in Computer Science. Algorithms are ubiquitous. Using the Internet (sending email, transferring files, use of search engines, online

More information

Ontologies and the Web Ontology Language OWL

Ontologies and the Web Ontology Language OWL Chapter 7 Ontologies and the Web Ontology Language OWL vocabularies can be defined by RDFS not so much stronger than the ER Model or UML (even weaker: no cardinalities) not only a conceptual model, but

More information

ABSTRACT 1. INTRODUCTION. Kamil Bajda-Pawlikowski kbajda@cs.yale.edu

ABSTRACT 1. INTRODUCTION. Kamil Bajda-Pawlikowski kbajda@cs.yale.edu Kamil Bajda-Pawlikowski kbajda@cs.yale.edu Querying RDF data stored in DBMS: SPARQL to SQL Conversion Yale University technical report #1409 ABSTRACT This paper discusses the design and implementation

More information

Software Modeling and Verification

Software Modeling and Verification Software Modeling and Verification Alessandro Aldini DiSBeF - Sezione STI University of Urbino Carlo Bo Italy 3-4 February 2015 Algorithmic verification Correctness problem Is the software/hardware system

More information

Semantic Interoperability

Semantic Interoperability Ivan Herman Semantic Interoperability Olle Olsson Swedish W3C Office Swedish Institute of Computer Science (SICS) Stockholm Apr 27 2011 (2) Background Stockholm Apr 27, 2011 (2) Trends: from

More information

Linked Medieval Data: Semantic Enrichment and Contextualisation to Enhance Understanding and Collaboration

Linked Medieval Data: Semantic Enrichment and Contextualisation to Enhance Understanding and Collaboration : Semantic Enrichment and Contextualisation to Enhance Understanding and Collaboration Prof. Dr. Stefan Gradmann Humboldt-Universität zu Berlin / School of Library and Information Science stefan.gradmann@ibi.hu-berlin.de

More information

National Technical University of Athens. Optimizing Query Answering over Expressive Ontological Knowledge

National Technical University of Athens. Optimizing Query Answering over Expressive Ontological Knowledge National Technical University of Athens School of Electrical and Computer Engineering Division of Computer Science Optimizing Query Answering over Expressive Ontological Knowledge DOCTOR OF PHILOSOPHY

More information

Data Exchange: Semantics and Query Answering

Data Exchange: Semantics and Query Answering Data Exchange: Semantics and Query Answering Ronald Fagin a Phokion G. Kolaitis b,1 Renée J. Miller c,1 Lucian Popa a a IBM Almaden Research Center {fagin,lucian}@almaden.ibm.com b University of California

More information

Logical Foundations of Relational Data Exchange

Logical Foundations of Relational Data Exchange Logical Foundations of Relational Data Exchange Pablo Barceló Department of Computer Science, University of Chile pbarcelo@dcc.uchile.cl 1 Introduction Data exchange has been defined as the problem of

More information

On Scale Independence for Querying Big Data

On Scale Independence for Querying Big Data On Scale Independence for Querying Big Data Wenfei Fan University of Edinburgh & Beihang University wenfei@inf.ed.ac.uk Floris Geerts University of Antwerp floris.geerts@uantwerpen.be Leonid Libkin University

More information

Completing Description Logic Knowledge Bases using Formal Concept Analysis

Completing Description Logic Knowledge Bases using Formal Concept Analysis Completing Description Logic Knowledge Bases using Formal Concept Analysis Franz Baader, 1 Bernhard Ganter, 1 Barış Sertkaya, 1 and Ulrike Sattler 2 1 TU Dresden, Germany and 2 The University of Manchester,

More information

Incomplete Information in RDF

Incomplete Information in RDF Incomplete Information in RDF Charalampos Nikolaou and Manolis Koubarakis National and Kapodistrian University of Athens {charnik,koubarak}@di.uoa.gr Abstract. We extend RDF with the ability to represent

More information

Static Analysis and Optimization of Semantic Web Queries

Static Analysis and Optimization of Semantic Web Queries Static Analysis and Optimization of Semantic Web Queries Andrés Letelier Jorge Pérez Reinhard Pichler Sebastian Skritek Dept. of Computer Science Dept. of Computer Science Faculty of Informatics PUC Chile

More information

Getting Started Guide

Getting Started Guide TopBraid Composer Getting Started Guide Version 2.0 July 21, 2007 TopBraid Composer, Copyright 2006 TopQuadrant, Inc. 1 of 58 Revision History Date Version Revision August 1, 2006 1.0 Initial version September

More information

Data Integration. Maurizio Lenzerini. Universitá di Roma La Sapienza

Data Integration. Maurizio Lenzerini. Universitá di Roma La Sapienza Data Integration Maurizio Lenzerini Universitá di Roma La Sapienza DASI 06: Phd School on Data and Service Integration Bertinoro, December 11 15, 2006 M. Lenzerini Data Integration DASI 06 1 / 213 Structure

More information

Bounded Treewidth in Knowledge Representation and Reasoning 1

Bounded Treewidth in Knowledge Representation and Reasoning 1 Bounded Treewidth in Knowledge Representation and Reasoning 1 Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität Wien Luminy, October 2010 1 Joint work with G.

More information

On the Decidability and Complexity of Query Answering over Inconsistent and Incomplete Databases

On the Decidability and Complexity of Query Answering over Inconsistent and Incomplete Databases On the Decidability and Complexity of Query Answering over Inconsistent and Incomplete Databases Andrea Calì Domenico Lembo Riccardo Rosati Dipartimento di Informatica e Sistemistica Università di Roma

More information

Certain Answers as Objects and Knowledge

Certain Answers as Objects and Knowledge Certain Answers as Objects and Knowledge Leonid Libkin School of Informatics, University of Edinburgh Abstract The standard way of answering queries over incomplete databases is to compute certain answers,

More information

Scope. Cognescent SBI Semantic Business Intelligence

Scope. Cognescent SBI Semantic Business Intelligence Cognescent SBI Semantic Business Intelligence Scope...1 Conceptual Diagram...2 Datasources...3 Core Concepts...3 Resources...3 Occurrence (SPO)...4 Links...4 Statements...4 Rules...4 Types...4 Mappings...5

More information

A first step towards modeling semistructured data in hybrid multimodal logic

A first step towards modeling semistructured data in hybrid multimodal logic A first step towards modeling semistructured data in hybrid multimodal logic Nicole Bidoit * Serenella Cerrito ** Virginie Thion * * LRI UMR CNRS 8623, Université Paris 11, Centre d Orsay. ** LaMI UMR

More information

DISTRIBUTED RDF QUERY PROCESSING AND REASONING FOR BIG DATA / LINKED DATA. A THESIS IN Computer Science

DISTRIBUTED RDF QUERY PROCESSING AND REASONING FOR BIG DATA / LINKED DATA. A THESIS IN Computer Science DISTRIBUTED RDF QUERY PROCESSING AND REASONING FOR BIG DATA / LINKED DATA A THESIS IN Computer Science Presented to the Faculty of the University of Missouri-Kansas City in partial fulfillment of the requirements

More information

G-SPARQL: A Hybrid Engine for Querying Large Attributed Graphs

G-SPARQL: A Hybrid Engine for Querying Large Attributed Graphs G-SPARQL: A Hybrid Engine for Querying Large Attributed Graphs Sherif Sakr National ICT Australia UNSW, Sydney, Australia ssakr@cse.unsw.edu.eu Sameh Elnikety Microsoft Research Redmond, WA, USA samehe@microsoft.com

More information

Defining a benchmark suite for evaluating the import of OWL Lite ontologies

Defining a benchmark suite for evaluating the import of OWL Lite ontologies UNIVERSIDAD POLITÉCNICA DE MADRID FACULTAD DE INFORMÁTICA FREE UNIVERSITY OF BOLZANO FACULTY OF COMPUTER SCIENCE EUROPEAN MASTER IN COMPUTATIONAL LOGIC MASTER THESIS Defining a benchmark suite for evaluating

More information

Robust Module-based Data Management

Robust Module-based Data Management IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, VOL. V, NO. N, MONTH YEAR 1 Robust Module-based Data Management François Goasdoué, LRI, Univ. Paris-Sud, and Marie-Christine Rousset, LIG, Univ. Grenoble

More information

Borne inférieure de circuit : une application des expanders

Borne inférieure de circuit : une application des expanders Borne inférieure de circuit : une application des expanders Simone Bova 1 Florent Capelli 2 Friedrich Slivovski 1 Stefan Mengel 3 1 TU Wien, 2 IMJ-PRG, Paris 7, 3 CRIL, Lens 6 Novembre 2015 JGA 2015 Motivation

More information

Mathematics for Computer Science/Software Engineering. Notes for the course MSM1F3 Dr. R. A. Wilson

Mathematics for Computer Science/Software Engineering. Notes for the course MSM1F3 Dr. R. A. Wilson Mathematics for Computer Science/Software Engineering Notes for the course MSM1F3 Dr. R. A. Wilson October 1996 Chapter 1 Logic Lecture no. 1. We introduce the concept of a proposition, which is a statement

More information

! " # The Logic of Descriptions. Logics for Data and Knowledge Representation. Terminology. Overview. Three Basic Features. Some History on DLs

!  # The Logic of Descriptions. Logics for Data and Knowledge Representation. Terminology. Overview. Three Basic Features. Some History on DLs ,!0((,.+#$),%$(-&.& *,2(-$)%&2.'3&%!&, Logics for Data and Knowledge Representation Alessandro Agostini agostini@dit.unitn.it University of Trento Fausto Giunchiglia fausto@dit.unitn.it The Logic of Descriptions!$%&'()*$#)

More information

SPARQL UniProt.RDF. Get these slides! Tutorial plan. Everyone has had some introduction slash knowledge of RDF.

SPARQL UniProt.RDF. Get these slides! Tutorial plan. Everyone has had some introduction slash knowledge of RDF. SPARQL UniProt.RDF Everyone has had some introduction slash knowledge of RDF. Jerven Bolleman Developer Swiss-Prot Group Swiss Institute of Bioinformatics Get these slides! https://sites.google.com/a/jerven.eu/jerven/home/

More information

Graph Algorithms and Graph Databases. Dr. Daisy Zhe Wang CISE Department University of Florida August 27th 2014

Graph Algorithms and Graph Databases. Dr. Daisy Zhe Wang CISE Department University of Florida August 27th 2014 Graph Algorithms and Graph Databases Dr. Daisy Zhe Wang CISE Department University of Florida August 27th 2014 1 Google Knowledge Graph -- Entities and Relationships 2 Graph Data! Facebook Social Network

More information

Satisfiability Checking

Satisfiability Checking Satisfiability Checking SAT-Solving Prof. Dr. Erika Ábrahám Theory of Hybrid Systems Informatik 2 WS 10/11 Prof. Dr. Erika Ábrahám - Satisfiability Checking 1 / 40 A basic SAT algorithm Assume the CNF

More information

Theoretical Computer Science (Bridging Course) Complexity

Theoretical Computer Science (Bridging Course) Complexity Theoretical Computer Science (Bridging Course) Complexity Gian Diego Tipaldi A scenario You are a programmer working for a logistics company Your boss asks you to implement a program that optimizes the

More information

The epistemic structure of de Finetti s betting problem

The epistemic structure of de Finetti s betting problem The epistemic structure of de Finetti s betting problem Tommaso Flaminio 1 and Hykel Hosni 2 1 IIIA - CSIC Campus de la Univ. Autònoma de Barcelona s/n 08193 Bellaterra, Spain. Email: tommaso@iiia.csic.es

More information

How semantic technology can help you do more with production data. Doing more with production data

How semantic technology can help you do more with production data. Doing more with production data How semantic technology can help you do more with production data Doing more with production data EPIM and Digital Energy Journal 2013-04-18 David Price, TopQuadrant London, UK dprice at topquadrant dot

More information

OBDA: Query Rewriting or Materialization? In Practice, Both!

OBDA: Query Rewriting or Materialization? In Practice, Both! OBDA: Query Rewriting or Materialization? In Practice, Both! Juan F. Sequeda 1, Marcelo Arenas 2, and Daniel P. Miranker 1 1 Department of Computer Science, The University of Texas at Austin 2 Department

More information

ON FUNCTIONAL SYMBOL-FREE LOGIC PROGRAMS

ON FUNCTIONAL SYMBOL-FREE LOGIC PROGRAMS PROCEEDINGS OF THE YEREVAN STATE UNIVERSITY Physical and Mathematical Sciences 2012 1 p. 43 48 ON FUNCTIONAL SYMBOL-FREE LOGIC PROGRAMS I nf or m at i cs L. A. HAYKAZYAN * Chair of Programming and Information

More information

Building the Semantic Web on XML

Building the Semantic Web on XML The First International Semantic Web Conference (ISWC2002), Sardinia, Italy, June 2002. Building the Semantic Web on XML Peter F. Patel-Schneider and Jérôme Siméon Bell Labs Research, Murray Hill, NJ,

More information

Chapter. NP-Completeness. Contents

Chapter. NP-Completeness. Contents Chapter 13 NP-Completeness Contents 13.1 P and NP......................... 593 13.1.1 Defining the Complexity Classes P and NP...594 13.1.2 Some Interesting Problems in NP.......... 597 13.2 NP-Completeness....................

More information

An Efficient and Scalable Management of Ontology

An Efficient and Scalable Management of Ontology An Efficient and Scalable Management of Ontology Myung-Jae Park 1, Jihyun Lee 1, Chun-Hee Lee 1, Jiexi Lin 1, Olivier Serres 2, and Chin-Wan Chung 1 1 Korea Advanced Institute of Science and Technology,

More information

DISCOVERING RESUME INFORMATION USING LINKED DATA

DISCOVERING RESUME INFORMATION USING LINKED DATA DISCOVERING RESUME INFORMATION USING LINKED DATA Ujjal Marjit 1, Kumar Sharma 2 and Utpal Biswas 3 1 C.I.R.M, University Kalyani, Kalyani (West Bengal) India sic@klyuniv.ac.in 2 Department of Computer

More information

Functorial Data Migration. Categorical Informatics, Inc. info@catinf.com. December 1, 2015. C i

Functorial Data Migration. Categorical Informatics, Inc. info@catinf.com. December 1, 2015. C i Functorial Data Migration Categorical Informatics, Inc. info@catinf.com December 1, 2015 C i Outline The Functorial Data Model (FDM) The FDM is based on category theory, which was designed to migrate theorems

More information

Exponential time algorithms for graph coloring

Exponential time algorithms for graph coloring Exponential time algorithms for graph coloring Uriel Feige Lecture notes, March 14, 2011 1 Introduction Let [n] denote the set {1,..., k}. A k-labeling of vertices of a graph G(V, E) is a function V [k].

More information

UPDATES OF LOGIC PROGRAMS

UPDATES OF LOGIC PROGRAMS Computing and Informatics, Vol. 20, 2001,????, V 2006-Nov-6 UPDATES OF LOGIC PROGRAMS Ján Šefránek Department of Applied Informatics, Faculty of Mathematics, Physics and Informatics, Comenius University,

More information

Complexity Theory. Jörg Kreiker. Summer term 2010. Chair for Theoretical Computer Science Prof. Esparza TU München

Complexity Theory. Jörg Kreiker. Summer term 2010. Chair for Theoretical Computer Science Prof. Esparza TU München Complexity Theory Jörg Kreiker Chair for Theoretical Computer Science Prof. Esparza TU München Summer term 2010 Lecture 8 PSPACE 3 Intro Agenda Wrap-up Ladner proof and time vs. space succinctness QBF

More information

Data Exchange: Semantics and Query Answering

Data Exchange: Semantics and Query Answering Data Exchange: Semantics and Query Answering Ronald Fagin 1, Phokion G. Kolaitis 2, Renée J. Miller 3, and Lucian Popa 1 1 IBM Almaden Research Center 2 UC Santa Cruz 3 University of Toronto Abstract.

More information

FUNDAMENTALS OF ARTIFICIAL INTELLIGENCE KNOWLEDGE REPRESENTATION AND NETWORKED SCHEMES

FUNDAMENTALS OF ARTIFICIAL INTELLIGENCE KNOWLEDGE REPRESENTATION AND NETWORKED SCHEMES Riga Technical University Faculty of Computer Science and Information Technology Department of Systems Theory and Design FUNDAMENTALS OF ARTIFICIAL INTELLIGENCE Lecture 7 KNOWLEDGE REPRESENTATION AND NETWORKED

More information

Web services in corporate semantic Webs. On intranets and extranets too, a little semantics goes a long way. Fabien.Gandon@sophia.inria.

Web services in corporate semantic Webs. On intranets and extranets too, a little semantics goes a long way. Fabien.Gandon@sophia.inria. Web services in corporate semantic Webs On intranets and extranets too, a little semantics goes a long way. Fabien.Gandon@sophia.inria.fr 1 Plan & progression Motivating scenarios: Research community Starting

More information

Introducing Formal Methods. Software Engineering and Formal Methods

Introducing Formal Methods. Software Engineering and Formal Methods Introducing Formal Methods Formal Methods for Software Specification and Analysis: An Overview 1 Software Engineering and Formal Methods Every Software engineering methodology is based on a recommended

More information

ONTOLOGIES A short tutorial with references to YAGO Cosmina CROITORU

ONTOLOGIES A short tutorial with references to YAGO Cosmina CROITORU ONTOLOGIES p. 1/40 ONTOLOGIES A short tutorial with references to YAGO Cosmina CROITORU Unlocking the Secrets of the Past: Text Mining for Historical Documents Blockseminar, 21.2.-11.3.2011 ONTOLOGIES

More information

CHAPTER 7 GENERAL PROOF SYSTEMS

CHAPTER 7 GENERAL PROOF SYSTEMS CHAPTER 7 GENERAL PROOF SYSTEMS 1 Introduction Proof systems are built to prove statements. They can be thought as an inference machine with special statements, called provable statements, or sometimes

More information

Correspondence analysis for strong three-valued logic

Correspondence analysis for strong three-valued logic Correspondence analysis for strong three-valued logic A. Tamminga abstract. I apply Kooi and Tamminga s (2012) idea of correspondence analysis for many-valued logics to strong three-valued logic (K 3 ).

More information

System BV is NP-complete

System BV is NP-complete System BV is NP-complete Ozan Kahramanoğulları 1,2 Computer Science Institute, University of Leipzig International Center for Computational Logic, TU Dresden Abstract System BV is an extension of multiplicative

More information

The Classes P and NP

The Classes P and NP The Classes P and NP We now shift gears slightly and restrict our attention to the examination of two families of problems which are very important to computer scientists. These families constitute the

More information

Enforcing Data Quality Rules for a Synchronized VM Log Audit Environment Using Transformation Mapping Techniques

Enforcing Data Quality Rules for a Synchronized VM Log Audit Environment Using Transformation Mapping Techniques Enforcing Data Quality Rules for a Synchronized VM Log Audit Environment Using Transformation Mapping Techniques Sean Thorpe 1, Indrajit Ray 2, and Tyrone Grandison 3 1 Faculty of Engineering and Computing,

More information

Semantic Web Standard in Cloud Computing

Semantic Web Standard in Cloud Computing ETIC DEC 15-16, 2011 Chennai India International Journal of Soft Computing and Engineering (IJSCE) Semantic Web Standard in Cloud Computing Malini Siva, A. Poobalan Abstract - CLOUD computing is an emerging

More information

Chapter 8 The Enhanced Entity- Relationship (EER) Model

Chapter 8 The Enhanced Entity- Relationship (EER) Model Chapter 8 The Enhanced Entity- Relationship (EER) Model Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 8 Outline Subclasses, Superclasses, and Inheritance Specialization

More information

JOURNAL OF COMPUTER SCIENCE AND ENGINEERING

JOURNAL OF COMPUTER SCIENCE AND ENGINEERING Exploration on Service Matching Methodology Based On Description Logic using Similarity Performance Parameters K.Jayasri Final Year Student IFET College of engineering nishajayasri@gmail.com R.Rajmohan

More information