A Transition from RDF to Petri Nets Jan Paredaens Universiteit - - PowerPoint PPT Presentation

a transition from rdf to petri nets
SMART_READER_LITE
LIVE PREVIEW

A Transition from RDF to Petri Nets Jan Paredaens Universiteit - - PowerPoint PPT Presentation

A Transition from RDF to Petri Nets Jan Paredaens Universiteit Antwerpen 11.11.11 Jan Paredaens A Transition from RDF to Petri Nets 1/44 RDF Constraints in RDF WikiPedia Petri Nets Decidability - Axioms Conclusion Jan Paredaens A


slide-1
SLIDE 1

A Transition from RDF to Petri Nets

Jan Paredaens

Universiteit Antwerpen

11.11.11

Jan Paredaens A Transition from RDF to Petri Nets 1/44

slide-2
SLIDE 2

RDF Constraints in RDF WikiPedia Petri Nets Decidability - Axioms Conclusion

Jan Paredaens A Transition from RDF to Petri Nets 2/44

slide-3
SLIDE 3

RDF

Ramanathan V. Guha 1965 - 1997 RDF - Netscape Corp.

Jan Paredaens A Transition from RDF to Petri Nets 3/44

slide-4
SLIDE 4

RDF

RDF (Resource Description Framework) is a W3C recommendation for publishing structured data on the web. RDF databases arrange information in simple triples consisting of a subject, a predicate and an object.

exstaff:85740 exterms:addressUSA _:johnaddress . exstaff:85741 exterms:addressUSA _:anaddress . _:johnaddress exterms:street "1501 Grant Avenue" . _:johnaddress exterms:city "Bedford" . _:johnaddress exterms:state "Massachusetts" . _:johnaddress exterms:postalCode "01730" . _:exterms:addressUSA exterms:country "USA" . _:exterms:addressNL exterms:country "NL" . Jan Paredaens A Transition from RDF to Petri Nets 4/44

slide-5
SLIDE 5

RDF

An RDF-Graph is a finite set of triples (s, p, o).

Jan Paredaens A Transition from RDF to Petri Nets 5/44

slide-6
SLIDE 6

RDF

An RDF-Graph is a finite set of triples (s, p, o). As such it is one big ternary relation.

Jan Paredaens A Transition from RDF to Petri Nets 6/44

slide-7
SLIDE 7

RDF

An RDF-Graph is a finite set of triples (s, p, o). As such it is one big ternary relation. Semantically we cannot use the relational model.

Jan Paredaens A Transition from RDF to Petri Nets 7/44

slide-8
SLIDE 8

RDF

An RDF-Graph is a finite set of triples (s, p, o). As such it is one big ternary relation. Semantically we cannot use the relational model. For constraints we cannot use keys, functional dependencies, referential integrity, ...

Jan Paredaens A Transition from RDF to Petri Nets 8/44

slide-9
SLIDE 9

RDF

An RDF-Graph is a finite set of triples (s, p, o). As such it is one big ternary relation. Semantically we cannot use the relational model. For constraints we cannot use keys, functional dependencies, referential integrity, ... We have to use patterns and embeddings.

Jan Paredaens A Transition from RDF to Petri Nets 9/44

slide-10
SLIDE 10

Constraints in RDF

Ted Codd 1923 - 2003 1970 Relational DB

Jan Paredaens A Transition from RDF to Petri Nets 10/44

slide-11
SLIDE 11

Constraints in RDF

Constraints in RDF are mainly used for:

◮ Consistency checking. ◮ Consistent query answering. ◮ Data cleaning. ◮ Semantic query optimization. ◮ Distributed data management.

Jan Paredaens A Transition from RDF to Petri Nets 11/44

slide-12
SLIDE 12

Constraints in RDF

exstaff:85740 exterms:addressUSA _:johnaddress . exstaff:85741 exterms:addressUSA _:anaddress . _:johnaddress exterms:street "1501 Grant Avenue" . _:johnaddress exterms:city "Bedford" . _:johnaddress exterms:state "Massachusetts" . _:johnaddress exterms:postalCode "01730" . _:exterms:addressUSA exterms:country "USA" . _:exterms:addressNL exterms:country "NL" .

Triple Generating Constraint

For every address in the USA we need a state. TGC = {($x, exterms:addressUSA, $y)}, {($y, exterms:state, $z)} {($x, exterms:addressUSA, $y)}, {($y, exterms:state, $z)}

Jan Paredaens A Transition from RDF to Petri Nets 12/44

slide-13
SLIDE 13

Constraints in RDF

exstaff:85740 exterms:addressUSA _:johnaddress . exstaff:85741 exterms:addressUSA _:anaddress . _:johnaddress exterms:street "1501 Grant Avenue" . _:johnaddress exterms:city "Bedford" . _:johnaddress exterms:state "Massachusetts" . _:johnaddress exterms:postalCode "01730" . _:exterms:addressUSA exterms:country "USA" . _:exterms:addressNL exterms:country "NL" .

Functional Constraint

Every address in the USA has at most one state. FC = {($x, exterms:addressUSA, $y), ($y, exterms:state, $z)}, y → z

