Semantik Web Teknolojileri



Benzer belgeler
Ontoloji Tabanlı Bir Kitap Sorgulama Sistemi Gerçekleştirimi

Semantik Bilgi Yönetimi

Anlamsal Web te SKOS Kullanılarak Bilgi Organizasyonu

BİH 605 Bilgi Teknolojisi Bahar Dönemi 2015

Ontoloji Tabanlı Türk Şarap Portalı Tasarımı

T.C. ATATÜRK ÜNİVERSİTESİ EDEBİYAT FAKÜLTESİ BİLGİ VE BELGE YÖNETİMİ BÖLÜMÜ SEMANTİK WEB HAZIRLAYAN: LEYLA BOLAT SEMİNER

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ

Sınıf Diyagramları Amaç: Sınıf Diyagramları Nasıl Çizilir?

Bütün XML dökümanlarının bir kök elemanı olmalıdır. Diğer bütün elemanlar kök elemanı tarafından kapsanır.

FIRAT ÜNİVERSİTESİ BİLGİSAYAR MÜH.

BBY 163: Bilgi Yönetimi Kavramları

Web Tasarımının Temelleri

ANLAMSAL WEB (WEB 3.0) VE ONTOLOJİLERİNE GENEL BİR BAKIŞ

DİZİN. Not: Koyu harfle yazılan sayfalar ilgili terimin yoğun olarak geçtiği sayfaları göstermektedir.

Bilişim Sistemleri. Modelleme, Analiz ve Tasarım. Yrd. Doç. Dr. Alper GÖKSU

PROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay.

Doğu Akdeniz Üniversitesi Bilgisayar ve Teknoloji Yüksek Okulu Bilgi teknolojileri ve Programcılığı Bölümü DERS 1 - BİLGİSAYAR VE ÇEVRE ÜNİTELERİ

Veritabanı Dersi. Teoriden Pratiğe. Çağıltay N.E., Tokdemir G. Veritabanı Sistemleri Dersi -Bölüm XXV: Web'den Erişim Çağıltay, N., Tokdemir, G.

SAĞLIK BİLGİ SİSTEMLERİNİN TARİHSEL GELİŞİMİ

... ROBOTİK VE KODLAMA EĞİTİMİ ÇERÇEVESİNDE ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ DERSİ ÜNİTELENDİRİLMİŞ YILLIK DERS PLANI

MESLEKİ TERMİNOLOJİ I 1. HAFTA YAZILIM MÜH. TEMEL KAVRAMLAR

Öğr. Gör. Serkan AKSU 1

C PROGRAMLAMA YRD.DOÇ.DR. BUKET DOĞAN PROGRAM - ALGORİTMA AKIŞ ŞEMASI

TEMEL BĐLGĐ TEKNOLOJĐLERĐ KULLANIMI BÜLENT TURAN

EKLER EK 12UY0106-5/A4-1:

Qlik Sense için sistem gereksinimleri. Qlik Sense 3.2 Telif Hakkı QlikTech International AB. Tüm hakları saklıdır.

Semantik Web Bulutunun (Linked Data Cloud) Oluşumu ve Gelişim Durumu

Bibliyografik Evrenin Gelişimi ve Kütüphanelerde Bağlı Veri Yaklaşımları

TEKNOLOJĠ PLANLAMASI. Başkent Üniversitesi

Akıllı Ortamlarda Sensör Kontrolüne Etmen Tabanlı Bir Yaklaşım: Bir Jadex Uygulaması

Bilgisayarda Programlama. Temel Kavramlar

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

Veri Tabanı Yönetim Sistemleri Bölüm - 3

Bilgisayar Mühendisliği. Bilgisayar Mühendisliğine Giriş 1

KALİTE KONTROL GRUP MİKTAR ARALIĞI DESTEĞİ

VERİ MADENCİLİĞİ (Web Madenciliği)

Yazılım Yeniden Yapılamaya Yönelik Bir Kurumsal Mimari: Model Güdümlü ve Ontoloji Tabanlı Bir Yaklaşım

Bilişim Teknolojilerine Giriş

Tarih Saat Modül Adı Öğretim Üyesi. 01/05/2018 Salı 3 Bilgisayar Bilimlerine Giriş Doç. Dr. Hacer Karacan

