ΕΡΕΥΝΗΤΙΚΟ ΚΕΝΤΡΟ ΚΑΙΝΟΤΟΜΙΑΣ ΣΤΙΣ ΤΕΧΝΟΛΟΓΙΕΣ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ & ΤΗΣ ΓΝΩΣΗΣ «ΑΘΗΝΑ» ΙΝΣΤΙΤΟΥΤΟ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ LODGOV

Σχετικά έγγραφα
ΕΡΕΥΝΗΤΙΚΟ ΚΕΝΤΡΟ ΚΑΙΝΟΤΟΜΙΑΣ ΣΤΙΣ ΤΕΧΝΟΛΟΓΙΕΣ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ & ΤΗΣ ΓΝΩΣΗΣ «ΑΘΗΝΑ» ΙΝΣΤΙΤΟΥΤΟ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ LODGOV

Παραδοτέο Π.2.1. Υπερχώρος και διαχείριση μοντέλων

Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων

. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Εργαστήριο Σημασιολογικού Ιστού

Τεχνολογίες RDF για τον Ιστό Δεδοµένων

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

A ΕΠΑ.Λ ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 5 η ΕΝΟΤΗΤΑ: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Εκπαιδευτικοί: ΓΑΛΑΝΟΣ ΓΕΩΡΓΙΟΣ ΜΠΟΥΣΟΥΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

Σχεδιασμός Βάσεων Δεδομένων

Βάσεις Δεδομένων Ι Εξεταστική Περίοδος Φεβρουαρίου 2006

Διαχείριση, Δημοσίευση και Διάθεση Ανοικτών Εκπαιδευτικών Πόρων

Διασύνδεση και Άνοιγμα Δεδομένων του Α.Π.Θ. Καραογλάνογλου Κωνσταντίνος Μονάδα Σημασιολογικού Ιστού Α.Π.Θ 18/3/2014

ΕΡΕΥΝΗΤΙΚΟ ΚΕΝΤΡΟ ΚΑΙΝΟΤΟΜΙΑΣ ΣΤΙΣ ΤΕΧΝΟΛΟΓΙΕΣ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ & ΤΗΣ ΓΝΩΣΗΣ «ΑΘΗΝΑ» ΙΝΣΤΙΤΟΥΤΟ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ LODGOV

Διαχείριση Πολιτισμικών Δεδομένων

Εισαγωγή στο RDF. Το Resource Description Framework (RDF) Σταύρος Πολυβίου

Εργαστήριο Σημασιολογικού Ιστού

Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. 2 ο Μάθημα: Βασικά Θέματα Βάσεων Δεδομένων. Δρ. Κωνσταντίνος Χ.

Βάσεις Δεδομένων. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

Πληροφορική 2. Βάσεις Δεδομένων (Databases)

Εργαστήριο Σημασιολογικού Ιστού

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΣΒΔ - ΕΙΣΑΓΩΓΗ ΣΤΟ ΜΟΝΤΕΛΟ ΟΝΤΟΤΗΤΩΝ ΣΥΣΧΕΤΙΣΕΩΝ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ

Δυναμικές Ιστοσελίδες Προγραμματισμός στην πλευρά του client

1.1. Βάσεις δεδομένων

1. ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ ΔΕΔΟΜΕΝΩΝ

Βάσεις Δεδομένων. Εισαγωγή Ανάλυση Απαιτήσεων. Φροντιστήριο 1 ο

1 Συστήματα Αυτοματισμού Βιβλιοθηκών

Σημασιολογική Ολοκλήρωση Δεδομένων με τη χρήση Οντολογιών

Εισαγωγή στην Πληροφορική

Εργαστήριο Σημασιολογικού Ιστού

Σύστημα υποβολής αιτήσεων υποψήφιων συνεργατών ΕΚΤ

Ακαδημαϊκό Έτος , Χειμερινό Εξάμηνο Μάθημα: Εργαστήριο «Πληροφορική Υγείας» ΕΙΣΑΓΩΓΗ ΣΤΗΝ ACCESS

ΤΙΤΛΟΣ ΙΠΛΩΜΑΤΙΚΗΣ ΕΡΓΑΣΙΑΣ: GoNToggle: ΕΞΥΠΝΗ ΜΗΧΑΝΗ ΑΝΑΖΗΤΗΣΗΣ ΜΕ ΧΡΗΣΗ ΟΝΤΟΛΟΓΙΩΝ ΠΕΡΙΟΧΗ ΕΡΕΥΝΑΣ: ΣΥΓΓΡΑΦΕΑΣ:

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

ΜοντέλοΟντοτήτωνΣυσχετίσεων & ΔιάγραμμαΟντοτήτων Συσχετίσεων. Μοντέλο Οντοτήτων Συσχετίσεων

2. Εισαγωγή Δεδομένων σε Σχεσιακή Βάση Δεδομένων

ΑΝΑΠΑΡΑΣΤΑΣΗ ΓΝΩΣΗΣ ΣΤΟΝ ΠΑΓΚΟΣΜΙΟ ΙΣΤΟ

...στις µέρες µας, όσο ποτέ άλλοτε, οι χώρες καταναλώνουν χρόνο και χρήµα στη µέτρηση της απόδοσης του δηµόσιου τοµέα...(oecd)

Σχεδιασµός Ανάπτυξη Οντολογίας

Αναφορά εργασιών για το τρίμηνο Σεπτέμβριος Νοέμβριος 2012

Περιγραφή Μαθήματος. Περιγραφή Περιεχόμενο του Μαθήματος

Σύστημα Διαμοιρασμού Βιβλιογραφικών Αναφορών. Κοντοτάσιου Ιωάννα ΑΜ 3125 Μπέσσας Απόστολος ΑΜ 3171

Διαδικτυακές Υπηρεσίες Αναζήτησης, Απεικόνισης και Απευθείας Πρόσβασης στα δεδομένα ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ. Έκδοση 0.1.

Linked Data for the Masses: Η προσέγγιση και το λογισμικό

Αρχιτεκτονική Συστημάτων Βάσεων Δεδομένων. Κατηγορίες χρηστών ΣΔΒΔ Αρχιτεκτονική ANSI/SPARC Γλώσσες ερωτημάτων Μοντέλα δεδομένων Λειτουργίες ΣΔΒΔ

Περιγραφή του εκπαιδευτικού/ μαθησιακού υλικού (Teaching plan)

GoNToggle: ΕΞΥΠΝΗ ΜΗΧΑΝΗ ΑΝΑΖΗΤΗΣΗΣ ΜΕ ΧΡΗΣΗ ΟΝΤΟΛΟΓΙΩΝ

ΠΕΡΙΕΧΟΜΕΝΑ. Πρόλογος Κεφάλαιο 1 ο Αρχές Διαχείρισης πληροφορίας στον Παγκόσμιο Ιστό... 15

Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή

Οντολογία για την περιγραφή των προσωπικοτήτων της Σάμου, την κατηγοριοποίηση και τις σχέσεις τους

Τα σχέδια μαθήματος 1 Εισαγωγή

Προγραμματισμός διαδικτυακών εφαρμογών με PHP

4/2014 ΣΥΝΟΠΤΙΚΗ ΠΑΡΟΥΣΙΑΣΗ ΥΔΡΟΛΗΨΙΕΣ ΑΤΤΙΚΗΣ ΑΠΟΚΕΝΤΡΩΜΕΝΗ ΔΙΟΙΚΗΣΗ ΑΤΤΙΚΗΣ ΔΙΕΥΘΥΝΣΗ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ

SilverPlatter WebSPIRS 4.1.

Βάσεις Δεδομένων ΙΙ. Διάλεξη 5 η XML και ΒΔ στο Διαδίκτυο

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Εγχειρίδιο Επιμελητή Δράσεων. (Υπηρεσία Ενημέρωσης για Εκπαιδευτικές και Πολιτισμικές Δράσεις)

Εισαγωγή στις βασικές έννοιες των Βάσεων Δεδομένων

Κεφάλαιο 5. Δημιουργία φορμών για τη βάση δεδομένων DVDclub

Ενσωματωμένα controls τα οποία προσαρμόζονται και χρησιμοποιούνται σε οποιαδήποτε ιστοσελίδα επιλέγει ο φορέας.

Εργαστήριο 6 ο 7 ο / Ερωτήματα Ι

