• Tidak ada hasil yang ditemukan

BAB II LANDASAN TEORI

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB II LANDASAN TEORI"

Copied!
36
0
0

Teks penuh

(1)

Bab ini berisi rangkuman informasi yang dihimpun dari berbagai pustaka yang berisi uraian mengenai semantic web, pembangunan ontologi, representasi ontologi, tools pembangun ontologi dan kesimpulan dari studi literatur yang telah dilakukan 2.1 Semantic web

Pada subbab ini akan dijelaskan mengenai web, sejarah semantic web, pengertian semantic web , karakteristik semantic web, arsitektur semantic web, komponen semantic web dan query SPARQL.

2.1.1 Web

The World Wide Web atau yang sering disebut dengan Web tidaklah identik dengan internet tetapi merupakan bagian yang paling menonjol dari internet yang dapat disebut seperti sebuah sistem sosial teknologi untuk berinteraksi dengan manusia dalam sebuah jaringan teknologi (Aghaei et al, 2012).

Web adalah sebuah halaman internet yang dapat menampilkan informasi berupa teks, gambar, suara, maupun video, memiliki link yang dapat menghubungkan satu halaman dengan halaman internet yang lain dan dapat diakses oleh pengguna internet. Web menjadi sumber data yang sangat besar dan sangat berharga untuk setiap pengguna karena di dalam web kumpulan dokumen saling terhubung dan dapat diakses melalui koneksi internet (Kapoor & Sharma, 2010).

2.1.2 Perkembangan Web

Web adalah transformasi terbesar dari sebuah susunan informasi yang mana idenya diperkenalkan pertama kali pada tahun 1989 oleh Tim Berners-Lee. Sudah sangat banyak kemajuan yang telah dibuat terkait dengan web dan juga teknologi dalam dua dekade terakhir ini (Aghaei et al, 2012). Begitu juga dengan teknologi web pada internet juga semakin lama semakin berkembang. Perkembangan web terbagi menjadi beberapa bagian seperti dibawah ini:

(2)

1. Web 1.0

Pada tahun 1989, Tim Burners-Lee menyarankan untuk membuat sebuah global hypertext space yang mana setiap jaringan yang ingin mengakses informasi akan diacukan oleh sebuah Universal Document Identifiier(UDI). Adapun yang menjadi tujuan dari web itu adalah untuk menciptakan sebuah ruang informasi yang terbuka untuk umum yang mana setiap orang akan saling berkomunikasi dengan cara berbagi informasi (Aghaei et al, 2012).

Web 1.0 merupakan teknologi web yang hanya bisa readonly saja. Web 1.0 bersifat statik sehingga komunikasi yang terjadi adalah komunikasi satu arah saja. Web 1.0 terdiri dari static HTML yang mana dapat di update secara berkala. Tujuan pembuatan dari web ini sendiri adalah untuk menyebarkan informasi kepada semua orang kapan saja dan dimana saja yang akan terkoneksi secara online. Adapun struktur utama dari web 1.0 adalah HTTP, HTML, dan URL (Aghaei et al, 2012).

2. Web 2.0

Web 2.0 muncul pertama kali pada tahun 2004 oleh Dale Dougherty yang merupakan vice-president dari O’Reilly Media. Teknologi web generasi kedua ini mengedepankan kolaborasi dan berbagi informasi secara online. Web 2.0 dikenal sebagai web yang interaktif karena user dapat membaca dan juga menulis pada web 2.0 ini sehingga menciptakan komunikasi dua arah. Pengadaan konten dari sebuah web tidak hanya dilakukan oleh orang- orang yang mengerti HTML, namun pengguna dapat menuliskan konten mereka sendiri, seperti blogger, wikis, mashups, wordpress, dan lain-lain (Aghaei et al, 2012). Orang yang membangun web 2.0 menggunakan tiga komponen dasar untuk membangun web 2.0 ini yaitu Asynchronous JavaScript and XML (AJAX), Flex, dan Google Toolkit.

(3)

John Markoff dari New York Times berpendapat bahwa Web 3.0 merupakan generasi ketiga dari web pada tahun 2006. Adapun yang menjadi ide dasar dari web 3.0 ini adalah untuk mendefinisikan struktur data yang saling terhubung yang bertujuan untuk penemuan yang lebih efektif, otomasisasi, terintegrasi, dan dapat digunakan dari aplikasi yang berbeda-beda. Web 3.0 mencoba untuk menghubungkan, mengintegrasikan, dan menganalisa data dari berbagai jenis kumpulan data untuk mendapatkan data dan informasi baru yang lebih bermakna. Web 3.0 disebut juga semantic web yaitu web yang dianggap memiliki kecerdasan karena dapat memahami kebutuhan pengguna berdasarkan aktivitasnya di internet. Pada Web 1.0 dan Web 2.0, seringkali informasi yang diberikan kepada pengguna itu tidak sesuai dengan permintaan pengguna. Oleh karena itu, para ahli bersepakat untuk melakukan suatu revolusi di dunia Internet yang menyatukan aktivitas pengguna sehingga web dapat memberikan informasi yang lebih akurat dan informatif kepada pengguna (Aghaei et al, 2012). Dan untuk Semantic Web yang akan dibangun pada Tugas Akhir ini menggunakan Web 3.0.

4. Web 4.0

Web 4.0 masih berada dalam ide yang tetap dalam proses pengerjaan dan tidak ada pengertian pasti bagaimana wujud dari web ini nantinya. Web 4.0 ini juga diketahui sabagai sebuah web symbiotic. Adapun ide dari web symbiotic ini nantinya adalah adanya interaksi antara manusia dan mesin yang mana akan saling menguntungkan. Akan sangat memungkinkan untuk membangun tampilan yang lebih kuat seperti tampilan yang dapat membaca pikiran pada web 4.0 ini nantinya. Dalam pengertian yang lebih sederhana mesin akan dengan sangat pintar membaca isi dari web dan bereaksi melakukan tindakan lain seperti melakukan pencarian lain dengan kecepatan dan performa yang sangat baik. Meskipun belum ada ide pasti tentang web 4.0 dan bagaimana teknologinya nanti, tetapi sangatlah jelas bahwa web akan sangat maju dengan

(4)

menggunakan kecerdasan buatan dan akan menjadi sebuah web yang sangat bagus (Aghaei et al, 2012).

2.1.3 Pengertian Semantic Web

Semantic Web merupakan ide dari Tim Berners Lee penemu dari WWW, URIs, HTTP dan HTML. Tim Berners Lee mendefinisikan Semantic Web sebagai sebuah pengembangan dari web dimana informasi sudah didefinisikan dengan baik dan orang-orang dapat bekerjasama dengan menggunakan komputer dengan sangat baik. Semantic Web lebih dikenal dengan web 3.0 yang merupakan cara yang sangat efisien dalam menampilkan data dalam World Wide Web atau sebagai sebuah database yang terhubung secara global.

Selain itu menurut Tim Berners Lee, semantic web adalah sebuah teknologi yang bertujuan untuk membuat arti data dalam sebuah web dapat dimengerti tidak hanya oleh manusia melainkan juga oleh komputer (machine-readable data). Sedangkan menurut John Markoff, Web 3.0 atau yang lebih dikenal dengan semantic web adalah sekumpulan teknologi yang menawarkan cara baru yang efisien dalam membantu komputer mengorganisasi dan menarik kesimpulan data secara online (Aghaei et al, 2012).

Semantic web merupakan bagian dari teknologi web yang ada saat ini, dimana website tidak hanya dimengerti oleh manusia, tetapi juga dapat dipahami oleh mesin (machine readable). Semantic web pada zaman sekarang ini dimaksudkan dapat memandu web yang ada sekarang ini ke posisi dimana akan lebih berguna untuk digunakan oleh semua manusia (Kapoor & Sharma, 2010).

2.1.4 Arsitektur Semantic Web

Arsitektur semantic web lebih dikenal dengan Semantic Web Layered Architecture (Yadagiri & Ramesh, 2013). Gambar 1 menunjukkan arsitektur Semantic Web yang direkomendasikan oleh Yadagiri & Ramesh

