Laboratuar Notları #5

Benzer belgeler
Laboratuar Notları #7

Laboratuar Notları #5

Laboratuar Notları #3

Upgrading Internet Technology skills of Information and Communication Technologies (ICT) Professionals

Laboratuar Notları #8

Upgrading Internet Technology skills of Information and Communication Technologies (ICT) Professionals. Module 3: Cloud Computing. Laboratuar Notları

Laboratuar Notları #5

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

Anlamsal Web te SKOS Kullanılarak Bilgi Organizasyonu

BM312 Ders Notları 2014

Semantik Bilgi Yönetimi

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

Semantik Web Teknolojileri

PENGUEN. PROJE GÖREVİ Masaüstü objesi olarak bir penguen tasarlamak. Kılavuz üzerinde örnek çizim

Semantik Web Programlama (COMPE 567) Ders Detayları

Upgrading Internet Technology skills of Information and Communication Technologies (ICT) Professionals

Upgrading Internet Technology skills of Information and Communication Technologies (ICT) Professionals

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

Laboratuar Notları #10

MPLAB IDE v7.60 PROGRAMI KULLANIMI

DOĞU AKDENİZ ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BLGM223 SAYISAL MANTIK TASARIMI : QUARTUS II TASARIM ORTAMI: TEMEL VHDL KULLANIMI

OPNET IT Guru-Switched LANs

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.

İlişkisel Veri Tabanları I

Mobil Cihazlardan Web Servis Sunumu

KÜP YAPIMI. Küp 6 kenarı eşit uzunlukta olan üç boyutlu bir şekildir. Küp. PROJE GÖREVİ mm boyutlarında bir küp tasarlamak

Google Cloud Print Kılavuzu

24 Kasım 2011 / Perşembe

ELIF KIOTZEOGLOU RESUL MURAD MERT PACOLARI

LAB 0 : Xilinx ISE Kullanımı

BIL411 - BİLGİSAYAR AĞLARI LABORATUVARI

WEB ĠN GELECEĞĠ: ANLAMSAL WEB

Oluşturmak istediğimiz OU ye bir isim veriyoruz. Name kısmına ISTANBUL yazıyoruz,

YZM 2105 Nesneye Yönelik Programlama

Checkpoint SmartCenter da hızlı obje yaratmak

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

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

Yrd. Doç. Dr. Tuğba ÖZACAR ÖZTÜRK

WEB 3.0 TEKNOLOJİSİNİN AÇIK KAYNAK YAZILIMLARLA UYGULANMASI

Bölüm 2 Varlık-İlişki Veri Modeli: Araçlar ve Teknikler. Fundamentals, Design, and Implementation, 9/e

OPNET IT Guru- Network Design (Ağ Tasarımı)

Java Dersi. Altuğ Bilgin Altıntaş

Yrd. Doç. Dr. Övünç ÖZTÜRK

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

E-Fatura Aktarımı. EFatura Aktarım Ekranı

Birtel İletişim Teknolojileri

1. Sertifika istenmesi

Primavera ve Doküman Yönetim Sistemi

Bilgisayar Destekli Denetim Ontolojisi

Adım Motoru: açıya adım. Şekil 8.2 tekyönlü. Lab 8. Siyah (A) Mavi ( B ) Kırmızı (B)

Assist. Prof. Dr. Övünç ÖZTÜRK

Microsoft networkte, "Access Control" default olarak "Share-level access control" a ayarlı gelir:

AUTODESK PORTALI İÇİN AKADEMİK HESAP OLUŞTURULMASI

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

MVC. Görüldüğü üzere 2 adet cs. Dosyası oluşturdum. Birincisi çok satır kodu (20-25) içeren büyük işlerin yapılacağı class. İsmi buyuk_isler.

INTERNET INFORMATION SERVICES 6.0 DA WEB SAYFASI YAYINLAMAK

İSTANBUL KEMERBURGAZ ÜNİVERSİTESİ İÇERİK YÖNETİM SİSTEMİ KULLANIM KLAVUZU KEMERBURGAZ ÜNİVERSİTESİ İÇERİK YÖNETİM SİSTEMİ

Computer Engineering Department DATABASE MANAGEMENT SYSTEMS LAB 2 WORKSHEET

KENT BİLGİ SİSTEMLERİ STANDARTLARININ BELİRLENMESİ ÇALIŞTAYI T.C. ÇEVRE VE ŞEHİRCİLİK BAKANLIĞI COĞRAFİ BİLGİ SİSTEMLERİ GENEL MÜDÜRLÜĞÜ