Σύστημα Κεντρικής Υποστήριξης της Πρακτικής Άσκησης Φοιτητών ΑΕΙ

ΛΟΓΙΣΜΟΣ ΜΙΑΣ ΜΕΤΑΒΛΗΤΗΣ, ΕΣΠΙ 1

Σχεσιακή Άλγεβρα Σχεδιασμός Βάσεων Δεδομένων

Ενότητα 3: Διαχείριση πληροφοριακών πόρων με τη χρήση βάσεων δεδομένων

Σχεσιακό Μοντέλο Δεδομένων

Βάσεις Δεδομένων. Ενότητα 3: Σχεδιασμός και Διαχείριση Βάσεων Δεδομένων. Αθανάσιος Σπυριδάκος Τμήμα Διοίκησης Επιχειρήσεων

Αναπαράσταση Γνώσης και Αναζήτηση στον Σηµασιολογικό Ιστό

4.2 Δραστηριότητα: Ολικά και τοπικά ακρότατα

"Αθηνά" - Ερευνητικό Κέντρο Καινοτομίας στις Τεχνολογίες της Πληροφορίας, των Επικοινωνιών και της Γνώσης

ΟΝΤΟΛΟΓΙΕΣ, ΣΗΜΑΣΙΟΛΟΓΙΚΟΣ ΙΣΤΟΣ ΚΑΙ ΕΦΑΡΜΟΓΕΣ ΗΛΕΚΤΡΟΝΙΚΗΣ ΔΙΑΚΥΒΕΡΝΗΣΗΣ

Εισαγωγή στις βάσεις δεδομένων - Η ανατομία μιας βάσης δεδομένων

Διαδίκτυο: δίκτυο διασυνδεμένων δικτύων Ξεκίνησε ως ένα μικρό κλειστό στρατιωτικό δίκτυο, απόρροια του Ψυχρού Πολέμου μεταξύ ΗΠΑ και ΕΣΣΔ.

Τ.Ε.Ι ΘΕΣΣΑΛΟΝΙΚΗΣ, ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΣΔΒΔ (ΕΡΓΑΣΤΗΡΙΟ 4) Τελευταία ενημέρωση: 11/2011. Μετασχηματισμός διαγράμματος ER σε σχεσιακό σχήμα ΒΔ

Διαδικτυακές Εφαρμογές Ενότητα 1: JPA

Εγχειρίδιο Εισαγωγής Στοιχείων στο Πληροφοριακό Σύστημα του προγράμματος Εξοικονόμηση Κατ Οίκον ΙΙ (Β Κύκλος), για την υποβολή αιτήσεων

Από τα Δεδομένα στην Πληροφορία: Διδακτικό Σενάριο για Εισαγωγή στη Γλώσσα SQL. Σ. Φίλου Β. Βασιλάκης

Σημασιολογικός Ιστός RDF(S) OWL Οντολογίες. Pervasive Computing Research Group

Orchid: Integrating Schema Mapping and ETL ICDE 2008

Εισαγωγή στην πληροφορική

Ημερομηνία Παράδοσης: 4/4/2013

Παραδοτέο Π.5.1. Μοντελοποίηση της εξέλιξης υπερχώρων και οικοσυστημάτων πληροφορίας

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Συστήματα Διαχείρισης Βάσεων Δεδομένων

Η διαδικτυακή εφαρμογή ESOG: Εγχειρίδιο χρήσης *

Σχεδίαση και Ανάπτυξη Ιστότοπων

PROJECT ΕΡΓΑΣΤΗΡΙΩΝ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ Ι. Τμήμα Μηχανικών Πληροφορικής Τ.Ε.

Εργαστήριο #10 (Ε10) 1

Μοντέλο Οντοτήτων-Συσχετίσεων

Σχεσιακή Άλγεβρα και Σχεσιακός Λογισμός. Σχεσιακή Άλγεβρα Σχεσιακός Λογισμός

Σχεδίαση Βάσεων Δεδομένων

Πληροφοριακού Συστήματος Ενημέρωσης Καιρικών Συνθηκών

Οδηγίες Χρήσης της MySQL

Υπολογισμός Φορολογικής Αναμόρφωσης

ΓΕΩΓΡΑΦΙΚΑ ΣΥΣΤΗΜΑΤΑ ΠΛΗΡΟΦΟΡΙΩΝ ΓΕΩΓΡΑΦΙΚΑ ΣΥΣΤΗΜΑΤΑ ΠΛΗΡΟΦΟΡΙΩΝ - ΕΝΟΤΗΤΑ 1 7/4/2013 ΕΝΟΤΗΤΕΣ ΜΑΘΗΜΑΤΟΣ. Ορισμός

Εγχειρίδιο Διαχειριστή. (Υπηρεσία Ενημέρωσης για Εκπαιδευτικές και Πολιτισμικές Δράσεις)

ιαχείριση Γνώσης σε Ενδοεπιχειρισιακά ίκτυα και το ιαδίκτυο (ΗΥ-566)

Document Scanning System Ιανουάριος, 2014

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ασκήσεις και ερωτήσεις

Transcript:

ΕΡΕΥΝΗΤΙΚΟ ΚΕΝΤΡΟ ΚΑΙΝΟΤΟΜΙΑΣ ΣΤΙΣ ΤΕΧΝΟΛΟΓΙΕΣ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ & ΤΗΣ ΓΝΩΣΗΣ «ΑΘΗΝΑ» ΙΝΣΤΙΤΟΥΤΟ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ LODGOV Διακυβέρνηση Δεδομένων στην εποχή του Ιστού Δεδομένων: δημιουργία, διαχείριση, διατηρησιμότητα, κοινοχρησία και προστασία πόρων στον Ιστό. ΔΡΑΣΗ «ΑΡΙΣΤΕΙΑ» Παραδοτέο 3.1: Τεχνική Αναφορά

ΔΡΑΣΗ «ΑΡΙΣΤΕΙΑ» Παραδοτέο 3.1: Τεχνική Αναφορά Μοντέλα και γλώσσες ερωτήσεων εξελισσόμενων Ανοιχτών Διασυνδεδεμένων Δεδομένων Βεργούλης Α., Γκίρτζου Κ., Δαλαμάγκας Θ., Σελλής Τ., Σταύρακας Ι. και Χριστοφίδης Β. Παραδοτέο 3.1: Τεχνική Αναφορά 1

Περιεχόμενα 1 Εισαγωγή... 3 2 Απεικόνιση από σχεσιακές βάσεις σε RDF μορφή... 3 2.1 Γιατί είναι απαραίτητη η απεικόνιση;... 3 2.2 Τι πρέπει να κάνει μια απεικόνιση;... 4 2.3 Εργαλεία και γλώσσες... 5 2.3.1 D2R MAP... 6 2.3.2 D2RQ... 7 2.3.3 D2R Server... 10 3 Μηχανισμοί καταγραφής πληροφορίας αλλαγών εξέλιξη δεδομένων... 12 3.1 Αλλαγές που υφίστανται συνολικά οι πόροι... 12 3.2 Αλλαγές που υφίστανται δεδομένα σχετιζόμενα με πόρους... 12 4 Παράδειγμα με βιολογικά δεδομένα... 15 5 Επίλογος... 17 Βιβλιογραφία... 17 Παραδοτέο 3.1: Τεχνική Αναφορά 2

