BAB 2- PENINGKATAN RELEVANSI PENCARIAN INFORMASI LAGU MENGGUNAKAN ONTOLOGI

(1)

2.1. Web Semantik

Web berbasis semantik adalah web data yang dapat di proses secara langsung atau tidak langsung dengan menempatkan data pada web dalam bentuk yang bisa dimengerti mesin secara alami dan mengubahnya kedalam bentuk itu (Berners-Lee, 1999). Tujuan dari Semantik Web adalah untuk mengembangkan standar yang memungkinkan dan teknologi yang dirancang untuk membantu mesin memahami informasi lebih lanjut di Web sehingga mereka dapat mendukung penjelajahan yang lebih kaya, integrasi data, navigasi, dan otomatisasi tugas-tugas.

Dengan metode semantic web, data berbasis HTML dapat dirubah menjadi format yang dapat dipahami oleh mesin, sehingga mesin dapat melakukan proses pengumpulan informasi dan memahami hubungan antara informasi. Semantik Web mampu melakukan perubahan ini dengan bantuan XML (Extensible Markup Language) dan data – language standards seperti RDF ( Resource Description Framework) dan OWL (Ontology Web Language), dua standarisasi dari W3C (World Wide Web Consortium). Dengan berbagai standar tersebut, memungkinkan pengembang web (Web Developer) untuk menambahkan satu layer “arti” pada dokumen web-nya. Sebagai framework untuk mendefinisikan bagaimana beberapa data terhubung dan bagaimana relasi yang menyertai data-data tersebut seharusnya


(2)

ditampilkan (Awaludin, 2009 ). Untuk merepresentasikan Semantic web, ada beberapa teknologi pendukung antara lain (Awaludin, 2006) :

•Skema pemberian nama global (URIs).

•Sintaksis standar untuk mendeskripsikan data (RDF).

•Metode standar untuk mendeskripsikan property dari data tersebut (RDF Schema). Menurut Ibrahim (2007), standar yang paling penting dalam membangun web semantik adalah XML, XML Schema, RDF, OWL dan SPARQL. Berikut ini adalah layer dari web semantik sebagaimana direkomendasikan oleh World Wide Web Consortium (W3C) :

Gambar II-1. Layer Web Semantik Sumber : Fensel et al. 2003

Berdasarkan gambar diatas, dapat dijelaskan sebagai berikut (Antoniou and Harmelen 2008):

1. Internationalized Resource Identified (URI) merupakan penamaan yang unik untuk identifikasi web semantik.


(3)

3. XML adalah sebuah bahasa yang memperbolehkan pemrogram membuat dokumen web berdasarkan kosakata-nya sendiri. XML sangat cocok dalam pengiriman dokumen melalui web.

4. RDF adalah sebuah model data untuk objek (resource) dan hubungan antara mereka. RDF menyediakan sebuah pemaknaan sederhana untuk model data, yang dapat dipresentasikan dalam sintaks XML.

5. RDF Schema menyediakan dasar-dasar kosakata untuk RDF. Dengan RDF Shcema, memungkinkan untuk membuat hirarki kelas dan propertinya.

6. Ontologi vocabulary memperluas RDF Schema dengan menambahkan konsep yang lebih canggih untuk menambahkan sebuah batasan, seperti cardinality, batasan nilai, karakteristik dari properti seperti transitive. Ini didasarkan pada logika sehingga memberikan kekuatan reasoning pada web semantik.

7. Logic digunakan untuk meningkatkan bahasa ontologi lebih lanjut dan mengizinkan penulisan dari deklarasi pengetahuan.

8. Proof melibatkan proses pengurangan nyata seperti halnya penyajian bukti di bahasa web dan validasi bukti.

9. Trust bertujuan untuk memastikan dan memverifikasi bahwa pernyataan web semantik berasal dari sumber yang terpercaya. Ini dapat dicapai dengan tepat menggunakan ‘digital signature’ dari pernyataan RDF.

Menurut Tim Berners Lee, Dalam struktur Semantic Web atau Web Semantik ini, komputer akan dapat memindai dan menginterpretasikan informasi dengan menggunakan agen perangkat lunak yang merangkak diseluruh web. Hal ini dimungkinkan karena Semantic Web telah mengumpulkan informasi dalam apa yang disebut ontologi.


(4)

2.2 Ontologi

Ontologi adalah file yang mendefinisikan hubungan antara syarat dan kelompok istilah. Hal ini dianggap salah satu pilar dari Web Semantik. Mereka biasanya disertai dengan dokumen dibawah bahasa formal dari ontologi. Tentu saja, ontologi ini harus rinci, komrehensif dan efektif bagi Web Semantik untuk bekerja. Menurut Berners Lee, ontologi akan datang dalam bentuk metadata, yang akan dimasukan dalam kode, hal ini bisa mengambil banyak waktu dan usaha.