(5)

Gambar 1 Arsitektur Semantic Web

Setiap lapisan dibangun oleh lapisan di bawahnya. Pada bagian dasar, data dibuat dalam bentuk XML. Semakin ke atas, maka tingkat kompleksitasnya makin besar dan spesifik. Itu sebabnya, lapisan di atas sangat bergantung pada lapisan di bawah. Namun sebaliknya, lapisan di bawah tidak bergantung pada lapisan di atasnya, berikut ini merupakan penjelasan dari Arsitektur Semantic Web diatas (Aghaei et al, 2012).

2.1.4.1 Layer 1: Unicode dan Uniform Resources Identifier (URI)

Unicode adalah pemberian nomor unik untuk setiap karakter, platform yang independen, program ataupun bahasa pada computer processing. Unicode dan URI digunakan untuk membangun XML sebagai dasar dari semantic web. Unicode digunakan untuk memampukan pembuatan XML yang universal dengan karakter internasional. Uniform Resource Identifier (URI) adalah sebuah identifier yang berfungsi sebagai sarana untuk mengidentifikasi alamat sebuah resource. URI memastikan penggunaan sekumpulan karakter yang telah disepakati secara internasional dan menyediakan alat untuk mengidentifikasi obyek di semantic web. URI digunakan sebagai penanda unik pada semantic web (Aghaei et al, 2012).

(6)

2.1.4.2 Layer 2: XML, XML Schema dan Namespaces

XML adalah sebuah markup language yang digunakan untuk membuat dokumen yang terstruktur. XML adalah standard untuk melakukan pertukaran data melalui jaringan antara organisasi internal maupun eksternal, terutama melalui web.

XML Schema digunakan untuk mendefinisikan skema dari sebuah dokumen XML. Namespaces berfungsi untuk menyediakan cara untuk menggunakan markup dari beberapa source sebagai format pertukaran data, memastikan bahwa ada sintaks yang umum digunakan di semantic web. XML namespace memungkinkan untuk menentukan kosakata markup yang berbeda dalam satu dokumen XML (Aghaei et al, 2012).

2.1.4.3 Layer 3: RDF dan RDF Schema

Resource Description Framework (RDF) adalah sebuah model data sederhana yang menggunakan URI untuk mengidentifikasi resource yang berbasis web dan menggambarkan hubungan antara sumber daya dalam hal properti dan nilai yang ada. RDF digunakan untuk mengekspresikan semantik dari data yang ada dan ditulis dalam format RDF. RDF membentuk data grafik dengan hubungan antara objek (sumber daya), atribut (properti), dan nilai (sumber daya) sedangkan RDF Schema mendefinisikan kosakata model RDF. Ini menyediakan mekanisme untuk menggambarkan sifat domain spesifik dan kelas sumber daya yang dapat diterapkan terhadap suatu property (Aghaei et al, 2012).

2.1.4.4 Layer 4: Ontology Vocabulary

Ontologi merupakan teori tentang makna dari suatu objek, properti dari suatu objek serta relasi dari objek tersebut dalam suatu domain. Ontologi menyediakan sebuah vocabulary yang umum yang digunakan dalam komunikasi antara manusia dan aplikasi computer. Ontologi terdiri satu set istilah pengetahuan, termasuk kosa kata, interkoneksi semantik, aturan sederhana inferensi dan logika untuk beberapa topik tertentu. Ontologi yang diterapkan ke sebuah web menciptakan semantic web (Aghaei et al, 2012).

(7)

2.1.4.5 Layer 5: Logic

Logic merupakan dasar untuk merepresentasikan ilmu pengetahuan. Logic dapat mengubah makna yang ambigu menjadi statement yang memiliki logika. Logic dapat direpresentasikan dengan melakukan pengambilan data dari metadata yang ada dengan menggunakan query SPARQL, sehingga hasil pengambilan data dari metadata dapat memberikan informasi dengan logic yang benar sesuai dengan statement dari query yang dibuat(Aghaei et al, 2012).

2.1.4.6 Layer 6: Proof

Proof digunakan untuk menjamin keabsahan dari statement yang spesifik. Sebuah instance yang terdapat dalam proof language pada umumnya terdiri dari kesimpulan yang dapat digunakan untuk mendapatkan keabsahan informasi (Aghaei et al, 2012).

2.1.4.7 Layer 7: Trust

Trust merupakan mekanisme untuk membangun trust level untuk informasi yang diperoleh yang bergantung pada sumber informasi, integritas dari informasi, dan autentikasi informasi (Aghaei et al, 2012).

2.1.4.8 Vertical Layer: Digital Signature

Teknik kriptografi untuk proses autentikasi, jarak, verifikasi terhadap informasi yang ambigu yang bisa terjadi, sehingga sistem dalam pengiriman dan pertukaran informasi dalam sistem lebih aman dan terpercaya proof, trust and Digital Signature digunakan untuk meningkatkan bahasa ontologi lebih lanjut dan untuk memungkinkan penulisan pengetahuan deklaratif khusus aplikasi. Lapisan proof melibatkan proses deduktif aktual serta representasi bukti dalam bahasa web dan validasi bukti. Lapisan trust muncul melalui penggunaan tanda tangan digital dan jenis lain dari pengetahuan, berdasarkan rekomendasi oleh agen terpercaya atau wisatawan dan sertifikasi lembaga dan badan-badan konsumen (Aghaei et al, 2012).

(8)

2.1.5 Komponen Semantic Web

Adapun komponen-komponen Semantic Web adalah sebagai berikut ini (Yadagiri & Ramesh, 2013):

2.1.5.1 URI

URI merupakan nama unik yang diberikan untuk mengidentifikasi sebuah sumber daya didalam sebuah jaringan dengan protokol yang sangat spesifik dan yang digunakan untuk mengidentifikasi sebuah resource pada World Wide Web (WWW). Ada 2 jenis tipe URI, yaitu Uniform Resource Locators (URLs) dan Uniform Resource Name (URNs). URLs mengidentifikasi resource darimana diakses. Misalnya, “http://www.example.com/index.html” mengidentifikasi sebuah halaman HTML pada server dengan nama Domain Name System (DNS) www.example.com dan diakses dengan menggunakan protokol HTTP. Sebuah URN membuat nama dari sebuah domain yang unik dan persistent pada sebuah resource. Sintaks generik dari sebuah skema URI dapat di implementasikan kedalam semua subset.

Dalam membuat semantic web, diperlukan XML sebagai sintaks pada layar dasar yang membangunnya. Teknologi XML yang dibangun adalah Unicode characters dan URIs. URIs digunakan sebagai penanda yang unik untuk konsep pada semantic web. Semantic web akan dikenal dengan sebuah URI yang diuraikan, ditemukan dan diakses dengan menggunakan web protocols (Yadagiri & Ramesh, 2013).

2.1.5.2 XML

eXtensible Markup Language (XML) merupakan perluasan dari HTML, sebuah teknologi populer yang digunakan untuk struktur dasar dan juga sintaks untuk sebuah konten dalam sebuah dokumen web. XML sangat memungkinkan untuk format data exstensible tidak seperti HTML yang inextensible dan kaku tetapi tidak memberikan batasan yang semantic. Memiliki kemampuan dalam menyederhanakan penyimpanan data dan mekanisme yang baik dalam berbagi. Memiliki kosakata sendiri, element, dan juga atribut yang dapat didefinisikan dengan menggunakan Document Type Defenition (DTDs). Selain itu ada juga eXtensible Stylesheet

(9)

Language Transformation (XSLT) adalah sebuah bahasa yang bisa memecahkan sebagian masalah dari XML dimana ketika data dibagikan antara 2 aplikasi atau untuk interoperabilitas. Masalah klasik retro-konversi dari sebuah MARC ke MARC yang lain dapat diatasi jika unsur-unsur, sumber data, dan target struktur lainnya memiliki satu-satu hubungan untuk berbagi (Yadagiri & Ramesh, 2013).

XML memiliki beberapa fitur karakter dibawah ini:

1. XML adalah sebuah bahasa penanda seperti HTML 2. XML didesain untuk mendeskripsikan data.

3. Tag XML tidak terdefinisikan, salah satu dapat mendefinisikan tag nya kita. 4. XML dapat digunakan untuk membuat sebuah bahasa baru.

<book>

<title>’Prolegomena Library Clasification’</title> <author> S. R. Ranganathan </author>

<book>

2.1.5.3 XML Schema

XML Schema menawarkan bahasa yang lebih kaya secara signifikan untuk mendefinisikan struktur dokumen XML. Sebuah XML Schema adalah sebuah elemen yang tag pembukanya dapat dilihat pada Gambar 2.

<xsd:schemaxmlns:xsd = http://www.w3.org/2000/10/XMLSchema version=”1.0” >

Gambar 2 Elemen Tag Pembuka XML Schema

Elemen – elemen skema pada XML Schema adalah sebagai berikut: 1. Element Types

Menentukan tipe dan kondisi suatu elemen. Sintaks dari element types adalah sebagai berikut:

(10)

Elemen ini dapat juga memiliki jumlah dari attribute yang optional seperti types, type = “…” atau cardinality constraints.

 minOccurs = “x”, dimana x adalah bilangan real.

maxOccurs = ”x”, dimana x adalah bilangan real atau unbounded. Contoh element types dari XML Schema dapat dilihat pada Gambar 3.

<element name = “email”/>

<element name = “head” minOccurs=”1” maxOccurs=”1”/> <element name = “to” minOccurs=”1”>

Gambar 3 Element Types XML Schema

2. Attribute Types

Menentukan tipe dan kondisi suatu atribut. Sintaks dari attribute types adalah sebagai berikut:

<attribute name = “…”/>

Atribut ini dapat juga memiliki jumlah dari attribute yang optional seperti types. Contoh attribute types dari XML Schema dapat dilihat pada Gambar 4.

<attribute name = “id” type =”ID” use=”required”/>

<element name = “speaks” type=”language” use=”default” value = “en”/>

Gambar 4 Attribute Types XML Schema

3. Data Types

XML Schema menyediakan banyak tipe data untuk mendefinisikan data. Ada beberapa variasi dari built-in data types yaitu:

1. Numerical data types, mencakup integer, short, byte, long, float dan decimal.

2. String data types, meliputi string, ID, IDREF, CDATA, language.

3. Date and time data types, meliputi time, date, month, year (Kapoor & Sharma, 2010).

(11)

Contoh data types dari XML Schema dapat dilihat pada Gambar 5. <complexType name = ”lecturerType”>

<sequence>

<element name = “firstname” type=”string” minOccurs =”0” maxOccurs=”unbounded”/>

<element name = “last name” type=”string”/> </sequence>

<attribute name = “title” type=”string” use=”optional”/> </complexType>

Gambar 5 Data Types XML Schema 2.1.5.4 RDF and RDF Schema

RDF adalah bahasa sederhana yang digunakan untuk merepresentasikan metadata dan untuk membuat sebuah standard data model yang mengacu kedalam sebuah resource. Namun, walaupun sering disebut sebagai bahasa, RDF sebenarnya adalah sebuah model data. RDF menggunakan sintaks XML untuk dapat melakukan pertukaran data. RDF merupakan bagian utama dari semantic web yaitu format untuk menyediakan informasi dalam bentuk yang dapat dibaca oleh mesin. Menggunakan URL dan string teks sebagai istilah, RDF merupakan sebuah model sederhana untuk mendeskripsikan hubungan antar resources. Dengan format RDF, memungkinkan untuk mengkombinasikan dua dokumen XML menjadi satu dan mendeskripsikan relasi di dalam dokumen tersebut (Yadagiri & Ramesh, 2013).

Model RDF dibangun dengan objek-attribut-value triple yang disebut statement, yaitu suatu <subject> memiliki satu property<predicate> yang bernilai <object>.

Contoh statement RDF dapat dilihat pada Gambar 6.

(12)

Subjek merupakan resource yang ingin dideskripsikan, predikat menjelaskan behavior atau karakter resource dan mengekspresikan hubungan yang ada antara subjek dan objek.

Contohnya, kita ingin mempresentasikan pernyataan “Makalah ini berjudul Penggunaan SDM dan dipublikasikan oleh Universitas Mercu Buana”. Pernyataan tersebut dapat dibentuk dengan N-triple dengan hasilnya dapat dilihat pada Gambar 7.

Gambar 7 Contoh N-Triple sebuah Statement

Jika pernyataan tersebut diubah dan diekpresikan dengan RDF/XML, maka akan dihasilkan schema seperti pada Gambar 8.

Gambar 8 Contoh RDF sebuah Statement

Dengan mendeskripsikan resource tersebut, perangkat lunak dapat menyimpan, menukar dan menggunakan informasi yang dapat dibaca mesin sehingga pengguna akan mendapat informasi yang lebih efisien dan akurat melalui sebuah web. RDF Schema menyatakan keterangan dan arti dari RDF Schema dapat dianggap seperti kamus. Schema ini mendefinisikan istilah-istilah yang akan digunakan dalam pernyataan RDF dan memberikan arti tertentu untuk istilah tersebut

<http://www.Mercubuana.org/makalah> <http://purl.org.dc/elements/1.1/title> “Penggunaan SDM” <http://www.Mercubuana.org/makalah> <http://purl.org.dc/elements/1.1/publisher> “Mercubuana ” <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org.dc/elements/1.1/"> <rdf:Description rdf:about="http://www.Mercubuana.org/makalah"> <dc:title>Penggunaan SDM</dc:title>

(13)

atau mendeskripsikan properties dan class dari resources RDF. RDFS menyediakan informasi mengenai definisi dan batasan dari properti yang digunakan. Sebagaimana RDF menggunakan fasilitas namespace dari XML maka namespace ini juga digunakan untuk meningkatkan penggunaan kata tertentu di dalam RDFS agar kata tersebut terdefinisi sesuai keinginan.

Data model yang digunakan pada RDF Schema sama dengan data model yang digunakan pada bahasa pemograman object-oriented seperti Java. Pada RDFS dapat dibuat sebuah class data. Sebuah class didifinisikan sebagai kumpulan benda yang memiliki karakteristik yang sama. Pada sebuah bahasa pemograman object oriented, class didefiniskan sebagai sebuah object.

Konsep dasar pada RDF adalah sebagai berikut: - Resources

Resources dapat diartikan sebagai objek yang akan dibicarakan, misalnya tempat, publisher, orang, hotel, ruangan, dan lain- lain. Setiap resources memiliki URI, URI dapat juga disebut Unified Resource Locator (URL) atau penanda unik lainnya. Skema URI digunakan tidak hanya untuk menunjukkan lokasi web, tetapi juga untuk berbagai jenis objek nomor telepon, ISBN nomor, dan lokasi geografi. Jadi, URI digunakan sebagai penanda sebuah web resource.

- Properties

Properties adalah jenis yang menjelaskan relasi antara resources, misalnya “memiliki”, “berjudul”, “berumur” dan lain sebagainya. Properties pada RDF juga ditandai dengan URL. Penggunaan URL adalah untuk mengidentifikasi sesuatu dan hubungannya.

- Statements

Statements menegaskan properti dari resources. Sebuah statement adalah sebuah object-attribute-value yang terdiri dari resources, property dan value. Values dapat berupa resources atau literal. Literal adalah string sederhana atau tipe data primitive yang didefinisikan oleh XML.

(14)

2.1.5.5 OWL

Web Ontology Language (OWL) adalah bahasa ontologi yang mendefinisikan semantic web yang dikembangkan oleh World Wide Web Consortium (W3C). OWL adalah sebuah bahasa yang mana mengizinkan kita untuk mendeskripikan semantic dari setiap class dan properti, serta menambahkan lebih banyak suku kata dalam sebuah domain dalam internet (Yadagiri & Ramesh, 2013). OWL memiliki class, subclass, property, sub property, dan batasan property (property restrictions). OWL menyediakan informasi class dan tipe data informasi yang berasal dari XML schema. OWL mendefinisikan pembangunan dari sebuah class seperti subClassOf, disjointWith, mengijinkan kombinasi boolean dari pembuatan kelas (intersectionOf, unionOf, complementOf) (Dwivedi & Kumar, 2013). OWL terdiri dari dari owl: Class, owl:DatatzypeProperty, dan owl:ObjectProperty. Hubungan subclass antara