1 Εισαγωγή Το τελευταίο διάστημα όλο και περισσότερα σύνολα δεδομένων σπάνε τον φραγμό την ιδιωτικής διαχείρισης από επιμέρους οργανισμούς και μεταφέρονται σε ανοιχτό και δημόσιο χώρο. Η τάση αυτή αποτελεί το πνεύμα και την ουσία των ανοιχτών διασυνδεδεμένων δεδομένων (open linked data), τα οποία μπορούν να χρησιμοποιηθούν για να δημιουργήσουν το λεγόμενο ιστό δεδομένων (web of data) και αναμένεται να φέρουν καινοτομίες στις διαδικτυακές τεχνολογίες και εφαρμογές. Η τάση αυτή παρατηρείται ευρέως και στην επιστημονική κοινότητα, με την συνεχή δημοσίευση επιστημονικών δεδομένων. Πιο συγκεκριμένα τα ανοικτά επιστημονικά δεδομένα μεταφέρουν τα αποτελέσματα και τις παρατηρήσεις της επιστημονικής έρευνας στην δημόσια σφαίρα και διατίθενται πλέον για χρήση και ανάλυση από το κοινό. Ένα ιδιαίτερο χαρακτηριστικό κάποιων δεδομένων, που θα μας απασχολήσει ιδιαίτερα εδώ, είναι το γεγονός ότι μεταβάλλονται ή εξελίσσονται. Για παράδειγμα στην περίπτωση των επιστημονικών δεδομένων, καθώς γίνονται καινούρια πειράματα παλιότερα αποτελέσματα μπορεί να επανεκτιμούνται, έτσι προκύπτει η ανάγκη καταγραφής των διαφορετικών δεδομένων κατά εκδόσεις. Συνεπώς, στην περίπτωση που τα δεδομένα εξελίσσονται θα πρέπει να εξασφαλίζονται και να παρέχονται ορισμένοι μηχανισμοί, ώστε να υπάρχει πρόσβαση στα δεδομένα που καταγράφονται και σε παλιότερες εκδόσεις, καθώς και μπορεί να παρακολουθούνται όλες οι αλλαγές που γίνονται σε αυτά. Στην εργασία αυτή επικεντρωνόμαστε στην μελέτη μοντέλων και γλωσσών επερωτήσεων σε εξελισσόμενα ανοιχτά διασυνδεδεμένα δεδομένα, εξετάζοντας τα με την βοήθεια επιστημονικών δεδομένων και πιο συγκεκριμένα με τα βιολογικά μόρια micro-rna. Επιπλέον, αφού τα αρχικά μας επιστημονικά δεδομένα micro-rna βρίσκονται αποθηκευμένα σε σχεσιακή βάση δεδομένων, απαιτείται η απεικόνισή τους από σχεσιακές βάσεις σε μορφή RDF. Βάσει των παραπάνω παρατηρήσεων η εργασία ασχολείται με τα ακόλουθα αντικείμενα : στο κεφάλαιο 2 παρουσιάζονται οι γλώσσες απεικόνισης από σχεσιακές βάσεις στο σημασιολογικό ιστό καθώς και εργαλεία πλοήγησης βάσεων δεδομένων σε μορφή ανοικτών δεδομένων, στο κεφάλαιο 3 οι μηχανισμοί καταγραφής πληροφορίας αλλαγών και εξέλιξης των δεδομένων και τέλος στο κεφάλαιο 4 η απεικόνιση των επιστημονικών δεδομένων της βάσης DIANA, που είναι μια σχεσιακή βάση δεδομένων αποθήκευσης πληροφορίας για τα μόρια micrορνα και που αναπτύσσεται σε συνεργασία με το ίδρυμα Φλέμινγκ, ως ανοικτά διασυνδεδεμένα δεδομένα. 2 Απεικόνιση από σχεσιακές βάσεις σε RDF μορφή 2.1 Γιατί είναι απαραίτητη η απεικόνιση; Ένα πρώτο ερώτημα που θα μπορούσε να τεθεί, είναι, γιατί χρειάζεται να απεικονίσουμε δεδομένα σε μορφή RDF από σχεσιακές βάσεις; Γιατί να μη δημοσιευτούν απευθείας σύνολα δεδομένων με τη μορφή RDF; Πλήθος εφαρμογών στο διαδίκτυο χρησιμοποιούν αυτή τη στιγμή βάσεις δεδομένων, είτε ως front end είτε ως back end. Μεγάλος όγκος πληροφορίας ή επιστημονικών δεδομένων βρίσκονται ήδη αποθηκευμένα στις βάσεις δεδομένων που διαθέτουν διάφοροι οργανισμοί. Καθώς το εγχείρημα του σημασιολογικού ιστού και των Παραδοτέο 3.1: Τεχνική Αναφορά 3

Εικόνα 1 Σχήμα σχεσιακής βάσης για συγγραφείς δημοσιεύσεις. ανοικτά διασυνδεδεμένων δεδομένων είναι ακόμα νέο, μπορούμε να υποθέσουμε ότι και μεσοπρόθεσμα ο μεγαλύτερος όγκος πληροφορίας θα εξακολουθήσει να υπάρχει και να αποθηκεύεται σε σχεσιακές βάσεις. Η αυτόματη εξαγωγή δεδομένων από σχεσιακές βάσεις σε RDF μορφή, μπορεί να αποτελέσει ένα πρώτο βήμα για τον εμπλουτισμό του σημασιολογικού ιστού με χρήσιμα δεδομένα. Ο στόχος είναι να δημιουργηθεί το web of data το οποίο θα οδηγήσει στην ενοποίηση των δεδομένων και πρακτικά θα δίνει τη μορφή μιας συνολικής μεγάλης βάσης. Με τον τρόπο αυτό, ειδικά στην περίπτωση των επιστημονικών δεδομένων τα ερωτήματα που θα μπορεί ένας ερευνητής να διατυπώνει δε θα περιορίζονται από τα στενά όρια της βάσης δεδομένων ενός οργανισμού, αλλά θα μπορούν να αλιεύουν δεδομένα, ή να προσθέτουν συνθήκες που χρησιμοποιούν άλλες βάσεις. Μια αναγωγή μπορεί να γίνει με το παράδειγμα που δίνει ο Tim Berners Lee στην ομιλία του στο TED το 2009: Στην έρευνα για τη θεραπεία του Alzheimer, ενδέχεται ένας επιστήμονας να χρειάζεται να αναζητήσει πρωτεΐνες που σχετίζονται με τη μεταγωγή σημάτων, αλλά και συγγενεύουν με πυραμιδικούς νευρώνες. Μια μηχανή αναζήτησης στο διαδίκτυο ενδέχεται να μη μπορέσει να δώσει χρήσιμες απαντήσεις σε τέτοια ερωτήματα. Ωστόσο, τα συνδεδεμένα δεδομένα θα μπορέσουν να βρουν μια τέτοια απάντηση. Αν υποθέσουμε ότι για κάθε σκέλος του ερωτήματος του παραδείγματος αυτού η πληροφορία βρίσκεται σε μια διαφορετική βάση δεδομένων, τότε εξάγοντας τις βάσεις αυτές σε μορφή ανοικτά συνδεδεμένων δεδομένων, το ερώτημα αυτό μπορεί να διατυπωθεί χωρίς να περιορίζεται κανείς μόνο στη βάση που διαθέτει. 2.2 Τι πρέπει να κάνει μια απεικόνιση; Αν δούμε τα παραδοσιακά διαγράμματα οντοτήτων-συσχετίσεων (E-R) των βάσεων δεδομένων, θα βρούμε ότι πολλές φορές επιχειρούν να συνδέσουν αντικείμενα με ιδιότητες, ή άλλα αντικείμενα. Κατά τον τρόπο αυτό μοιάζουν με τη λογική της σύνταξης «υποκείμενο ιδιότητα αντικείμενο» (subject - predicate object) που έχει το πρότυπο RDF. Αν υποθέσουμε ότι μια απλή και μικρή βάση αποτελείται από τρεις πίνακες, έναν για τους συγγραφείς (Author), έναν για τις δημοσιεύσεις (Paper) και έναν πίνακα που τους συσχετίζει (author_papers), τότε θα είχαμε ένα απλό σχήμα πινάκων όπως αυτό της Εικόνα 1. Ο πίνακας Author πρακτικά θα περιέχει εγγραφές οι οποίες αντιστοιχούν σε μια κατηγορία αντικειμένων του κόσμου, δηλαδή τους συγγραφείς. Συνεπώς μια απεικόνιση θα έπρεπε για κάθε εγγραφή που προκύπτει από αυτόν τον πίνακα να δημιουργεί έναν πόρο RDF με συγκεκριμένο URI. Κάθε τέτοιος πόρος θα έχει ορισμένες ιδιότητες των οποίων το αντικείμενο είναι λεκτικό (literal), όπως για παράδειγμα το όνομα και το επίθετο. Επιπλέον ορισμένες ιδιότητες θα πρέπει να είναι καινούριοι πόροι, όπως το email στο παράδειγμα. Σε πρώτη φάση επομένως θα περιμέναμε τη δημιουργία για κάθε εγγραφή του πίνακα Author ενός κειμένου RDF-XML όπως του ακόλουθου: Παραδοτέο 3.1: Τεχνική Αναφορά 4

