Introduction to XML

40
Introduction to XML

description

Introduction to XML. Pengertian XML. XML adalah singkatan dari eXtensible Markup Language XML adalah sejenis bahasa markup, yakni bahasa yang berisikan kode-kode berupa tanda tertentu (biasanya ‘’) dengan aturan tertentu untuk tujuan memformat dokumen. Evolusi dari XML. - PowerPoint PPT Presentation

Transcript of Introduction to XML

Page 1: Introduction to XML

Introduction to XML

Page 2: Introduction to XML

Pengertian XML

• XML adalah singkatan dari eXtensible Markup Language

• XML adalah sejenis bahasa markup, yakni bahasa yang berisikan kode-kode berupa tanda tertentu (biasanya ‘<’ dan ‘>’) dengan aturan tertentu untuk tujuan memformat dokumen

Page 3: Introduction to XML

Evolusi dari XML

• XML dikembangkan mulai tahun 1996 dan mendapatkan pengakuan dari W3C pada Februari 1998.

• Teknologi yang digunakan XML merupakan turunan dari SGML

• XML mengadopsi bagian paling penting pada SGML dan dengan berpedoman pada pengembangan HTML menghasilkan markup language yang tidak kalah hebatnya dengan SGML

Page 4: Introduction to XML

Bagaimana XML Bekerja

• XML dapat mendefinisikan kumpulan tag yang tak terbatas sesuai dengan keinginan

• XML dapat bekerja dengan cros-platform

Page 5: Introduction to XML

Dokumen dan File XML

<time-o-gram pri="important"> <to>Sarah</to> <subject>Reminder</subject> <message>Don't forget to recharge K-9 <emphasis>twice a day</emphasis>. I have a date with some <villain>Daleks</villain>... </message> <from>The Doctor</from></time-o-gram>

Page 6: Introduction to XML

Dokumen dan File XML

• Dokumen XML ditulis menggunakan elemen yang ditandai dengan tag pembuka, tag penutup dan atribut elemen.

• XML mengijinkan kita untuk menamai atau mendefinisikan tag sesuai dengan keinginan kita, tidak seperti HTML, yang dibatasi penggunaan nama tag.

Page 7: Introduction to XML

Mengapa menggunakan XML?

XML memisahkan data dari HTML.• Memudahkan dalam mendisplay data yang

dinamis karena tidak perlu mengedit HTML setiap kali data berubah

• Dengan XML, data disimpan pada file yang berbeda sehingga HTML hanya untuk layout dan desain

• Dengan sedikit JavaScript, kita bisa membaca file XML dan mengupdate isi data di HTML

Page 8: Introduction to XML

Mengapa menggunakan XML? (Cont)

XML memudahkan pembagian data.• Komputer dan database bisa saja lintas

platform dengan format yang berbeda-beda

• XML disimpan dalam bentuk plain-text, yang tidak bergantung pada software dan hardware

• Hal ini mempermudah membagi data pada aplikasi yang berbeda

Page 9: Introduction to XML

Mengapa menggunakan XML? (Cont)

Dengan alasan yang sama:• XML memudahkan pengiriman data• XML memudahkan pergantian

platform• XML menjadikan data kita more

available

Page 10: Introduction to XML

Mengapa menggunakan XML? (Cont)

XML digunakan untuk membuat bahasa internet baru:

• XHTML, versi terbaru dari HTML• WSDL, digunakan dalam web service• WAP dan WML, markup language untuk

perangkat wireless• RSS, bahasa untuk news feeds• RDF, mendeskripsikan web resources• SMIL, mendeskripsikan konten multimedia

untuk web

Page 11: Introduction to XML

Perbedaan XML dan HTMLXML:• XML didesain untuk

mengirim dan menyimpan data

• Fokus pada “what data is”

• Tag pada XML dapat didefinisikan sendiri

• Tag pada XML mendeskripsikan konten dari data

HTML:• HTML didesain untuk

menampilkan data• Fokus pada “how data

looks”• Tag pada HTML telah

didefinisikan sebelumnya• Tag pada HTML

mendeskripsikan cara suatu data ditampilkan

Page 12: Introduction to XML

Aturan XML (1)• Dokumen XML digunakan untuk mendeskripsikan sendiri

dokumen tersebut dengan sintaks yang sederhana• Contoh:

<?xml version="1.0" encoding="ISO-8859-1"?><note><to>Tove</to><from>Jani</from><heading>Reminder</heading><body>Don't forget me this weekend!</body></note>

Page 13: Introduction to XML

Aturan XML (1)• Bagian pertama adalah tag <xml> yang

mendefinisikan versi xml dan encoding yang digunakan

