Τα πάντα πρέπει να έχουν ένα API

0 Flares Twitter 0 Facebook 0 LinkedIn 0 Filament.io Made with Flare More Info'> 0 Flares ×

mashup

Το παρόν άρθρο είναι μια απόπειρα χαρτογράφησης του τοπίου των ανοιχτών δεδομένων στο διαδίκτυο.

Ο λόγος του τίτλου του άρθρου είναι το γεγονός ότι πιστεύω πως το πρωτόκολλο επικοινωνίας των API (Application Programming Ιnterface) είναι μια σημαντική αρχή προς μια κοινωνία ανοιχτών και ελεύθερων δεδομένων. Κάθε σύνολο κρατικών δεδομένων θα πρέπει να εκπληρώνει δύο πτυχές. Αρχικά την ολική και αμέριστη παροχή των πρωτογενών δεδομένων του πεδίου ενδιαφέροντος του. Κατα δεύτερον θα πρέπει να πληρώνει τα συμβόλαια χρήσης για τους χρήστες μέσω των διαθέσιμων API. Τα API είναι ένα συμβόλαιο χρήσης μεταξύ του χρήστη και της υπηρεσίας. Κρύβοντας τον συνολικό όγκο των δεδομένων και διαδικασιών μπορεί να παρέχει δεδομένα άμεσα και σε κάθε ενδιαφερόμενο. Η λέξη κρύβοντας που χρησιμοποιώ  δεν είναι τυχαία. Το κρύψιμο αυτό έχει και την αρνητική του πλευρά. Με τον ίδιο τρόπο που το API εκθέτει ένα σύνολο δεδομένων στους χρήστες, η ίδια η επιλογή των κλήσεων στο πρωτόκολλο αυτό μπορεί άμεσα ή έμμεσα να αποκόψει την πρόσβαση σε συγκεκριμένα δεδομένα. Εάν δεν υπάρχει τρόπος να προσπελάσουμε ένα υποσύνολο δεδομένων, ακυρώνει το σκοπό των ανοιχτών δεδομένων.

Παρά ταύτα όμως τα API δεν παύουν να είναι ένα πολύ χρήσιμο εργαλείο ακόμα και στα χέρια ενός ανθρώπου χωρίς γνώση προγραμματισμού. Το συγκεκριμένο εργαλείο καθιστά δυνατή την συλλογή δεδομένων χωρίς το υπερβάλλον κόστος της επεξεργασίας τους. Για παράδειγμα στατιστικά δεδομένα διαφόρων κατηγοριών μπορούν να παρέχονται και να συνδυάζονται. Η συγκεκριμένη ιστοσελίδα παρέχει την δυνατότητα συνδυασμού παρόμοιων δεδομένων στη χρήση τους προς εξαγωγή χρήσιμων δεδομένων. Μπορείτε να δείτε κάποια ενδιαφέροντα παραδείγματα αυτού του είδους.