<rdf:description rdf:about= http://... > <ns:first_name>jon</ns:first_name> <ns:last_name>dawson</ns:last_name> <foaf:mbox rdf:resource=jd@somewhere.com /> </rdf:description> Στο παραπάνω το στοιχείο rdf:about θα πρέπει να συμπληρώνεται με κάποιον τρόπο που θα προκύπτει από τη βάση δεδομένων, ώστε να δημιουργεί μοναδικά URI για κάθε εγγραφή. Επιπλέον κάθε τέτοιος πόρος (συγγραφέας) μπορεί να συνδέεται με ιδιότητες που είτε είναι λεκτικές ή άλλα αντικείμενα, τα οποία θέλουμε επίσης να αποτελούν πόρους, όπως για παράδειγμα οι δημοσιεύσεις. Επομένως θα πρέπει να μπορούμε μέσω διαφορετικών πινάκων να συσχετίζουμε κάθε συγγραφέα με έναν αριθμό από δημοσιεύσεις. Ο πίνακας papers θα περιέχει δηλαδή και αυτός εγγραφές που θα αντιστοιχούν σε αντικείμενα συγκεκριμένης κλάσης και θα χαρακτηρίζονται από ένα μοναδικό URI. Μια σύνδεση ενός συγγραφέα με κάποια δημοσίευση θα τροποποιούσε το παραπάνω RDF σε μια τελική μορφή όπως η παρακάτω: <rdf:description rdf:about= http://... > <ns:first_name>jon</ns:first_name> <ns:last_name>dawson</ns:last_name> <foaf:mbox rdf:resource=jd@somewhere.com /> <ns:paper rdf:resource= http://... /> </rdf:description > Στη συνέχεια, στο υποκεφάλαιο 2.3, περιγράφονται αναλυτικά οι γλώσσες D2R MAP και D2RQ, οι οποίες παρέχουν τη δυνατότητα δημιουργίας τέτοιου είδους απεικονίσεων. 2.3 Εργαλεία και γλώσσες Για την απεικόνιση δεδομένων από σχεσιακές βάσεις σε RDF μορφή έχουν αναπτυχθεί διάφορες γλώσσες και εργαλεία που τις χρησιμοποιούν. Ενδεικτικά αναφέρονται: RDBtoOnto [8]: Πρόκειται για ένα εργαλείο ETL (Extract, Transform, Load), το οποίο έχει τη δυνατότητα να παράγει οντολογίες από βάσεις δεδομένων. Μέσω ειδικής διεπαφής που διαθέτει επιτρέπει στο χρήστη ορισμένες επιπλέον ρυθμίσεις. ODEMapster [8]: Πρόκειται για ένα εργαλείο το οποίο παρέχει μια διεπαφή για τη διαχείριση απεικονίσεων μεταξύ σχεσιακών βάσεων και RDFS/OWL οντολογιών. Οι απεικονίσεις γίνονται με χρήση μιας γλώσσας που ονομάζεται R2O. D2R MAP [3, 9] D2RQ [2]: Είναι δύο δηλωτικές γλώσσες σε μορφή RDF, ενώ η D2RQ αποτελεί εξέλιξη της πρώτης. Στην πρώτη περίπτωση έχουμε τη μορφή RDF- XML, ενώ στη δεύτερη έχουμε σύνταξη σε turtle. Το εργαλείο D2R Server χρησιμοποιείται σε συνδυασμό με την D2RQ, παράγοντας έναν εικονικό RDF γράφο χρήση της απεικόνισης. Οι γλώσσες αυτές θα παρουσιαστούν λεπτομερώς στα υποκεφάλαια 2.3.1 και 2.3.2 αντίστοιχα. Παραδοτέο 3.1: Τεχνική Αναφορά 5

D2R Server [6, 7]: Είναι ένα εργαλείο που μπορεί να χρησιμοποιήσει αρχεία απεικόνισης γραμμένα σε D2RQ για να δημιουργεί εικονικούς γράφους RDF από μια βάση δεδομένων. Αξίζει να σημειωθεί ότι το ζήτημα της απεικόνισης από βάσεις δεδομένων σε RDF κρίνεται αρκετά σημαντικό δεδομένου ότι η W3C σύστησε το 2009 την ομάδα εργασίας RDB2RDF, με στόχο την προτυποποίηση μιας γλώσσας που να απεικονίζει σχεσιακά δεδομένα και σχήματα σχεσιακών βάσεων σε RDF και OWL, η οποία θα έχει πιθανώς το όνομα R2RML. 2.3.1 D2R MAP Η D2R MAP [3] είναι μια δηλωτική γλώσσα για την περιγραφή απεικονίσεων μεταξύ βάσεων δεδομένων και RDF. Ένας κατάλληλος επεξεργαστής εφαρμόζει τη γλώσσα και εξάγει δεδομένα από μια βάση σε RDF. Η D2R MAP εκτελείται σε τέσσερα βήματα: 1. Αρχικά επιλέγεται ένα σύνολο εγγραφών από τη βάση για κάθε σύνολο κλάσεων 2. Το σύνολο αυτό ομαδοποιείται με κάποιο group by. 3. Δημιουργούνται URI για τα στιγμιότυπα της κάθε κλάσης. 4. Δημιουργούνται ιδιότητες (properties) για κάθε στιγμιότυπο μιας κλάσης. Στη D2R MAP μεγάλο μέρος της SQL που απαιτείται για την επιλογή και ομαδοποίηση στοιχείων γράφεται απευθείας στον κώδικα απεικόνισης. Ένα παράδειγμα ενός τέτοιου κώδικα φαίνεται παρακάτω: 1. <Map> 2. <DBConnection odbcdsn="bookdb" /> 3. <ProcessorMessage outputformat="rdf/xml-abbrev"/> 4. <Namespace prefix="ex" namespace="http://example.org#"/> 5. 6. <ClassMap type="ex:book" 7. sql="select isbn, title FROM books;" 8. groupby="isbn" 9. uripattern="ex:book@@isbn@@"> 10. <DatatypePropertyBridge 11. property="ex:title" 12. column="title" xml:lang="en"/> 13. </ClassMap> 14. 15. <ClassMap type="ex:author" 16. sql="select authors.aid, name, URL, 17. isbn FROM authors, bookauthor 18. WHERE authors.aid = bookauthor.aid;" 19. groupby="authors.aid"> 20. <DatatypePropertyBridge 21. property="ex:fullname" 22. column="name" /> 23. <ObjectPropertyBridge 24. property="ex:homepage" 25. column="url" /> 26. <ObjectPropertyBridge 27. property="ex:author_of" 28. referredclass="ex:book" 29. referredgroupby="isbn" 30. usecontainer="rdf:bag"/> 31. </ClassMap> 32. </Map> Παραδοτέο 3.1: Τεχνική Αναφορά 6

