Inilah Pengertian, Struktur, hingga Modul Dasar XML

Assalamu‘alaikum wr. wb.

Halo gais! XML merupakan Bahasa Markup yang dapat menyederhanakan untuk proses penyimpanan ke Server. XML juga dibuat dan diciptakan oleh W3C (World Wide Web Consortium). Memang, Sintaks XML mirip dengan HTML, namun Serupa tapi Tak Sama.

Modul Dasar XML: Pengertian, Struktur, dan Jenis-jenisnya

Sumber : Javatpoint.comW3schools.com, dan Tutorialspoint.com

Jika Anda tengah mempelajari pemrograman, Anda mungkin pernah mendengar istilah XML. Atau mungkin Anda telah menemukan berkas dengan ekstensi tersebut tanpa memahami kegunaannya. Jadi, apa sebenarnya XML?

Secara sederhana, XML membantu dalam memahami struktur dasar suatu dokumen atau situs web. Jika Anda telah terbiasa dengan HTML, mungkin Anda akan mengasumsikan bahwa keduanya serupa. Namun, kenyataannya, keduanya memiliki fungsi yang berbeda.

Pada awalnya, XML digunakan sebagai format pertukaran data melalui API. Namun, saat ini, popularitas XML telah menurun.

Penasaran? Artikel ini akan menjelaskan dasar-dasar XML, mulai dari pengertian dasarnya, perbedaannya dengan HTML, hingga cara membuka berkas XML.


DASAR XML

Sumber : Niagahoster.co.id (Blog)AWS.Amazon.com, dan Jagoanhosting.com (Blog)

A. Pengertian XML

Extensible Markup Language (XML) adalah bahasa markup yang dibuat oleh World Wide Web Consortium (W3C) dengan tujuan untuk memfasilitasi penyimpanan dan pertukaran data antara server secara lebih efisien.

Perlu disederhanakannya proses penyimpanan dan pertukaran data antar server karena setiap server mungkin memiliki sistem yang berbeda, yang dapat menghambat pertukaran data yang efisien. Sebagai contoh, ketika data harus dipindahkan dari satu server ke server lain yang menggunakan sistem yang berbeda, diperlukan pengubahan format data yang dapat memakan waktu dan meningkatkan risiko kehilangan data.

XML menyediakan solusi atas masalah ini dengan menyimpan data dalam format teks yang sederhana. Hal ini memungkinkan data untuk tetap berada dalam format aslinya tanpa perlu mengubahnya, bahkan ketika ditransfer ke server lain yang menggunakan sistem yang berbeda.

Keunggulan lain dari XML adalah kemudahannya dalam diadopsi oleh sistem operasi dan browser baru. Selain itu, bahasanya juga mudah dipahami oleh manusia, komputer, dan teknologi pengenal suara, sehingga memudahkan proses pemrosesan dan pertukaran data.

B. Perbedaan XML dan HTML

Perbedaan mendasar antara file HTML dan XML terletak pada fungsinya. XML dirancang khusus untuk menyimpan dan mengirimkan data, sementara HTML digunakan untuk menampilkan data.

Selain dari segi fungsinya, perbedaan antara file HTML dan XML juga mencakup penggunaan tag. Dalam XML, pengguna dapat menggunakan tag apa pun sesuai kebutuhan, sedangkan dalam HTML, pengguna harus menggunakan tag khusus yang telah ditetapkan sebelumnya atau biasa disebut predefined tags untuk menjalankan fungsi tertentu.

Perbedaan lainnya adalah dalam penanganan huruf besar dan kecil, yang disebut case sensitive. XML memperlakukan huruf kapital dan huruf kecil secara berbeda, sementara HTML tidak memperhatikan perbedaan tersebut, yang disebut case insensitive.

Sintaks HTML untuk menampilkan Data :

<body>
    <h1>Daftar Produk PT.A</h1>
    <h2>Produk Pertama</h2>
    <p>Produk pertama dapat membantu meningkatkan daya tahan tubuh</p>
    <p><b>Harga: Rp. 20.000</b></p>
    <p><b>Ongkir: Rp. 5000</b></p>
</body>

Seperti yang Anda lihat, HTML menggunakan tag-tag khusus seperti <h1>, <h2>, atau <p> untuk mendefinisikan struktur kontennya. 

