Senin, 11 Januari 2010

Lets Study Backpropagation Neural Network

Algoritma pelatihan Backpropagation Neural Network (BPNN) pertama kali dirumuskan oleh Werbos
dan dipopulerkan oleh Rumelhart & Mc.Clelland. Backpropagation neural network merupakan tipe
jaringan saraf tiruan yang menggunakan metode pembelajaran terbimbing (supervised learning). Pada
supervised learning terdapat pasangan data input dan output yang dipakai untuk melatih JST hingga
diperoleh bobot penimbang (weight) yang diinginkan. Penimbang itu sendiri adalah sambungan antar
lapis dalam JST. Algoritma ini memiliki proses pelatihan yang didasarkan pada interkoneksi yang
sederhana, yaitu apabila keluaran memberikan hasil yang salah, maka penimbang dikoreksi agar galat
dapat diperkecil dan tanggapan JST selanjutnya diharapkan dapat mendekati nilai yang benar. BPNN juga
berkemampuan juga berkemampuan untuk memperbaiki penimbang pada lapis tersembunyi (hidden
layer).

Secara garis besar BPNN terdiri atas tiga lapis (layer) yaitu lapis masukan (input layer) xi, lapis
tersembunyi (hidden layer) yj, dan lapis keluaran (output layer) zk. Lapis masukan dan lapis tersembunyi
dihubungkan dengan penimbang wij dan antara lapis tersembunyi dan lapis keluaran dihubungkan oleh
penimbang w’jk. Pada pelatihan BPNN, ketika JST diberi pola masukan sebagai pola pelatihan maka pola
tersebut akan menuju ke unit pada lapis tersembunyi untuk diterusan pada unit yang berada pada lapis
keluaran. Keluaran sementara pada lapis tersembunyi uj akan diteruskan pada lapis keluaran dan lapis
keluaran akan memberikan tanggapan yang disebut sebagai keluaran sementara u’k. Ketika u’k . ok
dimana ok adalah keluaran yang diharapkan, maka selisih (error) keluaran sementara u’k akan disebarkan
mundur (backward) pada lapis tersembunyi dan diteruskan ke unit pada lapis masukan. Oleh karena itu
proses tersebut disebut propagasi balik (backpropagation) dimana tahap pelatihan dilakukan dengan
merubah penimbang yang menghubungkan unit dalam lapis JST ketika diberi umpan maju dan umpan
balik. Untuk mempercepat proses pelatihan digunakan parameter laju pelatihan (learning rate) yang
nilainya berada pada kisaran 0-1. Selain parameter laju pelatihan, untuk mempercepat proses pelatihan
dapat digunakan parameter tambahan berupa momentum yang nilainya dijaga antara 0.5-0.9. Ketika
proses pelatihan selesai dan JST dapat digunakan untuk menyelesaikan masalah, tahap tersebut disebut
sebagai tahap penggunaan yang disebut mapping atau pemetaan.


Gambar lapis dan aliran sinyal dalam algoritma BPNN

Algoritma pelatihan BPNN terdiri dari dua tahap, yaitu feed forward propagation dan feed backward
propagation. Secara umum langkah dalam pelatihan JST menggunakan BPNN yang dilengkapi bias dan
momentum adalah sebagai berikut :

1. Menentukan jumlah input (pola masukan), hidden layer, dan output (target pelatihan).
prast_yuu@yahoo.co.id, prastyuu@gmail.com, prastyuu@elect-eng.its.ac.id