C# nedir,.net Framework nedir?

Java Temel Özellikleri

Üst Düzey Programlama

Yaz.Müh.Ders Notları #6 1

Yazılım Mimari Tasarımından Yazılım Geliştirme Çatısının Üretilmesinde Model Güdümlü Bir Yaklaşım

Örnek bir kullanım ve bilgisayar ağlarını oluşturan bileşenlerin özeti

INTERNET VE INTERNET TARAYICISI

Laboratuar Notları #5

ASP.NET TEMELLERİ. Öğr. Gör. Emine TUNÇEL Kırklareli Üniversitesi Pınarhisar Meslek Yüksekokulu

Qlik Sense için sistem gereksinimleri. Qlik Sense June 2017 Copyright QlikTech International AB. Tüm hakları saklıdır.

BİLGİSAYAR KULLANMA KURSU

T.C. ERCİYES ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ EĞİTİM ÖĞRETİM YILI DERS KATALOĞU

BEDEN EĞİTİMİ I: Haftalık ders 1 saattir (T-0 ) (U-l) (K-0).

DGridSim Gerçek Zamanlı Veri Grid Simülatörü. Yazılım Tasarımı Dokümanı v Mustafa Atanak Sefai Tandoğan Doç. Dr.

T E M E L K AV R A M L A R. Öğr.Gör. Günay TEMÜR / Teknoloji F. / Bilgisayar Müh.

Bilgisayar Mimarisi ve Organizasyonu Giriş

Bilişim Teknolojileri Temelleri 2011

Sunum İçeriği. Programlamaya Giriş

Bilişim Sistemleri. Modelleme, Analiz ve Tasarım. Yrd. Doç. Dr. Alper GÖKSU

Dağıtık Sistemler CS5001

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

OMNET Ağ Benzetim Yazılımı (Network Simulation Framework) BİL 372 Bilgisayar Ağları. GYTE - Bilgisayar Mühendisliği Bölümü

Internet: Tarihçe ve Kavramlar

Dersin Konusu ve Amaçları: Ders P lanı: Bölüm 1: Bilgi Teknolojilerinde Temel Kavramlar

Ders Tanıtım Sunumu. Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı. 26 Şub Öğr. Gör.

TEMEL BİLGİ TEKNOLOJİSİ KULLANIMI. Enformatik Bölümü

Model Güdümlü Geliştirme ile Gömülü Kaynakların Yönetimi

Üst Düzey Programlama

VERİ TABANI YÖNETİMİ. Yrd.Doç.Dr. Füsun BALIK ŞANLI YTÜ

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

Uygulamalı Yapay Zeka. Dr. Uğur YÜZGEÇ Ders 2: Prolog Giriş

HSancak Nesne Tabanlı Programlama I Ders Notları

Öğr.Gör. Gökhan TURAN Gölhisar Meslek Yüksekokulu

OSPF PROTOKOLÜNÜ KULLANAN ROUTER LARIN MALİYET BİLGİSİNİN BULANIK MANTIKLA BELİRLENMESİ

COĞRAFİ BİLGİ SİSTEMLERİ Building Geodatabase Eğitimi

AirPrint Kılavuzu. Sürüm 0 TUR

YENİ BİLGİ MODELLEME VE PROGRAMLAMA FELSEFESİYLE SEMANTIC WEB

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu

HTML (Hyper Text Markup Language)

7. Çerçeveler. Bu bölümü bitirdiğinizde,

UHeM ve Bulut Bilişim

Veritabanı Yönetim Sistemleri (Veritabanı Kavramı) Veri Modelleri

MOBIL UYGULAMA GELIŞTIRME

COĞRAFİ BİLGİ SİSTEMLERİ İLERİ SEVİYE EĞİTİMLERİ ARCGIS SCHEMATİCS EĞİTİMİ

Bağlı Açık Üniversite Verisi. Prof. Dr. Oğuz Dikenelli


Anahtar Kelimeler: Yazılım Etmenleri, Çoklu Etmen Sistemler, Yazılım Mimarisi.

ICATT ÇEVİRİ UYGULAMASI SİSTEM MİMARİSİ VE VERİTABANI TASARIMI

MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş

Uygulama İş Akış Kaydında Koşul Tanımlamaları

Veri (Data) Enformasyon (Information) Bilgi (Knowledge) Bilgelik (Wisdom) Sistem ve Bilgi Sistemi

Özyineleme (Recursion)

WEB ARAÇLARI VE UZAKTAN EĞİTİM CEIT357-4.HAFTA

VERİ TABANI YÖNETİM SİSTEMLERİ

Dünyanın bilgisine açılan pencere... Ya da sadece yeni çağın eğlencesi...

İSMET AKTAR ANADOLU TEKNİK LİSESİ BİLİŞİM TEKNOLOJİLERİ ALANI WEB PROGRAMCILIĞI DALI

COĞRAFİ BİLGİ SİSTEMLERİ İLERİ SEVİYE EĞİTİMLERİ BUILDING GEODATABASE EĞİTİMİ

Moodle-IST Kullanım Klavuzu

Veritabanı Yönetim Sistemleri (Veritabanı Kavramı) İş Kuralları ve Veri Modelleri

Transkript:

Çanakkale Onsekiz Mart Üniversitesi, Çanakkale iturkyilmaz@comu.edu.tr Akademik Bilişim 2008 Çanakkale Onsekiz Mart Üniversitesi, Çanakkale, 30 Ocak - 01 Şubat 2008 Semantik Web, yapay zekâ olmamakla beraber yapay zekâ teknolojileri kullanabilen bir teknolojidir. Bu teknoloji makinenin anlayabileceği akıllı veriler ortaya çıkarır. Makinenin anlayabileceği akıllı veri kavramı, sadece makinenin mevcut iyi tanımlanmış veriler üzerinde iyi tanımlanmış işlemler yaparak iyi tanımlanmış bir problemi çözebilme yeteneğini ifade eder. Makinelerden insanların dilini anlamalarını istemek yerine, insanlardan bilgiyi daha düzenli tanımlamak için daha fazla çaba göstermelerini istemek akıllı verinin daha kolay oluşturulmasını sağlar (Maedche ve Staab, 2001). Semantik Web teknolojilerini oluşturan önemli öğeler Şekil 2 8 de şematik olarak ifade edilmektedir. Bu teknolojileri barındıran sisteme Semantik Web Teknolojileri denir. Semantik Web teknolojileri günümüzde uygulamaya konulan WEB 2.0 denilen yapıyı oluşturmaktadır. XOL SHOE OML XML OIL DAML + OIL RDF (S) OWL Şekil 2 8 Semantik Web teknolojisi kullanılarak arama yapan sistem Şekil 2 8 Semantik Web teknolojilerini hiyerarşisini göstermektedir. Bu teknolojinin tüm basamakları birbirleriyle bağlantılıdır. XML hariç hepsinin kendi içinde sınıf modeli mevcuttur. Bu teknolojilerden kısaca bahsetmek gerekirse; RDF yani Kaynak Açıklama Altyapısı (Resource Description Framework) Semantik Web için temel veri modelidir. Bu model, farklı değişim formatları olan RDF/ XML, N-Triples, N3 ve Turtle için temel teşkil etmektedir. Semantik Web in kalbini ise Ontoloji ler oluşturmaktadır. Bu yüzden de OWL yani Web Ontoloji Dili, tanımlamalar ve veriler arasındaki ilişkileri kurabilmek için kullanılmaktadır (Çankaya, 2007). Semantik Web in de tıpkı bilim gibi bir gelişim süreci sonunda oluşacağı gözükmektedir. Yani, en başta mükemmel ve tam olarak işleyen bir sistem yapmak yerine temel işlevleri gerçekleştiren basit ve sağlam bir sistemle başlayarak daha sonra bu sistemi daha karmaşık bir yapıya kavuşturmak hedeflenmiştir. Öncelikle bilginin gösterimi için bir biçim olan HTML üretilmiş ve bu bilginin transferi için http protokolü yazılmıştır. Daha sonra bunların üstüne bu bilgiye ait yapısal bilgisini ve anlamını ekleyebilmek için XML ve RDF dilleri eklenmiştir (Berners-Lee ve diğ, 2001). Son aşamada ontoloji tanımlamalarını oluşturan, işaretleme dilleri (OIL, DAML+OIL, OWL) verilmektedir. Her aşamada baştaki çekirdek sisteme yeni özellikler ekleyerek sistem genişletilmektedir. Bununla beraber önceden eklenen her sistemde tıpkı son eklenen sistem gibi gelişmesine devam edecektir. Örneğin şu anda OWL Dili ile ilgili çalışmalar sürerken, RDF dili ile de ilgili çalışmalar sürmektedir. Hatta OWL Candidate Recommendation aşamasına gelmişken; RDF hala Working Draft aşamasındadır. Yani gelişme sürecinde daha geri aşamadadır. Sonuç olarak, Şekil 2 9 görüldüğü gibi Semantik Web in hayata geçirilebilmesi için yaklaşık 20 yıllık bir sürenin geçmesi gerektiği tahmin edilmektedir. 325

