RSS

xml dalam Sistem informasi geografis

XML Dalam Sistem Informasi Geografis
Cetak E-mail

Kita telah mengenal berbagai format proprietary dari aplikasi-aplikasi SIG yang berbeda-beda, baik dari segi vendor-nya maupun perbedaan versi dari tiap format. Lumrah saja, karena tiap vendor menginginkan format yang efisien dan sesuai dengan aplikasi yang mereka buat. Terdapat fungsi dan aplikasi untuk korvesi antar format, tapi tidak selalu memadai karena ada keunikan dari tiap format yang belum tentu dapat dikonversi ke format lain.

Hal ini juga menjadi hambatan untuk webmapping , karena setiap aplikasi akan memerlukan client environment yang berbeda-beda pula. Tidak semua orang bersedia menginstall software tersendiri (applet khusus, plug-ins tertentu dll) bagi tiap aplikasi webmap yang ingin mereka lihat.

Karena perbedaan format menghambat pemanfaatan data geografis secara lebih luas, diperlukan cara pertukaran data yang dapat dipahami secara global. Fungsi ini dapat dipenuhi oleh XML (eXtensible Markup Language).

eXtensible Markup Language

XML adalah bahasa markup yang menyediakan sintaks yang lentur (dapat dikembangkan sesuai kebutuhan) dan independen (tidak tergantung sistem platform). Jadi sesuai untuk sarana pertukaran data antar berbagai ragam sistem, baik lewat internet atau jalur lain [1].

Format ini merupakan rekomendasi dari World Wide Web Consortium. XML memungkinkan untuk memuat baik data koordinat, data penyerta dan instruksi yang menyatakan jenis perlakuan terhadap data tersebut. Perlakuan itu dapat berupa transformasi data ke bentuk lain ataupun untuk menyatakan bagaimana data ditampilkan.

Penggunaan XML memungkinkan penerapan internet SIG dalam bentuk yang lebih terbuka, murah dan beragam tapi tetap kompatibel. Hal tersebut dapat diwujudkan oleh beberapa subset/turunan dari XML, yaitu SVG, XSL dan GML. Dunia XML memang penuh dengan akronim tiga huruf yang kadang membingungkan, untuk itu masing-masing akan coba dipaparkan secara singkat.

Scalable Vector Graphics

Untuk keperluan SIG, tentunya diperlukan format untuk tampilan data spasial. Karena XML bersifat general, maka untuk keperluan grafis diperkenalkan suatu subset XML yaitu SVG (Scalable Vector Graphics), suatu standar terbuka untuk grafik 2D yang merupakan rekomendasi dari W3C [2].


Peta Geologi gabungan vektor dan raster[15]

Hasil pemilu dalam SVG.[16]

Penggunaan SVG dalam SIG telah memberikan dampak terutama terhadap aplikasi webmap. Contoh tampilan webmap interaktif yang menggunakan SVG sudah cukup banyak saat ini, seperti gambar di kiri.

SVG memungkinkan penggunaan vektor yang memberikan banyak keunggulan dibanding format raster yang selama ini kita kenal. SVG juga dilengkapi dengan SVG DOM (Document Object Model) untuk membuat peta yang interaktif. Terdapat juga spesifikasi untuk mobile devices (SVG tiny) [2] dan browser phones (pSVG) [8,9]. SVG juga dapat dikompresi sehingga menurunkan ukuran transfer secara signifikan.

Dengan kemampuan SVG untuk memuat data vektor, bitmap dan teks, orang akan menganggap hanya dengan SVG sudah cukup. Dan memang saat ini sudah banyak contoh webmap yang menggunakan SVG, baik untuk tampilan dan data penyertanya [7].

Walau demikian, ada beberapa hal yang tidak tercakup dalam spesifikasi SVG. Misalnya mengenai standar link feature terhadap data, sistem referensi spasial yang digunakan, feature buffer atau standar skema data spasial.
Memang sengaja tidak dicakup karena SVG adalah suatu format grafis umum yang tidak hanya digunakan untuk aplikasi SIG, sehingga pertukaran data secara terbuka akan rumit jika hanya mengandalkan SVG. Untuk itu diperlukan subset XML lain, yaitu GML.


Geographic Markup Language

GML adalah suatu subset XML untuk transformasi dan penyimpanan informasi geografis, baik data spatial ataupun non spatial dari suatu obyek geografis. GML adalah spesifikasi dari OpenGIS Consortium.

Komponen untuk layanan feature geografis[5]