Menurut Dumbill (2000) diacu dalam Awaludin (2009), Ontologi pada semantik yaitu teknologi web yang diarahkan dapat memahami makna suatu kata atau kalimat yang diberikan oleh pengguna. Membuat komputer mengerti seperti manusia adalah suatu hal yang sepertinya mustahil, namun visi ini terus diupayakan dengan menyediakan seperangkat alat sehingga membuat mesin atau komputer dengan mudah dapat memproses informasi dan mengerti informasi yang diinginkan oleh pengguna. Tidak ada standar khusus untuk membangun suatu ontologi dan tidak ada justifikasi bahwa ontologi yang dikembangkan oleh seseorang adalah salah atau benar. Kualitas ontologi dapat dilihat dari aplikasi yang dibangun berdasarkan ontologi ini. Ketika aplikasi yang dibangun dapat memenuhi kebutuhan pengguna dan menjawab permasalahan yang ada maka ontologi yang digunakan termasuk ontologi yang berkualitas.


(5)

Secara teknis sebuah ontologi direpresentasikan dalam bentuk classes, properties, slots, dan instans:

1. Class, menerangkan konsep (atau makna) suatu domain. Class adalah kumpulan dari elemen dengan properti yang sama. Suatu class dapat mempunyai turunan subclass yang menerangkan konsep yang lebih spesifik.

2. Properti, menerangkan konsep nilai-nilai, status, terukur yang mungkin ada untuk domain.

3. Slot, merupakan representasi dari kerangka pengetahuan atau relasi yang menerangkan properti dari kelas dan instant.

4. Instant, adalah individu yang telah dibuat (diciptakan). Instant dari sebuah subclass merupakan instant dari suatu superclass

Ontologi mempunyai beberapa komponen antara lain (Bayuputera 2005, diacu dalam Dwiono 2013):

1. Konsep (Concept), Sebuah konsep dapat berupa sesuatu yang dikatakan, sehingga dapat pula merupakan penjelasan dari tugas, fungsi, aksi, strategi, dan sebagainya. Concept juga dikenal sebagai classes, object dan categories.

2. Relasi (Relation) merupakan representasi sebuah tipe dari interaksi antara konsep dari sebuah domain.

3. Fungsi (Functions) adalah sebuah relasi khusus dimana elemen ke-n dari relasi adalah unik untuk elemen ke n-1.

4. Taksonomi (Taxonomies) digunakan untuk mengatur pengetahuan ontologi (Ontological Knowledge) menggunakan generalisasi dan hubungan spesialisasi dimana pewarisan sederhana dan multiple bisa diterapkan.


(6)

5. Aksioma (Axioms) digunakan untuk memodelkan sebuah sentence yang selalu benar.

6. Instances digunakan untuk merepresentasikan elemen-elemen dalam suatu domain yang ada pada konsep tertentu.

2.2.1 Membangun Ontologi

Pembentukan ontologi menurut Noy dan McGuinness (2001) ada delapan langkah. Kedelapan langkah tersebut bersifat iteratif selama siklus pembentukan ontologi adalah:

1. Memeriksa adanya anomali 2. Menciptakan Instan

3. Mendefinisikan faset dari slot

4. Mendefinisikan properti kelas (slot)

5. Mendefinisikan kelas dan tingkatan kelas (taksonomi) 6. Enumerasi kata-kata penting dalam ontologi

7. Mempertimbangkan penggunaan kembali ontologi yang telah ada 8. Menentukan domain dan ruang lingkup ontology

2.2.1.1 Menentukan domain dan ruang lingkup ontology

Pertanyaan yang dapat membantu dalam menentukan domain dan ruang lingkup ontologi antara lain:

1. Apa domain yang akan ditangani oleh ontologi? 2. Apa kegunaan ontologi yang akan dibentuk?


(7)

3. Apa jenis pertanyaan yang harus terjawab oleh adanya ontologi tersebut?

4. Siapa yang akan menggunakan dan memperbaiki ontologi?

Kelima pertanyaan tersebut akan berubah setiap kali proses perancangan ontologi, tetapi pertanyaan tersebut akan membantu membatasi ruang lingkup model.

2.2.1.2 Mempertimbangkan penggunaan kembali ontologi yang telah ada

Pada tahap ini, akan dilakukan pengecekan apakah orang lain telah membuat ontologi untuk domain yang sama. Jika sudah ada maka ontologi tersebut dapat langsung digunakan, atau diperbaiki. Tetapi jika belum ada maka akan diciptakan ontologi baru. Penggunaan kembali ontologi yang telah dibuat orang lain sangat diperlukan jika sistem yang akan dikembangkan perlu berinteraksi dengan aplikasi lain yang telah membangun ontologi atau pengontrolan kosa kata.

Beberapa ontologi telah tersedia dalam bentuk elektronik dan dapat diimpor ke sistem yang sedang dikembangkan. Formalisme dalam merepresentasikan pengetahuan dalam bentuk ontologi dapat beragam dan bukan suatu masalah besar karena sistem representasi pengetahuan dapat mengimpor dan mengekspor ontologi. Jika sistem representasi pengetahuan tidak dapat bekerja secara langsung dalam formalisme tertentu, penerjemahan ontologi dari satu formalisme ke formalisme yang lain tidaklah sulit. Beberapa pustaka dalam Web menyediakan ontologi untuk digunakan kembali.


