• Tidak ada hasil yang ditemukan

2.1 Sejar ah hur uf Korea “Hangeul”

Raja Sejong atau disebut dengan Raja Sejong Yang Agung (Sejong Dae Wang) (Hangeul: ) (7 Mei 1397 – 18 Mei 1450, berkuasa 1418 – 1450) adalah seorang raja yang ke-4 dari Dinasti Joseon yang memerintah Korea. Raja Sejong sangat terkenal karena jasanya dalam menciptakan abjad Korea “Hangeul” yang menggantikan penggunaan cara penulisan dengan Hanja. Ia menciptakan karya besar hangul dan mengumumkannya dalam Hunminjeongeum ( ), yang berarti "Kata-kata yang benar untuk diajarkan kepada rakyat".

Sebelum penggunaan hangul meluas, hanya anggota masyarakat dari kalangan bangsawan yang bisa membaca tulisan (hanja dasarnya dipergunakan untuk menulis kata dalam bahasa Korea dengan tulisan Cina, sedangkan sistem hanmun adalah tulisan Cina klasik yang digunakan untuk menulis dokumen). Seseorang harus mempelajari sistem penulisan hanja yang sulit untuk membaca atau menulis.

1. Hangul adalah implikasi dari Hanzi (Karakter mandarin), zaman dahulu bangsa Korea merasa bahwa Huruf Cina sangat sulit. Sehingga Raja Sejong menemukan huruf Hangeul ini untuk mempermudah rakyat Korea dalam berkomunikasi.

2. Pada zaman dinasti Joseon bangsa Korea masih menggunakan Hanzi sebagai Kanji Hangeul. Hanzi di Korea disebut Hanja

3. Penulisan huruf Hangul mirip dengan huruf Hijaiyah (karakter Arab) dengan menyambung huruf vokal dan konsonan, serta pelafalan nya dengan menggunakan aturan tertentu

Susunan Hangeul :

• Bunyi Awal Konsonan dasar 14 huruf, namun konsonan ini bisa dipakai dengan ganda, jadi jumalah konsonan lebih banyak.

• Bunyi Tengah Vokal dasar 10 huruf, namun pemakaian vokal ini bisa

bertambah, jadi jumlah vokal lebih banyak.

• Bunyi Akhir Bunyi akhir, diungkapkan dengan konsonan seperti bunyi

awal.[1]

2.1.1 Alphabet Korea “Hangeul”

Pada dasarnya, masing-masing karakter huruf Korea berhubungan dengan fonem, yaitu bunyi dasar yang menyatakan vokal, konsonan, atau konsonan yang menyerupai vokal (semivokal atau glide). Dalam hal ini, penulisan huruf-huruf Korea yang menyatakan vokal mempunyai karakteristik yang sangat berbeda dengan huruf-huruf yang menyatakan konsonan[2]. Perbedaaannya adalah:

• Penyusunan abjad latin : ABCDEFGHIJKLMNOPQRSTUVWXYZ,

Sedangkan pada abjad Hangeul : Vokal , , , , , , , , , /

• Menurut buku Panduan Terlengkap Bahasa Korea huruf-huruf konsonan terdiri dari 3 lambang dasar yang dipengaruhi oleh kajian kosmologi yang dianut oleh sebagian besar masyarakat Asia Timur. Ketiga lambang dasar tersebut adalah titik (.) yang menyatakan langit, garis mendatar (–) yang menyatakan tanah, dan garis vertikal (I) yang menyatakan manusia.[2]

• Huruf-huruf konsonan terdiri dari unsur-unsur dasar dan sederhana yang secara skematik digunakan oleh kelompok bunyi yang berartikulasi pada tempat yang sama di lidah atau mulut, misalnya bunyi n dan t yang dihasilkan dengan menempatkan lidah di belakang gigi bagian atas, dinyatakan dengan simbol-simbol yang menunjukkan posisi lidah ketika melafalkan bunyi tersebut.

Hangul dibangun dari berbagai huruf (hampir mirip dengan Bahasa.Inggris) dengan satu atau dua huruf yang dikombinasikan ke blok menuju form kosakata. Huruf- huruf Korea tersebut adalah :

Tabel 2.1 Vokal Primer

Tabel 2.2 Vokal Sekunder

Huruf dasar terdiri atas 24 huruf, yaitu 10 huruf vokal dan 14 konsonan. Pada huruf Latin, untuk membuat sebuah kata dilakukan dengan menyusun huruf

