5. Penambahanpengisian data baru ke sebuah filetabel insert
6. Pengambilanpencarian data dari sebuah filetabel retrievesearch
7. Pengubahan data dari sebuah filetabel update
8. Penghapusan data dari sebuah filetabel delete.
End-user biasanya hanya bisa melakukan poin nomor 5, 6, 7, dan 8 saja, selain itu perlu hak istimewa seperti administrator untuk melakukan poin nomor 1, 2, 3,
dan 4. Pada penelitian ini, sistem NLIDB Bahasa Indonesia yang dikembangkan hanya mengolah perintah untuk mengambilmenampilkan data saja poin 6.
2.2.2 Structured Query Language
Structured Query Language SQL merupakan sebuah bahasa standar yang digunakan untuk berinteraksi dengan basis data relasional Budi Raharjo, 2011.
Bahasa SQL dibutuhkan untuk dapat melaksanakan semua pekerjaan yang berhubungan dengan manipulasi, definisi, dan administrasi sebuah basis data.
Untuk melihat informasi dengan kriteria tertentu dalam suatu database dengan menggunakan SQL, maka pemakai harus memahami struktur SQL,
dimana setelah diolah dalam “SQL Engine”, informasi pada basis data dapat dikeluarkan sebagai hasil query seperti pada skema berikut:
Format penulisan SQL untuk menampilkan data adalah sebagai berikut.
SELECT nama_tabel.nama_atribut FROM nam_tabel WHERE condition;
SQL memiliki operator-operator dan fungsi-fungsi dasar seperti , , =, =, MIN, MAX, LIKE, NOT LIKE, BETWEEN, AND, OR, COUNT, dan lain
sebagainya. Operator-operator tersebut digunakan untuk menspesifikasikan penyeleksian data.
2.2.3 Text Processing
2.2.3.1 Tokenizing
Tokenizing adalah proses mensegmentasimembagi suatu dokumen teks atau string kalimat menjadi token serangkaian karakter yang merepresentasikan
SQL Engine Basis Data
SQL Hasil query
Gambar 2.1 Alur mendapatkan informasi pada basis data
kata oleh tokenizer. Tokenizer membagi suatu string menjadi token-token berdasarkan karakter tertentu. Biasanya karakter spasi, tab, new row white space
character yang dijadikan panduan segmentasi menjadi token. Selain itu, tanda baca punctuation juga dapat digunakan sebagai pemisah antar token, seperti
tanda “-“. Berikut contoh tokenizing pada kalimat “surat masuk dari MIPA”. Input: surat masuk dari MIPA
Output: [surat] [masuk] [dari] [MIPA]
2.2.3.2 Spell CheckCorrection
Spell checking atau spell correction merupakan suatu fitur tambahan yang dapat dimiliki oleh sebuah aplikasi temu kembali informasi di mana query yang
diinputkan user akan dikoreksi pengejaanpenulisannya mengacu pada penulisan pada kamus. Jika terdapat kesalahan ejaan, aplikasi dapat memberikan peringatan
bahwa terjadi kesalahan penulisan dan akan dicarikan alternatif penulisan yang mungkin dimaksudkan oleh pengguna. Situs pencarian Google menerapkan
koreksi kesalahan query dengan memberikan alternatif query, seperti pada “Did you mean
”. Tabel 2.1 Pseudocode Levenshtein Edit Distance
No. Pseudocode Levenshtein Edit Distance
1 2
3 4
5 6
7 8
9 10
11 12
13 14
function LevenshteinDistancechar s[1..m], char t[1..n]: declare int d[0..m, 0..n]
set each element in d to zero for i from 1 to m:
d[i, 0] := i for j from 1 to n:
d[0, j] := j for j from 1 to n:
for i from 1 to m: if s[i] = t[j]:
d[i, j] := d[i-1, j-1] no operation required else:
d[i, j] := minimumd[i-1, j] + 1, a deletion d[i, j-1] + 1, an insertion
d[i-1, j-1] + 1 a substitution return d[m, n]
Terdapat banyak metode untuk menangani kesalahan ejaanpenulisan ini, salah satu yang paling populer adalah Levenshtein Edit Distance Vladimir
Levenshtein, 1985. Levenshtein Edit Distance memberikan nilaiskor terhadap
tiap calon koreksi ejaan yang salah. Pseudocode Levenstein Edit Distance dapat dilihat pada Tabel 2.1.
2.2.3.3 Stemming