2. Memberi nilai awal secara random bagi seluruh weight antara input-hidden layer dan hidden
layer-output.
3. Melakukan langkah 3-11 secara berulang hingga diperoleh nilai error minimal yang
memungkinkan bagi JST untuk belajar dengan baik.
{FEED FORWARD PROPAGATION}
4. Tiap unit input (Xi) menerima sinyal input dan sinyal tersebut dikirimkan pada seluruh unit
hidden layer.
5. Tiap unit hidden layer (Zin_j) ditambah dengan input (Xi) yang dikali dengan weight (Vij) dan
dijumlah dengan bias bagian input;
{Unit Input*Weight(Input->Hidden)}
Zin_j[j]:=Zin_j[j]+Xi[i]*Vij[i,j];
{Ditambah Bias}
Zin_j[j]:=Zin_j[j]+Vij[0][j];
{Dihitung dalam Fungsi Pengaktif}
Zj[j]:=f(Zin_j[j]);
Fungsi pengaktif neuron yang digunakan pada seluruh bagian pelatihan harus sama. Fungsi
pengaktif neuron yang umum digunakan terdapat beberapa macam, yang paling umum adalah
fungsi sigmoid baik yang bipolar (-0.5 - +0.5) maupun unipolar (0 – 1) seperti berikut :

{sigmoid bipolar}
fbipolar:=(2/(1+exp(-1* Zin_j[j])))-1;
{sigmoid unipolar}
funipolar:=1/(1+exp(-Zin_j[j]));


6. Tiap unit output (Yink) ditambah dengan nilai keluaran hidden layer (Zj) yang dikali weight (Wjk)
dan dijumlah dengan bias bagian hidden layer. Untuk mendapatkan keluaran JST, maka Yink
dihitung dalam fungsi pengaktif menjadi Yk.
{Unit Keluaran*Weight(Hidden->Keluaran)}
Yink[k]:=Yink[k]+Zj[j]*Wjk[j,k];
{Ditambah Bias}
Yink[k]:=Yink[k]+Wjk[0,k];
{Dihitung dalam Fungsi Pengaktif}
Yk[k]:=f(Yink[k]);


{FEED BACKWARD PROPAGATION}

7. Tiap output dibandingkan dengan target yang diinginkan, untuk memperoleh error global
digunakan metode Sum Squared Error (SSE).
Error:=Error+(((O_target[k]-Yk[k])*(O_target[k]-Yk[k]))*0.5);


8. Tiap unit output menerima pola target sesuai dengan pola masukan saat pelatihan dan dihitung
nilai error-nya dan diperbaiki nilai weight-nya.
{Perhitungan Error dalam turunan Fungsi Pengaktif}
delta_k[k]:=(O_target[k]-Yk[k])*f’(Yink[k]);
Perbaikan weight output-hidden layer dilakukan dengan memperhitungkan laju pelatihan dan

momentum, laju pelatihan dijaga pada nilai kecil antara 0-1 dan momentum pada nilai 0.5-0.9.
{Perbaikan weight antara hidden layer-output}
update_Wjk[j,k]:=eLaju*delta_k[k]*Zj[j]+(update_Wjk[j,k]*eMomentum);
{Perbaikan weight bias antara hidden layer-output}

prast_yuu@yahoo.co.id, prastyuu@gmail.com, prastyuu@elect-eng.its.ac.id


update_Wjk[0,k]:=eLaju*delta_k[k];

9. Tiap weight yang menghubungkan unit output dengan unit hidden layer dikali selisih error
(delta_k) dan dijumlahkan sebagai masukan unit berikutnya.
{Perhitungan Error*Bobot Keluaran}
delta_in_j[j]:=delta_in_j[j]+delta_k[k]*Wjk[j,k];
{Perhitungan Error dalam turunan Fungsi Pengaktif}
delta_j[j]:=delta_in_j[j]*f’(Zin_j[j]);


Perbaikan weight hidden layer-input dilakukan dengan memperhitungkan laju pelatihan dan

momentum, laju pelatihan dijaga pada nilai kecil antara 0-1 dan momentum pada nilai 0.5-0.9.
{Perbaikan weight antara masukan dan hidden layer}
update_Vij[i,j]:=eLaju*delta_j[j]*Xi[i]+(Vij[i,j]*eMomentum);
{ Perbaikan weight bias antara masukan}
update_Vij[0,j]:=eLaju*delta_j[j];

