İÇERİK YÖNETİM SİSTEMLERİ MODÜLLERİNİN ANLAMSAL OLARAK İLİŞKİLENDİRİLMESİ
Download "İÇERİK YÖNETİM SİSTEMLERİ MODÜLLERİNİN ANLAMSAL OLARAK İLİŞKİLENDİRİLMESİ"
1 İÇERİK YÖNETİM SİSTEMLERİ MODÜLLERİNİN ANLAMSAL OLARAK İLİŞKİLENDİRİLMESİ Adem TEKEREK 1, Ali Teymur KAHRAMAN 2 1 Gazi Üniversitesi, Bilişim Enstitüsü, Elektronik ve Bilgisayar Eğitimi Bölümü 2 Gazi Üniversitesi, Bilişim Enstitüsü, Bilgisayar Bilimleri Bölümü 1. ÖZET Günümüzde web sitelerinde açık kaynak kodlu İçerik Yönetim Sistemlerinin (Joomla, Drupal, Wordpress, Plone) kullanılması yaygınlaşmış ve popülerleşmiştir. İYS'lerinde (İçerik Yönetim Sistemleri) belirli görevleri ve işlemlemleri gerçekleştiren hazır scriptler yer almaktadır. Bu scriptler genellikle açık kaynaklı olup gönüllü kullanıcılar tarafından belirli standartlar altında geliştirilmektedir. Geliştirilen ve kullanıma sunulan bu scriptlere modül veya eklenti denilmektedir. Bu eklentilerin sayısı Drupal  ve Joomla  İYS lerinde 7000 'nin üzerindedir. Wordpress İYS sisteminde ise üzerinde eklentisi vardır ve indirilme sayısı 160 milyonun üzerindedir. Her bir eklentinin gerçekleştirdiği görev, farklı veya aynı görevi gerçekleştiren birbirine rakip eklentiler olabilir. Kullanıcılar İYS'lerinde yapmak istedikleri eklentileri ararken karmaşa yaşayabilmektedir. Zorlu araştırma sürecinden sonra, tam olarak hangi eklentinin yapmak istedikleri işleri çözebilen eklenti olduğunu bulabilmektedirler. Bu projenin amacı sayıları on milyonların üzerinde olan İYS kullanıcılarına bir arayüz ve ontoloji tabanlı arama motoru sayesinde tam olarak istedikleri eklentiyi sunabilen veya buna en yakın çözümleri getirebilen eklentileri sunabilmektir. Anahtar Kelimeler : Ontoloji, Anlamsal Ağlar, İçerik Yönetim Sistemi
2 2.Metodoloji Projede ile anlamsal ağlar teknikleri ile var olan mevcut eklentiler kullanarak akıllı etiketlendirme gerçekleştirilmiştir. Bunu gerçekleştirebilmek için kullanıcı etkileşimli sıralama sistemi kullanılmıştır. Kullanıcı, arama ekranına İYS'de gerçekleştirmek istediği işlemi yapacak eklentiyi bulabilmek için anahtar kelimeler girecektir. Eğer kullanıcının aradığı kelime daha önce başka kullanıcılar tarafından aranmış ise kullanıcı geri dönüşüm bildirilerine göre sonuç sıralanacaktır. Uygulamada bir anahtar kelime ilk defa kullanıyor ise, veri tabanında bulunan eklenti tanımlama bilgilerinden (metadata) oluşturulan ontolojiye göre arama işlemi sonuçlandırılacaktır. Uygulamanın Özet Sözde Kodu Eğer Anahtar Kelime Veri Tabanında Var İse Döndür Kullanıcı Geri Dönüşüm Oranı Yok İse Eklenti Tanımlama Bilgilerinden Oluşturulan Ontolojiye Göre Arama Yap Son Olarak Kullanıcı Geri Dönüşüm Bildirimi Al
3 Başla Anahtar Kelime Gir Hayır Anahtar Kelime Girildimi Evet VT Ara Girilen Kelimeyi VT Ara Anahtar Kelime Bulundu Hayır Akılllı Arama Motorunu Çalıştır Evet Sonuçları Göster Olası Sonuçlar Kullanıcı Geri Dönüşüm Oranını Al VT Yaz VT Yaz Bitir Şekil 1. Uygulamanın Çalışma Algoritması
4 3 Literatür Araştırması "Ranking web sites using domain ontology concepts" isimli makalede Ahmad Kayed ve ark. pek çok web arama motorunun kullanıcı sorgularına döndürdüğü cevapların büyük miktarlarda ilgisiz bilgi döndürdüğünü belirtmişlerdir. Anlamsal webin arama motoru işlemlerini iyileştirecek umut verici bir yaklaşım olduğunu ve web alanları için ontolojilerin anlamsal veriyle anlaşmak için makinelere yardım etmek amacıyla kavramları yakalanabileceğini ileri sürmüşlerdir. Makalede, web sitelerini doğru bir şekilde yeniden sıralamak ve yeniden sorgu kavramları oluşturmak için, düzenlemişler ve web sitelerinin ilgililik oranının nasıl olduğunu göstermişlerdir. Bu nedenle makalede, düzenlenmiş dokümanların yeniden sıralanması için yeni bir ilgililik oranı önermişlerdir. Bu yaklaşımı ontoloji kavramları olarak adlandırılmışlar ve elektronik ticaret alanına uygulamışlardır. Uygulama alanı olarak anlaşılır ve kısa olması için, sadece Yahoo arama motorunun sonuçları üzerinde işlemler gerçekleştirilmiştir. Geliştirilen ontoloji ve Yahoo arama motorunun döndürdüğü sonuçlardan sadece ilk 30 satır üzerinde inceleme yapılmıştır ve sonuşlar makale tablo olarak verilmiştir. Aşağıdaki grafikte ise sonuçlara göre oluşan çizgi grafik verilmiştir. Bunun için, İngilizce tasarlanmış, ontoloji temelli uygulamaları geliştirmek için kullanılan özel bir şablon(framework) olan KAON kullanılarak ontoloji kavramları üretilmiştir. KAON, iş uygulamalarını hedefleyen açık kaynak kodlu bir ontoloji yönetim altyapı sistemidir. Sonuç olarak, arama sorgularında dönen sonuçlara göre düzenlenmiş dökümanların (web siteleri) yeniden sıralanabileceğini göstermişlerdir. Bu yöntem düzenlenmiş dokümanlarda ontoloji kavramları sıklığına dayandırmışlar ve sonuçlar arasındaki hesaplamak için kullanmışlardır.
5 Şekil 2. Ontoloji İnşaa Metodu "A smart web query method for semantic retrieval of web data" makalesinde Roger H.L. Chiang ve ark. Web'te sorgulanma ve çıkarım yapmak genellikle zor olduğundan çünkü web verisinin diğer hiçbir verinin organizasyon standardına uymadığından bahsetmişlerdir. Bu yüzden web üzerindeki arama teknolojisinin gelişiminin nispeten tam olarak gelişmemiş bir yapıda olduğunu belirtmişlerdir. Şuandaki arama motorlarının ilkel veri sorgulama özelliğine sahip olduğunu belirterek ilişkili veriyi bulmak için detaylı sözdizimsel tanımlamalara ihtiyaç olduğunu belirtmişlerdir.yazarlar bu araştırmada web verisinin semantik yolla çıkarılması için zeki bir web sorgulaması (SWQ-smart web query) metodu sunmaktadırlar. Bu metod uygun arama sorgusunu belirlemek ve formülize etmek için içerik ontolojisi olarak tanımlanan etkin semantikleri kullanmaktadır. Metod ayrıca ilişkili web sayfalarını otomatik olarak tanımlamak ve sıralamak için semantik arama filtreleri kullanmaktadır. Hiyerarşik yapıda bulunan ontolojilerin aksine, içerik ontolojisinde kavramlar ve ilişkiler esnek bir yapıda belirli bir alanda uygun olarak tanımlanmaktadır. Bir SWQ metodu önerilen metodu test etmek için geliştirilmiştir. SWQ metod ve motorunun testi ve doğruluğu için e- ticaret uygulamasına adapte edilmiştir. 
6 Şekil 3. SWQ Arama Motoru Raquel Trillo ve ark. " Using semantic techniques to access web data " başlıklı makalede, girilen farklı anlamlardaki anahtar kelimeleri kategorilendiren geleneksel arama motorları sonuçlarını önerdikleri bir dizi semantik tekniklerle gruplandırmışlardır. Yazarlar diğer önerilen metodlardan farklı olarak,web üzerinde erişebilir olan ontoloji bilgilerini kullanarak, dinamik olarak olası kategorileri tanımlamışlardır.buda kaynaklardan bağımsız gruplandırılmış sonuçlar sağlar. Yazarlar yaptıkları literatür araştırmasında, web araması için kümeleme-kategorilendirme işleminin aşağıda verilen özellikleri taşıması gerektiğini belirtmişlerdir. Alaka : Yaklaşım, Kullanıcının sorgusuyla ilgili sayfaları alakasız olanlardan ayrılmalıdır. Gözatılabilir Özetler : Sonuç sayfasından üretilen grupların bilgilendirici özetlerini sağlamalıdır Örtüşme : Bir sayfa birden fazla grupla ilişlilendirilmelidir. Hız : Web sayfalarının farklı gruplarını oluştururken süreç hızlı işlemelidir. Artımlı: Kullanılabilir bilgi oluştuğu andan itibareb süreç artımlı olarak işlemelidir. Araştırmacılar geliştirdikleri sistemi iki adımda tanıtmışlardır. Birinci adımda kullanıcının girdiği anahtar kelimenin anlamsal keşfini yapmışlardır.bu adımdaki amaç anahtar kelimenin veya kelimelerin farklı manaya gelen anlamlarını ve olas ıeş anlamlı sözcüklerini bulmaktır. Sorgudaki herbir kelime kelime anlamına göre sıralamaya tabi tutulur.,
7 İkinci adımda geleneksel arama motorlarından gelen kategori sonuçlarının isabet oranını kullanarak yeni sınıflandırma oluşturmaktır. Şekil 4. Uygulama Özeti 4. Veri Tabanı Tasarımı Oluşturulan Tablolar tb_iys: İçerik Yönetim Sistemlerinin listesinin tutulduğu Tablodur. (Tablo 1) tb_tb_modul_kayit: Uygulamamızın en önemli tablosudur. Örnek ve Test olarak seçilecek modüllere ait detaylı bilgilerin tutulduğu tablodur. tb_modul_adlari: Modül adlarini tutan tablodur. tb_modul_kategori: İlgili İYS'de bulunan kategorilerin listesini tutan tablodur. (Tablo 2) Tablo 1 İçerik Yönetim Sistemleri Veri Tabanı Tablosu Kayit_ID IYS_ID IYS_Adi 1 1 DotNetNuke 2 2 Drupal
9 Security Site navigation Spam prevention Statistics Syndication Taxonomy Theme enhancements Theme related Third-party integration User Access & Authentication User access and authentication User management Utility Views Tablo 2 İYS'lerinde bulunan modüllerin kategorilerinin tutulduğu tablodur.projede sadece e- ticaret kategorisinde bulunan modüller ele alınarak işlemler gerçekleştirilecektir. 5. Geliştirilen Uygulama Projenin amacı İYS'leri kullanıcılarına modül aramada yardım sağlayacak bir uygulamayı gerçekleştirmektir, Uygulamanın amacına yönelik, Mısır mitolojisinde yazı ve bilgi tanrısı olan "THOHT" ismi seçilmiştir. Standart arama uygulamasının geliştirilmesi aşamasında MySQL veritabanı sistemleri, PHP web programlama dili ve Apache Sunucu sistemleri kullanılmıştır. Şekil 6 da yapılan standart bir arama işlemi görülmektedir. Şekil 6. Normal Uygulama Erkan Görüntüsü İlişkisel veritabanı özellikleri kullanılarak örnek sorgulama cümlesi aşağıdaki gibidir.
10 Uygulamanın standart arama işlemi Şekil 6'da görülmektedir. Kullanıcıdan alınan anahtar kelime veri tabanı üzerinde veritabanı ilişkileri kullanılarak ilişkili aynı arayüz üzerinde kullanıcılara geri dönüş yapılmaktadır. Arama Ekranı Üzerinde XML Oluştur butonuna tıklayarak veri tabanını XML olarak oluşturabiliriz. EK1 xml.xml dosyasında oluşturulan XML dosyası bulunmaktadır Semantic Arama Uygulaması Ontoloji Tasarımı Ontoloji tasarımı için Protege programı kullanılmıştır. Protege programı ontoloji geliştirmek için en yaygın olarak kullanılan programdır. Şekil 7. Ontoloji oluşturulması için kullanılan Protege ekran görüntüsü Aşağıdaki Örnekte oluşturulan ontolojinin bir kısmı sunulmuştur. Ontoloji tamamı ise Ek2.owl ekte sunulmuştur. Şekil 8'de oluşturulan ontolojinin sınıf yapıları görülmektedir. İçerik yönetim sistemleri özelliklerine göre oluşturulan İYS üst sınıfı ve Kategoriler, Dokümantasyon, Çeviriler, Diller, Kurulum, Temanlar, Eklentiler olmak üzere 8 sınıftan oluşmaktadır. Oluşturulan sınıflar arasında tek yönlü ve çift yönlü olmak üzere çeşitli ilişkiler bulanmaktadır
11 Şekil 8. Ontoloji Sınıfları
12 Şekil 9. Temel Yapısı
13 Oluşturulan ontolojide 8 sınıf bulunmaktadır. Bu sınıflardan IYS sınıfının 9 bireyi (individual), Diller sınıfının 30 bireyi, Kategoriler sınıfının 50 bireyi, Eklentiler sınıfının 40 bireyi bulunmaktadır. dolayısıyla oluşturulan ontoloji kalabalık bir yapıya sahiptir Semantic Arama İşlemi Semantic arama işlemi oluşturulan ontoloji temel alınarak Protege programı üzerinde bulunan Oueries eklentisi kullanılmıştır. Şekil 10.a Protege semantic arama Şekil 10.a'da görüldüğü gibi Eklentiler sınıfı üzerinde açıklama alanına göre bir sorgulama işlemi yapılmıştır. Yapılan sorgulama işlemine göre açıklama ananında "ubercart" anahtar kelimesi geçen 27 sonuca ulaşılmıştır.
14 Şekil 10 Protege semantic arama (b) Şekil 10.b'de görüldüğü gibi yine eklentiler sınıfı üzerinde açıklama alanına göre çapraz bir sorgulama işlemi yapılmıştır. Yapılan sorgulama işlemine göre açıklama ananında "ubercart" ve "paypal" anahtar kelimesi geçen 1 sonuca ulaşılmıştır. 7.Sonuçlar Bu çalışmayla ontoloji tabanlı, akıllı bir arama işlemi gerçekleştirilmek amaçlanmıştır. Arama işlemi açık kaynak kodlu içerik yönetim sistemlerinin eklentileri üzerine gerçekleştirilecektir. Uygulama için bir ilişkisel veri tabanı ve "THOTH" isimli bir arayüz geliştirilmiştir. Standart ve semantik arama olmak üzere iki farklı sorgulama işlemi gerçekleştirilmiştir. Standart sorgulama işlemi ilişkisel veri tabanı özellikleri kullanılarak geliştirilmiştir. semantik sorgulama ise protege programında oluşturulan ontoloji kullanılarak yine protege programında gerçekleştirilmiştir. Kaynaklar     Ahmad Kayed, Eyas El-Qawasmeh, Zakariya Qawaqneh, Ranking web sites using domain ontology concepts
15  Roger H.L.Chiang, Cecil Eng Huang Chua, Veda C. Storey, A smart web query method for semantic retrieval of web data  Raquel Trillo, LauraPo, SergioIlarri, SoniaBergamaschi, EduardoMena, Using semantic techniques to access web data
YENİ BİLGİ MODELLEME VE PROGRAMLAMA FELSEFESİYLE SEMANTIC WEB
YENİ BİLGİ MODELLEME VE PROGRAMLAMA FELSEFESİYLE SEMANTIC WEB ANKARA ÜNİVERSİTESİ 31.03.2012 B İ LGİSAYA R Y ÜK. MÜH. BÖRTEÇİN EGE WEB 1.0 1995 2000 İnsan odaklı Web de henüz sadece belgeler var Belgelerin
Bilimsel Dergiler için Bir İçerik Yönetim Sistemi Tasarımı ve Uygulaması
Politeknik Dergisi Journal of Polytechnic Cilt:10 Sayı: 4 s.353-361, 2007 Vol: 10 No: 4 pp.353-361, 2007 Bilimsel Dergiler için Bir İçerik Yönetim Sistemi Tasarımı ve Uygulaması Nurettin DOĞAN*, Şendoğan