Şekil 2 9 Semantik web in yıllar içinde bünyesindeki bileşenlerin çizelgesi. Ontoloji Nedir? Ontolojil er Semantik Web in gerçekleştirilmesinde kullanılacak anahtar teknolojidir. Ontoloji terimi felsefede varlık bilimi olarak tanımlanmaktadır. Ontoloji yirminci yüzyılın sonlarında yapay zekâ alanında yoğun bir şekilde kullanılmıştır. Ontoloji belli bir alandaki bilgilerin paylaşımını ve yeniden kullanımını sağlayan kavramlaştırmaların biçimsel ve açık tanımlanması olarak tanımlanmış ve kullanılmıştır. Son zamanlarda ontolojilerin kullanımı zeki sistemler, elektronik ticaret, doğal dil işleme ve bilgi yönetimi konularında yaygınlaşmaktadır. Ontolojinin bilgisayar bilimindeki en çok kabul gören Gruber e (1993) ait olan tanımı; kavramsallaştırmanın açıkça belirtilmesidir şeklinde ifade edilmesidir. Kavramsallaştırma, belli bir tasarım aşamasında soyut model oluşturma anlamına gelir. Maedche ve Staab (2001) e göre bu modelin, tasarım aşamasında bilinen tüm bilgilerinin geride hiç bir soru bırakmayacak şekilde açıkça tanımlanması gerekir. Maedche ve Staab (2001) de verilen ontolojinin başka bir tanımı da ontolojinin neler içermesi gerektiğini ve neleri içeren modellerin ontoloji sayılması gerektiğini açıklar. Bu tanımın diğerlerinden farkı; burada sözü edilen ontolojilerin web ontolojileri olmasıdır. Her terimin tanımlayıcısı bulunur ve ontolojide bulunan terimler sonlu sayıdadır. Bunlar; terimlerin anlamlarını, terimler arasındaki ilişkileri, terimler arasındaki eşanlamlılıkları ve sıradüzen ilişkilerini içerir. Sonuç olarak, bir kavram kümesinin ontolojisinin olabilmesi için en azından aşağıdaki niteliklere sahip olması gerekir: Terim dağarcığının sonlu ve genişletilebilir olması gerekir, Sınıflar ve terimler arasındaki ilişkilerin etmenler tarafından tek bir şekilde anlaşılır olması, OWL nin sınıf yapısını kullanması. Üç temel niteliğin yanında ontolojilerin anlatım gücünü arttırabilmek ve nitelikli sorgulama sonuçları almak için, Örnek içerme, Sınıf niteliklere sahip olma, Değer karşılaştırma kıstasları, Mantıksal karşılaştırma kıstasları, özellikleri de yukarıda verilen ontoloji olabilme niteliklerine eklenebilir. Bu mantıksal yapıların da dâhil edilmesiyle; ontolojiler, karmaşık bilgileri modelleyebilen ve bu bilgiler üzerinde sonuç üretebilen bir seviyeye gelirler. Web Ontoloji Dili Web Ontology Language (OWL), ontolojileri tanımlamak ve çeşitlemek için kullanılan bir dildir (Wikipedia, 2007). OWL, bilginin içeriğini sadece insanlara gösteren değil, bunun yanında bilgisayarlar tarafından işlenebilmek üzere tasarlanmıştır. OWL, XML, RDF ve RDF Schema (RDF-S) tarafından desteklenen web içeriğinin bilgisayarlar tarafından daha iyi yorumlanabilmesini sağlamayı hedef almaktadır. OWL, OIL ve DAML+OIL gibi dilleri temel alır ve şu anda W3C kurumu tarafından tavsiye edilen bir dildir. OWL, DAML+OIL 326