dari kiri ke kanan sampai terbentuk kata yang diinginkan. Pada huruf hangul, untuk membuat sebuah kata dilakukan terlebih dahulu menyusun huruf-huruf menjadi sebuah sukukata, baru kemudian sukukata tersebut disusun dari kiri ke kanan sampai terbentuk kata yang diinginkan. Huruf-huruf vokal yang bentuknya vertikal, seperti (a), (ya), (eo), (yeo), (i) selalu diletakan sebelah kanan konsonan. Dan huruf vokal yang bentuknya horizontal seperti (o), (yo), (u), (yu), (eu),selalu diletakan dibawah huruf konsonan. Setiap suku kata selalu dibuat dengan komposisi : Konsonan awal + vocal + Konsonan akhir Huruf- huruf yang boleh dijadikan sebagai konsonan awal sebanyak 19 yaitu [3].

Tabel 2.3 Konsonan Tunggal (Primer)

Huruf dibaca “Giyeok” ketika dia berdiri sebagai konsonan awal maka dibaca

Tabel 2.4 Konsonan Rangkap (sekunder)

Semua konsonan dapat berfungsi sebagai konsonan akhir (huruf mati), tetapi dari semua itu hanya dapat dikelompokkan menjadi 7 macam yaitu seperti dibawah ini :

Bentuk dari konsonan akhir rangkap yaitu seperti berikut : Tabel 2.6 Konsonan Akhir Rangkap.

2.2 Tentang J ava

Java adalah bahasa pemograman tingkat tinggi yang berorientasi objek, diedarkan oleh Sun Microsystem pada awal tahun 1996. Sejarah awal Java berawal di tahun 1991 ketika satu group insinyur-insinyur Sun, yang dipimpin oleh Ptrick Naughton dan James Gosling, ingin mendesain sebuah bahasa pemograman komputer yang berukuran kecil yang dapat digunakan untuk peralatan elektronika konsumen sepertu switchboxes TV kabel. Dikarenakan peralatan-peralatan ini menggunakan konsumsi daya dan memory yang rendah,

setiap vendor menggunakan CPUs (Central Processing Unit) yang berbeda, maka bahasa tersebut harus bersifat multiplatfrom, tidak terikat hanya pada satu arsitektur (Architecture Neutral).

Proyek ini diberi nama Green Project. Karena harus bersifat Architecture Neutral, maka Green Project menggunakan Virtual Machine (atau dikenal dengan Java Virtual Machine) yang berasal dari model implementasi bahasa Pascal di awal-awal perkembangan PC. Dikarenakan insinyurinsinyur Sun berlatar belakang Unix 2, jadi mereka mendasari bahasa pemograman mereka dengan C++ dari pada Pascal. Secara khusus mereka membuat bahasa mereka berorientasi obyek (object oriented), bukan berorientasi prosedur (procedural oriented) seperti model bahasa Pascal. Bahasa pemograman tersebut dinamakan Oak, kemudian diubah menjadi Java.

Karena pada awalnya ditujuan untuk pemograman device kecil, Java memiliki karakteristik berukuran kecil, efisien, dan portable untuk berbagai hardware. Perkembangannya sempat terhenti karena tidak ada yang tertarik dan tidak memiliki pasar seperti yang diramalkan. Ketika teknologi internet berkembang, Java diarahkan untuk menjadi bahasa pemograman internet karena fitur-fitur Java seperti Architecture Neutral, real time, reliable dan secure sangat sesuai untuk pengembangan internet. [8]

2.2.1 Kelebihan dan Kekur angan J ava Kelebihan :

Multiplatform. Kelebihan utama dari Java ialah dapat dijalankan di beberapa platform / sistem operasi komputer, sesuai dengan

prinsiptulis sekali, jalankan di mana saja. Dengan kelebihan ini pemrogram cukup menulis sebuah program Java dan dikompilasi (diubah, dari bahasa yang dimengerti manusia menjadi bahasa mesin / bytecode) sekali lalu hasilnya dapat dijalankan di atas beberapa platform tanpa perubahan. Kelebihan ini memungkinkan sebuah program berbasis java dikerjakan diatas operating system Linux tetapi dijalankan dengan baik di atas Microsoft Windows. Platform yang didukung sampai saat ini adalah Microsoft Windows, Linux, Mac OS dan Sun Solaris. Penyebanya adalah setiap sistem operasi menggunakan programnya sendiri-sendiri (yang dapat diunduh dari situs Java) untuk meninterpretasikan bytecodetersebut.