Εδώ έχουμε υποθέσει έναν σχήμα που αποτελείται από τους πίνακες books, authors και bookauthor, παρόμοιο με το σχήμα της Εικόνα 1. Στις γραμμές 2-4 αναφέρονται κάποιες γενικές ρυθμίσεις, ορίζουμε τις παραμέτρους σύνδεσης με τη βάση, το είδος του αρχείου εξόδου που θέλουμε να λάβουμε και ένα σύνολο από namespaces. Στις γραμμές 6-31 βρίσκεται η απεικόνιση. Τα βασικά συστατικά της είναι τα ClassMap και τα PropertyBridge. Τα ClassMap δημιουργούν σύνολα πόρων που ανήκουν σε συγκεκριμένη κλάση, ενώ τα PropertyBridge ορίζουν ιδιότητες στα αντικείμενα μιας κλάσης, καθώς και την τιμή που συμπληρώνει την ιδιότητα ως αντικείμενο. Οι PropertyBridge χωρίζονται σε δύο κατηγορίες: DatatypePropertyBridge και ObjectPropertyBridge. Οι πρώτες δημιουργούν ιδιότητες που παίρνουν ως αντικείμενα λεκτικά, ενώ οι τελευταίες δημιουργούν ιδιότητες που παίρνουν ως αντικείμενα πόρους. Στις γραμμές 6-9 ορίζεται η κλάση Book, με συγκεκριμένο μοτίβο στο URI το οποίο θα συμπληρώνεται από το πεδίο isbn του πίνακα books της βάσης. Οι γραμμές 15-19 ορίζουν αντικείμενα της κλάσης author. Δεν προσδιορίζεται ωστόσο κάποιο μοτίβο για URI και επομένως οι κόμβοι που θα σχηματιστούν θα είναι κενοί. Οι γραμμές 10-12 ορίζουν τη ιδιότητα title για τα αντικείμενα της κλάσης Book, που θα παίρνει ως αντικείμενο το λεκτικό που προκύπτει από την στήλη title του πίνακα books. Οι γραμμές 20-22 ορίζουν αντίστοιχα την ιδιότητα fullname για πόρους της κλάσης Author, η οποία θα έχει ως αντικείμενο το λεκτικό που προκύπτει από τη στήλη name του πίνακα authors. Οι γραμμές 23-30 συνδέουν πόρους της κλάσης Author με άλλους πόρους. Η κλάση του πόρου μπορεί να οριστεί, όπως στην περίπτωση του βιβλίου με τη χρήση του referredclass. Διαφορετικά μπορεί να δίνεται ένα URI κατ ευθείαν από κάποια στήλη της βάσης όπως στην περίπτωση homepage. Ένα αποτέλεσμα που θα παίρναμε από μια τέτοια απεικόνιση δίνεται παρακάτω (οι τιμές λεκτικών και οι πόροι προκύπτουν από τις τιμές της βάσης): 1. <ex:author rdf:nodeid='a465'> 2. <ex:fullname>chris Bizer</ex:fullname> 3. <ex:homepage rdf:resource='http://www.bizer.de'/> 4. <ex:author_of> 5. <rdf:bag> 6. <rdf:li rdf:resource='http://example.org#book321230273'/> 7. <rdf:li rdf:resource='http://example.org#book884237273'/> 8. </rdf:bag> 9. </ex:author_of> 10. </ex:author> 2.3.2 D2RQ Καθώς η γλώσσα D2R MAP εμπεριέχει την SQL εντός του κώδικα απεικόνισης παρουσιάζει ορισμένες δυσκολίες όσον αφορά την ευχρηστία. Η γλώσσα D2RQ [2] αποτελεί εξέλιξη της D2R MAP. Σε συνδυασμό με το εργαλείο D2R server δημιουργεί έναν εικονικό γράφο με πληροφορία από τη βάση δεδομένων. Η D2RQ πλεονεκτεί ως προς την αναγνωσιμότητα καθώς χρησιμοποιεί την σύνταξη turtle. Επιπλέον απαιτεί λιγότερη SQL κατευθείαν ενσωματωμένη στον κώδικα. Τα βασικά συστατικά της D2RQ είναι και πάλι τα ClassMaps και τα PropertyBridges. Το συνοπτικό σχήμα λειτουργίας της γλώσσας φαίνεται στο σχήμα της Εικόνα 2. Παραδοτέο 3.1: Τεχνική Αναφορά 7

Εικόνα 2 Συνοπτική λειτουργία D2RQ. Όπως και στην περίπτωση της D2R MAP, μπορούμε να ορίζουμε URI για τους διάφορους πόρους, τα οποία να συμπληρώνονται από κάποιο πεδίο μιας βάσης δεδομένων. Το τμήμα του URI που θα προκύψει από κάποιο πεδίο γράφεται μεταξύ των χαρακτήρων @@. Στο σχήμα έχουμε και πάλι μια βάση με συγγραφείς και δημοσιεύσεις (author paper). Στη συνέχεια δίνουμε ένα παράδειγμα κώδικα γραμμένου σε D2RQ. Στο παράδειγμα αυτό υποθέτουμε την ύπαρξη ενός πίνακα που αναφέρεται σε συνέδρια και έχει όνομα Conferences. 1. # D2RQ Namespace 2. @prefix d2rq: <http://www.wiwiss.fuberlin.de/suhl/bizer/d2rq/0.1#>. 3. # Namespace of the ontology 4. @prefix : <http://annotation.semanticweb.org/iswc/iswc.daml#>. 5. # Namespace of the mapping file; does not appear in mapped data 6. @prefix map: <file:///users/d2r/example.ttl#>. 7. # Other namespaces 8. @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>. 9. @prefix xsd: <http://www.w3.org/2001/xmlschema#>. 10. 11. map:database1 a d2rq:database; 12. d2rq:jdbcdsn "jdbc:mysql://localhost/iswc"; 13. d2rq:jdbcdriver "com.mysql.jdbc.driver"; 14. d2rq:username "user"; 15. d2rq:password "password"; 16.. 17. 18. map:conference a d2rq:classmap; 19. d2rq:datastorage map:database1; 20. d2rq:class :Conference; 21. d2rq:uripattern "http://conferences.org/comp/confno@@conferences.confid@@"; 22.. Παραδοτέο 3.1: Τεχνική Αναφορά 8

23. 24. map:eventtitle a d2rq:propertybridge; 25. d2rq:belongstoclassmap map:conference; 26. d2rq:property :eventtitle; 27. d2rq:column "Conferences.Name"; 28. d2rq:datatype xsd:string; 29.. 30. map:location a d2rq:propertybridge; 31. d2rq:belongstoclassmap map:conference; 32. d2rq:property :location; 33. d2rq:column "Conferences.Location"; 34. d2rq:datatype xsd:string; 35.. Στις γραμμές 1-9 ορίζουμε ένα σύνολο από namespaces που θα χρησιμοποιηθούν στη συνέχεια. Στις γραμμές 11-16 ρυθμίζονται οι παράμετροι σύνδεσης με τη βάση δεδομένων από την οποία θα αντλήσουμε τα δεδομένα. Στις γραμμές 18-22 ορίζεται ένα ClassMap, μια απεικόνιση που δημιουργεί πόρους της κλάσης Conference. Αυτό το κάνει λαμβάνοντας τις εγγραφές από τον πίνακα Conference της βάσης Database1. Για τη δημιουργία των URI κάθε εγγραφής χρησιμοποιείται το σταθερό τμήμα http://conferences.org/comp/confno, το οποίο συμπληρώνεται από το πεδίο ConfID του πίνακα Conferences. Οι γραμμές 24-35 ορίζουν δύο ιδιότητες για αντικείμενα της κλάσης Conference. Στις γραμμές 24-29 ορίζεται η ιδιότητα eventtitle, η οποία παίρνει ως αντικείμενο ένα λεκτικό από τη στήλη Name του πίνακα Conferences. Στις γραμμές 30-35 ορίζεται η ιδιότητα location που παίρνει ως αντικείμενο το λεκτικό που προκύπτει από την τιμή του πεδίου Location του ίδιου πίνακα. Εκτός από τη λέξη d2rq:column μπορεί να χρησιμοποιηθεί και η d2rq:sqluripattern για τον προσδιορισμό αντικειμένων που είναι πόροι. Επιπλέον δίνεται η δυνατότητα να προσδιοριστούν ιδιότητες από τα πεδία κάποιου άλλου πίνακα με χρήση του d2rq:join, καθώς και η δυνατότητα να εφαρμόζονται κάποιες ιδιότητες μόνο σε συγκεκριμένες εγγραφές των πινάκων με χρήση του d2rq:condition. Εικόνα 3 Σχήμα λειτουργίας D2R Server. Παραδοτέο 3.1: Τεχνική Αναφορά 9

