Extensible Markup Language (XML) adalah bahasa markup serba guna yang direkomendasikan oleh W3C (World Wide Web Consortium) untuk mendeskripsikan berbagai macam data. XML menggunakan markup tags seperti halnya HTML (Hypertext Markup Language) namun penggunaannya tidak terbatas pada tampilan halaman web saja.
XML dikembangkan mulai tahun 1996 dan mendapatkan pengakuan dari W3C pada bulan Februari 1998. Teknologi yang digunakan pada XML sebenarnya bukan teknologi baru, tapi merupakan turunan dari SGML (Standard Generalized Markup Language) yang telah dikembangkan pada awal tahun 80-an dan telah banyak digunakan pada dokumentasi teknis proyek-proyek berskala besar. Ketika HTML dikembangkan pada tahun 1990, para penggagas XML mengadopsi bagian paling penting pada SGML dan dengan berpedoman pada pengembangan HTML menghasilkan markup language yang tidak kalah hebatnya dengan SGML.
XML dirancang khusus untuk penyampaian informasi melalui World Wide Web (WWW), sama seperti HTML yang telah menjadi bahasa standar untuk membuat halaman web sejak awal kehadiran web. XML adalah salah satu format/ekstensi file yang berbasis teks, yang memiliki ekstensi berakhiran (.xml). Penggunaan XML untuk pemrograman web interaktif sangat cocok sekali, selain mudah dimengerti struktur elemennya karena menggunakan tag sesuai keinginan kita sendiri, begitu juga dengan script-nya (menggunakan JavaScript, JScript atau VBScript).
XML untuk saat ini bukan merupakan pengganti HTML. Masing-masing dikembangkan untuk tujuan yang berbeda. Kalau HTML digunakan untuk menampilkan informasi dan berfokus pada bagaimana informasi itu terlihat, XML mendeskripsikan susunan informasi dan berfokus pada informasi itu sendiri. XML terutama dibutuhkan untuk menyusun dan menyajikan informasi dengan format yang tidak mengandung format standard seperti heading, paragraph, table dan sebagainya.
Keuntungan XML
Beberapa keuntungan yang didapat dari file XML, diantaranya:
- Ekstensibilitas, dapat ditukar atau digabung dengan dokumen XML lain.
- Memungkinkan pemrograman yang lebih baik maka dibuat suatu software pengolah XML.
- Memisahkan data dan presentasi. Yang akan direpresentasikan dalam XML dan XSLT (Extensible Stylesheet Language Transformations).
- Pencarian data yang cepat karena XML merupakan data dalam format yang terstruktur.
- Plain text dan platform independent.
- Untuk pertukaran data.
Dokumen XML dapat digunakan untuk berbagai macam tujuan, seperti:
- Sebagai penyimpan data (database) yang mudah dibaca oleh pengguna karena disimpan dalam bentuk teks.
- Standar transfer data, dapat digunakan untuk pengiriman data transaksi antar perusahaan atau mengirim data dari DBMS (Database Management System) yang berbeda (misalnya dari Oracle ke SQL Server).
- Sebagai acuan membuat bahasa baru, seperti WML (Wireless Markup Language) yang digunakan pada telepon seluler dengan protokol WAP (Wireless Application Protocol) atau VoiceXML yang digunakan sebagai bahasa markup untuk pengenalan suara, dialog, aplikasi interaksi respon suara maupun DTMF (Dual-Tone Multi-Frequency Signaling) seperti aplikasi pengisian pulsa atau call center dan sebagainya.
- Sebagai file konfigurasi, di Java dokumen-dokumen XML sering kita jumpai seperti file server.xml dan web.xml yang digunakan Tomcat atau perintah-perintah query yang disimpan dalam file XML yang dipakai pada framework iBatis atau Hibernate.