OOP (Object Oriented Programming – Pemrogram Berorientasi Objek)

Perpustakaan Kelas Yang Lengkap, Java terkenal dengan kelengkapan library/perpustakaan (kumpulan program program yang disertakan dalam pemrograman java) yang sangat memudahkan dalam penggunaan oleh para pemrogram untuk membangun aplikasinya. Kelengkapan perpustakaan ini ditambah dengan keberadaan komunitas Java yang besar yang terus menerus membuat perpustakaan-perpustakaan baru untuk melingkupi seluruh kebutuhan pembangunan aplikasi.

Bergaya C++, memiliki sintaks seperti bahasa pemrograman C++ sehingga menarik banyak pemrogram C++ untuk pindah ke Java. Saat ini pengguna Java sangat banyak, sebagian besar adalah pemrogram

C++ yang pindah ke Java. Universitas-universitas di Amerika Serikat juga mulai berpindah dengan mengajarkan Java kepada murid-murid yang baru karena lebih mudah dipahami oleh murid dan dapat berguna juga bagi mereka yang bukan mengambil jurusan komputer.

Pengumpulan sampah otomatis, memiliki fasilitas pengaturan penggunaan memori sehingga para pemrogram tidak perlu melakukan pengaturan memori secara langsung (seperti halnya dalam bahasa C++ yang dipakai secara luas).

Kekur angan :

Tulis sekali, jalankan di mana saja – Masih ada beberapa hal yang tidak kompatibel antara platform satu dengan platform lain. Untuk J2SE, misalnya SWT-AWT bridge yang sampai sekarang tidak berfungsi pada Mac OS X.

Mudah didekompilasi. Dekompilasi adalah proses membalikkan dari kode jadi menjadi kode sumber. Ini dimungkinkan karena kode jadi Java merupakan bytecode yang menyimpan banyak atribut bahasa tingkat tinggi, seperti nama-nama kelas, metode, dan tipe data. Hal yang sama juga terjadi pada Microsoft .NET Platform. Dengan demikian, algoritma yang digunakan program akan lebih sulit disembunyikan dan mudah dibajak/direverse-engineer.

Penggunaan memori yang banyak. Penggunaan memori untuk program berbasis Java jauh lebih besar daripada bahasa tingkat tinggi generasi sebelumnya seperti C/C++ dan Pascal (lebih spesifik lagi, Delphi dan Object Pascal). Biasanya ini bukan merupakan masalah

bagi pihak yang menggunakan teknologi terbaru (karena trend memori terpasang makin murah), tetapi menjadi masalah bagi mereka yang masih harus berkutat dengan mesin komputer berumur lebih dari 4 tahun.[9]

2.3 Andr oid

Google Android adalah sistem operasi untuk telepon seluler yang berbasis Linux. Android juga menyediakan platform terbuka bagi para pengembang guna menciptakan aplikasi mereka sendiri untuk digunakan oleh bermacam peranti bergerak. Operating System Android ini di keluarkan oleh Google untuk menyaingi Windows, Apple dan pesaing-pesaingnya Awalnya, Google membeli Android, pendatang baru yang membuat peranti lunak untuk ponsel. Kemudian untuk mengembangkan Android, dibentuklah Open Handset Alliance, konsorsium dari 34 perusahaan peranti keras, peranti lunak, dan telekomunikasi, termasukGoogle, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia.

Google sendiri ternyata mempunyai alasan cukup kuat untuk melirik pangsa ini, karena perkembangan teknologi telepon seluler sewasa ini sudah bukan merupakan evolusi lagi, melainkan sebuah revolusi. Babak baru dalam dunia telekomunikasi nirkabel ini terus bergulir dengan cepat. Jika sekarang seseorang mempunyai PC di rumah, dan notebook untuk ke kantor atau kuliah, serta berkomunikasi melalui telepon seluler. Maka pergerakkan yang kemudian terjadi sekarang adalah, orang mulai berpikir bagaimana menyatukan semuanya dalam satu genggaman. Sebenarnya hal tersebut telah mulai dipenuhi dengan munculnya PDA/smartphone, di mana seseorang dapat merangkum semua