beberapa pemodelan sederhana dari OWL dan RDF/ RDF Schema dapat dilihat pada Gambar 9.

Gambar 9 Relationship antara OWL dengan RDF/RDF Schema

OWL memiliki bagian - bagian yang perlu diperhatikan pada saat dilakukan pengimplementasian dari OWL antara lain sebagai berikut (Yadagiri & Ramesh, 2013):

(15)

OWL di implementasikan pada RDF dan RDF skema dan XML merupakan sintaks dasar dari pengimplementasian dari OWL.

2. Header

Dokumen OWL dikenal sebagai OWL ontology dan dokumen RDF.

Element root dari ontologi OWL adalah element rdf:RDF yang merupakan

nomor namespaces yang ditentukan. Header dari dokumen OWL dapat dilihat pada Gambar 17

<rdf:RDF

xmlns:owl ="http://www.w3.org/2002/07/owl#"

xmlns:rdf ="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:xsd ="http://www.w3.org/2001/XMLSchema#">

Gambar 10 Header sebuah OWL

3. Elemen Kelas (Class Elements)

Kelas didefinisikan dengan menggunakan element owl:Class yang terdapat pada sebuah kelas. Contoh penggunaan elemen kelas yang mendefinisikan class Student dapat dilihat pada Gambar 11.

<owl:Class rdf:ID=”associateUserPerpustakaan”> <owl:disjointWith rdf:resource=”#student” /> <owl:disjointWith rdf:resource=”#lecture”> <owl></owl:Class>

Gambar 11 Contoh Class Element sebuah OWL

Kelas diatas merupakan disjoin dari kelas associate pengguna perpustakaan dan kelas student menggunakan elemen owl:disjointWith.

4. Element Properti (Property Elements)

Pada OWL terdapat 2 jenis property, antara lain: - Object Properties

Menyatakan relasi antara satu objek dengan objek lain. Sebagai contoh adalah borrow.

(16)

- Data type properties

Menyatakan tipe data dari nilai relasi dari objek. Sebagai contoh adalah

title dan author.

5. Property Restrictions

Merupakan pembatasan dari sebuah properti sebuah kelas atau hal lain. Untuk pembatasan dilakukan dengan membuat elemen tertentu yang akan menjelaskan sebuah kelas atau pun hal lain yang akan dibuat propertinya. Pembatasan dapat dilakukan dengan adanya elemen rdfs:

subclass, sebuah kelas B merupakan subclass dari kelas dari A, dimana kelas

A merupakan superclass dari kelas B. 6. Spesial Properti (Special Properties)

Spesial properti melakukan pendefinisian properti sendiri. Contoh dari

special properties adalah sebagai berikut:

Owl: TransitiveProperty didefinisikan sebagai properti transitip, seperti

halnya “has better grade than”, “is ancestor of”. 7. Boolean Combinations

Menyatakan kombinasi Boolean dari sebuah kelas. Contohnya adalah

union, intersection, complement yang mendefinisikan ekspresi kelas.

8. Enumeration

Enumeration Merupakan pendefinisian kelas dengan mendaftarkan

keseluruhan elemen dari kelas tersebut. Contoh penggunaan enumeration pada OWL dapat dilihat pada Gambar 12.

owl:Class rdf:ID="booksOfStudent"> <owl:oneOf rdf:parseType="Collection"> <owl:Thing rdf:about="#RPUL"/> <owl:Thing rdf:about="#GLOBE"/> <owl:Thing rdf:about="#RPAL"/> </owl:oneOf> </owl:Class>

(17)

9. Instances

Instance dari sebuah kelas dideklarasikan pada RDF. Contoh

penggunaan instances pada OWL dapat dilihat pada Gambar 13.

<rdf:Description rdf:ID="11110023">

<rdf:type rdf:resource="#academicStudentMember"/> </rdf:Description>

Gambar 13 Contoh Penggunaan Instances OWL

10. Tipe Data (Data Type)

Dalam hal pengimplementasian OWL menggunakan sintaks XML dan XML Schema, tetapi untuk tipe data yang digunakan pada XML dan XML skema tidak selamanya digunakan pada OWL. OWL mereferensi penggunaan tipe data dari dokumen XML dan XML Schema yang dapat digunakan dan memasukan tipe data yang sering digunakan seperti halnya

string, Boolean, integer dan date.

11. Versioning Information

Merupakan bagian dari informasi header untuk mengindikasikan kemudahan penerjemahan dari ontologi sekarang. Versioning Information ini tidak menjadi model teori yang formal pada semantic, tetapi hal ini dapat digunakan pada management dari ontologi.

12. Layering of OWL

OWL memiliki 3 level sub bahasa untuk memenuhi kebutuhan dari pengguna, antara lain:

 OWL Lite

Memungkinkan untuk mendefinisikan class dan property dari ontologi serta instances (individuals) dari class dan property. OWL Lite dan seluruh level OWL menggunakan hubungan (relation) rdf:subClassOf untuk mendefinisikan bahwa sebuah class itu merupakan sebuah subclass dari

class lain. Dan untuk pembangunan properti didefinisikan dengan

(18)

element dari class yang berbeda) atau owl:datatypeProperty (untuk

menjelaskan hubungan antara element class dan tipe data XML),

owl:subproperty, owl:domain, dan owl:range.

OWL Lite memungkinkan untuk membatasi jarak (range) dari

property menggunakan ekspresi quantifier allValuesFrom dan someValuesFrom (ekspresi yang menjelaskan text sebelumnya). Domain dari

sebuah property adalah class untuk argumen pertama dari property yang ditentukan. Range dari property yang diberikan adalah class untuk argumen kedua dari property yang ditentukan. Dari relation/property ini

hasFather(Child, Father), Child merupakan domain dari property dari relation tersebut, dan Father merupakan sebagai range property tersebut.  OWL DL

OWL Description Logic (OWL DL) digunakan untuk mendapatkan efisiensi komputasi. OWL DL membatasi konstruktor dari OWL dan RDF agar dapat digunakan. Pada OWL DL dapat dilakukan pendefinisian pembangunan class pada nilai property yang ditentukan menggunakan

hasValue dan membuat ekspresi kelas (class expressions) menggunakan combinators (set operator) Boolean, seperti unionOf, intersectionOf, dan complementOf.

 OWL Full

OWL Full digunakan untuk memperluas dari OWL DL dengan mengijinkan tingkat ekspresi maksimal dan kebebasan sintaks dari RDF tanpa mempertimbangkan perhitungan dari eksekusi yang dibutuhkan. Seperti halnya dengan memberikan datatype Property dapat dispesifikasikan

sebagai inverse Functional, dengan demikian akan memungkinkan pada contoh bahwa spesifikasi dari tipe string dapat sebagai unique key.

2.1.6 SPARQL

SPARQL adalah sebuah protocol dan query language untuk sumber data dari

(19)

beragam, apakah data disimpan sebagai RDF atau dilihat sebagai RDF melaui

middleware. SPARQL memiliki fungsi yang sama dengan query SQL yang

digunakan untuk mengambil data-data yang diinginkan, namun SPARQL melakukan

query bukan pada database, tetapi pada data di RDF (Yadagiri & Ramesh, 2013). Untuk melakukan query SPARQL maka perlu diketahui resource, property dan value dari RDF tersebut. Klausa yang digunakan dalam query SPARQL adalah (Yadagiri & Ramesh, 2013):

1. PREFIX

Prefix adalah klausa yang digunakan untuk menyingkat sebuah resource, dan sebagai penunjuk yang akan membawa informasi dalam suatu halaman web

2. SELECT

Pada statement SELECT didefinisikan daftar variable yang dikembalikan sebagai hasil query dengan diawali notasi (?) pada setiap variable.

