Pemrograman XML
DTD DTD ‐‐ Attribute & EntitiesAttribute & Entities
Salhazan Nasution, S.KomSalhazan Nasution, S.Kom,,
DTD ‐ Attribute & EntitiesDTD Attribute & Entities
2Pemrograman XML (Semester Ganjil 2009/2010) ‐ Salhazan Nasution, S.Kom
Attribut DTDSebuah elemen atau sub elemen dari dokumen XML bisa memiliki Attribut.
Untuk mendefinisikan daftar attribut, digunakan DTD.T .
3Pemrograman XML (Semester Ganjil 2009/2010) ‐ Salhazan Nasution, S.Kom
Sintak Attribut DTDDeklarasi attribut DTD mempunyai sintak seperti dibawah ini :<!ATTLIST element-name attribute-name
ib d f l lattribute-type default-value>
Contoh DTD :
<!ATTLIST mahasiswa gender CDATA “pria”>
Contoh XML :
<mahasiswa gender=“pria”>
4Pemrograman XML (Semester Ganjil 2009/2010) ‐ Salhazan Nasution, S.Kom
Tipe AttributTipe attribut yang sering digunakan :
• CDATA atribut yang berisi karakterCDATA atribut yang berisi karakter.
• (en1 | en2 | ..) nilainya harus dari salah satu yang ada didaftar.
• ID nilainya ID unik.
• Entity nilainya merupakan entitas.Entity nilainya merupakan entitas.
5Pemrograman XML (Semester Ganjil 2009/2010) ‐ Salhazan Nasution, S.Kom
Nilai DefaultNilai default :
• Value berupa suatu nilaiValue berupa suatu nilai.
• #REQUIRED nilai attribut HARUS disertakan.
• #IMPLIED nilai attribut TIDAK HARUS disertakan#IMPLIED nilai attribut TIDAK HARUS disertakan.
• #FIXED value nilai attribut harus tetap.
6Pemrograman XML (Semester Ganjil 2009/2010) ‐ Salhazan Nasution, S.Kom
Implied AttributContoh DTD :
<!ATTLIST mahasiswa telpon CDATA #IMPLIED>
Valid XML:
<mahasiswa telpon=“02743262717”>
Valid XML:
< h i /><mahasiswa/>
7Pemrograman XML (Semester Ganjil 2009/2010) ‐ Salhazan Nasution, S.Kom
Required AttributContoh DTD :
<!ATTLIST mahasiswa gender CDATA #REQUIRED>
Valid XML:
<mahasiswa gender=“pria”>
Invalid XML:
< h i /><mahasiswa/>
8Pemrograman XML (Semester Ganjil 2009/2010) ‐ Salhazan Nasution, S.Kom
Fixed AttributContoh DTD :<!ATTLIST mahasiswa jurusan CDATA #FIXED
“i f tik ”>“informatika”>
V lid XMLValid XML:<mahasiswa jurusan=“informatika”>
Invalid XML:<mahasiswa jurusan=“kedokteran”>
9Pemrograman XML (Semester Ganjil 2009/2010) ‐ Salhazan Nasution, S.Kom
Entitas DTDEntitas DTD bisa disebut sebagai konstanta untukmendefinisikan shortcut ke teks.
d d d kl k lEntitas dapat dideklarasikan secara internal maupuneksternal.
Contoh Internal:
DTD :<!ENTITY penulis “Salhazan”><!ENTITY copyleft “Lab SIRKEL”>
XML :<buku>&penulis;©left;</buku>
10
p py
Pemrograman XML (Semester Ganjil 2009/2010) ‐ Salhazan Nasution, S.Kom
Entitas DTDContoh Eksternal:
DTD :<!ENTITY penulis SYSTEM
“http://www.salhazan.com/entitas/entitas.dtd”><!ENTITY copyleft SYSTEM
“http://www.salhazan.com/entitas/entitas.dtd”>
XML :<buku>&penulis;©left;</buku>p ; py ; /
11Pemrograman XML (Semester Ganjil 2009/2010) ‐ Salhazan Nasution, S.Kom
Contoh ‐ Attribut<?xml version="1.0"?> <!DOCTYPE person [ <!ELEMENT person (name, profession*)> p p<!ELEMENT name EMPTY> <!ATTLIST name first CDATA #REQUIRED> <!ATTLIST name last CDATA #REQUIRED><!ATTLIST name last CDATA #REQUIRED> <!ELEMENT profession EMPTY> <!ATTLIST profession value CDATA #REQUIRED> ]>]> <person>
<name first="Michael" last="Heart"/>< f i l " t i ti t"/><profession value="computer scientist"/> <profession value="musicians"/> <profession value="volunteer"/>
/
12
</person>
Pemrograman XML (Semester Ganjil 2009/2010) ‐ Salhazan Nasution, S.Kom
Contoh ‐ Attribut<?xml version="1.0"?> <!DOCTYPE person [ <!ELEMENT person (name, profession*)> p p<!ELEMENT name EMPTY> <!ATTLIST name first CDATA #REQUIRED> <!ATTLIST name last CDATA #REQUIRED><!ATTLIST name last CDATA #REQUIRED> <!ELEMENT profession EMPTY> <!ATTLIST profession value CDATA #FIXED "musicians"> ]>]> <person>
<name first="Michael“/>< f i l " t i ti t"/><profession value="computer scientist"/> <profession value="musicians"/> <profession value="volunteer"/>
/
13
</person>
Pemrograman XML (Semester Ganjil 2009/2010) ‐ Salhazan Nasution, S.Kom
<?xml version="1.0" standalone="yes"?><?xml version 1.0 standalone yes ?><!DOCTYPE daftar[<!ELEMENT daftar (buku+)><!ELEMENT buku (judul,harga)><!ELEMENT judul (#PCDATA)><!ELEMENT harga (#PCDATA)><!ATTLIST judul tahun CDATA #REQUIRED><!ENTITY li "SALHAZAN"><!ENTITY penulis "SALHAZAN"><!ENTITY tahun "2007">]><daftar><daftar>
<buku><judul>Pemrograman XML ditulis oleh &penulis;</judul><harga>1000</harga>g g</buku><buku><judul>Basis Data ditulis oleh &penulis;</judul>
/<harga>1000</harga></buku>
</daftar>
14Pemrograman XML (Semester Ganjil 2009/2010) ‐ Salhazan Nasution, S.Kom
<?xml version="1.0" standalone="yes"?><?xml version 1.0 standalone yes ?><!DOCTYPE daftar[<!ELEMENT daftar (buku+)><!ELEMENT buku (judul,harga)><!ELEMENT judul (#PCDATA)><!ELEMENT harga (#PCDATA)><!ATTLIST judul tahun CDATA #REQUIRED><!ENTITY li "SALHAZAN"><!ENTITY penulis "SALHAZAN"><!ENTITY tahun "2009">]><daftar><daftar>
<buku><judul tahun="&tahun;">Pemrograman XML ditulis oleh &penulis;</judul>p j<harga>1000</harga></buku><buku><judul tahun="&tahun;">Basis Data ditulis oleh &penulis;</judul><harga>1000</harga></buku>
15
</buku></daftar>
Pemrograman XML (Semester Ganjil 2009/2010) ‐ Salhazan Nasution, S.Kom
See you next timeSee you next timeAny Question?
See you next time..See you next time..
16Pemrograman XML (Semester Ganjil 2009/2010) ‐ Salhazan Nasution, S.Kom
Top Related