2.3.3 D2R Server Ο D2R Server [6, 7] είναι ένα εργαλείο που μπορεί να χρησιμοποιήσει αρχεία απεικόνισης γραμμένα σε D2RQ για να δημιουργεί εικονικούς γράφους RDF και την πλοήγηση από μια βάση δεδομένων. Αυτό το πραγματοποιεί εκτελώντας επί τόπου ερωτήματα SQL για να δημιουργήσει έναν γράφο RDF με τα δεδομένα που ορίζει η απεικόνιση. Ο D2R Server μπορεί να αποδώσει ένα συγκεκριμένο URI σε κάθε οντότητα που περιγράφεται στη βάση και ορίζεται από την απεικόνιση. Τα URI αυτά είναι ανακτήσιμα (resolvable), δηλαδή μια περιγραφή RDF ενός πόρου μπορεί να ληφθεί με απλή πρόσβαση στο URI. Η web διεπαφή που παρέχεται, καθώς και ο RDF γράφος που δημιουργείται περιέχουν τα ίδια URIs. Ο D2R Server παρέχει τα εξής: 1. Μια διεπαφή HTML που επιτρέπει την πλοήγηση μεταξύ των διαφόρων πόρων που δημιουργούνται. 2. Μια όψη συνδεδεμένων δεδομένων, η οποία μπορεί να πλοηγηθεί με χρήση κατάλληλων RDF browsers. 3. Ένα SPARQL endpoint για τη διατύπωση ερωτημάτων στο γράφο που δημιουργείται. Ο D2R Server μπορεί να χρησιμοποιηθεί είτε τοπικά, ως εργαλείο από την γραμμή εντολών, είτε να ενσωματωθεί στη λειτουργία ενός server. Σχηματικά η λειτουργία και οι υπηρεσίες του εργαλείου δίνονται στο σχήμα της Εικόνα 3, ενώ η HTML διεπαφή έχει την όψη που φαίνεται στην Εικόνα 4. Εικόνα 4 HTML όψη καθώς ξεκινάμε τον D2R Server. Στην όψη αυτή ο D2R Server τρέχει τοπικά από τη γραμμή εντολών. Για να ξεκινήσουμε τον D2R Server χρησιμοποιούμε κάποιο αρχείο απεικόνισης. Η πρόσβαση γίνεται στη διεύθυνση http://snf-494989.vm.okeanos.grnet.gr:8080/diana_rdf/, πράγμα που σημειώνεται στην αρχή της σελίδας που βλέπουμε. Η γραμμή που ακολουθεί δείχνει το σύνολο των κλάσεων πόρων που έχει δημιουργήσει το αρχείο απεικόνισης το οποίο χρησιμοποιήθηκε. Για κάθε κλάση έχουμε έναν σύνδεσμο που μας πηγαίνει σε μια όψη, η οποία δείχνει όλα τα αντικείμενα της συγκεκριμένης κλάσης που δημιούργησε η απεικόνιση. Στην κατηγορία RDF View δίνεται η διεύθυνση πρόσβασης του RDF γράφου για RDF browsers. Η διεύθυνση αυτή είναι η http://snf-494989.vm.okeanos.grnet.gr:8080/diana_rdf/all. Στην κατηγορία SPARQL Παραδοτέο 3.1: Τεχνική Αναφορά 10

Εικόνα 5 Απεικόνιση όλων των πόρων της κλάσης Hairpins. Εικόνα 6 Απεικόνιση των ιδιοτήτων ενός αντικειμένου. endpoint δίνεται η διεύθυνση πρόσβασης για τη διατύπωση ερωτημάτων SPARQL, στο http://snf-494989.vm.okeanos.grnet.gr:8080/diana_rdf/sparql. Πατώντας σε κάποιον από τους συνδέσμους των κλάσεων που δίνονται από την απεικόνιση, μπορούμε να δούμε μια HTML όψη όλων των πόρων της συγκεκριμένης κλάσης. Αν πατήσουμε στο σύνδεσμο Hairpins (πρόκειται για πόρους μιας κλάσης που ονομάζεται hairpins περισσότερα σε κεφάλαιο 5) που φαίνεται στην Εικόνα παίρνουμε το σύνολο των πόρων σε πλοηγήσιμη μορφή. Πατώντας στον κάθε σύνδεσμο-πόρο μπορούμε να δούμε τις ιδιότητες που έχει καθώς και τις (λεκτικές) τιμές, ή τους άλλους πόρους που παίρνει ως αντικείμενο η κάθε ιδιότητα. Ένα παράδειγμα φαίνεται στην Εικόνα, όπου φαίνονται οι ιδιότητες του πόρου http://snf- 494989.vm.okeanos.grnet.gr:8080/DIANA_RDF/resource/hairpins/MI0000001/18. Όπως Παραδοτέο 3.1: Τεχνική Αναφορά 11

φαίνεται και για το σύνολο δεδομένων αυτού του πόρου, εμφανίζεται πληροφορία σχετικά με την έκδοση του. 3 Μηχανισμοί καταγραφής πληροφορίας αλλαγών εξέλιξη δεδομένων Σε πολλά πεδία που αφορούν τη ζωή ενδέχεται να υπάρχει ανάγκη καταγραφής δεδομένων τα οποία μεταβάλλονται με το χρόνο. Για παράδειγμα το κείμενο ενός νόμου μπορεί να αλλάζει κατά καιρούς. Υπάρχει ανάγκη κανείς να έχει πρόσβαση τόσο σε παλιότερες μορφές του κειμένου, όσο και στην τρέχουσα έκδοση. Ένα σχολείο μπορεί να αλλάζει όνομα, προσωπικό, διευθυντή κλπ. Όπως έχει αναφερθεί και στην εισαγωγή, στην περίπτωση των επιστημονικών δεδομένων μπορεί να υπάρχει αναθεώρηση κάποιας παλιότερης καταγραφής, για παράδειγμα λόγο της διεξαγωγής νέων πειραμάτων που αναιρούν παλιότερα αποτελέσματα. Στην περίπτωση που υπάρχει δημοσίευση ανοικτών συνδεδεμένων δεδομένων, οι αλλαγές αυτές πρέπει να καταγράφονται με κάποιον τρόπο, αλλά να είναι προσβάσιμες και παλιότερες εκδόσεις των δεδομένων. Μπορούμε να χωρίσουμε το είδος των αλλαγών που προκύπτουν σε δύο βασικές κατηγορίες: 1. αλλαγές που υφίσταται συνολικά ένας πόρος και 2. αλλαγές που υφίστανται τα δεδομένα που σχετίζονται με έναν πόρο που εξετάζουμε αναλυτικά στα υποκεφάλαια 3.1 και 3.2 αντίστοιχα. Σε κάθε περίπτωση πρέπει να εξασφαλιστούν μηχανισμοί για την καταγραφή των αλλαγών και πρόσβαση σε όλες τις εκδόσεις των δεδομένων. Σημειώνεται ότι δεν υπάρχει γενική λύση για όλες τις περιπτώσεις και στη συνέχεια περιγράφονται ορισμένες ενδεικτικές λύσεις που μπορούν να χρησιμοποιηθούν. 3.1 Αλλαγές που υφίστανται συνολικά οι πόροι Μια περίπτωση όπου η αλλαγή αφορά συνολικά τον πόρο είναι για παράδειγμα το νομικό κείμενο. Μια έκδοση του κειμένου μπορεί να αφορά την τρέχουσα χρονική στιγμή, κάποια άλλη αφορά περασμένα έτη. Στην περίπτωση αυτή κατά βάση ενδιαφέρει το κείμενο του νόμου. Έτσι μπορεί να εφαρμοστεί μια απλή επέκταση URI, ώστε το τελευταίο τμήμα του να αφορά την έκδοση του πόρου. Η επέκταση έχει τη μορφή: http://{domain}/{concept}/{identifier}/{version} [5]. Σε περίπτωση που χρησιμοποιούμε αυτή την τεχνική αναφερόμαστε σε κάθε έκδοση του κειμένου με διαφορετικό URI. Ορίζεται στην πραγματικότητα ως διαφορετικός πόρος το κείμενο για κάθε έκδοση. Όταν συμβαίνει αυτό, συνίσταται να παρέχονται οι ακόλουθοι μηχανισμοί: αφενός ένας μηχανισμός πλοήγησης μεταξύ των εκδόσεων και αφετέρου ένας πόρος χωρίς έκδοση, ο οποίος θα λειτουργεί ως γέφυρα προς τις επιμέρους εκδόσεις του πόρου (hub). 3.2 Αλλαγές που υφίστανται δεδομένα σχετιζόμενα με πόρους Η δεύτερη περίπτωση που ενδιαφέρει είναι αυτή στην οποία αλλάζουν επιμέρους δεδομένα που σχετιζόμενα με πόρους. Στην περίπτωση αυτή υπάρχει μια σειρά από διαφορετικές προσεγγίσεις οι οποίες μπορούν να ακολουθηθούν. Παραδοτέο 3.1: Τεχνική Αναφορά 12

