pemrograman berbasis web - moeslimar.files.wordpress.com fileapa itu xml ? • dirancang untuk...

32
Pemrograman Berbasis Web Pertemuan 5 – XML & DTD Program Diploma IPB - Aditya Wicaksono, S.Komp 1

Upload: truongbao

Post on 07-Aug-2019

264 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

Pemrograman Berbasis WebPertemuan 5 – XML & DTD

Program Diploma IPB - Aditya Wicaksono, S.Komp 1

Page 2: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

Overview • XML

• DTD

Program Diploma IPB - Aditya Wicaksono, S.Komp 2

Page 3: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

Apa itu XML ?

• eXtensible Markup Language

• Merupakan markup language seperti halnya HTML

• Dirancang untuk mengirim dan menyimpan data, bukan untukmenampilkan data

• XML tidak standar, harus mendefinisikan tag sendiri

Program Diploma IPB - Aditya Wicaksono, S.Komp 3

Page 4: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

Apa itu XML ?

• Dirancang untuk menjadi self-descriptive

• XML menjadi rekomendasi W3C (pada tanggal 10 februari 1998)

• XML tidak berbuat apapun

• XML diciptakan untuk struktur, penyimpanan, dan pengiriman informasi

Program Diploma IPB - Aditya Wicaksono, S.Komp 4

Page 5: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

Apa itu XML ?

• XML tidak menggantikan HTML

• XML merupakan pelengkap bagi HTML

• XML memisahkan data dari HTML

• XML menyederhanakan dalam berbagi data

Program Diploma IPB - Aditya Wicaksono, S.Komp 5

Page 6: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

Apa itu XML ?

• XML digunakan untuk menciptakan bahasa internet baru, contoh :

• XHTML

• WSDL

• WAP dan WML

• RSS

• RDF dan OWL

• SMIL

Program Diploma IPB - Aditya Wicaksono, S.Komp 6

Page 7: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

Contoh XML

<?xml version="1.0"?>

<note>

<to>Tove</to>

<from>Jani</from>

<heading>Reminder</heading>

<body>Don't forget me this weekend!</body>

</note>

Program Diploma IPB - Aditya Wicaksono, S.Komp 7

Page 8: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

Perbedaan XML dan HTML

• XML bukanlah pengganti HTML

• XML dan HTML dirancang untuk tujuan yang berbeda

• HTML adalah tentang menampilkan informasi, sedangkan XML adalahtentang membawa informasi

Program Diploma IPB - Aditya Wicaksono, S.Komp 8

Page 9: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

Program Diploma IPB - Aditya Wicaksono, S.Komp 9

Page 10: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

<bookstore>

<book category="COOKING">

<title lang="en">Everyday Italian</title>

<author>Giada De Laurentiis</author>

<year>2005</year>

<price>30.00</price>

</book>

<book category="CHILDREN">

<title lang="en">Harry Potter</title>

<author>J K. Rowling</author>

<year>2005</year>

<price>29.99</price>

</book>

<book category="WEB">

<title lang="en">Learning XML</title>

<author>Erik T. Ray</author>

<year>2003</year>

<price>39.95</price>

</book>

</bookstore>

Program Diploma IPB - Aditya Wicaksono, S.Komp 10

Page 11: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

Aturan XML

• Semua elemen XML harus memiliki tag penutup

• Tag XML bersifat case sensitive

• Dokumen XML harus memiliki root elemen

• Elemen XML harus bersarang dengan benar

• Nilai atribut di XML harus dalam tanda kutip

Program Diploma IPB - Aditya Wicaksono, S.Komp 11

Page 12: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

Aturan Penamaan XML

• Nama dapat berisi huruf, angka, dan karakter lain

• Nama tidak dapat dimulai dengan angka atau karakter tanda baca

• Nama tidak dapat dimulai dengan kata xml (atau XML, atau XmL, dll)

• Nama tidak boleh berisi spasi

• Setiap nama dapat digunakan karena tidak ada reserved word

Program Diploma IPB - Aditya Wicaksono, S.Komp 12

Page 13: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

Tips dalam Aturan Penamaan

• Hindari penggunaan karakter “-”, karena beberapa software mungkin akanmenganggap sebagai operasi pengurangan

• Hindari penggunaan karakter “.”, karena beberapa software mungkin akanmenganggap sebagai property dari suatu object

• Hindari karakter “:”, disediakan untuk digunakan sebagai namespace

• Gunakan aturan penamaan database untuk elemen dalam dokumen XML

Program Diploma IPB - Aditya Wicaksono, S.Komp 13

Page 14: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

Komentar di XML

<!-- This is a comment -->

Program Diploma IPB - Aditya Wicaksono, S.Komp 14

Page 15: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

Hindari Atribut XML

• Beberapa masalah dengan menggunakan atribut antara lain :

• Atribut tidak dapat berisi beberapa nilai (elemen bisa)

• Atribut tidak dapat berisi struktur pohon (elemen bisa)

• Atribut tidak mudah diupgrade (untuk perubahan masa depan)

• Atribut sulit untuk dibaca dan dirawat, gunakan elemen untuk data dan gunakanatribut untuk informasi yang tidak relevan dengan data

Program Diploma IPB - Aditya Wicaksono, S.Komp 15

Page 16: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

Dokumen XML Valid

• Dokumen XML yang valid adalah dokumen XML yang “Well Formed” yang juga sesuai dengan aturan Document Type Definition (DTD)

Program Diploma IPB - Aditya Wicaksono, S.Komp 16

Page 17: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

XML DTD

• Sebuah DTD dapat dinyatakan secara inline dalam dokumen XML, atausebagai referensi eksternal