Akademik Bilişim 2008 web ontoloji dilinin araştırma tabanlı bir sürümüdür (Wikipedia, 2007). OWL üç alt dile sahiptir: Şekil 2-11 de görüldüğü gibi OWL Lite, OWL DL ve OWL Full. Bu üç dil, kullanıcılar tarafından kullanılmak üzere özel olarak tasarlanmışlardır (Owl, 2007). OWL dilinin alt dilleri birbirlerini kapsayacak biçimde tasarlan mışlardır. Şekil 2 11 de bu yapı gösterilmektedir. Şekil 2 10 OWL dillerinin şematik yapısı OWL dilinin RDF olarak şematik kullanımına bir örnek Şekil 2 10 de verilmektedir. Terimler arasındaki bağlantı RDF söz dizimi ile yapılmaktadır. Söz dizim kuralları bilgiyi anlamlaştırmak için tasarlanmıştır. Bunu şu şekilde bir örnek ile açıklayabiliriz. Bir kişi ben Apple kullanıyorum cümlesinde Apple kelimesini RDF olarak tanımlaması gerekirse Apple kelimesini; üreticisini, tipini, modelini, işletim sistemini tanımladığında Apple kelimesine anlam yüklemiş olur. Bilgisayar Apple kelimesini okuduğunda bunun bir tanımlanmış bir bilgisayar olduğunu anlayacaktır. Bu tanımlamayı ontoloji dili ile Şekil 2 10 gösterilmektedir. OWL ile tanımlanan bilgi tek bir amaç için düşünülemez. Bu bilgi başka ontolojiler tarafından da tanımlanabilir veya genişletilebilir. OWL belgelerinin yanlış yorumlanmaması ve bilgisayarlar tarafından işlenebilmesi için düzgün bir söz dizimine ihtiyaç vardır. OWL belgelerinde kullanılacak terminoloji RDF dosyalarının genişletilmiş halidir (Owl, 2007). Şekil 2 11 OWL Dilini oluşturan dil yapısı OWL Full: RDF ve RDF(S) bütün bileşenlerini kullanır. RDF in sağladığı tüm kolaylıkları sağlar. Ancak hesaplanabilirliği desteklemez. Mesela RDF de tanımlanan sınıf bir topluluğu ifade edebildiği gibi bir bireyi tanımlayan sınıf da olabilir. OWL Full daha çok tanımlama bilgisinin hesaplama bilgisinden önemli olduğu durumlarda kullanılabilir. OWL Full de bazı durumlarda otomatik mantık yürütmeler imkânsız olabilir. OWL Full dili RDF ile tam olarak uyumludur. RDF dokümanlarının yapısı aynı zamanda OWL Full dokümanlarıdır. Dezavantajlarından biri OWL Full yapıları tam kararlı değildir. Bundan dolayı kavramlar arasında tam ve etkili bir mantık yürütemez. Örneğin, Ahmet Bey bir bilgisayar malzemesi satan tekno marketten yazıcı almış olsun. Mantıksal olarak Ahmet beyin gelecekte yazıcısı için kartuş, toner veya ribon gibi yazıcı sarf malzemelerinden birini satın alabilecek potansiyel müşteri olabileceği sonucu çıkarılabilir. Satın almış olduğu yazıcı türü belli olmadığından yazıcısı için kullanacağı sarf malzeme çok çeşitli olabilmektedir. Bu şekilde oluşturulan mantıksal ifadede ilgi bağının zayıflığı sonucunda firmanın hangi sarf malzemeye yatırım yapması kararını verebilmesi için karşısına birden çok seçenek çıkmaktadır. Sonuç olarak bu tür mantıksal çıkarımlar tek bir sonuca ulaşmada etkin bir mantık oluşturamamaktadır. 327

