Slide 1

Slide 1 text

Semantic Wizardry, Logic [Zebra] Puzzles, and Java Rustam Mehmandarov @RMehmandarov

Slide 2

Slide 2 text

@RMEHMANDAROV 2 ABOUT ME

Slide 3

Slide 3 text

@RMEHMANDAROV 3 I am Rustam Mehmandarov HELLO!

Slide 4

Slide 4 text

@RMEHMANDAROV ABOUT YOU 4

Slide 5

Slide 5 text

@RMEHMANDAROV AGENDA 5

Slide 6

Slide 6 text

@RMEHMANDAROV 6

Slide 7

Slide 7 text

@RMEHMANDAROV THE PUZZLE 1. There are five houses. 2. The Englishman lives in the red house. 3. The Spaniard owns the dog. 4. Coffee is drunk in the green house. 5. The Ukrainian drinks tea. 6. The green house is immediately to the right of the ivory house. 7. The Fuji owner owns snails. 8. The Giant owner lives in the yellow house. 9. Milk is drunk in the middle house. 10. The Norwegian lives in the first house. 11. The man who owns Kona lives in the house next to the man with the fox. 12. The Giant owner lives in a house next to the house where the horse is kept. 13. The Scott owner drinks orange juice. 14. The Japanese owns Trek. 15. The Norwegian lives next to the blue house. Now, who drinks water? Who owns the zebra? 7

Slide 8

Slide 8 text

@RMEHMANDAROV THE PUZZLE ? 8

Slide 9

Slide 9 text

@RMEHMANDAROV 9 AGENDA • Theory in general • Semantic technologies – RDF – OWL – Reasoning

Slide 10

Slide 10 text

@RMEHMANDAROV SEMANTICS LOVES 10

Slide 11

Slide 11 text

@RMEHMANDAROV SEMANTICS LOVES Subject Object Predicate TRAVELS TO 11

Slide 12

Slide 12 text

@RMEHMANDAROV RDF, RDFS, OWL RDF RDFS OWL Vocabulary Data Interchange + rdfs:Class rdfs:subClassOf rdfs:domain / rdfs:range + owl:Restriction owl:intersectionOf owl:equivalentClass 12

Slide 13

Slide 13 text

@RMEHMANDAROV SYNTAX EXPLAINED QName URIs (with prefixes) Namespaces Blank Nodes 13

Slide 14

Slide 14 text

@RMEHMANDAROV RDF GRAPHS 14

Slide 15

Slide 15 text

@RMEHMANDAROV REASONING 15

Slide 16

Slide 16 text

@RMEHMANDAROV EXAMPLES 16

Slide 17

Slide 17 text

@RMEHMANDAROV EXAMPLE 1 1. Read a simple "Hello, World!" statement in RDF (in Turtle format) from file. 2. Print all individuals in the model with Jena. 3. Verify that we have only one individual that looks like this: (:Joe :hasSentMessage 'Hello World!'^^http://www.w3.org/2001/XMLSchema#string) 4. Achievement unlocked! 17

Slide 18

Slide 18 text

@RMEHMANDAROV THE TURTLE FILE 18

Slide 19

Slide 19 text

@RMEHMANDAROV 19

Slide 20

Slide 20 text

@RMEHMANDAROV EXAMPLE 2 1. Recreate the model from Exercise 1 with Jena 2. Print the model in RDF (TTL) => Same as Exercise 1 3. Achievement unlocked! Jena level 1. The basics of Jena mastered you have, young Padawan. 20

Slide 21

Slide 21 text

@RMEHMANDAROV 21

Slide 22

Slide 22 text

@RMEHMANDAROV MORE REASONING AND JENA Frank Mammal Anna Human is is hasChild domain 22

Slide 23

Slide 23 text

@RMEHMANDAROV MORE REASONING AND JENA 23

Slide 24

Slide 24 text

@RMEHMANDAROV THE PUZZLE DEMO 25

Slide 25

Slide 25 text

@RMEHMANDAROV WANT TO TRY IT YOURSELF? Code: https://github.com/mehmandarov/ zebra-puzzle-workshop 26

Slide 26

Slide 26 text

@RMEHMANDAROV 27 Any questions ? • @RMehmandarov • [email protected] • https://mehmandarov.com THANKS!