Selain itu, Anda juga bisa melihat bagaimana datanya akan ditampilkan. Contohnya pada bagian Harga dan Ongkir, ada tag <b> yang membuat datanya tampil dalam bentuk cetak tebal (bold).

Sekarang, mari kita lihat pada Gambaran isi file XML :

<productlisting title:”Daftar Produk PT.A”>
 <product>
  <nama>Produk Pertama</nama>
  <deskripsi>Produk pertama meningkatkan daya tahan tubuh</deskripsi>
  <harga>Rp. 20.000</harga>
  <ongkir>Rp. 5000</ongkir>
 </product>
</productlisting>


C. Manfaat dari XML

1. Mendukung Transaksi antara Perusahaan

Ketika perusahaan menjual barang atau jasa kepada perusahaan lain, informasi penting seperti biaya, spesifikasi, dan jadwal pengiriman perlu dipertukarkan. Dengan menggunakan Extensible Markup Language (XML), kedua pihak dapat berbagi informasi ini secara elektronik dan menyelesaikan transaksi tanpa intervensi manusia.

2. Menjaga Keutuhan Data

XML memungkinkan transfer data bersama dengan deskripsi yang melengkapi data untuk mencegah kehilangan integritas data. Deskripsi ini memungkinkan :

  • Memverifikasi keakuratan data
  • Menyesuaikan presentasi data secara otomatis untuk berbagai pengguna
  • Menyimpan data secara konsisten di berbagai platform

3. Meningkatkan Efisiensi Pencarian

Program komputer seperti mesin pencari dapat mengurutkan dan mengategorikan file XML dengan lebih efisien dan akurat daripada jenis dokumen lainnya. Misalnya, kata "mark" bisa merujuk pada kata benda atau kata kerja. Berkat tanda XML, mesin pencari dapat mengidentifikasi konteks kata "mark" untuk hasil pencarian yang lebih relevan. Dengan demikian, XML membantu komputer dalam menafsirkan bahasa alami secara lebih efisien.

4. Merancang Aplikasi yang Fleksibel

Dengan XML, mudah untuk memperbarui atau mengubah desain aplikasi. Banyak teknologi modern telah dilengkapi dengan dukungan bawaan untuk XML, memungkinkan teknologi tersebut untuk membaca dan memproses file data XML secara otomatis. Hal ini memudahkan dalam membuat perubahan tanpa perlu mengubah seluruh struktur basis data.

D. Aplikasi/Penerapan dari XML

XML, yang merupakan singkatan dari Extensible Markup Language, adalah teknologi yang menjadi landasan bagi berbagai macam aplikasi, mulai dari perangkat produktivitas umum seperti pengolah kata hingga perangkat lunak penerbitan buku dan bahkan sistem konfigurasi aplikasi yang kompleks.

1. Transfer Data

Dengan XML, Anda dapat mentransfer data antara dua sistem yang menyimpan data dalam format yang berbeda. Sebagai contoh, mungkin situs web Anda menyimpan tanggal dalam format MM/DD/YYYY, sedangkan sistem akuntansi Anda menggunakan format DD/MM/YYYY. XML memungkinkan Anda untuk mentransfer data dari situs web ke sistem akuntansi dan sebaliknya. Pengembang Anda dapat menulis kode yang secara otomatis mengonversi data antara format yang berbeda ini.

2. Aplikasi Web

XML memberikan struktur pada data yang ditampilkan di halaman web. Bersama dengan teknologi situs web lainnya seperti HTML, XML digunakan untuk menyajikan data secara konsisten dan relevan kepada pengunjung situs web. Sebagai contoh, bayangkan sebuah situs web e-commerce yang menjual pakaian. Dengan menggunakan XML, situs web tersebut dapat menyesuaikan halaman web secara dinamis berdasarkan preferensi pengguna, menampilkan produk dari merek tertentu dengan memfilter menggunakan tanda <brand>.

3. Dokumentasi

XML digunakan untuk menentukan struktur dokumen teknis apa pun. Program lain kemudian dapat memproses struktur dokumen tersebut untuk menyajikannya dengan cara yang fleksibel. Sebagai contoh, XML memiliki tanda untuk paragraf, item dalam daftar bernomor, dan judul, sehingga jenis perangkat lunak lain dapat menghasilkan dokumen secara otomatis untuk berbagai keperluan seperti pencetakan dan publikasi di halaman web.