BİLGİSAYAR DESTEKLİ TASARIM II

Useroam Cloud Kurulum Rehberi

OPNET PROJECT EDİTÖRDE. Doç. Dr. Cüneyt BAYILMIŞ

SLCM Akademik Program Kataloğu Yaratılması

Ders 3 - Eğitim 3. İlk önce çizimleri ve aşağõdaki konularõ gözden geçirin. Yeni bir model başlatmak

Projelerin Görünürlüğü

Teknik Doküman. Şekil 01

BULANIK MANTIK VE SİSTEMLERİ BAHAR DÖNEMİ ÖDEV 1. Müslüm ÖZTÜRK Bilişim Teknolojileri Mühendisliği ABD Doktora Programı

Website review dersbook.com

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

OPNET IT Guru- Güvenlik Duvarı ve Sanal Özel Ağ (Firewalls and Virtual Private Network, VPN)

Ontoloji Tabanlı Model Dönüşüm Aracı

Anlamsal Web Servisleri Temelinde Örnek Bir Servis Tanımı

SLCM - Önkoşul Derslerin Bakımı

İSTİHDAM VE SOSYAL UYUM İÇİN DİJİTAL BECERİLER

TRAKYA BİRLİK WEBSİTE YÖNETİM PANELİ. Kullanıcı Dokümantasyonu

ANAHTARLIK. PROJE GÖREVİ Okulunuzun ismini içeren bir anahtarlık tasarlamak 1. MAKER. Üzerinde MAKER yazan bir anahtarlık tasarlayın.

Bilgisayar ve Bilgi Sistemleri (COMPE 107) Ders Detayları

Ecza Depolarına Ait E-Fatura Aktarım Modülü

Üst Düzey Programlama

Kurumsal Grup E-Posta Eğitim Dokümanı

Veritabanı Tasarımı. NOT NULL ve UNIQUE Kısıtlamaları Tanımlama

Flow Kullanım Klavuzu Mart 2014

Teknik Doküman. Revit te 2B profil (family) nesne yaratmak

TeraStation 3000/4000/5000/7000 ile Replikasyon. Buffalo Technology

7) Çoklu Formlar. Şekil7.1. Araç kutusundaki Add Form butonuna basarak projeye yeni bir form ekleyiniz.

Nevşehir Hacı Bektaş Veli Üniversitesi. Moodle Uzaktan Eğitim Sistemi. Öğretim Elemanı Bilgilendirme Kılavuzu

Elbistan Meslek Yüksek Okulu GÜZ Yarıyılı Ara Öğr. Gör. Murat KEÇECĠOĞLU

PROGRAMLAMA DERSİ 1. İNTERNET

XILINX PROGRAMI İLE PROJE HAZIRLANMASI İÇİNDEKİLER

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

Access Point Mod Kurulumu

Course Online. Güncelleme: Haziran 24, 2013

Transkript:

The European Union s Making the Labour Market more Inclusive III programme For North Cyprus Upgrading Internet Technology skills of Information and Communication Technologies (ICT) Professionals Module 4: Semantic Web Modül 4: Anlamsal Ağ Laboratuar Notları #5 A project implemented by CyberSoft Bilişim Teknolojileri Ltd. This project is funded by European Union. The contents of this publication are the sole responsibility of Cybersoft Bilişim Teknolojileri Ltd. and can in no way be taken to reflect the views of the European Union.