• Bagian <note> adalah elemen root dalam dokumen.

• Bagian <to>, <from>, <heading>, dan <body> mendeskripsikan child elements dari elemen <note>

Page 14: Introduction to XML

Aturan XML (2)• Semua tag xml harus memiliki tag penutup

<p>paragraph pertama</p><p>paragraph kedua</p>

• Tag tunggal hanya diperbolehkan untuk elemen kosong. Contoh penulisannya sebagai berikut:<anggota nama=”erick”/>

Page 15: Introduction to XML

Aturan XML (3)• Biasakanlah setiap membuat dokumen XML

diawali dengan heading standard XML. Formatnya adalah sebagai berikut:<?xml version=”1.0” encoding=”iso-8859-1”?>

• Heading berfungsi untuk: mendefinisikan versi, definisi entitas, tipe encoding, dan DOCTYPE

• Wajib menyertakan nomor versi

Page 16: Introduction to XML

Aturan XML (4)• Tag XML adalah case sensitive (membedakan

antara huruf besar dan kecil)• Contoh berikut adalah contoh yang salah:

<buku><judul>Program Keahlian 1</Judul><pengarang>Erick Kurnia</pengarang>

<BUKU>

Page 17: Introduction to XML

Aturan XML (5)• Semua tag XML harus tersarang dengan benar

dan tidak terbalik-balik.• Contoh:

<b><i>Text is bold and italic-wrong</b></i><b><i>Text is bold and italic-right</i></b>

Page 18: Introduction to XML

Aturan XML (6)• Semua dokumen XML harus memiliki elemen root.• Elemen root adalah elemen teratas yang harus memiliki tag

penutup• Contoh:

<orangtua><anak><namaanak>.....</namaanak></anak></orangtua>

• Dalam contoh di atas elemen <orangtua> adalah elemen root.

Page 19: Introduction to XML

Aturan XML (7)• Nilai atribut harus diapit dalam tanda petik

ganda (quote)• Contoh:

<?xml version="1.0" encoding="ISO-8859-1"?><note date="12/11/2002">

<to>Tove</to></note>

Page 20: Introduction to XML

Aturan XML (8)• Dalam XML karakter white space (spasi) dibaca

sebagai karakter spasi• Dalam HTML lebih dari satu karakter white

space dihilangkan sehingga“Hello <spasi> <spasi> my name is Tove” akan menjadi “Hello my name is Tove”

• Namun dalam XML karakter white space tetap dibaca sebagai karakter white space

Page 21: Introduction to XML

Aturan XML (9)• Komentar adalah kalimat/baris yang tidak

dieksekusi oleh compiler, browser atau parser.• Penulisan komentar di XML menggunakan

tanda<!-- komentar -->

Page 22: Introduction to XML

Aturan XML (10)• Dalam XML, karakter ‘<’ dan ‘>’ adalah illegal.• Contoh di bawah ini akan menghasilkan error

kalau dieksekusi oleh browser<syarat>jika jumlah < 1000 maka</syarat>

• Agar benar, maka harus dilakukan hal sebagai berikut:<syarat>jika jumlah &lt; 1000 maka</syarat>

• Penulisan di atas disebut Entity References

Page 23: Introduction to XML

Entity References

• Entity komponen dari content.• Penulisan Entity dengan cara diawali

dengan ”&” dan diakhiri dengan “;”• Misalnya kita ingin menulis

“<form>”, agar <form> itu tidak dikenali sebagai tag XML, maka penulisannya menjadi “&lt;form&gt;”

Page 24: Introduction to XML

Pohon XML

• Dokumen XML membentuk struktur pohon, dimulai dari akar, cabang, sampai daun

• Menggunakan syntax yang sederhana dan self-describing

Page 25: Introduction to XML

Pohon XML

<?xml version="1.0"?><note> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body></note>

Page 26: Introduction to XML

Pohon XML

• Baris pertama merupakan deklarasi XML. Menjelaskan bahwa dokumen XML tersebut versi (1.0).

• Baris kedua mendeskripsikan root element dari dokumen.

• 4 baris setelahnya merupakan child element dari root (to, from, heading, dan body).

• Baris terakhir merupakan penutup root element.

Page 27: Introduction to XML

Pohon XML

Struktur pohon dokumen XML:• XML harus mengandung satu root

element, yang menjadi orang tua dari elemen-elemen lainnya

• Semua elemen dapat memiliki sub elemen (child element)

• Semua elemen dapat mempunyai isi dan atribut (seperti pada HTML)

Page 28: Introduction to XML

Pohon XML

<root atribut=“…”><child> <subchild>isi …</subchild></child>

</root>

Page 29: Introduction to XML