4. Jenis Data

Banyak bahasa pemrograman mendukung XML sebagai jenis data. Dengan dukungan ini, Anda dapat dengan mudah menulis program dalam bahasa pemrograman lain yang dapat bekerja dengan file XML secara langsung.

E. Komponen dari XML

File Extensible Markup Language (XML) adalah dokumen berbasis teks yang dapat Anda simpan dengan ekstensi .xml. Anda dapat menulis XML mirip dengan file teks lainnya. Untuk membuat atau mengedit file XML, Anda dapat menggunakan salah satu hal berikut: 

  • Editor teks seperti Notepad atau Notepad++
  • Editor XML online
  • Peramban web

Setiap file XML menyertakan komponen berikut.

1. Dokumen XML 

Tanda <xml></xml> digunakan untuk menandai awal dan akhir dari sebuah file XML. Konten dalam tanda ini juga disebut dokumen XML. Itu adalah tanda pertama yang akan dicari oleh perangkat lunak apa pun untuk memproses kode XML.

2. Deklarasi XML

Sebuah dokumen XML dimulai dengan beberapa informasi tentang XML itu sendiri. Misalnya, dokumen itu mungkin menyebutkan versi XML yang diikutinya. Pembukaan ini disebut deklarasi XML. Berikut adalah contohnya.

<?xml version="1.0" encoding="UTF-8"?>

a. Elemen XML

Semua tanda lain yang Anda buat dalam dokumen XML disebut dengan elemen XML. Elemen XML dapat berisi fitur berikut :

  • Teks
  • Atribut
  • Elemen lainnya

Semua dokumen XML dimulai dengan tanda primer, yang disebut dengan elemen root.

Misalnya, perhatikan file XML di bawah.

<InvitationList>
<family>
       <aunt>
       <name>Christine</name>
        <name>Stephanie</name>
       </aunt>
</family>
</InvitationList>

b. Atribut XML

Elemen XML dapat memiliki deskriptor lain yang disebut atribut. Anda dapat menentukan nama atribut Anda sendiri dan menulis nilai atribut dalam tanda kutip seperti yang ditunjukkan di bawah.

<person age="22">

c. Konten XML

Data dalam file XML juga disebut konten XML. Misalnya, dalam file XML, Anda mungkin melihat data seperti ini. 

<friend>
       <name>Charlie</name>
       <name>Steve</name>
</friend>

Nilai data Charlie dan Steve adalah kontennya.

F. Cara Membuka File XML

Berikut ini adalah Cara membuka File XML.


















































JENIS-JENIS VALIDASI XML (XML VALIDATION)

Sumber : Javatpoint.com dan Tutorialspoint.com

Tutorial XML ini dirancang untuk pemula dan profesional. Tutorial XML kami menyediakan pengetahuan mendalam tentang teknologi XML seperti apa itu XML, fitur-fitur XML, contoh XML, teknologi terkait XML, membuat struktur XML dengan DTD, membuat struktur XML dengan skema (XSD), perbedaan antara DTD dan skema.

A. DTD

Sumber : Tutorialspoint.com

DTD merupakan singkatan dari Document Type Definition. DTD digunakan untuk mendefinisikan blok bangunan yang sah dari sebuah dokumen XML. DTD digunakan untuk menentukan struktur dokumen dengan daftar elemen dan atribut yang sah.

1. Sintaks

Sintaks dasar DTD adalah sebagai berikut :

<!DOCTYPE element DTD identifier
[
   declaration1
   declaration2
   ........
]>

Dalam sintaks di atas :

  • DTD dimulai dengan penanda <!DOCTYPE.
  • Elemen memberitahu parser untuk mengurai dokumen dari elemen akar yang ditentukan.
  • Identifier DTD adalah identifikasi untuk definisi tipe dokumen, yang dapat berupa jalur ke file di sistem atau URL ke file di internet. Jika DTD menunjuk ke jalur eksternal, itu disebut Subsek Eksternal.
  • Kurung siku [ ] mengapit daftar deklarasi entity opsional yang disebut Subsek Internal.

2. Internal DTD

Sebuah DTD disebut sebagai DTD internal jika elemen-elemen dinyatakan dalam file XML itu sendiri. Untuk merujuknya sebagai DTD internal, atribut standalone dalam deklarasi XML harus diatur menjadi ya. Ini berarti, deklarasi tersebut berfungsi secara independen dari sumber eksternal.