1. Web Ontoloji Dili (OWL) ve Ontoloji Kavramı Web Ontology Language (OWL), ontolojileri tanımlamak ve çeşitlemek için kullanılan bir dildir. Bir ontoloji, ilgili özellikler ve örnekleri ile birlikte sınıfların açıklamalarını içerebilir. OWL, bilginin içeriğini sadece insanlara gösteren değil, bunun yanında işleyen uygulamalar tarafından kullanılmak üzere tasarlanmıştır. OWL, XML, RDF ve RDF Schema (RDF-S) tarafından desteklenen web içeriğinin makinalar tarafından daha iyi yorumlanabilmesini, biçimsel bir semantik ile birlikte ek sözcük kümeleri sunarak kolaylaştırır. OWL, OIL ve DAML+OIL gibi eski dilleri temel alır, ve şu anda W3C tavsiyesidir. OWL, anlamsal web bilgisinin işlenebilmesi için genel bir yol sağlamak üzere tasarlanmıştır. OWL, XML, RDF, ve RDF-S tarafından sağlanan anlamların açıklanmasını sağlayan imkânları kolaylaştırmak için geliştirilmiştir. Bu nedenle, makinalar tarafından çevrilip kullanılabilir web içeriğini gösterebilme yeteneği sayesinde, bu web dillerinin evrimsel devamı gibi düşünülebilir. OWL, XML tabanlı olduğu için, OWL bilgisi kolayca farklı işletim sistemlerine sahip bilgisayarlar ve farklı programlama dilleri arasında alınıp verilebilir. Dil, bilgisayarlar tarafından okunmak üzere tasarlandığından ve insanların okuyabilmesi çok fazla göz önünde bulundurulmadığından, araç meselesi olarak düşünülebilir. OWL, değer yönetimi çerçevesi, büyük ölçekli entegrasyon ve web üzerinde veri paylaşımı için standart yaratmada kullanılmaktadır. OWL anlamsal web in bir parçasıdır. Anlamsal web dağıtık bir yapıda olduğu için OWL belgelerinde sunulan bilgiler de dağıtık kaynaklardan okunabilecek veya işlenebilecek düzende olmalıdır. OWL ile tanımlanan bilgi tek bir dosyada ya da kapsamda düşünülemez. Bu bilgi başka ontolojiler tarafından da tanımlanabilir ya da genişletilebilir. OWL belgelerinin yanlış yorumlanmaması ve etmenler tarafından işlenebilmesi için düzgün bir sözdizimine ihtiyaç vardır. OWL belgelerinde kullanılacak terminoloji RDF dosyalarının genişletilmiş halidir. Ontolojilerin önemli oluşlarının sebepleri, günümüzde birçok alanda kullanılmalarındandır. Çok büyük bilgi taşıyan, hiyerarşik yapı içermeyen, varlıklar arası ilişkilerin önemli olduğu projeler ontolojiler için önemlidir. Bu gibi alanlara en güzel örnek ilaç endüstrisindeki araştırmalardır. Bunun yanı sıra gen ontolojisi, klinik terminoloji ontolojisi, gösterilebilecek güzel örneklerdir. Ontoloji mühendisliği bilginin yönetimi için önemli araçlardır. Günlük bilgilerin bile yangın hortumundan çıkan su misali nefesleri kestiği bir dönemde kısmen kritik bir durum olan veri yığını yönetimi ve ilişki tespiti ontolojilerin temel yeteneğidir. OWL vs. RDF: OWL ve RDF aslında cok benzerler ancak OWL belgelerinde kullanılacak terminoloji RDF dosyalarının genişletilmiş halidir. Diğer bbir deyişle, OWL dili RDF diline bir eklentidir.