Jan Paredaens A Transition from RDF to Petri Nets 13/44

slide-14
SLIDE 14

Constraints in RDF

exstaff:85740 exterms:addressUSA _:johnaddress . exstaff:85741 exterms:addressUSA _:anaddress . _:johnaddress exterms:street "1501 Grant Avenue" . _:johnaddress exterms:city "Bedford" . _:johnaddress exterms:state "Massachusetts" . _:johnaddress exterms:postalCode "01730" . _:exterms:addressUSA exterms:country "USA" . _:exterms:addressNL exterms:country "NL" .

Forbidding Constraint

Every address in the Netherlands has no state. FBC = {($x, exterms:addressNL, $y)}, {($y, exterms:state, $z)}

Jan Paredaens A Transition from RDF to Petri Nets 14/44

slide-15
SLIDE 15

Constraints in RDF

exstaff:85740 exterms:addressUSA _:johnaddress . exstaff:85741 exterms:addressUSA _:anaddress . _:johnaddress exterms:street "1501 Grant Avenue" . _:johnaddress exterms:city "Bedford" . _:johnaddress exterms:state "Massachusetts" . _:johnaddress exterms:postalCode "01730" . _:exterms:addressUSA exterms:country "USA" . _:exterms:addressNL exterms:country "NL" .

(in)Equality Generating Constraint

For every address in the USA the city and the state are different EGC = {($x, exterms:addressUSA, $y)}, {($y, exterms:state, $z), ($y, exterms:city, $z′)}, $z = $z′

Jan Paredaens A Transition from RDF to Petri Nets 15/44

slide-16
SLIDE 16

WikiPedia

Jimmy Wales 1966 - 2003 Wikipedia

Jan Paredaens A Transition from RDF to Petri Nets 16/44

slide-17
SLIDE 17

WikiPedia

DBpedia is an open-access, large RDF repository that stores encyclopedic information retrieved from Wikipedia, and other

  • URLs. It contains 1 billion triples.

Jan Paredaens A Transition from RDF to Petri Nets 17/44

slide-18
SLIDE 18

WikiPedia

Every person in DBpedia should have at most one birth date. {($person, dbo : birthDate, $y), ($person, dbo : birthDate, $z)}, {($y = $z)}}. Ask {?person dbo:birthDate ?y. ?person dbo:birthDate ?z. FILTER(?y != ?z)} As the total number of people with a recorded birth date is 465498, we conclude that 0.72% of all people on DBpedia violate this constraint!

Jan Paredaens A Transition from RDF to Petri Nets 18/44

slide-19
SLIDE 19

WikiPedia

The next constraint expresses that no person is born after his/her death: Ask {?person dbo:birthDate ?birth . ?person dbo:deathDate ?death . FILTER (?death<?birth)} This constraint is violated 150 times.

Jan Paredaens A Transition from RDF to Petri Nets 19/44

slide-20
SLIDE 20

WikiPedia

When checking the constraint that no extinct bird still live we get a violation: Ask{?animal dbpprop:extinct ?z. ?animal dbpprop:classis :Bird. ?animal dbpprop:status ?y FILTER (?y != "EX"@en )} This constraint is not satisfied by the Antillean Cave Rail (Nesotrochis debooyi).

Jan Paredaens A Transition from RDF to Petri Nets 20/44

slide-21
SLIDE 21

Petri Nets

Carl Adam Petri 1926 - 2010 1962 Petri Net

Jan Paredaens A Transition from RDF to Petri Nets 21/44

slide-22
SLIDE 22

Petri Nets

We represent a Petri Net ¡¡TEKENING¿¿ by an RDF Graph:

$p_1$ $t$ $p3$ Jan Paredaens A Transition from RDF to Petri Nets 22/44

slide-23
SLIDE 23

Petri Nets

TGC1 = {($p1, $t, $p3), ($p2, $t, $p4)}, {($p1, $t, $p4)}

Jan Paredaens A Transition from RDF to Petri Nets 23/44

slide-24
SLIDE 24

Petri Nets

