Dokumen tersebut membahas tentang penggunaan DTD (Document Type Definition) untuk menentukan struktur dan konsistensi data pada dokumen XML, meliputi pengenalan DTD, deklarasi elemen dan atribut, serta validasi dokumen XML menggunakan DTD."
Pemahaman tentang penggunaan xml dalam database,MENGGUNAKAN KLAUSA FOR XML
PENGGUNAAN KLAUSA OPENXML
MEMBUAT DOKUMEN XML PADA SQL SERVER
PENGGUNAAN XQUERY
SE - Chapter 9 Pemeliharaan Perangkat LunakRiza Nurman
DEFINISI PEMELIHARAAN PERANGKAT LUNAK
KATEGORI PEMELIHARAAN PERANGKAT LUNAK
PROSES PEMELIHARAAN PERANGKAT LUNAK
MODEL PEMELIHARAAN PERANGKAT LUNAK
BIAYA PEMELIHARAAN PERANGKAT LUNAK
SE - Chapter 8 Strategi Pengujian Perangkat LunakRiza Nurman
Strategi Pengujian Perangkat Lunak
PENDEKATAN STRATEGI PENGUJIAN PERANGKAT LUNAK
PENGUJIAN UNIT
PENGUJIAN INTEGRASI
PENGUJIAN VALIDASI
PENGUJIAN SISTEM
DEBUGGING
SE - Chapter 7 Teknik Pengujian Perangkat LunakRiza Nurman
Teknik Pengujian Perangkat Lunak
DASAR-DASAR PENGUJIAN PERANGKAT LUNAK
DESAIN TEST CASE
PENGUJIAN WHITE BOX
PENGUJIAN BASIS PATH
PENGUJIAN STRUKTUR KONTROL
PENGUJIAN BLACK BOX
Pemahaman tentang penggunaan xml dalam database,MENGGUNAKAN KLAUSA FOR XML
PENGGUNAAN KLAUSA OPENXML
MEMBUAT DOKUMEN XML PADA SQL SERVER
PENGGUNAAN XQUERY
SE - Chapter 9 Pemeliharaan Perangkat LunakRiza Nurman
DEFINISI PEMELIHARAAN PERANGKAT LUNAK
KATEGORI PEMELIHARAAN PERANGKAT LUNAK
PROSES PEMELIHARAAN PERANGKAT LUNAK
MODEL PEMELIHARAAN PERANGKAT LUNAK
BIAYA PEMELIHARAAN PERANGKAT LUNAK
SE - Chapter 8 Strategi Pengujian Perangkat LunakRiza Nurman
Strategi Pengujian Perangkat Lunak
PENDEKATAN STRATEGI PENGUJIAN PERANGKAT LUNAK
PENGUJIAN UNIT
PENGUJIAN INTEGRASI
PENGUJIAN VALIDASI
PENGUJIAN SISTEM
DEBUGGING
SE - Chapter 7 Teknik Pengujian Perangkat LunakRiza Nurman
Teknik Pengujian Perangkat Lunak
DASAR-DASAR PENGUJIAN PERANGKAT LUNAK
DESAIN TEST CASE
PENGUJIAN WHITE BOX
PENGUJIAN BASIS PATH
PENGUJIAN STRUKTUR KONTROL
PENGUJIAN BLACK BOX
XML - Chapter 6 SIMPLE API FOR XML (SAX)Riza Nurman
Pemahaman tentang SAX, PENGENALAN SAX
PERBEDAAN DOM DAN SAX
MENGGUNAKAN SAX
BEBERAPA CONTOH SAX PARSER
MENGGUNAKAN SAX API INTERFACE
MEMPARSING DOKUMEN XML DENGAN MENGGUNAKAN SAX API
Understand different types of session management techniques
Implement different session management techniques
Describe server clusters
Migrate Sessions
XML - Chapter 6 SIMPLE API FOR XML (SAX)Riza Nurman
Pemahaman tentang SAX, PENGENALAN SAX
PERBEDAAN DOM DAN SAX
MENGGUNAKAN SAX
BEBERAPA CONTOH SAX PARSER
MENGGUNAKAN SAX API INTERFACE
MEMPARSING DOKUMEN XML DENGAN MENGGUNAKAN SAX API
Understand different types of session management techniques
Implement different session management techniques
Describe server clusters
Migrate Sessions
Sebuah buku foto yang berjudul Lensa Kampung Ondel-Ondelferrydmn1999
Indonesia, negara kepulauan yang kaya akan keragaman budaya, suku, dan tradisi, memiliki Jakarta sebagai pusat kebudayaan yang dinamis dan unik. Salah satu kesenian tradisional yang ikonik dan identik dengan Jakarta adalah ondel-ondel, boneka raksasa yang biasanya tampil berpasangan, terdiri dari laki-laki dan perempuan. Ondel-ondel awalnya dianggap sebagai simbol budaya sakral dan memainkan peran penting dalam ritual budaya masyarakat Betawi untuk menolak bala atau nasib buruk. Namun, seiring dengan bergulirnya waktu dan perubahan zaman, makna sakral ondel-ondel perlahan memudar dan berubah menjadi sesuatu yang kurang bernilai. Kini, ondel-ondel lebih sering digunakan sebagai hiasan atau sebagai sarana untuk mencari penghasilan. Buku foto Lensa Kampung Ondel-Ondel berfokus pada Keluarga Mulyadi, yang menghadapi tantangan untuk menjaga tradisi pembuatan ondel-ondel warisan leluhur di tengah keterbatasan ekonomi yang ada. Melalui foto cerita, foto feature dan foto jurnalistik buku ini menggambarkan usaha Keluarga Mulyadi untuk menjaga tradisi pembuatan ondel-ondel sambil menghadapi dilema dalam mempertahankan makna budaya di tengah perubahan makna dan keterbatasan ekonomi keluarganya. Buku foto ini dapat menggambarkan tentang bagaimana keluarga tersebut berjuang untuk menjaga warisan budaya mereka di tengah arus modernisasi.
1. BAB II Konsistensi Data Dengan DTD
Riza Muhammad Nurman, S.Kom
Email : rizaman@eng.ui.ac.id ; rizamn@ymail.com
2. Monday, March 19, 2018 Riza Muhammad Nurman 2
CONTENT
Pengenalan DTD
Deklarasi Elemen Pada DTD
Menghubungkan DTD Pada Dokumen XML
Memvalidasi Dokumen XML
3. Monday, March 19, 2018 Riza Muhammad Nurman 3
Pengenalan DTD
• Menentukan struktur isi dokumen XML konsisten
• Menentukan bagaimana elemen dan atribut-atributnya harus
dituliskan pada dokumen XML
• Menentukan sifat sebuah elemen apakah harus dituliskan
(mandatory) atau tidak.
4. Monday, March 19, 2018 Riza Muhammad Nurman 4
Deklarasi Elemen Pada DTD
Penulisan:
<!ELEMENT elementname (content-type atau content-
model)>
Keterangan:
element_name adalah nama elemen
content-type atau content-model menentukan isi dari element
(teks atau element lainnya)
5. Monday, March 19, 2018 Riza Muhammad Nurman 5
1. Terdiri atas huruf, angka atau
karakter lain.
2. Tidak boleh diawali oleh
angka ataupun symbol
karakter lain, kecuali garis
bawah/underscore ( _ ).
3. Tidak boleh diawali dengan
kata xml(atau XML, atau Xml,
dan kombinasi lainnya).
4. Nama elemen tidak boleh
mengandung spasi.
Best Practices
• Menjelaskan isi data yang
diwakilinya, jika nama
elemen terdiri atas 2 suku
kata atau lebih, boleh
digunakan underscore
• Dibuat sederhana dan
pendek
• Hindari penggunaan tanda
hubung ( - ), tanda titik ( . )
serta tanda titik dua ( : )
Aturan Penamaan
Elemen
6. Monday, March 19, 2018 Riza Muhammad Nurman 6
Contoh
• Dari elemen berikut ini, manakah penamaan yang sesuai dengan
aturan
– <Siswa1>
– <NO_TELEPON>
– <#HashTag>
– <_Jml_Barang>
– <1stYear>
– <@yahoo>
• Dari elemen berikut ini, manakah penamaan yang sesuai dengan
aturan
– <Siswa1> : benar
– <NO_TELEPON> : benar
– <#HashTag> : salah
– <_Jml_Barang> : benar
– <1stYear> : salah
– <@yahoo> : salah
7. Monday, March 19, 2018 Riza Muhammad Nurman 7
Tipe Elemen Dalam DTD
Tipe Element Deskripsi
Empty Elemen yang tidak memiliki isi data
Unrestricted
Dapat berisi elemen apapun yang dideklarasikan di
dalam DTD. Elemen ini adalah elemen yang sifatnya
merupakan kebalikan dari sifat empty element
Container
Dapat berisi data dalam bentuk karakter dan lain
sebagainya.
8. Monday, March 19, 2018 Riza Muhammad Nurman 8
Deklarasi Empty Element
• Penulisan:
<!ELEMENT elemen_kosong EMPTY>
• Elemen tidak berisi data
• Bisa memiliki atribut
9. Monday, March 19, 2018 Riza Muhammad Nurman 9
Deklarasi Unrestricted Element
• Penulisan:
<!ELEMENT elemen_kosong ANY>
• Elemen dapat berisi data
• Bisa memiliki atribut
10. Monday, March 19, 2018 Riza Muhammad Nurman 10
Deklarasi Container Element ( , )
<!ELEMENT Data (Pegawai)>
<!ELEMENT Pegawai (Nama, Alamat)>
<!ELEMENT Nama (#PCDATA)>
<!ELEMENT Alamat (#PCDATA) >
<Data>
<Pegawai>
<Nama>Si Fulan</Nama>
<Alamat>Jl Dimana Saja No 1</Alamat>
</Pegawai>
</Data>
DTD
XML
11. Monday, March 19, 2018 Riza Muhammad Nurman 11
Deklarasi Container Element ( | )
<!ELEMENT Data (Pegawai)>
<!ELEMENT Pegawai (Nama, Alamat, (GajiPerJam |
GajiPerBulan))>
<!ELEMENT Nama (#PCDATA)>
<!ELEMENT Alamat (#PCDATA) >
<!ELEMENT GajiPerJam (#PCDATA)>
<!ELEMENT GajiPerBulan (#PCDATA) >
<Data>
<Pegawai>
<Nama>Si Fulan</Nama>
<Alamat>Jl Dimana Saja No 1</Alamat>
<GajiPerJam>10</GajiPerJam>
</Pegawai>
</Data>
DTD
XML
12. Monday, March 19, 2018 Riza Muhammad Nurman 12
Deklarasi Container Element ( ? )
<!ELEMENT Data (Pegawai)>
<!ELEMENT Pegawai (Nama, Alamat, (GajiPerJam |
GajiPerBulan), Diskon?)>
<!ELEMENT Nama (#PCDATA)>
<!ELEMENT Alamat (#PCDATA) >
<!ELEMENT GajiPerJam (#PCDATA)>
<!ELEMENT GajiPerBulan (#PCDATA) >
<!ELEMENT Diskon (#PCDATA) >
<Data>
<Pegawai>
<Nama>Si Fulan</Nama>
<Alamat>Jl Dimana Saja No 1</Alamat>
<GajiPerJam>10</GajiPerJam>
<Diskon>10%</Diskon>
</Pegawai>
</Data>
DTD
XML
13. Monday, March 19, 2018 Riza Muhammad Nurman 13
Deklarasi Container Element ( * )
<!ELEMENT Data (Pegawai)*>
<!ELEMENT Pegawai (Nama, Alamat, (GajiPerJam |
GajiPerBulan), Diskon?)>
<!ELEMENT Nama (#PCDATA)>
<!ELEMENT Alamat (#PCDATA) >
<!ELEMENT GajiPerJam (#PCDATA)>
<!ELEMENT GajiPerBulan (#PCDATA) >
<!ELEMENT Diskon (#PCDATA) >
<Data>
<Pegawai>
<Nama>Si Fulan</Nama>
<Alamat>Jl Dimana Saja No 1</Alamat>
<GajiPerJam>10</GajiPerJam>
<Diskon>10%</Diskon>
</Pegawai>
<Pegawai>
<Nama>Si Fulan</Nama>
<Alamat>Jl Baling Bambu No 1</Alamat>
<GajiPerBulan>3000</GajiPerBulan>
</Pegawai>
</Data>
DTD
XML
14. Monday, March 19, 2018 Riza Muhammad Nurman 14
Deklarasi Container Element ( + )
<!ELEMENT Data (Pegawai)+>
<!ELEMENT Pegawai (Nama, Alamat, (GajiPerJam |
GajiPerBulan), Diskon?)>
<!ELEMENT Nama (#PCDATA)>
<!ELEMENT Alamat (#PCDATA) >
<!ELEMENT GajiPerJam (#PCDATA)>
<!ELEMENT GajiPerBulan (#PCDATA) >
<!ELEMENT Diskon (#PCDATA) >
<Data>
<Pegawai>
<Nama>Si Fulan</Nama>
<Alamat>Jl Dimana Saja No 1</Alamat>
<GajiPerJam>10</GajiPerJam>
<Diskon>10%</Diskon>
</Pegawai>
<Pegawai>
<Nama>Si Fulan</Nama>
<Alamat>Jl Baling Bambu No 1</Alamat>
<GajiPerBulan>3000</GajiPerBulan>
</Pegawai>
</Data>
DTD
XML
15. Monday, March 19, 2018 Riza Muhammad Nurman 15
Deklarasi Atribut
• Penulisan:
<!ATTLIST element_name attribute_name valuetype
[attributetype]["default"]>
16. Monday, March 19, 2018 Riza Muhammad Nurman 16
Atribut
<!ELEMENT DATA_REKENING (REKENING)+ >
<!ELEMENT REKENING (PEMILIK, SALDO)>
<!ATTLIST REKENING nomor ID #REQUIRED >
<!ELEMENT PEMILIK (#PCDATA) >
<!ELEMENT SALDO (#PCDATA) >
<DATA_REKENING>
<REKENING nomor="A1">
<PEMILIK>Si Fulan</PEMILIK>
<SALDO>3.000.000</SALDO>
</REKENING>
</DATA_REKENING>
DTD
XML
Ganti ID dengan CDATA apabila ingin nilai atribut bebas
17. Monday, March 19, 2018 Riza Muhammad Nurman 17
Atribut 2
<!ELEMENT DATA_REKENING (REKENING)+ >
<!ELEMENT REKENING (PEMILIK, SALDO)>
<!ATTLIST REKENING nomor CDATA #REQUIRED>
<!ATTLIST REKENING status (AKTIF|NONAKTIF) "AKTIF">
<!ATTLIST REKENING key CDATA #FIXED "123">
<!ELEMENT PEMILIK (#PCDATA) >
<!ELEMENT SALDO (#PCDATA) >
<DATA_REKENING>
<REKENING nomor="123" key="123" status="AKTIF">
<PEMILIK>Si Fulan</PEMILIK>
<SALDO>3.000.000</SALDO>
</REKENING>
</DATA_REKENING>
DTD
XML
18. Monday, March 19, 2018 Riza Muhammad Nurman 18
Menghubungkan DTD Pada Dokumen XML
Internal DTD External DTD
Bagian dari sebuah dokumen
XML
Dibuat pada file terpisah, oleh karena
itu dibutuhkan perintah yang
mereferensikan dokumen XML pada
DTD tersebut
Hanya dapat digunakan oleh
dokumen XML dimana DTD
tersebut didefinisikan
Dapat digunakan oleh lebih dari satu
dokumen XML
Penulisan internal DTD:
<!DOCTYPE root_element[deklarasi element dan attribute]>
Penulisan external DTD:
<!DOCTYPE root_element PUBLIC|SYSTEM "path-of-file">
19. Monday, March 19, 2018 Riza Muhammad Nurman 19
Memvalidasi Dokumen XML
Non Validating Parser
• Non validasi parser memeriksa apakah sebuah dokumen XML sesuai
dengan aturan sintak penulisan XML.
Validating Parser
• Validating parser memproses dokumen XML dengan melakukan
pemeriksaan sintak, membangun struktur tree dan kemudian
membandingkan struktur pohon tersebut dengan struktur dokumen
XML yang telah didefinisikan pada DTD