XML
XML (eXtensible Markup Language) merupakan bahasa web turunan dari SGML (Standart Generalized Markup
Language) yang ada sebelumnya. XML hampir sama dengan HTML, dimana keduanya
sama-sama turunan dari SGML. Teknologi XML dikembangkan mulai tahun 1966 dan
mendapatkan pengakuan dari Worl Wide Web Consortium
(W3C) pada bulan Februari 1998. Sedangkan SGML sendiri telah dikembangkan pada
awal tahun 1980-an. Pada saat HTML dikembangkan pada tahun 1990, para penggagas
XML mengadopsi bagian paling penting SGML dan dengan berpedoman pada
pengembangan HTML menghasilkan bahasa markup yang tidak kalah hebatnya dengan
SGML.
Secara sederhana XML adalah suatu bahasa yang digunakan untuk mendeskripsikan
dan memanipulasi dokumen secara terstruktur. Secara teknis XML didefinisikan
sebagai suatu bahasa meta-markup yang menyediakan format tertentu untuk
dokumen-dokumen yang mempunyai data terstruktur. Bahasa markup adalah mekanisme
untuk mengenal secara terstruktur di dokumen. XML adalah suatu aplikasi profil
dari SGML. Seperti yang didefinisikan dari ISO 8879, SGML adalah cara standart
dan vendor-independent.
XML tidak mempunyai definisi secara tepat karena ada yang berpendapat bahwa XML
bukanlah suatu bahasa pemrograman,melainkan XML merupakan sintaks yang
digunakan untuk menjelaskan bahasa markup lain (Dournaee,2002), sehingga
dinamakan meta-language. Meskipun demikian pendapat yang XML bukan merupakan
bahasa markup, didasarkan bahwa XML merupakan bahasa markup terpisah untuk
tujuan terpisah. Selain itu XML bukanlah solusi semua hal untuk tujuan semua
user. Sedangkan peran dari markup itu sendiri berupa:
1. Markup dapat menambah maksud arti (semantic) suatu data.
2. Dapat memisahkan data.
3. Dapat mendefinisikan peran data.
4. Dapat mendefinisikan batasan data.
5. Dapat menfenisikan keterhubungan data.
XML merupakan sebuah himpunan bagian (subset) dari SGML yang bertujuan agar
SGML secara generik dapat melayani, menerima, dan memproses di dalam web dengan
cara seperti yang dimungkinkan HTML saat ini. XML didesain untuk kemudahan
implementasi dan interoperabilitas dengan SGML maupun HTML. XML adalah bahasa
markup yang dirancang untuk penyampaian informasi melalui World Wide Web (www) atau sering disebut web saja.
(W3C,2000)
XML merubah cara kita berpikir untuk mengembangkan suatu software terutama aplikasi web. Masalah yang kita
sekarang adalah bagaimana caranya untuk bertukar informasi antar satu aplikasi
dengan aplikasi lain. Kadang kolaborasi antara satu aplikasi dengan aplikasi
yang lain masih harus ditentukan dengan spesifikasi aplikasi tersebut. Padahal
seharusnya kita hanya perlu mendapatkan informasi data bukan mengerti cara
kerja aplikasi lain itu, disinilah visi internet yang belum tercapai. Visi ini
adalah dunia internet dimana PC, server, smart devices dan internet-based
device dapat berkolaborasi tanpa ada halangan. Bisnis-bisnis akan dapat
bertukar data menyediakan customized dan comprehensive solusi kepada customer.
Dan yang paling utama adalah informasi yang dibutuhkan dapat diakses dari mana
saja dan dengan computing device, platform, atau aplikasi yang kita gunakan. XML
dapat memungkinkan pertukaran informasi atau data antar device (server, PCs,
smart device, aplikasi, dan situs web). Data ini akan menjadi independent
(unlocked), memudahkannya untuk diorganisir, diprogram, dan dirubah, dan
ditukar antar situs web atau aplikasi apa saja. Karena kebutuhan ini, maka
makin banyak teknologi berbasis XML yang keluar.
Contohnya adalah SOAP (Simple Project Acces Protocol) dan UDDI (Universal
Description Discovery and Integration).
Contoh program XML:
- Sebuah contoh
dokumen XML seperti pada contoh dibawah ini dan simpan kedalam file contoh1.xml
:
<?xml
version="1.0"?>
<product
barcode="2394287410">
<manufacturer>Verbatim</manufacturer>
<name>DataLife MF 2HD</name>
<quantity>10</quantity>
<size>3.5"</size>
<color>black</color>
<description>floppy
disks</description>
</product>
- jika dokumen
tersebut kita buka menggunakan web browser, maka tampak seperti gambar dibawah ni :
- Dokumen
diatas menjelaskan sebuah data produk yang ada pada suatu supermarket.
Produk tersebut memiliki kode barcode= 2394287410,manufacturer=Verbatim, name=DataLife MF 2HD, quantity=10, size=3.5", color=black, description=floppy disks.
Manfaat XML.
1.
Mempermudah
pengaturan data.
2.
SEO
SEO
atau kepanjangan dari (Search Engine Optimization) adalah suatu cara atau
teknik untuk membuat situs atau blog kita berada pada halaman/posisi satu di
mesin pencarian (search engine) seperti Google, Bing, dan Yahoo. Search Engine
Optimization atau sering di sebut SEO adalah suatu cara atau teknik agar weblog
yang kita miliki mempunyai posisi di halaman pencarian google yang bisa
meningkatkan trafik rank pada weblog kita. Lebih tinggi nilai SEO weblog
berarti besar kemungkinan untuk menempati posisi pertama di pencarian google. Menurut
dari beberapa sumber yang sudah di cari pengertian SEO tetap mencakup hal yang
sama yang mengoptimalkan suatu halaman weblog agar mempunyai posisi di halaman
pencarian google. Istilah search engine optimization pertama kali
digunakan pada 26 Juli tahun 1997 oleh sebuah pesan spam yang diposting di
Usenet. Pada masa itu algoritma mesin pencari belum terlalu kompleks sehingga
mudah dimanipulasi. Versi awal algoritma pencarian didasarkan sepenuhnya pada
informasi yang disediakan oleh webmaster melalui meta tag pada kode html situs
web mereka. Meta tag menyediakan informasi tentang konten yang terkandung pada
suatu halaman web dengan serangkaian kata kunci (keyword). Sebagian
webmaster melakukan manipulasi dengan cara menuliskan katakunci yang tidak
sesuai dengan konten situs yang sesungguhnya, sehingga mesin pencari salah
menempatkan dan memeringkat situs tersebut. Hal ini menyebabkan hasil pencarian
menjadi tidak akurat dan menimbulkan kerugian baik bagi mesin pencari maupun
bagi pengguna internet yang mengharapkan informasi yang relevan dan
berkualitas.
Keuntungan dari SEO
- Mendatangkan trafik yang banyak
- Meningkatkn Penjualan Online
- Meningkatkan Daya Saing
3.
Implementasi
pada teknologi.
-
Internet
Interconnection network
(internet) adalah sistem global dari seluruh jaringan komputer yang saling terhubung.
Internet merupakan jaringan yang terdiri dari milyaran komputer yang ada di
seluruh dunia. Internet melibatkan berbagai jenis komputer serta topology
jaringan yang berbeda. Dalam mengatur integrasi dan komunikasi jaringan,
digunakan standar protokol internet yaitu TCP/IP. TCP bertugas untuk memastikan
bahwa semua hubungan bekerja dengan baik, sedangkan IP bertugas untuk
mentransmisikan paket data dari satu komputer ke komputer lainya.
-
Website :
statis (html/htms) dan dinamis (php)
1.
Web Statis
Web statis adalah website
yang mana pengguna tidak bisa mengubah konten dari web tersebut secara langsung
menggunakan browser. Interaksi yang terjadi antara pengguna dan server hanyalah
seputar pemrosesan link saja. Halaman-halaman web tersebut tidak memliki
database, data dan informasi yang ada pada web statis tidak berubah-ubah
kecuali diubah sintaksnya. Dokumen web yang dikirim kepada client akan sama
isinya dengan apa yang ada di web server. Contoh dari web statis adalah web
yang berisi profil perusahaan. Di sana hanya ada beberapa halaman saja dan
kontennya hampir tidak pernah berubah karena konten langsung diletakan dalam
file HTML saja.
2.
Web Dinamis
Dalam web dinamis, interaksi
yang terjadi antara pengguna dan server sangat kompleks. Seseorang bisa
mengubah konten dari halaman tertentu dengan menggunakan browser. Request
(permintaan) dari pengguna dapat diproses oleh server yang kemudian ditampilkan
dalam isi yang berbeda-beda menurut alur programnya. Halaman-halaman web
tersebut memiliki database. Web dinamis, memiliki data dan informasi yang
berbeda-beda tergantung input apa yang disampaikan client. Dokumen yang sampai
di client akan berbeda dengan dokumen yang ada di web server. Contoh dari web
dinamis adalah portal berita dan jejaring sosial. Lihat saja web tersebut,
isinya sering diperbaharui (di-update) oleh pemilik atau penggunanya. Bahkan
untuk jejaring sosial sangat sering di-update setiap harinya.
Perbedaan
Web Statis dan Web Dinamis
-
Interaksi
antara pengunjung dan pemilik web
Dalam
web statis tidak dimungkinkan terjadinya interaksi antara pengunjung dengan
pemilik web. Sementara dalam web dinamis terdapat interaksi antara pengunjung
dengan pemilik web seperti memberikan komentar, transaksi online, forum, dll.
-
Bahasa Script yang digunakan
Web
statis hanya menggunakan HTML saja, atau paling tidak bisa ditambah dengan CSS.
Sedangkan web dinamis menggunakan bahasa pemrograman web yang lebih kompleks
seperti PHP, ASP dan JavaScript.
-
Penggunaan Database
Web statis tidak menggunakan
database karena tidak ada data yang perlu disimpan dan diproses. Sedangkan web
dinamis menggunakan database seperti MySQL, Oracle, dll untuk menyimpan dan
memroses data.
-
Konten
Konten
dalam web statis hanya diberikan oleh pemilik web dan jarang di-update,
sementara konten dalam web dinamis bisa berasal dari pengunjung dan lebih
sering di-update. Konten dalam web dinamis bisa diambil dari database sehingga
isinya pun bisa berbeda-beda walaupun kita membuka web yang sama.
-
Future
internet.
4.
Keamanan
Sistem (security).
Sebagai sebuah markup language, maka
dokumen XML tersusun dari kumpulan teks biasa. Sedangkan maksud yang
terkandung pada data dijelaskan melalui penanda yang biasa di sebut
dengan tag. Dengan menggunakan tag, maka sebuah dokumen XML dapat dengan
mudah di baca dan di mengerti oleh user dan bahkan oleh program
komputer.
Dengan semakin maraknya dan luasnya penggunaan XML pada berbagai layanan
di internet, di mana penyebaran informasinya sebagian besar memakai
infrastruktur jaringan umum, maka mulailah muncul hambatan dan
permasalahan mengenai kebutuhan akan kemanan data bagi informasi yang
terkandung di dalam dokumen XML. Dengan adanya hal ini mengingat bahwa
sebuah dokumen XML tersusun dari sekumpulan teks yang sangat mudah di
pahami oleh user atau bahkan program komputer.
Berdasarkan kebutuhan tersebut, maka W3C (world wide web consortium)
berusaha mengembangkan beberapa spesifikasi tambahan untuk XML.
Spesifikasi tersebut di kembangkan untuk memampukan para pengguna untuk
menggunakan fasilitas pengamanan data pada sebuah dokumen XML yang akan
di distribusikan. Sistem keamanan data yang terdapat pada spesifikasi
XML tersebut itu di kenal dengan istilah XML security.
Dengan adanya XML security ini dapat
menjaga keamanan data informasi bagi pengguna. Di karenakan jika terjadi
kerusakan atau data/informasi yang kita punya di ambil atu di hancurkan
oleh orang-orang yang tidak bertanggung jawab, maka data akan tetap
utuh. Karena pada suatu website yang di lengkapi dengan dokumen XML,
biasanya tempat penyimpanan data atau informasi yang di gunakan atau di
pake itu ada dua, yaitu database dan XML.
Jika data atau informasi rusak atau hilang, maka akan ada backup data
atau informasi yang lainnya yaitu pada penyimpanan di dalam database.
Sedangkan data atau informasi yang hilang itu terdapat pada dokumen XML.
Keamanan Data :
Terhadap kebutuhan untuk melakukan transaksi atau komunikasi secara aman pada jaringan internet, teknik- teknik terus di kembangkan pada semua lapisan arsitektur protokol yang di gunakan. Khususnya arsitektur protokol TCP/IP.
Metode yang dikenal untuk dapat menerapkan keamanan pada lapisan
aplikasi yaitu antara lain pretty good privacy (PGP) dan secure MIME
(S/MIME). Namun kedua metode tersebut memerlukan aplikasi yang mendukung
metode-metode tersebut. Selain itu juga metode-metode tersebut hanya
dapat menyandikan (enkrip) sebuah dokumen keseluruhan atau tidak sama
sekali. Keadaan dan kondisi seperti ini tidak selalu di butuhkan dan
tidak selalu di harapkan.
Arsitektur keamanan untuk XML (XML security), di kembangkan untuk
menjawab kebutuhan terssebut. Dan juga dapat menyediakan keamanan yang
fleksibel tidak hanya untuk dokumen XML, tetapi juga untuk semua obyek
yang dapat di tangani melalui sebuah URL.
Sebuah arsitektur keamanan mendasari dirinya pada beberapa layanan keamanan yaitu :
1. Kerahasiaan (confidentiality)
2. Integritas (integrity)
3. Authentication
4. Nonrepudiation
Berikut ini standar-standar inti dari XML security :
1. XML digital signature untuk tanda tangan dan integritas.
2. XML encryption untuk kerahasiaan.
5. XML memisahkan data dari HTML
Kita dapat memisahkan data dari html, yang disimpan dalam XML Dengan
menggunakan javascript kita dapat membaca XML, mengupdatenya, dan
menampilkannya
6. XML menyederhanakan data sharing
XML dibangun menggunakan plain text format sehingga menjadi penyimpanan
yang hardware dan software independent dan memudahkan sharing data.
7. XML menyederhanakan pengiriman data
Dikarenakan di internet terdiri dari berbagai sistem yang kadang satu
sama lain tidak kompatibel maka XML dapat membuat data yang secara mudah
disharing kepada berbagai sistem yang tidak cocok tadi.
8.XML menyederhanakan perubahan platform
Upgrade sistem(hardware dan software), merupakan sebuah hal yang riskan
salah satunya adalah konversi data dalam jumlah besar dan kadang ada
resiko kehilangan data karena ketidakcocokan.
Data XML disimpan dalam format teks, sehingga lebih mudah dikembangkan
lebih besar atau ditingkatkan kepada sistem operasi, aplikasi, dan
browser baru tanpa kehilangan data.
9. XML membuat data lebih mudah dibaca oleh berbagai teknologi
Dengan XML, data dapat lebih mudah dibaca oleh berbagai "reading
machine" (komputer, komputer genggam, voice machine, news feed, dll)
10. XML digunakan untuk membuat bahasa internet baru
Banyak bahasa internt baru dikembangkan oleh XML, seperti:
a.) XHTML
b.) WSDL untuk mendeskripsikan web service yang tersedia
c.) WAP dan WML sebagai markup language untuk perangkat genggam
d.) Bahasa RSS untuk news feed
e.) RDF dan OWL untuk mendeskripsikan sumber daya dan ontology(deksripsi
mengenai informasi web dan keterhubungan antara informasi web)
f.) SMIL untuk mendekripsikan multimedia untuk web
Kenapa Harus Menggunakan XML?
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 memudahkan pengembang aplikasi yang
menggunakan XML untuk mendebug programnya. XML lebih fleksible dibanding HTML
dalam hal kemampuannya menyimpan informasi dan data. Pada XML kita bisa menyimpan
data baik dalam atribut maupun sebagai isi elemen yang diletakkan diantara tag
pembuka dan tag penutup.
Kelebihan lain yang dimiliki
XML adalah bahwa informasi bisa di pertukarkan dari satu system ke system lain
yang berbeda platform. Misalnya dari Windows ke Unix, atau dari PC ke
Machintosh bahkan dari internet ke handphone dengan teknologi WAP.
Bagian-Bagian dari Dokumen XML
Sebuah
dokumen XML terdiri dari bagian bagian yang disebut dengan node. Node-node itu
adalah:
- Root node yaitu node yang melingkupi
keseluruhan dokumen. Dalam satu dokumen XML hanya ada satu root node.
Node-node yang lainnya berada di dalam root node.
- Element node yaitu bagian dari dokumen XML
yang ditandai dengan tag pembuka dan tag penutup, atau bisa juga sebuah
tag tunggal elemen kosong seperti <anggota nama=”budi”/> . Root node
biasa juga disebut root element
- Attribute note termasuk nama dan nilai atribut
ditulis pada tag awal sebuah elemen atau pada tag tunggal.
- Text node, adalah text yang merupakan isi dari
sebuah elemen, ditulis diantara tag pembuka dan tag penutup
- Comment node adalah baris yang tidak
dieksekusi oleh parser
- Processing Instruction node, adalah perintah
pengolahan dalam dokumen XML. Node ini ditandai awali dengan karakter
<? Dan diakhiri dengan ?>. Tapi perlu diingat bahwa header standard
XML <?xml version=”1.0” encoding=”iso-8859-1”?> bukanlah processing
instruction node. Header standard bukanlah bagian dari hirarki pohon
dokumen XML.
- NameSpace Node, node ini mewakili deklarasi
namespace
Keunggulan dan keuntungan dari XML:
-
Simple, karena XML tidak serumit HTML, strukturnya jelas, dan
sederhana.
-
Intelligence, karena XML mampu menangani berbagai
komplesitas markup bertingkat-tingkat.
-
Portable, karena memisahkan data dan presentasi
-
Fast, pencarian data cepat
-
Extensible, dapat ditukar/digabung dengan dokumen XML lain.
-
Linking, XML dapat melakukan linking yang lebih baik daripada
HTML, bahkan dapat melink satu atau lebih
poin dari dalam
maupun luar data.
-
Maintenance, XML mudah untuk diatur dan dipelihara, karena
hanya berupa data, stylesheet dan link
terpisah dari XML.
Kelemahan dari XML:
Tidak dapat dipungkiri bahwa XML sangat fleksibel untuk pertukaran data melalui internet, namun terdapat beberapa kelemahan yang ditemukan pada XML,
diantaranya adalah :
1. XML memisahkan antara bagian data (content) dengan bagaimana data ditampilkan secara terstruktur, hal ini menyebabkan data dapat dimanipulasi oleh siapapun yang membacanya.
2. XML berbasis teks, mudah dibaca oleh manusia (human-readable), maka dokumen XML mudah untuk di-debug dan dilewatkan melalui firewall.
Daftar Pustaka: