Επιστηµονική ραστηριότητα ΠΘ1: Τεχνική Υποστήριξη. Επεξεργασία υπάρχοντος υλικού του Κόµβου ΠΕΡΙΕΧΟΜΕΝΑ 1.Εισαγωγή-Ο υπάρχων κόµβος. 2 2. Σκοπός του προγράµµατος - Προδιαγραφές. 2 3. Τεχνολογία Υλοποίησης Περιγραφή βοηθητικής εφαρµογής 3 3 Η µετατροπή σε UTF-8 και XML. 4 4. Η επαναληπτική διαδικασία ανάκτησης πληροφορίας. 4 5. Το πρόγραµµα µαζικής ανάκτησης της πληροφορίας των ενοτήτων του κόµβου. 5 6. Περιγραφή αποτελεσµάτων ανάκτησης. 8 6.1 Λεξικό όρων. 8 6.2 Όλες οι υπόλοιπες ενότητες. 8 7. Συµπεράσµατα. 17 Ζήσης Κ. Τιάλιος Σελίδα 1 8/3/2007
1.Εισαγωγή-Ο υπάρχων κόµβος. Το Κέντρο Ελληνικής Γλώσσας διαθέτει ήδη διαδικτυακό τόπο για την υποστήριξη των διδασκόντων την ελληνική γλώσσα. Μια από τις βασικότερες πτυχές της υλοποίησης του νέου κόµβου για την ελληνική γλώσσα είναι η εκµετάλλευση του υπάρχοντος υλικού του κόµβου και των περιεχοµένων του τωρινού Ηλεκτρονικού Κόµβου. Ο νέος κόµβος θα χρησιµοποιεί ένα δυναµικό µοντέλο παρουσίασης όπου το περιεχόµενο των σελίδων που θα αποτελούν τον διαδυκτιακό τόπο θα προέρχεται από την βάση δεδοµένων που θα είναι συνδεδεµένη µε τον Web Server εξυπηρετητή του κόµβου. Η διατήρηση του περιεχοµένου σε βάση γίνεται για την διασυνδεση τους και µε τα υπόλοιπα υποσυστήµατα που πρόκειτε να υλοποιηθούν πέρα από το σύστηµα παρουσίασης. Ο υπάρχων κόµβος µε εξαίρεση την ενότητα των ηλεκτρονικών λεξικών χρησιµοποιει ένα στατικο µοντέλο παρουσίασης δηλαδή ένα σύνολο στατικών σελίδων HTML. Αυτές οι σελίδες είναι οργανωµένες στο συστηµα αρχείων σε φακέλους ανάλογα µε την ενότητα στην οποία ανήκουν. Η διασυνδεση µεταξύ τους που δίνει το σύστηµα πλοήγησης για τον χρήστη λειτουργεί µε τη λογική του υπερκειµένου. 2. Σκοπός του προγράµµατος - Προδιαγραφές. Για τις ενότητες οι οποίες ήταν ήδη οργανωµένες σε βάση δεδοµένων η εισαγωγή τους στη νέα βάση (MySQL) έγινε µε χρήση µεθόδων parsing και regular expressions της PHP. Για τις υπόλοιπες όµως ενότητες,που αποτελούν και το µεγαλύτερο όγκο του κόµβου, που αποτελούνται από στατικές ιστοσελίδες έπρεπε να αναπτυχθει ένα σύστηµα το οποίο θα επεξεργαζόταν τις υπαρχουσες ιστοσελίδες µε σκοπό την αποθήκευση του περιεχοµένου τους στη βάση. Τα προβλήµατα στα οποία έπρεπε να δώσει λύση αυτό το σύστηµα είναι: Να κρατήσει την διασύνδεση των κειµένων µεταξύ τους µεταφράζοντας την λογική του υπερκειµένου σε λογική βάσεων δεδοµένων. Να προσφέρει τις απαραίτητες πληροφορίες ώστε να γίνει εύκολη η περιήγηση στις ενότητες και υποενότητες του κόµβου. Τα Microsoft Word specific tags και presentation content. Την άσχηµα διαµορφωµένη HTML. Να κρατήσει µόνο τα κείµενα µε την µορφοποίηση τους. Ζήσης Κ. Τιάλιος Σελίδα 2 8/3/2007
Να δηµιουργήσει διακριτούς πίνακες στη βάση δεδοµένων που θα περιέχουν κείµενα διακριτών ενοτήτων και υποενοτήτων. Τα κείµενα που θα µπουν τελικά στη βάση δεδοµένων έπρεπε να είναι σε UNICODE κωδικοποίηση µιας και περιέχουν χαρακτήρες από διάφορες γλώσσες και αρχαία. Όλα τα παραπάνω αποτελούν και προδιαγραφές για τον κώδικα του συστήµατος. 3. Τεχνολογία Υλοποίησης Περιγραφή βοηθητικής εφαρµογής Για την υλοποίηση ενός τέτοιου συστήµατος επιλέχθηκε να χρησιµοποιηθεί µια γλώσσα αντικειµενοστραφούς προγραµµατισµού όπως είναι η JAVA έτσι ώστε να απαντηθούν τα παραπάνω προβλήµατα από χωριστές κλάσεις που συνεργάζονται µεταξύ τους. Οι κλάσεις αυτές θα πρέπει να εφαρµοστούν στο σύνολο των ιστοσελίδων του κόµβου ενώ σε ένα αριθµό ιστοσελίδων που ανήκουν στην ίδια ενότητα ή υποενότητα καθώς επίσης να µπορούν να επαναχρησιµοποιηθούν για κάθε ενότητα. Το σύστηµα που υλοποιήθηκε για να εξυπηρετήσει τους ανωτέρω σκοπούς αποτελείται από 13 διαφορετικές κλάσεις και χρησιµοποιεί 4 APIs. To JDK1.4 πέρα από τις βασικές λειτουργίες της Java πρόσφερε την υποδοµή για την µετατροπή σε UTF8 κωδικοποίηση, για την ανάλυση των περιεχοµένων φακέλων και υποφακέλων, καθώς την χρήση των regular expressions. To JTidy API που είναι ένα open source project της SourceForge χρησιµοποιήθηκε για τον καθαρισµό των ιστοσελίδων και την µετατροπή τους σε XML. Το DOM4J API χρησιµοποιήθηκε για την επεξεργασία των XML αρχείων και την υλοποίηση του XPATH. Χρησιµοποιώντας το XPATH έγινε δυνατό να κρατηθεί µόνο η πληροφορία που κρίθηκε χρήσιµο να κρατηθεί στη βάση δεδοµένων. Tέλος ο mysql-connector-java-3.0.9 χρησιµοποιήθηκε για την σύνδεση µε την MySQL. Στην περίπτωση που άλλη βάση δεδοµένων είχε επιλεγεί θα χρησιµοποιούσαµε τον ανάλογο connector. Στο παρακάτω σχήµα φαίνεται η λειτουργία του συστήµατος επεξεργασίας ιστοσελίδων. Ζήσης Κ. Τιάλιος Σελίδα 3 8/3/2007
UTFConverter Class TideupHTML The html files in UTF8 format DirectoryTree Class This System of classes convert htm files into UTF-8 Clean HTML transformed in XML These classes are applied to each xml file MySQL DBMS JDBC A Package consisted of 7 utility and working classes and 3 Java Beans classes Retreives the Data from the xml doc and transforms it to a Database Table structure using XPATH Xml Parser and DB inserter System Stores the retreived data of the files as a table field with the right structure Σχ.1 Σύστηµα HTML Fileparsing. 1 3 Η µετατροπή σε UTF-8 και XML. Όπως αναφέρθηκε στις προδιαγραφές τα κείµενα που θα πρέπει να µπουν τελικά στη βάση δεδοµένων θα πρέπει σε UNICODE (UTF-8) κωδικοποίηση µιας και περιέχουν χαρακτήρες από διάφορες γλώσσες και αρχαία. Έτσι τα αρχεία (HTML files) του κόµβου πριν αρχίσει η επεξεργασία τους θα πρέπει να µετατραπεί η κωδικοποίηση τους. Επίσης επειδή η δηµιουργία τους έγινε µε Microsoft Word έπρεπε να αφαιρεθούν τα Microsoft Word specific tags και presentation content. Τέλος για να µπορέσει να γίνει αποτελεσµατική επεξεργασία των σελίδων έπρεπε αυτές να µετατραπούν σε XML ώστε να χρησιµοποιηθεί το XPATH. Όλα τα παραπάνω γίνανε µε τέσσερις Java κλάσεις του συστήµατος µία για κάθε µία από τις παραπάνω απαιτήσεις και την κλάση DirectoryTree η οποία αναπτύχθηκε για την επαναληπτική ανάγνωση όλων αρχείων σε όλους τους φακέλου και υποφακέλους που αποτελούσαν τον υπάρχων κόµβο. Έτσι τελικά προέκυψε το σύνολο του κόµβου µε την ίδια οργάνωση αρχείων και στην θέση κάθε HTML σελίδας υπήρχε µια XML σε UTF-8 κωδικοποίηση. 4. Η επαναληπτική διαδικασία ανάκτησης πληροφορίας. Ζήσης Κ. Τιάλιος Σελίδα 4 8/3/2007
Τα βήµατα που ακολουθούνται για την δηµιουργία του κάθε πίνακα που αντιστοιχεί σε κάθε επιµέρους ενότητα ή υποενότητα του κόµβου είναι η εξής: 1)Κατανόηση των περιεχοµένων της ενότητας 2) ηµιουργία του πίνακα που στα πεδία του θα αποθηκευτούν όλα τα περιεχόµενα της ενότητας. 3)Μετατροπή των κλάσεων του συστήµατος που επεξεργάζονται τα XML αρχεία της ενότητας ώστε να µετασχηµατίσουν το XML αρχείο στη δοµή που έχει επιλεγεί για τον πίνακα της βάσης. Το τελευταίο βήµα γίνεται επαναληπτικά µε προσαρµογή των κλάσεων σύµφωνα µε τις παρατηρήσεις και τις ανάγκες του προγραµµατιστή που υλοποιεί το σύστηµα παρουσίασης και τα υπόλοιπα υποσυστήµατα που θα συνδεθούν µε την βάση δεδοµένων. Τελικώς αυτός ο τρόπος ανάκτησης χρησιµοποιήθηκε για τρεις υποενότητες γιατί βρέθηκε τρόπος συνολικής ανάκτησης του κόµβου ενώ από αυτές κρατήθηκε µόνο το λεξικό όρων διότι λόγω της δοµής του δεν θα µπορούσε να ανακτηθεί µε τον τρόπο µαζικής ανάκτησης. Βέβαια ο κώδικας και η πείρα που αποκτήθηκε αποτέλεσαν το βασικό κορµό του νέου συστήµατος µαζικής ανάκτησης. 5. Το πρόγραµµα µαζικής ανάκτησης της πληροφορίας των ενοτήτων του κόµβου. Κατόπιν προσεκτικής µελέτης συνολικών ιστοσελίδων που αποτελούν τον Κόµβο Ελληνικής Γλώσσας αποφασίστηκε ότι θα µπορούσε να δηµιουργηθεί ένα σύστηµα που να επεξεργαστεί όλες τις ενότητες και υποενότητες του κόµβου,εκτός του λεξικού όρων, και να οργανώσει το περιεχόµενο τους σε έναν πίνακα της βάσης δεδοµένων. Επίσης από την πείρα που αποκτήθηκε από την διαδικασία ανάκτησης κάθε υποενότητας του κόµβου αποφασίστηκε η τελική µορφή της πληροφορίας που πρέπει να κρατηθεί στη βάση καθώς και η οργάνωση της. Ό δικτυακός τόπος του Κέντρου Ελληνικής Γλώσσας αποτελείτο από ένα σύνολο στατικών σελίδων HTML που ενώνονταν µεταξύ τους µε τη λογική του υπερκειµένου. Αυτές οι σελίδες είναι οργανωµένες στο σύστηµα αρχείων σε φακέλους ανάλογα µε την ενότητα στην οποία ανήκουν. Με αυτό τον τρόπο προσφερόταν και ένας τρόπος περιήγησης στα περιεχόµενα του κόµβου στους επισκέπτες του. Ήταν σαφές λοιπόν πως το πρόγραµµα έπρεπε να χρησιµοποιήσει τα links των HTML σελίδων για να αναλύσει τα περιεχόµενα όλων των σελίδων που είναι ορατές στον επισκέπτη του κόµβου ικανοποιώντας συγχρόνως τις προδιαγραφές που θέσαµε για το αποτέλεσµα του συστήµατος ανάκτησης. Στις περισσότερες περιπτώσεις µία σελίδα όπως την βλέπει ο επισκέπτης στην τωρινή µορφή του κόµβου αποτελείται ουσιαστικά από τέσσερις HTML σελίδες µιας και χρησιµοποιούνται HTML Frames. Η σελίδα που βλέπει ο χρήστης στο address bar του browser αποτελείται από τρία frames δηλαδή τρεις διαφορετικές σελίδες. Ένα είναι το Ζήσης Κ. Τιάλιος Σελίδα 5 8/3/2007
πάνω πλαίσιο (frame) του τίτλου, ένα το κεντρικό που περιέχει τα κείµενα της σελίδας και το αριστερό που παρέχει τα περιεχόµενα σε links της ενότητας ή υποενότητας στην οποία ανήκει η σελίδα ώστε να διευκολύνεται η περιήγηση. Σκοπός του προγράµµατος είναι να δηµιουργήσει µία εγγραφή στη βάση δεδοµένων για κάθε σελίδα που θα παρουσιάζεται στο χρήστη. Έτσι όταν το πρόγραµµα πρέπει να συλλέξει πληροφορίες και από τα τρία frames για να δηµιουργήσει µία εγγραφή στη βάση. Μόλις συµπληρώσει όλες τις ζητούµενες πληροφορίες δηλαδή τον τίτλο της ενότητας, τον ειδικότερο τίτλο, το όνοµα του HTML αρχείου που περιέχει τα τρία frames (url), και το κείµενο της εν-λόγω σελίδας µε την κατάλληλη µορφοποίηση, κάνει µία εγγραφή στην βάση δεδοµένων. Κάθε εγγραφή στην βάση περιέχει επιπλέον δύο πεδία δείκτες το ένα είναι το id που είναι µοναδικό για κάθε εγγραφή και το άλλο είναι το parent_id που είναι το id της εγγραφής που αντιστοιχεί στην ενότητα ή υποενότητα στην οποία ανήκει. Συνεπώς µια σελίδα κάποιας υποενότητας θα έχει σαν parent_id το id της αρχικής σελίδας της υποενότητας, ενώ αυτή µε τη σειρά της θα έχει ως parent_id το id της ενότητας στην οποία ανήκει. Ετσι µε αυτόν τον τρόπο προσφέρεται ένας τρόπος συνολικής και ταχύτατης περιήγησης στα περιεχόµενα του κόµβου. Ο Κόµβο για την Ελληνικής Γλώσσα έχει µία δενδρική δοµή των περιεχοµένων του. Στην αρχική του σελίδα παρουσιάζονται µε links όλες οι ενότητες του επιλέγοντας κάθε ενότητα παρουσιάζονται όλες οι υποενότητες της και επιλέγοντας κάθε υποενότητα προσφέρονται links για τα περιεχόµενα της. Επιπλέον σε κάθε σελίδα που υπάρχει στα περιεχόµενα της µπορεί να υπάρχει πλήθος popup links δηλαδή σελίδων που ανοίγουν στο δικό τους παράθυρο. Για να είµαστε συνεπής µε αυτή τη δοµή αναπτύξαµε µία Java κλάση για κάθε ένα από τα πέντε επίπεδα στο δέντρο. Έτσι κάθε µία από τις κλάσεις αναπτύχθηκε σύµφωνα µε τις ιδιαιτερότητες της και µε τον κατάλληλο τρόπο σύνδεσης µεταξύ τους. Παρακάτω φαίνεται το διάγραµµα κλάσεων του συστήµατος. Ζήσης Κ. Τιάλιος Σελίδα 6 8/3/2007
Worker classes that parse recursively each tree node Massiv ainserter MassivaRecurser FirstNodeRecurser IpoenotitaRecurser PopupInserter Utility classes used from all five worker classes My Connector Masiv autils Parser Data structures for convenient data storage and manipulation FramesBean RecurserBean Massiv abean Το διάγραµµα κλάσεων του συστήµατος σχ. 2 Η κλάση εισόδου MassivaInserter του συστήµατος αναλύει την πρώτη σελίδα του κόµβου και καλεί για κάθε µία από τις ενότητες την δεύτερη κλάση η οποία αναλύει επαναληπτικά κάθε µία από αυτές και καλεί την τρίτη κλάση για κάθε υποενότητα της κάθε ενότητας. Αυτή µε τη σειρά της αναλύει την κάθε υποενότητα και καλεί την τέταρτη κλάση για κάθε ένα από τα περιεχόµενα της κάθε υποενότητας. Τέλος ο PopupInserter καλείται κάθε φορά που ένα popup link εµφανίζεται στα κείµενα της σελίδας που αναλύεται και κάνει µια εγγραφή στη βάση ενώ κρατείται η σύνδεση µεταξύ κειµένου και εγγραφής. Οι υπόλοιπες κλάσεις του συστήµατος είναι βοηθητικές ενώ για περισσότερες πληροφορίες παρακαλώ συµβουλευθείτε το JavaDoc που παραδίδεται µαζί µε το παρόν report. Ζήσης Κ. Τιάλιος Σελίδα 7 8/3/2007
6. Περιγραφή αποτελεσµάτων ανάκτησης. 6.1 Λεξικό όρων. Η πρώτη υποενότητα που µετασχηµατίστηκε ήταν το λεξικό όρων που αποτελείται από 173 αρχεία html. Οι πληροφορίες που περιείχαν αυτά µετασχηµατίστηκαν σε 121 εγγραφές στη βάση δεδοµένων. Η υποενότητα αυτή ήταν οργανωµένη σε πολλούς φακέλους, έναν για κάθε γράµµα της αλφαβήτου. Η µετατροπή των κλάσεων του συστήµατος που επεξεργάζονται τα XML αρχεία αυτής της υποενότητας έγινε ώστε να δέχονται ως όρισµα κάθε φάκελο και να δηµιουργούνε µία εγγραφή για κάθε όρο. Η κάθε εγγραφή περιέχει το κείµενο που εξηγεί τον όρο, τον γενικό τίτλο, τον ειδικό τίτλο του συγκεκριµένου όρου, τους ειδικούς τίτλους των παραποµπών του και τις απαραίτητες συνδέσεις µεταξύ όρων παραποµπών. CREATE TABLE lex_oron ( id INTEGER(7) NOT NULL, parent_id INTEGER(7) NOT NULL, parent_text TEXT NOT NULL, title TEXT NOT NULL, stitle TEXT NOT NULL, ref_ids INTEGER(7) NOT NULL, ref_text TEXT NOT NULL, ref_url TEXT NOT NULL, PRIMARY KEY(id), INDEX ref_ids (ref_ids), INDEX id(id) ); Lex_oron Lex_oron PK,I1 id PK,I1 id parent_id parent_id parent_url parent_text parent_text title title stitle stitle I1 ref_ids I1 ref_ids ref_text ref_text Ο πίνακας του λεξικού όρων σχ. 3 Μιας και το DBX χρησιµοποιεί regular expressions για να αναλύσει το κείµενο πριν το παρουσιάσει έπρεπε να βρεθεί κάποιος τρόπος ώστε να αναπαρασταθούν κάποιες ετικέτες παρουσίασης των κειµένων. Στον επόµενο πίνακα φαίνεται η αναπαράσταση των HTML tags που χρησιµοποιήθηκε. HTML Tag Εξήγηση Χαρακτήρας αναπαράστασης <I> </I> <B> </B> Italics-Πλάγια γραφή Bold-Έντονη γραφή * * Πίνακας 1.Μετατροπές HTML tags για το λεξικό. 6.2 Όλες οι υπόλοιπες ενότητες. Ζήσης Κ. Τιάλιος Σελίδα 8 8/3/2007
Με τον τρόπο που περιγράφηκε στο κεφάλαιο πέντε δηµιουργήθηκε ένας πίνακας µε εγγραφές όλες τις σελίδες όλων των ενοτήτων. Με την κλάση MassivaUtils έγιναν οι κατάλληλες µετατροπές στα κείµενα ώστε να κρατηθεί η µορφοποίηση τους. Στον επόµενο πίνακα φαίνεται η αναπαράσταση των HTML tags που χρησιµοποιήθηκε. HTML Tag Εξήγηση Χαρακτήρας αναπαράστασης <I>text</I> Italics-Πλάγια γραφή [italic]ptext1 [/italic] <B>text</B> Bold-Έντονη γραφή [bold]text[/bold] Links Images όπου style='color:maroon' ή color: #800000 Υπερδεσµός µέσα σε κείµενο. Είτε µε χρήση Javascript είτε οποιοδήποτε άλλο είδος υπερδεσµού. Links που αντιστοιχούν σε εικόνες. Κείµενο χρώµατος maro on, #800000 [popup] [link] Υπερδεσµός [/link] κείµενο υπερδεσµού [/popup] Αν αναφέρεται σε εξωτερική σελίδα το παραπάνω περιβάλεται µε [external] [/external] [image][link] file system path[/link] κείµενο υπερδεσµού[/image] [maroon] Κείµενο [/maroon] Π.χ. <table width="350" border="0" height="280" align="left" background="images/k_b ack_small.gif"> Λίστες π.χ. <ul> <li style="list-style: none"> text </li> </ul> Όλες οι παράγραφοι π.χ. <p style="color: #0000FF; font-family: Verdana, Arial, Helvetica, sans-serif; Πίνακες Λίστες Παράγραφοι Πινακας 2. Οι µετατροπές των HTML Tags για όλες τις ενότητες. [table] [tr] [td] Κείµενο [/td] [/tr] [/table] [ul] [li] Κείµενο [/li] [/ul] [para] Κείµενο [/para] Παρακάτω φαίνεται η δοµή αυτού του πίνακας ενότητες Ζήσης Κ. Τιάλιος Σελίδα 9 8/3/2007
οµή του πίνακα όλων των ενοτήτων. σχ.5 Το σύστηµα έτρεξε χρησιµοποιώντας το cd του κόµβου που µου δόθηκε τον νοέµβριο και από δω και κάτω παρατίθενται τα αποτελέσµατα του. Είναι εγγραφές σε βάση δεδοµένων MySql και για την εµφάνιση τους χρησιµοποιήθηκε το PHPMyAdmin tool και ο Internet Explorer και τα δύο σε UTF-8 encoding. Παρακάτω φαίνονται ολόκληρες οι δύο πρώτες εγγραφές του πίνακα «enotites» Η πρώτη εγγραφή σχ. 6 Η δεύτερη εγγραφή στη βάση και πρώτη εγγραφή για την ενότητα γλωσσα που είναι η πρώτη ενότητα που αναλύει το σύστηµα. Ζήσης Κ. Τιάλιος Σελίδα 10 8/3/2007
Η πρώτη εγγραφή της εν. γλώσσα σχ.7 Παρακάτω φαίνονται τα popups από δύο περιεχόµενα της υποενότητας οδηγός. Ζήσης Κ. Τιάλιος Σελίδα 11 8/3/2007
Τα popups σχ. 1 Ζήσης Κ. Τιάλιος Σελίδα 12 8/3/2007
Παρακάτω φαίνεται η αρχή των εγγραφών για την επόµενη υποενότητα της ενότητας Γλώσσα. Παρατηρείστε πως το parent_id της πρώτης εγγραφής είναι το id της πρώτης εγγραφής για την ενότητα γλώσσα. Πρώτες εγγραφές της υποενότητας περίληψη 1 Ζήσης Κ. Τιάλιος Σελίδα 13 8/3/2007
Οι πρώτες εγγραφές για την ενότητα Ενδογλωσσική µε parent_id το id της πρώτης εγγραφής του κόµβου. Η πρώτη εγγραφή για την ενότητα ιαγλωσσική του κόµβου. Ζήσης Κ. Τιάλιος Σελίδα 14 8/3/2007
Οι πρώτες εγγραφές για την υποενότητα Πεζογραφία της ενότητας ιαγλωσσική. Οι πρώτες εγγραφές για την υποενότητα Ποίηση της ενότητας ιαγλωσσική. Ζήσης Κ. Τιάλιος Σελίδα 15 8/3/2007
Οι πρώτες εγγραφές για την ενότητα Ενηµέρωση που είναι και η τελευταία του Κόµβου. Ζήσης Κ. Τιάλιος Σελίδα 16 8/3/2007
7. Συµπεράσµατα. Όπως φάνηκε από το προηγούµενο κεφάλαιο τα αποτελέσµατα του συστήµατος µαζικής ανάκτησης των περιεχοµένων του κόµβου ήταν ιδιαίτερα επιτυχή. Η διατήρηση όλων των περιεχόµένων του κόµβου σε πίνακες αυτής της δοµής του δίνει τη δυνατότητα να συνδεθεί ολοκληρωτικά µε τα διάφορα υποσυστήµατα που θα αναπτυχθούν όπως δηλαδή ενιαίας παρουσίασης και διαχείρισης περιεχοµένου. Λόγω της ιδιαίτερα προσεκτικής δοµής του πίνακα των διακριτών και κανονικοποιηµένων εγγραφών του ο νέος κόµβος που θα στηρίζεται σε αυτή τη βάση δεδοµένων θα παρέχει µεγαλύτερη ταχύτητα και αυξηµένη ποιότητα παρουσίασης και πλοήγησης. Ζήσης Κ. Τιάλιος Σελίδα 17 8/3/2007