Program Diploma IPB - Aditya Wicaksono, S.Komp 17

Page 18: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

XML DTD Internal

<!DOCTYPE root-element [element-declarations]>

Program Diploma IPB - Aditya Wicaksono, S.Komp 18

Page 19: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

Contoh XML DTD Internal

<?xml version="1.0"?>

<!DOCTYPE note [

<!ELEMENT note (to,from,heading,body)>

<!ELEMENT to (#PCDATA)>

<!ELEMENT from (#PCDATA)>

<!ELEMENT heading (#PCDATA)>

<!ELEMENT body (#PCDATA)>

]>

<note>

<to>Tove</to>

<from>Jani</from>

<heading>Reminder</heading>

<body>Don't forget me this weekend</body>

</note>

Program Diploma IPB - Aditya Wicaksono, S.Komp 19

Page 20: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

XML DTD Eksternal

<!DOCTYPE root-element SYSTEM "filename">

Program Diploma IPB - Aditya Wicaksono, S.Komp 20

Page 21: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

Contoh XML DTD Eksternal

Data.xml

<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE note SYSTEM "Note.dtd">

<note>

<to>Tove</to>

<from>Jani</from>

<heading>Reminder</heading>

<body>Don't forget me this weekend!</body>

</note>

Note.dtd

<!DOCTYPE note

[

<!ELEMENT note (to,from,heading,body)>

<!ELEMENT to (#PCDATA)>

<!ELEMENT from (#PCDATA)>

<!ELEMENT heading (#PCDATA)>

<!ELEMENT body (#PCDATA)>

]>

Program Diploma IPB - Aditya Wicaksono, S.Komp 21

Page 22: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

Mengapa perlu menggunakan DTD ?

• Dengan DTD, setiap file XML dapat membawa deskripsi format sendiri

• Dengan DTD, suatu kelompok dapat sepakat menggunakan standar DTD untuk bertukar data

• Aplikasi yang dibuat dapat menggunakan standar DTD untuk memverifikasibahwa data yang diterima dari luar berlaku

• DTD juga dapat digunakan untuk memverifikasi data sendiri

Program Diploma IPB - Aditya Wicaksono, S.Komp 22

Page 23: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

XML (dan HTML) menurut perspektif DTD

Elements

Attributes

Entities

PCDATA

CDATA

Program Diploma IPB - Aditya Wicaksono, S.Komp 23

Page 24: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

Elements

• Elemen adalah main building blocks dari XML dan HTML

• Contoh Elemen HTML : body, table

• Contoh Elemen XML : note, message

• Elemen dapat berisi teks, elemen lain, atau dapat juga kosong

• Contoh Elemen HTML yang kosong : hr, br, img

Program Diploma IPB - Aditya Wicaksono, S.Komp 24

Page 25: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

Attributes

• Atribut memberikan informasi tambahan terkait elemen

• Atribut selalu ditempatkan di dalam tag pembuka elemen

• Atribut selalu berpasangan Antara nama dan nilai

Program Diploma IPB - Aditya Wicaksono, S.Komp 25

Page 26: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

Contoh Attributes

<img src="computer.gif" />

Program Diploma IPB - Aditya Wicaksono, S.Komp 26

Page 27: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

Entities

Referensi Entity Karakter

&lt; <

&gt; >

&amp; &

&quot; "

&apos; '

Program Diploma IPB - Aditya Wicaksono, S.Komp 27

Page 28: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

PCDATA

• PCDATA (Parse Character Data) adalah teks yang akan diurai oleh parser

• Teks akan diperiksa oleh parser untuk entitas dan markup

• Tag dalam teks akan diperlakukan sebagai markup dan entitas akandiperluas

• Tidak boleh mengandung karakter &, <, atau > sebagai gantinya dapatdigunakan &amp; &lt; dan &gt;

Program Diploma IPB - Aditya Wicaksono, S.Komp 28

Page 29: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

CDATA

• CDATA (Character Data) adalah teks yang tidak akan diurai oleh parser

• Tag dalam teks tidak akan diperlakukan sebagai markup dan entitas tidakakan diperluas

Program Diploma IPB - Aditya Wicaksono, S.Komp 29

Page 30: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

XML CSS

<?xml version="1.0" encoding="ISO-8859-1"?>

<?xml-stylesheet type="text/css" href="cd_catalog.css"?>

<CATALOG>

<CD>

<TITLE>Empire Burlesque</TITLE>

<ARTIST>Bob Dylan</ARTIST>

<COUNTRY>USA</COUNTRY>

<COMPANY>Columbia</COMPANY>

<PRICE>10.90</PRICE>

<YEAR>1985</YEAR>

</CD>

</CATALOG>

Program Diploma IPB - Aditya Wicaksono, S.Komp 30

Page 31: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

XML DOM

• XML DOM mendefinisikan sebuah cara standar untuk mengakses danmemanipulasi dokumen XML

• XML DOM memandang sebuah dokumen XML sebagai tree-structure

• Semua elemen dapat diakses melalui DOM tree

• Konten (teks dan atribut) dapat diubah atau dihapus, dan elemen barudapat dibuat

• Elemen, teks, dan atribut semua dikenali sebagai node

Program Diploma IPB - Aditya Wicaksono, S.Komp 31

Page 32: Pemrograman Berbasis Web - moeslimar.files.wordpress.com fileApa itu XML ? • Dirancang untuk menjadi self-descriptive • XML menjadi rekomendasiW3C (pada tanggal 10 februari 1998)

Terima Kasih

Program Diploma IPB - Aditya Wicaksono, S.Komp 32