Μια πρώτη αντιμετώπιση του προβλήματος μπορεί να γίνει με χρήση δεδομένων χρονικών σειρών. Για παράδειγμα, για ένα σχολείο, ενδέχεται να ενδιαφέρει η καταγραφή των κοριτσιών ηλικίας 11 ετών που φοιτούν σ αυτό. Μπορούμε για τον πόρο να έχουμε μια ιδιότητα που μας πηγαίνει στη χρονική σειρά δεδομένων για αυτό το στοιχείο. Μια τέτοια εικόνα θα ήταν η ακόλουθη: </data/edubase/census/12345/age/11> a sdmx:timeseries ; edu:school </id/school/12345> ; sdmx:age 11 ; sdmx:observation </data/edubase/census/12345/age/11/gender/f/2009>, </data/edubase/census/12345/age/11/gender/f/2008>, </data/edubase/census/12345/age/11/gender/f/2007>,.... Στην παραπάνω προσέγγιση έχουμε μια σειρά από πόρους που θα περιέχουν την πληροφορία «αριθμός κοριτσιών ηλικίας 11 ετών για τη χρονιά 2007, 2008, κλπ». Η παραπάνω προσέγγιση δημιουργεί μια σειρά από δυσκολίες. Θα ήταν πολύ απλούστερο να υπάρχει απλώς μια ιδιότητα που να δίνει τον αριθμό των κοριτσιών ηλικίας 11. Αντί γι'αυτό έχουμε μια σειρά από πόρους που θα περιέχουν μια ιδιότητα που ενδιαφέρει. Αυτό οδηγεί σε «φλύαρες» διατυπώσεις. Τα πράγματα γίνονται ακόμα πιο πολύπλοκα αν σκεφτούμε ότι για κάθε επιπλέον διάσταση που προκύπτει (αν ενδιαφέρει κάποιο στοιχείο επιπλέον, πέρα από το φύλο και την ηλικία) χρειάζεται μια νέα σειρά δεδομένων. Μια άλλη προσέγγιση που αποφεύγει το παραπάνω πρόβλημα των «φλύαρων» διατυπώσεων είναι η χρήση ονοματισμένων γράφων (named graphs) [4]. Πρόκειται για οντότητες στις οποίες ορίζονται δύο συναρτήσεις, η name και η rdfgraph, οι οποίες καθορίζουν το όνομα του πόρου (URI) και ένα RDF γράφο που αναπαριστά τον πόρο αντίστοιχα. Πρακτικά αποδίδεται σε ένα σύνολο δεδομένων ένα όνομα. Η μαθηματική διατύπωση της έννοιας ονοματισμένος γράφος είναι η ακόλουθη: Αν U το σύνολο όλων των URI, B άπειρο σύνολο κενών κόμβων και L το σύνολο όλων των λεκτικών, τότε V = U B L το σύνολο των κόμβων. T = V U Vτο σύνολο όλων των τριπλέτων. Το σύνολο γράφων είναι το δυναμοσύνολο G του T. Ένας ονοματισμένος γράφος είναι ένα ζεύγος ng = (n, g), n U g G. Γράφουμε name(ng) = n και rdfgraph(ng) = g. Συμπληρωματικά αναφέρουμε ότι για ένα σύνολο N από ονοματισμένους γράφους, αυτό ορίζεται με τη βοήθεια ενός συνόλου A, υποσύνολο του N, το οποίο ορίζει ποιοι από τους ονοματισμένους γράφους θεωρούνται αποδεκτοί. Η χρήση των παραπάνω μηχανισμών επιτρέπει την αναφορά στο ίδιο σύνολο δεδομένων με διαφορετική αναφορά σε αυτά. Μπορούμε πλέον να διακρίνουμε διαφορετικά αντίγραφα του ίδιου γράφου. Ο μηχανισμός αυτός έχει διάφορες χρήσεις: μπορεί να εφαρμόζεται έλεγχος προέλευσης της πληροφορίας (ορίζουμε ποιο σύνολο δεδομένων, που αναφέρονται στον ίδιο πόρο, εμπιστευόμαστε), έλεγχος πρόσβασης, καταγραφή πληροφορίας έκδοσης κ.α. Στην περίπτωση που θέλουμε να χρησιμοποιήσουμε ονοματισμένους γράφους για την καταγραφή αλλαγών υπάρχουν δύο δυνατές προσεγγίσεις. Στην πρώτη περίπτωση δημοσιεύουμε το πλήρες σύνολο δεδομένων με τη μορφή ονοματισμένου γράφου. Για παράδειγμα, για ένα σχολείο δίνουμε το σύνολο των δεδομένων που σχετίζονται με αυτό, υπό διαφορετικό ονοματισμένο γράφο, όπως στο ακόλουθο παράδειγμα: Παραδοτέο 3.1: Τεχνική Αναφορά 13

<http://education.data.gov.uk/id/school/12345> rdfs:label "Wildmoor Heath School"@en ; foaf:isprimarytopicof <http://education.data.gov.uk/doc/school/12345>, <http://education.data.gov.uk/doc/school/12345/2009-09-01>, <http://education.data.gov.uk/doc/school/12345/2001-09-01>, <http://education.data.gov.uk/doc/school/12345/1996-09-01>,.... Στο παραπάνω παράδειγμα έχουμε μια σειρά από πόρους που αναφέρονται στο ίδιο αντικείμενο του πραγματικού κόσμου (http://education.data.gov.uk/id/school/12345). Οι πόροι αυτοί δύνανται να περιέχουν διαφορετική και αντικρουόμενη πληροφορία, αναφερόμενοι όμως στο ίδιο αντικείμενο. Αυτή η προσέγγιση έχει ως βασικό μειονέκτημα, ότι δεν αντιμετωπίζει την περίπτωση όπου ένας πόρος συνδέεται με κάποιον άλλο, ο οποίος επίσης παρουσιάζει αλλαγές κατά εκδόσεις. Για παράδειγμα μια αναφορά στο προσωπικό του σχολείου μπορεί να δίνεται με τη μορφή πόρου ως εξής: <http://education.data.gov.uk/id/school/12345> rdfs:label "Broadmoor Primary School"@en ; edu:staffing <http://education.data.gov.uk/id/school/12345/staff>. Το URI για τον πόρο «προσωπικό» ενδέχεται σε όλα τα έγγραφα που αφορούν το σχολείο να δίνεται με αυτή τη μορφή. Όταν βλέπουμε τα δεδομένα του σχολείου πχ στον γράφο http://education.data.gov.uk/doc/school/12345/2001-09-01, τότε το URI για το προσωπικό θα αναφέρεται στην τρέχουσα έκδοση και όχι στο 2001, με αποτέλεσμα να έχουμε ασυνέπειες. Η δεύτερη προσέγγιση είναι η χρήση ονοματισμένων γράφων στις επιμέρους τριπλέτες ενός RDF. Με τον τρόπο αυτό συλλέγουμε πληροφορία από πολλαπλές πηγές και ομαδοποιούμε τα δεδομένα βάσει της πηγής, της χρονικής στιγμής στην οποία αναφέρονται, της εγκυρότητας κλπ. Στη συνέχεια μια εφαρμογή μπορεί να κατασκευάσει ένα γράφο τον οποίο θεωρούμε έγκυο, χρησιμοποιώντας ορισμένους κανόνες, όπως τους παρακάτω. Συνδυάζουμε: 1. Τριπλέτες που είναι έγκυρες για τη χρονική στιγμή και προέρχονται από επίσημη πηγή. 2. Τριπλέτες από υπόλοιπους γράφους, όπου συναντάμε κάποιο υποκείμενο, ή κάποια ιδιότητα που δεν εμφανίζεται στον έως τώρα γράφο. Ένα παράδειγμα μπορούμε να δούμε στο ακόλουθο σχήμα: http://education.data.gov.uk/data/edubase/12345/2008-09-01/authoritative { <http://education.data.gov.uk/id/school/12345> rdfs:label "Broadmoor Primary School"@en ; edu:census <http://education.data.gov.uk/id/school/12345/census>. <http://education.data.gov.uk/id/school/12345/census>.... } http://education.data.gov.uk/data/edubase/12345/2009-09-01/authoritative { <http://education.data.gov.uk/id/school/12345> rdfs:label "Wildmoor Heath School"@en ; edu:census <http://education.data.gov.uk/id/school/12345/census>. <http://education.data.gov.uk/id/school/12345/census>.... } Παραδοτέο 3.1: Τεχνική Αναφορά 14