OWL DL: OWL Full un bir alt dilidir. OWL ve RDF oluşturan yapılarına kısıtlar ekleyerek kullanılır. Bu kısıtlar tanımlama mantığını bağlantısını sağlar. OWL DL, terimlerin anlamlarını tanımlamada kolaylık sağlar. Otomatik hesaplamaları mümkün kılararak akıl yürütmeyi kolaylaştır. Örneğin Ahmet Bey in teknoloji marketinden bir adet lazer yazıcı aldığını düşünelim. Mantıksal yürütme yaparsak; eğer Ahmet Bey lazer yazıcı almışsa çok kuvvetli bir ihtimalle yazıcısı için gelecekte toner alacaktır. Mantıksal olarak lazer yazıcıya sahip bir kişinin lazer yazıcısı için toner alması gerektiği çıkarımına ulaşılarak etkin bir mantık yürütülmektedir. OWL Lite: OWL dilinin tek bir kısmını kullanır. OWL DL nin kısıtlarını kullanır. OWL Lite sadece üst sınıf tanımlanabilir. Üst sınıflarında karar yapıları kullanılır. Sınıflar arasında eşitlik ve alt sınıf ilişkileri vardır. OWL Lite mantıksal sonuçlarını değerlendirerek iki değer gönderir. Bu değerler 0 ve 1 dir. Özellikle durum belirteçlerinde; eğer bir çıkarım varsa 1 kabul edilir. Diğer durumlar 0 kabul edilir. Örneğin bir bilgisayarın sahip olduğu işlemci, ana kart, ram belleğine bakıldığında sunucu özelliği varsa 1 değeri gönderir, diğer durumlarda 0 değeri gönderilir. Ontoloji Nasıl Oluşturulur? Ontoloji oluşturmak için öncelikle bir alan belirlenmelidir. Bu alan üzerinde sonlu sayıda terim olmalıdır. Bu terimlerin sınıfları ve alt sınıfları belirlenmelidir. Sınıfların bireyleri tanımlanmalıdır. Sınıf tanımlamaları bir referans sınıfta olabilir. Ancak alt sınıflar referans sınıf olamaz. Alt sınıf tanımlamaları genelde daha özel bireyleri tanımlamak için kullanılır. Örneğin bilişim ontolojisi oluştururken sınıf olarak yazılım terimlerini alt sınıf olarak nesne yönelimli programlama dilleri terimlerini (nesne, sınıf, fonksiyon) yazabiliriz. Şekil 2 12 Sınıf yapısının gösterimi Ontoloji oluştururken çok önemli bir tanımlama da sınıfların özelliklerini belirtmekten geçer. Her sınıfın kendine özgü belirli bir özelliği vardır. Sınıflara özellik ataması yapılırken veri tipleri ve nesne özellikleri ayıca belirtilebilir. Şekil 2 12 görüldüğü gibi özellik belirtilirken, terimin üst sınıfı ve bağlantı adresi belirlenmektedir. Bu üst sınıfa domain denir. Bağlantı adresine ise range denir. Ayrıca domain kavramı programlama tipleri arasındaki turtalılığı kontrol etmek için kullanılır. Range kavramı ise terimin bağlantı noktalarını belirler. Aynı zamanda domain kavramı sınıflardan bilgi çıkarımı içinde kullanılabilir. Her sınıfın bir domain alanı vardır. Bu domain bir URI adresi olabilir. Ontoloji oluştururken semantik bağlar sınıflara yansıtılır. Bu yansıtma aidiyet eylemini gerçekleştirir. Birey sınıfa aidiyetlerini ancak bir eylem ile belirtir. Bu eylemler sahiplik eki iledir. Basit Anlamda Örnek Bir Ontoloji Şeması ve Ontoloji Dili Oluşturulması: Şimdiye kadar bir ontoloji oluşturmayı teorik olarak açıkladık. Uygulamalı olarak bir ontoloji nasıl oluşturulabileceğini göstermeye çalışacağız. Örnek ontoloji oluşturacağımız alan bilişim terimleridir. Alan belirlendikten sonra bilişim terimlerinin sınıfları ve bu sınıflara ait terimleri ilgi alanlarına göre gruplayalım. Biz sınıf olarak: 328