10. Tiap weight dan bias yang ada pada JST diperbaiki.
{Penambahan Nilai Perbaikan Bobot Hidden layer-Keluaran}
Wjk[j,k]:=Wjk[j,k]+update_Wjk[j,k];
{Penambahan Nilai Perbaikan Bobot Masukan-Hidden layer}
Vij[i,j]:=Vij[i,j]+update_Vij[i,j];
11. Uji kondisi pemberhentian pelatihan.
Pada kondisi dimana JST telah selesai dilatih, maka JST tersebut dapat diujicoba sebelum pada
akhirnya JST tersebut digunakan untuk menyelesaikan suatu masalah. Maka untuk menggunakan hasil
pelatihan tersebut digunakan weight yang telah diperoleh dari proses pelatihan untuk memperoleh hasil
target yang telah dilatihkan. Pada BPNN yang telah dibahas di atas, algoritma ujicoba JST yang dapat
digunakan adalah sebagai berikut :

1. Tiap unit input (Xi) menerima sinyal input dan sinyal tersebut dikirimkan pada seluruh unit
hidden layer.
2. Tiap unit hidden layer (Zin_j) ditambah dengan input (Xi) yang dikali dengan weight (Vij) yang
diperoleh dari proses pelatihan dan dijumlah dengan bias bagian input;
{Unit Input*Weight(Input->Hidden)}
Zin_j[j]:=Zin_j[j]+Xi[i]*Vij[i,j];
{Ditambah Bias}
Zin_j[j]:=Zin_j[j]+Vij[0][j];
{Dihitung dalam Fungsi Pengaktif}
Zj[j]:=f(Zin_j[j]);


Fungsi pengaktif neuron yang digunakan pada seluruh bagian ujicoba harus sama. Fungsi
pengaktif neuron yang umum digunakan terdapat beberapa macam, yang paling umum adalah
fungsi sigmoid baik yang bipolar (-0.5 - +0.5) maupun unipolar (0 – 1) seperti berikut :

{sigmoid bipolar}
fbipolar:=(2/(1+exp(-1* Zin_j[j])))-1;
{sigmoid unipolar}
funipolar:=1/(1+exp(-Zin_j[j]));


prast_yuu@yahoo.co.id, prastyuu@gmail.com, prastyuu@elect-eng.its.ac.id


3. Tiap unit output (Yink) ditambah dengan nilai keluaran hidden layer (Zj) yang dikali weight (Wjk)
yang diperoleh dari proses pelatihan dan dijumlah dengan bias bagian hidden layer. Untuk
mendapatkan keluaran JST, maka Yink dihitung dalam fungsi pengaktif menjadi Yk.
{Unit Keluaran*Weight(Hidden->Output)}
Yink[k]:=Yink[k]+Zj[j]*Wjk[j,k];
{Ditambah Bias}
Yink[k]:=Yink[k]+Wjk[0,k];
{Dihitung dalam Fungsi Pengaktif}
Yk[k]:=f(Yink[k]);


4. Untuk mengetahui keandalan JST yang digunakan, hasil target pelatihan dibandingkan dengan
keluaran yang diperoleh ketika dilakukan ujicoba.
Daftar Pustaka :

-Mauridhi Hery P; Agus Kurniawan, Supervised Neural Networks dan Aplikasinya, Graha Ilmu,
Yogyakarta, 2006.
-Saludin Muis, Teknik Jaringan Saraf Tiruan, Graha Ilmu, Yogyakarta, 2006.
-Jong Jek Siang, Jaringan Saraf Tiruan dan Pemrogramannya Menggunakan Matlab, Andi, Yogyakarta,
2005.

prast_yuu@yahoo.co.id, prastyuu@gmail.com, prastyuu@elect-eng.its.ac.id

MENGENAL JOOMLA!

