Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

1 Σημασιολογικός Ιστός (Πλαίσιο RDF, Γλώσσα Οντολογιών OWL, γλώσσες ερωτήσεων)

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "1 Σημασιολογικός Ιστός (Πλαίσιο RDF, Γλώσσα Οντολογιών OWL, γλώσσες ερωτήσεων)"— Μεταγράφημα παρουσίασης:

1 1 Σημασιολογικός Ιστός (Πλαίσιο RDF, Γλώσσα Οντολογιών OWL, γλώσσες ερωτήσεων)

2 Τι δεν είναι ο Σημασιολογικός Ιστός Δεν είναι τα tags που έχουν οι HTML σελίδες. Stamp Collecting World Πρόκειται συνήθως για λέξεις κλειδιά που απλά βοηθούν τις μηχανές αναζήτησης. Τοποθετούνται αυθαίρετα και χωρίς περιορισμούς μόνο από τους ίδιους τους συγγραφείς των σελίδων ή από τα προγράμματα που παράγουν τις σελίδες αυτές.

3 Τι δεν είναι ο Σημασιολογικός Ιστός Δεν είναι ούτε η XML! Car BMW Παρέχει μόνο συντακτική πληροφορία. DTDs: κανόνες που περιορίζουν την σύνταξη. XML schema: πληροφορία τύπων (data types).

4 Τι δεν είναι ο Σημασιολογικός Ιστός Δεν είναι ούτε η εφαρμογή AI στον Ιστό! Όπως θα φανεί παρακάτω, οι τεχνικές του Σημασιολογικού Ιστού δεν παρέχουν πολύπλοκους μηχανισμούς εξαγωγής γνώσης. Δεν υποστηρίζουν χωροχρονικές λογικές....ούτε ασαφείς λογικές....ούτε πολύπλοκους μηχανισμούς συμπερασμάτων (theorem provers, κ.λ.π.).

5 Τι είναι ο Σημασιολογικός Ιστός σύμφωνα με τον πατέρα του “... a goal of the Web was that, if the interaction between person and hypertext could be so intuitive that the machine-readable information space gave an accurate representation of the state of people's thoughts, interactions, and work patterns, then machine analysis could become a very powerful management tool, seeing patterns in our work and facilitating our working together through the typical problems which beset the management of large organizations.” *…από Bechhofer S. et al., Tutorial on OWL, ISWC’03 Conf.

6 Τι πρόβλημα έχουμε με τον (απλό) Ιστό ως έχει... Μηχανές Αναζήτησης Η χρήση λέξεων κλειδιών περιορίζει σημαντικά τις δυνατότητες εύρεσης σελίδων. Όταν δεν υπάρχει μια λέξη κλειδί σε μία σελίδα τότε είναι δύσκολο για μια μηχανή να την ανακτήσει. Δείτε τι παίρνει κάποιος αν δώσει τις παρακάτω λέξεις στο Google: μπενάκη, γκίκας, έργα

7 -7--7-

8 Τι πρόβλημα έχουμε με τον Ιστό ως έχει... Δεν υπάρχει πουθενά η κρίσιμη σελίδα...

9 -9--9-

10 -10- Τι πρόβλημα έχουμε με τον Ιστό ως έχει......και αυτό γιατί δεν υπάρχει κάποια λέξη κλειδί που να περιγράφει ότι η σελίδα αυτή περιέχει έργα του συγκεκριμένου καλλιτέχνη. Μπορούμε να συμβιβαστούμε, απαιτώντας από το Μουσείο Μπενάκη να έχει tags στην συγκεκριμένη html σελίδα, δηλώντας τις λέξεις κλειδιά έργα, γκίκας, κ.λ.π. Για να μην έχουμε πρόβλημα και σε άλλες αναζητήσεις μας, πρέπει όλα τα μουσεία να λύσουν το πρόβλημα με τον ίδιο τρόπο (π.χ. ακόμα και ένα Γερμανικό Μουσείο να δηλώνει tag έργα)! Ανέφικτο...

11 -11- Τι πρόβλημα έχουμε με τον Ιστό ως έχει......ακόμα και αν το Μουσείο Μπενάκη βάλει tags στην συγκεκριμένη html σελίδα, η σελίδα δεν θα ανακτηθεί αν ρωτήσουμε για κάποιο συγκεκριμένο έργο του. Αν απαιτήσουμε την χρήση XML, τότε το πρόβλημα παραμένει (διαφορετικές ονομασίες, δομή,...):......

