azhari disertasi chapter 04 knowledge ontologi 23u

22
102 mampu menunjukan peningkatan tahap-tahap proses perancangan secara konprehensif. 4.3 Ontologi 4.3.1 Definisi Ontologi Dalam sepuluh tahun terakhir, para peneliti bidang komputasi basisdata dan basis pengetahuan telah mengusulkan berbagai pendekatan model data semantis agar dapat mengolah basisdata dan pengetahuan secara lebih menyeluruh dan semantis. Salah satu di antaranya adalah pendekatan model data semantis berbasis ontologi, seperti dinyatakan oleh Back dan Vainikainen (2003) bahwa sebuah sistem pengetahuan dapat disimpan, disajikan dan ditampilkan dalam banyak bentuk seperti skema taxomoni, semantik, ontologi. Melalui model ontologi diharapkan mampu mengambarkan struktur semantis dari suatu domain pengetahuan. Dengan lain kata, pendekatan model data ontologi memungkinkan sebuah sistem dan aplikasi dapat menangani informasi dan memanfaatkan kembali menjadi pengetahuan bagi setiap orang sesuai dengan pola dan minat ketertarikan tertentu yang diinginkannya (Azhari dan Wardoyo, 2005). Definisi dan pengertian dari ontologi dapat ditemukan di dalam banyak literatur, misalnya menurut Gruber (1993), bahwa sebuah ontologi adalah sebuah spesifikasi eksplisit dari sebuah konsepsi. Swartout et al. (1997) mendefinisikan ontologi adalah sekumpulan istilah terstruktur secara hirarki untuk menjelaskan sebuah domain yang dapat digunakan sebagai kerangka dasar sebuah basis pengetahuan. Menurut Neches et al. (1991), sebuah ontologi merupakan definisi dari pengertian dasar dan relasi vokabulari dari suatu area pengetahuan termasuk bagaimana aturan dari kombinasi istilah dan relasi untuk mendefinisikan vokabulari. Kemudian Bernaras et al. (1996) menyebutkan bahwa sebuah ontologi memberikan cara untuk menjelaskan secara eksplisit konsepsi yang terkandung dari representasi pengetahuan suatu basis pengetahuan. Studer et al. (1998) menyatakan bahwa sebuah ontologi adalah spesifikasi formal, dan eksplisit dari konsepsi bersama. Selanjutnya Osterwalder dan Pigneur (2002) menjelaskan

Upload: ryan-begana-begini

Post on 02-Oct-2015

31 views

Category:

Documents


2 download

DESCRIPTION

disertasi mhs