Joomla Open Source atau lebih sering dikenal dengan Joomla!
merupakan salah satu Content Management System (CMS) yang bersifat
Open Source, ialah sebuah software gratis yang dapat digunakan untuk
membuat web yang paling sederhana hingga paling kompleks sekalipun,
seperti web portal. Disebut open source karena pengguna dapat
memodifikasi, menghapus, maupun menambah script yang disertakan
dalam software tersebut asal tetap mencantumkan hak cipta dan mentaati
peraturan yang telah disepakati bersama-sama.
Software open source berbeda dengan software gratis (free use) karena
software yang bersifat gratis tidak menyertakan file-file aslinya (script)
dari software tersebut sehingga pengguna tidak dapat mengetahui
bagaimana dan apa isi yang terkandung di dalamnya. Intinya, kode
(script) dibuka untuk pengguna agar dapat dimodifikasi sendiri sesuai
Keinginan. Joomla! adalah salah satu CMS yang memilliki komunitas besar di
seluruh dunia dengan didukung oleh para pengembang ketiga yang akan
terus mengembangkan program inti Joomla!. Untuk mengetahui lebih
lanjut tentang CMS, silakan kunjungi website resminya di
http://www.opensourcecms.com.
1.1 Sejarah
Munculnya Joomla! berawal dari “konflik internal” di dalam
kepengurusan pengembang inti Mambo Open Source atau lebih sering
dikenal dengan Mambo pada tahun 2005. Pihak pendiri (Founder)
Mambo ingin membentuk sebuah institusi yang bernama Mambo
Foundation. Gagasan tersebut ditentang keras oleh pengembang dari
pihak ketika (3rd Developer), alasannya karena jika pengembangan
Mambo dikendalikan oleh Mambo Foundation dikhawatirkan suatu saat
Mambo akan dikomersilkan. Padahal tujuan awal lahirnya Mambo adalah
bersifat open source, siapapun dapat memodifikasi dan menambahkan
script agar sistem bekerja lebih baik dan lebih aman (secure), meskipun
hanya bersifat gratis.
Sekitar bulan Agustus 2005, sebagian pengembang inti Mambo keluar
dari kepengurusan pengembang program inti Mambo. Perlu diketahui,
Mambo dapat bekerja lebih baik dan berkembang sangat cepat karena
didukung oleh para pengembang pihak ketiga yang telah membuat
beberapa aplikasi tambahan yang sebut Component, Module, Plugin
(Mambots), dan Template. Tanpa aplikasi tambahan tersebut, Mambo
hanya sebuah software biasa dan tidak memiliki keistimewaan.
Pembahasan tentang Component, Module, Plugins (Mambots), dan
Template akan dikupas pada bab lain dalam buku ini.
3
Perkembangan selanjutnya, para pengembang inti Mambo yang keluar
dari kepengurusan tersebut bergabung dan pada 16 September 2005
membuat sebuah CMS bernama Joomla Open Source. Rilis versi awal
Joomla yaitu versi 1.0.0 yang merupakan “cloning” dari Mambo versi
4.5.3. Disebut cloning karena memang semua sciptnya sama persis.
Mambo kemudian membentuk kepengurusan baru untuk
mengembangkan Mambo versi selanjutnya. Salah satu pengurus dalam
mengembangkan program inti Mambo berasal dari Indonesia yaitu Adi
Setiawan.
Nama Joomla! merupakan sebuah ejaan yang berkaitan dengan ilmu
fonetik dari kata Swahili “Juumla” yang memiliki arti bersama-sama atau
secara keseluruhan. Pemilihan nama tersebut atas prakarsa para team di
belakang layar atas kesuksesan Mambo yang secara bulat dengan
komitmen mereka untuk melindungi minat masyarakat (komunitas) dan
gagasan para pencipta sebelumnya.
Nama Joomla! dipilih atas dasar rekomendasi dari ribuan komunitas dan
bahkan telah melewati beberapa seleksi yang cukup ketat serta
peninjauan ulang sangat berat terhadap merek sesuai dan pemasaran
profesional yang merasa bahwa Joomla! merupakan pilihan paling baik
dan tepat. Joomla! lebih dari sekadar perangkat lunak, yaitu orang-orang.
Komunitas di belakang Joomla! meliput para pengembang, para
perancang, pengurus sistem, penerjemah, para penulis isi, dan yang
paling penting yaitu pengguna (end user).
Ketika buku ini ditulis, Joomla sudah merilis versi 1.5.8. Sedangkan
untuk Mambo, terus terang tidak mengikuti perkembangan lagi sehingga
tidak mengetahui sampai sejauh mana perkembangannya. Meskipun
Joomla menggunakan bahasa PHP, bukan berarti harus memahami
seluruhnya tentang bahasa PHP. Bagi mereka tidak memahami kode
HTML, ASP, CGI, maupun php tidak perlu takut untuk mempelajarinya
4
karena meskipun tidak tahu tentang kode-kode tersebut, namun masih
bisa membuat sebuah web dinamis secara cepat dengan beberapa fitur
yang sangat lengkap.
Untuk mengetahui lebih lanjut tentang Joomla!, dapat mengakses
langsung ke alamat website resminya di http://www.joomla.org.
1.2 Keunggulan Joomla!
Pada awal perkembangannya, Joomla! tidak diminati oleh masyarakat
luas. Alasanya klasik, yaitu dikarenakan Joomla! merupakan software
yang gratis sehingga dianggap tidak aman, banyak kelemahan, kurang
bergengsi, tidak impresif dan anggapan negatif lainnya.
Sikap apatis tersebut dipatahkan oleh para pengembang inti Joomla!
dengan dibuktikannya beberapa aplikasi tambahan yang sangat fleksibel
untuk disisipkan ke dalam sistem Joomla!. Pada akhirnya, masyarakat
dapat memanfaatkan Joomla! untuk berbagai keperluan terutama
membangun website secara cepat tanpa mengesampingkan segi
keindahan tampilan.
Mengapa orang memilih Joomla! ?
Aplikasi yang beragam dapat dibuat menggunakan Joomla! karena
memiliki beberapa kemampuan, diantaranya:
1. Dapat melakukan update halaman utama, halaman berita, halaman
artikel, maupun halaman arsip secara cepat.
2. Dapat menambahkan item menu baru pada main menu, other menu,
maupun top menu dengan mudah dan cepat.
3. Dapat mengatur weblink dengan cepat dan mudah.
4. Dapat mengatur banner (iklan).
5
5. Dapat mengatur FAQ (Frequently Asked Questions).
6. Dapat mengatur Newsflashes
7. Dapat membuat arsip dan menampilkannya kembali
8. Dapat mencetak, mengirim artikel lewat email, dan membaca artikel
dengan format PDF.
9. Dapat mengatur pengguna (user) dengan tingkat akses level yang
berbeda.
10. Dapat menambah komponen, modul, plugin, dan template dari pihak
ketiga (seperti: gallery, forum, calendar, video player, slide show,
antiflood, block IP, agenda, shoutbox, games, guestbook, shopping
cart, dan sebagainya).
11. Dapat menampilkan file multimedia tanpa harus membuat script
sendiri
Desain Joomla! berbeda dengan aplikasi sejenis seperti Microsoft
Frontpage maupun Macromedia Dreamweaver. Joomla! sangat fleksibel,
mudah digunakan, dan bentuknya sederhana, menjadikan software ini
sangat user friendly karena:
1. Mudah melakukan setup/instalasi.
2. Memiliki tampilan administrator yang sederhana untuk mengatur isi
situs (website).
3. Mudah digunakan untuk mengedit (menambah, mengubah, dan
menghapus) materi dan gambar.
4. Fleksibel untuk mengatur tampilan front end (halaman utama).
5. Fleksibel untuk menambah komponen, plugins, modul dan template
yang baru dari pihak ketiga.
6
Seperti telah diijelaskan sebelumnya bahwa Anda untuk menggunakan
Joomla! perlu lagi mengetahui konsep pembuatan web dengan HTML,
PHP, ASP, XML maupun DHTML. Pengguna cukup memasukan content
dan gambar yang ingin ditampilkan ke halaman situs. Bahkan webmaster
sekalipun tidak perlu memahami program FTP untuk melakukan upload
data, karena Joomla! sudah dapat menanganinya.
1.3 Manfaat Joomla!
Dalam waktu yang relatif singkat, Joomla sudah menjadi salah satu
software yang handal untuk berbagai keperluan sesuai dengan kebutuhan
penggunanya. Banyaknya aplikasi yang dapat disisipkan ke dalam sebuah
website, menjadikan Joomla! sebagai alternatif utama ketika membangun
sebuah website secara dinamis dan interaktif.
Joomla! dapat dimanfaatkan ketika memutuskan untuk mulai
mengembangkan dan mengelola website dinamis secara cepat dengan
tidak mengesampingkan keindahan tampilan dan fitur-fitur yang sangat
beragam. Berikut beberapa manfaat Joomla! sesuai dengan kebutuhan
dan tema website yang akan dibangun.
1. Website Jejaring Sosial (Social Network). Dengan memanfaatkan
ekstensi (Component, Plugin, dan Module), Joomla dapat
dimanfaatkan untuk membangun komunitas di internet dalam
berbagai bidang kompetensi seperti: keagamaan, hukum, kedokteran,
desain grafis, hacker, ekonomi, olah raga, dan bidang-bidang lainnya.