Pohon XML

<bookstore><book category="COOKING">

<title lang="en">Everyday Italian</title> <author>Giada De Laurentiis</author> <year>2005</year> <price>30.00</price> </book>

</bookstore>

Page 30: Introduction to XML

Pohon XML

Page 31: Introduction to XML

Node 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=”erick” />

Page 32: Introduction to XML

Node XML (Cont) Attribute node: berupa elemen tambahan dari elemen utama 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 dengan karakter <? Dan diakhiri dengan ?>. Tapi perlu diingat bahwa header standard XML <?xml version=”1.0” encoding=”iso-8859-1”?>bukanlah processing instruction node

NameSpace Node: node ini mewakili deklarasi namespace

Page 33: Introduction to XML

• Sebuah elemen XML adalah semua kata dari tag pembuka elemen sampai tag penutup elemen termasuk tag itu sendiri

• Sebuah elemen dapat memiliki :Element content: mengandung elemen lainMixed content: berisi teks dan elemen lainSimple content: mengandung hanya teks sajaEmpty content: tidak mengandung teks atau

elemen apapun

Elemen XML

Page 34: Introduction to XML

Atribut XML• Elemen XML dapat memiliki atribut seperti pada

tag HTML• Atribut biasanya menyediakan informasi ekstra

dari elemen• Dalam contoh di bawah ini file type tidak relevan

dengan data, tetapi penting untuk software yang ingin memanipulasi elemen tersebut. Contoh:<file type="gif">computer.gif</file>

Page 35: Introduction to XML

Atribut XML (Cont)• Beberapa hal yang harus diperhatikan dalam penggunaan atribut: Atribut tidak dapat mengandung banyak nilai tetapi elemen child

bisa Atribut tidak mudah diubah untuk pengembangan masa yang

akan datang Atribut tidak dapat mendeskripsikan strukturnya tetapi elemen

child bisa Atribut lebih sulit di-parsing oleh program penerjemah XML Nilai atribut tidak mudah untuk ditangani oleh DTD yang

digunakan untuk mendefinisikan validasi dan legalitas elemen dokumen XML

Page 36: Introduction to XML

CData Selection• Semua teks dalam dokumen XML, yang disebut PCDATA (Parsed Character

Data), akan diparse oleh XML Parser• Hanya teks yang berada dalam bagian CDATA (Character Data) saja yang

akan dilewati oleh XML Parser• CDATA tidak boleh berisi string "]]>", CDATA tidak boleh bersarang, dan tidak

boleh ada spasi atau enter didalam string "]]>“• Dengan menggunakan CData karakter dipanggil secara alami, tanpa harus

menggunakan entity.• Penggunaan CData harus didefinisikan di awal dokumen

<pages> <![CDATA[ <comment>This is a Comment</comment> ]]></pages>

Page 37: Introduction to XML

Namespace XML• Tag-tag pada XML tidak didefinisikan secara

baku tetapi kita buat sendiri sesuai keinginan kita

• Karena itu akan sering terjadi konflik pada dua dokumen yang menggunakan nama tag yang sama tetapi mewakili dua hal yang berbeda

Page 38: Introduction to XML

Namespace XML (Cont)• Bila ada dokumen yang mendiskripsikan tentang kebutuhan material

pembuatan gardu jaga dari “bambu”:<bambu><jenis>Jawa</jenis><panjang>2</panjang></bambu>

• Sedangkan jika terdapat dokumen yang mendiskripsikan “bambu” sebagai merk produk:<bambu><jumlah>246</jumlah><hargasatuan>200</hargasatuan></bambu>

Page 39: Introduction to XML

Namespace XML (Cont)• Untuk mengatasi hal ini, Namespace menyediakan metode dengan

menggunakan prefiks yang berbeda untuk dokumen pertama:<a:bambu><a:jenis>Jawa</a:jenis><a:panjang>2</a:panjang></a:bambu>

• Sedangkan untuk dokumen kedua menjadi seperti berikut:<b:bambu><b:jumlah>246</b:jumlah><b:hargasatuan>200</b:hargasatuan><b:/bambu>

Page 40: Introduction to XML

Namespace XML (Cont)• Aturan penggunaan namespace adalah sebagai berikut:

<a:bambu xmlns:a=”http:/www.somewhere.com/gardu”>• a adalah prefix yang dipakai, sedangkan atribut namespace di

tambahkan pada tag.• Syntax untuk atribut namespace adalah sebagai berikut:

xmlns:a=”namespace”• Pada contoh di atas namespace-nya menggunakan• alamat internet• W3C namespace spesification menyatakan bahwa namespace

haruslah merupakan Uniform Resource Identifier (URI)