TRANSCRIPT

  • 102

    mampu menunjukan peningkatan tahap-tahap proses perancangan secara

    konprehensif.

    4.3 Ontologi 4.3.1 Definisi Ontologi

    Dalam sepuluh tahun terakhir, para peneliti bidang komputasi basisdata dan

    basis pengetahuan telah mengusulkan berbagai pendekatan model data semantis

    agar dapat mengolah basisdata dan pengetahuan secara lebih menyeluruh dan

    semantis. Salah satu di antaranya adalah pendekatan model data semantis berbasis

    ontologi, seperti dinyatakan oleh Back dan Vainikainen (2003) bahwa sebuah

    sistem pengetahuan dapat disimpan, disajikan dan ditampilkan dalam banyak

    bentuk seperti skema taxomoni, semantik, ontologi. Melalui model ontologi

    diharapkan mampu mengambarkan struktur semantis dari suatu domain

    pengetahuan. Dengan lain kata, pendekatan model data ontologi memungkinkan

    sebuah sistem dan aplikasi dapat menangani informasi dan memanfaatkan kembali

    menjadi pengetahuan bagi setiap orang sesuai dengan pola dan minat ketertarikan

    tertentu yang diinginkannya (Azhari dan Wardoyo, 2005).

    Definisi dan pengertian dari ontologi dapat ditemukan di dalam banyak

    literatur, misalnya menurut Gruber (1993), bahwa sebuah ontologi adalah sebuah

    spesifikasi eksplisit dari sebuah konsepsi. Swartout et al. (1997) mendefinisikan

    ontologi adalah sekumpulan istilah terstruktur secara hirarki untuk menjelaskan

    sebuah domain yang dapat digunakan sebagai kerangka dasar sebuah basis

    pengetahuan. Menurut Neches et al. (1991), sebuah ontologi merupakan definisi

    dari pengertian dasar dan relasi vokabulari dari suatu area pengetahuan termasuk

    bagaimana aturan dari kombinasi istilah dan relasi untuk mendefinisikan

    vokabulari. Kemudian Bernaras et al. (1996) menyebutkan bahwa sebuah ontologi

    memberikan cara untuk menjelaskan secara eksplisit konsepsi yang terkandung

    dari representasi pengetahuan suatu basis pengetahuan. Studer et al. (1998)

    menyatakan bahwa sebuah ontologi adalah spesifikasi formal, dan eksplisit dari

    konsepsi bersama. Selanjutnya Osterwalder dan Pigneur (2002) menjelaskan

  • 103

    bahwa ontologi adalah spesifikasi eksplisit dari konseptualisasi yang membuat

    konsep lebih spesifik dengan menggunakan konsep dan role lain.

    Dari pengertian-pengertian tersebut dapat dikatakan bahwa ontologi adalah

    suatu konsepsi formal (dalam arti dapat dibaca oleh mesin) dari sebuah domain

    pengetahuan tertentu (dapat terdiri dari konsep, relasi, fungsi, aksioma) dan

    dipakai secara bersama-sama oleh kelompok orang. Penjelasan dari pengertian ini

    secara skematisasi ditunjukkan pada Gambar 4.2.

    Gambar 4.2 Definisi dan pengertian ontologi (Studer et al, 1998)

    Pendefinisian yang mendekati lebih teknis ditunjukkan oleh Abugessaisa

    dan Sivertun (2004), serta Serra et al. (2004) yaitu bahwa ontologi merupakan

    cara merepresentasikan pengetahuan tentang makna dari suatu objek, properti dari

    suatu objek, serta relasi objek tersebut yang mungkin terjadi pada domain

    pengetahuan. Atau dengan lain kata, ontologi merupakan cara merepresentasikan

    pengetahuan yang terkait dengan makna (secara semantis) dalam bentuk obyek,

    properti dari suatu obyek, serta relasi obyek tersebut yang mungkin terjadi pada

    suatu domain pengetahuan, dan dapat digunakan untuk berbagi pengetahuan.

    Dalam ontologi, pengetahuan direpresentasikan dalam bentuk classes,

    properties, slots, dan instans (Abugessaisa dan Sivertun, 2004; Alavi dan Leidner,

  • 104

    2001; Marwick, 2001). Kishore et al. (2003) lebih menegaskan lagi bahwa

    ontologi dapat dianggap sebagai deskripsi formal dari suatu domain wacana

    pengetahuan tertentu (atau sebagai konsep), dan direpresentasikan sebagai class

    yang menggambarkan karakteristik umum individual, property individual

    menentukan fitur dan atribut umum dari konsep slot/role, dan batasan pada slot

    disebut facet (role restriction). Menurut Bertino dan Catania (2001), model

    ontologi yaitu teori mengenai keberadaan segala jenis entitas yang didefinisikan

    dalam suatu ranah dan dinyatakan dalam jaringan graf semantik yang terdiri atas

    hierarki class, slot, dan instance yang diharapkan dapat membantu perekayasa

    pengetahuan (knowledge engineer) dalam membangun sistem manajemen

    pengetahuan. Guarino (1998), Noy dan McGuinness (2001) dengan kata yang

    sama juga menyatakan bahwa suatu ontologi tersusun atas beberapa komponen

    penting yaitu classes (concepts), attributes (properties), relationships (slot) dan

    individuals (instances).

    Classes (concepts)

    Suatu kelas menjelaskan konsep-konsep yang ada dalam suatu domain

    sehingga dapat pula merupakan penjelasan dari tugas, fungsi, aksi, strategi, dan

    sebagainya. Biasanya sebuah kelas merupakan sekumpulan dari obyek-obyek

    dengan properti yang sama. Sebuah kelas juga bisa memiliki subkelas yang mana

    subkelas ini akan merepresentasikan konsep yang lebih spesifik daripada

    superkelasnya, seperti diperlihatkan pada Gambar 4.3. Dalam kelas juga dikenal

    istilah partisi, yaitu sekumpulan konsep yang saling berhubungan dimana aturan-

    aturan tertentu dapat diciptakan dan diterapkan. Jenis partisi yang paling umum

    digunakan adalah partisi disjoint, yaitu partisi yang digunakan untuk memastikan

    bahwa tidak ada instance yang menjadi instance dari kelas-kelas yang saling

    disjoint (Horridge et al., 2004).

    Atribut (properties)

    Obyek-obyek yang berada dalam ontologi bisa dideskripsikan dengan

    memberi tambahan atribut (properties). Setiap atribut memiliki paling tidak

    sebuah nama yang digunakan untuk menyimpan informasi, nilai, status yang

    terukur secara spesifik tentang obyek yang diberi atribut tersebut.

  • 105

    Relationship (slot)

    Suatu relationships atau disebut juga dengan slot, menjadi penting dalam

    sebuah ontologi, karena merepresentasikan kerangka dari pengetahuan atau harus

    mendeskripsikan relasi antara obyek-obyek dari kelas dan individu yang ada.

    Kumpulan dari relasi secara menyeluruh akan mendeskripsikan semantik atau arti

    dari sebuah entitas.

    Individu (instances)

    Instances dari sebuah ontologi bisa berupa obyek nyata, atau individu yang

    telah diciptakan. Seperti mahasiswa, kucing, molekul, buku atau juga bisa berupa

    obyek abstrak seperti bilangan dan huruf. Seperti yang telah disebutkan tujuan

    utama dari ontologi adalah menjelaskan arti dalam pengklasifikasian individu

    sebagai kerangka pengetahuan meskipun individu tersebut secara eksplisit bukan

    bagian dari ontologi. Instant dari sebuah subklas juga merupakan instant dari

    suatu superklas.

    Pada Gambar 4.3 diperlihatkan sebuah ontologi yang merepresentasikan

    pengetahuan dari proyek yang disimpan dalam skema ontologi. Slot atau relasi

    yand dibuat adalah works-in (person dengan project); knows (person dengan

    topic); cooperate-with (person dengan person), has-member (project dengan

    person); dan is-about (project dengan topic). Dari aksioma ontologi ini, terlihat

    bahwa jika sesorang bekerja dalam suatu proyek maka orang tersebut mengetahui

    topik dan informasi dari proyek tersebut.

    Gambar 4.3 Contoh model ontologi proyek

  • 106

    Dari contoh sederhana model ontologi proyek ini, semakin jelas terlihat

    bahwa ontologi merupakan suatu teori tentang makna dari suatu objek, properti

    dari suatu objek serta relasi objek tersebut yang mungkin terjadi pada suatu

    lingkup domain pengetahuan (Chandrasekaran, 1999). Dengan demikian menurut

    keyakinan Noy dan McGuinness (2001) ontologi telah menjadi sangat penting

    karena dapat digunakan menerangkan tentang struktur suatu disiplin ilmu.

    Ontologi membuka kemungkinan untuk berpindah dari pandangan berorientasi

    dokumen ke arah pengetahuan yang saling terkait, dikombinasikan dan untuk

    digunakan.

    4.3.2 Tahapan Pengembangan Ontologi Pengembangan ontologi merupakan proses yang iteratif. Proses membangun

    ontologi pada dasarnya dilakukan dengan mendefinisikan himpunan data dan

    strukturnya agar dapat digunakan oleh sistem dan program aplikasi lainnya.

    Ontologi terbaik yang digunakan tergantung pada aplikasi yang akan dibangun,

    dan dengan pertimbangan berbagai perluasan yang harus diantisipasi. Konsepsi

    yang dibentuk harus dapat mendekati dengan keadaan obyek sebenarnya (secara

    fisik maupun logik) dan relasi dalam domain yang dikembangkan. Terdapat

    berbagai pendapat mengenai tahapan proses pengembangan sebuah model

    ontologi.

    Berikut ini menurut Cristani dan Cuel (2005), Noy dan McGuinnes (2001),

    Corcho et al. (2003) tahapan yang dilakukan dalam proses pengembangan suatu

    ontologi adalah seperti berikut:

    1. Tahap Penentuan Domain

    Merupakan tahap awal proses digitalisasi pengetahuan yang dilakukan dengan

    cara menjawab beberapa pertanyaan seperti: Apa yang merupakan domain

    ontologi? Mengapa harus menggunakan ontologi? Apa jenis pertanyaan

    terhadap ontologi sehingga perlu menyediakan jawaban? Siapa akan

    menggunakan dan memelihara ontologi?

  • 107

    2. Tahap Penggunaan Ulang

    Tahap penggunaan kembali dan justifikasi dari ontologi yang telah dibangun.

    Hal ini dimungkinkan karena merupakan sebuah kebutuhan saat sistem harus

    berhubungan dengan aplikasi yang menyatu dengan ontologi.

    3. Tahap Pendefinisian Istilah

    Tahap proses menentukan istilah-istilah yang digunakan untuk membuat

    pernyataan atau untuk menjelaskan hal yang sama.

    4. Tahap Pendefinisian Kelas dan Hirarki Kelas

    Menciptakan beberapa definisi dari konsep dalam hirarki dan kemudian

    menguraikan properti dari konsep. Hirarki kelas direpresentasikan dengan

    relasi is-a : setiap kelas A adalah subkelas B jika setiap instant kelas A juga

    instant kelas B.

    5. Tahap Pendefinisian Properti

    Secara umum, ada beberapa jenis properti (sifat) obyek yang dapat menjadi slot

    dalam suatu ontologi. Properti Intrinsik (hakiki), seperti rasa dari anggur.

    Properti Ekstrinsik (karena keadaan luar), seperti nama anggur dan area

    (regional). Properti karena hubungan dengan individu yang lain, misalnya

    hubungan antara anggota individu dari suatu kelas dengan individu yang lain.

    6. Tahap Pendefinisian Konstrain dan Slot

    Beberapa domain pengetahuan dapat memiliki memiliki slot bersyarat

    kardinalitas tunggal (satu nilai) atau dengan kardinalitas banyak (memiliki

    sejumlah nilai). Kardinalitas dari N berarti suatu slot mempunyai sedikitnya N

    nilai. Suatu slot juga dapat berupa string, boolean, enumerasi (simbolik), serta

    instant.

    7. Tahap Pembuatan Instant

    Pendefinisian sebuah instant dari kelas dapat meliputi pememilihan kelas,

    pembuatan individu instant dari kelas, dan pengisian nilai slot.

    Thunkijjanukij et al. (2009) dan Liping et al. (2007) menuliskan bahwa

    untuk merancang dan membangun ontologi juga perlu diperhatikan kriteria-

    kriteria berikut: (1) clarity and Objectivity, ontologi harus dipersiapkan dengan

  • 108

    arti yang merupakan definisi istilah sebagai definisi tujuan (objective) dalam

    sebuah dokumentasi, (2) completeness, definisi dinyatakan dalam istilah yang

    penting dan memadai, (3) coherence, konsistensi dalam pemberian definisi, (4)

    consistency, memungkinkan melakukan pengecekan silang dengan hal yang

    kontradiksi dari definisi yang valid, (5) meminimalkan jarak semantik dengan

    konsep sibling, (6) memaksimumkan extendible dari definisi, (7) meminimalkan

    komitmen ontologi, dan (8) standarisasi nama jika ini memungkinkan.

    4.4 Web Ontology Language 4.4.1 OWL

    Web Ontologi Language (OWL) adalah serangkaian bahasa markup yang

    dirancang untuk digunakan oleh aplikasi untuk memproses isi informasi, bukan

    hanya sekedar menyajikan informasi kepada penggunanya. OWL menjelaskan

    hirarki secara terorganisasir suatu ide, pengetahuan dari suatu suatu domain,

    dengan cara yang dapat dipecah dan dipahami oleh perangkat lunak. Seperti yang

    dituliskan oleh McGuinness dan Harmelen (2004), OWL dirancang untuk

    digunakan oleh aplikasi untuk memproses isi informasi, dalam arti bukan hanya

    menyajikan informasi. OWL dapat memfasilitasi mesin menginterpretasikan dari

    isi halaman web dengan dukungan XML, RDF, RDF dan Skema (RDF-S) karena

    menyediakan tambahan kosa kata secara semantik formal. Antoniou dan

    Harmelen (2003), OWL dapat dibedakan tiga varian subbahasa berdasarkan

    tingkat ekspresinya: OWL Full, OWL DL dan OWL Lite.

    a. OWL-Full

    OWL Full diperuntukan bagi user yang menginginkan sub bahasa yang

    sangat ekspresif dan secara sintaks lepas dari RDF tanpa jaminan komputasional.

    Misalnya, dalam OWL Full, suatu kelas boleh dianggap sebagai kumpulan dari

    individu dan sekaligus menjadi individu bagi dirinya sendiri. OWL Full

    memungkinkan suatu ontologi untuk merubah arti dari kosakata yang sudah

    didefinisikan (misalnya kosakata milik RDF atau OWL). Hal ini merupakan

  • 109

    kelemahan dari OWL Full yaitu menyebabkan OWL Full tidak mendukung

    reasoning yang lengkap.

    b. OWL-DL (Description Logic)

    OWL-DL merupakan sub-languange dari OWL-Full. OWL-DL jauh lebih

    ekspresif dibanding OWL-Lite. Kelebihan dari OWL-DL adalah di mana proses

    komputasi di OWL-DL sangat lengkap sehingga semua kesimpulan dijamin dapat

    dihitung dan bisa diputuskan (semua komputasi akan selesai dalam waktu yang

    tertentu). OWL-DL dapat menghasilkan hierarki klasifikasi secara otomatis dan

    mampu mengecek konsistensi dalam suatu ontologi karena OWL-DL mendukung

    reasoning.

    c. OWL-Lite

    Dilihat dari sintaksnya, OWL-Lite paling sederhana. Jenis ini digunakan jika

    pengguna hanya membutuhkan hierarki kelas yang sederhana dengan batasan

    yang sederhana pula. OWL-Lite menyediakan cara yang cepat untuk berpindah

    dari thesaurus dan hierarki sederhana yang sudah ada. Kelebihan dari OWL jenis

    ini adalah lebih mudah dipahami bagi user dan kemudahannya dalam

    pengimplementasiannya dalam suatu tool. Sebagai contoh jika menggunakan

    batasan kardinalitas, ia hanya mengijinkan nilai kardinalitas 0 dan 1.

    OWL Full menurut McGuinness dan Harmelen (2004), dapat dipandang

    sebagai ekstensi dari RDF, sementara OWL Lite dan OWL DL dapat dipandang

    sebagai ekstensi dari keterbatasan RDF. Setiap dokumen OWL (Lite, DL, Full)

    adalah sebuah dokumen RDF, dan setiap dokumen RDF adalah sebuah dokumen

    OWL Full, tapi hanya beberapa dokumen RDF dapat merupakan sebuah dokumen

    OWL Lite atau OWL DL. Karena itu, perlu hati-hati bila pengguna ingin

    bermigrasi dari sebuah dokumen RDF ke OWL. Misalnya, bila ekspresi dari OWL

    DL atau OWL Lite dianggap tepat, ada beberapa tindakan yang perlu diperhatikan

    untuk memastikan bahwa dokumen RDF asli sesuai dengan kendala tambahan

    dibutuhkan oleh OWL DL dan OWL Lite. Antara lain, setiap URI yang digunakan

    sebagai nama kelas harus ditegaskan secara eksplisit menjadi jenis owl:Class

    (termasuk untuk properti), setiap individu harus ditegaskan menjadi minimal satu

  • 110

    kelas (meskipun hanya owl:Thing), URI digunakan untuk kelas, properti dan

    individu harus saling terpisahkan.

    World Wide Web Consortium (W3C) merekomendasikan OWL sebagai

    bahasa ontologi. OWL dapat digunakan untuk merepresentasikan arti dari istilah-

    istilah suatu domain pengetahuan secara eksplisit serta relasi antara istilah tersebut

    yang tidak dapat dipisahkan dengan dokumen dan aplikasi web. OWL

    dikembangkan dari teknologi yang direkomendasikan dan sesuai standar oleh

    W3C, yaitu XML/S dan RDF/S. OWL menambahkan kosakata untuk

    menggambarkan kelas dan properti, yaitu antara lain: relasi antar kelas (misalnya

    disjoint), kardinalitas, equality, tipe properti yang lebih luas, karakteristik properti

    (misalnya simetri), dan kelas enumerasi. Dengan demikian OWL memiliki

    fasilitas lebih dibanding XML dan RDF/S dalam mengekspresikan arti dan

    semantik. OWL juga melebihi bahasa-bahasa di atas dalam kemampuan

    merepresentasikan isi dokumen web yang machine-interpreted (McGuinness dan

    Harmelen, 2004).

    4.4.2 Struktur dan Elemen OWL Antoniou and Harmelen (2003) serta Smith et al. (2004) memberikan

    dokumentasi pedoman cukup lengkap mengenai cara penulisan dan contoh-contoh

    ontologi dengan OWL. Berikut ini dipilih dan diberikan struktur dan beberapa

    elemen dasar dari OWL.

    1. Sintaks OWL

    Ontologi OWL merupakan graf RDF yang diubah menjadi kumpulan triple-

    triple RDF. OWL menggunakan sintaks yang sama dengan RDF dalam

    merepresentasikan triple. Misal sintaks . Sintaks tersebut memiliki arti yang sama dengan representasi sintaks RDF/XML,

    misalnya diperlihatkan pada Gambar 4.4.

    Gambar 4.4 Sintaks RDF/XML

  • 111

    OWL merupakan perluasan dari kosakata RDF. Setiap graf RDF dapat

    membentuk ontologi OWL. Arti sebuah graf RDF sama dengan arti yang

    diberikan oleh graf OWL. Informasi dalam bentuk OWL disatukan dalam

    ontologi, yang dapat disimpan sebagai dokumen web. Kosakata OWL berasal dari

    http://www.w3.org/2002/07/owl# dengan namespace owl:.

    2. Kelas OWL

    Kelas OWL menyediakan mekanisme untuk mengklasifikasikan sejumlah

    resource dengan karakteristik tertentu. Seperti konsep kelas dalam RDF, setiap

    kelas OWL berhubungan dengan sejumlah individu yang disebut perluasan kelas

    (class extension). Individu-individu dalam perluasan kelas disebut instance.

    Sebuah kelas memiliki konsep khusus yang dapat berelasi namun tidak sama

    dengan kelas yang menjadi perluasannya. Oleh karena itu, dua kelas mungkin

    memiliki perluasan kelas yang sama, namun tetap merupakan kelas yang berbeda.

    Tabel 4.6 diberikan beberapa sintaks kelas owl, Gambar 4.5 skema relasi

    struktur dari class, properties, objectproperties, datatypeproperties, dan Gambar

    4.6 diberikan contoh owl kelas dan subkelas, serta Gambar 4.7 contoh individu.

    Tabel 4.6 Beberapa kelas OWL Kosakata Keterangan owl:AnnotationProperty Kelas yang anggotanya berupa properti yang dipakai

    untuk menyatakan keterangan. owl:Class Menyatakan deklarasi sebuah kelas dalam OWL. owl:DataRange Kelas yang anggotanya adalah range suatu properti,

    bila range merupakan kumpulan nilai (List, gabungan sejumlah kelas).

    owl:DatatypeProperty Kelas yang anggotanya adalah properti-properti yang menghubungkan individu ke nilai data (range dari properti adalah suatu nilai tertentu, bukan individu)

    owl:ObjectProperty Kelas yang anggotanya adalah properti-properti yang menghubungkan individu yang satu ke individu yang lain (range-nya berupa individu).

    owl:Ontology Menggambarkan bahwa sebuah dokumen merupakan dokumen ontologi.

  • 112

    Gambar 4.5 Relasi OWL dengan RDF

    Gambar 4.6 Contoh class dan subclass

    Gambar 4.7 Contoh individuals

    3. Properti OWL

    OWL membedakan properti kedalam dua kategori yaitu : (a) Object

    Property, yang menghubungkan individu yang satu ke individu yang lain. Properti

    ini didefinisikan sebagai instance dari kelas owl:ObjectProperty; (b) Datatype Property, yang menghubungkan individu ke nilai data. Properti ini didefinisikan

    sebagai instance dari kelas owl:DatatypeProperty. Pada Tabel 4.7 diberikan

    ...

  • 113

    beberapa sintaks properties kelas owl, dan Gambar 4.8 diberikan contoh bagian

    pembuatan owl properties.

    Tabel 4.7 Beberapa properti OWL Kosakata Keterangan owl:cardinality Menggambarkan kelas dari individu yang mempunyai tepat N

    nilai semantik yang berbeda (individu atau nilai data) untuk properti tersebut.

    owl:differentFrom Untuk menyatakan dua referensi URI yang menunjuk individu yang berbeda.

    owl:disjointWith Untuk menyatakan bahwa kelas-kelas yang disebutkan tidak memiliki satu anggota pun sebagai irisannya.

    owl:hasValue Properti yang menghubungkan batasan suatu kelas dengan suatu nilai V, yang dapat berupa individu maupun nilai data. Perluasan kelas yang memiliki properti ini beranggotakan individu-individu yang memiliki nilai properti yang disebutkan (dibatasi) minimal satu yang secara semantik ekuivalen V.

    owl:sameAs Menyatakan dua individu yang secara semantik adalah sama

    Gambar 4.8 Contoh ObjectProperties dan DataProperties

    ...

  • 114

    4.4.3 SPARQL W3C merekomendasikan SPARQL sebagai standar bahasa query yang

    digunakan untuk mengambil informasi dari OWL dan pengembangan Semantic

    Web. SPARQL menyediakan fasilitas untuk mengekstraksi informasi dalam

    bentuk URI, blank node dan literal, mengekstraksi sub graf RDF, dan membangun

    graf RDF baru berdasar pada informasi dari graf yang diinginkan. Struktur

    perintah yang digunakan dalam query SPARQL adalah dengan Select-From-

    Where seperti yang diperlihatkan dari sebuah contoh pada Gambar 4.9 (Dodds,

    2005).

    Gambar 4.9 Contoh perintah SPARQL

    1. PREFIX

    Prefix merupakan mekanisme penentuan awalan untuk menyingkat URI.

    Misalnya foaf: http://xmlns.com/foaf/0.1/ berarti URI tersebut disingkat dengan

    awalan foaf. Prefix ini berupa sintatik, nama prefiks tidak mempengaruhi query,

    nama prefiks juga tidak harus sama dengan prefiks yang digunakan pada

    serialisasi data.

    2. SELECT

    Dalam statement SELECT didefinisikan sebuah daftar variabel-variabel yang akan dikembalikan sebagai hasil dari eksekusi query. Setiap variabel didahului

    dengan tanda tanya (?) dan bisa diberi nama dengan menggunakan karakter alfanumerik yang dikombinasikan dengan garis bawah, misalnya ?name.

    3. FROM

    Pada statement FROM ini dispesifikasikan jalur atau URL dari dokumen RDF yang akan di-query. Misalnya FROM .

    PREFIX foaf: SELECT ?name ?mbox FROM WHERE { ?x foaf:name ?name . ?x foaf:mbox ?mbox . }

  • 115

    4. WHERE

    Dalam statement WHERE didefisinikan sederetan triple pattern yang harus dimiliki oleh setiap hasil query yang valid. Seluruh pola yang merepresentasikan

    suatu kalimat RDF harus memiliki bentuk sesuai dengan RDF triples yang terdiri

    dari subject, predicate, dan object. Ketiga RDF triples tersebut dapat berupa

    atau sebuah ?variable. Object juga dapat berupa Literal. Misalnya ?x foaf:name ?name .

    SPARQL pada dasarnya menyediakan cara untuk menggabungkan pola-pola

    graf sehingga satu dari beberapa pola graf alternatif akan cocok. Jika ada lebih

    dari satu pola alternatif yang cocok, maka semua kemungkinan solusi pola akan

    ditemukan. Pola alternatif ini dinyatakan dengan kata kunci UNION. Untuk mendapatkan hasil query dimana nilai variabel tertentu harus memenuhi suatu

    kriteria maka digunakan tambahan kata kunci FILTER yang diikuti dengan operasi tertentu yang menyatakan kriteria tersebut. Operator yang biasa digunakan untuk

    mencocokkan nilai suatu literal dengan suatu kata adalah REGEX. Hasil query juga dapat dimodifikasi dengan menambahkan kata kunci

    DISTINCT yang akan memastikan bahwa setiap kombinasi dari pengikatan variabel pada sederetan hasil query adalah unik. Selain itu, hasil query juga dapat

    diurutkan menurut aturan tertentu dengan menambahkan klausa ORDER BY.

    4.4.4 Perangkat Lunak Bantu OWL Berkaitan dengan metodologi dan bahasa ontologi yang disebut pada subbab

    4.3.2 dan 4.4.1 telah banyak pula dikembangkan perangkat lunak bantu untuk

    memudahkan pembuatan dan pengeditan ontologi, beberapa di antaranya adalah

    Protg, WebODE, OE Hozo, dan Alvota SemanticWorks (Corcho et al., 2003;

    Mizoguchi, 2003).

    Protg

    Protg (Gennari et al., 2003) merupakan tool grafis berbasis Java yang

    bersifat open source yang dikembangkan oleh Universitas Stanford untuk

  • 116

    membuat ontologi. Protg memfasilitasi seorang pengembang untuk membuat

    model domain pada level konseptual tanpa harus mengetahui sintaks dari bahasa

    tersebut secara rinci. Protg dapat digunakan untuk membuka, mengubah, dan

    menyimpan ontologi ke dalam berbagai macam format seperti CLIPS, RDF,

    XML, UML, OWL, dan basis data relasional. Selain itu Protg juga

    menyediakan sebuah lingkungan yang bersifat plug-and-play, sehingga mampu

    menjadi dasar yang fleksibel bagi pembuatan prototype dan aplikasi secara cepat.

    Pengembang dapat berkonsentrasi pada konsep dan relasi dari domain

    pengetahuan yang sedang dibahas dan fakta mengenai relasi-relasi tersebut yang

    langsung diekspresikan dalam sintaks. Protg dapat digunakan untuk melakukan

    tugas-tugas sebagai berikut :

    1. Pemodelan kelas: Protg menyediakan GUI (graphical user interface)

    yang memodelkan kelas-kelas (konsep mengenai suatu domain) dan

    atributnya serta relasi antar kelas tersebut.

    2. Mengedit instance: dari kelas-kelas ini Protg secara otomatis men-

    generate bentuk interaktif yang memungkinkan pengembang untuk

    memasukkan instance.

    3. Pemrosesan model: Protg dilengkapi library yang berisi plug-in yang

    membantu pengembang mendefinisikan semantik, memberikan query, dan

    lain-lain.

    4. Pertukaran model: model menghasilkan kelas dan instance yang dapat

    disimpan dalam format yang bervariasi, termasuk XML, UML, OWL, dan

    RDF.

    WebODE

    WebODE (Corcho et al., 2002) dikembangkan oleh Lab Artificial

    Intelligence, Technical University of Madrid (UPM). WebODE digunakan

    sebagai sebuah web server dengan antarmuka web. Inti perangkat lunak bantu ini

    adalah layanan akses (services), semua layanan dan aplikasi dipasang ke server,

    dan secara khusus adalah WebODE Ontology Editor. Editor WebODE

    memungkinkan membangun ontologi secara kolaborasi dengan bantuan

  • 117

    antarmuka pengguna berbasis grafis. Beberapa layanan lainnya untuk ontologi

    service adalah XML, RDF(S), OIL, FLogic, Jess, Prolog), pembangun aksioma

    berbasis web (WebODE Axiom Builder, WAB), dokumentasi ontologi,

    penggabungan dan evaluasi ontologi. WebODE mendukung pembangunan

    ontologi pada berbagai tingkat pengetahuan, dan diterjemahkan ke dalam bahasa

    ontologi yang berbeda. WAB mendukung pendefisian aksioma dalam bentuk

    grafis dan dengan menggunakan bantuan (template). WebODE menyimpan hasil

    ontologi dalam basisdata relasional.

    OE: Ontology editor in Hozo

    "Hozo" adalah suatu perangkat lunak terpadu untuk membangun tugas dan

    domain ontologi dengan berdasarkan teori dasar ontologi (Kozaki et al., 2002).

    "Hozo" terdiri dari " Editor Ontologi ", "Onto-Studio" dan " Server Ontologi ".

    Hasil dan model ontologi disimpan dalam format yang berbeda (Lisp, Teks,

    XML/DTD, DAML + OIL) yang portabel dan reusable. Salah satu fitur utama

    dari Hozo adalah memperlakukan konsep Role. Dalam Hozo, memperkenalkan

    tiga kelas yang berbeda untuk menangani dengan memperkenalkan konsep Role.

    Yaitu Role concept, Basic concept, dan Role holder (Gambar 4.10).

    Gambar 4.10 Role pada OE Hozo Konsep dasar yang digunakan adalah class constraint. Jika sebuah instan

    memenuhi class constraint dan memegang suatu peran maka termasuk sebuah role

    holder. Hozo mendukung untuk menetapkan suatu konsep role sebagai konsep

    dasar.

    Seperti pada editor ontologi lainnya, Editor ontologi Hozo juga

    menyediakan pengguna dengan antarmuka grafis yang memudahkan melihat dan

    memodifikasi ontologi. Pengguna tidak perlu khawatir tentang translasi menjadi

    kode ekspresi ontologi, karena dilakukan otomatis. Salah satu bagian penting pada

    Role-concept: A concept representing a role dependent on a context(e.g., teacher role) Basic concept: A concept which does not need other concepts for being defined(e.g., human) Role holder: An entity of a basic concept which is holding the role(e.g., teacher)

  • 118

    antarmuka adalah is-a hierarchy browser yang menampilkan semua struktur

    relasi antara kelas-kelas. Kolaborasi pengembangan ontologi juga didukung dalam

    Editor ontologi. Pada tingkat primitif, ontologi server yang memungkinkan

    pengguna untuk membaca dan menyalin semua ontologi dan kejadian. Kemudian

    Editor ontologi memungkinkan pengguna untuk membagi suatu ontologi menjadi

    beberapa komponen ontologi dan mengelola ketergantungan di antaranya.

    Altova SemanticWork

    Altova SemanticWork yang dibuat oleh perusahaan pembuat software

    Altova. Dengan menggunakan Altova SemanticWork, pengembangan ontologi

    dilakukan secara visual dengan skema, gambar, dan diagram. Beberapa fungsi

    yang tersedia dalam Altova Semantic Work, antara lain (Alvota, 2009):

    1. Pembuatan dan perubahan secara visual dari RDF, RDFS, OWL.

    2. Pemeriksaan sintaksis untuk menyesuaikan kemampuan dengan spesifikasi

    RDF/XML.

    3. Auto Generated RDF/XML dan format N-triples berdasarkan rancangan

    RDF/OWL.

    4. Mencetak desain RDF/OWL yang berbentuk gambar untuk membuat

    dokumentasi web semantic.

    RDF dokumen dapat dibuat dan diedit dengan SemanticWorks dalam bentuk

    grafis dari RDF/OWL secara visual. Sebuah RDF ditetapkan secara grafis

    dikaitkan dengan predikat sebagai objek atau nilai literal. Sumber daya yang

    tersedia dalam pilihan untuk GUI referensi oleh sebuah ontologi. Dokumen RDF

    dapat diedit secara langsung dalam bentuk teks, baik menggunakan dalam notasi

    RDF/XML atau notasi N-Triples. Sebuah dokumen RDF, skema RDF, OWL Lite,

    OWL DL, atau OWL Full dapat diuji secara sintaks sesuai dengan aturan

    spesifikasi. Di samping itu, dokumen OWL Lite dan OWL DL dapat diperiksa

    kebenarannya secara semantik (sesuai dengan aturan OWL Lite dan OWL DL,

    masing-masing)

  • 119

    4.4.5 OWL API Untuk membangun aplikasi yang dapat memproses ontologi dibutuhkan API

    library agar dapat mengakses dan memanipulasi secara langsung sebuah ontologi

    yang ditulis dalam OWL. Di antaranya adalah Jena Ontology API dan Protege-

    OWL API.

    Jena Ontology API (Dickinson, 2009) merupakan Java API library yang

    berguna untuk membuat dan memanipulasi graf-graf RDF. Jena adalah sebuah

    framework berbasis Java untuk membangun aplikasi Semantic Web dan

    dikembangkan oleh HP Labs Semantic Web Programme untuk memanipulasi

    metadata dalam aplikasi Java. Jena menyediakan sekumpulan kelas java untuk

    membantu pemrograman dan pengolahan ontologi untuk RDF, RDFS, dan OWL,

    termasuk mesin inferensi berdasar aturan.

    Sebagai contoh, dalam Jena terdapat kelas objek yang merepresentasikan

    graf, reources (sumber daya), properti dan literal. Java interface yang menyajikan

    resource, properti dan literal disebut berturut-turut dengan Resource, Properti dan

    Literal. Sebuah graf disebut juga sebuah model dan direpresentasikan oleh java

    interface Model.

    Secara singkat kumpulan kelas-kelas java library dari Framework Jena

    meliputi :

    - ARP, yaitu parser RDF/XML. RDF API untuk manipulasi RDF.

    - Jena2 ontology API untuk bekerja dengan data ontologi yang berbasis

    RDF yaitu OWL, DAML+OIL, dan RDFS.

    - SPARQL, yaitu bahasa query untuk RDF yang diimplementasikan pada

    query engine Jena yaitu ARQ.

    - Reasoner (penguji validitas).

    - Penyimpanan secara persistent maupun dalam memori.

    Protege-OWL API (Knublauch, 2009) adalah sebuah Java library untuk

    manipulasi OWL dan RDF (S). Dalam OWL API ini menyediakan sekumpulan

    kelas dan metode untuk membuka dan menyimpan file OWL, dan melakukan

  • 120

    query dan memanipulasi model data OWL, serta untuk melakukan penalaran

    berdasarkan mesin Deskripsi Logic.

    Protege-OWL API difokuskan pada sekumpulan Jawa interface dari model

    package. Interface java ini menyediakan akses terhadap model OWL dan elemen

    seperti kelas, properti, dan individu. Pengembang aplikasi tidak harus mengakses

    interface ini secara langsung (seperti DefaultRDFIndividual), tetapi cukup memanggil method dari interface. Interface yang paling penting adalah interface

    model OWLModel, yang menyediakan akses hingga ke kontainer resource dari

    ontologi. Interface OWLModel dapat digunakan untuk menciptakan, query, dan

    menghapus resource dari berbagai jenis dan kemudian menggunakan hasilnya

    oleh OWLModel untuk diolah lebih lanjut.

  • 121

    BAB IV. MANAJEMEN PENGETAHUAN DAN ONTOLOGI ......................... 874.1 Rekayasa Pengetahuan ................................................................................. 87

    4.1.1 Informasi dan Pengetahuan .............................................................. 874.1.2 Pengetahuan Eksplisit dan Tasit ...................................................... 89

    4.2 Manajemen Pengetahuan .............................................................................. 924.2.1 Sistem Manajemen Pengetahuan...................................................... 924.2.2 Manajemen Pengetahuan Perusahaan .............................................. 99

    4.3 Ontologi ...................................................................................................... 1024.3.1 Definisi Ontologi ............................................................................ 1024.3.2 Tahapan Pengembangan Ontologi ................................................. 106

    4.4 Web Ontology Language ............................................................................ 1084.4.1 OWL ............................................................................................... 1084.4.2 Struktur dan Elemen OWL............................................................. 1104.4.3 SPARQL ........................................................................................ 1144.4.4 Perangkat Lunak Bantu OWL ........................................................ 1154.4.5 OWL API ....................................................................................... 119

  • 122

    Gambar 4.1 Hubungan data, informasi, pengetahuan (Cooper, 2007) ............. 88Gambar 4.2 Definisi dan pengertian ontologi (Studer et al, 1998) ................ 103Gambar 4.3 Contoh model ontologi proyek ................................................... 105Gambar 4.4 Sintaks RDF/XML ..................................................................... 110Gambar 4.5 Relasi OWL dengan RDF ........................................................... 112Gambar 4.6 Contoh class dan subclass .......................................................... 112Gambar 4.7 Contoh individuals ..................................................................... 112Gambar 4.8 Contoh ObjectProperties dan DataProperties ........................... 113Gambar 4.9 Contoh perintah SPARQL .......................................................... 114Gambar 4.10 Role pada OE Hozo .................................................................... 117

  • 123

    Tabel 4.1 Perbedaan pengetahuan eksplisit dengan pengetahuan tasit ........ 91Tabel 4.2 Kelebihan dan kekurangan dari pengetahuan eksplisit dan tasit .. 92Tabel 4.3 Manajemen pengetahuan pada bidang ilmu (Putzhuber, 2003) ... 94Tabel 4.4 Perspektif sistem manajemen pengetahuan .................................. 97Tabel 4.5 Tahapan sistem manajemen pengetahuan (Tiwana, 1999) ........... 98Tabel 4.6 Beberapa kelas OWL .................................................................. 111Tabel 4.7 Beberapa properti OWL ............................................................. 113