(8)

2.2.1.3 Enumerasi kata-kata penting dalam ontologi

Enumerasi kata yaitu menuliskan semua kata yang diperlukan dalam pembentukan ontologi. Jenis kata yang diperlukan adalah kata benda (untuk membentuk nama kelas), kata kerja (untuk membentuk nama properti). Dalam tahap ini tidak perlu ada keragu-raguan dalam menuliskan kata, apakah kata-kata tersebut akan saling bertumpang tindih atau tidak karena akan dilanjutkan pada dua tahap berikutnya. Menulis semua kata untuk membuat pernyataan atau untuk menjelaskan ke pengguna sangat penting. Kata-kata apa saja yang ingin dibicarakan? Properti apa yang dimiliki oleh kata-kata tersebut? Apa yang ingin dijelaskan tentang kata-kata tersebut?

2.2.1.4 Mendefinisikan kelas dan tingkatan kelas (taksonomi)

Langkah selanjutnya adalah mengelompokkan kata-kata pada tahap 3 ke dalam suatu tingkatan taksonomi (subclass) berdasarkan kemiripan. Ada tiga cara yang dapat dipilih untuk membentuk tingkatan kelas. Ketiga cara tersebut tidak ada yang dianggap paling benar. Ketiganya dapat dilakukan berdasarkan kemampuan masing-masing personal dalam memandang suatu domain. Bagi beberapa pengembang ontologi, kombinasi top down dan bottom up adalah proses yang paling mudah karena konsep “di tengah” cenderung lebih deskriptif dalam domain.


(9)

Dari daftar kata yang dibentuk di langkah 3, kata-kata tersebut dibentuk class dalam ontologi. Class diorganisasikan menjadi susunan taksonomi dengan memberi pertanyaan apa yang lebih umum dari yang lain. Jika class A adalah superclass dari calss B maka setiap instan dari B adalah instan dari A. Dengan kata lain, class B merepresentasikan sebuah konsep yang merupakan “bagian dari” A.

 Proses pengembangan top-down: memulai pendefinisian dari konsep yang umum dilanjutkan konsep yang lebih khusus.

 Proses pengembangan bottom-up: memulai pendefinisian dari konsep khusus menuju ke konsep yang lebih umum.

 Kombinasi kedua proses: memulai pendefinisian dari konsep yang lebih penting dan melakukan generalisasi atau spesifikasi secara tepat.

2.2.1.5 Mendefinisikan properti kelas (slot)

Setelah memilih class, struktur internal konsep harus dijelaskan. Properti adalah hubungan antar dua objek. Dari tahap 3 tersisa beberapa kata. Kata-kata ini dipilih kata kerja atau kata sifat untuk dijadikan properti/slot. Properti akan menghubungkan individual ke domain dan individual ke daerah hasil.

Untuk tiap properti dalam daftar, pengembang harus menentukan menentukan class yang menjelaskan properti tersebut. Properti ini menjadi slot yang terpasang


(10)

pada class. Secara umum, ada beberapa jenis properti objek yang dapat menjadi slot dalam sebuah ontologi:

 Properti intrinsik  Properti ekstrinsik

 Parts, jika objek terstruktur, parts dapat menjadi bagian fisik dan abstrak

 Hubungan ke indivu lain, ini adalah hubungan antara keanggotaan dalam class dengan item lain.

Ada tiga jenis properti yakni properti obyek, properti jenis data, dan properti anotasi. Properti obyek menjelaskan hubungan antar individu. Jenis-jenis properti obyek yaitu properti invers, properti fungsional, properti transitif, dan properti simetris. Properti jenis data menghubungkan individu ke nilai jenis data skema XML atau rdf literal. Properti anotasi digunakan untuk menambahkan informasi ke kelas, individual dan properti obyek/data.

2.2.1.6 Mendefinisikan faset dari slot

Faset digunakan untuk merepresentasikan informasi tentang properti (slot), terkadang disebut role restriction. Jenis faset ada dua macam, yakni slot kardinalitas dan slot jenis nilai. Kardinalitas menjelaskan berapa banyak nilai yang dimiliki oleh slot. Jenis nilai menjelaskan tipe nilai yang dapat diisikan dalam slot. Beberapa jenis jenis nilai yaitu string, number, boolean, enumerated, dan instance.


(11)

2.2.1.7 Menciptakan Instan

Instan adalah objek atau individual dari kelas. Tahap pendefinisian sebuah instan dari kelas:

 memilih sebuah kelas

 menciptakan instan dari kelas  mengisi nilai slot

2.2.1.8 Memeriksa adanya anomali

Pemeriksaan dari anomali atau konsistensi ontologi melalui pellet dan racer.

2.3 Impelementasi Ontologi dalam Web Semantik

