1 Jurusan Teknik Informatika Sekolah Tinggi Teknologi Telkom YFA S1/IT/WE/E2/1106 CS4713 Extensible Markup Language (XML)2 Document Type Definition (D...
YFA Jurusan Teknik Informatika Sekolah Tinggi Teknologi Telkom
S1/IT/WE/E2/1106
Extensible Markup Language (XML)
CS4713
Document Type Definition (DTD)
Dokumen XML harus well formedness valid atau tidaknya dokumen XML valid jika memenuhi spesifikasi DTD. DTD tidak harus ditulis. Dokumen XML tanpa DTD tidak bisa diperiksa validitasnya. Contoh:
DTD-nya adalah:
Artinya adalah dokumen XML hanya berisi elemen utama (root element) yang bernama daftar, tidak ada elemen lain. Isi elemen daftar pun hanya teks biasa, ditunjukkan dengan (#PCDATA), tidak boleh berisi elemen. YFA: Web Engineering
DTD memberikan kemudahan untuk mengatur isi elemen dan hubungan antara elemen dengan elemen lain. Misalnya, kita dapat menentukan sebuah elemen hanya berisi satu buah elemen, atau berisi satu/lebih elemen, atau paling tidak ada satu elemen.
YFA: Web Engineering
Contoh 3 ]> Orang BaikOrang JujurOrang Jahat
YFA: Web Engineering
Perhatikan tanda “+” setelah tulisan teman pada baris ke-4 pada Contoh 3. Tanda “+” itu berarti elemen teman harus muncul minimal sekali. Tanda-tanda yang lain bisa dilihat di tabel berikut : Tanda
Artinya
+
Muncul minimal satu kali
*
Boleh tidak muncul atau muncul satu kali atau lebih
?
Boleh tidak muncul atau muncul maksimal hanya satu kali
|
Seperti fungsi OR
YFA: Web Engineering
Contoh 4 ]> Pheni552647RhezaJl. Buah Batu No.1Orang Jahat
YFA: Web Engineering
Contoh 5 ]> AangOrang Jahat <panggilan>Pheni Orang Jahat YFA: Web Engineering
Baris ke-4 pada Contoh 5, disebut grouping elemen teman kemudian diikuti elemen lawan muncul satu kali atau lebih (tanda “+”). Baris ke-5 menunjukkan elemen nama atau panggilan muncul satu kali di dalam elemen teman. Tidak boleh memakai tanda koma dan tanda “|” secara berurutan, seperti :
Solusinya adalah dengan dikelompokkan, seperti :
Untuk elemen kosong, maka DTD-nya : YFA: Web Engineering
DTD untuk Atribut
DTD untuk atribut menggunakan “ATTLIST”. Contoh: ]> PheniRheza
YFA: Web Engineering
DTD untuk Atribut (lanjutan)
“), dan (&) dan tanda petik(",’). Selain CDATA, masih ada atribut lain. Tipe Data : CDATA Enumerated ID IDREF IDREFS
YFA: Web Engineering
Default Atribut
#REQUIRED artinya kita tidak menyediakan nilai default untuk suatu atribut. Jadi atribut ini harus ada nilainya, harus ditulis, tidak boleh dikosongkan. #IMPLIED artinya kita sudah menyediakan nilai default untuk atribut yang kita buat. Jika seseorang tidak mengisi atribut tersebut, akan dipakai nilai defaultnya. Namun jika seseorang mengisi nilai tertentu, yang dipakai adalah nilai yang diisikan orang tersebut. #FIXED artinya kita sudah menyediakan nilai default yang tidak bisa diganti-ganti, tidak bisa dimodifikasi
YFA: Web Engineering
Contoh 6 ]> PheniRhezaFaisal
YFA: Web Engineering
Contoh 7 ]> PheniRheza Faisal
YFA: Web Engineering
Tipe atribut ID merupakan atribut yang menunjukkan identitas dari sebuah elemen dalam seluruh dokumen XML. Nilai ID unik dalam seluruh dokumen. Nilai atribut dengan tipe IDREF harus cocok dengan nilai salah satu dari nilai atribut yang tipenya ID. Sedangkan IDREFS boleh berisi beberapa nilai dari atribut yang tipenya ID, tiap nilai dipisahkan dengan spasi.
YFA: Web Engineering
Peletakan DTD
DTD boleh ditempatkan menjadi satu dengan dokumen XML atau dipisahkan, sehingga kita dapat dengan mudah men-share DTD tersebut ke berbagai dokumen XML.
YFA: Web Engineering
Contoh 8
contoh8.xml PheniRheza Faisal
daftar.dtd YFA: Web Engineering
YFA Jurusan Teknik Informatika Sekolah Tinggi Teknologi Telkom
Menampilkan Dokumen XML pada Halaman Website
S1/IT/WE/E2/1106 CS4713
Contoh 1
DaftarBuku.xml ]> <judul>Aplikasi Internet FaisalElex Media Komputindo <judul>Belajar Sendiri XML Prasaja WikataElex Media Komputindo YFA: Web Engineering
YFA Jurusan Teknik Informatika Sekolah Tinggi Teknologi Telkom
Menampilkan Dokumen XML dengan Style Sheet XSL
S1/IT/WE/E2/1106 CS4713
Contoh
DaftarBuku1.xml <judul>Aplikasi Internet FaisalElex Media Komputindo <judul>Belajar Sendiri XML Prasaja WikataElex Media Komputindo YFA: Web Engineering
Dengan menggunakan buku.xsl pada contoh di atas, maka hasilnya hanya menampilkan satu buah data.Untuk menampilkan semua data maka digunakan: <xsl:for-each> YFA: Web Engineering