TGC1 = {($p1, $t, $p3), ($p2, $t, $p4)}, {($p1, $t, $p4)} TGC2 = {($p1, $t, $p2)}, {($p1, Place, $p1), ($p2, Place, $p2),

Jan Paredaens A Transition from RDF to Petri Nets 24/44

slide-25
SLIDE 25

Petri Nets

TGC1 = {($p1, $t, $p3), ($p2, $t, $p4)}, {($p1, $t, $p4)} TGC2 = {($p1, $t, $p2)}, {($p1, Place, $p1), ($p2, Place, $p2), FB1 = {($p1, $t, $p2), ($t, Place, $t)}

Jan Paredaens A Transition from RDF to Petri Nets 25/44

slide-26
SLIDE 26

Petri Nets

TGC1 = {($p1, $t, $p3), ($p2, $t, $p4)}, {($p1, $t, $p4)} TGC2 = {($p1, $t, $p2)}, {($p1, Place, $p1), ($p2, Place, $p2), FB1 = {($p1, $t, $p2), ($t, Place, $t)} Connected.

Jan Paredaens A Transition from RDF to Petri Nets 26/44

slide-27
SLIDE 27

Petri Nets

Two problems ¡¡TEKENING¿¿ TGC1 = {($p, Input, $t)}, {($p, Place, $p)}

Jan Paredaens A Transition from RDF to Petri Nets 27/44

slide-28
SLIDE 28

Petri Nets

Two problems ¡¡TEKENING¿¿ TGC1 = {($p, Input, $t)}, {($p, Place, $p)} TGC2 = {($t, Output, $p)}, {($p, Place, $p)}

Jan Paredaens A Transition from RDF to Petri Nets 28/44

slide-29
SLIDE 29

Petri Nets

Two problems ¡¡TEKENING¿¿ TGC1 = {($p, Input, $t)}, {($p, Place, $p)} TGC2 = {($t, Output, $p)}, {($p, Place, $p)} FBC1 = {($p, Input, $t), ($t, Place, $t)}

Jan Paredaens A Transition from RDF to Petri Nets 29/44

slide-30
SLIDE 30

Petri Nets

Two problems ¡¡TEKENING¿¿ TGC1 = {($p, Input, $t)}, {($p, Place, $p)} TGC2 = {($t, Output, $p)}, {($p, Place, $p)} FBC1 = {($p, Input, $t), ($t, Place, $t)} FBC2 = {($t, Output, $p), ($t, Place, $t)}

Jan Paredaens A Transition from RDF to Petri Nets 30/44

slide-31
SLIDE 31

Petri Nets

Two problems ¡¡TEKENING¿¿ TGC1 = {($p, Input, $t)}, {($p, Place, $p)} TGC2 = {($t, Output, $p)}, {($p, Place, $p)} FBC1 = {($p, Input, $t), ($t, Place, $t)} FBC2 = {($t, Output, $p), ($t, Place, $t)} EGC = {($x1, $x2, $x3)}, $x2 = Input ∨ $x2 = Output ∨ $x2 = Place

Jan Paredaens A Transition from RDF to Petri Nets 31/44

slide-32
SLIDE 32

Petri Nets

Two problems ¡¡TEKENING¿¿ TGC1 = {($p, Input, $t)}, {($p, Place, $p)} TGC2 = {($t, Output, $p)}, {($p, Place, $p)} FBC1 = {($p, Input, $t), ($t, Place, $t)} FBC2 = {($t, Output, $p), ($t, Place, $t)} EGC = {($x1, $x2, $x3)}, $x2 = Input ∨ $x2 = Output ∨ $x2 = Place Connected.

Jan Paredaens A Transition from RDF to Petri Nets 32/44

slide-33
SLIDE 33

Decidability - Axioms

Alan Turing 1912 - 1954 1936 Turing Machine

Jan Paredaens A Transition from RDF to Petri Nets 33/44

slide-34
SLIDE 34

Decidability - Axioms

◮ More constraints on RDF;

Jan Paredaens A Transition from RDF to Petri Nets 34/44

slide-35
SLIDE 35

Decidability - Axioms

◮ More constraints on RDF; ◮ Also a recursive constraint;

Jan Paredaens A Transition from RDF to Petri Nets 35/44

slide-36
SLIDE 36

Decidability - Axioms

◮ More constraints on RDF; ◮ Also a recursive constraint; ◮ Taking blanc nodes into account;

Jan Paredaens A Transition from RDF to Petri Nets 36/44

slide-37
SLIDE 37

Decidability - Axioms

◮ More constraints on RDF; ◮ Also a recursive constraint; ◮ Taking blanc nodes into account; ◮ Decidability Results;

Jan Paredaens A Transition from RDF to Petri Nets 37/44

slide-38
SLIDE 38

Decidability - Axioms

◮ More constraints on RDF; ◮ Also a recursive constraint; ◮ Taking blanc nodes into account; ◮ Decidability Results; ◮ Complexity Results;

Jan Paredaens A Transition from RDF to Petri Nets 38/44

slide-39
SLIDE 39

Decidability - Axioms

◮ More constraints on RDF; ◮ Also a recursive constraint; ◮ Taking blanc nodes into account; ◮ Decidability Results; ◮ Complexity Results; ◮ Sound and Complete Sets of Axioms.

Jan Paredaens A Transition from RDF to Petri Nets 39/44

slide-40
SLIDE 40

Conclusion

Jan Paredaens A Transition from RDF to Petri Nets 40/44

slide-41
SLIDE 41

Conclusion

1879 - 1955

Jan Paredaens A Transition from RDF to Petri Nets 41/44

slide-42
SLIDE 42

Conclusion

1879 - 1955

Theories should be as simple as possible ...

Jan Paredaens A Transition from RDF to Petri Nets 42/44

slide-43
SLIDE 43

Conclusion

1879 - 1955

Theories should be as simple as possible ... ... but not simpler.

Jan Paredaens A Transition from RDF to Petri Nets 43/44

slide-44
SLIDE 44

Conclusion

Video

Jan Paredaens A Transition from RDF to Petri Nets 44/44