Akademik Bilişim 2008 Network Terimleri (DNS, IP, RJ45, ) Yazılım Terimleri (Nesne, Fonksiyon, Koşul, ) Donanın Terimleri (Ağ Kartı, İşlemci, Bellek, ) olmak üzere üç tane sınıf tanımlayalım. Bu tanımlamaları şematik olarak belirledikten sonra ontoloji oluşturma araçlarını kullanmaya sıra gelir. Ontoloji oluşturma aracı olarak Protégé 3.3.1 sürümü kullanılabilir. Protégé programı, ücretsiz olarak dağıtılmaktadır. Terimlerin sınıfları belirledikten sonra; eğer gerekiyorsa bu sınıfların alt sınıflarını belirlememiz gerekir. Örneğin Donanım Terimlerinin alt sınıflarını MİB terimleri (Ön Bellek, CPU, RAM Bellek, ) Bellek Terimleri (Statik Bellek, Dinamik Bellek, Swap Bellek, ) I/O terimleri (Yazıcı, Tarayıcı, Monitör, ) olmak üzere alt sınıflara ayırabiliriz. Alt sınıflar tanımlandıktan sonra terimlerin özellikleri ve ilişkileri belirlenir. Daha sonra bu ilişkilerin eylemleri tanımlanır. Örneğin; İşlemci bellek kullanır. Ekran kartının belleği vardır. C++ bellek kullanır. Oyun yazılımları dinamik belleği ve ekran kartının belleğini kullanır cümlelerinin terim olarak bellek terimi üzerinde bağlantılarını yapabiliriz. Tanımlamalar ve ilişkiler belirlendikten sonra ontoloji dili kullanılarak ontoloji oluşturulmaya başlanır. Şekil 2 13 te görüldüğü gibi sınıflar ve alt sınıflar belirlenmiştir. Alt sınıflara ait terimlerin tipleri ve bağlantıları kod olarak verilmiştir. Terimlerin bağlantıları kod içerinde içinde URI şeklinde yazılmaktadır. Bağlantı şeklini örnek koda bakarak inceleyebiliriz (Kod:2.1). Şekil 2 13 Sınıflar ve alt sınıflar oluşturulması Kod :2-1 <?xml version= 1.0?> <rdf:rdf xml:base= http://ww.owlontologies.com/unnamed. owl xmlns= http://www. owl-ontologies.com/unnamed. owl# xmlns:owl= http:// www.w3.org/2002/07/owl# xmlns:rdf= http://www. w3.org/1999/02/22-rdf-syntaxns# xmlns:rdfs= http://www. w3.org/2000/01/rdf-schema# xmlns:xsd= http:// www.w3.org/2001/xmlschema# > <owl:ontology rdf:about= /> rdf:id= DonanimTerimleri /> rdf:id= bellekterimleri > <rdfs:subclassof rdf:resource = #DonanimTerimleri /> </owl:class> rdf:id= NetworkTerimleri /> rdf:id= veritabaniterimleri > <rdfs:subclassof> rdf:id= YazilimTerimleri /> </rdfs:subclassof> </owl:class> rdf:id= algoritmaterimleri > <rdfs:subclassof rdf:resource= #Yazilim Terimleri /> </owl:class> 1 2 329