12 -12- Τι πρόβλημα έχουμε με τον Ιστό ως έχει......σκεφτείτε αντίστοιχα προβλήματα σε εφαρμογές ηλεκτρονικού εμπορίου σε κατανεμημένες εφαρμογές ανταλλαγής δεδομένων σε πύλες καταλόγων (portals) Γενικά υπάρχει ένα πρόβλημα έλλειψης κοινής ορολογίας, οργάνωσης και σημασιολογίας στα δεδομένα που διακινούνται στον Ιστό. Το πρόβλημα πηγάζει στο ότι δεν μπορούμε να υποχρεώσουμε τους χρήστες του Ιστού να οργανώνουν τα δεδομένα τους όλοι με τον ίδιο τρόπο.

13 -13- Τι πρόβλημα έχουμε με τον Ιστό ως έχει... Ο Σημασιολογικός Ιστός στοχεύει στον εμπλουτισμό του Ιστού με σημασιολογική πληροφορία ώστε: τα δεδομένα να είναι κατανοητά σε επίπεδο μηχανής ώστε να διευκολύνεται η επεξεργασία και αναζήτησή τους. να υπάρχει κοινή ορολογία, οργάνωση και σημασιολογία στα δεδομένα που διακινούνται στον Ιστό, στο βαθμό που αυτό είναι εφικτό. παράδειγμα: σε εφαρμογές περιορισμένου πεδίου γνώσης. να υπάρχει η ευελιξία σύνθεσης της σημασιολογικής πληροφορίας και δημιουργία νέας. Τεχνολογίες Σημασιολογικού Ιστού: RDF/OWL

14 -14- Πλαίσιο RDF RDF: Resource Description Framework (w3c.org) Resources: Web σελίδες, literals (string, int…), οντότητες, έννοιες,...και ότι άλλο βάζει η φαντασία σας! Description: Ιδιότητες και χαρακτηριστικά μιας σελίδας, συσχετίσεις μεταξύ σελίδων Το RDF είναι ένας πολύ απλός τρόπος δήλωσης των ιδιοτήτων και σχέσεων για Web σελίδες. RDF = σύνολο από statements Statement: (resource, property, resource), γνωστό ως RDF triple. Θα το δείτε και ως: (subject, property, object)

15 -15- Πλαίσιο RDF Παράδειγμα δήλωσης σε φυσική γλώσσα των ιδιοτήτων και σχέσεων Web σελίδων: Η σελίδα δημιουργήθηκε από τον Θοδωρή (…λέμε τώρα!) Δεν είναι τόσο απλά τα πράγματα ώστε να δηλώσετε κάτι σαν (www.benaki.gr/exhibitions/gr/index.htm, creator, theodore) ως statement. Το RDF χρησιμοποιεί URI’s (Uniform Resource Identifiers) για να αναφερθεί σε resources και properties. Παράδειγμα URI: html link