2. Örnek Çalışma: Protege Kullanarak Pizza Ontolojisinin Yaratılması Step1: Yeni bir OWL projesi yaratma 1. Protégé açınız. 2. File New Project OWL/RDF files Ontology URI (http://www.pizza.com/ontologies/pizza.owl) 3. OWL DL Properties View 4. Yeni bir Protege-OWL projesi yaratılmıştır.yarattığınız projeyi kendi local makinenize kaydediniz. Step2: Sınıf İsimlendirme 1. OWL Classes tabına gidiniz. 2. The empty class ağacı owl:thing adında, herseyin supersınıfı olan bir sınıf içermektedir. 3. Pizza, PizzaTopping ve PizzaBase adında 3 tane subclass yaratınız. Bu yarattığınız class lar owl:thing in altsınıflarıdır. 4. Step3: Disjoint Sınıflar Pizza, PizzaBase ve PizzaTopping in disjoint sınıflar olduğunu belirtmek için 1. Pizza sınıfını seçiniz. 2. disjoint classes widget da bulunan add siblings butonuna basınız. 3. PizzaBase ve PizzaTopping i ekleyiniz. 4. PizzaTopping sınıfını seçiniz. 5. Pizza ve PizzaBase disjointleri PizzaTopping için disjoint sınıflar olarak ekleyiniz. 1

Step 4. Sınıfları gruplar şeklinde yaratmak için 1. ThinAndCrisyBase ve DeepPanBase sınıflarını PizzaBase in subclass I olarak yaratınız ve her birinin disjoint olduğunu belirtiniz. 2. PizzaBase seçiniz ve mouse un sağ tıkına basarak create subclasses seçiniz. 3. Daha sonra bu iki disjoint class I toplu halde yaratmak için wizard I izleyiniz. Bu size çok zaman kazandıracaktır Step 5. PizzaTopping in alt sınıflarını yaratmak için 1. PizzaTopping sınıfını seçiniz ve MeatTopping, VegetableTopping, CheeseTopping ve SeafoodTopping i subclassları olarak yaratınız. Hepsinin birbirlerinden disjoint olduğunu belirttiğinize emin olunuz. 2. MeatTopping sınıfını seçiniz. SpicyBeefTopping, PepperoniTopping, SalamiTopping ve HamTopping subclassları olarak yaratınız.. Hepsinin birbirlerinden disjoint olduğunu belirttiğinize emin olunuz. 3. VegetableTopping i seçiniz. TomatoTopping, OliveTopping, MushroomTopping, PepperTopping, OnionTopping, CaperTopping subclassları olarak yaratınız.. Hepsinin birbirlerinden disjoint olduğunu belirttiğinizden emin olunuz. Step 6. Disjoint subclass larını yaratmaya devam ediniz. 1. PepperTopping i seçiniz. disjoint subclass ları olarak : RedPepperTopping, GreenPepperTopping, JalapenoPepperTopping ekleyiniz. 2. CheeseTopping i seçiniz. disjoint subclass ları olarak: MozzarellaTopping, ParmezanTopping ekleyiniz. 3. SeafoodTopping i seçiniz. disjoint subclass ları olarak: TunaTopping, AnchovyTopping ve PrawnTopping ekleyiniz. Bilgi Notu 1: OWL Property (Özellik) Elementleri: OWL da özellikler iki obje arasındaki ilişkiyi belirmek için kullanılır.iki ana özellik vardır: Object özellikleri: objeleri diğer objelerle ilişkilendirir. Data type özellikleri: objeleri veri tip değerleriyle ilişkilendirmek için kullanılır. Objeleri, XML Schema datatype veya rdf:literal ile ilişkilendirir. Bunlara ek olarak bir de Annotation özellikler vardır. Bunlar Sınıflar, property ler hakkında bilgi vermek için kullanılırlar. 2

Step 7. Object Property yaratmak için 1. Properties tabına geçiniz. 2. Yeni bir object property yaratmak için Create Object Property butonunu kullanınız.. 3. hasingredient olarak ismini değiştiriniz. Step 8. Sub-property yaratmak için 1. hasingredient property i seçiniz. hastopping ve hasbase i subproperties olarak yaratınız. Bilgi Notu 2: Inverse Property Her object property nin bir inverse property si olabilir. Eğer bir property a yı b ye bağlıyorsa, bunun inverse property si b yi a ya bağlar. 3

Step 9. Inverse Property yaratmak için 1. isingredientof isimli yeni bir object property yaratınız. Set inverse property butonuna basınız, hasingredient seçiniz. Böylece inverse relation ilişkisi tanımlanmış olacaktır. 2. hasbase seçiniz. isbaseof u hasbase in inverse property olarak seçiniz. 3. hastopping seçiniz. istoppingof u inverse property olarak yaratınız. istoppingof is the subproperty Bilgi Notu 3: Functional Property ler Functional property ler tek değerli property olarak bilinirler. Eğer bir özellik functional olarak tanımlanmış ise, her varlık için, ona bu özellik ile sadece 1 tane varlık ilşkilendirilebilir. Verilen domain in, range i unique olmalıdır. Bilgi Notu 4: Inverse Functional Property ler Eğer bir property inverse functional ise bunun inverse property si de functional dır. 4

FunctionalProperty ile InverseFunctionalProperty arasındaki ilişkiyi daha iyi anlamak için aşağıdaki tabloyu inceleyiniz. domain range example Functional Property For a given domain Range is unique hasfather: A hasfather B, A hasfather C B=C InverseFunctionalProperty Domain is unique For a given range hasid: A hasid B, C hasid B A=C Bilgi Notu 5: Transitive Property ler Eğer bir property transitive ise ve A yı B ye ilişkilendiriyorsa, ve aynı zamanda B yi de C ye ilişkilendiriyorsa, A ile C property P aracılığıyla birbiriyle ilişkildir. Bilgi Notu 6: Symmetric Property ler Eğer property P symmetric is eve bu property A ile B yi ilişkileniriyorsa, B ile A da property P aracılığıyla birbiriyle ilişkilidir. Step10. hasingredient property transitive yapmak için 1. hasingredient property i seçiniz. 5

2. transitive tick box tikleyiniz. 3. isingredientof property seçiniz ve transitive tick boxun seçili olduğundan emin olunuz. Step 11. hasbase property Functional yapmak için 1. hasbase property i seçiniz. 2. functional tick box tikleyiniz. Bilgi Notu 7: Property domain ler ve range ler Properties link individuals from the domain to individuals from the range. OWL uses domain and range as axioms in reasoning. Step 12. hastopping in range ini seçmek için 1. hastopping i seçiniz. range butonuna basınız. PizzaTopping i seçiniz. OK butonuna basınız. PizzaTopping in range listesinde görünmelidir. Eğer birden fazla sınıf range e eklenmişse, range için bu sınıfların birleşimini alırız. Step 13. hastopping in domain ini Pizza olarak seçmek için 1. hastopping property i seçiniz. add domain butonuna basınız. Pizza yı seçiniz. OK basınız. Pizza domain listesinde görünmelidir.. 2. Eğer birden fazla sınıf domain olarak eklenmişse, domain bu sınfların birleşimidir. Step 14. istoppingof un range ve domain ini seçmek için 1. istoppingof property i seçiniz. 6

2. istoppingof property sinin domain ini PizzaTopping olarak seçiniz. 3. istoppingof property sinin range ini Pizza olarak seçiniz. Step 15. hasbase in range ve domain ini seçmek ve isbaseof Inverse i yapmak için 1. hasbase property i seçiniz. Domain i Pizza olarak belirleyiniz. Range I PizzaBase olsun. 2. isbaseof property I seçiniz. Domain i PizzaBase olarak seçiniz. Range I de Pizza olarak seçiniz. Bilgi Notu 8: Property Restrictions (Kısıtlamaları) OWL da, property ler kısıtlama yapmak için kullanılırlar. Kısıtlamalar bir sınıfa ait varlıkları kısıtlamak için kullanılırlar. Üç tane kısıtlama çeşidi vardır: Quantifier kısıtlamaları Existential quantifier ( ) Universal quantifier ( ) Cardinality kısıtlamaları hasvalue kısıtlamaları Step 16. Pizza ya PizzaBase olması kısıtlamasını eklemek için Pizza yı seçiniz. Necessary başlığını seçiniz. create a restriction wizard a tıklayınız hasbase i restricted property olarak seçiniz. somevaluefrom restriction olarak seçiniz. PizzaBase i fillere koyunuz. 7

Step 17. Değişik şekillerde Pizza lar yaratmak için NamedPizza isimli bir subclass yaratınız ve ona da MargheritaPizza isimli bir subclass yaratınız.. MargheritaPizza ya comment ekleyiniz: A pizza that only has Mozarella and Tomato toppings Step 18. Margherita Pizza ya kısıtlama getirmek için MargheritaPizza nın en azından bir tane MozzarellaTopping I olduğunu belirtmek için MargheritaPizza yı seçiniz. Asserted Conditions a gidiniz ve yeni bir restriction yaratınız. somevaluefrom seçiniz. hastopping kısıtlanacak property olarak seçiniz. MozzarellaTopping i filler e yazınız. OK butonuna basınız. MargheritaPizza nın en azından bir tane TomatoTopping i olduğunu belirtmek için MargheritaPizza yı seçiniz. Asserted Conditions a gidiniz ve yeni bir restriction yaratınız. somevaluefrom seçiniz. hastopping kısıtlanacak property olarak seçiniz. TomatoTopping i filler e yazınız. 8

OK butonuna basınız. Step 19. AmericanPizza yaratmak için pepperoni, mozzarella ve tomato toppingli AmericanPizza yaratınız veya MargheritaPizza klonlayıp, değiştiriniz. MargheritaPizza seçiniz. create clone seçiniz. AmericanaPizza PepperoniTopping ek kısıtlamasını getiriniz. OK butonuna basınız. Step 20. AmericanHotPizza ve SohoPizza yaratınız. AmericanHotPizza, AmericanaPizza ile hemen hemen aynıdır, ama AmericanaPizza ya ek olarak üzerinde JalapenoPepperTopping i vardır. SohoPizza, MargheritaPizza ile hemen hemen aynıdır, fakat üzerinde ek olarak OliveTopping ve ParmezanTopping vardır. Step 21. NamedPizza nın subclasslarını disjoint yapınız. MargheritaPizza yı seçiniz. Pizzaları birbiriyle disjoint yapmak için Disjoints widget üzerindeki add all siblings butonuna basınız. 9