Web semantik dapat diimplementasikan pada sistem untuk melakukan proses navigasi dan pencarian berbasis konteks pada konten – konten yang tersebar secara luas di internet dengan memanfaatkan ontologi yang telah dibangun dan standar yang paling penting dalam membangun semantic web adalah XML, XML Schema, RDF, OWL, dan SPARQL (Awaludin, 2009).


(12)

Gambar II-2. Literature Map Diagram

Ontologi sendiri mempunyai struktur bahasa yang formal (terdefinisi), agar dapat digunakan.

Beberapa struktur bahasa yang menyusun ontology antara lain (Pramudiono, 2006):

 XML (Extensible Markup Langguage)

Struktur mirip HTML yang tag-nya dapat didefiniskan sendiri.  XML Schema

Bahasa yang membatasi struktur yang didefinisikan pada dokumen XML.  RDF (Resource Description Framework)


(13)

Model data untuk objek (‘resources’) dan relasi diantaranya, menyediakan semantic yang sederhana untuk model data tersebut, dan data model ini dapat disajikan dalam sintaksis XML.

 RDF Schema

Adalah kosakata untuk menjelaskan properties dan classes dari sumber RDF, dengan sebuah semantics untuk hirarki penyamarataan dari properties dan classes.

 OWL (Ontology Web Langguage)

Menambahkan beberapa kosakata untuk menjelaskan properties dan classes, antara lain : relasi antara classes (misalkan disjointness), kardinalitas (misalkan ‘tepat satu’), equality, berbagai tipe dari properties, karakteristik dari properties (misalkan symmetry), menyebutkan satu persatu classes.

2.3.1 Extensible Markup Language (XML)

Extensible Markup Language (XML) adalah sebuah metabahasa universal untuk mendefinikan markup. Ini menyediakan sebuah kerangka kerja umum, dan didesain untuk menjadi sarana yang mudah dalam mengirimkan data dan metadata melalui Web (Antoniou and Harmelen, 2008).

Berbeda dengan Hypertext Markup Language (HTML), XML memungkinkan penggunanya untuk mendefinisikan tag sendiri. XML biasanya digunakan dalam pertukaran data antar aplikasi (Awaludin, 2009).


(14)

Elemen XML mempresentasikan “hal” yang ditulis didalam dokumen XML, menyusun konsep utama di dokumen XML. Elemen XML tersusun dari tag pembuka, isi konten, dan tag penutup. Contoh tag XML :

<dosen>David Billington</dosen>

XML Schema merupakan bahasa yang digunakan untuk mendefinisikan sekumpulan aturan yang harus dipatuhi oleh dokumen XML. Struktur dari dokumen XML yang dibuat harus sesuai dengan aturan yang telah didefinisikan tersebut.

XML Schema memperbolehkan seseorang untuk mendefenisikan tipe baru sebagai tambahan atau menggantikan tipe yang telah ada. Kombinasi dengan sintak XML, fitur yang dapat membangun aturan dari aturan lain tentu dapat mengurangi beban kerja.

2.3.2 Resource Description Framework (RDF)

RDF merupakan suatu metadata yang digunakan untuk mendeskripsikan alamat sumber daya pada web (Wicaksana, 2006). Metadata ini dapat berupa judul, pengarang, hak cipta, dan lisensi dalam dokumen web. Elemen pernyataan dalam RDF terdiri dari subyek, predikat, dan obyek. Subyek adalah sesuatu yang dideskripsikan dan biasanya berupa alamat URI. Dalam hal ini alamat URI merepresentasikan sumber daya. Predikat merupakan properti dari sumber daya yang menjelaskan hubungan antara subyek dengan obyek. Selain itu obyek merupakan nilai dari sebuah predikat. Obyek mempunyai dua tipe data yaitu obyek yang mempunyai tipe URI misalnya http://airplane.com/id/102 dan obyek yang bertipe literal misalnya “adam air”. Subyek dan predikat berisikan data yang berisikan


(15)

sumber daya sedangkan obyek dapat bertipe sumber daya maupun literal (Wicaksana, 006).

2.3.2.1 RDF Sebagai Bahasa Permodelan Semantic Web dan permodelan Data Pengembangan RDF didasari atas kegunaan berikut (Pramudiono 2006, diacu dalam Awaludin 2009):

1. Web metadata memberikan informasi tentang web resources dan sistem yang menggunakannya.

2. Aplikasi yang membutuhkan model informasi terbuka (misal: jadwal aktifitas, proses-proses organisasi, dan lain-lain).

3. Informasi yang dapat diproses oleh mesin (application data) seperti yang World Wide Web (WWW) lakukan pada hypertext: memungkinkan data untuk diproses diluar lingkungan dimana data tersebut dibuat, dalam sebuah kerangka yang bekerja pada skala internet.

4. Internetworking antar aplikasi mengkombinasikan data dari beberapa aplikasi untuk menghasilkan informasi baru.

5. Pemrosesan yang ter-automatisasi atas informasi web dengan software agents: web berubah dari informasi yang hanya dimengerti oleh manusia menjadi sebuah proses yang saling bekerja sama dalam jaringan world web. RDF memberikan keseragaman bahasa untuk proses-proses tersebut.