GML menyediakan framework yang terbuka dan independen untuk mendefinisikan obyek dan skema dari suatu aplikasi SIG. Hal ini meningkatkan kemampuan untuk berbagi skema dan informasi geografis [5]. Format ini juga berperan penting dalam implementasi Web Feature Server (WFS).

WFS adalah suatu modul yang mengimplementasikan interface standar untuk operasi data spasial yang berada dalam suatu datastore [5]. Datastore tersebut dapat berupa general SQL database, flat XML file, spasial database, proprietary format dll, dan manipulasi terhadap datanya dapat dilakukan melalui Web. HTTP server adalah server yang dapat melayani HTTP request. Aplikasi klien adalah aplikasi yang berkomunikasi dengan web server menggunakan HTTP, misalnya suatu browser.

Standar yang interoperable mempermudah klien dalam menggunakan web sebagai sarana mengakses data geografis dan servis geografis lainnya. Tentu saja, GML hanya mengatur mengenai skema dan penulisan data spasial, sedangkan untuk menampilkannya dapat menggunakan SVG.

Extensible Stylesheet Language

XSL merupakan subset dari XML yang direkomendasikan W3C untuk mendefinisikan stylesheets [3]. Suatu dokumen XML dengan struktur tertentu dapat diproses oleh suatu XSL stylesheet menjadi bentuk lain yang diinginkan. Karena XSL adalah bahasa prosedural, XSL hanya berfungsi jika diterjemahkan menggunakan XSL Transformation (XSLT) [4].

XSL dipergunakan untuk mentransformasikan data (GML) menjadi tampilan grafis di klien (SVG). Hal ini dapat dilakukan dengan menggunakan prosesor untuk XSLT seperti Xalan atau Saxon. Di server hal ini dapat dilakukan secara otomatis untuk menghasilkan SVG. Sedangkan di sisi klien hal ini - paling tidak saat ini - masih harus dilakukan secara manual, karena browser belum memberikan keleluasaan untuk itu.

Cara lain untuk mengubah GML menjadi SVG, adalah dengan langsung mengakses Document Object Model, baik di server ataupun di klien. Di server, dapat dilakukan dengan menggunakan servlet, atau server scripts, atau aplikasi lain yang mampu mengakses DOM dari suatu dokumen XML. Di sisi klien, cara yang paling mudah adalah dengan menggunakan EcmaScript.

Peta dengan XML

Jika melihat format XML yang berupa tag-tag dalam bentuk teks, akan sulit membayangkan membuat aplikasi SIG berdasarkan XML. Tapi XML bukanlah bahasa pemrograman, melainkan data yang diproses oleh User Agent (aplikasi di server, browser dll) dengan instruksi tertentu.

Jika kita sudah memiliki data GML (baik berupa file yang dihasilkan suatu aplikasi atau stream dari web), data tersebut harus diolah lebih lanjut agar dapat ditampilkan. Dalam GML dimungkinkan untuk merujuk pada suatu skema data sehingga pemrosesan GML dilakukan berdasarkan skema tersebut.
GML kemudian dapat ditransformasikan menggunakan XSL-XSLT, yang dapat dilakukan baik di server (misalnya Cocoon) atau secara lokal (misalnya menggunakan Saxon, atau parsing menggunakan clientside script). Di masa datang diharapkan XSL dapat dilaksanakan langsung di browser.

Setelah melalui proses transformasi, file GML akan menjadi SVG yang dapat dilihat menggunakan browser. (contoh file GML, XSL dan SVG dapat dilihat di bagian akhir). Saat ini, SVG di browser masih memerlukan plug-ins, karena SVG masih merupakan format yang baru, sehingga membutuhkan waktu bagi pembuat browser untuk mengadopsi-nya. Kecuali anda menggunakan browser khusus SVG seperti Amaya atau Batik.

Proses tersebut, mulai dari data, proses dan output semuanya berupa dokumen XML. Hal lainnya adalah proses ini dapat dilakukan menggunakan software-software opensource.

Sekilas muncul pertanyaan, mengapa tidak langsung menghasilkan SVG dari database atau aplikasi lainnya? Mengapa harus melalui GML?[18] Ilustrasi berikut mengenai Web Feature Server mungkin dapat membantu.

Konsep penggunaan XML dan pertukaran data

Penggunaan format XML (dalam hal ini GML) sangat penting karena berfungsi sebagai jembatan, terutama untuk penerapan Web Feature Server[14].

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 komentar: