1 BAB II LANDASAN TEORI Bab ini berisi rangkuman informasi yang dihimpun dari berbagai pustaka yang berisi uraian mengenai semantic web, pembangunan o...
BAB II LANDASAN TEORI 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:
8
http://digilib.mercubuana.ac.id/
9
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 orangorang 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. Web 3.0
http://digilib.mercubuana.ac.id/
10
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 berbedabeda. 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
http://digilib.mercubuana.ac.id/
11
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
http://digilib.mercubuana.ac.id/
12
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).
http://digilib.mercubuana.ac.id/
13
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).
http://digilib.mercubuana.ac.id/
14
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).
http://digilib.mercubuana.ac.id/
15
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
http://digilib.mercubuana.ac.id/
16
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. ’Prolegomena Library Clasification’ S. R. Ranganathan
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: <element name =”…”/>
http://digilib.mercubuana.ac.id/
17
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: Atribut ini dapat juga memiliki jumlah dari attribute yang optional seperti types. Contoh attribute types dari XML Schema dapat dilihat pada Gambar 4. <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).
http://digilib.mercubuana.ac.id/
18
Contoh data types dari XML Schema dapat dilihat pada Gambar 5. <sequence> <element name = “firstname” type=”string” minOccurs =”0” maxOccurs=”unbounded”/> <element name = “last name” type=”string”/> 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