RDF didesain untuk merepresentasikan informasi dalam batasan yang minimal dan fleksibel. RDF dapat digunakan di dalam aplikasi yang terisolasi dimana format yang didesain secara individu lebih langsung dan mudah untuk dimengerti, tetapi RDF secara umum memberikan nilai tambah yang lebih besar karena bersifat sharing. Nilai informasi tersebut kemudian meningkat karena RDF dapat diakses oleh banyak aplikasi melalui internet (Pramudiono 2006, diacu dalam Awaludin 2009).


(16)

RDF memiliki kemiripan dengan pemodelan data semantik karena keduanya membicarakan tentang semantik. Pada pemodelan data semantik, terdapat sebuah subjek yang memiliki value (objek) untuk predikat tertentu. Perbedaanya adalah RDF, memiliki hubungan M-to-N. Sementara pemodelan data semantik, hubungannya adalah N-to-1. Perbedaan kedua, pada RDF sebuah properti dapat menjadi sub-properti dari sub-properti yang lain. Konsep seperti ini tidak diimplementasikan pada database, dan memungkinkan spesialisasi atas properti. Yang terakhir, RDF mengijinkan sebuah resource di instantiasikan oleh lebih dari satu kelas atau properti (Dumbill 2000, diacu dalam Awaludin 2009).

RDF menggunakan graf untuk merepresentasikan kumpulan pernyataan. Simpul dalam graf mewakili suatu entitas, dan tanda panah mewakili relasi antar entitas. Sekumpulan triples disebut dengan RDF graph, dimana setiap triple merepresentasikan sebuah pernyataan hubungan antara hal-hal yang dinotasikan oleh node yang ditujunya (Provoost and Bornier 2006, diacu dalam Awaludin 2009). Ide dasar dari RDF adalah bagaimana kita dapat membuat pernyataan mengenai sebuah resource Web dalam bentuk ekpresi “Subjet-Predikat-Objek”. Dalam terminology RDF, S-P-O ini seringkali disebut dengan istilah N-triple. Subjek mengacu pada resource yang ingin dideksripsikan. Predikat menggambarkan kelakuan atau karakteristik dari resource tersebut dan mengekspresikan hubungan antara subjek dan objek.

2.3.3 Skema Resource Description Framework (RDFS)

Skema RDF merupakan model primitif untuk mengatur objek web dalam hirarki. Kunci primitif adalah kelas dan properti, subclass dan hubungan properti sub,


(17)

domain dan pembatasan jangkauan (Antoniou and Harmelen 2008). Skema RDF menyediakan tipe untuk sistem RDF. Skema RDF memilki teknologi lebih maju dibandingkan dengan RDF karena memberikan cara membangun model objek dari data aktual yang direferensikan dan memberikan penjelasan mengenai hal-hal yang bermakna (RDFS 2004, diacu dalam Cardoso 2007).

Skema RDF didefinisikan sebagai bahasa representasi extensible knowledge yang menyediakan elemen dasar dalam pendeskripsian ontologi. Pendeskripsian tersebut disebut sebagai RDF vocabularies yang digunakan untuk menjelaskan struktur dari resource RDF. Ekspresi dasar RDF (Indikawati et al. 2010) :

1. Rdfs:resource

Semua resource RDF adalah instance dari rdfs:resource. Rdfs:resource merepresentasikan semua resource RDF yang disebut resources.

2. Rdfs:Class

Sebuah resource dapat didefinisikan sebagai kelas dengan membuatnya menjadi instance dari rdfs:Class.

3. Rdfs:Property

Semua resource RDF yang berupa property adalah instance dari rdfs:property. 4. Rdf:type

Mengindikasikan bahwa sebuah resource adalah instance sebuah kelas. Sebuah resource adalah instance sebuah kelas tertentu ketika nilai dari rdf:type nya adalah kelas tersebut.

5. Rdfs:subclassOf

Mengindikasikan bahwa sebuah kelas adalah sub kelas dari kelas yang lain. Hal ini menjelaskan hubungan subset atau superset antar kelas. Properti ini bersifat transitive, artinya, jika terdapat hubungan antara kelas pertama dengan kelas kedua, serta kelas kedua dengan kelas ketiga, maka kelas pertama dengan kelas


(18)

ketiga juga berhubungan. Sebuah kelas dapat menjadi sub kelas dari satu atau lebih kelas.

6. Rdfs:subPropertyOf

Mengindikasikan bahwa sebuah properti adalah sub properti dari properti yang lain. Hal ini menjelaskan hubungan subset atau superset antar properti. Properti ini bersifat transitive, artinya, jika terdapat hubungan antara properti pertama dengan properti kedua, serta properti kedua dengan properti ketiga, maka properti pertama dengan properti ketiga juga berhubungan.

7. Rdfs:range

Mengindikasikan tentang sekumpulan resource atau literal yang dapat menjadi value sebuah properti. Jika value dari properti telah didefinisikan, maka value properti tersebut hanya pada range yang ditentukan. Jika tidak, value sebuah properti menjadi tidak terbatas.

