HY566 Semantic Web 1 Άσκηση 3 Επέκταση οντολογίας χρησιμοποιώντας DAML+OIL Κρητικός Κυριάκος (ΥΔ) Στρατάκης Μίλτος (ΜΕΤ)
HY566 Semantic Web 2 Οντολογία που χρησιμοποιήσαμε στην προηγούμενη άσκηση Οικοσύστημα επικεντρωμένο στην πανίδα (ζώα) Κατηγοριοποίηση ζώων με βάση την ομαδοποίηση που χρησιμοποιείται στη ζωολογία Πρόσθετες πληροφορίες για: – Την τοποθεσία και το κλίμα διαβίωσης – Τα μέρη του σώματος – Τον τρόπο γονιμοποίησης
HY566 Semantic Web 3 RDF Schema της Οντολογίας Ταξινόμηση σε βάθος αντί για εξειδικευμένη απόδοση ιδιοτήτων Βασικές κλάσεις: – Body_Part (Μέρος σώματος) – Climate (Κλίμα) – Location (Τοποθεσία) – Organism (Οργανισμός) – insemination (Γονιμοποίηση)
HY566 Semantic Web 4 Σχηματικό διάγραμμα της κλάσης Body_Part Body_Partlimb Main_Body talonHead tail leg : rdfs:subClassOf
HY566 Semantic Web 5 Σχηματικό διάγραμμα της κλάσης Climate Climate Warm Wet Dry Cold : rdfs:subClassOf
HY566 Semantic Web 6 Σχηματικό διάγραμμα της κλάσης Location : rdfs:subClassOf Location Water Land River Sea Lake Valley Steppe ForestDesert
HY566 Semantic Web 7 Σχηματικό διάγραμμα της κλάσης insemination inseminationby_aspresion pollination monogony amphigony : rdfs:subClassOf parthenogenesis
HY566 Semantic Web 8 Σχηματικό διάγραμμα της κλάσης Organism σε βάθος 3 : rdfs:subClassOf Organism unicellular multicellular lonesome protist mycetous Animals_and_Plants Animal Plant
HY566 Semantic Web 9 Σχηματικό διάγραμμα της κλάσης Animal σε βάθος 2 : rdfs:subClassOf Animal Animal_by_vertebra_existance Animal_by_sex_type Animal_by_reproduction_type Animal_by_eat_prefs herbivore omnivore oviparous carnivore viviparous hermaphrodite sex-separated vertebrateinvertebrate
HY566 Semantic Web 10 Σχηματικό διάγραμμα της κλάσης herbivore σε βάθος 1 herbivore : rdfs:subClassOf perissodactylous artiodactylous rodent lagomorph proboscius snailland_worm turtle
HY566 Semantic Web 11 Σχηματικό διάγραμμα της κλάσης carnivore σε βάθος 1 carnivore rustacea fish chiropterus crocodilian turtle kefalopodous cetacean amphibian : rdfs:subClassOf
HY566 Semantic Web 12 Σχηματικό διάγραμμα της κλάσης omnivore σε βάθος 1 omnivorehen primate turtle : rdfs:subClassOf
HY566 Semantic Web 13 Σχηματικό διάγραμμα της κλάσης oviparous σε βάθος 1 : rdfs:subClassOf oviparousland_warm fowl amphibian fish rustacea mollusk metazoan
HY566 Semantic Web 14 Σχηματικό διάγραμμα της κλάσης viviparous σε βάθος 1 : rdfs:subClassOf viviparousmammal
HY566 Semantic Web 15 Σχηματικό διάγραμμα της κλάσης hermaphrodite σε βάθος 1 : rdfs:subClassOf hermaphroditesnail land_worm sponge
HY566 Semantic Web 16 Σχηματικό διάγραμμα της κλάσης sex-separated σε βάθος 1 sex-separated fish male amphibian carcinoid sponge reptile insects fowl : rdfs:subClassOf female mammal
HY566 Semantic Web 17 Σχηματικό διάγραμμα της κλάσης invertebrate σε βάθος 1 invertebrate worms rustacea metazoan mollusk : rdfs:subClassOf
HY566 Semantic Web 18 Σχηματικό διάγραμμα της υποκλάσης metazoan της κλάσης invertebrate metazoansponge : rdfs:subClassOf
HY566 Semantic Web 19 Σχηματικό διάγραμμα της υποκλάσης mollusk της κλάσης invertebrate mollusk amphineyrous gasteropodous kefalopodous pelekypodous scafopodous squid octopus snail mussel : rdfs:subClassOf
HY566 Semantic Web 20 Σχηματικό διάγραμμα της υποκλάσης rustacea της κλάσης invertebrate rustacea carcinoid insects spider-like million-legged lobster bee millipede spider : rdfs:subClassOf
HY566 Semantic Web 21 Σχηματικό διάγραμμα της υποκλάσης worms της κλάσης invertebrate worms ring-worms nemathelmint h platythelminth echinococcus land_worm : rdfs:subClassOf
HY566 Semantic Web 22 Σχηματικό διάγραμμα της κλάσης vertebrate σε βάθος 1 vertebrate reptile mammal amphibian fish : rdfs:subClassOf fowl
HY566 Semantic Web 23 Σχηματικό διάγραμμα της υποκλάσης amphibian της κλάσης vertebrate : rdfs:subClassOf amphibiantail-less legless tailed frog salamander
HY566 Semantic Web 24 Σχηματικό διάγραμμα της υποκλάσης fish της κλάσης vertebrate : rdfs:subClassOf fish fatfish osteal jawless salmon dogfish bassfish shark
HY566 Semantic Web 25 Σχηματικό διάγραμμα της υποκλάσης fowl της κλάσης vertebrate : rdfs:subClassOf fowl hen cock
HY566 Semantic Web 26 Σχηματικό διάγραμμα της υποκλάσης mammal της κλάσης vertebrate mammal proboscius primate chiropterus artiodactylous : rdfs:subClassOf rodent lagomorph cetacean perissodaktylous bat elephant rabbit hare pig camel cow dolphin whale horse donkey mouse beaver manape
HY566 Semantic Web 27 Σχηματικό διάγραμμα της υποκλάσης reptile της κλάσης vertebrate reptile scrofula crocodilian squamous alligator crocodile snake turtle : rdfs:subClassOf lizard viper
HY566 Semantic Web 28 Properties των κλάσεων (1/2) rdf:Propertyrdfs:domainrdfs:range colorAnimals_and_Plantsrdfs:Literal eatsAnimalAnimals_and_Plants has_body_partAnimalBody_Part has_climateLocationClimate has_enemyAnimal heightAnimalrdfs:Literal latitudeLocationrdfs:Literal
HY566 Semantic Web 29 Properties των κλάσεων (2/2) rdf:Propertyrdfs:domainrdfs:range lives_inOrganismLocation longitudeLocationrdfs:Literal matches_withAnimal produced_methodOrganisminsemination weightAnimalrdfs:Literal ageAnimalrdfs:Literal max_ageAnimalrdfs:Literal
HY566 Semantic Web 30 Τί δεν μπόρεσε να εκφράσει η οντολογία του RDF Schema Local scope of properties – e.g. ‘Animal eats organism’ but ‘camel eats plant’ Cardinality restrictions – e.g. octopus has exactly 8 legs Special characteristics of properties – e.g. ‘has_enemy’ and ‘eats’ are inverse properties Boolean combination of classes – e.g. Animal = oviparous union viviparous Equivalence – e.g. ‘herbivore’ equals ‘Animal eats plant’
HY566 Semantic Web 31 Λύση: Επέκταση οντολογίας με χρήση DAML+OIL Επιτυχημένη δήλωση και έκφραση για: Disjoints Unions Special Properties Properties with local scope Cardinality restrictions Equivalency
HY566 Semantic Web 32 Disjoint κλάσεις της οντολογίας που εκφράστηκαν με DAML+OIL (1/3) 1. Head, limb, Main_Body 2. leg, tail, talon, wing 3. Cold, Dry, Warm, Wet 4. Land, Water 5. Desert, Forrest, Steppe, Valley 6. Lake, River, Sea 7. multicellular, unicellular 8. lonesome, protist
HY566 Semantic Web 33 Disjoint κλάσεις της οντολογίας που εκφράστηκαν με DAML+OIL (2/3) 9. Animals_and_Plants, mycetous 10. Animal, plants 11. vertebrate, invertebrate 12. oviparous, viviparous 13. male, female 14. metazoan, mollusk, rustacea, worms 15. amphineyrous, gasteropodous, kefalopodous, pelekypodous, scafopodous 16. carcinoid, insects, million-legged, spider-like
HY566 Semantic Web 34 Disjoint κλάσεις της οντολογίας που εκφράστηκαν με DAML+OIL (3/3) 17. nemathelminth, platythelminth, ring-worms 18. amphibian, fish, fowl, mammal, reptile 19. legless, tail-less, tailed 20. fatfish, jawless, osteal 21. artiodactylous, cetacean, chiropterous, lagomorph, perissodactylous, primate, proboscius, rodent 22. crocodilian, scrofula, squamous
HY566 Semantic Web 35 Κλάσεις ως union κλάσεων εκφρασμένες με DAML+OIL (1/3) 1. Body_Part = (Head U limb U Main_Body) 2. limb = (leg U tail U talon U wing) 3. Climate = (Cold U Dry U Warm U Wet) 4. Location = (Land U Water) 5. Land = (Desert U Forrest U Steppe U Valley) 6. Water = (Lake U River U Sea) 7. organism = (multicellular U unicellular) 8. unicellular = (lonesome U protist)
HY566 Semantic Web 36 Κλάσεις ως union κλάσεων εκφρασμένες με DAML+OIL (2/3) 9. multicellular = (Animals_and_Plants U mycetous) 10. Animals_and_Plants = (Animal U plants) 11. Animal = (vertebrate U invertebrate) 12. Animal_by_reproduction_type = (oviparous U viviparous) 13. sex-separated = (male U female) 14. invertebrate = (metazoan U mollusk U rustacea U worms) 15. mollusk = (amphineyrous U gasteropodous U kefalopodous U pelekypodous U scafopodous) 16. rustacea = (carcinoid U insects U million-legged U spider-like)
HY566 Semantic Web 37 Κλάσεις ως union κλάσεων εκφρασμένες με DAML+OIL (3/3) 17. worms = (nemathelminth U platythelminth U ring- worms) 18. vertebrate = (amphibian U fish U fowl U mammal U reptile) 19. amphibian = (legless U tail-less U tailed) 20. fish = (fatfish U jawless U osteal) 21. mammal = (artiodactylous U cetacean U chiropterous U lagomorph U perissodactylous U primate U proboscius U rodent) 22. reptile = (crocodilian U scrofula U squamous)
HY566 Semantic Web 38 Special properties της οντολογίας εκφρασμένες με DAML+OIL Inverse properties – eats has_enemy Symmetric property: matches_with – Το domain και το range της matches_with property αναφέρονται στην ίδια κλάση age, height, weight, latitude, longitude, max-age – Οι τιμές των ranges των παραπάνω properties είναι unique για κάθε instance των κλάσεων που έχουν τις properties αυτές
HY566 Semantic Web 39 Local scope of properties εκφρασμένες σε DAML+OIL H max_age property παίρνει συγκεκριμένη τιμή για Animal κλάσεις και υποκλάσεις – π.χ. για την κλάση landworm, η max_age property παίρνει μόνο την τιμή 1 Πληροφορίες οι οποίες συμπεριλαμβάνονταν σε instance επίπεδο, τώρα εμπεριέχονται στο σχήμα οπότε και δεν χρειάζεται να τις επαναλαμβάνουμε σε κάθε instance. Π.χ. για την κλάση landworm – Η max_age property παίρνει μόνο την τιμή 1 – Το range της has_enemy property είναι (cock U hen U man U mouse U turtle) – Το range της lives_in property είναι μια subClassOf Land – To range της has_climate property είναι η κλάση Wet – To range της produced_method property είναι η κλάση monogony
HY566 Semantic Web 40 Cardinality restrictions εκφρασμένες με DAML+OIL Ενδεικτικά restrictions που χρησιμοποιήθηκαν: A man has exactly 2 legs, 2 talons, 1 head and 1 Main_Body An octopus has exactly 8 legs and 1 head Height and weight properties have cardinality 1 Latitude and longitude properties have cardinality 1
HY566 Semantic Web 41 Equivalencies εκφρασμένες με DAML+OIL Ενδεικτικά equivalencies που χρησιμοποιήθηκαν: Amphibian sameClassAs Animal lives_in (Water U Land) Herbivore sameClassAs Animal eats Plant Omnivore sameClassAs Animal eats (Plant U Animal) Sex-separated sameClassAs Animal produced_method amphigony
HY566 Semantic Web 42 Special case: matches_with property Στην κλάση Animal, βάλαμε restriction πάνω στο domain και range της property αυτής – domain(matches_with): (male Animal) – range(matches_with): (female Animal) Μετέπειτα, για κάθε leaf υποκλάση της κλάσης Animal, βάλαμε συγκεκριμένα restrictions με βάση την υποκλάση αυτή. Π.χ. για την leaf κλάση turtle: – domain(matches_with): (male turtle) – range(matches_with): (female turtle)