Prosiding Seminar Nasional Manajemen Teknologi IX Program Studi MMT-ITS, Surabaya 14 Pebruari 2009 CASE TOOL UNTUK PEMODELAN SEMANTIK DATA DALAM WEB ONTOLOGY LAGUANGE (OWL) Catur Bawa1), Daniel Siahaan2) Jurusan Teknik Informatika Fakultas Teknologi Informasi Institut Teknologi Sepuluh Nopember Surabaya [email protected], [email protected] ABSTRAK Semantic web merupakan teknologi yang menyediakan infrastruktur untuk pertukaran informasi dari berbagai resource yang digabungkan berdasarkan pemaknaan (meaning) yang dikandung dalam informasi tersebut dan hubungan antara pemaknaan suatu informasi dengan pemaknaan informasi lainnya. Saat ini, notasi grafis dalam Semantic Web sudah diperkenalkan untuk memodelkan suatu tata bahasa, namun belum ada tools berbasiskan notasi grafis untuk memodelkan data model dalam penyusunan sintaks dari OWL. Penelitian ini ditujukan untuk merancang dan membangun suatu aturan pemodelan grafis OWL dan Case Tool-nya yang dapat digunakan perancang untuk memodelkan tata bahasa yang dapat memberikan semantic meaning pada suatu konten. Hasil dari penelitian ini adalah suatu Case Tool yang menggunakan aturan pemodelan grafis OWL yang telah diujicobakan menggunakan beberapa skenario ujicoba. Pertama, proses transformasi dari dokumen teks OWL ke OWL graph untuk menguji kesamaan konten dari kedua dokumen. Kedua, proses transformasi dari dokumen OWL graph ke dokumen teks OWL untuk menguji kepatuhan terhadap aturan penulisan OWL (Rekomendasi W3C). Ketiga, proses transformasi data model berbasis OWL graph ke dalam SQL Spatial, yaitu Oracle Spatial, menggunakan data sintesis untuk menguji kesamaan dari hasil serangkaian query. Dari hasil ujicoba tersebut, dapat disimpulkan bahwa Case Tool yang dibuat, telah memberikan kontribusi terhadap tingkat keberhasilan proses desain data model dalam OWL. Kata Kunci : Case Tool , Data Model, Notasi Grafis, Semantic web PENDAHULUAN World Wide Web, atau lebih dikenal dengan dunia internet, yang selanjutnya disebut WWW adalah kumpulan dari database yang sangat besar, yang berisi data-data yang tidak memiliki struktur dan keterkaitan antara satu dengan yang lain. Dengan keberadaan data tersebut manusia dapat secara mudah untuk mengumpulkan fakta, menciptakan asosiasi, mendapatkan informasi. Sebab manusia dapat mengerti makna dari informasi yang disajikan ini karena ia memiliki pengetahuan dalam bentuk tata bahasa dan kosakata yang bisa digunakan untuk memproses arti atau semantik dari kata yang tertulis dalam web. Tetapi dengan terus bertambahnya berbagai web dengan konten yang bermacam-macam tersebut manusia akan mengalami kesulitan dalan memilih informasi yang diinginkan. Jika masih menggunakan metode tradisional maka pencarian informasi dalam dunia Internet tersebut akan menemukan kesulitan, seperti perbedaan skema untuk struktur informasi tersebut dan juga perbedaan bahasa yang digunakan. Kalau diperhatikan dengan seksama, dalam pencarian sebuah informasi dengan menggunakan mesin pencari (search engine) masih dijumpai ketidak-cocokan antara informasi yang diinginkan dengan informasi yang didapatkan. Prosiding Seminar Nasional Manajemen Teknologi IX Program Studi MMT-ITS, Surabaya 14 Pebruari 2009 Semantik Web diperkenalkan untuk mencoba menyelesaikan masalah tersebut. Semantic Web memungkinkan dilakukannya pendataan terhadap data yang sangat besar tersebut, mendeskripsikan informasi yang dikandungnya dan memberikan semantic meaning bagi data-data tersebut. Dengan hal ini, mesin akan dapat mengerti dan dapat melakukan pemrosesan terhadap data dan mengubahnya menjadi informasi bagi manusia dan layanan terhadap berbagai aplikasi. Dengan tujuan agar mesin dapat mengolah informasi yang ada, saat ini website mulai disjikan dalam format XML,RDF (Resource Description Framework) RDFS (RDF Schema)dan OWL (Web Ontology Laguange). OWL adalah bahasa yang digunakan untuk merepresentasikan makna suatu obyek dan bagaimana relasi antara obyek tersebut. OWL menggunakan kemampuan RDF untuk memodelkan informasi dari sekumpulan data. Sedangkan data model merupakan suatu tata bahasa yang digunakan untuk mengartikan sekumpulan data untuk menjadi suatu informasi. SEMANTIK WEB Semantic web merupakan teknologi yang menyediakan infrastruktur untuk pertukaran informasi dari berbagai resource yang digabungkan berdasarkan pemaknaan (meaning) yang dikandung dalam informasi tersebut dan hubungan antara pemaknaan suatu informasi dengan pemaknaan informasi lainn ya. Dalam semantic web terdapat semantics, yang menghubungkan sekumpulan data sehingga memiliki arti yang memungkinkan terjadinya pertukaran informasi. Semantics dapat diartikan juga sebagai suatu tata bahasa yang memodelkan sekumpulan data dalam suatu domain informasi tertentu. Sedangkan dalam web yang kita kenal sekarang, yang terjadi hanya pertukaran data. Semantic Web Bukan Artificial Intelligence Konsep "dokumen yang dapat dipahami oleh mesin" (machine-understandable documents) bukan berarti memasukkan Artificial Intelligence ke dalam mesin sehingga mesin mampu memahami bahasa manusia secara menyeluruh. Konsep ini hanya menandakan kemampuan mesin untuk memecahkan well-defined problems (permasalahan yang telah ditentukan) dengan cara melakukan well-defined operations (operasi untuk memecahkan masalah yang juga telah ditentukan) yang tersedia. Singkat kata, daripada meminta mesin untuk memahami komunikasi manusia, manusialah yang diminta keterlibatannya lebih jauh. [7] Semantic Web Dan Relational Database Data model pada Semantic Web sangat erat kaitannya dengan model dari relational database. Sebuah relational database terdiri dari tabel, di mana satu tabel terdiri dari beberapa baris. Tiap baris terdiri dari beberapa kolom. Didalam sebuah database terdapat berbagai pemahaman mengenai struktur data itu sendiri, dalam RDBMS field dikenal sebagai sebuah kolom yang berisikan data. Sedangkan dalam ontology kolom dikenal dengan nama class. Ontology Ontology merupakan suatu teori tentang makna dari suatu objek, property dari suatu objek, serta relasi objek tersebut yang mungkin terjadi pada suatu domain pengetahuan. Pada tinjauan filsafat, ontology adalah studi tentang sesuatu yang ada. Selain itu ontology adalah sebuah konsep yang secara sistematik menjelaskan tentang segala sesuatu yang ada atau nyata. Dalam bidang Artificial Intelligence (AI) ontology ISBN : 978-979-99735-7-3 C-11-2 Prosiding Seminar Nasional Manajemen Teknologi IX Program Studi MMT-ITS, Surabaya 14 Pebruari 2009 memiliki dua pengertian yang berkaitan. Pertama ontology merupakan kosakata representasi yang sering dikhususkan untuk domain atau subjek pembahasan tertentu. Kedua, sebagai suatu body of knowledge untuk menjelaskan suatu bahasan tertentu. Bahasa Ontology Untuk dapat digunakan, sebuah ontology harus diekspresikan dalam notasi yang nyata. Sebuah bahasa ontology adalah sebuah bahasa formal dari sebuah pengembangan ontology. Beberapa komponen yang menjadi struktur ontology, ntara lain: XML (Extensible Markup Langguage) Menyediakan sintaksis untuk output dokumen terstruktur, tetapi belum dipaksakan untuk dokumen XML menggunakan semantic constrains. XML Schema Bahasa untuk pembatasan struktur dari dokumen XML. RDF (Resource Description Framework) 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. Notasi Yang Digunakan Dalam OWL Graph Notasi yang digunakan dalam case tool menggunakan referensi dari paper [2]. Gambar.1 adalah notasi visual yang digunakan. Gambar 1a. merupakan notasi Literal, Gambar 1.b merupakan notasi Resource, dan Gambar 1.c adalah notasi untuk property. Literal R X (a) (b) (c) Gambar 1. Notasi dalam OWL Graph Notasi Literal mendefinisikan suatu harga string atau integer dari suatu data model. Notasi Ressource merupakan segala sesuatu yang dapat diidentifikasi. Notasi Property merupakan relasi dari object Notasi Grafis, dimana X dapat berupa : r = rdfs:range d = rdfs:domain t = rdf:type METODA Blok Diagram Gambar.2 merupakan blok diagram system yang dibuat, dimulai dengan seorang domain expert. Domain expert mendesai data model berbasiskan URI, menggunakan toolbox berupa templete beberapa notasi grafis. ISBN : 978-979-99735-7-3 C-11-3 Prosiding Seminar Nasional Manajemen Teknologi IX Program Studi MMT-ITS, Surabaya 14 Pebruari 2009 Dalam mendesain data model domain expert mendapatkan bantuan dari sistem yang mempunyai beberapa aturan (rules) OWL graph. Desain data model ini berupa notasi grafis dengan relasi - relasi (edges) yang menghubungkan notasi grafis (nodes) tersebut. Setelah proses pembuatan data model yang dilakukan oleh domain expert, maka proses selanjutnya adalah mengkonversinya kedalam bentuk file OWL. File OWL inilah yang digunakan dalam pemberian semantic meaning dari suatu resource. Gambar 2. Blok Diagram Sistem Penyusunan Rules untuk Case Tool OWL Graph OWL Rules adalah aturan-aturan yang digunakan dalam proses transformasi dari dokumen OWL hingga menjadi OWL graph, membentuk dokumen OWL, dan digunakan dalam proses validasi dari data model yang dibuat oleh perancang, sehingga data model tersebut dapat memberikan semantic meaning pada suatu content web secara visual (grafis). Uji Coba dan Evaluasi Pengembangan Sistem yang dibuat Pengujian Rule dalam OWL Graph Gambar 3. berikut ini merupakan tahapan pengujian yang dilakukan untuk mengetahui kebenaran dari rule dalam OWL Graph yang telah dibuat. Dimulai dengan membuka suatu dokumen OWL yang diambil dari OWL Guide yang sesuai dengan rekomendasi dari W3C (W3C Recommendation).[6] ISBN : 978-979-99735-7-3 C-11-4 Prosiding Seminar Nasional Manajemen Teknologi IX Program Studi MMT-ITS, Surabaya 14 Pebruari 2009 Gambar 3. Langkah Pengujian Rule dalam OWL Graph Pengujian dengan Data Sintesa Gambar 4. Langkah Pengujian dengan Data Sintesis Pengujian dengan data sintesis seperti pada Gambar 4. dilakukan untuk mengetahui kebenaran rules dan fungsi Case Tool dalam pembuatan data model dengan melakukan ujicoba perbandingan antara rancangan ER-Diagram yang diimplementasikan pada database MS-Access kemudian dibuat data model dari ERDiagram tersebut ditranformasi ke Ntriples kemudian diimplementasikan pada database Spatial Oracle. ISBN : 978-979-99735-7-3 C-11-5 Prosiding Seminar Nasional Manajemen Teknologi IX Program Studi MMT-ITS, Surabaya 14 Pebruari 2009 HASIL DAN DISKUSI Proses Transformasi dari Dokumen OWL Ke Grafik OWL Berikut ini merupakan uji coba dan hasil dari transformasi dari Dokumen OWL ke Grafik OWL menggunakan fasilitas Open File pada Case Tool. Dokumen OWL yang digunakan adalah Dokumen OWL yang dihasilkan oleh Case Tool berbasiskan text (Protege) yang digunakan sebagai referensi dalam penelitian ini. Gambar 5. Hasil Transformasi dari Dokumen OWL ke Data Model Tabel.1 merupakan analisa hasil ujicoba transformasi dari OWL graph yang telah dilakukan untuk membuat dokumen OWL/XML. (tidah seluruh dokumen ditampilkan) Tabel 1. Analisa Hasil Transformasi dari RDF Graph Ke Dokumen RDF Dokumen Sumber <owl:Class rdf:about="http://www.w3.org/2002/07/owl# ibu"> <rdfs:isDefinedBy rdf:resource="http://www.w3.org/2002/07/o wl"/> <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLS chema#string" >ibu</rdfs:label> <rdfs:subClassOf> <owl:Class rdf:about="http://www.w3.org/2002/07/owl# orang_tua"/> </rdfs:subClassOf> </owl:Class> Dokumen Hasil Transformasi <owl:Class rdf:about="http://www.w3.org/2002/07/owl#i bu"> <rdfs:isDefinedBy rdf:resource="http://www.w3.org/2002/07/ow l#"/> <rdfs:label>ibu</rdfs:label> <rdfs:subClassOf rdf:resource="http://www.w3.org/2002/07/ow l#orang_tua"/> </owl:Class> <owl:Class rdf:about="http://www.w3.org/2002/07/owl# anak_lakilaki"> <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLS chema#string" >anak_lakilaki</rdfs:label> <rdfs:isDefinedBy rdf:resource="http://www.w3.org/2002/07/o wl"/> </owl:Class> <owl:Class rdf:about="http://www.w3.org/2002/07/owl#a nak_lakilaki"> <rdfs:isDefinedBy rdf:resource="http://www.w3.org/2002/07/ow l#"/> <rdfs:label>anak_lakilaki</rdfs:label> </owl:Class> ISBN : 978-979-99735-7-3 C-11-6 Prosiding Seminar Nasional Manajemen Teknologi IX Program Studi MMT-ITS, Surabaya 14 Pebruari 2009 Dari Tabel 1. dibandingkan (kolom sebelah kiri merupakan dokumen sumber sedangkan kolom sebelah kanan merupakan dokumen hasil transformasi), maka pada dokumen sumber, Class ibu merupakan subClass dari orang_tua, demikian juga dengan dokumen hasil transformasinya. Class ibu merupakan subClass dari orang_tua. Sehingga dapat dikatakan, bahwa content antara dokumen sumber dan hasil transformasi adalah sama, dan dapat diterima (diujicobakan) pada editor text referensi. Perbedaan yang mungkin muncul pada dokumen hasil transformasi adalah pada urutan penyebutan class dan atribut pada suatu object data model. Namun hal seperti ini tidak menjadi masalah, sebab salah satu sifat dokumen OWL/XML adalah tidak mementingkan urut-urutan penyebutan dari object data model ataupun atribut dari object data model tersebut. Hasil Ujicoba Query dan Analisa Menggunakan Data Sintesis Ujicoba dengan melakukan Query terhadap dua jenis database telah dilakukan, yang pertama dilakukan pengujian terhadap database MS-Access dan yang kedua terhadap Oracle 11 Berikut ini Query yang dilakukan pada database Access : Mencari Pegawai Yang Menjabat Kepala SELECT Pegawai.Nama, Pegawai.NIP, Pegawai.Gaji, departemen.Jabatan FROM Pegawai INNER JOIN departemen ON Pegawai.NIP = departemen.NIP WHERE (((departemen.Jabatan)="kepala")); Hasil: Berikut ini Query yang dilakukan pada oracle spatial : Mencari Pegawai Yang Menjabat Kepala SELECT p kepala FROM TABLE(SDO_RDF_MATCH( '(?p rdf:type pnb:Pegawai)(?p owl:memiliki_jabatan ay:Kepala)', SDO_RDF_Models('Departemen'), null, SDO_RDF_Aliases(SDO_RDF_Alias('pnb','http://www.pnb.ac.id/politeknik/'),SDO_R DF_Alias('owl','http://www.w3.org/2002/07/owl#')), null)); Hasil: KEPALA ----------------------------------------------http://www.pnb.ac.id/politeknik/Budi http://www.pnb.ac.id/politeknik/Jony 2 rows selected Query yang dilakukan terhadap dua database yang berbeda terdapat perbedaan dan persamaan. Persamaannya adalah hasil query pada masing-masing database adalah sama. Sedangkan perbedaannya adalah, pada database MS-Access dihasilkan suatu records data dari suatu database yang merupakan hasil Query tertentu, sedangkan hasil ISBN : 978-979-99735-7-3 C-11-7 Prosiding Seminar Nasional Manajemen Teknologi IX Program Studi MMT-ITS, Surabaya 14 Pebruari 2009 Query pada database Oracle 11g dihasilkan suatu informasi tertentu dalam format URIref. Informasi yang dihasilkan dari Query tersebut sangat tergantung pada data model dan instance dari data model yang dibuat. KESIMPULAN Dalam uji coba yang telah dilakukan, baik dalam proses transformasi dari dokumen OWL ke OWL graph ataupun dari OWL graph ke dokumen OWL, terbukti bahwa case tool ini menghasilkan dokumen yang sama kontennya dengan aslinya, dan sesuai dengan rekomendasi dari W3C Recommendation maupun sesuai dengan rules yang ada dalam Oracle 11g. Hal ini menandakan kebenaran dari desain rules OWL graph yang dilakukan dalam penelitian ini. Dengan Case Tool berbasiskan OWL graph ini dapat memberikan kontribusi nyata terhadap pemodelan data dalam OWL, sehingga dapat digunakan dalam mendesain data model dalam Semantic Web Search Engine yang sesuai dengan rekomendasi dari W3C (W3C Recommendation). DAFTAR PUSTAKA Aditya Prapanca, Case Tool For Data Modeling In Resource Description Framework, Informatic Departement Faculty of Information Technology, Sepuluh Nopember Institute of Technology, Surabaya, 2007 Daniel Siahaan, Graphical Notation For Semantic Web Language, ICTS 2006 Informatic Departement Faculty of Information Technology, Sepuluh Nopember Institute of Technology, Surabaya, 2006 Balani Naveen, The future of the Web is Semantic, IBM developerWorks Oktober 2005 Protege, Stanford University, http://protege.stanford.edu (2 Maret 2008) OWL Web Ontology Language Reference, http://www.w3.org/TR/2003/CR-owl-ref20030818/ (2 Maret 2008) W3C Recommendation OWL Web Ontology Language Guide, http://www.w3.org/TR/2004/REC-owl-guide-20040210/(2 Maret 2008) Tim Berners-Lee, What the Semantic Web can Represent, 1998 ISBN : 978-979-99735-7-3 C-11-8