Pengantar JavaScript

Pengantar JavaScript
 JavaScript digunakan pada Web pages untuk meningkatkan design, validate forms, detect browsers, create cookies, GUI dsb
 JavaScript adalah bahasa scripting yang paling populer di internet dan bekerja pada banyak browser seperti Internet Explorer, Mozilla, Firefox, Netscape, Opera.
 Menggunakan sintaks seperti C++/Java
 Lihat di http://www.w3schools.com/js/
Apa itu JavaScript?
 JavaScript dirancang untuk menambah interaktif HTML pages
 JavaScript adalah bahasa scripting (bahasa scripting adalah sebuah lightweight programming language)
 JavaScript terdiri dari baris-baris code executable computer
 JavaScript biasanya embedded secara langsung pada HTML pages
 JavaScript adalah interpreted language (artinya bahwa scripts dijalankan tanpa di kompile terlebih dahulu)
 Setiap orang dpt menggunakan JavaScript tanpa harus membeli
Apakah Java dan JavaScript sama ?
 Java dan JavaScript adalah dua bahasa yang berbeda baik dari sisi konsep maupun dari sisi desain

 Java (dikembangkan oleh Sun Microsystems) adalah sebuah bahasa pemrograman yang powerful & sangat kompleks – sama dengan C & C++.
