1
INTEGRASI SISTEM VIEWER MODUL WORD GRAPH
DENGAN MODUL XML KATA DALAM BAHASA
INDONESIA
INDRA LESMANA
DEPARTEMEN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
INSTITUT PERTANIAN BOGOR
BOGOR
2012
2
INTEGRASI SISTEM VIEWER MODUL WORD GRAPH
DENGAN MODUL XML KATA DALAM BAHASA
INDONESIA
INDRA LESMANA
DEPARTEMEN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
INSTITUT PERTANIAN BOGOR
BOGOR
2012
Skripsi
sebagai salah satu syarat untuk memperoleh gelar
Sarjana Komputer pada
Departemen Ilmu Komputer
ABSTRACT
INDRA LESMANA. Viewer System Word Graph Module with XML Modules Integration for
Indonesian Word. Supervised by SRI NURDIATI and AHMAD RIDHA.
Text processing is one of the natural language processing technology to analyze the
meaning of a text. The biggest challenge in text processing is ambiguity. To deal with it, the
meaning of a text can be represented as knowledge. One method for representing knowledge in the
form of graph is Knowledge Graph (KG). KG implemented the analysis of the meaning of a text
based on semantic aspects. Research about XML module word graph has been to represent 121
word graph patterns of five types of words and adverb phrases in Indonesian. XML documents can
be translated into a graph using viewer module web-based.
The objective of this research is to integrate the viewer modul and XML modules word
graph so that the system can accept inputs and displays the word graph with it is corresponding
XML document. This tests carried out using 133 words Indonesian. The system can analyze all of
the word correctly.
Keywords: Knowledge Graph, natural languange processing, web-based, Word Graph, XML
module
Judul Skripsi : Integrasi Sistem Viewer Modul Word Graph dengan Modul XML Kata dalam
Bahasa Indonesia
Nama : Indra Lesmana
NIM : G64080081
Menyetujui:
Pembimbing 1, Pembimbing 2,
Dr. Ir. Sri Nurdiati, M.Sc
NIP. 19601126 198601 2 001
Ahmad Ridha, S.Kom, MS
NIP. 19800507 200501 1 001
Mengetahui:
Ketua Departemen,
Dr. Ir. Agus Buono, M.Si, M.Kom
NIP. 19660702 199302 1 001
Tanggal Lulus:
KATA PENGANTAR
Puji syukur penulis panjatkan kepada Tuhan Yang Maha Esa atas segala rahmat dan karunia-
Nya sehingga penulis dapat menyelesaikan skripsi yang berjudul “Integrasi Sistem Viewer Modul
Word Graph dengan Modul XML Kata dalam Bahasa Indonesia” ini. Penulisan skripsi ini tak
lepas dari bantuan banyak pihak. Oleh karena itu, penulis ingin menyampaikan rasa terima kasih
kepada:
Kedua orang tua penulis, Na Ong Kim dan Rayanih, atas pola pendidikan yang luar biasa
yang telah diberikan kepada penulis.
Ibu Dr. Ir. Sri Nurdiati, M.Sc selaku dosen pembimbing pertama sekaligus pembimbing
akademik penulis. Terima kasih atas segala kehangatan dan bantuan serta nasehat-nasehat
yang diberikan kepada penulis.
Bapak Ahmad Ridha, S.Kom, MS selaku pembimbing kedua yang telah memberikan
banyak masukan kepada penulis tentang pengembangan sistem serta kehangatan di setiap
diskusi.
Bapak Sony Hartono Wijaya, S.Kom, M.Kom selaku dosen penguji.
Rekan-rekan satu bimbingan, Cipta, Kurnia, Yuli, Neri, dan Rizka atas segala masukan dan
saran yang terjadi dalam pengerjaan skripsi ini.
Sahabat Ilkom 45 atas persahabatan yang luar biasa.
Semoga karya ini bisa memberikan sumbangsih untuk perkembangan dunia teknologi
informasi di Indonesia.
Bogor, September 2012
Indra Lesmana
DAFTAR RIWAYAT HIDUP
Penulis lahir di Bogor pada tanggal 3 Desember 1989 sebagai anak pertama dari tiga
bersaudara, putra dari pasangan Na Ong Kim dan Rayanih. Tahun 2008, penulis lulus dari SMA
Negeri 5 Bogor dan melanjutkan pendidikan ke Institut Pertanian Bogor (IPB) melalui jalur Ujian
Saringan Masuk IPB (USMI) pada Departemen Ilmu Komputer, Fakultas Matematika dan Ilmu
Pengetahuan Alam.
Karya yang pembaca nikmati ini merupakan hasil dari penelitian tugas akhir di Departemen
Ilmu Komputer IPB. Semasa kuliah, penulis aktif dalam organisasi kepemudaan Buddhis. Selain
kesibukan akademik, penulis juga mengajar di salah satu Sekolah Minggu Buddhis di Bogor, yaitu
Sekolah Minggu Sian Jin Ku Poh. Moto hidup yang dipegang oleh penulis ialah „yakin, semangat,
dan usaha‟.
v
DAFTAR ISI
Halaman
DAFTAR GAMBAR ....................................................................................................................... vi
DAFTAR LAMPIRAN .................................................................................................................... vi
PENDAHULUAN Latar Belakang .............................................................................................................................. 1 Tujuan ........................................................................................................................................... 1 Ruang Lingkup .............................................................................................................................. 1
TINJAUAN PUSTAKA Extensible Markup Language (XML) ........................................................................................... 1 JavaScript ...................................................................................................................................... 1 Knowledge Graph (KG) ................................................................................................................ 2
METODE PENELITIAN 1 Listen to Customer ..................................................................................................................... 3 2 Build or Revise Mock-up ........................................................................................................... 3 3 Customer Test Drives Mock-up .................................................................................................. 3
HASIL DAN PEMBAHASAN I Iterasi 1 ....................................................................................................................................... 3 I.1 Tahapan Listen to Customer .................................................................................................... 3 I.2 Tahapan Build or Revise Mock-up .......................................................................................... 4
I.3 Tahapan Customer Test Drives Mock-up ................................................................................. 8 II Iterasi 2 ...................................................................................................................................... 9 II.1 Tahapan Listen to Customer ................................................................................................... 9 II.2 Tahapan Build or Revise Mock-up ......................................................................................... 9
II.3 Tahapan Customer Test Drives Mock-up .............................................................................. 10 Kekurangan dan kelebihan sistem ............................................................................................... 10
SIMPULAN DAN SARAN Simpulan ..................................................................................................................................... 10 Saran............................................................................................................................................ 10
DAFTAR PUSTAKA ..................................................................................................................... 10
LAMPIRAN .................................................................................................................................... 12
v
vi
DAFTAR GAMBAR
Halaman
1 Metode pengembangan prototype ............................................................................................... 2 2 Sketsa tampilan antarmuka KGV ............................................................................................... 4 3 Fungsi updatexmlk() ................................................................................................................... 5 4 Word graph kata masukan .......................................................................................................... 6 5 Flowchart pembangkitan word ................................................................................................... 6 6 Struktur XML yang diunduh ...................................................................................................... 7 7 Tampilan antarmuka KGV ......................................................................................................... 8 8 Elemen HTML untuk menghapus............................................................................................... 8 9 Zoom in pada word graph ........................................................................................................... 9 10 Zoom out pada word graph ........................................................................................................ 9 11 Pop-up tipe kata masukan .......................................................................................................... 9 12 Pop-up pilihan pola kata ............................................................................................................ 9
DAFTAR LAMPIRAN
Halaman
1 Diagram use case sistem KGV .................................................................................................... 13 2 Fungsi cekkata() .......................................................................................................................... 14 3 Class diagram sistem KGV ......................................................................................................... 15 4 Daftar 16 kata uji yang memiliki lebih dari satu tipe kata ........................................................... 17 5 Tabel pengujian sistem KGV ...................................................................................................... 18 6 Tabel pengujian kata masukan .................................................................................................... 21
vi
1
PENDAHULUAN
Latar Belakang
Perkembangan teknologi saat ini telah
mampu memanfaatkan komputer untuk dapat
berinteraksi dengan penggunanya
menggunakan ucapan sehari-hari dalam
bahasa alami (Natural Language). Penelitian
dalam bahasa alami melahirkan sebuah bidang
ilmu Natural Language Processing (NLP)
atau Pemrosesan Bahasa Alami yang
memungkinkan berbagai macam pemrosesan
menggunakan bahasa alami. Akan tetapi,
pemrosesan bahasa alami tidak mudah untuk
dilakukan. Salah satu tantangan terbesar
dalam pemrosesan tersebut ialah sering terjadi
ambiguitas dalam bahasa alami. Fenomena ini
terjadi pada berbagai level implementasi
bahasa mulai dari pengucapan, penulisan, dan
makna kata (Samba 2010).
Teks merupakan bahasa alami yang berupa
tulisan. Dengan adanya ambiguitas,
pemahaman terhadap teks tersebut dapat
bersifat subjektif dan memungkinkan
terjadinya kesalahan pemahaman. Salah satu
metode yang digunakan untuk memecahkan
masalah ambiguitas dalam teks ialah
Knowledge Graph (KG).
Metode KG merupakan suatu metode dari
representasi NLP yang mengarahkan pada
cara baru dalam menjelaskan dan
memodelkan NLP. Selain itu, metode ini juga
sebagai langkah besar ke depan untuk
pemahaman terhadap aspek semantik dari
suatu kata (Zhang 2002).
Pengembangan sistem berdasarkan metode
KG pada teks bahasa Indonesia telah
dilakukan oleh beberapa mahasiswa di
Departemen Ilmu Komputer Institut Pertanian
Bogor. Musthafa (2012) mengembangkan
sistem pembentukan word graph kata
keterangan untuk bahasa Indonesia berbasis
Java. Astriratma (2012) dan Dillyani (2012)
telah merekonstruksi word graph
menggunakan XML untuk kata sifat dan kata
preposisi bahasa Indonesia. Apriana (2012)
mengembangkan viewer modul word graph
untuk kata bahasa Indonesia berbasis web.
Merujuk pada viewer modul word graph
yang belum terintegrasi dengan modul XML
kata dalam bahasa Indonesia, maka pada
penelitian ini akan diintegrasikan dua modul
tersebut menjadi Knowledge Graph Viewer
yang dapat memanfaatkan pola XML kata
bahasa Indonesia untuk menghasilkan word
graph yang sesuai dengan konsep KG.
Dengan adanya integrasi kedua modul ini,
sistem mampu menerima masukan kata dan
memberikan keluaran berupa graph beserta
dokumen XML.
Tujuan
Tujuan penelitian ini ialah
mengintegrasikan viewer modul word graph
berbasis web dengan enam modul XML kata
dalam bahasa Indonesia yang telah dibuat
berdasarkan hasil penelitian sebelumnya.
Ruang Lingkup
Ruang lingkup penelitian ini dibatasi pada
integrasi viewer modul word graph dengan
enam modul XML word graph. Modul XML
word graph terdiri atas modul kata sifat,
modul kata benda, modul kata kerja, modul
kata keterangan, modul preposisi, dan modul
frasa keterangan bahasa Indonesia. Masukan
sistem ini berupa kata yang terdapat pada tesis
Rahmat (2009), tesis Anggraeni (2009), tesis
Samba (2010), tesis Muslik (2009), tesis Saleh
(2009), dan tesis Sulistiawan (2011). Modul
XML yang digunakan pada penelitian ini
merupakan hasil penelitian Astriratma (2012),
Dillyani (2012), Oktarina (2012), Susanti
(2012), Anti (2012), dan Wiraswasta (2012).
TINJAUAN PUSTAKA
Extensible Markup Language (XML)
XML merupakan meta-language yang
menjelaskan aturan-aturan untuk mendesain
format teks sehingga format teks menjadi
terstruktur (Jacobs 2006). XML menggunakan
tag di awal dan di akhir untuk menandai suatu
elemen teks. Nama tag tersebut dapat
didefinisikan secara bebas. Contoh format
sederhana XML:
<intro> Here is an introduction
to XML.</intro>
JavaScript
JavaScript adalah bahasa yang berupa
kumpulan skrip yang berisi fungsi-fungsi
tertentu dan mampu berjalan pada web
browser (Wilton, McPeak 2010). Sepanjang
sejarah internet, bahasa ini adalah bahasa
skrip pertama untuk web. Bahasa ini adalah
bahasa pemrograman yang memberikan
kemampuan tambahan terhadap bahasa
HTML dengan mengizinkan eksekusi
perintah-perintah di sisi pengguna, yang
artinya di sisi browser bukan di sisi server.
JavaScript dapat ditulis dalam satu file dengan
2
dokumen HTML atau ditulis pada file terpisah
dengan ekstensi .js.
Knowledge Graph (KG)
Metode KG adalah cara pandang baru
yang digunakan untuk menggambarkan
bahasa alami. Metode KG memiliki
kemampuan dalam menyatakan aspek
semantik dengan lebih mendalam
menggunakan jenis relasi yang terbatas dan
digunakan untuk meniru pemahaman manusia.
Pada prinsipnya, komposisi dari KG
mencakup concept (token dan type) dan
relationship (Zhang 2002). Berikut ini ialah
penjelasan dari delapan types relationship
(Zhang 2002):
1 ALI (alikeness)
Relasi ALI digunakan di antara type dan
token atau antara dua token yang memiliki
unsur-unsur sama.
2 CAU (causality)
Relasi CAU mengekspresikan hubungan
sebab dan akibat atau sesuatu hal yang
memengaruhi sesuatu yang lain.
3 EQU (equality)
Relasi ini digunakan di antara name dan
token atau antara dua token yang
mengekspresikan keduanya ialah sama dan
sederajat. Relasi EQU juga digunakan untuk
menyatakan kata hubung seperti “adalah”.
4 SUB (subset)
Bila terdapat dua token yang
mengekspresikan dua rangkaian secara
berurutan dan satu token adalah bagian dari
token yang lainnya, maka di antara kedua
token tersebut terdapat relasi SUB.
5 DIS (dissparatness)
Relasi DIS digunakan untuk
mengekspresikan bahwa dua token tidak
memiliki hubungan satu dengan yang lainnya.
Contoh relasi DIS digunakan juga untuk
menunjukkan kata “berbeda”.
6 ORD (ordering)
Relasi ORD digunakan untuk
mengekspresikan bahwa dua hal mempunyai
urutan satu sama lain.
7 PAR (attribute)
Relasi PAR mengekspresikan bahwa
sesuatu adalah sebuah atribut dari sesuatu
yang lain.
8 SKO (informational dependency)
Relasi SKO digunakan jika informasi
suatu token bergantung pada token lainnya.
9 Ontologi F (focus)
Ontologi F digunakan untuk mewujudkan
fokus dari suatu graph (Hoede, Nurdiati
2008). Ontologi F digunakan untuk
menunjukkan kata atau kalimat yang
diterangkan dalam suatu pernyataan.
Word graph merupakan bagian dari KG.
Word graph merupakan graph dari kata.
Dalam metode KG, setiap kata yang
berhubungan dengan sebuah word graph
menyatakan arti kata yang disebut dengan
semantic word graph. Gabungan semantic
word graph dalam sebuah kalimat akan
membentuk sentence graph. Graph yang
merepresentasikan gabungan dari sentence
graph dalam sebuah teks disebut text graph
yang terdapat pengetahuan di dalamnya
(Hoede, Nurdiati 2008).
METODE PENELITIAN
Metode pengembangan sistem Knowledge
Graph Viewer yang berasal dari
pengintegrasian modul viewer dan enam
modul XML word graph ini menggunakan
metode pengembangan prototype yang terdiri
atas tiga tahap. Menurut Pressman (2001),
pada metode prototype langkah pertama yang
dilakukan ialah menjalin komunikasi antara
pengembang piranti lunak dengan pihak yang
terkait untuk mendiskusikan tujuan
keseluruhan kebutuhan piranti lunak tersebut.
Selanjutnya dilakukan perencanaan dan
perancangan yang mengarah kepada
pembuatan prototype dari piranti lunak yang
akan dibuat. Langkah selanjutnya, prototype
tersebut diserahkan untuk dievaluasi oleh
pihak yang terkait. Pihak tersebut akan
memberikan masukan berupa kritik maupun
saran yang akan digunakan untuk
menyempurnakan permintaan kebutuhan dari
piranti lunak tersebut. Diagram metode
pengembangan prototype dapat dilihat pada
Gambar 1.
Gambar 1 Metode pengembangan prototype
(Pressman 2001).
Listen to
Customer
Build or Revise
Mock-up
Customer Test
Drives Mock-up
3
1 Listen to Customer
Pada tahapan listen to customer, dilakukan
wawancara dan diskusi dengan dosen
pembimbing sebagai pihak pengguna. Pada
tahapan ini, diperoleh informasi tentang
deskripsi umum sistem, kebutuhan sistem,
karateristik pengguna, batasan-batasan sistem,
dan deskripsi proses sistem.
2 Build or Revise Mock-up
Tahap build or revise mock-up dilakukan
setelah tahap listen to consumer. Proses yang
dilakukan pada tahap ini ialah merancang
sistem yang akan dibangun ataupun
memperbaiki rancangan sistem sesuai dengan
permintaan konsumen.
3 Customer Test Drives Mock-up
Pada tahapan ini dilakukan pengujian
dengan metode black box. Menurut Pressman
(2001) black box testing adalah suatu proses
pengujian yang memfokuskan pada fungsi
kebutuhan piranti lunak. Model pengujian ini
tidak memerhatikan proses yang terjadi di
dalam sistem, tetapi hanya
mempertimbangkan hasil keluaran. Pengujian
sistem bertujuan mengetahui kesesuaian
sistem dengan spesifikasi yang diberikan dan
menemukan kesalahan yang masih terdapat
pada sistem.
Setelah sistem selesai dibangun,
selanjutnya dilakukan proses perhitungan
akurasi. Perhitungan akurasi keluaran
dilakukan dengan menghitung banyaknya kata
yang sesuai dengan word graph yang
dibangkitkan oleh sistem dari seluruh
masukan kata uji yang diberikan. Perhitungan
akurasi kata masukan menggunakan rumus
sebagai berikut:
kurasi kata yang benar
kata yang diuji
HASIL DAN PEMBAHASAN
Integrasi sistem Knowledge Graph Viewer
ini terbagi menjadi dua iterasi.
I Iterasi 1
I.1 Tahapan Listen to Customer
I.1.1 Deskripsi Umum Sistem
Knowledge Graph Viewer (KGV)
merupakan piranti lunak berbasis web.
Penelitian ini didasarkan pada penelitian
Astriratma (2012), Dillyani (2012), Oktarina
(2012), Susanti (2012), Anti (2012), dan
Wiraswasta (2012) yang telah merekonstruksi
modul XML pola word graph kata sifat,
preposisi, kata kerja, kata keterangan, kata
benda, dan frasa keterangan. Selain itu,
Apriana (2012) telah membuat viewer modul
word graph yang dapat menerjemahkan
modul XML menjadi gambar word graph
sesuai dengan konsep KG. Sistem ini
merupakan hasil integrasi modul XML dan
viewer modul word graph dengan perbaikan
dan penambahan pada modul viewer,
antarmuka pengguna, serta penambahan
database kata sehingga mampu menerima
masukan kata dalam bahasa Indonesia dan
menampilkan visualisasi dalam bentuk graph
dan dokumen XML.
I.1.2 Kebutuhan Sistem
Kebutuhan utama sistem KGV ialah text
input, canvas, dan textarea agar pengguna
dapat memasukkan kata atau XML yang akan
digambarkan polanya pada canvas.
I.1.3 Karateristik Pengguna
Pengguna sistem ini ialah para pengakses
internet yang menggunakan penjelajah situs
(web browser). Pengguna sistem KGV ini
hanya ada satu tipe pengguna. Tabel 1
menjelaskan kategori pengguna KGV.
Tabel 1 Kategori pengguna KGV
Kategori
Pengguna
Aksi
User 1 Memasukkan kata bahasa
Indonesia
2 Mengunggah dokumen
XML
3 Melihat pola umum word
graph
4 Melihat hasil visualisasi
word graph
5 Mengunduh dokumen
XML
6 Menghapus canvas
Lampiran 1 menjelaskan deskripsi sistem
KGV yang telah digambarkan dalam diagram
use case.
I.1.4 Batasan Sistem
Batasan-batasan yang digunakan pada
pengembangan sistem KGV ini yaitu:
1 Pengembangan sistem ini terbatas pada
masukan berupa kata yang terdapat dalam
penelitian Rahmat (2009), Anggraeni
4
(2009), Samba (2010), Muslik (2009),
Saleh (2009), dan Sulistiawan (2012).
2 Dokumen XML yang digunakan pada pola
umum merupakan hasil penelitian
Astriratma (2012), Dillyani (2012),
Oktarina (2012), Susanti (2012), Anti
(2012),
dan Wiraswasta (2012).
3 Masukan terdiri atas satu sampai tiga kata.
I.1.5 Deskripsi Proses Sistem
Tampilan awal dari Sistem KGV ini
berupa sebuah canvas kosong, text input
untuk kata, textarea untuk XML, dan
beberapa tombol yang digunakan untuk
menjalankan aksi. Apabila masukan berupa
kata, akan dicocokkan pada database dan
ditentukan pola XML yang akan digunakan
untuk menggambar canvas. Apabila masukan
berupa XML, sistem akan melakukan validasi,
parsing, analisis pola, dan
menggambarkannya ke canvas.
I.2 Tahapan Build or Revise Mock-up
I.2.1 Lingkungan Implementasi
KGV dikembangkan dengan lingkungan
piranti keras dengan spesifikasi sebagai
berikut:
Prosesor Intel Core i3-2310M, 2.1 GHz.
RAM dengan kapasitas 2 GB.
Harddisk dengan sisa kapasitas 350 GB.
Monitor LCD resolusi 1366 x 768 piksel.
Keyboard.
Mouse.
Piranti lunak yang digunakan pada
pengembangan KGV yaitu:
Sistem operasi Microsoft® Windows 7
Ultimate.
Web server Apache 2.2.12.
Notepad++ IDE.
Bahasa pemrograman PHP.
DBMS MySQL.
Penjelajah situs (web browser):
Microsoft® Internet Explorer, Chrome,
Opera, Mozilla Firefox, Safari.
Antarmuka piranti lunak untuk pengguna
yang dibutuhkan KGV sebagai berikut:
Sistem operasi Microsoft® Windows
XP/Vista/7, Linux, atau MacOS.
Penjelajah situs (web browser):
Microsoft® Internet Explorer, Chrome,
Opera, Mozilla Firefox, Safari.
I.2.2 Perancangan Antarmuka
Perancangan antarmuka sistem KGV
dibuat dengan menggunakan Cascading Style
Sheets (CSS), JavaScript, Asynchronous
JavaScript and XML (AJAX), jQuery, dan
Hypertext Markup Language (HTML) yang
dapat dilihat dan diakses menggunakan
penjelajah situs atau web browser. KGV dapat
menerima masukan dari mouse dan keyboard.
Aspek interaksi manusia dan komputer harus
diperhatikan dalam perancangan antarmuka
KGV. Interaksi manusia dan komputer adalah
studi, perencanaan dan desain mengenai cara
manusia dan komputer bekerja bersama
sehingga tingkat kepuasan pengguna tinggi.
Tampilan sketsa antarmuka KGV secara
umum dapat dilihat pada Gambar 2.
Gambar 2 Sketsa tampilan antarmuka KGV.
I.2.3 Perancangan Kebutuhan Fungsional
Proses pembangkitan word graph dari kata
masukan meliputi praproses, pengecekan pada
database, penentuan pola, dan pengubahan
label nama pada dokumen XML. Kata
masukan dari pengguna harus dipraproses
untuk membatasi nilai masukan pada sistem.
Kata masukan yang diizinkan tidak boleh
mengandung karakter selain alfabet kecuali
tanda hubung (-) yang digunakan untuk kata
berulang. Selain itu, masukan tidak boleh
kosong atau hanya mengandung 1 karakter.
Fungsi yang digunakan untuk praproses kata
masukan bernama „cekkata()’. Kata masukan
akan diproses ke tahapan selanjutnya apabila
keadaan tersebut dipenuhi. Apabila tidak
terpenuhi, sistem akan menampilkan jendela
peringatan. Proses ini dilakukan pada sisi
client menggunakan JavaScript. Fungsi
„cekkata()’ dapat dilihat pada Lampiran 2.
Kata masukan yang memenuhi keadaan
praproses akan dikirim ke server
menggunakan fungsi „doRequest()’
Input bar
Canvas
Text bar
Upload bar
Error history
Footer
Button bar
5
1 function updatexml($PW,$KM,$KD){
2 $kata[0]=$KM;
3 $kata[1]=$KD;
4 $e_xml=simplexml_load_file('xml/'.
5 $PW.'.xml');
6 //hitung tag text
7 $index=count($e_xml -> components ->
8 text);
9 $m=0;
10 for($i=0;$i<$index;$i++)
11 {
12 $replace= (string) $e_xml ->
13 components[0] -> text[$i] -> replace;
14 if($replace == "YES"){
15 $e_xml -> components[0]->
16 text[$i] -> value = $kata[$m];
17 $m++;}
18 }
19 $e_xml -> asXML ('xml/'.$KM.'.xml');
20 echo $e_xml -> asXML ();}
menggunakan AJAX. AJAX adalah suatu
teknik untuk membuat halaman web menjadi
lebih cepat dan dinamis. AJAX
memungkinkan perubahan bagian laman web
tanpa harus me-reload keseluruhan laman saat
komunikasi antara client dan server terjadi
(Mukhopadhyay, Bharadwaj, Davulcu 2011).
Proses pencocokkan kata masukan dengan
database dilakukan pada sisi server
menggunakan Hypertext Preprocessor (PHP)
secara tepat sama (exact match). PHP adalah
bahasa pemrograman yang digunakan untuk
membangun web. Tujuan utama bahasa ini
ialah memudahkan web developer untuk
menghasilkan halaman web yang cepat dan
dinamis (Bakken et al. 2003).
Masukan yang dikirim ke server akan
dihitung jumlah katanya terlebih dahulu.
Apabila lebih dari tiga kata server akan
mengirimkan pesan error ke client sehingga
sistem akan menampilkan pesan peringatan.
Apabila kata masukan kurang dari empat kata,
kata tersebut akan dicocokkan dengan
database. Apabila kata tersebut tidak terdapat
dalam database, sistem akan menampilkan
jendela peringatan. Apabila kata tersebut ada
dalam database, sistem akan mencari tipe kata
masukan. Tipe kata masukan tersebut
digunakan untuk menentukan jenis kata sifat,
kata benda, kata kerja, kata keterangan,
preposisi, atau frasa keterangan.
Apabila tipe kata masukan berupa kata
sifat, kata benda, atau kata kerja, sistem akan
mencari imbuhan, kata dasar, tipe kata dasar
dan keterangan tambahan pada database yang
akan dicocokkan dengan aturan pembentukan
word graph berdasarkan penelitian
sebelumnya. Apabila tipe kata masukan
berupa kata preposisi, sistem akan mencari
jenis preposisi tersebut. Terdapat 20 jenis
preposisi berdasarkan penelitian Anggraeni
(2009). Untuk jenis preposisi 9 sampai 20,
sistem akan langsung menentukan pola word
graph kata preposisi yang sesuai, sedangkan
untuk jenis preposisi 1 sampai 8 sistem akan
menampilkan jendela peringatan bahwa
preposisi tersebut harus ada kata yang
mendahului atau menyertai. Jika masukan
berupa kata preposisi jenis 1 sampai 8 dengan
didahului atau disertai kata tertentu, sistem
akan mencari pola word graph yang sesuai.
Apabila tipe kata masukan berupa kata
keterangan atau frasa keterangan, sistem akan
langsung menentukan word graph yang
sesuai.
Setelah mendapatkan pola word graph
yang sesuai, langkah berikutnya ialah
mengubah label nama pada dokumen XML.
Salah satu fungsi untuk mengubah label nama
pada dokumen XML word graph adalah
„updatexmlk()’. Fungsi „updatexmlk()’
digunakan untuk mengubah label nama pada
dokumen XML word graph kata kerja.
Langkah pertama yang dilakukan fungsi ini
ialah menghitung banyaknya tag <text>
untuk melakukan iterasi. Apabila nilai dari tag
<components>.<text>.<replace> ialah
“YES” dan nilai dari tag
<components>.<text>.<value> ialah
“KK”, nilai tersebut akan diganti dengan kata
masukan. Apabila ada tag <replace> lain
yang bernilai “YES”, nilainya akan diganti
dengan kata dasar dari kata masukan. Proses
ini dapat dilihat pada Gambar 3.
Gambar 3 Fungsi updatexmlk().
Setelah proses pengubahan label nama
selesai, server akan mengirimkan XML
tersebut ke client untuk diproses lebih lanjut.
Pada sisi client, XML tersebut diterima oleh
fungsi „handleResponse()’ yang merupakan
bagian dari AJAX. Dengan demikian, ketika
eksekusi di server telah selesai sistem akan
menampilkan word graph tanpa me-reload
laman web. Proses menggambar canvas
berdasarkan XML yang diterima client
menggunakan fungsi „viewer.parse()’ yang
telah dibuat pada penelitian Apriana (2012).
Selain menampilkan word graph pada
canvas, sistem juga menampilkan XML pada
text bar. Contoh keluaran Word graph dengan
kata masukan “bersatu” ditunjukkan pada
Gambar 4.
6
Gambar 4 Word graph kata masukan
"bersatu".
Proses pembangkitan word graph dari kata
masukan dapat dilihat pada flowchart Gambar
5.
Modul viewer word graph (Apriana 2012)
sudah memiliki fasilitas untuk mengubah label
nama pada canvas dengan menggunakan event
double click. Akan tetapi, modul tersebut
tidak dapat menyimpan perubahan nilai
komponen text pada dokumen XML. Oleh
karena itu, dilakukan penambahan fungsi
sehingga sistem KGV ini dapat menyimpan
perubahan nilai tersebut pada dokumen XML
dan langsung ditampilkan pada bagian text
bar. Fungsi untuk menjalankan perintah
tersebut ditulis dalam bahasa JavaScript
dengan nama „updatexml’. Dengan demikian,
pengguna tidak perlu mengubah dokumen
XML karena perubahan nilai tersebut
dilakukan oleh sistem secara langsung.
Berdasarkan modul viewer word graph
(Apriana 2012), terdapat sepuluh pola yang
memerlukan perbaikan. Perbaikan diperlukan
karena terjadi kesalahan dalam peletakan
komponen, tidak adanya relasi ke komponen
framerelationships, dan relasi tidak
berpanah antar-token. Kesalahan terjadi pada
pola kata benda 12, 13, 16, 17, pola kata kerja
9, pola kata keterangan 3, 4, 10, 11, pola frasa
keterangan 10. Perbaikan penggambaran kata
benda pola 12, 13, 16, dan 17 dilakukan
dengan melakukan parsing pada tag <focus>
dilanjutkan dengan peletakkan komponen
focus. Perbaikan penggambaran kata benda
pola 9 dilakukan dengan menggeser posisi
komponen token apabila terdapat dua
komponen token yang menumpuk. Perbaikan
penggambaran kata keterangan pola 3
dilakukan dengan mengatur posisi komponen
text agar terletak di bawah komponen token.
Perbaikan penggambaran kata keterangan pola
4 dilakukan dengan mengatur posisi
komponen token dan komponen text agar
terletak di sebelah kiri komponen frame.
Perbaikan penggambaran kata keterangan pola
10 dilakukan dengan menggeser posisi
komponen text apabila terdapat dua komponen
Gambar 5 Flowchart pembangkitan word
graph kata masukan.
7
text yang menumpuk. Perbaikan
penggambaran kata keterangan pola 11
dilakukan dengan menambahkan relasi ke
komponen framerelationships dari komponen
text. Perbaikan penggambaran frasa
keterangan pola 10 dilakukan dengan
menambahkan relasi tak berpanah apabila
relasi tersebut menghubungkan antar-token.
Class diagram untuk viewer dapat dilihat pada
Lampiran 3.
Selain membangkitkan word graph dari
kata masukan, sistem KGV dapat
membangkitkan word graph dari masukan
XML. Pengguna dapat mengunggah dokumen
XML ke sistem, menyalin dan memindahkan
(copy and paste), atau mengetik langsung
XML pada bagian text bar. Proses
pembangkitan word graph dari masukan XML
tersebut akan melalui praproses terlebih
dahulu. Apabila masukan XML kosong,
sistem akan menampilkan pesan peringatan
pada error history. Apabila keadaan tersebut
terpenuhi, masukan XML akan divalidasi
menggunakan fungsi „validateXML()’.
Apabila struktur dokumen XML benar, XML
tersebut akan di-parsing pada setiap
elemennya. Komponen yang sejenis tidak
boleh memiliki nomor id yang sama. Apabila
terdapat komponen sejenis yang memiliki id
yang sama, sistem akan menampilkan rincian
nomor id dan komponen yang duplikat pada
error history.
Proses pembangkitan word graph dari pola
umum yang telah direkonstruksi oleh Anti
(2012), Astriratma (2012), Dillyani (2012),
Oktarina (2012), Susanti (2012), dan
Wiraswasta (2012) menggunakan fungsi
loadXML(). Pengguna harus memilih pola
umum yang akan ditampilkan pada canvas
dan menekan tombol ‘Load XML’ pada bagian
ribbon bar.
Proses menghapus canvas akan dieksekusi
apabila pengguna menekan tombol „Clear
Canvas’. Ketika pengguna menekan tombol
tersebut, sistem akan menjalankan fungsi
„hapus()’. Fungsi tersebut mengatur agar
sistem menghapus semua objek pada canvas.
Pengguna yang ingin mengunduh
dokumen XML word graph yang digunakan
untuk menggambar canvas harus menekan
tombol „Download XML’. Fungsi ini akan
menampilkan jendela penyimpanan ketika
pengguna menekan tombol „Download XML’.
Dengan demikian, dokumen XML yang
digunakan untuk menggambar canvas dapat
langsung disimpan ke komputer pengguna
tanpa harus menyalin dan memindahkannya
pada editor teks.
Dokumen XML yang diunduh telah
ditambahkan tag <positions> untuk
menyimpan setiap posisi komponen word
graph pada canvas. Dengan adanya fitur ini,
pengguna dapat menyimpan dan menampilkan
kembali word graph yang telah diubah
posisinya (save and load). Posisi yang
disimpan pada tag <positions> ialah top,
left, dan size untuk setiap komponen focus dan
token, sedangkan untuk komponen text
disimpan top dan left. Struktur XML yang
diunduh dapat dilihat pada Gambar 6.
Gambar 6 Struktur XML yang diunduh.
I.2.4 Perancangan Database
Database yang digunakan dalam sistem ini
bernama „wg‟ yang terdiri atas enam buah
tabel, yaitu „kata‟, „pola_s‟, „pola_kerja‟,
„pola_benda‟, „pola_prep‟, „kata_lain‟, dan
„kbbi‟. Data kata masukan disimpan pada
tabel „kata‟ yang terdiri atas delapan field,
yaitu ‟kata_masukan‟, ‟kata dasar‟,
‟tipe_kata_masukan‟, ‟tipe_kata_dasar‟,
‟awalan‟, ‟sisipan‟, ‟akhiran‟, dan
‟keterangan‟. Field „kata_masukan‟ berisi
semua kata yang terdapat pada penelitian
Rahmat (2009), Anggraeni (2009), Samba
Root element:
<graph>
Element:
<relationid>
Element:
<token>
Element:
<id>
Element:
<id> Element:
<left> Element:
<top> Element:
<size>
Element:
<components>
Element:
<token>
Element:
<relationships>
Element:
<positions>
8
(2010), Muslik (2009), Saleh (2009), dan
Sulistiawan (2011). Field „keterangan‟
menyimpan informasi golongan jenis kata
preposisi atau pola word graph kata
keterangan.
Tabel „pola_s‟, „pola_benda‟, dan
„pola_kerja‟ berisi enam field, yaitu
‟tipe_kata_dasar‟, ‟awalan‟, ‟sisipan‟,
‟akhiran‟, ‟keterangan‟, dan ‟pola_wg‟. Pada
tabel „pola_s‟, field „keterangan‟ digunakan
untuk membedakan “ter-KS makna paling
tinggi” dengan “ter-KS makna paling rendah”.
Tabel „pola_prep‟ berisi tiga field, yaitu
„id_pola‟, ‟jenis‟, ‟atribut‟, dan ‟pola_wg‟.
Field atribut menyimpan tipe kata yang
menyertai atau kata yang mendahului
preposisi tersebut.
Tabel „kata_lain‟ yang berisi empat buah
field, yaitu „katalain‟, „preposisi‟, „posisi‟, dan
„periode‟. Field „katalain‟ berisi semua kata
yang terdapat pada tesis Anggraeni (2009),
field „preposisi‟ berisi jenis preposisi, field
„posisi‟ menyatakan posisi kata terhadap suatu
preposisi, dan field „periode‟ menyatakan
keterangan untuk kurun waktu.
I.2.5 Implementasi Antarmuka
Bagian KGV terdiri atas delapan bagian
utama, yaitu header, input bar, canvas,
upload bar, text bar, error history, ribbon
bar, dan footer. Pada bagian input bar terdiri
atas input dialog untuk memasukkan kata.
Pada bagian ribbon bar terdiri atas tombol
left-top, center, left, right, up, down, zoom in
,zoom out, Download XML, Clear Canvas,
Update Viewer, Clear XML, dan Update
Viewer. Pada bagian canvas merupakan
tempat sistem menampilkan word graph kata.
Pada bagian upload bar terdapat tombol untuk
memilih dokumen XML yang akan diunggah
dan tombol Load File. Pada bagian error
history menampilkan rincian pesan kesalahan
apabila terdapat dokumen XML yang tidak
sesuai. Pada bagian footer terdapat nama
sistem. Tampilan antarmuka KGV dapat
dilihat pada Gambar 7.
Format tampilan KGV seperti tata letak
tiap elemen HTML, warna, dan gambar latar
pada text bar diatur menggunakan dokumen
CSS yang terpisah dari dokumen HTML. CSS
tersebut disimpan pada direktori „CSS‟
dengan nama „kgv.css’.
Pada elemen text bar ditambahkan nomor
baris untuk mempermudah pengguna dalam
melakukan manipulasi XML dan pemeriksaan
kesalahan struktur XML. Penambahan elemen
ini menggunakan jQuery dan CSS
linetextarea.
Gambar 7 Tampilan antarmuka KGV.
Pengguna dapat menghapus XML pada
text bar dengan menekan tombol clear XML.
Fungsi ini ditambahkan pada dokumen HTML
dengan elemen input bertipe reset.
Penambahan elemen ini dapat dilihat pada
Gambar 8.
Gambar 8 Elemen HTML untuk menghapus
XML pada text bar.
Pengguna juga dapat mengetahui setiap
rincian komponen word graph yang terdapat
pada canvas. Sistem akan menampilkan
tooltip yang berisi tag XML pembentuk ketika
pengguna mengarahkan mouse pada
komponen tersebut. Penambahan informasi
komponen ini menggunakan „setTooltip()’
ketika parsing tag <components> dilakukan.
Canvas pada sistem KGV dilengkapi fitur
left-top, center, left, right, up, down, zoom in,
dan zoom out. Hal ini memungkinkan
pengguna untuk menggeser, memperbesar,
atau memperkecil ukuran word graph yang
ditampilkan pada canvas. Proses yang terjadi
ketika pengguna melakukan aksi menekan
tombol zoom in yaitu sistem akan melakukan
dilatasi pada setiap koordinat posisi
komponen token, focus, dan text. Selanjutnya
dilatasi juga dilakukan pada ukuran panjang
dan lebar komponen token dan focus. Setelah
proses dilatasi dilakukan maka sistem akan
meng-update ulang semua komponen relation.
Proses zoom out dan zoom in memiliki
perbedaan pada bilangan pengali. Bilangan
pengali pada zoom out ialah 0.9 sedangkan
bilangan pengali pada zoom in ialah 1.1. Pola
word graph yang telah dilakukan zoom in dan
zoom out dapat dilihat pada Gambar 9 dan
Gambar 10.
1 <input id="uploadxml" type="RESET"
2 value="Clear XML" class="blue" />
9
Gambar 9 Zoom in pada word graph.
Gambar 10 Zoom out pada word graph.
I.3 Tahapan Customer Test Drives Mock-up
Pengujian sistem dilakukan dengan
menggunakan 21 kata sifat, 19 kata benda, 10
kata kerja, 23 kata keterangan, 23 kata
preposisi, dan 23 frasa keterangan. Terdapat
23 kemungkinan masukan yang dapat
dibentuk oleh kata preposisi jenis 1 sampai 8
berdasarkan penelitian Anggraeni (2009).
Akan tetapi, hanya 22 kemungkinan masukan
yang dapat diproses pada sistem ini karena
KGV tidak menerima masukan berupa angka.
Dengan demikian, pengujian kata masukan
untuk kata preposisi sebanyak 37 kata.
Berdasarkan pengujian tersebut, diperoleh
akurasi sebesar 87.97% karena terdapat 16
kata uji yang memiliki lebih dari satu tipe kata
pada database sehingga sistem hanya
menampilkan pola word graph dari tipe kata
yang pertama ditemukan pada database.
Dengan demikian, diperlukan perbaikan pada
sistem KGV agar pengguna dapat memilih
tipe kata dari kata masukan apabila kata
tersebut memiliki lebih dari satu tipe kata.
Daftar 16 kata uji yang memiliki lebih dari
satu tipe kata dapat dilihat pada Lampiran 4.
II Iterasi 2
II.1 Tahapan Listen to Customer
Berdasarkan evaluasi pada iterasi pertama,
pengguna menginginkan adanya pop-up
pilihan tipe kata masukan apabila kata
masukan memiliki lebih dari satu tipe kata
pada database. Selain itu, pengguna juga
menginginkan penambahan fungsi untuk
pemeriksaan kata masukan pada Kamus Besar
Bahasa Indonesia (KBBI) apabila kata
masukan tidak ditemukan pada tabel „kata‟.
II.2 Tahapan Build or Revise Mock-up
Tahapan ini akan mengimplementasikan
perbaikan-perbaikan pada sistem KGV agar
sesuai dengan kebutuhan pengguna. Perbaikan
pertama adalah menambahkan pop-up pilihan
tipe kata apabila kata masukan memiliki tipe
kata lebih dari satu. Perbaikan dilakukan
dengan menghitung jumlah kata masukan
yang ditemukan pada database. Apabila lebih
dari satu, sistem akan menampilkan pop-up
pilihan tipe kata masukan seperti pada
Gambar 11. Dengan demikian, sistem dapat
menampilkan pola word graph yang sesuai
berdasarkan tipe kata pilihan pengguna.
Gambar 11 Pop-up tipe kata masukan.
Perbaikan kedua adalah penambahan
fungsi untuk pemeriksaan kata masukan pada
KBBI. Penambahan tabel baru diperlukan
untuk menyimpan seluruh kata yang terdapat
pada KBBI. Tabel „KBBI‟ berisi tiga buah
field, yaitu „kata_masukan‟, „kata_dasar‟, dan
„tipe_kata_masukan‟. Field „kata_masukan‟
berisi semua kata yang terdapat pada KBBI.
Data tersebut diperoleh dari Laboratorium
Information Retrieval Departemen Ilmu
Komputer Institut Pertanian Bogor.
Apabila kata masukan tidak ditemukan
pada tabel „kata‟, sistem akan mengalihkan
pemeriksaan kata masukan pada tabel „KBBI‟.
Apabila kata masukan ditemukan pada tabel
„KBBI‟, sistem akan menampilkan pop-up
pilihan kemungkinan pola word graph.
Dengan demikian, pengguna dapat memilih
pola yang sesuai dengan membandingkan
kemiripan makna antara kata masukan dengan
contoh yang diberikan sistem pada masing-
masing pola. Pop-up pilihan pola kata dapat
dilihat pada Gambar 12.
Gambar 12 Pop-up pilihan pola kata.
10
II.3 Tahapan Customer Test Drives Mock-
up
Berdasarkan pengujian tersebut, diperoleh
akurasi 100% untuk keseluruhan kata
masukan. Dengan demikian, 21 kata sifat, 19
kata kerja, 10 kata kerja, 23 kata keterangan,
37 kata preposisi, dan 23 frasa keterangan
dapat dikenali dengan baik dan digambarkan
pola word graph yang sesuai. Pengujian
sistem dan hasil uji kata masukan dapat dilihat
pada Lampiran 5 dan Lampiran 6.
Kekurangan dan kelebihan sistem
Kekurangan dari sistem ini antara lain:
Masukan tahun dalam angka untuk
menyatakan waktu tidak dapat diproses.
Sistem ini masih menggunakan database
untuk memperoleh imbuhan dan kata dasar
dari kata masukan.
Ukuran panah dan label nama pada canvas
tidak ikut berubah apabila pengguna
melakukan aksi zoom in dan zoom out.
Sistem ini belum dapat menggambar
modul XML frasa kata umum.
Sistem ini tidak dapat memisahkan
komponen yang tidak memiliki relasi pada
canvas.
Kelebihan dari sistem ini antara lain:
Sistem ini dapat dijalankan pada web
browser.
Sistem ini dapat dikembangkan tanpa
terbentur oleh permasalahan lisensi karena
dikembangkan menggunakan platform
yang open source.
Sistem ini dapat menerima masukan kata
dan mencari pola word graph yang sesuai.
Sistem bisa melakukan pengubahan
langsung pada dokumen XML, misalnya
ketika ada label nama yang diubah dengan
menggunakan event double click.
Sistem bisa menyimpan posisi setiap
komponen pada dokumen XML apabila
pengguna merubah posisi komponen word
graph.
Sistem dapat menampilkan rincian
kesalahan pada dokumen XML, misalnya
terdapat nomor id yang sama pada
komponen sejenis.
SIMPULAN DAN SARAN
Simpulan
Berdasarkan penelitian yang telah
dilakukan, telah berhasil diintegrasikan modul
viewer dan enam modul XML word graph
menjadi sebuah sistem Knowledge Graph
Viewer. Pembangunan sistem ini melalui dua
tahap iterasi. Iterasi pertama adalah
pengintegrasian sistem secara keseluruhan,
sedangkan iterasi kedua merupakan perbaikan
dari kekurangan yang terdapat pada iterasi
pertama. Dari hasil pengujian, sistem dapat
menampilkan word graph dari 21 kata sifat,
19 kata benda, 10 kata kerja, 23 kata
keterangan, 37 kata preposisi, dan 23 frasa
keterangan dengan tingkat akurasi 100%.
Saran
Saran untuk pengembangan sistem ini
lebih lanjut di antaranya:
Menambahkan modul stemming untuk kata
masukan sehingga sistem mampu
menghasilkan kata dasar dan imbuhan
yang sesuai.
Menambahkan daftar kata masukan
berdasarkan Kamus Besar Bahasa
Indonesia versi terbaru sehingga
memperkaya daftar kata masukan.
Menambahkan modul viewer untuk
dokumen XML frasa kata umum.
Menambahkan fungsi editor pada sistem
KGV.
Menambahkan modul untuk memisahkan
komponen word graph yang tidak berelasi.
DAFTAR PUSTAKA
Anggraeni W. 2009. Analisis pembentukan
word graph kata preposisi menggunakan
metode knowledge graph [tesis]. Bogor:
Program Pascasarjana, Institut Pertanian
Bogor.
Anti NP. 2012. Representasi word graph
menggunakan XML untuk kata keterangan
dalam bahasa Indonesia [skripsi]. Bogor:
Fakultas Matematika dan Ilmu
Pengetahuan Alam, Institut Pertanian
Bogor.
Apriana D. 2012. Sistem viewer modul word
graph berbasis XML [skripsi]. Bogor:
Fakultas Matematika dan Ilmu
Pengetahuan Alam, Institut Pertanian
Bogor.
Astriratma R. 2012. Representasi word graph
menggunakan XML untuk kata sifat dalam
bahasa Indonesia [skripsi]. Bogor:
Fakultas Matematika dan Ilmu
Pengetahuan Alam, Institut Pertanian
Bogor.
11
Bakken et al. 2003. PHP Manual.
http://www.dcc.fc.up.pt/~pbrandao/aulas/0
203/bdm/docs/php_manual_en.pdf [17
Maret 2012].
Dillyani NNA. 2012. Representasi word
graph preposisi bahasa Indonesia
menggunakan XML [skripsi]. Bogor:
Fakultas Matematika dan Ilmu
Pengetahuan Alam, Institut Pertanian
Bogor.
Hoede C, Nurdiati S. 2008. A Graph
Theoritical Analysis of Certain Aspects of
Bahasa Indonesia.
http://doc.utwente.nl/64803/1/memo1870.
pdf [14 Januari 2012].
Jacobs S. 2006. Beginning XML with DOM
and Ajax: From Novice to Professional.
New York: Springer-Verlag.
Mukhopadhyay S, Bharadwaj R, Davulcu H.
2011. Functional “AJAX” in secure
synchronous programming. Proceedings of
the 44th Hawaii International Conference
on System Sciences; Hawaii, 4-7 Jan 2011.
Washington: IEEE Computer Society. hlm
1-10.
Muslik A. 2009. Analisis pembentukan word
graph kata kerja menggunakan metode
knowledge graph [tesis]. Bogor: Program
Pascasarjana, Institut Pertanian Bogor.
Oktarina RPE. 2012. Representasi word graph
menggunakan XML untuk kata kerja
dalam bahasa Indonesia [skripsi]. Bogor:
Fakultas Matematika dan Ilmu
Pengetahuan Alam, Institut Pertanian
Bogor.
Pressman RS. 2001. Software Engineering: A
Practitioner’s Approach. Ed ke-5.
Singapore: McGraw-Hill.
Saleh H. 2009. Analisis pembentukan word
graph kata keterangan menggunakan teori
knowledge graph [tesis]. Bogor: Program
Pascasarjana, Institut Pertanian Bogor
Samba R. 2010. Analisis pembentukan word
graph kata keterangan menggunakan
metode knowledge graph [tesis]. Bogor:
Program Pascasarjana, Institut Pertanian
Bogor.
Susanti Y. 2012. Representasi word graph
menggunakan XML untuk kata benda
dalam bahasa Indonesia [skripsi]. Bogor:
Fakultas Matematika dan Ilmu
Pengetahuan Alam, Institut Pertanian
Bogor.
Usep R. 2009. Analisis pembentukan word
graph kata sifat menggunakan metode
knowledge graph [tesis]. Bogor: Program
Pascasarjana, Institut Pertanian Bogor.
Wilton P, McPeak J. 2010. Beginning
JavaScript. Ed ke-4. Indianapolis: Wiley
Publishing, Inc.
Wiraswasta C. 2012. Representasi word graph
menggunakan XML untuk frasa
keterangan dalam bahasa Indonesia
[skripsi]. Bogor: Fakultas Matematika dan
Ilmu Pengetahuan Alam, Institut Pertanian
Bogor.
Zhang L. 2002. Knowledge graph theory and
structural parsing [disertasi]. Netherlands:
Twente University.
12
LAMPIRAN
13
Lampiran 1 Diagram use case sistem KGV
14
Lampiran 2 Fungsi cekkata()
1 function cekkata()
2 {
3 // membaca nilai dari input form dan disimpan sebagai x
4 var x = document.form1.q.value;
5 x= x.toLowerCase();//mengecilkan huruf
6 if(0==x.length)
7 {
8 alert("Input is empty");
9 return false;
10 }
11 else if(1==x.length)
12 {
13 alert("Input must be more than one character");
14 return false;
15 }
16 else
17 {
18 // membuat daftar karakter dalam array
19 var list = new Array(" ","-","a", "b", "c", "d", "e", "f",
20 "g", "h", "i", "j", "k" , "l" , "m" , "n" , "o" , "p" ,
21 "q", "r" , "s" , "t" , "u" , "v" , "w" , "x" , "y" , "z");
22 // nilai awal status
23 var status = true;
24 // proses pengecekan setiap karakter dalam string
25 // looping sebanyak jumlah karakter dalam string
26 for (i=0; i<=x.length-1; i++)
27 {
28 // jika karakter ke-i termasuk dalam array TRUE
29 for (j=0; j<list.length; j++){
30 if (x[i] == list[j]){
31 cek = true;
32 j=j+list.length;}//keluar dari for//break;
33 else
34 cek = false;
35 }
36 status = status && cek;
37 }
38 if (status == false)
39 {
40 // jika status akhir FALSE, muncul kotak peringatan
41 alert("Input must be character a-z/A-Z and less then 4 words");
42 return false;
43 }
44 else
45 {
46 doRequest('get','ambil.php?q='+x,'text','typeword');
47 return false;
48 }
49 }
50 }
15
Lampiran 3 Class diagram sistem KGV
ViewerCanvas
deltaX;
deltaY;
mintop;
minleft;
maxright;
maxbottom;
padding;
minX;
minY;
maxX;
maxY;
init();
clear();
moveAll(deltaX, deltaY)
cekbutton();
leftup();
centerwg();
frameupdate();
zoomOut();
Left();
Right();
Up();
Down();
Parse(xml);
objMove(sender);
objDblClick(sender);
textPanelOk(sender, value);
setWidth(data);
setHeight(data);
Control
parentObj;
obj;
e;
data;
getNextCID();
init();
free();
identify();
say();
bringToFront();
sendToBack();
setButtonMode();
doAddedToStage();
doClick();
doDbClick();
getBgColor();
setBgColor(data);
setFontColor(data);
getBorderColor();
setBorderColor(data);
getCanvas();
getLeft();
setLeft(data);
getTop();
setTop(data);
getWidth();
setWidth(data);
getHeight();
setHeight(data);
isVisible();
setVisible(data);
setTooltip(data);
getOnClick();
getOnDbClick();
ContainerControl
i;
control;
init();
bringChildToFront();
sendChildToBack();
addControl(control);
delControl(control);
clear();
getClipMode();
setClipMode(mode);
BaseControl
deltaX;
deltaY;
init();
addCurrentTextEdge();
getCurrentTextEdge();
getTextEdge();
addEdge(otherNode);
getEdge();
doMouseDown(x, y);
doScreenMouseMove(x, y);
doScreenMouseUp(x, y);
setSelected(data);
setId(id);
getId();
getClassName();
setWidth(data);
setHeight(data);
getOnSelect();
getOnMove();
getOnResize();
Viewer
tagId;
xml;
fileName;
newWidth;
newHeight;
init();
run();
parse(xml);
zoom_out();
zoom_in();
addPosition();
left();
up();
right();
down();
leftup();
centerwg();
clearcanvas();
cekbutton();
moveAll();
load(fileName);
doScreenResized(newWidth,
newHeight);
App
init();
run();
1
TextPanel
data;
sender;
init();
initSize();
setValue();
btnCloseClick(sender);
btnOkClick(sender);
setVisible(data);
setWidth(data);
setHeight(data);
getOnOk();
16
Lanjutan
Focus
init();
Token
data
init();
setCaption(data)
;
Text
data
init();
setCaption(data);
setReplaceable(data);
isReplaceable();
Relation
from;
to;
noArrow;
fromTop;
mode;
fromLeft;
toLeft;
toTop;
data;
init();
setPath(from, to,
noArrow);
update();
doMouseDown(x, y);
doScreenMouseMove
(x, y);
getFrom();
getTo();
setCaption(data);
FrameSet
result;
obj;
deltaX;
deltaY;
control;
data;
sender;
init();
addSub(control);
isSub(control);
resizerMouseDown();
doScreenMouseMove
(x, y);
doScreenMouseUp(x,
y);
setWidth(data);
setHeight(data);
setCaption(data);
FrameRelation
result;
obj;
deltaX;
deltaY;
control;
data;
sender;
init();
addSub(control);
isSub(control);
resizerMouseDown();
doScreenMouseMove
(x, y);
doScreenMouseUp(x,
y);
setWidth(data);
setHeight(data);
setCaption(data);
1
17
Lampiran 4 Daftar 16 kata uji yang memiliki lebih dari satu tipe kata
No. Kata masukan Tipe kata 1 Tipe kata 2
1 Merakyat Kata sifat Kata kerja
2 Penyayang Kata sifat Kata benda
3 Memandikan Kata sifat Kata kerja
4 Berdasarkan Kata preposisi Kata kerja
5 Bak Kata preposisi Kata benda
6 Periang Kata sifat Kata benda
7 Kurang Kata sifat Kata keterangan
8 Lebih Kata sifat Kata keterangan
9 Banyak Kata sifat Kata keterangan
10 Sedikit Kata sifat Kata keterangan
11 Jarang Kata sifat Kata keterangan
12 Pasti Kata sifat Kata keterangan
13 Di Kata preposisi Kata keterangan
14 Ke Kata preposisi Kata keterangan
15 Dari Kata preposisi Kata keterangan
16 Satu kali Kata Keterangan Frasa Keterangan
18
Lampiran 5 Tabel pengujian sistem KGV
No Fungsi Nilai
masukan Skenario pengujian Hasil yang diharapkan
Hasil
uji
1 Masukan
kata
Salah 1 Kata yang tidak terdapat
dalam database (1 kata)
2 Kata yang tidak terdapat
dalam database (2 kata)
3 Kata yang tidak terdapat
dalam database (3 kata)
4 Masukan empat kata
5 Ada karakter angka
6 Masukan berupa angka
semua
7 Ada karakter selain huruf
dan tanda hubung „-‟
8 Masukan kosong
9 Masukan satu karakter
10 Masukan berupa preposisi
yang membutuhkan kata
penyerta atau pendahulu
Menampilkan jendela
peringatan
Sesuai
Benar 1 Kata masukan ada dalam
database dan ditulis
kapital
2 Kata perulangan dengan
tanda hubung ‟-‟
3 Kata yang terdapat dalam
database (1 kata)
4 Kata yang terdapat dalam
database (2 kata)
5 Kata yang terdapat dalam
database (3 kata)
Menampilkan gambar
word graph pada
canvas
Sesuai
Benar Kata masukan yang memiliki
dua tipe kata atau lebih
Menampilkan jendela
pilihan tipe kata
masukan
Sesuai
Salah Memilih tipe kata untuk kata
masukan yang tidak ada pada
database
Menampilkan jendela
peringatan
Sesuai
Benar Memilih tipe kata untuk kata
masukan yang ada pada
database
Menampilkan gambar
word graph pada
canvas
Sesuai
2 Pola umum
XML
Benar Memilih salah satu pola
umum kata dan menekan
tombol load XML
Menampilkan gambar
word graph pada
canvas
Sesuai
3 Clear
Canvas
Benar Canvas kosong atau terdapat
gambar word graph
Canvas kosong Sesuai
4 Clear
XML
Benar Text bar kosong atau terdapat
dokumen XML
Text bar kosong Sesuai
5 Clear All Benar Text bar dan canvas kosong
atau terdapat dokumen XML
dan gambar word graph
Text bar dan canvas
kosong
Sesuai
19
No Fungsi Nilai
masukan Skenario pengujian Hasil yang diharapkan
Hasil
uji
6 Unggah
dokumen
XML
Salah Memilih bukan dokumen
XML pada komputer client
Menampilkan pesan
peringatan error
history
Sesuai
Benar Memilih dokumen XML pada
komputer client
Text bar terisi XML
yang diunggah
Sesuai
7 Update
Viewer
Salah 1 Struktur XML salah atau
sembarang teks
2 Masukan kosong
3 Bukan XML word graph
4 Terdapat nomor id yang
sama pada komponen
sejenis atau relationid
1 Muncul pesan
peringatan pada
error history
2 Muncul pesan
peringatan pada
error history
3 Canvas kosong
4 Muncul pesan
peringatan pada
error history
Sesuai
Benar 1 XML yang telah diunduh
sebelumnya tanpa
menggeser komponen
word graph pada canvas
2 XML yang telah diunduh
sebelumnya dengan
menggeser komponen
word graph pada canvas
1 Menampilkan
gambar word graph
pada canvas dengan
posisi default
2 Menampilkan
gambar word graph
pada canvas
dengan posisi yang
telah diubah
pengguna
Sesuai
8 Unduh
XML
Salah Canvas dalam keadaan
kosong
Muncul jendela
peringatan
Sesuai
Benar 1 Canvas digambar dengan
XML kata masukan
2 Canvas digambar dengan
XML pola umum
3 Canvas digambar dengan
masukan XML
XML terunduh dengan
penambahan tag <positions>
Sesuai
Benar Adanya label nama pada
canvas yang diubah nilainya
menggunakan event double
click
XML terunduh dengan
perubahan nilai pada
komponen text sesuai
dengan masukan
pengguna
Sesuai
9 Lefttop Salah Canvas dalam keadaan kosong Muncul jendela
peringatan
Sesuai
Benar Terdapat pola word graph
pada canvas
word graph pindah ke
pojok kiri atas
Sesuai
10 Center Salah Canvas dalam keadaan kosong Muncul jendela
peringatan
Sesuai
Benar Terdapat pola word graph
pada canvas
word graph pindah ke
tengah canvas
Sesuai
Lanjutan
20
No Fungsi Nilai
masukan Skenario pengujian Hasil yang diharapkan
Hasil
uji
11 Left Salah Canvas dalam keadaan kosong Muncul jendela
peringatan
Sesuai
Benar Terdapat pola word graph
pada canvas
Gambar word graph
bergeser ke kiri
Sesuai
12 Right Salah Canvas dalam keadaan kosong Muncul jendela
peringatan
Sesuai
Benar Terdapat pola word graph
pada canvas
Gambar word graph
bergeser ke kanan
Sesuai
13 Top Salah Canvas dalam keadaan kosong Muncul jendela
peringatan
Sesuai
Benar Terdapat pola word graph
pada canvas
Gambar word graph
bergeser ke atas
Sesuai
14
Down Salah Canvas dalam keadaan kosong Muncul jendela
peringatan
Sesuai
Benar Terdapat pola word graph
pada canvas
Gambar word graph
bergeser ke bawah
Sesuai
15 Zoom in Salah Canvas dalam keadaan kosong Muncul jendela
peringatan
Sesuai
Benar Terdapat pola word graph
pada canvas
Gambar word graph
membesar
Sesuai
16 Zoom out Salah Canvas dalam keadaan kosong Muncul jendela
peringatan
Sesuai
Benar Terdapat pola word graph
pada canvas
Gambar word graph
mengecil
Sesuai
17 Event
double
click pada
komponen
text
Salah Komponen text yang memiliki
nilai tag <replace> “NO”
Sistem tidak
menampilkan kotak
edit nilai teks
Sesuai
Benar Komponen text yang memiliki
nilai tag <replace> “YES”
Sistem menampilkan
kotak edit nilai teks
Sesuai
18 Melakukan
edit pada
nilai teks
Benar Memasukkan kata dan
menekan tombol simpan
Label nama pada
canvas dan dokumen
XML ter-update
Sesuai
Salah Menekan tombol batal Label nama pada
canvas dan dokumen
XML tidak ter-update
Sesuai
19 Pop-up
pilihan
pola kata
Benar Kata masukan tidak terdapat
pada tabel „kata‟, tetapi ada
pada tabel „KBBI‟
Muncul pop-up pilihan
pola kata
Sesuai
Salah Kata masukan tidak terdapat
pada tabel „kata‟ dan tabel
„KBBI‟
Menampilkan jendela
peringatan
Sesuai
Lanjutan
21
Lampiran 6 Tabel pengujian kata masukan
No Kata masukan Gambar Hasil uji
Kata Sifat
1 Sebaik
Sesuai
2 Terbaru
Sesuai
3 Terjelek
Sesuai
4 Berdua
Sesuai
5 Merakyat
Sesuai
6 Penyayang
Sesuai
22
Lanjutan
No Kata masukan Gambar Hasil uji
7 Gemerlap
Sesuai
8 Ubanan
Sesuai
9 Potensial
Sesuai
10 Moril
Sesuai
11 Alamiah
Sesuai
12 Hewani
Sesuai
13 Objektif
Sesuai
23
Lanjutan
No Kata masukan Gambar Hasil uji
14 Motorik
Sesuai
15 Ekonomis
Sesuai
16 Humoristis
Sesuai
17 Kelamaan
Sesuai
18 Menyejukan
Sesuai
19 Menjengkelkan
Sesuai
20 Memandikan
Sesuai
24
Lanjutan
No Kata masukan Gambar Hasil uji
21 Pintar
Sesuai
Kata Preposisi
22 Di meja
Sesuai
23 Di Januari
Sesuai
24 Pada area
Sesuai
25 Pada saat
Sesuai
26 Menyerahkan pada
Sesuai
27 Pada januari-februari
Sesuai
25
Lanjutan
No Kata masukan Gambar Hasil uji
28 Dari rumah
Sesuai
29 Dari ayah
Sesuai
30 Tersusun dari
Sesuai
31 Bagian dari
Sesuai
32 Lewat depan
Sesuai
33 Lewat malam
Sesuai
26
Lanjutan
No Kata masukan Gambar Hasil uji
34 Lewat telepon
Sesuai
35 Melalui pasar
Sesuai
36 Melalui kapal
Sesuai
37 Sampai pedesaan
Sesuai
38 Sampai zuhur
Sesuai
39 Terdiri atas
Sesuai
27
Lanjutan
No Kata masukan Gambar Hasil uji
40 Atas
Sesuai
41 Dengan penjagaan
Sesuai
42 Dengan
Sesuai
43 Sesuai dengan
Sesuai
44 Daripada
Sesuai
45 Menuju
Sesuai
46 Sepanjang
Sesuai
28
Lanjutan
No Kata masukan Gambar Hasil uji
47 Menjelang
Sesuai
48 Sebelum
Sesuai
49 Setelah
Sesuai
50 Sejak
Sesuai
51 Antara
Sesuai
52 Akibat
Sesuai
53 Terhadap
Sesuai
29
Lanjutan
No Kata masukan Gambar Hasil uji
54 Tanpa
Sesuai
55 Berdasarkan
Sesuai
56 Sebagai
Sesuai
57 Bak
Sesuai
58 Kecuali
Sesuai
Kata Kerja
59 Bangun
Sesuai
60 Membuka
Sesuai
30
No Kata masukan Gambar Hasil uji
61 Dipetik
Sesuai
62 Menerka-nerka
Sesuai
63 Berhubungan
Sesuai
64 Berlarian
Sesuai
65 Jalan-jalan
Sesuai
66 Terbangun
Sesuai
Lanjutan
31
Lanjutan
No Kata masukan Gambar Hasil uji
67 Tusuk-menusuk
Sesuai
68 Berlari-lari
Sesuai
Kata Benda
69 Petani
Sesuai
70 Pemotong
Sesuai
71 Peserta
Sesuai
72 Pewarna
Sesuai
73 Pelaut
Sesuai
32
Lanjutan
No Kata masukan Gambar Hasil uji
74 Periang
Sesuai
75 Pemutih
Sesuai
76 Makanan
Sesuai
77 Puluhan
Sesuai
78 Asinan
Sesuai
79 Pelatihan
Sesuai
33
Lanjutan
No Kata masukan Gambar Hasil uji
80 Harian
Sesuai
81 Perjanjian
Sesuai
82 Perikanan
Sesuai
83 Pembukuan
Sesuai
84 Pemanasan
Sesuai
85 Ketua
Sesuai
86 Kehadiran
Sesuai
34
Lanjutan
No Kata masukan Gambar Hasil uji
87 Durian
Sesuai
Kata Keterangan
88 Kurang
Sesuai
89 Lebih
Sesuai
90 Paling
Sesuai
91 Sangat
Sesuai
92 Satu kali
Sesuai
93 Kira-kira
Sesuai
35
Lanjutan
No Kata masukan Gambar Hasil uji
94 Banyak
Sesuai
95 Sedikit
Sesuai
96 Hanya
Sesuai
97 Selalu
Sesuai
98 Jarang
Sesuai
98 Sekarang
Sesuai
100 Nanti
Sesuai
36
Lanjutan
No Kata masukan Gambar Hasil uji
101 Kemarin
Sesuai
102 Pasti
Sesuai
103 Mungkin
Sesuai
104 Mari
Sesuai
105 Tidak
Sesuai
106 Bahkan
Sesuai
107 Di
Sesuai
37
Lanjutan
No Kata masukan Gambar Hasil uji
108 Ke
Sesuai
109 Dari
Sesuai
110 Dengan telepon
Sesuai
Frasa Keterangan
111 Amat sangat
Sesuai
112 Lebih kurang
Sesuai
113 Paling pintar
Sesuai
114 Lebih pintar
Sesuai
38
Lanjutan
No Kata masukan Gambar Hasil uji
115 Sangat kurang
Sesuai
116 Belum cukup
Sesuai
117 Pintar sekali
Sesuai
118 Satu kali
Sesuai
119 Baru saja
Sesuai
120 Hanya saja
Sesuai
121 Acapkali
Sesuai
39
Lanjutan
No Kata masukan Gambar Hasil uji
122 Sangat jarang
Sesuai
123 Nanti siang
Sesuai
124 Siang hari
Sesuai
125 Sekarang juga
Sesuai
126 Tadi siang
Sesuai
127 Kemarin malam
Sesuai
40
Lanjutan
No Kata masukan Gambar Hasil uji
128 Belum tentu
Sesuai
129 Belum pernah
Sesuai
130 Tidak mungkin
Sesuai
131 Sudah pasti
Sesuai
132 Justru dapat
Sesuai
133 Lagi pula
Sesuai