Hak cipta dan penggunaan kembali:
Lisensi ini mengizinkan setiap orang untuk menggubah, memperbaiki, dan membuat ciptaan turunan bukan untuk kepentingan komersial, selama anda mencantumkan nama penulis dan melisensikan ciptaan turunan dengan syarat yang serupa dengan ciptaan asli.
Copyright and reuse:
This license lets you remix, tweak, and build upon work
non-commercially, as long as you credit the origin creator
and license it on your new creations under the identical
terms.
IMPLEMENTASI ONTOLOGI GOODRELATIONS PADA SITUS WWW.BHINNEKA.COM DAN
WWW.BLIBLI.COM
Nama : Michael Setiawan Suhardjono
NIM : 08110110011
Program Studi : Teknik Informatika
Fakultas : Teknologi Informasi dan Komunikasi
SKRIPSI
Diajukan sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer (S. Kom.)
UNIVERSITAS MULTIMEDIA NUSANTARA TANGERANG
2012
Implementasi Ontologi Goodrelations..., Michael Setiawan Suhardjono, FTI UMN, 2012
HALAMAN PENGESAHAN SKRIPSI
IMPLEMENTASI ONTOLOGI GOODRELATIONS
PADA SITUS WWW.BHINNEKA.COM DAN WWW.BLIBLI.COM
Oleh
Nama : Michael Setiawan Suhardjono
NIM : 08110110011
Program Studi : Teknik Informatika
Fakultas : Teknologi Informasi dan Komunikasi
Gading Serpong, 30 Juli 2012
Mengetahui,
Ketua Sidang
Maria Irmina P., S.Kom, M.T.
Dosen Penguji
Januar Wahjudi, S.Kom, M.Sc.
Dosen Pembimbing
Guson P. Kuntarto, S.T., M.Sc.
Ketua Program Studi Teknik Informatika
Januar Wahjudi, S.Kom, M.Sc.
ii
PERNYATAAN TIDAK MELAKUKAN PLAGIAT
Dengan ini saya:
Nama : Michael Setiawan Suhardjono NIM : 08110110011
Program Studi : Teknik Informatika
menyatakan bahwa skripsi yang berjudul “Implementasi Ontologi GoodRelations pada situs www.Bhinneka.com dan www.Blibli.com” adalah karya ilmiah saya sendiri, bukan plagiat dari karya ilmiah yang ditulis oleh orang lain atau lembaga lain, dan semua karya ilmiah orang lain atau lembaga lain yang dirujuk dalam skripsi ini telah disebutkan sumber kutipannya serta dicantumkan di Daftar Pustaka.
Gading Serpong, 30 Juli 2012
Michael Setiawan Suhardjono
Implementasi Ontologi Goodrelations..., Michael Setiawan Suhardjono, FTI UMN, 2012
ABSTRAKSI
Perkembangan teknologi Internet di Indonesia yang sangat pesat mengakibatkan semakin populernya perdagangan online atau e-commerce.
Skenario umum pada B2C e-commerce adalah user mengunjungi beberapa online shops untuk membandingkan penawaran secara manual sehingga memakan banyak waktu. Untuk itu dibuat wrapper untuk mengumpulkan informasi pada situs web menggunakan analisis tekstual atau keyword search. Pendekatan ini mengakibatkan informasi yang disaring terbatas dan hasil yang didapat tidak relevan, terutama jika bentuk situs berubah. Semantic web dapat menjadi solusi dari permasalahan tersebut. Ontologi GoodRelations digunakan sebagai ontologi umum yang banyak diadopsi pada bidang e-commerce. Penggunaan ontologi standar memudahkan publishing dan consuming data, dan mencapai interoperability antara software system. Dalam skripsi ini, dibangun knowledge base untuk situs www.Bhinneka.com dan www.Blibli.com dengan berbasis pada ontologi GoodRelations. Kemudian, digunakan Openlink Virtuoso (Open Source Edition) sebagai triplestore untuk mengumpulkan knowledge base yang terdapat pada situs web. Selanjutnya, dikembangkan pula aplikasi pencarian menggunakan knowledge base berbasis ontologi GoodRelations untuk situs e-commerce dengan menggunakan PHP dan Virtuoso SPARQL endpoint untuk mengakses knowledge base menggunakan RDF query language SPARQL. Interoperability antara situs e-commerce dan aplikasi telah berhasil dicapai. Kuantitas pencarian pada aplikasi pencarian dapat ditingkatkan dengan menggunakan knowledge base yang berisi dataset dari situs e-commerce www.Bhinneka.com dan www.Blibli.com.
Kata kunci : semantic web, GoodRelations, B2C e-Commerce, Virtuoso triplestore, interoperability.
iv ABSTRACT
The rapid development of the Internet technology in Indonesia leads to growing popularity of online shopping or better known as e-Commerce. A typical scenario in B2C e-commerce is where an user visit several online shops to compare several offers manually, in doing so, a lot of time is consumed. Therefore, a wrapper was made in purpose to collect information from several websites using textual analysis or keywords search. This approach resulted only limited information are extracted and the result are irrevelant, especially in case the format of the site is changed. Semantic web comes as an answer to the problem, using knowledge based on GoodRelations ontology as common ontology and that is also widely-adopted in e-commerce. The usage of standardized common ontology will ease the publishing and consuming data in the semantic web and achieve communication interoperability between websites and software application. In this thesis, a knowledge based on GoodRelations ontology for www.Bhinneka.com and www.Blibli.com have been built. Afterwards, Openlink Virtuoso (Open Source Edition) is used as a triplestore to collate the knowledge base on the website. Subsequently, an application to facilitate searching from the knowldge base for the e-commerce site has also been built using PHP and Virtuoso SPARQL endpoint for accessing knowledge base using RDF query language SPARQL. Interoperability between both websites and application have been achieved. Search quantity in the application can be improved by using knowledge base containing datasets from www.Bhinneka.com and www.Blibli.com.
Keywords : semantic web, GoodRelations, B2C e-Commerce, Virtuoso triplestore, interoperability.
Implementasi Ontologi Goodrelations..., Michael Setiawan Suhardjono, FTI UMN, 2012
KATA PENGANTAR
Puji syukur kepada Tuhan Yang Maha Esa karena oleh berkat-Nya penulis diberikan kemampuan untuk menyelesaikan skripsi ini. Skripsi berjudul
“Implementasi Ontologi GoodRelations pada Situs www.Bhinneka.com dan www.Blibli.com” ini diajukan guna memenuhi persyaratan untuk memperoleh gelar Sarjana Komputer pada Program Strata I Fakultas Teknologi Informasi dan Komunikasi Universitas Multimedia Nusantara.
Penulis juga hendak mengucapkan terima kasih kepada berbagai pihak yang telah membantu dalam pembuatan skripsi ini, antara lain
1. Dr. Ninok Leksono selaku Rektor Akademik UMN,
2. Januar Wahjudi, S.Kom., M.Sc. selaku Ketua Program Studi Teknik Informatika UMN.
3. Guson P. Kuntarto, S.Kom, M.Sc. selaku Dosen Pembimbing Skripsi.
4. Maria Irmina P., S.Kom. M.T. selaku Pembimbing Akademik.
5. Karyawan PT Bhinneka Mentari Dimensi, khususnya Ibu Vensia dan Bapak Hartanto.
6. Karyawan PT Global Digital Niaga, khususnya Bapak Ferry.
7. Teman-teman yang telah membantu dan menemani penulis dalam mengerjakan skripsi.
8. Keluarga penulis yang tercinta atas segala dukungan yang diberikan selama ini.
Akhir kata, penulis menyadari bahwa skripsi ini tidaklah sempurna. Oleh karena itu, penulis dengan senang hati menerima masukan dan kritik mengenai
vi
laporan ini. Penulis berharap skripsi ini dapat bermanfaat bagi para pembaca, masyarakat umum, serta dapat memberikan perkembangan terhadap kemajuan ilmu pengetahuan dan teknologi.
Gading Serpong, 30 Juli 2012
Implementasi Ontologi Goodrelations..., Michael Setiawan Suhardjono, FTI UMN, 2012
DAFTAR ISI
HALAMAN PENGESAHAN SKRIPSI ... i
PERNYATAAN TIDAK MELAKUKAN PLAGIAT ... ii
ABSTRAKSI ... iii
ABSTRACT ... iv
KATA PENGANTAR ... v
DAFTAR ISI ... vii
DAFTAR TABEL ... ix
DAFTAR GAMBAR ... x
DAFTAR LAMPIRAN ... xv
BAB I PENDAHULUAN ... 1
1.1 Latar Belakang ... 1
1.2 Rumusan Masalah ... 5
1.3 Batasan Masalah ... 6
1.4 Tujuan Penelitian ... 6
1.5 Manfaat Penelitian ... 7
BAB II TINJAUAN PUSTAKA ... 8
2.1 Semantic Web ... 8
2.2 Resource Description Framework... 9
2.3 Simple Protocol and RDF Query Language ... 13
2.4 Openlink Virtuoso ... 14
2.5 E-Commerce ... 15
2.6 GoodRelations Ontology ... 16
viii
BAB III METODOLOGI PENELITIAN... 22
3.1 Metode Penelitian ... 22
3.2 Waktu dan Tempat Penelitian ... 24
BAB IV PERANCANGAN DAN PEMBANGUNAN SISTEM ... 25
4.1 Perancangan Sistem ... 25
4.2 Pembangunan Knowledge Base ... 28
4.3 Input Knowledge Base ke Virtuoso Triplestore... 49
4.4 Halaman Web... 58
4.5 Arsitektur Sistem ... 68
4.6 Pembangunan Sistem ... 69
BAB V IMPLEMENTASI DAN PEMBAHASAN ... 96
5.1 Implementasi Sistem ... 96
5.2 Pembahasan... 100
BAB VI SIMPULAN DAN SARAN ... 115
6.1 Simpulan ... 115
6.2 Saran ... 116
DAFTAR PUSTAKA ... 118
LAMPIRAN ... 122
A. Transkrip Wawancara dengan Key Person www.Bhinneka.com ... 122
B. Source Code PHP ... 124
C. File brand-sameas.owl ... 147
D. Biografi Penulis ... 151
Implementasi Ontologi Goodrelations..., Michael Setiawan Suhardjono, FTI UMN, 2012
DAFTAR TABEL
Tabel 5.1 Hasil Uji Coba Pencarian Produk Menggunakan Keywords pada
halaman simple search ... 103 Tabel 5.1 Hasil Uji Coba Pencarian Produk Menggunakan Keywords pada
halaman simple search (Lanjutan) ... 104 Tabel 5.1 Hasil Uji Coba Pencarian Produk Menggunakan Keywords pada
halaman simple search (Lanjutan) ... 105 Tabel 5.1 Hasil Uji Coba Pencarian Produk Menggunakan Keywords pada
halaman simple search (Lanjutan) ... 106 Tabel 5.1 Hasil Uji Coba Pencarian Produk Menggunakan Keywords pada
halaman simple search (Lanjutan) ... 107 Tabel 5.2 Hasil Uji Coba Pencarian Produk Secara Spesifik menggunakan
advanced search... 110
Tabel 5.2 Hasil Uji Coba Pencarian Produk Secara Spesifik menggunakan
advanced search (Lanjutan) ... 111 Tabel 5.2 Hasil Uji Coba Pencarian Produk Secara Spesifik menggunakan
advanced search (Lanjutan) ... 112
x
DAFTAR GAMBAR
Gambar 2.1 Arsitektur semantic web ... 9
Gambar 2.2 Directed graph dari sebuah RDF statement ... 10
Gambar 2.3 SPARQL query untuk mencari title diawali kata “SPARQL” ... 14
Gambar 2.4 Class Diagram ontologi GoodRelations ... 21
Gambar 4.1 Hubungan antara Business Entity dengan Offering ... 25
Gambar 4.2 Hubungan antara Offering dengan Business Function ... 26
Gambar 4.3 Hubungan antara Offering dengan Product dan Price Specification 26 Gambar 4.4 Hubungan antara Offering dan Payment Method dan Delivery Method ... 27
Gambar 4.5 Hubungan antara Product dan Brand ... 27
Gambar 4.6 Domain model keseluruhan dari aplikasi semantic web ... 28
Gambar 4.7 Struktur RDFa BusinessEntity ... 29
Gambar 4.8 Struktur RDF/XML BusinessEntity ... 30
Gambar 4.9 Struktur RDFa Brand ... 30
Gambar 4.10 Struktur RDF/XML Brand ... 31
Gambar 4.11 Relationship gr:SomeItems dan gr:Brand ... 32
Gambar 4.12 Struktur RDFa SomeItems ... 32
Gambar 4.13 Struktur RDF/XML SomeItems ... 33
Gambar 4.14 Struktur RDFa dari gr:UnitPriceSpecification ... 34
Gambar 4.15 Struktur RDF/XML dari gr:UnitPriceSpecification ... 34
Gambar 4.16 Relationship antara gr:Offering dan gr:BusinessFunction ... 35 Gambar 4.17 Struktur RDFa relationship gr:BusinessFunction pada gr:Offering 35
Implementasi Ontologi Goodrelations..., Michael Setiawan Suhardjono, FTI UMN, 2012
Gambar 4.18 Struktur RDF/XML relationship gr:BusinessFunction
pada gr:Offering ... 35
Gambar 4.19 Relationship gr:Offering dan gr:PaymentMethod ... 36
Gambar 4.20 Struktur RDFa relationship gr:PaymentMethod pada gr:Offering . 37 Gambar 4.21 Struktur RDF/XML relationship gr:PaymentMethod pada gr:Offering ... 37
Gambar 4.22 Relationship gr:Offering dan gr:DeliveryMethod ... 38
Gambar 4.23 Struktur RDFa relationship gr:DeliveryMethod pada gr:Offering . 39 Gambar 4.24 Struktur RDF/XML relationship gr:DeliveryMethod pada gr:Offering ... 39
Gambar 4.25 Relationship gr:BusinessEntity dan gr:Offering ... 40
Gambar 4.26 Relationship gr:Offering dan gr:SomeItems ... 41
Gambar 4.27 Relationship gr:Offering dan gr:UnitPriceSpecification ... 41
Gambar 4.28 Struktur RDFa gr:Offering ... 42
Gambar 4.28 Struktur RDFa gr:Offering (Lanjutan) ... 43
Gambar 4.28 Struktur RDFa gr:Offering (Lanjutan) ... 44
Gambar 4.29 Struktur RDF/XML gr:Offering ... 45
Gambar 4.29 Struktur RDF/XML gr:Offering (Lanjutan) ... 46
Gambar 4.29 Struktur RDF/XML gr:Offering (Lanjutan) ... 47
Gambar 4.30 Relationship pada ontologi GoodRelations yang diimplementasikan ... 48
Gambar 4.31 Pengaturan menu Content Import pada Virtuoso ... 50
Gambar 4.32 Script SQL procedure dump_graph sesuai pada [32]... 52
xii
Gambar 4.33 Script procedure load_graph sesuai pada [32] ... 54
Gambar 4.34 Fungsi “Quad Store Upload” ... 54
Gambar 4.35 Graph final pada Virtuoso Triplestore ... 54
Gambar 4.36 Ilustrasi proses migrasi Knowledge Base ... 55
Gambar 4.37 Procedure pembuatan rule inference pada iSQL ... 56
Gambar 4.38 Query untuk mengkonsolidasi gr:Brand yang memiliki nama yang sama ... 57
Gambar 4.39 Query untuk mengakomodasi inference owl:sameAs pada gr:Brand ... 58
Gambar 4.40 Desain untuk halaman home ... 59
Gambar 4.41 Desain untuk halaman simple search ... 60
Gambar 4.42 Flowchart untuk halaman simple search ... 61
Gambar 4.43 Desain untuk halaman advanced search ... 63
Gambar 4.44 Flowchart untuk halaman advanced search ... 64
Gambar 4.45 Desain untuk halaman browse produk ... 66
Gambar 4.46 Desain untuk tampilan produk ... 66
Gambar 4.47 Desain untuk halaman product detail ... 67
Gambar 4.48 Desain untuk halaman compare product ... 68
Gambar 4.49 Arsitektur sistem ... 69
Gambar 4.50 Tampilan halaman home ... 70
Gambar 4.51 Tampilan halaman browse product ... 71
Gambar 4.52 SPARQL Query untuk mengambil semua produk ... 72
Gambar 4.53 Tampilan halaman simple search ... 73
Implementasi Ontologi Goodrelations..., Michael Setiawan Suhardjono, FTI UMN, 2012
Gambar 4.54 Query pencarian produk berdasarkan keywords... 74
Gambar 4.55 Proses pemecahan keywords berdasarkan spasi ... 75
Gambar 4.56 Proses filtering pada SPARQL query... 76
Gambar 4.57 Proses eksekusi SPARQL query ... 77
Gambar 4.58 Proses pemberian score pada hasil query ... 79
Gambar 4.58 Proses pemberian score pada hasil query (Lanjutan) ... 80
Gambar 4.59 Query untuk mencari metode pengiriman ... 80
Gambar 4.60 Query untuk mencari metode pembayaran... 80
Gambar 4.61 Tampilan halaman advanced search ... 82
Gambar 4.62 Query pencarian produk menggunakan advanced search... 83
Gambar 4.63 Proses filter pada validitas penawaran ... 84
Gambar 4.64 Proses filter pada kategori ... 85
Gambar 4.65 Proses filter pada merek produk ... 85
Gambar 4.66 Proses filter pada business entity penjual ... 86
Gambar 4.67 Proses filter pada pembeli yang berhak... 86
Gambar 4.68 Proses filter pada harga ... 87
Gambar 4.69 Proses filter pada metode pengiriman ... 87
Gambar 4.70 Proses filter pada metode pembayaran ... 88
Gambar 4.71 Proses filter menggunakan keywords ... 89
Gambar 4.72 Query untuk mencari metode pengiriman ... 90
Gambar 4.73 Query untuk mencari metode pembayaran... 90
Gambar 4.74 Tampilan halaman product detail ... 91
Gambar 4.75 Query pencarian spesifikasi detil produk ... 92
xiv
Gambar 4.76 Query untuk mencari metode pengiriman ... 93
Gambar 4.77 Query untuk mencari metode pembayaran... 93
Gambar 4.78 Tampilan halaman compare product... 94
Gambar 5.1 Implementasi halaman home ... 97
Gambar 5.2 Implementasi halaman browse product ... 97
Gambar 5.3 Implementasi halaman simple search ... 98
Gambar 5.4 Implementasi halaman advanced search... 99
Gambar 5.5 Implementasi halaman product detail ... 99
Gambar 5.6 Implementasi halaman compare product ... 100
Gambar 5.7 Ilustrasi penelusuran graph secara forward chaining ... 113
Gambar 5.8 Ilustrasi penelusuran graph secara backward chaining ... 113
Gambar 5.8 Ilustrasi reasoning pada gr:Brand ... 114
Implementasi Ontologi Goodrelations..., Michael Setiawan Suhardjono, FTI UMN, 2012
DAFTAR LAMPIRAN
A. Transkrip Wawancara dengan Key Person www.Bhinneka.com ... 122
B. Source Kode PHP ... 124
C. File brand-sameas.owl ... 147
D. Biografi Penulis ... 151