Apa yang dapat dilakukan JavaScript ?
 JavaScript dapat bereaksi terhadap events - JavaScript dapat di-set untuk menjalankan saat terjadi sesuatu, seperti sebuah page telah selesai dipanggil atau saat seorang user meng-klik pada HTML element

 JavaScript dapat membaca dan menulis HTML elements - JavaScript dapat membaca dan mengubah isi dari HTML element

 JavaScript dapat digunakan untuk mem-validasi data - JavaScript dapat digunakan untuk mem-validasi form data sebelum di-submitted ke server, hal ini akan mengamankan server dari pemrosesan extra

 JavaScript dapat digunakan untuk mendeteksi browser pengunjung - JavaScript dapat digunakan untuk mendeteksi browser pengunjung dan – memanggil page lain yang secara specifik didesain untuk browser tersebut

 JavaScript dapat digunakan untuk membuat cookies - JavaScript dapat digunakan untuk menyimpan dan memanggil informasi di komputer pengunjung
Pemrograman Client-Side
 HTML cocok untuk mengembangkan static pages
 Dapat digunakan membuat text/image layout, presentation, links, …
 Web page tampak sama setiap kali diakses
 Untuk mengembangkan interactive/reactive pages, harus diintegrasikan dengan programming
• Pemrograman client-side
 Programs ditulis dalam bahasa pemrograman yang terpisah
contoh : JavaScript, JScript, VBScript
 Programs diembedded pada HTML Web page, untuk mengidentifikasi komponen program
Contoh :
 Untuk menjalankan program guna menampilkan page digunakan browser, yang mengintegrasikan dynamic output dengan static content dari HTML