3. WHERE

Pada statement WHERE didefinisikan triple pattern yang harus dimiliki oleh setiap query.

4. OPTIONAL

Statement OPTIONAL digunakan untuk mengatasi ketidaksesuaian

struktur pola query dengan pola pada RDF.

Contoh query penggunaan sintaks dalam SPARQL adalah sebagai berikut: 1. SELECT

Contoh penggunaan query SELECT dalam SPARQL dapat dilihat pada Gambar 14.

(20)

Gambar 14 Contoh Sintaks Query SELECT SPARQL

2. DISTINCT

Contoh penggunaan query DISTINCT dalam SPARQL dapat dilihat pada Gambar 15.

Gambar 15 Contoh Sintaks Query DISTINCT SPARQL

3. UNION

SPARQL memiliki kemampuan untuk menggabungkan beberapa graph menjadi satu kesatuan. Contoh penggunaan UNION dapat dilihat pada Gambar 16.

PREFIX rdf: <http://www.myFile.com/2012> PREFIX rdfs: <http://www.myFile.com/2013> SELECT ?subject ?lecture

WHERE {

?subject rdfs:lecture ?lecture; rdf:type space:Discipline. }

PREFIX space: <http://www.myLesson.com> PREFIX rdf: <http://www.myFile.com/2012> PREFIX rdfs: <http://www.myFile.com/2013> SELECT DISTINCT ?picture

WHERE {

?subject space:picture ?picture. }

PREFIX space: <http://www.myLesson.com> PREFIX rdf: <http://www.myFile.com/2012> PREFIX rdfs: <http://www.myFile.com/2013> SELECT ?subject ?displayLecture