16 -16- Πλαίσιο RDF Ως URI για την σελίδα του παραδείγματος θα χρησιμοποιήσουμε το html link....άρα το πρώτο μέρος του statement γίνεται: (http://www.benaki.gr/exhibitions/gr/index.htm, …, …). Είναι συνηθισμένο στο RDF για συντομία να χρησιμοποιούνται namespaces, π.χ. ben: για το πρώτο μέρος του statement γίνεται τελικά: (ben:index.htm, …, …) Η σελίδα δημιουργήθηκε από τον Θοδωρή (παράδειγμα)

17 -17- Πλαίσιο RDF Ως URI για τον Θοδωρή μπορούμε να χρησιμοποιήσουμε την Web σελίδα του. Οπότε, το τρίτο μέρος του statement γίνεται: (ben:index.html,...,http://www.dblab.ece.ntua.gr/~dalamag) ή με χρήση namespaces: (ben:index.html,…,dblab:dalamag) όπου dblab αναφέρεται στο Η σελίδα δημιουργήθηκε από τον Θοδωρή (παράδειγμα)

18 -18- Πλαίσιο RDF Το δεύτερο μέρος του statement αφορά το property createdby. Η έννοια του URI είναι πιο γενική από το html link υπάρχουσας σελίδας. Μπορεί να είναι ακόμα και ένα link εικονικό, που δεν αντιστοιχεί σε υπαρκτή σελίδα. Π.χ.: dblab:elements/creator ή ακόμα να χρησιμοποιήσουμε έτοιμα URIs για property που άλλοι έχουν ετοιμάσει! Η σελίδα δημιουργήθηκε από τον Θοδωρή (παράδειγμα)

19 -19- Πλαίσιο RDF Παράδειγμα έτοιμων URIs για properties: (namespace dc) DUBLIN CORE: συλλογή μεταδεδομένων Μπορούμε φυσικά και να έχουμε την δική μας συλλογή από properties! Aν δανειστούμε το dc:creator, το statement γίνεται: (ben:index.html, dc:creator, dblab:dalamag), όπου: ben:  dblab:  dc:  Η σελίδα δημιουργήθηκε από τον Θοδωρή (παράδειγμα)

20 -20- Πλαίσιο RDF Το statement (ben:index.html, dc:creator, dblab:dalamag) δεν δίνει το όνομα του συγγραφέα της σελίδας. Μπορούμε να προσθέσουμε άλλo ένα statement: (dblab:dalamag, dc:name,’Θοδωρής’) To ‘Θοδωρής’ είναι literal (string) Η σελίδα δημιουργήθηκε από τον Θοδωρή (παράδειγμα)

21 -21- Πλαίσιο RDF Tα RDF statement έχουν XML αναπαράσταση: 1. (ben:index.html,dc:creator,dblab:dalamag) 2. (dblab:dalamag,dc:name,’Θοδωρής’) Θοδωρής

22 -22- Πλαίσιο RDF H κωδικοποίηση RDF statement με την XML γλώσσα βοηθά στην ενσωμάτωσή τους στις html σελίδες: XML/RDF statements προστίθενται στο περιεχόμενο των ιστοσελίδων (χωρίς να φαίνονται) και προσθέτουν σημασιολογία. Η κωδικοποίηση RDF statement με την XML γλώσσα δεν βοηθά στην παρουσίαση, την κατανόηση και την μελέτη του RDF πλαισίου. Μοντέλο γράφου για RDF Κόμβοι: resources, literals Ακμές: properties

23 -23- Πλαίσιο RDF ben:index.html dblab:dalamag dc:creator dc:name 1. (ben:index.html,dc:creator,dblab:dalamag) 2. (dblab:dalamag,dc:name,’Θοδωρής’) 3. dc: Η σελίδα δημιουργήθηκε από τον Θοδωρή, που έχει (παράδειγμα) RDF graph RDF statements Resource Property Literal

24 -24- Πλαίσιο RDF Χρήση containers για περιγραφή ομάδας από resources Bag (rdf:Bag): resources (πιθανά με επαναλήψεις), χωρίς να ενδιαφέρει η διάταξη. Sequence (rdf:Seq): resources (πιθανά με επαναλήψεις) με διάταξη. Alternative (rdf:Alt): εναλλακτικές μορφές ενός resource. Παράδειγμα: οι συλλογές στο Μουσείο Μπενάκη

25 -25-

26 -26- Πλαίσιο RDF ben:byzantine/gr/ ben:./ ben:heirlooms/gr ben:paintings/gr ben:postbyzantine/gr ben:byzantine/gr/ 3. ben:postbyzantine/gr/ 4. ben:heirlooms/gr/ 5. ben:paintings/gr/ 6. ben: i: i:_1 i:_2 i:_3 i:_4 ben:prehistorictoroman/gr/ i:_5 Empty node for complex resources

27 -27- Πλαίσιο RDF ben:byzantine/gr/ ben:./ ben:heirlooms/gr ben:paintings/gr ben:postbyzantine/gr Το Μουσείο Μπενάκη (www.benaki.gr) έχει 5 συλλογές: Προϊστορική, Βυζαντινή, Υστεροβυζαντινή, Ιστορικά Κειμήλια, Ζωγραφική i:_1 i:_2 i:_3 i:_4 ben:prehistorictoroman/gr/ i:_5 Σημασιολογική Πληροφορία αποτυπωμένη σε RDF

28 -28- RDF Schema RDF: δήλωση των ιδιοτήτων και σχέσεων για Web σελίδες μέσω statements. RDF Schema: είναι ένα σύστημα τύπων (type system) για RDF statements. Integer i = 5 μεταβλητή i, τύπος Integer, value = 5 Window win = new Window(“Title”)) μεταβλητή win, κλάση Window, instance το συγκεκριμένο παράθυρο rdf:type Painter κλάση (class) Painter resource που είναι instance της class Painter.

29 -29- RDF Schema Ιεραρχίες κλάσεων Ορισμός class Class Painter: (Painter, rdf:type, rdfs:Class) Class Artist: (Artist, rdf:type, rdfs:Class) Class Sculptor: (Sculptor, rdf:type, rdfs:Class) H Painter είναι υποκλάση της Artist: (Painter, rdfs:subClassOf, Artist) Η Sculptor είναι υποκλάση της Artist: (Sculptor, rdfs:subClassOf, Artist) Δείτε τα σε γράφο!

30 -30- RDF Schema Χαρακτηριστικά (properties) Συσχετίζουν κλάση με κλάση ή κλάση με literal! (μην τα συγχέετε με τα attributes!) Ορισμός properties paints και technique (paints, rdf:type, rdfs:Property) (technique, rdf:type, rdfs:Property) Συσχέτιση class Painter με class Painting (paints, rdfs:domain, Painter) (paints, rdfs:range, Painting) Συσχέτιση class Painting με literal String (technique, rdfs:domain, Painting) (technique, rdfs:range, String) Δείτε τα σε γράφο!

31 -31- RDF Schema *…από Karvounarakis G. et al: RQL: A Declarative Query Language for RDF, WWW’02 Conf. Literal Class Property rdfs:range(paints) rdfs:domain(paints) Subclass Property Class Literal Property Subclass

32 -32- RDF Schema Class Literal Property Subclass Subproperty Subproperties To RDF Schema ορίζει και ιεραρχίες από properties (property/subproperty) κατ’ αναλογία με την ιεραρχία κλάσεων.

33 -33- RDF Schema Τα resources δηλώνονται ως class instances και τα properties ως property instances. Θυμηθείτε: (www.benaki.gr/collections/ghika/bio/gr/index.htm, rdf:type, Painter) κλάση (class) Painter resource που είναι instance της class Painter Ας δούμε την συγκεκριμένη σελίδα...

34 -34- RDF Schema Τα resources δηλώνονται ως class instances και τα properties ως property instances. Θυμηθείτε: rdf:type Painter κλάση (class) Painter resource που είναι instance της class Painter.

35 -35- RDF Schema ghart:1075.jpg ben:ghika/bio/gr/index.html ben:  ghart:  rdf:type (instance) dc:creator ghart:1342.jpg dc:creator Resources Schema η σελίδα για τον Γκίκα

36 -36- RDF/S Σύγκριση με το μοντέλο E-R (οντοτήτων-συσχετίσεων) Entity = Class Relationship = Property (class-to-class) Attribute = Property (class-to-literal) Δεν ορίζονται στο E-R έννοιες subentity/subattribute Δεν υπάρχουν containers Γενικά το RDF/S είναι πολύ πιο πλούσιο μοντέλο Σύγκριση με το μοντέλο Ο-Ο (αντικειμενοστρεφές) Και τα δύο ορίζουν classes Και τα δύο ορίζουν ιεραρχίες από classes Και τα δύο ορίζουν συσχετίσεις μεταξύ κλάσεων Το Ο-Ο δεν ορίζει subattributes

37 -37- RDF/S Σύγκριση με το μοντέλο Ο-Ο (…συνέχεια) Τα properties στο RDF/S είναι αυθύπαρκτες οντότητες. Αντίθετα, στο Ο-Ο αποτελούν πάντα μέρος μιας class. Αυτό είναι πολύ σημαντικό πλεονέκτημα γιατί ευνοεί την επαναχρησιμοποίηση των properties. Γενικά το RDF/S μοιάζει με το Ο-Ο. Σύγκριση με το μοντέλο XML/Semistructured Καμμία σχέση!!! Τα μοντέλα XML/Semistructured παρέχουν μόνο συντακτική πληροφορία (ή το πολύ πληροφορία τύπου δεδομένων στο XML Schema) H XML χρησιμοποιείται ως μέσο αναπαράστασης RDF/S και μόνο!

38 -38- RDF/S στον Ιστό H κωδικοποίηση RDF/S με την XML γλώσσα βοηθά στην ενσωμάτωσή τους στις html σελίδες: XML/RDF/S κώδικας προστίθεται στο περιεχόμενο των ιστοσελίδων (χωρίς να φαίνεται) και προσθέτει σημασιολογία. Δείτε ξανά τι παίρνει κάποιος αν δώσει τις παρακάτω λέξεις στο Google: μπενάκη, γκίκας, έργα

39 -39-

40 -40- RDF/S στον Ιστό Δεν υπάρχει πουθενά η κρίσιμη σελίδα...

41 -41-

42 -42- RDF/S στον Ιστό ghart:1075.jpg ben:ghika/bio/gr/index.html dc:creator ghart:1342.jpg dc:creator Το RDF/S όμως θα έδινε την πληροφορία για τις σελίδες που περιέχουν έργα του Νίκου Χατζηκυριάκου Γκίκα ben:  ghart:  dc:name ‘Γκίκας’

43 -43- RDF/S στον Ιστό ghart:1075.jpg ben:ghika/bio/gr/index.html dc:creator ghart:1342.jpg dc:creator Επίσης, το RDF/S θα μπορούσε να δώσει την πληροφορία για το ποιές σελίδες έχουν έργα που είναι αυτοπροσωπογραφίες ben:  ghart:  dc:name ‘Γκίκας’ ghart:1075.jpg Self-portrait Painting

44 -44- RDF/S στον Ιστό Ειδικά η τελευταία ερώτηση (ποιές σελίδες έχουν έργα που είναι αυτοπροσωπογραφίες) δείχνει και την ανάγκη για σχεδιασμό ολοκληρωμένων γλωσσών ερωτήσεων για RDF/S Οι γλώσσες ερωτήσεων θα πρέπει να στηρίζονται σε εκφράσεις μονοπατιών που επιτρέπουν την διάσχιση γράφων/δέντρων Απαιτήσεις: Συνθήκες, περιορισμοί (π.χ. dc.name = ‘Γκίκας’) binding μεταβλητών (p.x. Artist.X,…) Επεξεργασία και στα δύο επίπεδα του RDF/S … επόμενη διάλεξη!

45 -45- XML, RDF, … Ας κάνουμε μία σύνοψη σχετικά με το ρόλο και την χρησιμότητα των τεχνολογιών XML/RDF/S στην ανάπτυξη του Σημασιολογικού Ιστού: XML. Παρέχει μόνο συντακτική πληροφορία. Δεν δίνει σημασιολογία. Διευκολύνει τον εντοπισμό και την επεξεργασία των δεδομένων, μαρκάροντάς τα με tags. XML Schema. Επεκτείνει την XML με χρήση τύπων δεδομένων. Δεν δίνει σημασιολογία. RDF. Δηλώνει ιδιότητες και σχέσεις για αντικείμενα στον Ιστό (resources), π.χ. Web σελίδες. Δίνει απλή σημασιολογία. RDF Schema. Eίναι τo σύστημα τύπων (type system) του RDF. Βασίζεται σε classes και properties. Ορίζει ιεραρχίες γενίκευσης. Δίνει ικανοποιητική σημασιολογία.....επόμενο βήμα είναι η χρήση οντολογιών.

46 -46- Οντολογίες Το πλαίσιο RDF/S θεωρείται μια μορφή (απλής) οντολογίας. Οι οντολογίες είναι εργαλεία αναπαράστασης (representation) και συλλογιστικής (reasoning). Δυστυχώς είναι ένας όρος που δέχεται πολλές ερμηνείες και ορισμούς, πολλές φορές ασαφείς και γενικούς. Δείτε για παράδειγμα τί μπορεί να είναι μια οντολογία: “An explicit specification of a conceptualisation” (Gruber) Μια οντολογία δίνει μια περιγραφή ενός πεδίου γνώσης (knowledge domain) με τα εξής χαρακτηριστικά: να υπάρχει κοινός τρόπος επικοινωνίας (ορολογία/λεξιλόγιο) μεταξύ όλων αυτών που χρησιμοποιούν το συγκεκριμένο πεδίο γνώσης. να είναι αυστηρά θεμελιωμένη (formal model). να είναι κατανοητή και επεξεργάσιμη (machine understandable, manipulable) σε επίπεδο μηχανής.

47 -47- Οντολογίες Χαρακτηριστικά μιας οντολογίας: Ορισμός λεξιλογίου (vocabulary) από έννοιες (concepts) που περιγράφουν τον κόσμο μας κλάσεις (π.χ. Class Artist), οντότητες, κ.λ.π. Ορισμός δομής (σχέσεις εννοιών, ιεραρχίες, κ.λ.π.) κλάσεις/υποκλάσεις (π.χ. Class Painter is subclass of Class Artist) συσχετίσεις (π.χ. Painter creates Paintings) Ορισμός ιδιοτήτων εννοιών χαρακτηριστικά (π.χ. Class Painter has name, age, style), αντιστοιχίσεις (π.χ. Class Artifact -- Class PieceOfArt) Αξιώματα/Κανόνες (παραγωγή νέων εννοιών, σχέσεων, κ.λ.π.) π.χ. αν ένα αντικείμενο Person συσχετίζεται με αντικείμενα Paintings με τη σχέση Paints, τότε το αντικείμενο Person είναι και Painter.

48 -48- Παραδείγματα Οντολογιών Wordnet: Ουσιαστικά, ρήματα και επίθετα είναι οργανωμένα σε σύνολα συνώνυμων εννοιών (lexical concepts) Τα concept αυτά συνδέονται με σημασιολογικές σχέσεις Συνολικά περιέχει περίπου concepts, οργανωμένα σε ιεραρχίες Παραδείγματα σημασιολογικών σχέσεων: Synonymy: Συνωνυμία εννοιών Hyponymy: Μια έννοια είναι πιο γενική από την άλλη, π.χ. Artist vs Painter Meronymy: Μια έννοια είναι μέρος της άλλης, π.χ. Engine is part of a Car CYC, Ontolingua, Ontobroker...

49 -49- Οντολογίες στον Ιστό Ξεκινάμε έχοντας ως βάση τον σημασιολογικό εμπλουτισμό με την χρήση RDF/S: statements για resources οργάνωση των resources με βάση ιεραρχίες από classes και properties ενσωμάτωση XML/RDF/S statements στο περιεχόμενο των ιστοσελίδων (η διαδικασία αυτή είναι γνωστή ως metadata annotation) Χρήση οντολογιών για παροχή ενός κοινού τρόπου επικοινωνίας (ορολογία/λεξιλόγιο) για τα διαφορετικά metadata annotation ενός συγκεκριμένου πεδίου γνώσης (Artifact, rdf:type, rdfs:Class): ορισμός Class Artifact (PieceOfArt, rdf:type, rdfs:Class): ορισμός Class PieceOfArt την γνώση ότι η Class Artifact είναι ισοδύναμη με την Class PieceOfArt μπορεί να την δώσει μια οντολογία. Θυμηθείτε: το πλαίσιο RDF/S θεωρείται μια μορφή (απλής) οντολογίας. Έχει επομένως δυσκολίες σε τέτοιου τύπου αναπαραστάσεις.

50 -50- Οντολογίες στον Ιστό Συγκεκριμένα, το πλαίσιο RDF/S έχει τα παρακάτω προβλήματα: Class semantic relationships...δεν μπορεί να ορίσει συγκεκριμένες σημασιολογικές σχέσεις μεταξύ κλάσεων, όπως ισοδυναμία, disjointness, κ.λ.π. Localised range/domain constraints...δεν μπορεί να δηλώσει ότι το range του property creates είναι Painting όταν το domain είναι Painter, και Sculpture όταν το domain είναι Sculptor Εxistence/cardinality constraints...δεν μπορεί να δηλώσει ότι ένα Person έχει ακριβώς δύο Parents Inverse/symmetrical properties...δεν μπορεί να δηλώσει ότι το property creates είναι το αντίστροφο του createdby

51 -51- OWL OWL: Web Ontology Language (w3c.org) Προτείνονται 3 εκδόσεις: OWL Lite: επέκταση μέρους του RDF/S OWL DL: επέκταση μέρους του RDF/S (DL: Desciption Logics) OWL Full: επέκταση του RDF/S Η αναπαράσταση γίνεται με RDF/S statements H OWL εκφράζει μέρος του FOL

52 -52- OWL 10 ‘A Painter is a Person who has created at least 10 paintings’ Description Logic syntax: Painter = Person Π >10 painted (Π: intersection!) OWL αναπαράσταση

53 -53- OWL Class construction: intersectionOf CubistPainter = CubistResource  Painter unionOf Painter = CubistPainter  ImpressionistPainter complementOf NOT CubistPainter Resource construction: oneOf δήλωση ότι μόνο ένα από συγκεκριμένα resources μπορεί να χρησιμοποιηθεί σε ένα statement allValuesFrom δήλωση ότι μόνο όλα τα resources από ένα συγκεκριμένο σύνολο μπορεί να χρησιμοποιηθεί σε ένα statement

54 -54- OWL Resource Construction (...συνέχεια): someValuesFrom δήλωση ότι μέρος των resources από ένα συγκεκριμένο σύνολο μπορεί να χρησιμοποιηθεί σε ένα statement maxCardinality δήλωση ότι μέρος των resources από ένα συγκεκριμένο σύνολο μπορεί να χρησιμοποιηθεί σε ένα statement (το πλήθος δεν υπερβαίνει έναν ορισμένο αριθμό) minCardinality δήλωση ότι μέρος των resources από ένα συγκεκριμένο σύνολο μπορεί να χρησιμοποιηθεί σε ένα statement (το πλήθος υπερβαίνει έναν ορισμένο αριθμό)

55 -55- OWL Αξιώματα: subClassOf (το γνωστό) equivalentClass δήλωση ότι κάποια κλάση είναι ισοδύναμη με μία άλλη, π.χ. Class Artifact - Class PieceOfArt disjointWith δήλωση ότι τα resources κάποιας κλάση δεν μπορεί να είναι και resources κάποιας άλλης, π.χ. Class Mail, Class Female sameIndividualAs δήλωση ότι ένα resource είναι ισοδύναμο με ένα άλλο, π.χ. δύο διαφορετικά html links που δείχνουν στην ίδια σελίδα differentFrom δήλωση ότι ένα resource είναι διαφορετικό από ένα άλλο

56 -56- OWL Αξιώματα (...συνέχεια) subPropertyOf (το γνωστό) equivalentProperty δήλωση ότι κάποιο property είναι ισοδύναμo με ένα άλλο inverseOf δήλωση ότι ένα property είναι το αντίστροφο του άλλου, π.χ. creates, createdby transitiveProperty δήλωση ότι ένα property έχει μεταβατικότητα, π.χ. αν δηλώσουμε ότι το isBrotherOf είναι transitiveProperty τότε: αν ισχύει (A isBrotherOf B) και (B isBrotherOd C), ισχύει και ότι (A isBrotherOf C) Περισσότερα στο w3c.org!

57 -57- OWL Δυσκολίες... Η OWL παρέχει πλούσια σημασιολογική πληροφορία, αλλά... Το τίμημα είναι η δυσκολία σχεδιασμού γλωσσών ερωτήσεων RDF/S: τουλάχιστον 4 ολοκληρωμένες γλώσσες ερωτήσεων OWL: 1?? Κατασκευή OWL αναπαραστάσεων Μέσω SW-authoring tools (χειροκίνητη διαδικασία) Mέσω ημι-αυτόματης επεξεργασίας υπαρχόντων HTML σελίδων (πολύ δύσκολο!) Προβλήματα στην επεκτασιμότητα Συστήματα DL δουλεύουν σήμερα με ~100Κ κλάσεις, αλλά με πολύ απλή δομή

58 -58- Εργαλεία (Graphical) Editors: IsaViz (Xerox Research/W3C), RDFAuthor (Univ. of Bristol), Protege 2000 (Stanford Univ.), SWOOP (Univ. of Maryland), Orient (IBM),... Programming Environments: Jena (for Java, includes OWL reasoning), RDFLib (for Python), Redland (in C, with interfaces to Tcl, Java, PHP, Perl,…), SWI-Prolog, IBM’s Semantic Toolkit, …

59 -59- Εργαλεία Triple based database systems: Kowari, Gateway, Sesame RDF and OWL validators: (RDF Suite, ITE/FORTH) Ontology converter (to OWL): Περισσότερα:

60 -60- Εφαρμογές WSINDEX: html portal για το Σημασιολογικό Ιστό DEMOS από το Int’l Conf. on Semantic Web DUBLIC CORE λεξιλόγιο/ορολογία για Ψηφιακές Βιβλιοθήκες μια από τις πρώτες πηγές RDF resources

61 -61- Εφαρμογές XMP Εργαλείο της Adobe για προσθήκη RDF μεταδεδομένων σε αρχεία PDF Mozilla Bookmarks, config. files,... αποθηκεύονται εσωτερικά σε RDF!...και άλλα πολλά στο

62 -62- Δείτε οπωσδήποτε το... login: onto-db passwd: sifounas

63 -63- Γλώσσες ερωτήσεων για RDF/S Τι χρειαζόμαστε: εκφράσεις μονοπατιών χρήση μεταβλητών για κόμβους αλλά και ακμές του γράφου RDF/S δυνατότητα για δέσιμο (binding) μεταβλητών... Mας τα δίνει και η XQuery (θυμηθείτε επίσης ότι το RDF/S έχει XML αναπαράσταση)! Ναι, αλλά το μοντέλο δεδομένων XML δεν έχει την ίδια σημασιολογία με το RDF/S. Όπως θα φανεί και σε παραδείγματα, η απάντηση σε ερωτήσεις περιλαμβάνει αρκετές φορές όχι μόνο τις άμεσα ανακτηθείσες κλάσεις αλλά και τις υποκλάσεις τους. Θέλουμε επίσης η γλώσσα μας να χειρίζεται με ενιαίο τρόπο και το κομμάτι των απλών RDF statements (τα resources) αλλά και των RDFS statements (τις κλάσεις, την ιεραρχία τους, κ.λ.π.).

64 -64- Γλώσσα ερωτήσεων RQL ΙΤΕ/FORTH Karvounarakis G., Alexaki S., Christophides V. Plexousakis D., Scholl M: RQL, A Declarative Query Language for RDF, WWW’02 Conf. Είναι συναρτησιακή γλώσσα ερωτήσεων. Θυμίζει στην σύνταξη την OQL. Επίσης τα select, where, from που χρησιμοποιεί θα σας θυμίσουν την SQL. Ξεκινάμε με τις αποκαλούμενες στην RQL basic queries...

65 -65- RQL basic queries Βρες τις άμεσες υποκλάσεις της class Artist: subClassOf^(Artist) Αποτέλεσμα: Sculptor, Painter Βρες τις υποκλάσεις της class Artist: subClassOf(Artist) Αποτέλεσμα: Sculptor, Painter και όλες τις υποκλάσεις τους (στο παράδειγμα δεν έχουν) Βρες τo domain του property creates: domain(creates) Αποτέλεσμα: Artist

66 -66- RQL basic queries Βρες τα resources που είναι instances της class Sculptor: ^Sculptor Αποτέλεσμα: &r5 Βρες τα resources που είναι instances της class Artist: ^Artist Αποτέλεσμα: κανένα!! Βρες τα resources που είναι instances της class Artist ή κάποιας υποκλάσης της: Artist Αποτέλεσμα: &r5

67 -67- RQL schema queries...συνεχίζουμε με schema queries, ερωτήσεις δηλαδή που αφορούν classes, properties, ιεραρχία από classes, κ.λ.π.

68 -68- RQL schema queries (1) Ποιές classes έχουν domain και range το property creates; SELECT $C1, $C2 FROM {$C1}creates{$C2} $...: μεταβλητή για κόμβους (classes) Αποτέλεσμα: (Artist, Artifact), (Artist, Painting), (Artist, Sculpture), (Painter, Artifact), (Painter, Painting), (Painter, Sculpture), (Sculptor, Artifact), (Sculptor, Painting), (Sculptor, Sculpture)

69 -69- RQL schema queries (2) Ποιά properties εμπλέκουν την class Painter (δηλαδή είναι domain); FROM WHERE μεταβλητή για ακμές (properties) Αποτέλεσμα: creates, paints, lname, fname

70 -70- RQL schema queries (3) Βρες οτιδήποτε σχετίζεται με την class Painter (δηλαδή τα resources που ανήκουν σε αυτή, τις υπερκλάσεις της και τα property): seq(Painter, superclassof^(Painter), FROM {;Painter}: επιστρέφει την class Painter και όλες τις υπερκλάσεις της (εδώ την Artist) Αποτέλεσμα: (Painter, Artist, (paints, Painter, Painting), (creates, Artist, Artifact))

71 -71- RQL schema queries (4) Ποιά properties εμπλέκονται στις classes/literals που ανήκουν στο range του property creates; Βρες επίσης το domain και το range των properties αυτών. SELECT FROM ‘.’: κάνει join μεταξύ όλων των class ($Y) που ανήκουν στο range του property creates και όλων των properties Αποτέλεσμα: (Artifact, exhibited, Museum), (Painting, exhibited, Museum), (Sculpture, exhibited, Museum) (Painting, technique, string)

72 -72- RQL data queries...συνεχίζουμε με data queries, ερωτήσεις δηλαδή που αφορούν resources

73 -73- RQL data queries (5) Ποιά resources έχουν μεταβληθεί μετά το 2000; SELECT Χ FROM Museum{X}.last_modified{Y} WHERE Y >= X, Y: μεταβλητές για resources Αποτέλεσμα: &r4

74 -74- RQL data queries (6) Βρες τα oνόματα των καλλιτεχνών των οποίων τα έργα τέχνης εκτίθενται σε μουσεία, μαζί με τις ονομασίες των μουσείων. SELECT V, R, Y, Z FROM {X}creates.exhibited{Y}.title{Z}, {X}fname{V}, {X}lname{R}

75 -75- RQL mixed query...συνεχίζουμε με ένα παράδειγμα mixed query, ερώτησης δηλαδή που αφορά resources αλλά και classes, properties, ιεραρχία από classes, κ.λ.π.

76 -76- RQL mixed query (7) Βρες τις περιγραφές των resources των οποίων το URI περιέχει το ‘www.museum.es’. SELECT X, (SELECT $W, Y FROM FROM $W{X}) FROM Resource{X} WHERE X like "www.museum.es"

77 -77- RQL mixed query Βρες τις περιγραφές των resources των οποίων το URI περιέχει το ‘www.museum.es’. SELECT X, (SELECT $W, Y FROM FROM $W{X}) FROM Resource{X} WHERE X like "www.museum.es“ Για κάθε resource X, η μεταβλητή $W παίρνει τις classes των οποίων το Χ είναι instance. Για κάθε τέτοια class $W, η παίρνει όλα τα properties που έχουν $W στο domain και Χ ως source value (

78 -78- Βρες τις περιγραφές των resources των οποίων το URI περιέχει το ‘www.museum.es’. SELECT X, (SELECT $W, Y FROM FROM $W{X}) FROM Resource{X} WHERE X like "www.museum.es“ Για κάθε resource X, η μεταβλητή $W παίρνει τις classes των οποίων το Χ είναι instance. Για κάθε τέτοια class $W, η παίρνει όλα τα properties που έχουν $W στο domain και Χ ως source value &r4 Αποτέλεσμα


Κατέβασμα ppt "1 Σημασιολογικός Ιστός (Πλαίσιο RDF, Γλώσσα Οντολογιών OWL, γλώσσες ερωτήσεων)"

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google