• Sonuç bulunamadı

4. ANLAMBİLİMSEL ÖRÜN TEKNOLOJİLERİ

4.3. Ontoloji Dilleri

Anlambilimsel örün’nün temelini ontolojiler oluşturur. Ontoloji kurulumu için ontoloji dilleri kullanılır. Farklı ontoloji dilleri ile bir ilgi alanına ait ontoloji kurulabilir. Şekil 4.1’de ontoloji dillerinin gösterim şekillerine göre sınıflandırılması gösterilmektedir [91].

Şekil 4.1: Ontoloji dilleri.

Bu dillerden Rdf’ninde içinde bulunduğu Örün ontoloji dilleri öne çıkmaktadır. örün ontoloji dillerinin genelleştirilmesi hızla yaygınlaşmaktadır. Anlambilimsel örün’nün önemli bir kısmını teşkil eden örün ontoloji dilleri katmanlı, hiyerarşik bir yapıya sahiptir. Bu yapının temelini Xml oluşturmaktadır. Örün ontoloji dillerinin hepsi

nesneye yönelik model tabanlıdır. Nesneye yönelik modelde yer alan kavramlar ontoloji kurulumunda da aynı isimlerle veya benzer isimlerle kullanılmaktadır. Nesneye yönelik modelde yer alan terimler ile ontoloji dillerinde kullanılan terimler aşağıda açıklamalarıyla sunulmaktadır:

• Sınıf (class): İlgi alanında bir kavramın soyut biçimine verilen isimdir. Sınıf bağımsız bir program gibidir. Diğer programlarla birlikte daha büyük bir uygulama geliştirmek için kullanılabilir. Sınıf, kendine ait özellikler ve metodlardan oluşmaktadır.

• Özellik (attribute): Sınıfların ve onların nesnelerinin özelliklerine verilen isimdir. Özellik bir sınıfın parçası olan basit veri elemanıdır. Özellik bir değişken veya sabit olabilir.

• Metot (method): Bir sınıfın parçası olan bağımsız kod parçasıdır. Doğrusal programlamada metodun adı prosedür veya fonksiyondur.

•Nesne (object): Bir sınıf şablon gibi davranarak kendinden yeni parçaların üretilmesini sağlayabilir. Bir sınıfın somutlaşan örneği nesne olarak adlandırılır. Yukarıda açıklanan nesneye yönelik model terimleri, örün ontoloji dillerinde de benzer karşılıklara sahiptir [91]:

• Somut örnek (Instance/individual): Nesneye yönelik modelde, nesneye karşılık gelmektedir. Bahsedilen ilgi alanının elemanlarını temsil eder.

• Sınıf veya kavram (class/concept): Nesneye yönelik modelde sınıfın karşılığıdır. Sınıflar ilgi alanındaki tipleri göstermektedir. Belli karakteristikleri olan nesneler kümesini temsil eder.

• Özellik veya rol (property/role): Nesneye yönelik modeldeki özellikleri temsil eder. İlgi alanındaki kavramlar arasındaki ilişkiler özelliklerle temsil edilir.

4.3.1. Xml ve Rdf

Xml, öründe içerik oluşturmayı kolaylaştırıcı bir dildir. Aslında Xml bir ontoloji dili değildir. Xml, yapılandırılmış dokümanları öründe yayınlamak için kullanılan esnek bir dildir. Xml, makine tarafından okunabilir bir dildir. Xml yapılandırılmış dokümanlar için yüzeysel sözdizim kuralları sağlar. Fakat dökümanın anlamı ile ilgili anlamsal kısıt yüklemez. Xml Şema, Xml dokümanlarının yapı ve içerik elemanlarını düzenlemeye yarayan bir dildir. Mevcut örün ontoloji dilleri Xml ve Xml Şema üzerine kurulmuştur. Temel örün ontoloji dili ise Xml temel alınarak geliştirilen “Kaynak Tanımlama Çatısı (Rdf)”dir.

Şekil 4.2: Örün ontoloji dilleri [84].

Şekil 4.2’de, örün ontoloji dillerinin katmanlı yapısı görülmektedir [84]. Bu yapıya göre; Rdf, nesneleri (kaynaklar) ve bu nesnelerin nasıl ilişkili olduğunu işaretleyen bir veri modelidir. Rdf temelli model, Xml sözdiziminde ifade edilebilir. Rdf, ön tanım gösterimi için, grafiksel şekilciliğe sahip bir örün ontoloji dilidir. Rdf Şema (Rdfs), Rdf kaynaklarının özelliklerini ve sınıflarını ifade etmeye yarayan sözcükler bütünü ve bunların genelleştirme hiyerarşileri için bir anlambiliminden oluşur. RDFS, Rdf’nin şema sözlüğü ile genişletilmiş formudur. Rdfs’de, “class, property, type, subclassof, subproprtyof, range, domain” terimleriyle Rdf’nin tanımlama aralığı arttırılmıştır. RDFS ile bir ilgi alanında bulunan kavramlar ve kaynaklar detaylı olarak tanımlanamamaktadır. Bu sebeple W3C, daha güçlü bir dil olan ve RDFS’nin eksikliklerinin “Description Logic (DL)” ile giderildiği Owl dilini geliştirmiştir. İlk defa Temmuz 2002’de kullanılmaya başlanan Owl dili için gelişim süreci devam etmektedir [92]. Owl, özellikleri ve sınıfları betimlemek için daha fazla sözcük grubu getirir: Sınıflar arası ilişkiler, önemlilik derecesini belirten nicelikler,

