480 likes | 743 Views
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. Evolusi dari XML.
E N D
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
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
Bagaimana XML Bekerja • XML dapat mendefinisikan kumpulan tag yang tak terbatas sesuai dengan keinginan • XML dapat bekerja dengan cros-platform
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>
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.
Mengapa menggunakan XML? XML memisahkan data dari HTML. • Memudahkandalammendisplay data yang dinamiskarenatidakperlumengedit HTML setiap kali data berubah • Dengan XML, data disimpanpada file yang berbedasehingga HTML hanyauntuk layout dandesain • Dengansedikit JavaScript, kitabisamembaca file XML danmengupdateisi data di HTML
Mengapa menggunakan XML? (Cont) XML memudahkanpembagian data. • Komputerdan database bisasajalintas platform dengan format yang berbeda-beda • XML disimpandalambentuk plain-text, yang tidakbergantungpada software dan hardware • Hal inimempermudahmembagi data padaaplikasi yang berbeda
Mengapa menggunakan XML? (Cont) Denganalasan yang sama: • XML memudahkanpengiriman data • XML memudahkanpergantian platform • XML menjadikan data kita more available
Mengapa menggunakan XML? (Cont) XML digunakanuntukmembuatbahasa internet baru: • XHTML, versiterbarudari HTML • WSDL, digunakandalamweb service • WAPdanWML, markup languageuntukperangkat wireless • RSS, bahasauntuknews feeds • RDF, mendeskripsikanweb resources • SMIL, mendeskripsikankonten multimedia untuk web
Perbedaan XML dan HTML XML: • XML didesainuntukmengirimdanmenyimpan data • Fokuspada “what data is” • Tag pada XML dapat didefinisikan sendiri • Tag pada XML mendeskripsikan konten dari data HTML: • HTML didesainuntukmenampilkan data • Fokuspada “how data looks” • Tag pada HTML telah didefinisikan sebelumnya • Tag pada HTML mendeskripsikan cara suatu data ditampilkan
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>
Aturan XML (1) • Bagian pertama adalah tag <xml> yang mendefinisikan versi xml dan encodingyang digunakan • Bagian <note> adalah elemen root dalam dokumen. • Bagian<to>, <from>, <heading>, dan <body> mendeskripsikan child elements dari elemen <note>
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”/>
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
Aturan XML (4) • Tag XML adalahcase sensitive (membedakanantara huruf besar dan kecil) • Contohberikutadalahcontoh yang salah: <buku> <judul>Program Keahlian 1</Judul> <pengarang>Erick Kurnia</pengarang> <BUKU>
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>
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.
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>
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” akanmenjadi“Hello my name is Tove” • Namun dalam XML karakter white space tetap dibaca sebagai karakter white space
Aturan XML (9) • Komentar adalah kalimat/baris yang tidak dieksekusi oleh compiler, browser atau parser. • Penulisan komentar di XML menggunakan tanda <!-- komentar -->
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 < 1000 maka</syarat> • Penulisan di atas disebut Entity References
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 “<form>”
Pohon XML • Dokumen XML membentukstrukturpohon, dimulaidariakar, cabang, sampaidaun • Menggunakan syntax yang sederhanadanself-describing
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>
Pohon XML • Barispertamamerupakandeklarasi XML. Menjelaskanbahwadokumen XML tersebutversi (1.0). • Bariskeduamendeskripsikanroot elementdaridokumen. • 4 barissetelahnyamerupakanchild elementdari root (to, from, heading, dan body). • Baristerakhirmerupakanpenutup root element.
Pohon XML Strukturpohondokumen XML: • XML harusmengandungsatu root element, yang menjadiorangtuadarielemen-elemenlainnya • Semuaelemendapatmemiliki sub elemen (child element) • Semuaelemendapatmempunyaiisidanatribut (sepertipada HTML)
Pohon XML <rootatribut=“…”> <child><subchild>isi …</subchild></child> </root>
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>
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” />
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
Elemen 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 lain • Mixed content: berisi teks dan elemen lain • Simple content: mengandung hanya teks saja • Empty content: tidak mengandung teks atau elemen apapun
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>
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 programpenerjemah XML • Nilai atribut tidak mudah untuk ditangani oleh DTDyang digunakan untuk mendefinisikan validasi dan legalitas elemen dokumen 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>
Namespace XML • Tag-tag pada XML tidak didefinisikan secarabaku tetapi kita buat sendiri sesuai keinginan kita • Karena itu akan sering terjadi konflik pada duadokumen yang menggunakan nama tag yang sama tetapi mewakili dua hal yang berbeda
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>
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>
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 namespacedi tambahkan pada tag. • Syntax untuk atribut namespace adalah sebagai berikut: xmlns:a=”namespace” • Pada contoh diatas namespace-nya menggunakan • alamat internet • W3C namespace spesificationmenyatakanbahwanamespaceharuslah merupakan Uniform Resource Identifier (URI)