8. Rdfs:domain

Mengindikasikan sekumpulan resource pada sebuah properti untuk dapat digunakan. Jika domain kelas sebuah properti telah didefinisikan, maka properti tersebut hanya dapat digunakan oleh domain kelas tersebut, jika tidak, properti tersebut bebas digunakan oleh resource manapun.

2.3.4 Ontology Web Language (OWL)

Ontology Web Language (OWL) dikembangkan oleh kelompok kerja web ontologi W3C dan dimaksudkan untuk menjadi penerus dari DAML + OIL. OWL adalah representasi pengetahuan yang paling ekspresif untuk web semantik sejauh ini (Daconta et al. 2004). OWL dirancang untuk digunakan oleh aplikasi yang perlu memproses isi informasi bukan hanya menyajikan informasi kepada manusia. OWL memfasilitasi interpretabilitas mesin yang lebih besar dari konten web yang mana


(19)

didukung oleh XML, RDF, dan RDF Schema (RDF-S) dengan memberikan kosakata tambahan bersama dengan semantik formal.OWL menyediakan tiga sub bahasa yang berbeda tingkatan bahasanya yang dirancang untuk berbagai kebutuhan tertentu dari pengguna, antara lain (w3c, 2004):

1. OWL Lite

OWL Lite mendukung bagi pengguna yang memerlukan hirarki klasifikasi dan batasan yang sederhana. Sebagai contoh, hanya mendukung batasan cardinality, dengan nilai untuk cardinality sebesar 0 atau 1. OWL Lite menyediakan suatu alur migrasi cepat untuk thesaury dan taksonomi lain. OWL Lite juga mempunyai suatu kompleksitas formal yang lebih rendah dibanding OWL DL. OWL Lite didesain untuk kemudahan penerapan dan untuk memberikan pengguna dengan fungsi subset yang akan membawa pengguna ke permulaan dalam penggunaan OWL.

2. OWL DL

OWL DL mendukung pengguna yang menginginkan ekspresi yang maksimum disaat menahan perhitungan yang lengkap (semua kesimpulan dapat diperhitungkan) dan ketepatan (semua perhitungan diselesaikan tepat waktu). OWL DL meliputi semua bahasa kontruksi dalam OWL, tetapi hanya dapat digunakan di bawah batasan tertentu. OWL DL dirancang untuk mendukung deskripsi logikal dari segmen bisnis dan untuk menyediakan bahasa subset yang memberikan properti untuk perhitungan dalam sebuah sistem.

3. OWL Full

OWL Full sangat berguna untuk pengguna yang menginginkan ekspresi maksimum dan kebebasan sintaksis dari RDF tanpa ada jaminan perhitungan.


(20)

OWL Full memperbolehkan ontologi untuk meningkatkan arti dari vocabulary yang belum digambarkan (RDF atau OWL).

Menurut W3C (2004), Pengembang ontologi mengadopsi OWL harus mempertimbangkan sub-bahasa yang paling sesuai dengan kebutuhan mereka. Pilihan antara OWL Lite dan OWL DL tergantung pada sejauh mana pengguna membutuhkan konstruksi yang lebih ekspresif disediakan oleh OWL DL. Pilihan antara OWL DL dan OWL Full terutama tergantung pada sejauh mana pengguna membutuhkan fasilitas meta-model RDF Schema (misalnya mendefinisikan kelas kelas, atau melampirkan properti untuk kelas). Bila menggunakan OWL Full dibandingkan dengan OWL DL, penalaran dukungan kurang diprediksi sejak OWL lengkap implementasi penuh saat ini tidak ada.

OWL Full dapat dilihat sebagai perpanjangan RDF, OWL Lite sementara dan OWL DL dapat dipandang sebagai perluasan dari pandangan terbatas RDF. Setiap dokumen OWL (Lite, DL, Full) adalah dokumen RDF, dan setiap dokumen RDF adalah OWL dokumen lengkap, tetapi hanya beberapa dokumen RDF akan menjadi OWL Lite hukum atau OWL DL dokumen. Karena itu, hati-hati harus diambil ketika seorang pengguna ingin bermigrasi dokumen RDF ke OWL. Ketika ekspresi dari OWL DL atau OWL Lite dianggap tepat, beberapa tindakan pencegahan harus diambil untuk memastikan bahwa dokumen RDF asli sesuai dengan kendala tambahan yang dikenakan oleh OWL DL dan OWL Lite. Antara lain, setiap URI yang digunakan sebagai nama kelas harus secara eksplisit menegaskan untuk menjadi tipe burung hantu: Kelas (dan juga untuk properti), setiap individu harus ditegaskan milik setidaknya satu kelas (bahkan jika hanya OWL: Hal) , URI yang digunakan untuk


(21)

kelas, properti dan individu harus saling disjoint. Rincian ini dan kendala lainnya pada OWL DL dan OWL Lite dijelaskan dalam E lampiran Referensi OWL

Gambar II-2. Subclass Relationships antara OWL dan RDF/RDFS Sumber : Antoniou and Harmelen 2008