kebutuhan komputasinya dalam satu genggaman. Dan perkembangan inilah yang membuat Google berambisi untuk menguasai pangsa ini.

2.4 The Dalvik Vir tual Machine

Android terdiri dari satu set core libraries yang menyediakan sebagian besar fungsi yang tersedia dalam core libraries dari bahasa pemrograman Java. Setiap menjalankan aplikasi Android sendiri dalam proses, dengan masing-masing instance dari mesin virtual Dalvik (Dalvik VM). Dalvik dirancang agar perangkat dapat menjalankan multiple VMs secara efisien. Mesin Virtual Dalvik dieksekusi dalam Dalvik executable (.dex), sebuah format yang dioptimalkan untuk memori yang kecil. Dalvik VM berbasis, berjalan dan dikompilasi oleh compiler bahasa Java yang telah ditransformasikan ke dalam .dex format yang disertakan oleh tool "dx". Dalvik VM bergantung pada kernel Linux untuk berfungsi , seperti threading dan manajemen memori tingkat rendahnya.

2.5Andr oid SDK (Software Development Kit)

Saat ini disediakan Android SDK (software Development kit) sebagai alat bantu dan API diperlukan untuk mulai mengembangkan aplikasi pada platform Android menggunakan bahasa pemrograman Java. Features :

a. Framework Aplikasi yang mendukung penggantian komponen dan reusable.

b. Mesin virtual Dalvik dioptimalkan untuk perangkat mobile. c. Integrated browser berdasarkan engine open source WebKit.

d. Grafis yang dioptimalkan dan didukung oleh perpustakaan grafis 2D, grafis 3D berdasarkan spesifikasi opengl ES 1,0 (Opsional akselerasi hardware).

e. SQLite untuk penyimpanan data.

f. Media Support yang mendukung audio, video, dan gambar (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF).

g. GSM Telephony (tergantung hardware).

h. Bluetooth, EDGE, 3G, dan WiFi (tergantung hardware).

i. Kamera, GPS, kompas, dan accelerometer (hardware tergantung).

j. Lingkungan Development yang lengkap dan kaya termasuk perangkat emulator, tools untuk debugging, profil dan kinerja memori, dan plugin untuk Eclipse IDE [10].

2.6 Sejar ah Eclipse

Menurut Lyrac (2009), Eclipse adalah sebuah IDE untuk mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platform-independent). Berikut ini adalah sifat dari Eclipse[11]:

1. Multi-platform: Target sistem operasi Eclipse adalah Microsoft Windows,

Linux, Solaris, AIX, HP-UX dan Mac OS X.

2. Mulit-language: Eclipse dikembangkan dengan bahasa pemrograman Java,

akan tetapi Eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lain seperti C/C++, Cobol, Python, Perl, PHP, dan lain sebagainya.

3. Multi-role: Selain sebagai IDE untuk pengembangan aplikasi. Eclipse pun bisa

dokumentasi, pengujian perangkat lunak, pengembangan web, dan lain sebagainya.

Pada saat ini, Eclipse merupakan salah satu IDE favorit karena gratis dan

open source. Open source berarti setiap orang boleh melihat kode pemrograman perangkat lunakini. Selain itu, kelebihan dari Eclipse yang membuatnya populer adalah kemampuannya untuk dapat dikembangkan oleh pengguna dengan membuat komponen yang disebut plugin.

2.6.1 Macam-macam Eclipse

Sejak tahun 2006, Eclipse Foundation mengkoordinasikan peluncuran Eclipse secara rutin dan simultan yang dikenal dengan nama Simultaneous Release. Setiap versi peluncuran terdiri dari Eclipse Platform dan juga sejumlah proyek yang terlibat dalam proyek Eclipse. Tujuan sistem ini adalah untuk menyediakan distribusi Eclipse dengan fitur-fitur dan versi yang terstandarisasi. Hal ini juga dimaksudkan untuk mempermudah deployment dan maintenance

untuk sistem enterprise, serta untuk kenyamanan. Peluncuran simultan dijadwalkan pada bulan Juni setiap tahunnya.

2.6.2 Ar sitektur Eclipse

Sejak versi 3.0, Eclipse pada dasarnya merupakan sebuah kernel. Apa yang dapat digunakan di dalam Eclipse sebenarnya adalah fungsi dari plug-in

yang sudah dipasang (diinstal). Ini merupakan basis dari Eclipse yang dinamakan