eşitlik, özelliklerin daha iyi sınıflandırılması, özelliklerin karakteristikleri ve liste sınıfları bu sözcük gruplarına örnektir.

4.3.2. Owl

Bu tez çalışmasında, önerilen sistemin ilgi alanı modeli ve kullanıcı modeli Owl dili kullanılarak oluşturulan ontolojilerle gerçekleştirilmiştir. Bu bölümde, kısaca Owl dili ve Owl diline temel oluşturan DL yapısından bahsedilecektir.

DL, mantık tabanlı bir bilgi gösterim yapısıdır. Anlamsal ağlardan türetilmiştir. Anlamsal yapısı “First Order Logic (FOL)”dan farklıdır. Önermeye dayalı model ve dinamik mantık ile yakından ilişkilidir [93].

Şekil 4.3: DL mimarisi.

Şekil 4.3’de DL mimarisi gösterilmektedir. DL’de bir ilgi alanını temsil eden bilgi tabanı Abox ve Tbox adı verilen iki bileşenden oluşmaktadır.

• Tbox : İlgi alanı yapısını tarif eden kurallar kümesidir. Bir ilgi alanını oluşturan kavramlar, rol tanımları ve kavramların belirli rollerine ait kurallardan oluşur. Kural kümesi aksiyom (belit) olarak da adlandırılmaktadır.

• Abox : Somut bir durumu (veriyi) açıklayan kural kümesidir. Bir ilgi alanının Abox’ı, Tbox’da tanımlanan kural kümelerine göre oluşturulan somut örneklerden meydana gelmektedir.

DL’in kendine ait sınıf kurucuları ve özellik aksiyomları vardır. Burada bu tanımların ayrıntılarına girilmemektedir. DL ile oluşturulan Tbox ve Abox yapılarına

ait çıkarımlar Tableau Algoritmaları ile yapılmaktadır. Bu algoritma ilk defa 1991’de Schmidt-SchauB ve Smolka tarafından önerilmiştir [94].

DL, bir lojik tabanlı bilgi gösterim yapısı ailesidir. DL dilleri, daha basit kavram ve rollerden daha karmaşık kavramların ve rollerin inşa edilmesini sağlayan kurucular kümesi ve kavramlar, roller, somut örnekler hakkında söylenen gerçekleri içeren aksiyomlar kümesinden oluşmaktadır.

Owl; DL tabanlı örün için tasarlanmış bir ontoloji dilidir. Xml ve Rdf(s) gibi var olan standartların yapısal özelliklerini kullanmaktadır. Bu yapıya, frame sistemlerinden ve nesneya dayalı modelden bilgi gösterim deyimleri eklenmiştir [93]. DL, Owl için mantıksal muhakeme desteği sağlamaktadır. Mantıksal muhakeme, ontolojilerin tasarımı, bakımı ve geliştirilmesi için çok önemlidir. Owl’de mantıksal muhakeme Tableaux Algoritmaları temel alınarak geliştirilen araçlarla yapılmaktadır.

Owl dilinin; Owl Lite, Owl DL, Owl Full olmak üzere üç ayrı biçimi bulunmaktadır. Bu dillerin her biri bir öncekinin daha gelişmiş formudur. Genel olarak Owl dili ile; özellikler, nesne ve veri tipi olmak üzere ikiye ayrılmıştır. Buna ek olarak küme işlemleri tanımlayabilme, özelliklerin alabileceği değerler üzerinde kısıtlamalar koyabilme ve eşleme ilişkileri tanımlayabilme olanağı sağlanmıştır.

Anlambilimsel örün uygulamarında temel bir dil olan Rdf ile, Owl dilinde ve DL’de kullanılan terimler arasında farklılıklar bulunmaktadır. Bunların hepsi bilgi modelleme için kullanılan uygulama yaklaşımları olmakla beraber, bu terimsel farklılıklar sebebiyle araştırmacıların kavram kargaşası yaşamaları mümkün olmaktadır. Kavram karmaşasını engellemek amacıyla, Tablo 4.1’de DL, Owl dili ve Rdf dili için literatürde kullanılan terimler karşılaştırmalı olarak sunulmuştur.

Tablo 4.1: DL, Owl DL dili ve Rdf dilinde kullanılan terimler tablosu.

DL Owl DL Rdf

TBox and ABox Ontology (ontoloji) model

class, concept (kavram) Class (sınıf) class

individual, instance individual (somut örnek) resource (kaynak)

role (rol) object property (nesne özelliği) property (özellik)

Tablo 4.1’e göre DL’de, bir ilgi alanına ait model Abox ve Tbox olarak adlandırılırken, Owl DL dilinde bunun karşılığı ontoloji olmaktadır. DL’de kavramlar ve kavramlar arasındaki ilişkiler ve kavramların belirli rolleri ilgi alanının Tbox’ını temsil eden terimlerdir. Owl DL dilinde ise Abox ve Tbox’ın karşılığı olan ontoloji; kavramlar yerine sınıflar, roller yerine sınıflar arası ilişkileri gösteren nesne ilişkileri ve kavramların belirli rol tanımlarına yerine kullanılan sınıfların veri tipi özelliklerinden oluşmaktadır.