Και λίγα σχόλια περί της τοπολογίας ανυσματικών δεδομένων.
Άρθρο του Νίκου Αλεξανδρή για τον Τήλαφο
Η πρώτη απόπειρα "ανάγνωσης" του αρχείου Korinthia_estimate_2007.kml
για την μετέπειτα εισαγωγή του σε μια βάση γεωγραφικών δεδομένων,
στημένη με το GRASS-GIS [1], δεν ήταν επιτυχής. Μετά από αναζήτηση στο
διαδίκτυο [2,3] και προσωπική επικοινωνία με τον "Τήλαφο", προέκυψε ότι
δεν είναι τόσο δύσκολο να μετατραπούν αρχεία μορφής kml [4] σε άλλες πιο
κοινές μορφές αρχείων που (μετα)φέρουν γεω-χωρικά δεδομένα (π.χ. ESRI
shapefile [5], GML[6], GRASS vector[7]).
Τα αρχεία kml δεν είναι παρά αρχεία xml [8]. Με απλή επεξεργασία
της κεφαλίδας (πρώτες γραμμές του αρχείου) και με την "συνοδεία" ενός ακόμα
αρχείου επέκτασης xsl [9] (το οποίο προσδιορίζει την μορφή εμφάνισης των
περιεχομένων αρχείων xml), είναι δυνατόν να προβληθεί το περιεχόμενό
τους για παράδειγμα σε έναν φυλλομετρητή ιστοσελίδων (π.χ. firefox
[10]).
Τα παραδείγματα που ακολουθούν υλοποιήθηκαν με το αρχείο
"Korinthia_estimate_2007.kmz" [11]. Η μετέπειτα αξιοποίησή του με τα
QGIS [12], FWTools [13], GRASS-GIS υπό το λειτουργικό σύστημα
Ubuntu-linux [14, 15]. Σε ό,τι αφορά στο Ubuntu, αξίζει να σημειωθεί ότι
είναι ιδιαίτερα φιλικό για εφαρμογές Συστημάτων Γεωγραφικών Πληροφοριών και με
ελάχιστη προσπάθεια είναι εφικτή η εγκατάσταση των Quantum-GIS,
GRASS-GIS καθώς και πολλών άλλων (περισσότερες πληροφορίες στην ιστοσελίδα Ubuntu-GIS
[16]).
Βήμα-προς-βήμα η μετατροπή
Μετά την αποθήκευση του αρχείου τοπικά και πριν από οποιαδήποτε
ενέργεια πρέπει να εξαχθεί (αποσυμπίεση) το ζητούμενο αρχείο kml από τo
kmz (το kmz [17] είναι απλά ένα συμπιεσμένο kml).
- Από kml σε html [18] και ανάγνωση με έναν φυλλομετρητή.
- Το αρχείο Korinthia_estimate_2007.kml πρέπει να μετονομαστεί σε xml (αλλαγή της επέκτασης) και να τοποθετηθεί σε έναν κατάλογο μαζί με το kml2html.xsl.
- Επεξεργασία του αρχείου (με έναν απλό επεξεργαστή κειμένου) και αντικατάσταση της γραμμής
<kml xmlns="http://earth.google.com/kml/2.2 ">
με τις (2 γραμμές)
<?xml-stylesheet type="text/xsl" href="kml2html.xsl" ?>
<kml>
- Αποθήκευση και άνοιγμα του αρχείου Korinthia_estimate_2007.xml με έναν φυλλομετρητή όπου και είναι δυνατή η ανάγνωση του.
- Από kml σε gml και ανάγνωση με το QuantumGIS
- Το αρχείο Korinthia_estimate_2007.xml πρέπει να αποθηκευτεί μαζί με το kml2gml.xsl σε έναν ξεχωριστό κατάλογο.
- Επεξεργασία του αρχείου (με έναν απλό επεξεργαστή κειμένου) και αντικατάσταση της γραμμής
<kml xmlns="http://earth.google.com/kml/2.2 ">
με τις (2 γραμμές)
<?xml-stylesheet type="text/xsl" href="kml2gml.xsl" ?>
<kml>
- Άνοιγμα του αρχείου Korinthia_estimate_2007.xml με έναν φυλλομετρητή και αποθήκευση ως Korinthia_estimate_2007.gml
- Άνοιγμα με το QuantumGIS
- Χρησιμοποιώντας το OpenEV [19] (μέρος των FWTools) ή το QuantumGIS
Ο πιο απλός τρόπος είναι η χρήση του OpenEV για άμεση ανάγνωση αρχείων kml και αποθήκευση για παράδειγμα σε αρχεία ESRI shapefile. Η ανάγνωση και εγγραφή αρχείων kml στηρίζεται στα εργαλεία ogrinfo και ogr2ogr [20] τα οποία αποτελούν μέρος μιας ευρύτερης συλλογής εργαλείων διαχείρισης γεω-χωρικών δεδομένων, την GDAL/OGR [21].
Άμεση ανάγνωση μπορεί να γίνει και με το QuantumGIS υπό την προϋπόθεση ότι θα χρησιμοποιηθεί η νεότερη έκδοση GDAL/OGR. Την ώρα που γράφονται αυτές οι γραμμές, υπό το Ubuntu είναι διαθέσιμη μια παλιότερη έκδοση της βιβλιοθήκης (libgdal1-1.4.0 [22]) που δεν επιτρέπει το άνοιγμα των αρχείων kml. Αυτό όμως θα αλλάξει σύντομα μιας και οι "πηγές" που τροφοδοτούν το Ubuntu με πακέτα λογισμικού ανανεώνονται συνεχώς.
Στην προσπάθεια να εισαγάγω στο GRASS-GIS το αρχείο Korinthia_2007.kml [23] (όχι το Korinthia_estimate_2007.kml) προέκυψε ότι τα δεδομένα δεν είναι τοπολογικά σωστά. Δεν γνωρίζω με ποιο τρόπο έχουν συλλεχθεί τα δεδομένα και έχουν μετατραπεί σε kml. Θέλω όμως να σχολιάσω επί των περίφημων αρχείων shapefile (που είναι η πιο κοινή μορφή αποθήκευσης και μεταφοράς ανυσματικών δεδομένων).
Τα αρχεία "ESRI shapefile" μπορούν να μεταφέρουν “σημεία”,“γραμμές” ή “πολύγωνα”. Στην ουσία πρόκειται μόνο για συντεταγμένες (συνήθως μόνο x,y). Ακόμη και στην περίπτωση περίπτωση "γραμμών" ή "πολυγώνων" πρόκειται μόνο για σημεία των οποίων η νοητή σύνδεση ορίζει γραμμικά αντικείμενα (π.χ. οδικό δίκτυο) ή επιφάνειες (π.χ. δασικές εκτάσεις). Οι μαθηματικές σχέσεις που ορίζουν τον τρόπο με τον οποίο συνδέονται τα σημεία στο χώρο (σε τρεις ή μόνο σε 2 διαστάσεις) είναι η τοπολογία. Το μειονέκτημα των περίφημων shapefiles είναι ότι δεν περιέχουν πληροφορίες για την τοπολογία των σημείων [5][24]. Έτσι είναι δυνατόν να υφίστανται πολλά τοπολογικά λάθη όπως αλληλοεπικαλυπτόμενα πολύγωνα και ανοιχτά πολύγωνα. Δίχως τον απαιτούμενο τοπολογικό έλεγχο [25] αυτά τα λάθη συνεχίζουν να υφίστανται και να δημιουργούν άλλα προβλήματα. Δεν γνωρίζω σε βάθος τη δομή των αρχείων kml αλλά αμφιβάλλω για το αν περιέχουν πληροφορίες για την τοπολογία των σημείων.
Παρατίθεται ένα διορθωμένο Korinthia_2007_clean.shp, σε συμπίεση zip [26] (η διόρθωση έγινε με το v.digit [27] στο GRASS-GIS).
----------
Πηγές (στην Αγγλική γλώσσα εκτός από τις 10, 15, 18):
1 http://grass.osgeo.org
2 http://spanring.eu/blog/2005
3 http://www.perrygeo.net
4 http://code.google.com/apis
5 http://www.esri.com/library
6 http://www.opengeospatial.org
και
http://filext.com/file-extensi
7 http://grass.gdf-hannover.de
και
http://www.ing.unitn.it/~grass
8 http://en.wikipedia.org/wiki
9 http://en.wikipedia.org/wiki
10 http://www.mozilla-europe.org
11 http://tilaphos.googlepages
12 http://www.qgis.org/
13 http://fwtools.maptools.org/
14 http://www.ubuntu.com/
15 http://www.ubuntu-gr.org/
16 https://wiki.ubuntu.com
17 http://en.wikipedia.org/wiki
18 http://tilaphos.googlepages.com/kml2html.xsl
19 http://openev.sourceforge.net/
20 http://www.gdal.org/ogr
και
http://www.gdal.org/ogr
21 http://www.gdal.org/
και
http://www.gdal.org/ogr/
22 http://packages.ubuntu.com
23 http://tilaphos.googlepages
24 http://www.esri.com/news
25 http://en.wikipedia.org/wiki/Geographic_information_system#Topological_modeling
και
http://en.wikipedia.org/wiki
26 http://tilaphos.googlepages
27 http://grass.itc.it/grass62

Ελευθεροτυπία
ΕΛ/ΛΑΚ