Hellenic European Law Concordance Περιγραφή της ιστοσελίδας της HELC Αγγελής Σπύρος ( A.E.M. 398)
Εισαγωγή Οι νοµικές βάσεις δεδοµένων είναι συστήµατα τα οποία προσφέρουν ανάκτηση πλήρους κειµένου νοµικών στοιχείων καθώς και γενικών πληροφοριών. Τα έγγραφα που βρίσκονται σε µια νοµική βάση δεδοµένων είναι δυνατό να προσπελαθούν από Boolean ερωτήµατα της Full ή Free Text δοµής τους. Συνήθως οι νοµικές βάσεις δεδοµένων έχουν κοινά χαρακτηριστικά µε τον τρόπο που οι οθόνες αναζήτησης παρουσιάζονται σε µια φόρµα ιστοσελίδας. Μπορεί να υπάρχουν παραπάνω από µία διαφορετικές φόρµες για µία βάση δεδοµένων. Κάθε διεπαφή αναζήτησης περιλαµβάνει ένα ή περισσότερα πεδία αναζήτησης, κάποια από τα οποία ο χρήστης πρέπει να συµπληρώσει όταν αποστέλλει ένα ερώτηµα. Κάθε διεπαφή αναζήτησης επεκτείνει τις δυνατότητες της ανάκτησης πλήρους κειµένου ώστε να διευκολύνει την ανάκτηση της γνώσης. Αυτή η διαδικασία µπορεί να εµπλουτιστεί από την απεικόνιση προς τους χρήστες συγκεκριµένων εικόνων της βάσης δεδοµένων µε διαγράµµατα και γραφήµατα. Ο σκοπός αυτών των οπτικών εργαλείων είναι η παρουσίαση επιπρόσθετων πληροφοριών σχετικά µε τα δεδοµένα µίας βάσεις δεδοµένων. Η βάση δεδοµένων HELC * Η βάση δεδοµένων HELC Hellenic European Law Concordance περιέχει πληροφορίες για την προσαρµογή της ελληνικής νοµοθεσίας στους νόµους της Ευρωπαϊκής Ένωσης. Η βάση δεδοµένων HELC χρησιµοποιεί ανάκτηση πλήρους κειµένου για ένα αποθήκη νοµικών εγγράφων συνοδευόµενη από ένα εκτεταµένο µηχανισµό Boolean αναζήτησης. Η ιστοσελίδα της HELC χρησιµοποιεί µία 3-tier αρχιτεκτονική. Με τον όρο 3-tier εννοούµε ότι η βάση δεδοµένων µπορεί να προσπελαθεί µέσω ενός απλού web browser όπως ο Internet Explorer ή ο Netscape. Σε αυτό το µοντέλο συµµετέχουν τουλάχιστον τρεις κόµβοι: ο client, ο ενδιάµεσος application server και η αποθήκη των πληροφοριών, ο database server. Ο client είναι υπεύθυνος για την παρουσίαση των δεδοµένων, την αποδοχή των ενεργειών του χρήστη και τον έλεγχο της διεπαφής του χρήστη. Ο application server είναι υπεύθυνος για την επεξεργασία των δεδοµένων και αποτρέπει την άµεση προσπέλαση των δεδοµένων από τους clients. Τέλος η βάση δεδοµένων είναι υπεύθυνη για την αποθήκευση των δεδοµένων. Στη συνέχεια παρουσιάζεται η λειτουργία της ιστοσελίδας της HELC. Από το βιβλίο RECENT ADVANCES IN COURT COMPUTERISATION AND LEGAL DATABASES, D. POLITIS
Περιγραφή λειτουργίας της ιστοσελίδας HELC. Επιλογή γλώσσας, Πιστοποίηση, Επιλογή αναζήτησης Σκοπός της ιστοσελίδας αυτής είναι η αναζήτηση σε µια βάση δεδοµένων η οποία περιέχει νόµους της ευρωπαϊκής ένωσης καθώς και τις ελληνικές πράξεις προσαρµογής προς τους νόµους αυτούς. Επίσης ένα σχηµατικό διάγραµµα της υστέρησης προσαρµογής παρουσιάζεται ώστε να γίνεται καλύτερα αντιληπτή η χρονική πορεία της έκδοσης ενός ευρωπαϊκού νόµου και των τροποποιήσεων και των ελληνικών πράξεων προσαρµογής που ακολούθησαν. Μετά την επιλογή της γλώσσας η επόµενη σελίδα είναι η σελίδα εισαγωγής username και password από τον χρήστη. Με αυτό τον τρόπο εξασφαλίζεται η ελεγχόµενη πρόσβαση στις υπηρεσίες της ιστοσελίδας.
Ύστερα από την επιτυχή αναγνώριση του χρήστη η επόµενη σελίδα είναι αυτή της επιλογής του είδους της αναζήτησης που επιθυµεί να διεξάγει ο χρήστης. Υπάρχουν δυο τρόποι αναζήτησης ευρωπαϊκών νοµοθετικών πράξεων και ελληνικών πράξεων προσαρµογής στη βάση δεδοµένων της HELC, η αναζήτηση δίνοντας λέξεις κλειδί προς τα πεδία των ευρωπαϊκών
νοµοθετικών πράξεων και των ελληνικών πράξεων προσαρµογής και η αναζήτηση επιλέγοντας από µία λίστα συγκεκριµένες κατηγορίες ευρωπαϊκών νοµοθετικών πράξεων και ελληνικών πράξεων προσαρµογής. Αναζήτηση µε λέξεις κλειδί Η οθόνη της αναζήτησης δίνοντας λέξεις κλειδί προς τα πεδία των ευρωπαϊκών νοµοθετικών νοµοθετικών πράξεων και των ελληνικών πράξεων προσαρµογής έχει ως εξής : Αριστερά µε την βοήθεια ενός radiobutton group επιλέγουµε σε πιο πεδίο της βάσης θέλουµε να γίνει η αναζήτησή µας. Υπάρχουν τρεις επιλογές: α) η αναζήτηση στο πεδίο των ευρωπαϊκών νοµοθετικών πράξεων β) η αναζήτηση στο πεδίο των ελληνικών πράξεων προσαρµογής γ) η αναζήτηση και στα δυο παραπάνω πεδία εξιά δίνουµε τον όρο που θέλουµε να αναζητήσουµε στο πεδίο που έχουµε επιλέξει. Στο πεδίο AND δίνουµε έναν όρο αν θέλουµε να εµφανίζεται ταυτόχρονα στο πεδίο της βάσης µαζί µε τον πρώτο όρο που έχουµε δώσει, ενώ στο πεδίο OR δίνουµε έναν εναλλακτικό όρο για αναζήτηση στο πεδίο της βάσης που έχουµε επιλέξει.
Ο κώδικας που εκτελεί την αναζήτηση αυτή στη βάση παρουσιάζεται παρακάτω : Αναζήτηση στο πεδίο των ευρωπαϊκών νοµοθετικών πράξεων if stryear1="" and stryear2="" then Sql ="Select DOCN, ELAW, REF, LAST, ADJ from newadaptnorm where ELAW like '%"&stryear&"%'" if stryear1="" and stryear2 <> "" then Sql ="Select DOCN, ELAW, REF, LAST, ADJ from newadaptnorm WHERE (ELAW LIKE '%"&stryear&"%') OR (ELAW LIKE '%"&stryear2&"%')" if stryear1<>"" and stryear2="" then Sql ="Select DOCN, ELAW, REF, LAST, ADJ from newadaptnorm WHERE (ELAW LIKE '%"&stryear&"%') AND (ELAW LIKE '%"&stryear1&"%')" if stryear1<>"" and stryear2<>"" then Sql ="Select DOCN, ELAW, REF, LAST, ADJ from newadaptnorm WHERE (ELAW LIKE '%"&stryear&"%') AND (ELAW LIKE '%"&stryear1&"%') OR (ELAW LIKE '%"&stryear2&"%')" Αναζήτηση στο πεδίο των ελληνικών πράξεων προσαρµογής if stryear1="" and stryear2="" then Sql ="Select DOCN, ELAW, REF, LAST, ADJ from newadaptnorm where REF like '%"&stryear&"%'" if stryear1="" and stryear2 <> "" then Sql ="Select DOCN, ELAW, REF, LAST, ADJ from newadaptnorm WHERE (REF LIKE '%"&stryear&"%') OR (REF LIKE '%"&stryear2&"%')" if stryear1<>"" and stryear2="" then Sql ="Select DOCN, ELAW, REF, LAST, ADJ from newadaptnorm WHERE (REF LIKE '%"&stryear&"%') AND (REF LIKE '%"&stryear1&"%')" if stryear1<>"" and stryear2<>"" then Sql ="Select DOCN, ELAW, REF, LAST, ADJ from newadaptnorm WHERE (REF LIKE '%"&stryear&"%') AND (REF LIKE '%"&stryear1&"%') OR (REF LIKE '%"&stryear2&"%')" Αναζήτηση και στα δύο πεδία if stryear1="" and stryear2="" then Sql ="Select DOCN, ELAW, REF, LAST, ADJ from newadaptnorm where (ELAW LIKE '%"&stryear&"%') OR (REF LIKE '%"&stryear&"%')" if stryear1="" and stryear2 <> "" then Sql ="Select DOCN, ELAW, REF, LAST, ADJ from newadaptnorm where (ELAW LIKE '%"&stryear&"%') OR (ELAW LIKE '%"&stryear2&"%') OR (REF LIKE '%"&stryear&"%') OR (REF LIKE '%"&stryear2&"%')" if stryear1<>"" and stryear2="" then Sql ="Select DOCN, ELAW, REF, LAST, ADJ from newadaptnorm where (ELAW LIKE '%"&stryear&"%') AND (ELAW LIKE '%"&stryear1&"%') OR (REF LIKE '%"&stryear&"%') AND (REF LIKE '%"&stryear1&"%')" if stryear1<>"" and stryear2<>"" then Sql ="Select DOCN, ELAW, REF, LAST, ADJ from newadaptnorm where (ELAW LIKE '%"&stryear&"%') AND (ELAW LIKE '%"&stryear1&"%') OR (ELAW LIKE '%"&stryear2&"%') OR (REF LIKE '%"&stryear&"%') AND (REF LIKE '%"&stryear1&"%') OR (REF LIKE '%"&stryear2&"%')"
Αναζήτηση συγκεκριµένης κατηγορίας Η αναζήτηση κατηγορίας γίνεται µε την επιλογή των κατηγοριών των ευρωπαϊκών νοµοθετικών πράξεων από µια λίστα. Ο χρήστης επιλέγει µια συγκεκριµένη κατηγορία από τη λίστα και στη συνέχεια εµφανίζεται η επόµενη λίστα η οποία περιέχει τις υποκατηγορίες, αν υπάρχουν, της παραπάνω επιλογής που έχει κάνει. Ο χρήστης έχει την δυνατότητα να επιλέξει να εµφανιστεί µια τελευταία υποκατηγορία, εφόσον είναι η τελευταία, ή να εµφανίσει µια κατηγορία µε όλες τις υποκατηγορίες της, εφόσον υπάρχουν. Επίσης υπάρχει η δυνατότητα ο χρήστης να προσθέσει µία ακόµα κατηγορία προς αναζήτηση κάνοντας κλικ στο checkbox και η µέθοδος επιλογής της δεύτερης αυτής κατηγορίας είναι ίδια µε την πρώτη. Ο κώδικας που υλοποιεί την αναζήτηση στην βάση είναι ο εξής : Dim title1,title2 title1 = Request.QueryString("title") title2 = Request.QueryString("title2") Set Recordset1 = Server.CreateObject("ADODB.Recordset") Recordset1.ActiveConnection = MM_conn1_STRING if title1 <> "" then if title2 <> "" then Recordset1.Source = "SELECT * FROM dbo.newadaptnorm WHERE (TITLE1 LIKE '" + Replace(Recordset1 title_1, "'", "''") + "%') OR (TITLE1 LIKE '" + Replace(Recordset1 title_2, "'", "''") + "%') ORDER BY TITLE1 ASC" else Recordset1.Source = "SELECT * FROM dbo.newadaptnorm WHERE (TITLE1 LIKE '" + Replace(Recordset1 title_1, "'", "''") + "%') ORDER BY TITLE1 ASC" else if title2 <> "" then Recordset1.Source = "SELECT * FROM dbo.newadaptnorm
WHERE (TITLE1 LIKE '" + Replace(Recordset1 title_2, "'", "''") + "%') ORDER BY TITLE1 ASC" else Recordset1.Source = "SELECT * FROM dbo.newadaptnorm ORDER BY TITLE1 ASC" Εµφάνιση των αποτελεσµάτων αναζήτησης Μετά την αναζήτηση των στοιχείων, που έδωσε ο χρήστης, στη βάση δεδοµένων παρουσιάζονται στο χρήστη τα αποτελέσµατα ως εξής : Εµφανίζεται στον χρήστη ο αριθµός των εγγραφών που ανακτήθηκαν από τη βάση συµφώνα µε τα στοιχεία που έδωσε προς αναζήτηση καθώς και ο αριθµός των εγγραφών που παρουσιάζονται στη συγκεκριµένη σελίδα καθώς εάν επιστραφούν πάνω από δέκα εγγραφές θα υπάρχουν πάνω από µια σελίδες στις οποίες θα εµφανίζονται τα αποτελέσµατα. Οι εγγραφές που ανακτήθηκαν παρουσιάζονται ως εξής : Εµφανίζεται ο αριθµός της εγγραφής καθώς και το µέρος της εγγραφής, εκείνο το οποίο περιέχει τον όρο, ή τους όρους, που έδωσε ο χρήστης προς αναζήτηση. Οι όροι αυτοί εµφανίζονται µε κόκκινο έντονο χρώµα για να βοηθήσουν τον χρήστη να βρει εύκολα την εγγραφή που αναζητά. Κάτω από κάθε εγγραφή ο χρήστης µπορεί να επιλέξει πως να δει µία συγκεκριµένη εγγραφή. Μπορεί να επιλέξει να δει όλα τα πεδία µιας εγγραφής ή µόνο τα πεδία της ευρωπαϊκής νοµοθεσίας και των ελληνικών πράξεων προσαρµογής της. Ο κώδικας που παρουσιάζει το µέρος µιας εγγραφής το οποίο περιέχει τον όρο που έχει δώσει ο χρήστης προς αναζήτηση φαίνεται παρακάτω :
Dim oritext, hitext oritext = objrst("elaw") hitext = Replace(oriText,strYear,"<b class='hl'><font color = 'red'>" & stryear & "<br></b></font>") Dim SearchString, MyPos SearchString =oritext MyPos =Instr(1,SearchString,strYear,1) if MyPos>0 then if MyPos<40 then AStr =mid (Searchstring,1,40) hitextx = Replace(AStr,strYear,"<b class='hl'><font color = 'red'>" & stryear & "</b></font>") hitexty = Replace(hiTextx,"ΦΕΚ ","<br>φεκ") hitext = Replace(hiTexty,"Τροποποίηση :","<br>τροποποίηση :") Response.Write"<B><font color = 'blue'>communal Legislative Act:</B></font>:" & hitext & "" Response.Write "...<br>" else AStr =mid (Searchstring,MyPos-20,100) hitextx = Replace(AStr,strYear,"<b class='hl'><font color = 'red'>" & stryear & "</b></font>") υυ hitexty = Replace(hiTextx,"ΦΕΚ ","<br>φεκ") hitext = Replace(hiTexty,"Τροποποίηση :","<br>τροποποίηση :") Response.Write"<B><font color = 'blue'>communal Legislative Act:...</B></font>:" & hitext & "" Response.Write "...<br>" END IF
Λεπτοµερής παρουσίαση εγγραφής Η σελίδα που παρουσιάζει µια εγγραφή που έχει επιλέξει ο χρήστης παρουσιάζεται παρακάτω :
Η πληροφορίες που παρουσιάζονται είναι ο αριθµός της εγγραφής, η ευρωπαϊκή νοµοθετική πράξη, η τυχόν τροποποιήσεις της ευρωπαϊκής νοµοθετικής πράξεις αν υπάρχουν και η ελληνικές πράξεις προσαρµογής προς την ευρωπαϊκή νοµοθετική πράξη και τις τροποποιήσεις της. Ο χρήστης έχει την δυνατότητα να στείλει e-mail την εγγραφή σε κάποιον άλλο καθώς και να δει γραφικά την χρονική υστέρηση προσαρµογής της εγγραφής, όπως παρουσιάζεται στο παρακάτω σχήµα : Ο µπλε κύκλος είναι ο κύριος ευρωπαϊκός νόµος, οι κόκκινοι κύκλοι είναι οι τροποποιήσεις του νόµου αυτού και τα ορθογώνια είναι οι ελλήνικές πράξεις προσαρµογής προς τον ευρωπαϊκό νόµο και τις τροποποιήσεις του. Σε κάθε ευρωπαϊκό νόµο ή ελληνική προσαρµογή σηµειώνεται ο αριθµός του ενώ ο αριθµός που εµφανίζεται στις ακµές δηλώνει την χρονική καθυστέρηση σε µήνες.