2.3.5 SPARQL

Pemetaan dalam query SPARQL akan mempengaruhi seberapa cepat aplikasi akan menampilkan hasil pencariannya (Wijayanto et al., 2013). SPARQL menyediakan bahasa query standar untuk RDF grafik (Segaran et al. 2009). Seperti SQL dan XQuery, bahasa SPARQL menyediakan antarmuka deklaratif untuk berinteraksi dengan database RDF.

SPARQL merupakan bahasa query yang dirancang untuk mengumpulkan data dari berbagai sumber dan mempercepat pengembangan aplikasi web 2.0, menciptakan sebuah layanan web standar untuk mengajukan pertanyaan (Kanimozhi and Christy 2014).

SPARQL dapat dijalankan dengan menggunakan beberapa tools dan APIs seperti: ARQ, Rasqal, RDF::Query, twingql, Pellet, dan KAON2 (Ibrahim, 2007). Tools tersebut memiliki API yang membuat pemrogram untuk memanipulasi hasil


(22)

query dengan berbagai aplikasi yang ada. Namun, sebagai standar dapat menggunakan SPARQL Query Results XML Format (Ibrahim, 2007) yang direkomendasikan oleh W3C.


(1)

domain dan pembatasan jangkauan (Antoniou and Harmelen 2008). Skema RDF menyediakan tipe untuk sistem RDF. Skema RDF memilki teknologi lebih maju dibandingkan dengan RDF karena memberikan cara membangun model objek dari data aktual yang direferensikan dan memberikan penjelasan mengenai hal-hal yang bermakna (RDFS 2004, diacu dalam Cardoso 2007).

Skema RDF didefinisikan sebagai bahasa representasi extensible knowledge yang menyediakan elemen dasar dalam pendeskripsian ontologi. Pendeskripsian tersebut disebut sebagai RDF vocabularies yang digunakan untuk menjelaskan struktur dari resource RDF. Ekspresi dasar RDF (Indikawati et al. 2010) :

1. Rdfs:resource

Semua resource RDF adalah instance dari rdfs:resource. Rdfs:resource merepresentasikan semua resource RDF yang disebut resources.

2. Rdfs:Class

Sebuah resource dapat didefinisikan sebagai kelas dengan membuatnya menjadi instance dari rdfs:Class.

3. Rdfs:Property

Semua resource RDF yang berupa property adalah instance dari rdfs:property. 4. Rdf:type

Mengindikasikan bahwa sebuah resource adalah instance sebuah kelas. Sebuah resource adalah instance sebuah kelas tertentu ketika nilai dari rdf:type nya adalah kelas tersebut.

5. Rdfs:subclassOf

Mengindikasikan bahwa sebuah kelas adalah sub kelas dari kelas yang lain. Hal ini menjelaskan hubungan subset atau superset antar kelas. Properti ini bersifat transitive, artinya, jika terdapat hubungan antara kelas pertama dengan kelas kedua, serta kelas kedua dengan kelas ketiga, maka kelas pertama dengan kelas


(2)

ketiga juga berhubungan. Sebuah kelas dapat menjadi sub kelas dari satu atau lebih kelas.

6. Rdfs:subPropertyOf

Mengindikasikan bahwa sebuah properti adalah sub properti dari properti yang lain. Hal ini menjelaskan hubungan subset atau superset antar properti. Properti ini bersifat transitive, artinya, jika terdapat hubungan antara properti pertama dengan properti kedua, serta properti kedua dengan properti ketiga, maka properti pertama dengan properti ketiga juga berhubungan.

7. Rdfs:range

Mengindikasikan tentang sekumpulan resource atau literal yang dapat menjadi value sebuah properti. Jika value dari properti telah didefinisikan, maka value properti tersebut hanya pada range yang ditentukan. Jika tidak, value sebuah properti menjadi tidak terbatas.

8. Rdfs:domain

Mengindikasikan sekumpulan resource pada sebuah properti untuk dapat digunakan. Jika domain kelas sebuah properti telah didefinisikan, maka properti tersebut hanya dapat digunakan oleh domain kelas tersebut, jika tidak, properti tersebut bebas digunakan oleh resource manapun.

2.3.4 Ontology Web Language (OWL)

Ontology Web Language (OWL) dikembangkan oleh kelompok kerja web ontologi W3C dan dimaksudkan untuk menjadi penerus dari DAML + OIL. OWL adalah representasi pengetahuan yang paling ekspresif untuk web semantik sejauh ini (Daconta et al. 2004). OWL dirancang untuk digunakan oleh aplikasi yang perlu memproses isi informasi bukan hanya menyajikan informasi kepada manusia. OWL memfasilitasi interpretabilitas mesin yang lebih besar dari konten web yang mana


(3)

didukung oleh XML, RDF, dan RDF Schema (RDF-S) dengan memberikan kosakata tambahan bersama dengan semantik formal.OWL menyediakan tiga sub bahasa yang berbeda tingkatan bahasanya yang dirancang untuk berbagai kebutuhan tertentu dari pengguna, antara lain (w3c, 2004):