WHERE { {

?subject rdf:name ?displayLecture. }

UNION {

?subject rdfs:lecture ?displayLecture. }

(21)

Gambar 16 Contoh Sintaks Query UNION SPARQL

4. OPTIONAL

Contoh penggunaan query OPTIONAL dalam SPARQL dapat dilihat pada Gambar 17

Gambar 17 Contoh Sintaks Query OPTIONAL SPARQL

5. ORDER BY

Contoh penggunaan query OPTIONAL dalam SPARQL dapat dilihat pada Gambar 18.

Gambar 18 Contoh Sintaks Query ORDER BY SPARQL 2.2 Ontologi

Ontologi merupakan suatu teori tentang makna dari suatu objek, poperti dari satu objek serta relasi objek tersebut yang mungkin terjadi pada suatu domain

PREFIX space: <http://www.myLesson.com> PREFIX rdf: <http://www.myFile.com/2012> PREFIX rdfs: <http://www.myFile.com/2013> SELECT ?title ?image

WHERE {

?title space:image ?image. }

ORDER BY DESC(?image)

PREFIX space: <http://www.myLesson.com> PREFIX rdf: <http://www.myFile.com/2012> SELECT ?title ?image

WHERE { {

?spacecraft rdf:title ?title. OPTIONAL

{

?spacecraft rdf:picture ?image. }

(22)

pengetahuan (Fadillah et al, 2010). Ontologi juga sering disebut sebagai kunci untuk penerapan semantic web. Ontologi dapat disebut juga sebagai kumpulan kata mengenai sebuah domain. Ontologi dapat definisikan sebagai “an explicit specification of a conceptualization”. Ontologi sangat penting untuk mendeskripsikan tentang sesuatu domain. Ontologi menjadi deskripsi formal dari sebuah konsep di dalam domain, properti dari setiap konsep yang mendeskripsikan fitur dan atribut dari konsep dan batasan dalam setiap properti. Secara teknis, ontologi dapat direpresentasikan dalam bentuk objek, properti dari objek, dan relasi diantara setiap objek (Dombeu & Huisman, 2011).

Beberapa alasan dalam pembangunan ontologi yaitu (Dombeu & Huisman, 2011): 1. Membagi pemahaman umum mengenai struktur dari informasi di antara

manusia atau software agent. Ontologi dapat digunakan oleh beberapa domain yang memiliki kesamaan pada term yang digunakan. Agen perangkat lunak dapat mengumpulkan informasi dari domain tersebut dan dapat digunakan untuk menjawab query pengguna atau sebagai inputan bagi aplikasi lain.

2. Penggunaan kembali domain knowledge yang sudah ada oleh domain lain yang memiliki kesamaan kebutuhan data. Pembangunan ontologi pada suatu aplikasi dapat dilakukan dengan pengintegrasian ontologi yang sudah ada sebelumnya.

3. Membuat asumsi domain secara explisit. Menjelaskan struktur hirarki istilah-istilah yang terdapat di dalam sebuah domain dan bagaimana keterhubungannya. Asumsi domain yang jelas memudahkan pengguna baru untuk mempelajari term yang dimaksud dan memudahkan dalam mengubah domain apabila pengetahuan tentang domain berubah.

4. Menganalisis domain pengetahuan. Ontologi dibutuhkan untuk menganalisis domain knowledge atau fakta yang ada di dalam suatu domain. Analisis sangat dibutuhkan ketika menggunakan ulang sebuah

(23)

ontologi tertentu dan memperluas ontologi tersebut pada domain ontologi yang lain.

2.2.1 Komponen Ontologi

Suatu ontologi yang dibangun terdiri dari beberapa komponen yang saling berhubungan untuk menghasilkan suatu informasi atau domain knowledge dari suatu domain tertentu. Komponen-komponen ontologi tersebut yaitu (Fadillah et al, 2010):

1. Individuals

Individual atau disebut juga instances menggambarkan objek yang ada di dalam domain. Setiap individual harus berada di dalam suatu class dan setiap individual dalam suatu class memiliki karakteristik yang sama.

2. Properties

Properties atau relationship pada ontologi adalah binary relationship antara individual dalam suatu class ke individual dalam class itu sendiri dan antara individual dalam suatu class ke individual class lain.

3. Class

Suatu class dalam ontologi merepresentasikan konsep-konsep yang ada dalam suatu domain. Sebuah class merupakan sekumpulan objek atau individual dalam suatu konsep dan objek yang ada di dalam suatu class mewarisi karakteristik dari class tersebut. Class dapat diorganisasikan menjadi sebuah hirarki superclass-subclass ang dikenal dengan istilah taksonomi. Sebuah class dapat memiliki subclass yang merepresentasikan konsep yang lebih spesifik dari pada superclassnya. Contohnya mempertimbangkan kelas animal dan kelas cat, kelas cat dapat dijadikan sebagai subclass dari kelas animal. 2.2.2 Tahapan-tahapan Pengembangan Ontologi

Tahap-tahap pengembangan ontologi terdiri dari 7 tahap, yaitu (Fadillah et al, 2010):

(24)

1. Menentukan domain dan ruang lingkup ontologi

2. Mempertimbangkan penggunaan ontologi yang sudah ada. 3. Menghitung dan menentukan daftar terminologi

4. Mendefinisikan kelas dan hirarkinya 5. Mendefinisikan properti dari kelas (slot) 6. Mendefinisikan batasan (facet) dari slot 7. Membuat instance-instance

2.2.2.1 Menentukan Domain dan Ruang Lingkup Ontologi

Pemodelan ontologi pertama kali dilakukan dengan menentukan domain dan ruang lingkup dari ontologi yang akan dimodelkan. Penentuan dari domain dan ruang lingkup ini merupakan gambaran dari koleksi dari obyek yang ada, yang dilengkapi dengan informasi dari obyek dan disusun berdasarkan pengklasifikasian yang ditentukan oleh developer dan obyek-obyek ini akan menjadi kelas dalam ontology (Noy & Deborah, 2009).

Untuk melakukan penetuan domain dan ruang lingkup ontologi dapat dilakukan dengan melakukan pendekatan dengan menjawab pertanyaan berikut:

- Apa domain yang merangkum (cover) ontologi yang dibuat? - Untuk apa menggunakan ontologi?

- Apa jenis pertanyaan terhadap informasi dalam ontologi sehingga perlu menyediakan jawaban?

- Siapa yang akan menggunakan dan memelihara ontologi?

Jawaban dari pertanyaan-pertanyaan tersebut, dapat dilakukan pendefinisian dari domain dan ruang lingkup ontologi yang Akan dibuat (Noy & Deborah, 2009).

2.2.2.2 Mempertimbangkan Penggunaan Ontologi yang Sudah Ada

Dalam pemodelan ontologi dalam sebuah kasus, pengembang harus memikirkan mengenai kemungkinan penggunaan dari ontologi yang sudah dimodelkan. Penggunaan ontologi yang sudah ada dibutuhkan apabila sebuah sistem harus berinteraksi dengan aplikasi yang menggunakan vocabulary yang terkontrol, dalam hal ini penggunaan ontologi. Pertimbangan ini dapat dilakukan dengan

(25)

melakukan pengontrolan dari suatu desain ontologi yang sudah ada sehingga dapat disesuaikan dengan kebutuhan ontologi yang akan dibangun (Noy & Deborah, 2009).

2.2.2.3 Menentukan Daftar Terminologi

Menentukan daftar istilah sangat berguna untuk menuliskan keseluruhan hal yang sama dengan argumen/istilah yang dicari oleh user ataupun hal yang dijelaskan terhadap user oleh aplikasi yang dibangun. Seperti halnya yang berhubungan dengan newspaper yakni kind, size, date, company newspaper, location, dan page. Perbedaaan tipe dari surat kabar seperti halnya magazine dan sub tipenya dari newspaper ini adalah tabloid. Penginisialisasian ini sangat penting dilakukan untuk mengetahui daftar terminologi tanpa khawatir dengan adanya berlebihan antara konsep yang disajikan, relasi antara terminologi atau properti yang dimiliki oleh sebuah konsep (Noy & Deborah, 2009)0.

2.2.2.4 Mendefinisikan Kelas dan Hirarkinya

Melakukan pengelompokan kelas-kelas sesuai dengan karakteristik yang sama pada sebuah domain. Terdapat 3 metode yang dapat digunakan untuk membuat hirarki kelas pada ontologi, yaitu metode top-down, bottom-up dan combination.

Metode top-down melakukan proses pembangunan kelas dan hirarki dimulai dari pendefinisian dari konsep yang paling umum sampai konsep yang lebih spesifik. Pembangun harus melakukan pendefinisian kelas dari hal yang paling umum sampai kelas yang lebih spesifik. Sebagai contoh, pembangun dapat memulai dari konsep dari paling umum dari periodic report. Kemudian dapat dispesifikan lagi dengan membuat sub kelas dari periodic report yakni journal, magazine, newspaper. Kemudian newspaper dapat kita dibuat kembali sub kelasnya yakni tabloid. Hal ini dilakukan sampai dengan konsep yang lebih spesifik jika memungkinkan dari kelas yang dibuat (Muslimin et al, 2006). Penerapan dari metode ini memiliki kelebihan yaitu ketika pembangun telah mengetahui konsep- konsep umum untuk penentuan dari kelas- kelas yang akan ada, sehingga setelah konsep umumnya telah dapat

(26)

didefinisikan, pembangun akan hanya memikirkan apa yang menajadi konsep yang lebih spesifik yang akan menjadi kelas yang spesifik. Kekurangan dari metode ini adalah kita dipaksa mengetahui dahulu konsep yang paling umum dari suatu domain sehinga tidak dapat mengimplementasian kelas selanjutnya jika konsep umumnya belum jelas (Muslimin et al, 2006).

Metode bottom-up melakukan pembangunan kelas dan hirarki dengan memulai dari pendefinisian konsep yang lebih spesifik untuk menentukan kelas, sampai konsep yang lebih umum dengan mengelompokan kelas yang sama posisinya. Sebagai contoh kita dapat mendefinisikan kelas untuk bola newspaper dan otomotif newspaper. Dapat langsung didefinisikan super kelasnya yakni kelas tabloid. Hal itu dapat dilakukan sampai konsep yang paling umum untuk menentukan kelas yang paling umum yang menjadi superclass (Noy & Deborah, 2009). Penerapan metode ini memiliki kelebihan yaitu ketika pembangun telah jelas dapat mengetahui pengelompokan kelas yang setara dan dapat melakukan penyusunan dari konsep yang paling spesifik sampai ke konsep yang paling umum. Kekurangan penerapan metode ini adalah penentuan letak konsep/kelas yang disusun sehingga dapat memenuhi dari konsep yang paling spesifik ke konsep yang lebih umum (Muslimin et al, 2006).

Combination melakukan pembangunan kelas dan hirarki dengan menggabungkan metode top-down dan metode bottom-up. Hal ini lebih fleksibel karena pembangun dapat mendefinisikan mulai dari konsep/kelas yang umum sampai ke konsep/kelas yang paling spesifik, dan mendefinisikan mulai dari konsep/ elas yang paling spesifik sampai ke konsep/kelas yang umum. Hal tersebut yang menjadi kelebihan dari penggunaan dari penerapan metode ini. Sebagai contoh kita dapat mendefinisikan mulai dari tingkat kelas yang paling tinggi yakni periodic report sampai yang spesifik yakni bola newspaper. Dan pembangun dapat dimulai dari konsep/kelas yang lebih spesifik sampai ke konsep/kelas yang lebih umum seperti halnya bola newspaper dan otomotif newspaper sampai ke kelas yang paling umum yakni periodic report (Muslimin et al, 2006). Penerapan metode ini memiliki kekurangan yakni kesalahpahaman ketika pembangun terdiri dari lebih dari satu

(27)

orang, karena pembangun yang satu memungkinkan bingung dengan hasil pekerjaan dari pembangun yang lain karena kurang jelasnya konsep/kelas pertama sebagai superclass atau subclass dimulai pembuatan suatu kelas (Muslimin et al, 2006).

2.2.2.5 Mendefinisikan Properti dari Kelas

Melakukan pendefinisian dari suatu kelas yang telah selesai dibuat dengan membuat properti terhadap sebuah kelas, dengan tujuan agar sebuah kelas dapat memberikan informasi yang lebih lengkap. Properti inilah yang akan menjadi identitas dari sebuah kelas yang didefinisikan. Seperti halnya sebuah textbook memiliki properti idbook, title, ISBN, author, classification, location, cp_or, year, state, datIn, dan can_issue (Muslimin et al, 2006).

2.2.2.6 Mendefinisikan Batasan (Facet) dari Slot

Slot memiliki penjelasan facet yang berbeda-beda mulai dari tipe nilai, nilai yang mungkin, jumlah dari nilai (caridinality) dan hal lain yang bisa dibuat pada slot. Hal ini memiliki tujuan untuk membarikan batasan pada pendefinisian suatu kelas.

Tipe nilai slot merupakan tipe dari sebuah nilai slot yang bias kita definisikan pada sebuah slot. Tipe-tipe yang ada adalah dalam slot ini adalah string, number, boolean, enumerated, dan instance type. Seperti halnya dalam pencarian pustaka pada perpustakaan bahwa name dari sebuah newspaper harus bertipe string, hal ini merupakan menjadi sebuah batasan untuk pembuatan nama dari sebuah slot (Muslimin et al, 2006).

Slot Cardinality merupakan pendefinisian dari berapa banyak nilai (value) yang dimiliki dari sebuah slot. Dalam keseluruhan sistem ada dua kemungkinan cardinality yang dimiliki oleh sebuah slot yakni single cardinality dan multi cardinality. Seperti halnya dalam pencarian pustaka pada perpustakaan bahwa sebuah nilai ISBN buku hanya memiliki satu nilai (single carcinality) dan title dari sebuah buku dapat diproduksi lebih dari satu kali atau dengan kata lain banyak nilai (multi cardinality).

(28)

Beberapa aplikasi menjelaskan secara spesifik nilai dari sebuah slot dengan istilah minimum dan maximum cardinality. Minimum cardinality n mengatakan bahwa sebuah slot harus memiliki minimal n nilai. Sebagai contoh adalah slot page memiliki minimum cardinality 1. Hal ini menjelaskan bahwa sebuah buku dibuat dari minimal satu atau lebih page. Maximum cardinality m mengatakan bahwa sebuah slot hanya dapat memiliki jumlah nilai paling besar sejumlah m. Sebagai contoh adalah sebuah title dari sebuah buku, hanya dapat memiliki satu nilai slot. Hal ini menjelaskan sebuah buku hanya dapat memiliki sebuah title.

2.2.2.7 Membuat Instance

Langkah terakhir dari pemodelan sebuah ontologi adalah dengan membuat instance dari sebuah kelas pada hirarki. Mendefinisikan instance dari sebuah kelas dengan cara:

1. Memilih kelas yang akan didefinisikan. 2. Membuat instance dari sebuah kelas.

3. Mebuat nilai dari slot yang ada pada sebuah kelas.

Sebagai contoh adalah membuat instance individu yakni kompas newspaper yang merupakan pendefinisian dari tipe spesifik dari kelas newspaper. Berikut merupakan sebuah instance dari kelas newspaper:

Title: Kompas Color: White Page Count: 40 Date: 08 Januari 2012

2.2.3 Metodologi Pembangunan Ontologi

Methontology adalah salah satu metodologi yang digunakan dalam pembangunan ontology (Lopez, 2013). Methontology dikembangkan oleh the Laboratory of Artificial Intelligence di the Polytechnic University of Madrid

(29)

(Lopez, 2013). Kategori aktivitas yang dilakukan dalam pembangunan ontologi pada menthontologi yaitu:

1. Project Management Activities

Aktivitas pada Project Management meliputi planning, control dan quality assurance. Planning mengidentifikasikan tugas yang akan dilakukan, bagaimana pengerjaannya, berapa banyak waktu yang dibutuhkan dan resource yang dibutuhkan untuk penyelesaian. Control dilakukan untuk menjamin tugas yang direncanakan dikerjakan sesuai dengan perencanaan. Quality assurance dilakukan untuk menjamin kualitas produk yang dihasilkan memenuhi standar yang ditentukan.

2. Development-Oriented Activities

Development Oriented Activities meliputi specification, conceptualization, formalization, implementation dan maintenance. Specification yaitu tahapanmenentukan alasan pembangunan ontologi, kegunanan ontologi dan pengguna yang menggunakan ontologi. Conceptualization yaitu menyusun domain knowledge dalam bentuk konsep. Tugas yang ada pada tahapan ini antara lain: membuat glossary of terms atau memilih kosa kata yang berhubungan dengan domain, mengidentifikasi kelaskelas, relasi and atribut, membuat concept taxonomies, membuat binary relation diagrams, membuat concept dictionary, dan mendefinisikan individu.Formalization yaitu tahapan yang bertujuan untuk mengubah domain knowledge yang secara konseptual menjadi formal ontologi yang dapat dimengerti oleh komputer. Implementation yaitu membangun ontologi dengan menggunakan bahasa pembangun ontologi.Maintenance yaitu memperbaharui dan mengoreksi ontologi.

3. Support Activities

Aktivitas support terdiri dari lima kegiatan yaitu knowledge acquisition, evaluation, integration, documentation dan configuration management. Knowledge acquisition yaitu memperoleh informasi dari domain yang dibangun.

(30)

Evaluation yaitu membuat penilaian teknis terhadap ontologi. Software environment dan dokumentasi selama aktivitas pembangunan dijalankan. Integration diperlukan ketika membangun sebuah ontologi baru yang menggunakan ontologi yang sudah ada sebelumnya. Documentation yaitu setiap tahapan yang telah diselesaikan dan produk yang dihasilkan disimpan pada dokumentasi yang jelas. Configuration Management yaitu menyimpan setiap versi dokumentasi, perangkat lunak, dan kode ontologi untuk mengawasi perubahan (Lopez, 2013).

4. Methontology Life Cycle

Tahapan pembangunan ontologi pada life cycle ini bergerak maju dari specification, conceptualization, formalization, integration dan implementation. Aktivitas managementproject dan aktivitas support dilakukan secara serempak dengan aktivitas development. Knowledge acquisition, evaluation dan integration dilakukan lebih fokus selama tahapan conceptualization. Hal ini karena knowledge sangat dibutuhkan pada tahap awal pembangunan ontologi. Selain itu, sebelum implementasi sangat diperlukan untuk mengevaluasi ontologi untuk menghindari penyebaran error (Lopez, 2013). Berdasarkan pendekatan ini dapat dilihat bahwa pembangunan ontologi dilakukan secara prototype. Perkembangan life cycle secara prototype memungkinkan pembangunan ontologi untuk kembali ke tahapan sebelumnya apabila terdapat definisi yang salah atau membingungkan, sehingga life cycle ini memperbolehkan perubahan definisi kapan pun selama ontology life cycle

2.2.4 Bahasa Pembangunan Ontologi

Perkembangan internet yang sangat pesat meningkatkan pembuatan bahasa untuk pengimplementasian ontologi yang memanfaatkan karakteristik dari web Bahasa tersebut sering disebut dengan web-based ontology language atau ontology markup language. Ontologi dapat berguna apabila diterapkan pada aplikasi atau sistem tertentu yang menggunakan ontologi. Untuk dapat digunakan, ontologi tersebut harus dituliskan ke dalam notasi yang formal. Notasi formal tersebut

(31)

merupakan bahasa pembangunan ontologi yang menjadi sebuah standar untuk digunakan membangun ontologi.

2.2.5 Tools Pembangunan Ontologi

Beberapa tahun terakhir ini, tools yang digunakan untuk mengembangkan ontologi semakin berkembang dilakukan oleh Amerika dan bangsa Eropa. Tools yang digunakan dalam membangun ontologi tersebut sangatlah membantu dalam pembangunan skema ontologi dengan instance data. Yang menjadi pertanyaan dalam melakukan pengembangan tools pembangunan ontologi adalah: Tools apakah yang mendukung proses pembangunan ontologi? Bagaimana ontologi tersebut diproses? Apakah tools tersebut memiliki translator ke bahasa ontologi yang lainnya? Bagaimana kualitas translator tersebut? dll. Kriteria yang digunakan dalam membandingkan tools pembangun ontologi antara lain (Kapoor & Sharma, 2010).:

1. Software architecture and tool evolution, termasuk infromasi mengenai developers, pengeluaran, dan ketersediaan.

2. Interoperability with other ontology development tools and languages, termasuk informasi kemampuan interoperability tools tersebut.

3. Knowledge representation, bagaimana constrain/consistency dari tools tersebut, apakah bisa mengklasifikasikan konsep secara otomatis.

4. Usability, kemampuan tools sebagai editor untuk menciptakan taxonomies dan relasinya, kemampuan untuk menyediakan library ontologi.

Beberapa tools dan environment yang tersedia untuk melakukan pembangunan ontologi, baik secara permulaan maupun dari ontologi yang sudah ada. Beberapa tools yang dapat digunakan antara lain (Kapoor & Sharma, 2010).:

2.2.5.1 Apollo

Apollo adalah aplikasi pembangun ontologi yang user friendly. Desain yang dimiliki termotivasi dari pengalaman pembangun yang bekerja dengan perusahaan yang meminta untuk menggunakan teknik modeling, tetapi meminta environment yang mudah dan tidak memiliki sintaks yang sulit. Gambaran tools apollo dapat dilihat pada Gambar 19. Apollo mendukung pemodelan secara primitive: ontologi,

(32)

classes, instances, functions, dan relasi. Pemeriksaan kekonsistenan dilakukan ketika sedang dibuat, mendeteksi class yang tidak didefinisikan. Apollo memiliki internal language untuk menyimpan ontologi, tetapi dapat juga mengeksport ontologi ke bahasa yang lain, sesuai keinginan pengguna. Apollo diimplementasikan dengan menggunakan bahasa pemograman Java (Kapoor & Sharma, 2010).

Gambar 19 Tampilan tools Apollo 2.2.5.2 Protégé

Protégé adalah tools terakhir yang dikembangkan di Stanford University untuk penambahan pengetahuan. Tools Protégé ini memiliki beribu pengguna di dunia ini yang menggunakannya untuk mengerjakan proyek, dari pemodelan cancer-protocol guidelines hingga pemodelan nuclear-power stations. Protégé tersedia di-download dengan menggunakan Mozilla tanpa lisensi (Kapoor & Sharma, 2010).

Protégé menyediakan desain yang graphical dan interactive dan knowledge-base-development environment. Pengembang ontologi dapat dengan cepat mengakses informasi yang sesuai kapanpun mereka membutuhkannya dan navigasi yang sederhana pada hirarki kelas. Protégé mendukung pembentukan kelas dan hirarki kelas dengan multiple inheritance, template dan own slots, spesifikasi pre-defined dan

(33)

facet for slot yang bebas, termasuk values, cardinality, dan inverse slots. Selain memiliki interface yang mudah digunakan, 2 hal yang menjadi kelebihan protégé dari tools pembangun ontologi yang lain adalah: scalability dan extensibility. Tampilan untuk tools Protégé dapat dilihat pada Gambar 20.

Gambar 20 Tampilan tools Protégé 2.2.5.3 SWOOP

SWOOP adalah editor ontologi yang berbasis web dan browser. Tool SWOOP berasal dari Mindswap yang merupakan organisasi yang bergerak di bidang semantic web. SWOOP dibuat dengan menggunakan bahasa pemograman Java dan berbasis windows application, dan tampilannya sama seperti browser. SWOOP dirancang untuk mengakomodasi kebutuhan OWL, termasuk RDF dan N3 (Kapoor & Sharma, 2010). Tampilan untuk tool SWOOP dapat dilihat pada Gambar 21 berikut ini.

(34)

Gambar 21 Tampilan tool SWOOP

Beberapa pengujian telah dilakukan terhadap beberapa tools pembangun ontologi, antara lain kemudahan instalasi, kelengkapan dokumentasi, kemudahan pengguna, kelengkapan instalasi, kelengkapan dokumentasi, kelengkapan fasilitas atau fitur yang ditawarkan, dan lisensi (Kapoor & Sharma, 2010). Berdasarkan pengujian tersebut yang paling direkomendasikan untuk digunakan dalam mengembangkan ontologi adalah Protégé.

2.3 Related Work

Sejumlah namespace bisa digunakan untuk menentukan sumber dari beberapa domain seperti orang, bank account, buku dan lain-lain. Beberapa peneliti ini telah melakukan penelitian sebelumnya terkait dengan ontologi seperti dibawah ini sebelumnya dengan namespace yang berbeda-beda (Dwivedi & Kumar, 2013).

Sharmin Rashid Linta mengajukan sebuah model E-Learning Management System menggunakan Semantic Web dan juga membuat sebuah namespace “Univ” to

(35)

menggambarkan universitas dalam semantic web. Dimana silabus perkuliahan, metode pengajaran, activitas belajar dan gaya belajar terdapat di dalamnya. Namespace ini digunakan mengidentifikasi beberapa universitas diseluruh dunia yang suai dengan model yang diajukan. Mereka juga menyediakan struktur konten hirarki dan semantic relation antara konsep yang mana difasilitasi dengan informasi yang berguna untuk pencarian dan pengurutan sumber pembelajaran dalam E-learning system (Dwivedi & Kumar, 2013).

Selain itu Stajonovic et al memperkenalkan sebuah skenario E-Learning berdasarkan teknologi semantic web. Skenario ini berfokus di ontologi dari objek e-Learning tersebut dan korelasi nya dengan e-Learning Lab Lower Saxony, yang mana dirinya adalah partner dari Wallenberg Learning Network. Mereka membangun ontologi dengan tiga cara mendekripsikan konteks dari materi pembelajaran yang mana domain nya tergantung ontologi yang ada, untuk mendeskripsikan konteks pembelajaran dari materi pembelajaran dan penataan materi pembelajaran dalam program pembelajaran (Dwivedi & Kumar, 2013) semua penelitian itu bertujuan untuk mempermudah serta meningkatkan proses pembelajaran.

2.4 Kesimpulan

Berikut adalah kesimpulan dari hasil tinjauan pustaka yang berkaitan dengan erat topik

Tugas Akhir dan dipakai sebagai landasan teori untuk tahap analisis yaitu:

1. Teknologi semantic web adalah teknologi yang memungkinkan mesin dapat menyajikan informasi secara lebih detail dan akurat sehingga memungkinkan pengguna dan komputer untuk bekerja lebih optimal lagi.

2. Ontologi merupakan salah satu kunci penting yang bisa digunakan dalam penerapan Semantic Web. Hal itu dikarenakan ontologi menggambarkan keterkaitan antara class, atributes, slot dan instance sehingga ontologi menjadi suatu aplikasi semantik karena menggambarkan relasi antar konsep pada domain.

(36)

3. XML adalah layar paling dasar untuk membangun sebuah semantic web karena XML digunakan untuk melakukan pertukaran informasi pada semantic web yakni pada pembuatan RDF dan OWL yang digunakan untuk metadata pada penerapan aplikasi, yaitu dengan menggunakan URI dan Unicode sebagai dasar XML. Sebuah dokumen XML dapat didefinisikan dengan menggunakan XML Schema yang kaya akan bahasa secara signifikan.

4. RDF merupakan bagian utama dari semantic web yaitu format untuk menyediakan informasi dalam bentuk yang dapat dibaca oleh mesin. Sebuah RDF dibuat dengan menggunakan RDF Schema yang mendefinisikan istilah-istilah yang akan digunakan dalam pernyataan RDF dan memberikan arti tertentu untuk istilah tersebut atau mendeskripsikan properties dan class dari resources RDF.

5. OWL (Web Ontology Language) adalah bahasa ontologi yang mendefinisikan semantic web. OWL memiliki class, subclass, property, sub property, dan batasan property (property restrictions).

6. SPARQL merupakan query yang digunakan untuk melakukan query pada RDF.

7. Tools yang digunakan untuk membangun ontology pada Tugas Akhir ini adalah Protégé yang menerapkan bahasa pengimplementasian OWL.

Gambar

Gambar 1 Arsitektur Semantic Web
Gambar 2 Elemen Tag Pembuka XML Schema  Elemen – elemen skema pada XML Schema adalah sebagai berikut:
Gambar 3 Element Types XML Schema  2.  Attribute Types
Gambar 5 Data Types XML Schema  2.1.5.4  RDF and RDF Schema
+7

Referensi

Dokumen terkait

Definisi underground economy yang dipakai dalam penelitian ini adalah sesuai definisi menurut Vito Tanzi yaitu pendapatan yang didapat dari aktivitas ekonomi yang

Penggolongan umur menunjukkan adanya perbedaan yang tidak bermakna (p=0,3) antara subyek penelitian yang tinggal di perdesaan dan perkotaan, subyek penelitian sebagian

(3) Dalam hal Penghasil, Pengumpul, Pemanfaat, Pengangkut, Pengolah, dan Penimbun limbah B3 tidak melakukan penanggulangan pencemaran dan/atau kerusakan lingkungan

(2) Koordinasi sebagaimana dimaksud pada ayat (1) dapat dilakukan dengan Bupati lain dalam menjalin kerjasama untuk mencegah dan menangani Korban Perdagangan Perempuan dan Anak

3.3.3 Bagi setiap kapal yang mempunyai satu atau lebih tingkap samping yang diletakkan sedemikian rupa sehingga persyaratan paragraf 3.3.1 akan berlaku

Penjualan merupakan salah satu kegiatan paling penting dalam setiap usaha terutama yang bergerak dibidang perdagangan. Untuk membantu dan mengawasi kegiatan penjualan maka

Pemilihan respirator harus berdasarkan pada tingkat pemaparan yang sudah diketahui atau diantisipasi, bahayanya produk dan batas keselamatan kerja dari alat pernafasan yang

Botol yang keluar dari  filler   filler   dan  dan crowner  crowner   selanjutnya akan dibasuh dengan  selanjutnya akan dibasuh dengan air yang bertujuan untuk membersihkan