Rich Client Platform (RCP). Berikut ini adalah komponen yang membentuk RCP

yang ditulis Yunus di [12]:

a. Core platform

b. OSGi

c. SWT (Standard Widget Toolkit) d. JFace

e. Eclipse Workbench

Secara standar Eclipse selalu dilengkapi dengan JDT (Java Development

Tools), plug-in yang membuat Eclipse kompatibel untuk mengembangkan

program Java, dan PDE (Plug-in Development Environment) untuk mengembangkan plug-in baru. Eclipse beserta plug-in-nya diimplementasikan dalam bahasa pemrograman Java.

Konsep Eclipse adalah IDE yang terbuka, mudah diperluas untuk apa saja, dan tidak untuk sesuatu yang spesifik. Jadi, Eclipse tidak saja untuk mengembangkan program Java, akan tetapi dapat digunakan untuk berbagai macam keperluan, cukup dengan menginstal plug-in yang dibutuhkan. Apabila ingin mengembangkan program C/C++ terdapat plug-in CDT (C/C++ Development Tools). Selain itu, pengembangan secara visual bukan hal yang tidak mungkin oleh Eclipse, plug-in UML2 tersedia untuk membuat diagram UML. Dengan

menggunakan PDE setiap orang bisa membuat plug-in sesuai dengan keinginannya.

2.7Tentang UML

Penjelasan Arif di [13] tentang UML (Unified Modeling Language) adalah sebuah bahasa untuk menetukan, visualisasi, kontruksi, dan mendokumentasikan artifact (bagian dari informasi yang digunakan atau dihasilkan dalam suatu proses pembuatan perangkat lunak. Artifact dapat berupa model, deskripsi atau perangkat lunak) dari system perangkat lunak, seperti pada pemodelan bisnis dan system non perangkat lunak lainnya.

UML merupakan suatu kumpulan teknik terbaik yang telah terbukti sukses dalam memodelkan system yang besar dan kompleks. UML tidak hanya digunakan dalam proses pemodelan perangkat lunak, namun hampir dalam semua bidang yang membutuhkan pemodelan.

Tujuan Penggunaan UML menurut :

a. Memberikan bahasa pemodelan yang bebas dari berbagai bahas pemrograman dan proses rekayasa.

b. Menyatukan praktek-praktek terbaik yang terdapat dalam pemodelan.

c. Memberikan model yang siap pakai, bahsa pemodelan visual yang ekspresif untuk mengembangkan dan saling menukar model dengan mudah dan dimengerti secara umum.

d. UML bisa juga berfungsi sebagai sebuah (blue print) cetak biru karena sangat lengkap dan detail. Dengan cetak biru ini maka akan bias diketahui informasi

secara detail tentang coding program atau bahkan membaca program dan menginterpretasikan kembali ke dalam bentuk diagram (reserve enginering).

2.7.1 Bagian-bagian UML

Menurut Wahyu di [14] Secara ringkas sebenarnya konsep dasar UML di rangkum seperti tabel di bawah:

a. Use Case Diagram

Yaitu rangkaian yang saling terkait membentuk sistem secara teratur dan diawasi/dilakukan oleh aktor. Aktor yaitu manusia atau mesin. Menggambarkan fungsionalitas dari sistem. Fokus pada “apa” yang diperbuat sistem misal login ke sistem, meng-create daftar stok barang dan fungsionalitas lain. Use case diagram sangat membantu dalam hal:

1. Bila sedang menyusun requirement sebuah sistem. 2. Mendiskusikan rancangan dengan klien.

3. Merancang test case fitur-fitur yang ada pada sistem. 4. Meng-include fungsionalitas use case lain.

5. Dapat Meng-extend use case lain dengan behaviour-nya 6. sendiri.

b. Class Diagram

Yaitu sebuah spesifikasi yang jika diinstalasi menghasilkan obyek dan inti dari pengembangan disain berorientasi obyek. Class diagram menggambarkan properti dan metode/fungsi. Class memiliki tiga area yaitu: 1. Nama dan stereotype.

3. Metoda.

Atribut dan metode dapat memiliki salah satu sifat berikut: 1. Private, tidak dapat di panggil dari luar class.

2. Protected, hanya dapat di panggil oleh class yang 3. bersangkutan dan anak pewarisnya.

4. Public, dapat di panggil oleh siapa saja. c. Statechart Diagram