1. OWL Lite

OWL Lite mendukung bagi pengguna yang memerlukan hirarki klasifikasi dan batasan yang sederhana. Sebagai contoh, hanya mendukung batasan cardinality, dengan nilai untuk cardinality sebesar 0 atau 1. OWL Lite menyediakan suatu alur migrasi cepat untuk thesaury dan taksonomi lain. OWL Lite juga mempunyai suatu kompleksitas formal yang lebih rendah dibanding OWL DL. OWL Lite didesain untuk kemudahan penerapan dan untuk memberikan pengguna dengan fungsi subset yang akan membawa pengguna ke permulaan dalam penggunaan OWL.

2. OWL DL

OWL DL mendukung pengguna yang menginginkan ekspresi yang maksimum disaat menahan perhitungan yang lengkap (semua kesimpulan dapat diperhitungkan) dan ketepatan (semua perhitungan diselesaikan tepat waktu). OWL DL meliputi semua bahasa kontruksi dalam OWL, tetapi hanya dapat digunakan di bawah batasan tertentu. OWL DL dirancang untuk mendukung deskripsi logikal dari segmen bisnis dan untuk menyediakan bahasa subset yang memberikan properti untuk perhitungan dalam sebuah sistem.

3. OWL Full

OWL Full sangat berguna untuk pengguna yang menginginkan ekspresi maksimum dan kebebasan sintaksis dari RDF tanpa ada jaminan perhitungan.


(4)

OWL Full memperbolehkan ontologi untuk meningkatkan arti dari vocabulary yang belum digambarkan (RDF atau OWL).

Menurut W3C (2004), Pengembang ontologi mengadopsi OWL harus mempertimbangkan sub-bahasa yang paling sesuai dengan kebutuhan mereka. Pilihan antara OWL Lite dan OWL DL tergantung pada sejauh mana pengguna membutuhkan konstruksi yang lebih ekspresif disediakan oleh OWL DL. Pilihan antara OWL DL dan OWL Full terutama tergantung pada sejauh mana pengguna membutuhkan fasilitas meta-model RDF Schema (misalnya mendefinisikan kelas kelas, atau melampirkan properti untuk kelas). Bila menggunakan OWL Full dibandingkan dengan OWL DL, penalaran dukungan kurang diprediksi sejak OWL lengkap implementasi penuh saat ini tidak ada.

OWL Full dapat dilihat sebagai perpanjangan RDF, OWL Lite sementara dan OWL DL dapat dipandang sebagai perluasan dari pandangan terbatas RDF. Setiap dokumen OWL (Lite, DL, Full) adalah dokumen RDF, dan setiap dokumen RDF adalah OWL dokumen lengkap, tetapi hanya beberapa dokumen RDF akan menjadi OWL Lite hukum atau OWL DL dokumen. Karena itu, hati-hati harus diambil ketika seorang pengguna ingin bermigrasi dokumen RDF ke OWL. Ketika ekspresi dari OWL DL atau OWL Lite dianggap tepat, beberapa tindakan pencegahan harus diambil untuk memastikan bahwa dokumen RDF asli sesuai dengan kendala tambahan yang dikenakan oleh OWL DL dan OWL Lite. Antara lain, setiap URI yang digunakan sebagai nama kelas harus secara eksplisit menegaskan untuk menjadi tipe burung hantu: Kelas (dan juga untuk properti), setiap individu harus ditegaskan milik setidaknya satu kelas (bahkan jika hanya OWL: Hal) , URI yang digunakan untuk


(5)

kelas, properti dan individu harus saling disjoint. Rincian ini dan kendala lainnya pada OWL DL dan OWL Lite dijelaskan dalam E lampiran Referensi OWL

Gambar II-2. Subclass Relationships antara OWL dan RDF/RDFS Sumber : Antoniou and Harmelen 2008

2.3.5 SPARQL

Pemetaan dalam query SPARQL akan mempengaruhi seberapa cepat aplikasi akan menampilkan hasil pencariannya (Wijayanto et al., 2013). SPARQL menyediakan bahasa query standar untuk RDF grafik (Segaran et al. 2009). Seperti SQL dan XQuery, bahasa SPARQL menyediakan antarmuka deklaratif untuk berinteraksi dengan database RDF.

SPARQL merupakan bahasa query yang dirancang untuk mengumpulkan data dari berbagai sumber dan mempercepat pengembangan aplikasi web 2.0, menciptakan sebuah layanan web standar untuk mengajukan pertanyaan (Kanimozhi and Christy 2014).

SPARQL dapat dijalankan dengan menggunakan beberapa tools dan APIs seperti: ARQ, Rasqal, RDF::Query, twingql, Pellet, dan KAON2 (Ibrahim, 2007). Tools tersebut memiliki API yang membuat pemrogram untuk memanipulasi hasil


(6)

query dengan berbagai aplikasi yang ada. Namun, sebagai standar dapat menggunakan SPARQL Query Results XML Format (Ibrahim, 2007) yang direkomendasikan oleh W3C.