http://education.data.gov.uk/data/ofsted/12345/2008-03-01/authoritative>{ <http://education.data.gov.uk/id/school/12345> edu:inspection <http://education.data.gov.uk/doc/school/12345/inspection/2008>. <http://education.data.gov.uk/doc/school/12345/inspection/2008>.... } Στο παραπάνω παράδειγμα έχουμε τρεις ονοματισμένους γράφους που περιέχουν τριπλέτες αναφερόμενες στον ίδιο πόρο. Με βάση τους κανόνες που παρουσιάσαμε παραπάνω, για τα δεδομένα που αφορούν την ημερομηνία 1/1/2010, θα σχηματίζαμε ένα γράφο παίρνοντας: Από το δεύτερο γράφο (θεωρείται έγκυρος - authoritative και είναι ο πιο πρόσφατος) παίρνουμε τα στοιχεία label και census. Τα ίδια ακριβώς στοιχεία που αναφέρονται στον πρώτο γράφο δεν ενδιαφέρουν καθώς αναφέρεται στο 2008 (είναι δηλαδή παλιότερα δεδομένα). Από τον τρίτο γράφο έχουμε την ιδιότητα inspection, η οποία δεν υπάρχει ως τώρα και έτσι τη χρησιμοποιούμε για να συμπληρώσουμε τον γράφο που θεωρούμε έγκυρο. Πρέπει να σημειωθεί ότι οι παραπάνω τεχνικές δεν αποτελούν λύσεις για κάθε περίπτωση, αλλά ιδέες που μπορούν να εφαρμοστούν κατά περιπτώσεις. Επιπλέον προβλήματα που εξακολουθούν να υπάρχουν είναι τα εξής: πώς αναπαρίστανται διαστήματα στα οποία θεωρούμε ότι ένας γράφος είναι έγκυρος; Πώς ορίζουμε αν θεωρείται έγκυρος-επίσημος (authoritative); Πώς αναπαρίσταται ένα γεγονός αντικατάστασης ενός παλιότερου γράφου από έναν νεότερο; Τα ερωτήματα αυτά δεν έχουν ακόμα απαντηθεί οριστικά και περαιτέρω έρευνα απαιτείται. 4 Παράδειγμα με βιολογικά δεδομένα Τέλος, παρουσιάζουμε πως μπορούν να χρησιμοποιηθούν τα παραπάνω εργαλεία αναφερθέντα εργαλεία, γλώσσες και τεχνικές σε ένα πραγματικό παράδειγμα με εξελισσόμενα επιστημονικά διασυνδεδεμένα δεδομένα. Χρησιμοποιούμε βιολογικά δεδομένα που υπάρχουν στην σχεσιακή βάση DIANA που αποθηκεύει δεδομένα για micro-rnas. Τα micrornas είναι Εικόνα 5 Το βιολογικό μονοπάτι του microrna. Παραδοτέο 3.1: Τεχνική Αναφορά 15

Εικόνα 8 Σχήμα σχεσιακής βασης MicroRNA. Εικόνα 9 Σύνολο δεδομένων για Hairpins. μικρά μόρια RNA, τα οποία έχουν ρυθμιστικό ρόλο, «στοχεύοντας» γονίδια και ελέγχοντας την έκφρασή τους. Με τον τρόπο αυτό μπορεί να σχετίζονται με την εκδήλωση, ή αντιμετώπιση ασθενειών. Τα μόρια micro-rna συναντώνται βιβλιογραφικά σε δύο βασικές μορφές, τα πρόδρομα μόρια (hairpins) και τα ώριμα μόρια (matures). Τα τελευταία είναι παράγωγα των πρώτων, όπως μας δείχνει το σχήμα της Εικόνα 5. Για κάθε micro-rna οι ενδιαφέρουσες πληροφορίες που χρειάζονται να καταγραφτούν είναι το όνομά του και η νουκλεοτιδική ακολουθία του. Το όνομα μπορεί να μεταβάλλεται μεταξύ διαφορετικών εκδόσεων της βάσης, καθώς οι κανόνες ονοματολογίας των micro-rna εξελίσσονται. Η ακολουθία μπορεί να επανεκτιμηθεί, μετά από την διεξαγωγή καινούριων πειραμάτων, ή χρήση πρόβλεψης από διαφορετικό λογισμικό. Επιπλέον ενδιαφέρον έχει η συσχέτιση μεταξύ τον πρόδρομων μορίων (hairpins) και των ώριμων μορίων (matures), δηλαδή ποια ώριμα μόρια παράγονται από ποια πρόδρομα. Το σχήμα της σχεσιακής βάσης που αποτυπώνει τα παραπάνω φαίνεται στην Εικόνα 8. Για να δημιουργήσουμε ανοικτά συνδεδεμένα δεδομένα από την σχεσιακή βάση DIANA χρησιμοποιούμε την γλώσσα D2RQ και το εργαλείο D2R Server σε συνδυασμό με την επέκταση του URI, θεωρώντας κάθε micro-rna σε κάθε έκδοση ως ξεχωριστό πόρο. Με κατάλληλη απεικόνιση δίνεται η δυνατότητα πλοήγησης μεταξύ των ίδιων micrornas μεταξύ διαφορετικών εκδόσεων. Επιπλέον δημιουργούμε την κλάση change, η οποία παριστάνει Παραδοτέο 3.1: Τεχνική Αναφορά 16

Εικόνα 10 Σύνολο δεδομένων για Matures. πότε συνέβη μια αλλαγή και ποια δεδομένα είναι αυτά που άλλαξαν. Ένα παράδειγμα για κάθε έναν από τους πόρους της κλάσης hairpin, mature, change φαίνεται στα σχήματα των Εικόνων Εικόνα 8, Εικόνα και 11 αντίστοιχα. Η διαδικασία απεικόνισης δεν τελειώνει εδώ. Από τη μια μεριά νέες εκδόσεις για τα δεδομένα micro-rna προκύπτουν, ενώ από την άλλη ο στόχος είναι η σύνδεση των micrornas και με τα γονίδια στα οποία επιδρούν. Η πρόκληση στη διαδικασία απεικόνισης αφορά τη συγγραφή απεικονίσεων που θα χρησιμοποιούν όσο το δυνατόν λιγότερες πράξεις SQL για την επιτόπου μετατροπή των δεδομένων της βάσης σε RDF πληροφορία. 5 Επίλογος Στην εργασία αυτή εξετάσαμε μοντέλα για την απεικόνιση εξελισσόμενων ανοιχτών διασυνδεδεμένων δεδομένων, που μας εξασφαλίζουν τις δυνατότητες εμπορευσιμότητας και διατηρισιμότητας. Επιπλέον παρουσιάσαμε γλώσσες και εργαλεία που βοηθούν τον μετασχηματισμό δεδομένων που ήδη βρίσκονται αποθηκευμένα σε σχεσιακές βάσεις σε RDF μορφή, αφού υπάρχει μεγάλη πληθώρα τέτοιων δεδομένων, ενώ υπάρχει μικρή ποσότητα δεδομένων σε RDF μορφή αυτή την στιγμή στο διαδίκτυο. Τέλος εξετάσαμε όλα τα παραπάνω μοντέλα, εργαλεία και γλώσσες μέσα από ένα πραγματικό παράδειγμα επιστημονικών δεδομένων, τα μόρια micro-rna που έχουν το ιδιαίτερο χαρακτηριστικό να εξελίσσονται και να μεταβάλλονται με την έκδοση νέων αποτελεσμάτων από νέα πειράματα. Βιβλιογραφία [1] http://d2rq.org/ [2] http://d2rq.org/d2rq-language Εικόνα 11 Σύνολο δεδομένων για change. [3] D2R MAP A Database to RDF Mapping Language Christian Bizer (2003) [4] Named graphs - Jeremy J. Carroll, Christian Bizer, Pat Hayes, Patrick Stickler - Journal of Web Semantics, 2005 [5] http://www.jenitennison.com/blog/node/141 Παραδοτέο 3.1: Τεχνική Αναφορά 17

[6] http://d2rq.org/d2r-server [7] D2R Server: A Semantic Web Front-end to Existing Relational Databases -Richard Cyganiak, Christian Bizer, Freie Universität Berlin [8] http://semanticweb.com/relational-database-and-the-semantic-web_b16083 [9] http://wifo5-03.informatik.unimannheim.de/bizer/d2rmap/d2r_language%20specification.pdf Παραδοτέο 3.1: Τεχνική Αναφορά 18