Το βασικό προαπαιτούμενο για ένα API είναι η δυνατότητα άντλησης του συνόλου των δεδομένων σε ένα πρότυπο που είναι ανοιχτό και ευδιαχείριστο. Κατά προτίμηση και κατά συνάρτηση με την ευρύτερη ιδεολογία του UNIX ο ιδανικότερος τρόπος διάδοσης δεδομένων θα ήταν ένα απλό αρχείο κειμένου. Στην προκειμένη περίπτωση αυτό θα μπορούσε να επιτευχθεί με την υιοθέτηση ενός προτύπου XML για την παροχή δεδομένων μέσω ενός ασύγχρονου πρωτοκόλλου. Αν θα έπρεπε να επιλέξω περισσότερες αρχές για να παρέχουν μια κατεύθυνση προς τα ανοιχτά δεδομένα θα επέλεγα την αρχή ότι το μικρό/απλό είναι και όμορφο και ότι το σύνολο των μερών είναι μεγαλύτερο από το σύνολο. Χρειαζόμαστε μικρο-μονάδες παροχής πληροφοριών οι οποίες να επικοινωνούν όμορφα και γρήγορα με όλες τις άλλες μονάδες. Συνάμα το αποτέλεσμα αυτής της επικοινωνίας θα πρέπει να τηρεί τους ίδιους κανόνες επικοινωνίας. Με αυτό τον τρόπο κάθε μικρο-μονάδα ή πρόσμειξή της, επαναχρησιμοποιείται με τον ίδιο τρόπο.
Έχοντας τα δεδομένα πάντα διαθέσιμα σε όλους τους ενδιαφερόμενους είναι δυνατή η δημιουργία νέων API που θα τηρούν τις γενικές αρχές υλοποίησής τους αλλά θα προσφέρουν νέα παροχή δεδομένων σύμφωνα με τις ανάγκες των χρηστών. Είναι δυνατό πιθανά, να υπάρχει και κάποια εφαρμογή του τύπου GetSatisfaction για κυβερνητικές υπηρεσίες. Εάν συγκεντρώνεται ένα σύνολο πολιτών οι οποίοι/ες εκδηλώνουν ενδιαφέρον για την υλοποίηση ενός νέου API τότε θα καθίσταται υποχρέωση των κυβερνητικών υπηρεσιών να υλοποιούν αυτό το συμβόλαιο επικοινωνίας. Το συγκεκριμένο μοντέλο χρήζει περισσότερης ανάλυσης και χρειάζεται ένα αυτόνομο άρθρο για να καθοριστεί.
Τι είναι όμως δυνατό με αυτού του είδους την ανασυναρμολόγηση πληροφοριών; Υπάρχουν ήδη αρκετές εφαρμογές πάνω σε ανοιχτά δεδομένα και οι περισσότερες από αυτές έρχονται από τις ΗΠΑ και την Μεγάλη Βρετανία (και με ανοιχτό κώδικα για εφαρμογές) με αρκετές εξαιρέσεις. Είναι ένας εύκολος τρόπος να εικονοποιήσεις δεδομενά να επιπροσθέσεις δεδομένα στην πραγματικότητα, καθώς και να παρακολουθήσεις πώς οι χορηγίες σε πολιτικούς επηρεάζουν την ψήφο τους. Δεδομένα ανοιχτά είναι διαθέσιμα προς επεξεργασία σε αρκετά πρότυπα (XML, CSV, KML, SHP) καθώς και να υπάρχει πρόσβαση στα χρήματα του προϋπολογισμού και πώς ξοδεύονται αυτά.
Περισσότερες πληροφορίες:
———————————–
  1. Η ανάλυση του πρωτοκόλλου επικοινωνίας όπως προέκυψε για τις ανάγκες των Η.Π.Α., περιέχει ενδιαφέρουσες αναλύσεις για την μορφή των δεδομένων. Σύνδεση
  2. Παραδείγματα διαθέσιμων API στο εξωτερικό. Σύνδεση(χαρτογράφησης), σύνδεση(κυβερνητικά δεδομένα)
  3. Ανοιχτός διαγωνισμός ανοιχτού λογισμικού για την δημιουργία νέων υπηρεσιών βασισμένων σε ανοιχτά δεδομένα. Σύνδεση
  4. Ένα wiki συζήτησης της κατεύθυνσης των ελληνικών ανοιχτών δεδομένων.
  5. Σελίδες παρακολούθησης του αμερικανικού κονγκρέσου και γερουσίας.
0 Flares Twitter 0 Facebook 0 LinkedIn 0 Filament.io Made with Flare More Info'> 0 Flares ×
  • http://pgaval.wordpress.com Πέτρος

    Συμφωνώ, πλέον υπάρχει ανάγκη πρόσβασης στα δεδομένα κι από άλλους (η μεμονωμένη/”αποκομμένη” επεξεργασία τους δεν αρκεί πλέον – εξάλλου η πιο …δημοφιλής λέξη τον τελευταίο καιρό είναι η ..”διασταύρωση” ;-)

    Ο σχεδιασμός του API βέβαια είναι μια ..τέχνη από μόνη της!

    Πολλοί υποστηρίζουν βέβαια ότι πλέον ο σχεδιασμός του API και της μορφής διάθεσης των στοιχείων θα πρέπει να λαμβάνει υπόψη του και τους πολλούς διαφορετικούς τύπους “καταναλωτών” των στοιχείων αυτών (βλ. άρθρο εδώ: http://feedproxy.google.com/~r/ProgrammableWeb/~3/4fHe4QMdPqM/)
    Καλό είναι να το έχουμε κι αυτό υπόψη ώστε να μη χρειαστεί να κάνουμε “μπαλώματα” εκ των υστέρων (κατά το ράβε-ξήλωνε, δουλειά να μη σου λείπει ;-) )

    • http://delivorias.wordpress.com/ delivorias

      Συμφωνώ μαζί σου Πέτρο. Δεν πρέπει να ξεχνάμε ότι και τα ΑΡΙ δεν είναι πανάκεια. Μπορούν εξίσου να χρησιμοποιηθούν για να αποκρύψουν δεδομένα και μάλιστα με την κάλυψη των Ανοιχτών Δεδομένων. Το τι επιλέγεις να παρέχεις ταυτόσημα είναι μια μορφή μισής αλήθειας. Τα ΑΡΙ είναι ένα πρώτο βήμα. Ένα βήμα στο να παρέχεις δομές αποτελεσμάτων βάση κάποιων δεδομένων. Οι δύο δικλίδες που θα πρέπει να προ-υπάρχουν όμως είναι αφενός η ταυτόχρονη διάθεση του καθαρού όγκου των δεδομένων σε κάθε ενδιαφερόμενο και εφετέρου η δυνατότητα δημιουργίας νέων ΑΡΙ σύμφωνα με τις ταγές των ιδίων των χρηστών τους.
      Μια αρχή δημοσίων δεδομένων δεν θα πρέπει, κατά την γνώμη μου, να απασχολείται απαραίτητα με το συνδυασμό (meshing) των δεδομένων αλλά με την υλοποίηση των αναγκών των χρηστών τους.

  • Pingback: Μητρώο εδώ, μητρώο εκεί …μητρώο παραπέρα « Λίγο από όλα