Yaitu menggambarkan transisi dari satu state ke state lain suatu obyek pada sistem. State digambarkan segi empat dengan sudut tumpul dan memiliki nama sesuai kondisinya. Transisi state ditulis dalam kurung siku. Action yang dilakukan akibat dari event diawali garis miring. State awal digambarkan dengan lingkaran penuh. State akhir digambarkan dengan lingkaran setengah.

d. Activity Diagram

Menggambarkan berbagai alur aktivitas dalam sistem yang sedang dirancang. Juga menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. Activity Diagram sebagian besar state merupakan action dan transisi di trigger. Activity diagram menggambarkan proses dan jalur aktivitas dari level atas. Satua aktivitas dapat direalisasikan oleh satu use case atau lebih. Aktivitas menggambarkan proses yang berjalan, sementara use case menggambarkan bagaimana aktor menggunakan sistem untuk melakukan aktivitas.

e. Sequence Diagram

Menggambarkan interaksi antar obyek di dalam dan sekitar sistem berupa message. Juga menggambarkan skenario atau langkah yang dilakukan sebagai respon dari client untuk menghasilkan output. Setiap obyek termasuk aktor memiliki lifeline vertikal. Message digambarkan sebagai garis panah. Pada fase disain message akan dipetakan menjadi metode/operasi. Action bar menunjukkan la eksekusi sebuah proses.

f. Collaboration Diagram

Menggambarkan interaksi antar obyek, namun lebih menekankan pada peran setiap obyek bukan pada waktu penyampaian message. Setiap message memiliki sequence number, dimana message dari level tertinggi memiliki nomor 1. Message dari level yang sama memiliki prefiks yang sama.

g. Component Diagram

Menggambarkan struktur dan hubungan antar komponen piranti lunak. Komponen piranti lunak berisi code, baik source code maupun binary code baik library maupun executable baik yang muncul pada compile time, link time atau run time. Umumnya komponen terbentuk dari beberapa class atau package. Komponen dapat juga berupa interface.

h. Deployment Diagram

Menggambarkan bagaimana detail komponen di deploy dalam infrastrukture sistem, dimana akan diletakkan, bagaimana kemampuan jaringan, bagaimana spesifikasi server dan hal lain bersifat fisik. Berikut contoh gambar Deployment Diagram.

2.7.2 Kelebihan dan Kekur angan UML

Kelebihan UML dibandingkan dengan bahasa pemodelan yang lain antara lain:

a. Menyediakan bahasa pemodelan visual yang ekspresif dan siap pakai untuk mengembangkan dan pertukaran model-model yang berarti.

b. Menyediakan mekanisme perluasan dan spesialisasi untuk memperluas konsep-konsep inti.

c. Mendukung spesifikasi independen bahasa pemrograman dan proses pengembangan tertentu.

d. Menyediakan basis formal untuk bahasa pemodelan.

e. Memadukan praktek-praktek terbaik di industri perangkat lunak menjadi terminologi dan notasi yang diterima luas.

f. Menyediakan kemampuan merepresentasikan semua konsep yang eleven untuk sistem perangkat lunak.

g. Menyediakan fleksibilitas yang diperlukan bagi konsep-konsep perangkat lunak yang baru.

Sedangkan kekurangan UML antara lain:

a. UML bukanlah bahasa pemrograman visual, melainkan bahasa pemodelan visual.

b. UML bukan spesifikasi dari tool, tapi spesifikasi bahasa pemodelan.

c. UML bukanlah proses, tapi yang memungkinkan proses-proses.[15]

2.8XML

XML kependekan dari eXtensible Markup Language, 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 yang telah dikembangkan pada awal 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.

Seperti halnya HTML, XML juga menggunakan elemen yang ditandai dengan tag pembuka (diawali dengan ‘<’ dan diakhiri dengan ‘>’), tag penutup(diawali dengan ‘</ ‘diakhiri ‘>’) dan atribut elemen(parameter yang dinyatakan dalam tag pembuka misal <form name=”isidata”>). Hanya bedanya, HTML medefinisikan dari awal tag dan atribut yang dipakai didalamnya, sedangkan pada XML kita bisa menggunakan tag dan atribut sesuai kehendak kita.

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 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 layaknya heading, paragraph, table dan lain sebagainya

Sama dengan HTML, File XML berbentuk teks sehingga bila diperlukan kita bisa membacanya tanpa memerlukan bantuan software khusus. Hal ini

Dokumen terkait