<webterimleri rdf:id= ipdns /> <webterimleri rdf:id= ipipx-spx /> rdf:id= join /> rdf:id= innerjoin /> rdf:id= function /> <rdf:description rdf:id= bilisimterimleri_ Instance_6 > <rdf:type>cls(:instance- ANNOTATION, FrameID(0:1020 0))</rdf:type> <programlamaterimleri rdf:id= java /> rdf:id= leftjoin /> rdf:id= update /> <algoritmaterimleri rdf:id= while /> <programlamaterimleri rdf:id= c /> <programlamaterimleri rdf:id= owl /> </rdf:rdf> Kod:2.1 i incelediğimizde 1. parantez XML Name Space tanımlamalarının yapıldığı yer, 2. parentez Sınıfların tanımlandığı yer, 3. parantez alt sınıfların tanımlandığı yer. 4. parantez bağlantıların tanımlandığı yer olarak incelenebilir. Sonuç Ontolojiler kavramsal olarak algoritma mantığı ile çalışmaktadır. Algoritmanın yapısından farklı olarak nesneler arasındaki bağlantı bir eylem ile belirlenmektedir. Bu eylemler ontolojide terimlerin birbirlerini nitelemesi şeklindedir. Ayrıca eylemi yapan cümle; özne, nesne ve yüklem şeklinde sıralanmaktadır. Örneğin, kediler balık sever. Yaşlı insanların genelde bir kedisi vardır. Öyleyse yaşlı insanlar, kedilerine balık alır. 3 4 Günümüzde ontoloji oluşturma işi genelde bilgisayar yazılımcıları tarafından yapılmaktadır. Ontoloji oluşturulması yapılacak işlerin tanımlama ve sonuç alma süreçlerini kısaltmaktadır. İleride ontoloji kullanımının yaygınlaşmasıyla kurumların yapısal dönüşümlerinde, görev tanımlamalarında ve iş paylaşımlarında kurumların karar verme mekanizmaları daha hızlı çalışacağı beklenmektedir. Cimiano (2006) ya göre günümüzde en popüler ontolojiler WordNet Ontolojisi, Wiki Ontolojisi, Eclips Ontolojisi, Medical Ontoloji, Gen Ontolojisi sayılabilir. Bu ontolojilerin bir ortak özelliği; standart olarak kabul görmeleri ve açık kaynak kod prensiplerine uygun olarak dağıtılmalarıdır. Kaynaklar Akyokuş S., (2003). Bilişim Kurultayı. (15 Mart 2007), http:// http://www.akyokus. com/presentations/ Berners-Lee, T., Hendler, J. and Lassila O. 2001. The Semantic Web: A new form of Web content that is meaningful to computers will unleash a revolution of new possibilities. Scientific American, 284 (5): 34-43. Cardoso, J. and A. Sheth. 2003. Semantic e- Workflow Composition. Journal of Intelligent Information Systems 21(3): 191-225. Cimiano, P., 2006. Ontology Learning and Population from Text, Algorithms, Evaluation and Applications. Springer Press Inc., Philipp. 347 p. Çankaya, N. (1 Mart 2007). Semantik Web 3.0. Temmuz 2007, http://www.nuricankaya. com/ 330

Akademik Bilişim 2008 Davies, J., Fensel, D., Harmelen, F. 2003. Towards The Semantic Web. John Wiley&Sons, Canada. P: 10-31. Gruber, Tom R. 1993. A translation approach to portable ontologies. Knowledge Acquisition, 5(2):199-220. Hammond, B., A. Sheth, 2002. Semantic Enhancement Engine: A Modular Document Enhancement Platform for Semantic Applications over Heterogeneous Content. Real World Semantic Web Applications. los Press: p:29-49. Kaon, 2001 KAON is an open-source ontology management infrastructure targeted for business applications, March 2007, http:// kaon.semanticweb.org/ Gürel O. ve Göksu O. 1964, Kara Kuvvetleri Komutanlığı tarafından Elektronik Hesap Merkezi Yayınları: EHMY-2, Ankara, (185.) Kim, W. and J. Seo. 1991. Classifying schematic and data heterogeinity in multidatabase systems. IEEE Computer 24(12): 12-18. Klein, M. and A. Bernstein (2001). Searching for Services on the Semantic Web Using Process Ontologies. International Semantic Web Working Symposium (SWWS), Stanford University, California, USA. Maedche, A. and Staab, S. 2001. Ontology Learning for the Semantic Web. IEEE Intelligent Systems, 16 (2): 72 79. Maedche, A., Staab, S. 2000. Semi-automatic Engineering of Ontologies from Text. In: Proceedings of the 12th International Conference on Software Engineering and Knowledge Engineering. Owl (2007). OWL Web Ontology Language Reference, Retrived 2007, Recommendation, World Wide Web Consortium, http://www. w3.org/tr/owl-ref/. 2004. Protégé, 2007, Protégé is a free, open source ontology editor and knowledge-base Framework, Retrived 2007, http://protege.stanford.edu/. Smith, B. and Welty, C. 2001. Ontology: Towards a New Synthesis, Proc. Formal Ontology in Information Systems (FOIS 2001). ACM Press, New York. 3 9. W3C, (2007). The World Wide Web Consortium. (Mart 2007). http://www.w3.org/. Wikipedia, (2003). Açık kaynak kodlu ansiklopedik sözlük. (Eylül 2007), http://tr.wikipedia. org. 331