Penanganan Kesalahan Pengunduhan Metadata

nilai yang akan dijadikan alamat untuk menampilkan metadata berikutnya. Contoh tag resumptionToken yang berasal dari USU Repository yang beralamat di http:repository.usu.ac.id adalah sebagai berikut: resumptionToken expirationDate=2011-05- 06T01:09:44Z0001-01-01T00:00:00Z9999-12-31T23:59:59Z oai_dc100resumptionToken Sesuai dengan ketentuan OAI-PMH, nilai di dalam tag resumptionToken yang diperoleh dijadikan nilai query string resumptionToken menggantikan query string metadata_prefix. Query string verb tidak diubah karena mode pengambilan metadata masih tetap sama yaitu menampilkan seluruh record yang ada di dalam repositori. Berdasarkan ketentuan tersebut maka dapat diketahui bahwa URL untuk mengambil metadata berikutnya adalah sebagai berikut: http:repository.usu.ac.idoairequest?verb=ListRecordsresum ptionToken=0001-01-01T00:00:00Z9999-12- 31T23:59:59Zoai_dc100 Tag resumptionToken dapat ditemukan pada akhir metadata. Apabila tidak terdapat tag resumptionToken maka alamat tersebut merupakan akhir dari seluruh metadata yang ditampilkan oleh repositori.

3.5.1 Penanganan Kesalahan

Pada saat melakukan koneksi dengan repositori, terdapat kemungkinan program mengalami kesalahan. Kesalahan-kesalahan yang umum terjadi adalah Universitas Sumatera Utara kesalahan server dengan kode 500, 501, 502, 503 dan 504 [40], alamat server tidak ditemukan, format dokumen XML tidak sesuai dengan ketentuan OAI-PMH dan kesalahan pengkodean dokumen. Seluruh kesalahan yang terjadi pada aplikasi ditangkap dengan menggunakan error handling dan kemudian dicatat. Tabel 3.1 Kode Kesalahan Server Kode Kesalahan Keterangan 500 Server menemukan kondisi yang mencegahnya untuk memenuhi permintaan klien 501 Server tidak dapat mengenali metode permintaan yang digunakan 502 Server menerima respon yang tidak valid dalam percobaan memenuhi permintaan klien 503 Server tidak dapat menangani permintaan karena kelebihan beban atau pemeliharaan server sementara 504 Server tidak menerima respon dari server upstream yang dispesifikasikan pada URI secara tepat waktu Pada beberapa kasus terdapat kemungkinan bahwa kesalahan server dengan kode 500, 501, 502, 503 dan 504 hanya bersifat sementara. Kode kesalahan server tersebut memiliki arti yang tertera pada Tabel 3.1. Oleh karena itu pengumpul akan mencoba kembali mengambil metadata pada repositori tersebut. Mekanismenya adalah apabila terjadi kesalahan maka alamat repositori pada daftar antrean akan diberi nilai status = 3 dan nomor urut antrean menjadi terakhir. Pengambilan kembali metadata tidak dilakukan pada saat itu juga untuk mengatasi kemungkinan bahwa Universitas Sumatera Utara layanan repositori hanya tidak dapat digunakan sementara. Dengan meletakkan alamat repositori yang gagal di akhir daftar antrean, maka akan diperlukan waktu untuk mengambilnya kembali. Batas maksimum pengumpul melakukan percobaan pengambilan metadata yang gagal ditetapkan sebanyak 10 kali. Jenis kesalahan akan dicatat apabila batas maksimum percobaan telah dilewati.

3.6 Penyimpanan Metadata