Scripts vs. Programs
 Bahasa scripting adalah simple, termasuk bahasa pemrograman interpreted
scripts di-embedded sebagai plain text, interpreted by application
 simpler execution model : tidak membutuhkan compiler / development environment
 saves bandwidth : source code di-download, tidak mengcompile executable
 platform-independence : kode di terjemahkan oleh banyak script-enabled browser
 Tetapi : lebih lambat daripada compiled code, tidak powerful/full-featured
JavaScript: adalah Web scripting language pertama, yang dikembangkan oleh Netscape pada tahun 1995. Mirip dengan Java/C++, tetapi lebih sederhana dan lebih fleksibel (loose typing, dynamic variables, simple objects)

JScript: adalah JavaScript versi Microsoft, diperkenalkan tahun 1996 core language yang sama, tetapi beberapa browser-specific seperti, IE & Netscape umumnya dapat menangani JavaScript & JScript

VBScript: adalah client-side scripting versi Microsoft Visual Basic
Common Scripting Tasks
 Menambahkan dynamic features pada Web pages
 validation of form data
 image rollovers
 time-sensitive or random page elements
 handling cookies
 Mendefinisikan programs dengan Web interfaces
 Menggunakan buttons, text boxes, clickable images, prompts, frames
• Keterbatasan dari client-side scripting
 Karena script code di-embedded dalam page, maka script dapat dilihat
 Untuk alasan keamanan, apa yang dapat dilakukan oleh script dibatasi
Contoh : tidak dapat mengakses hard drive client
 Karena dirancang untuk berbagai platform, maka script tidak berisi perintah khusus untuk setiap platform
 Script languages tidak full-featured
Contoh : Objek JavaScript tidak cocok untuk pengembangan proyek yg besar

PENGANTAR XML

APA ITU DOKUMEN XML
 Markup language yang mempuanyai format untuk mendeskripsikan data terstruktur yang merupakan bagian dari SGML ( standart general markup language)
 Perbedaan html dan XML
 HTML digunakan untuk mengatur tampilan informasi
 XML menciptakan dan memproses informasi
SINTAXS XML
 Semua elemen XML harus memiliki clos- ing tag.
 tag adalah case sensitive.
 Semua tag XML bersarang harus ditulis dengan benar.
 Semua elemen harus memiliki elemen root.
 Penggunaan atribut harus selalu dikutip.
 White space akan diperhatikan di XML. Berbeda dengan HTML, white space pada XML akan tetap diperhatikan.
 Untuk komentar, sama seperti HTML, tuliskan dalam .
ELEMEN XML
 elemen dapat mengandung element con- tent
 elemen dapat mengandung simple con- tent atau text content
 Elemen dapat mengandung mixed con- tent apabila menggabungkan element content dan simple content.
 Elemen dapat memiliki empty content apabila tidak memiliki nilai informasi apapun secara eksplisit

PENULISAN NAMA ELEMENT
 nama elemen dapat terdiri dari huruf,
 bilangan dan karakter lainnya.
 Nama elemen tidak boleh diawali dengan bilangan ataupun tanda baca.
 Nama tidak boleh diawali dengan XML
 (dan variasinya seperti xml, Xml...)
 nama tidak boleh berisi spasi.
STRUKTUR HTML


XML WELL-FORMAT
 Dokumen xml yang menuruti aturan yang berlaku
 Setiap tag pembuka ada tag penutup
 Tidak ada elemen yang overlapping
 Hanya memiliki satu utama
 Atribut harus ada tanda petik
 Adanya aturan case sensitif

MENAMPILKAN DOKUMEN XML
 Pengaitan stylesheet
 Style sheet di kaitkan kedalam dokumen XML, ex XSLT
 Pengikatan data
 Mengaitkan dokumen XML pada HTML dan mengikat elemen standar dalam halaman HTML
 Scripting
 Mengaitkan XML dan HTML dan mengakses serta menampilkan elemen XML dengan code scripting
 Pemograman
 Menampilkan XML sebagai Document Object Model(DOM) dan SAX, ex: visual basic, java, c++