Sintaksis

Berikut adalah sintaks DTD internal :

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

Di mana root-element adalah nama elemen root dan deklarasi elemen adalah tempat Anda mendeklarasikan elemen.

Contoh :

Berikut adalah contoh sederhana DTD Internal :

<?xml version = "1.0" encoding = "UTF-8" standalone = "yes"?>
<!DOCTYPE address [
   <!ELEMENT address (name,company,phone)>
   <!ELEMENT name (#PCDATA)>
   <!ELEMENT company (#PCDATA)>
   <!ELEMENT phone (#PCDATA)>
]>

<address>
   <name>Inzaghi Posuma</name>
   <company>Inzaghi Corp</company>
   <phone>(021) 123-4567</phone>
</address>

Mari kita lihat kode di atas!

Start Declaration - Mulailah deklarasi XML dengan pernyataan berikut.

<?xml version = "1.0" encoding = "UTF-8" standalone = "yes"?>

DTD - Segera setelah header XML, diikuti deklarasi tipe dokumen, yang biasa disebut DOCTYPE :

<!DOCTYPE address [

Deklarasi DOCTYPE mempunyai tanda seru (!) di awal nama elemen. DOCTYPE memberi tahu parser bahwa DTD dikaitkan dengan dokumen XML ini.

DTD Body - Deklarasi DOCTYPE diikuti oleh isi DTD, tempat Anda mendeklarasikan elemen, atribut, entitas, dan notasi.

<!ELEMENT address (name,company,phone)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT company (#PCDATA)>
<!ELEMENT phone (#PCDATA)>

Beberapa elemen dideklarasikan di sini yang membentuk kosakata dokumen <nama>. <!ELEMENT name (#PCDATA)> mendefinisikan nama elemen bertipe "#PCDATA". Di sini #PCDATA berarti data teks yang dapat diurai.

End Declaration - Terakhir, bagian deklarasi DTD ditutup menggunakan tanda kurung tutup dan tanda kurung siku tutup (]>). Ini secara efektif mengakhiri definisi, dan setelahnya, dokumen XML segera menyusul.

3. External DTD

Pada DTD eksternal, elemen-elemen dinyatakan di luar file XML. Mereka diakses dengan menentukan atribut sistem yang mungkin berupa file .dtd yang sah atau URL yang valid. Untuk merujuknya sebagai DTD eksternal, atribut standalone dalam deklarasi XML harus diatur sebagai tidak. Ini berarti, deklarasi mencakup informasi dari sumber eksternal.

Sintaksis

Berikut adalah Sintaks untuk DTD eksternal :

<!DOCTYPE root-element SYSTEM "file-name">

Dimana nama file adalah file dengan ekstensi .dtd.

Contoh :

Contoh berikut menunjukkan penggunaan DTD eksternal.

<?xml version = "1.0" encoding = "UTF-8" standalone = "no" ?>
<!DOCTYPE address SYSTEM "address.dtd">
<address>
   <name>Inzaghi Posuma</name>
   <company>Inzaghi Corp</company>
   <phone>(021) 123-4567</phone>
</address>

Isi alamat file DTD.dtd seperti gambar berikut :

<!ELEMENT address (name,company,phone)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT company (#PCDATA)>
<!ELEMENT phone (#PCDATA)>


B. XML Validation

Sumber : Tutorialspoint.com

Validasi adalah proses di mana dokumen XML divalidasi. Sebuah dokumen XML dikatakan valid jika isinya cocok dengan elemen, atribut, dan deklarasi tipe dokumen terkait (DTD), dan jika dokumen tersebut mematuhi batasan yang dinyatakan di dalamnya. Validasi ditangani dalam dua cara oleh parser XML. Mereka adalah :

  • Dokumen XML yang terbentuk dengan baik (Well-formed XML document)
  • Dokumen XML yang valid (Valid XML document)

Sebuah dokumen XML dikatakan terbentuk dengan baik jika mematuhi aturan-aturan berikut ini :

  • File XML Non DTD harus menggunakan entitas karakter yang telah ditetapkan sebelumnya untuk amp(&), apos(single quote), gt(>), lt(<), quot(double quote).
  • Harus mengikuti urutan tag. Artinya, tag dalam harus ditutup sebelum menutup tag luar.
  • Setiap tag pembuka harus memiliki tag penutup atau harus menjadi tag yang berakhir sendiri. (<title>....</title> atau <title/>).
  • Harus memiliki hanya satu atribut dalam tag awal, yang perlu diapit dengan tanda kutip.
  • amp(&), apos(single quote), gt(>), lt(<), entitas quot(double quote) selain ini harus dideklarasikan.

Contoh :

Berikut ini adalah contoh dokumen XML yang dibentuk dengan baik :

<?xml version = "1.0" encoding = "UTF-8" standalone = "yes" ?>
<!DOCTYPE address
[
   <!ELEMENT address (name,company,phone)>
   <!ELEMENT name (#PCDATA)>
   <!ELEMENT company (#PCDATA)>
   <!ELEMENT phone (#PCDATA)>
]>

<address>
   <name>Tanmay Patil</name>
   <company>TutorialsPoint</company>
   <phone>(011) 123-4567</phone>
</address>

Contoh di atas dikatakan terbentuk dengan baik sebagai :

  • Ini mendefinisikan jenis dokumen. Di sini, tipe dokumen adalah tipe elemen.
  • Ini mencakup elemen root yang diberi nama sebagai alamat.
  • Masing-masing elemen anak antara nama, perusahaan, dan telepon diapit dalam tag penjelasannya sendiri.
  • Urutan tag dipertahankan.

C. XML Schema (XSD)

Sumber : Tutorialspoint.com dan Javatpoint.com

Skema XML umumnya dikenal sebagai XML Schema Definition (XSD). Ini digunakan untuk menggambarkan dan memvalidasi struktur dan konten data XML. Skema XML mendefinisikan elemen, atribut, dan tipe data. Elemen skema mendukung Namespace. Ini mirip dengan skema basis data yang menggambarkan data dalam sebuah basis data.

1. Sintaks

Contoh berikut menunjukkan cara menggunakan Skema :

<?xml version = "1.0" encoding = "UTF-8"?>
<xs:schema xmlns:xs = "http://www.w3.org/2001/XMLSchema">
   <xs:element name = "contact">
      <xs:complexType>
         <xs:sequence>
            <xs:element name = "name" type = "xs:string" />
            <xs:element name = "company" type = "xs:string" />
            <xs:element name = "phone" type = "xs:int" />
         </xs:sequence>
      </xs:complexType>
   </xs:element>
</xs:schema>

Ide dasar di balik Skema XML adalah bahwa skema tersebut menggambarkan format sah yang dapat digunakan oleh dokumen XML.

2. Elemen

Seperti yang kita lihat di bab XML - Elemen, elemen adalah blok penyusun dokumen XML. Sebuah elemen dapat didefinisikan dalam XSD sebagai berikut :

<xs:element name = "x" type = "y"/>

3. Jenis Definisi (Definition Types)

Anda dapat mendefinisikan elemen skema XML dengan cara berikut :

a. Tipe Sederhana

Elemen tipe sederhana digunakan hanya dalam konteks teks. Beberapa tipe sederhana yang telah ditentukan adalah: xs:integer, xs:boolean, xs:string, xs:date. Contohnya :

<xs:element name = "phone_number" type = "xs:int" />

b. Tipe Kompleks

Tipe kompleks adalah wadah untuk definisi elemen lainnya. Ini memungkinkan Anda untuk menentukan elemen-elemen anak apa yang dapat berisi sebuah elemen dan untuk menyediakan struktur dalam dokumen XML Anda. Contohnya :

<xs:element name = "Address">
   <xs:complexType>
      <xs:sequence>
         <xs:element name = "name" type = "xs:string" />
         <xs:element name = "company" type = "xs:string" />
         <xs:element name = "phone" type = "xs:int" />
      </xs:sequence>
   </xs:complexType>
</xs:element>

Pada contoh di atas, elemen Address terdiri dari elemen anak. Ini adalah wadah untuk definisi <xs:elemen> lainnya, yang memungkinkan untuk membangun hierarki elemen sederhana dalam dokumen XML.

c. Tipe Global

Dengan tipe global, Anda dapat mendefinisikan tipe tunggal dalam dokumen Anda, yang dapat digunakan oleh semua referensi lainnya. Sebagai contoh, misalkan Anda ingin menggeneralisasi orang dan perusahaan untuk alamat perusahaan yang berbeda. Dalam hal ini, Anda dapat mendefinisikan tipe umum sebagai berikut :

<xs:element name = "AddressType">
   <xs:complexType>
      <xs:sequence>
         <xs:element name = "name" type = "xs:string" />
         <xs:element name = "company" type = "xs:string" />
      </xs:sequence>
   </xs:complexType>
</xs:element>

Sekarang mari kita gunakan tipe ini dalam contoh kita sebagai berikut :

<xs:element name = "Address1">
   <xs:complexType>
      <xs:sequence>
         <xs:element name = "address" type = "AddressType" />
         <xs:element name = "phone1" type = "xs:int" />
      </xs:sequence>
   </xs:complexType>
</xs:element>

<xs:element name = "Address2">
   <xs:complexType>
      <xs:sequence>
         <xs:element name = "address" type = "AddressType" />
         <xs:element name = "phone2" type = "xs:int" />
      </xs:sequence>
   </xs:complexType>
</xs:element>

Daripada harus mendefinisikan nama dan perusahaan dua kali (sekali untuk Alamat1 dan sekali untuk Alamat2), sekarang kita memiliki definisi tunggal. Ini membuat pemeliharaan lebih sederhana, yaitu, jika Anda memutuskan untuk menambahkan elemen "Kode Pos" ke alamat, Anda hanya perlu menambahkannya di satu tempat.

4. Contoh Sintaks

Mari kita membuat file XML Schemas.

Nama File : employee.xsd

<?xml version="1.0"?>  
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"  
targetNamespace="https://inzaghisites.000webhostapp.com"  
xmlns="https://inzaghisites.000webhostapp.com"  
elementFormDefault="qualified">  
 
<xs:element name="employee">  
  <xs:complexType>
    <xs:sequence>
      <xs:element name="firstname" type="xs:string"/>
      <xs:element name="lastname" type="xs:string"/>
      <xs:element name="email" type="xs:string"/>
    </xs:sequence>
  </xs:complexType>
</xs:element>
 
</xs:schema>

Mari kita lihat File xml menggunakan XML Schemas atau File XSD.

Nama File : employee.xml

<?xml version="1.0"?>  
<employee  
xmlns="https://inzaghisites.000webhostapp.com"  
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
xsi:schemaLocation="https://inzaghisites.000webhostapp.com employee.xsd">  
 
  <firstname>Inzaghi</firstname>  
  <lastname>Posuma</lastname>  
  <email>izzumi_poshaf@email.com</email>  
</employee>

Keterangan :

  • <xs:element name="employee"> : Ini mendefinisikan nama elemen employee.
  • <xs:complexType> : Ini mendefinisikan bahwa elemen 'employee' adalah tipe kompleks.
  • <xs:sequence> : Ini mendefinisikan bahwa tipe kompleks adalah urutan elemen.
  • <xs:element name="firstname" type="xs:string"/> : Ini mendefinisikan bahwa elemen 'firstname' adalah tipe string/teks.
  • <xs:element name="lastname" type="xs:string"/> : Ini mendefinisikan bahwa elemen 'lastname' adalah tipe string/teks.
  • <xs:element name="email" type="xs:string"/> : Ini mendefinisikan bahwa elemen 'email' adalah tipe string/teks.


TENTANG XSLT

Sumber : Javatpoint.com dan Tutorialspoint.com

XSL merupakan singkatan dari EXtensible Stylesheet Language. XSLT digunakan untuk Transformasi dokumen XML ke format lain.

Tutorial XSLT kami mencakup semua topik Optimisasi Mesin Pencari seperti teknik-teknik XSLT hitam dan putih, cara kerja mesin pencari, riset pasar XSLT, riset konten, teknik Optimisasi On Page, teknik Optimisasi Off Page, Optimisasi Media Sosial, Alat-alat XSLT, dan lain sebagainya.

A. Pengertian XSLT

XSLT adalah singkatan dari Extensible Stylesheet Language Transformations. Ini adalah bahasa yang digunakan untuk mentransformasikan dokumen XML menjadi format lain, seperti HTML, teks biasa, atau bahkan dokumen XML lainnya. XSLT beroperasi dengan menggunakan aturan-aturan dan templat-templat untuk menggambarkan bagaimana transformasi harus dilakukan.

Berikut adalah beberapa poin penting tentang XSLT :

  • Bahasa Deklaratif: XSLT adalah bahasa deklaratif, artinya Anda mendefinisikan apa yang ingin Anda lakukan dalam transformasi, bukan bagaimana melakukannya. Anda menentukan aturan-aturan dan templat-templat yang menggambarkan struktur output yang diinginkan.
  • Berbasis Templat: Transformasi XSLT bersifat berbasis templat. Templat-templat ini mendefinisikan cara elemen dan atribut dalam dokumen XML input harus diproses dan diubah menjadi dokumen output.
  • XPath: XSLT menggunakan XPath (XML Path Language) untuk menavigasi struktur dari dokumen XML input. Ekspresi XPath digunakan untuk memilih node dan nilai-nilai dalam dokumen XML, memungkinkan Anda untuk menargetkan elemen-elemen tertentu untuk transformasi.
  • Fungsi Bawaan: XSLT menyediakan kumpulan fungsi bawaan untuk melakukan tugas-tugas umum selama transformasi, seperti manipulasi string, operasi matematika, dan pemrosesan kondisional.
  • Format Output: XSLT dapat menghasilkan output dalam berbagai format, termasuk XML, HTML, teks, dan bahkan format lain berbasis XML. Fleksibilitas ini memungkinkan Anda untuk mentransformasikan data XML ke format yang sesuai untuk berbagai keperluan, seperti tampilan pada halaman web atau integrasi dengan sistem lain.

B. Cara Kerja XSLT

Stylesheet XSLT ditulis dalam format XML. Ini digunakan untuk mendefinisikan aturan transformasi yang akan diterapkan pada dokumen XML target. Prosesor XSLT mengambil stylesheet XSLT dan menerapkan aturan transformasi pada dokumen XML target, kemudian menghasilkan dokumen yang diformat dalam bentuk XML, HTML, atau teks. Akhirnya, itu digunakan oleh formatter XSLT untuk menghasilkan output aktual dan ditampilkan pada pengguna akhir.

C. Kelebihan XSLT

Sejumlah keuntungan penggunaan XSLT :

  • XSLT menyediakan cara mudah untuk menggabungkan data XML ke dalam presentasi karena ia menerapkan transformasi yang ditentukan pengguna pada dokumen XML dan outputnya dapat berupa HTML, XML, atau dokumen terstruktur lainnya.
  • XSLT menyediakan XPath untuk menemukan elemen/atribut dalam sebuah dokumen XML. Sehingga ini merupakan cara yang lebih nyaman untuk menelusuri dokumen XML daripada cara tradisional, dengan menggunakan bahasa skrip.
  • XSLT didasarkan pada template. Sehingga lebih tahan terhadap perubahan dalam dokumen dibandingkan dengan DOM dan SAX tingkat rendah.
  • Dengan menggunakan XML dan XSLT, skrip UI aplikasi akan terlihat bersih dan lebih mudah untuk dipelihara.
  • Template XSLT didasarkan pada pola XPath yang sangat kuat dalam hal kinerja untuk memproses dokumen XML.
  • XSLT dapat digunakan sebagai bahasa validasi karena menggunakan pendekatan pencocokan pola pohon.
  • Anda dapat mengubah output dengan mudah dengan memodifikasi transformasi dalam file XSL.

D. Contoh Sintaks XSLT

Misalkan kita memiliki contoh file XML berikut, Employee.xml, yang perlu diubah menjadi dokumen HTML yang diformat dengan baik.

Nama File : Employee.xml

<?xml version = "1.0"?>  
<class>  
   <employee id = "001">  
      <firstname>Inzaghi</firstname>  
      <lastname>Posuma</lastname>  
      <nickname>Izzumi</nickname>  
      <salary>30000</salary>  
   </employee>  
   <employee id = "024">  
      <firstname>Sampurna</firstname>  
      <lastname>Radtya</lastname>  
      <nickname>Wendi</nickname>  
      <salary>25000</salary>  
   </employee>  
   <employee id = "056">  
      <firstname>Peter</firstname>  
      <lastname>Symon</lastname>  
      <nickname>John</nickname>  
      <salary>10000</salary>  
   </employee>  
</class>

Tentukan dokumen stylesheet XSLT untuk dokumen XML di atas. Anda harus mengikuti kriteria berikut :

  • Halaman harus memiliki judul "employee".
  • Halaman harus memiliki tabel detail karyawan.
  • Kolom harus memiliki header berikut: id, Nama Depan, Nama Belakang, Nama Panggilan, Gaji.
  • Tabel harus berisi detail karyawan sesuai dengan spesifikasi.

Langkah 1: Buat Dokumen XSLT

Buat dokumen XSLT yang memenuhi persyaratan di atas. Namakan sebagai employee.xsl dan simpan di lokasi yang sama dengan employee.xml.

Nama File : Employee.xsl

<?xml version = "1.0" encoding = "UTF-8"?>  
<!-- xsl stylesheet declaration with xsl namespace:  
Namespace tells the xlst processor about which  
element is to be processed and which is used for output purpose only  
-->  
<xsl:stylesheet version = "1.0"  
xmlns:xsl = "http://www.w3.org/1999/XSL/Transform">    
<!-- xsl template declaration:    
template tells the xlst processor about the section of xml  
document which is to be formatted. It takes an XPath expression.  
In our case, it is matching document root element and will  
tell processor to process the entire document with this template.  
-->  
   <xsl:template match = "/">  
      <!-- HTML tags  
         Used for formatting purpose. Processor will skip them and browser  
            will simply render them.  
      -->  
      <html>  
         <body>  
            <h2>Employee</h2>  
            <table border = "1">  
               <tr bgcolor = "#9acd32">  
                  <th>ID</th>  
                  <th>First Name</th>  
                  <th>Last Name</th>  
                  <th>Nick Name</th>  
                  <th>Salary</th>  
               </tr>  
               <!-- for-each processing instruction  
               Looks for each element matching the XPath expression  
               -->  
              <xsl:for-each select="class/employee">  
                  <tr>  
                     <td>  
                        <!-- value-of processing instruction  
                        process the value of the element matching the XPath expression  
                        -->  
                        <xsl:value-of select = "@id"/>  
                     </td>  
                     <td><xsl:value-of select = "firstname"/></td>  
                     <td><xsl:value-of select = "lastname"/></td>  
                     <td><xsl:value-of select = "nickname"/></td>  
                     <td><xsl:value-of select = "salary"/></td>    
                  </tr>  
               </xsl:for-each>  
            </table>  
         </body>  
      </html>  
   </xsl:template>    
</xsl:stylesheet>  

Langkah 2: Daftar dokumen XSLT ke dalam dokumen XML

Perbarui dokumen employee.xml dengan tag xml-stylesheet berikut. Tetapkan nilai href menjadi employee.xsl

<?xml version = "1.0"?>  
<?xml-stylesheet type = "text/xsl" href = "employee.xsl"?>  
<class>
...  
</class>

File employee.xml yang diperbarui :

<?xml version = "1.0"?>  
<?xml-stylesheet type = "text/xsl" href = "employee.xsl"?>  
<class>  
   <employee id = "001">  
      <firstname>Inzaghi</firstname>  
      <lastname>Posuma</lastname>  
      <nickname>Izzumi</nickname>  
      <salary>30000</salary>  
   </employee>  
   <employee id = "024">  
      <firstname>Sampurna</firstname>  
      <lastname>Radtya</lastname>  
      <nickname>Wendi</nickname>  
      <salary>25000</salary>  
   </employee>  
   <employee id = "056">  
      <firstname>Peter</firstname>  
      <lastname>Symon</lastname>  
      <nickname>John</nickname>  
      <salary>10000</salary>  
   </employee>  
</class>

Langkah 3: Lihat dokumen XML di Internet Explorer atau Ekstensi Browser XML/XSLT Lainnya

Output-nya akan terlihat seperti ini. Anda bisa menggunakan Ekstensi Browser XML/XSL Lainnya selain menggunakan Internet Explorer.

Hasil Output :

CATATAN :

Bagi Anda menggunakan Windows 10 Terbaru dan Windows 11, Anda sudah tidak bisa menggunakan Internet Explorer lagi. Sehingga memerlukan Ekstensi Browser (Chrome) seperti XSLT Tester untuk melihat Dokumen XML melalui XSLT.

Untuk melihat Tutorial-nya, silakan lihat di sini (Miniblog).



Semoga saja Artikel ini sangat bermanfaat bagi para IT dan Programmer Pemula.

Terima Kasih 😄😘👌👍 :)

Wassalamu‘alaikum wr. wb.

Post a Comment

Previous Post Next Post