SlideShare a Scribd company logo
1 of 40
Protégé Tutorial
Fabio Papacchini
Protégé – What and Where
What is Protégé? (from their webpage)
A free, open-source ontology editor and framework for building
intelligent systems
Protégé is supported by a strong community of academic,
government, and corporate users, who use Protégé to build
knowledge-based solutions in areas as diverse as biomedicine,
e-commerce, and organisational modelling.
Where to get it: http://protege.stanford.edu/
Useful resources
I http:
//mowl-power.cs.man.ac.uk/protegeowltutorial/
resources/ProtegeOWLTutorialP4_v1_3.pdf
NOTE: the manual is for version 4, but the current version is 5.1
I http://protegewiki.stanford.edu/wiki/Main_Page
Protégé – What and Where (cont’d)
Specifically, Protégé is
I a java-based application (multi-platform)
I thought for a variety of people (more than 300 thousands users)
I a GUI to help the editing of ontologies
creation, modification, reasoning, debugging, . . .
Syntax – DL, OWL, Manchester
Protégé uses the Manchester syntax
DL OWL Manchester
> owl:Thing owl:Thing
⊥ owl:Nothing owl:Nothing
Concept name Class Class
Role name Object property Object property
¬C ObjectComplementOf(C) not C
C t D ObjectUnionOf(C D) C or D
C u D ObjectIntersectionOf(C D) C and D
∃r.C ObjectSomeValuesFrom(r C) r some C
∀r.C ObjectAllValuesFrom(r C) r only C
(≥ n r.C) ObjectMinCardinality(n r C) r min n C
(≤ n r.C) ObjectMaxCardinality(n r C) r max n C
(= n r.C) ObjectExactCardinality(n r C) r exactly n C
https://www.w3.org/TR/owl2-manchester-syntax/
Syntax – DL, OWL, Manchester – Example
DL
Person u ∃hasGender.Male
(= 2 hasWheel.FrontWheel) u (= 2 hasWheel.RearWheel)
OWL (omitting “Object” for succinctness)
IntersectionOf(Person SomeValuesFrom(hasGender Male))
IntersectionOf(ExactCardinality(2 hasWheel FrontWheel)
ExactCardinality(2 hasWheel RearWheel))
Manchester
Person and (hasGender some Male)
(hasWheel exactly 2 FrontWheel) and (hasWheel exactly 2
RearWheel)
Convention
I concept names begin with an uppercase letter
I role names begin with a lowercase letter
I CamelBack notation for both concept and role names
An Ontology about Video Games
Assume we want to build an ontology about video games as follows.
self-standing modifiers relations definable
- Game - Genre hasDifficulty MultiPlatform
- NamedGame - SinglePlayer hasPlatform PuzzleGame
- LoL - MultiPlayer hasGenre HardGame
- Chess - Puzzle NormalGame
- Sudoku - RolePlayGame EasyGame
- WoW - Online LinuxGame
- Platform - Difficulty WindowsGame
- Windows - Hard MacOSXGame
- MacOSX - Normal . . .
- Linux - Easy
Adding Classes
Make sure to have the “Classes” tab open
Window → Tabs → Classes
Add Subclass
Adding Classes
Make sure to have the “Classes” tab open
Window → Tabs → Classes
Add Sibling
Delete Class
Adding Class Hierarchies
It allows us to speed up the process of adding classes.
Tools → Create class hierarchy. . .
Adding Class Hierarchies
It allows us to speed up the process of adding classes.
Tools → Create class hierarchy. . .
Adding Class Hierarchies
It allows us to speed up the process of adding classes.
Tools → Create class hierarchy. . .
Adding Class Hierarchies
It allows us to speed up the process of adding classes.
Tools → Create class hierarchy. . .
Adding Class Hierarchies
It allows us to speed up the process of adding classes.
Tools → Create class hierarchy. . .
Axioms involving “Game”
Adding Class Hierarchies
It allows us to speed up the process of adding classes.
Tools → Create class hierarchy. . .
Description of the class “Game”
Adding Class Hierarchies
It allows us to speed up the process of adding classes.
Tools → Create class hierarchy. . .
Game v >
Adding Class Hierarchies
It allows us to speed up the process of adding classes.
Tools → Create class hierarchy. . .
Game u ValuePartition v ⊥
Game u Genre v ⊥
Game u Platform v ⊥
Adding Class Hierarchies
It allows us to speed up the process of adding classes.
Tools → Create class hierarchy. . .
Delete axiom
Edit axiom
What Now?
What we have. . .
I all non-definable classes
I an initial class hierarchy
I basic (among siblings) disjoint axioms
What we need to add. . .
I object properties
I relations between classes
I definable classes
Object Properties (Domain and Range)
Make sure to have the “Object Properties” tab open
Window → Tabs → Object Properties
∃hasPlatform.> v Game
Object Properties (Domain and Range)
Make sure to have the “Object Properties” tab open
Window → Tabs → Object Properties
Autocompletion using “tab”
Object Properties (Domain and Range)
Make sure to have the “Object Properties” tab open
Window → Tabs → Object Properties
> v ∀hasPlatform.Platform
Adding Axioms
Which axioms?
I only axioms of the following forms
I A v C (necessary condition for A)
I A ≡ C (sufficient and necessary condition for A – definition)
I for each subclass of NamedGame we need to insert axioms
expressing something like
I Chess can be installed on any platform
I League of Legends is an online game
I DifficultyValuePartition need to be properly defined
(i.e., its values can only be Hard, Normal, or Easy)
I adding definable classes
A v C – Example
I Natural language specification
Chess can be installed on any platform
I Rephrase the specification using the ontology vocabulary
Chess has platform Windows, has platform MacOSX, and
has platform Linux
I Write it in description logic syntax (optional)
Chess v ∃hasPlatform.WindowsPlatform
Chess v ∃hasPlatform.MacOSXPlatform
Chess v ∃hasPlatform.LinuxPlatform
I Write it in Manchester syntax (the right-hand side is enough)
hasPlatform some WindowsPlatform
hasPlatform some MacOSXPlatform
hasPlatform some LinuxPlatform
Adding Axioms to the Class “Chess”
Adding Axioms to the Class “Chess”
Adding Axioms to the Class “Chess”
Improving DifficultyValuePartition Definition
What needs to be done?
I add DifficultyValuePartition ≡ Hard t Normal t Easy
Note that Hard, Normal and Easy are already disjoint
I add domain and range of hasDifficulty
I make hasDifficulty functional
Improving DifficultyValuePartition Definition (cont’d)
Improving DifficultyValuePartition Definition (cont’d)
Improving DifficultyValuePartition Definition (cont’d)
Improving DifficultyValuePartition Definition (cont’d)
Adding Definable Class “MultiPlayerGame”
Adding Definable Class “MultiPlayerGame”
Adding Definable Class “MultiPlayerGame”
MultiPlayerGame ≡ Game u ∃hasGenre.MultiPlayer
Reasoning
Protégé can be used for reasoning tasks such as classification
I configure the reasoner
Reasoner → Configure. . . (for this tutorial, check everything
under Class inferences and Object property inferences)
I select a reasoner
for example, Reasoner → HermiT (other reasoners can be
added, which one to use depends on several factors such
as the expressivity of the ontology)
I finally, Reasoner → Start reasoner
Reasoning Example
Reasoning Example
Inferred
Reasoning – Visually (Asserted)
Reasoning – Visually (Inferred)
Resources Summary
Download from http://protege.stanford.edu/
Guide, Slides, Wiki
I Official Tutorial (for version 4, small differences here and there)
http:
//mowl-power.cs.man.ac.uk/protegeowltutorial/
resources/ProtegeOWLTutorialP4_v1_3.pdf
I Wiki
http://protegewiki.stanford.edu/wiki/Main_Page
I extended version of this presentation at the module site
http://cgi.csc.liv.ac.uk/˜frank/teaching/
comp08/comp321.html
Game Ontology http://cgi.csc.liv.ac.uk/˜frank/
teaching/comp08/videogame.owl

More Related Content

Similar to This is Video Game Ontology in protege format

Introduction to PowerShell
Introduction to PowerShellIntroduction to PowerShell
Introduction to PowerShellBoulos Dib
 
MobileConf 2021 Slides: Let's build macOS CLI Utilities using Swift
MobileConf 2021 Slides:  Let's build macOS CLI Utilities using SwiftMobileConf 2021 Slides:  Let's build macOS CLI Utilities using Swift
MobileConf 2021 Slides: Let's build macOS CLI Utilities using SwiftDiego Freniche Brito
 
Introduction to Software Development
Introduction to Software DevelopmentIntroduction to Software Development
Introduction to Software DevelopmentZeeshan MIrza
 
The Ring programming language version 1.8 book - Part 7 of 202
The Ring programming language version 1.8 book - Part 7 of 202The Ring programming language version 1.8 book - Part 7 of 202
The Ring programming language version 1.8 book - Part 7 of 202Mahmoud Samir Fayed
 
Designing A Project Using Java Programming
Designing A Project Using Java ProgrammingDesigning A Project Using Java Programming
Designing A Project Using Java ProgrammingKaty Allen
 
Making Steaks from Sacred Cows
Making Steaks from Sacred CowsMaking Steaks from Sacred Cows
Making Steaks from Sacred CowsKevlin Henney
 
Fletcher saylor digital education conference 2013
Fletcher saylor digital education conference 2013Fletcher saylor digital education conference 2013
Fletcher saylor digital education conference 2013kathi-fletcher
 
The Ring programming language version 1.9 book - Part 7 of 210
The Ring programming language version 1.9 book - Part 7 of 210The Ring programming language version 1.9 book - Part 7 of 210
The Ring programming language version 1.9 book - Part 7 of 210Mahmoud Samir Fayed
 
Microservices Chaos Testing at Jet
Microservices Chaos Testing at JetMicroservices Chaos Testing at Jet
Microservices Chaos Testing at JetC4Media
 
Tips and Tricks for Using Visual Studio.Net Effectively
Tips and Tricks for Using Visual Studio.Net EffectivelyTips and Tricks for Using Visual Studio.Net Effectively
Tips and Tricks for Using Visual Studio.Net Effectivelyweili_at_slideshare
 
Introducing PanelKit
Introducing PanelKitIntroducing PanelKit
Introducing PanelKitLouis D'hauwe
 
Raising the bar 2, Using Puppet to install enterprise middleware applications
Raising the bar 2, Using Puppet to install enterprise middleware applicationsRaising the bar 2, Using Puppet to install enterprise middleware applications
Raising the bar 2, Using Puppet to install enterprise middleware applicationsBert Hajee
 

Similar to This is Video Game Ontology in protege format (20)

Introduction to PowerShell
Introduction to PowerShellIntroduction to PowerShell
Introduction to PowerShell
 
PowerShell crashcourse for sharepoint
PowerShell crashcourse for sharepointPowerShell crashcourse for sharepoint
PowerShell crashcourse for sharepoint
 
L04 Software Design 2
L04 Software Design 2L04 Software Design 2
L04 Software Design 2
 
Class 1 blog
Class 1 blogClass 1 blog
Class 1 blog
 
MobileConf 2021 Slides: Let's build macOS CLI Utilities using Swift
MobileConf 2021 Slides:  Let's build macOS CLI Utilities using SwiftMobileConf 2021 Slides:  Let's build macOS CLI Utilities using Swift
MobileConf 2021 Slides: Let's build macOS CLI Utilities using Swift
 
Introduction to Software Development
Introduction to Software DevelopmentIntroduction to Software Development
Introduction to Software Development
 
Extending NetBeans IDE
Extending NetBeans IDEExtending NetBeans IDE
Extending NetBeans IDE
 
The Ring programming language version 1.8 book - Part 7 of 202
The Ring programming language version 1.8 book - Part 7 of 202The Ring programming language version 1.8 book - Part 7 of 202
The Ring programming language version 1.8 book - Part 7 of 202
 
Designing A Project Using Java Programming
Designing A Project Using Java ProgrammingDesigning A Project Using Java Programming
Designing A Project Using Java Programming
 
Making Steaks from Sacred Cows
Making Steaks from Sacred CowsMaking Steaks from Sacred Cows
Making Steaks from Sacred Cows
 
PyCon 2011: IronPython Command Line
PyCon 2011:  IronPython Command LinePyCon 2011:  IronPython Command Line
PyCon 2011: IronPython Command Line
 
Fletcher saylor digital education conference 2013
Fletcher saylor digital education conference 2013Fletcher saylor digital education conference 2013
Fletcher saylor digital education conference 2013
 
The Ring programming language version 1.9 book - Part 7 of 210
The Ring programming language version 1.9 book - Part 7 of 210The Ring programming language version 1.9 book - Part 7 of 210
The Ring programming language version 1.9 book - Part 7 of 210
 
Microservices Chaos Testing at Jet
Microservices Chaos Testing at JetMicroservices Chaos Testing at Jet
Microservices Chaos Testing at Jet
 
Tips and Tricks for Using Visual Studio.Net Effectively
Tips and Tricks for Using Visual Studio.Net EffectivelyTips and Tricks for Using Visual Studio.Net Effectively
Tips and Tricks for Using Visual Studio.Net Effectively
 
Need 4 Speed FI
Need 4 Speed FINeed 4 Speed FI
Need 4 Speed FI
 
Introducing PanelKit
Introducing PanelKitIntroducing PanelKit
Introducing PanelKit
 
Game Studio
Game StudioGame Studio
Game Studio
 
Raising the bar 2, Using Puppet to install enterprise middleware applications
Raising the bar 2, Using Puppet to install enterprise middleware applicationsRaising the bar 2, Using Puppet to install enterprise middleware applications
Raising the bar 2, Using Puppet to install enterprise middleware applications
 
Gui
GuiGui
Gui
 

Recently uploaded

Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxupamatechverse
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSSIVASHANKAR N
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxpurnimasatapathy1234
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130Suhani Kapoor
 
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...ranjana rawat
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile servicerehmti665
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSKurinjimalarL3
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Dr.Costas Sachpazis
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSCAESB
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...ranjana rawat
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxJoão Esperancinha
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxwendy cai
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxupamatechverse
 
chaitra-1.pptx fake news detection using machine learning
chaitra-1.pptx  fake news detection using machine learningchaitra-1.pptx  fake news detection using machine learning
chaitra-1.pptx fake news detection using machine learningmisbanausheenparvam
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Serviceranjana rawat
 

Recently uploaded (20)

Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptx
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
 
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile service
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptxExploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentation
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptx
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 
chaitra-1.pptx fake news detection using machine learning
chaitra-1.pptx  fake news detection using machine learningchaitra-1.pptx  fake news detection using machine learning
chaitra-1.pptx fake news detection using machine learning
 
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
 

This is Video Game Ontology in protege format

  • 2. Protégé – What and Where What is Protégé? (from their webpage) A free, open-source ontology editor and framework for building intelligent systems Protégé is supported by a strong community of academic, government, and corporate users, who use Protégé to build knowledge-based solutions in areas as diverse as biomedicine, e-commerce, and organisational modelling. Where to get it: http://protege.stanford.edu/ Useful resources I http: //mowl-power.cs.man.ac.uk/protegeowltutorial/ resources/ProtegeOWLTutorialP4_v1_3.pdf NOTE: the manual is for version 4, but the current version is 5.1 I http://protegewiki.stanford.edu/wiki/Main_Page
  • 3. Protégé – What and Where (cont’d) Specifically, Protégé is I a java-based application (multi-platform) I thought for a variety of people (more than 300 thousands users) I a GUI to help the editing of ontologies creation, modification, reasoning, debugging, . . .
  • 4. Syntax – DL, OWL, Manchester Protégé uses the Manchester syntax DL OWL Manchester > owl:Thing owl:Thing ⊥ owl:Nothing owl:Nothing Concept name Class Class Role name Object property Object property ¬C ObjectComplementOf(C) not C C t D ObjectUnionOf(C D) C or D C u D ObjectIntersectionOf(C D) C and D ∃r.C ObjectSomeValuesFrom(r C) r some C ∀r.C ObjectAllValuesFrom(r C) r only C (≥ n r.C) ObjectMinCardinality(n r C) r min n C (≤ n r.C) ObjectMaxCardinality(n r C) r max n C (= n r.C) ObjectExactCardinality(n r C) r exactly n C https://www.w3.org/TR/owl2-manchester-syntax/
  • 5. Syntax – DL, OWL, Manchester – Example DL Person u ∃hasGender.Male (= 2 hasWheel.FrontWheel) u (= 2 hasWheel.RearWheel) OWL (omitting “Object” for succinctness) IntersectionOf(Person SomeValuesFrom(hasGender Male)) IntersectionOf(ExactCardinality(2 hasWheel FrontWheel) ExactCardinality(2 hasWheel RearWheel)) Manchester Person and (hasGender some Male) (hasWheel exactly 2 FrontWheel) and (hasWheel exactly 2 RearWheel) Convention I concept names begin with an uppercase letter I role names begin with a lowercase letter I CamelBack notation for both concept and role names
  • 6. An Ontology about Video Games Assume we want to build an ontology about video games as follows. self-standing modifiers relations definable - Game - Genre hasDifficulty MultiPlatform - NamedGame - SinglePlayer hasPlatform PuzzleGame - LoL - MultiPlayer hasGenre HardGame - Chess - Puzzle NormalGame - Sudoku - RolePlayGame EasyGame - WoW - Online LinuxGame - Platform - Difficulty WindowsGame - Windows - Hard MacOSXGame - MacOSX - Normal . . . - Linux - Easy
  • 7. Adding Classes Make sure to have the “Classes” tab open Window → Tabs → Classes Add Subclass
  • 8. Adding Classes Make sure to have the “Classes” tab open Window → Tabs → Classes Add Sibling Delete Class
  • 9. Adding Class Hierarchies It allows us to speed up the process of adding classes. Tools → Create class hierarchy. . .
  • 10. Adding Class Hierarchies It allows us to speed up the process of adding classes. Tools → Create class hierarchy. . .
  • 11. Adding Class Hierarchies It allows us to speed up the process of adding classes. Tools → Create class hierarchy. . .
  • 12. Adding Class Hierarchies It allows us to speed up the process of adding classes. Tools → Create class hierarchy. . .
  • 13. Adding Class Hierarchies It allows us to speed up the process of adding classes. Tools → Create class hierarchy. . . Axioms involving “Game”
  • 14. Adding Class Hierarchies It allows us to speed up the process of adding classes. Tools → Create class hierarchy. . . Description of the class “Game”
  • 15. Adding Class Hierarchies It allows us to speed up the process of adding classes. Tools → Create class hierarchy. . . Game v >
  • 16. Adding Class Hierarchies It allows us to speed up the process of adding classes. Tools → Create class hierarchy. . . Game u ValuePartition v ⊥ Game u Genre v ⊥ Game u Platform v ⊥
  • 17. Adding Class Hierarchies It allows us to speed up the process of adding classes. Tools → Create class hierarchy. . . Delete axiom Edit axiom
  • 18. What Now? What we have. . . I all non-definable classes I an initial class hierarchy I basic (among siblings) disjoint axioms What we need to add. . . I object properties I relations between classes I definable classes
  • 19. Object Properties (Domain and Range) Make sure to have the “Object Properties” tab open Window → Tabs → Object Properties ∃hasPlatform.> v Game
  • 20. Object Properties (Domain and Range) Make sure to have the “Object Properties” tab open Window → Tabs → Object Properties Autocompletion using “tab”
  • 21. Object Properties (Domain and Range) Make sure to have the “Object Properties” tab open Window → Tabs → Object Properties > v ∀hasPlatform.Platform
  • 22. Adding Axioms Which axioms? I only axioms of the following forms I A v C (necessary condition for A) I A ≡ C (sufficient and necessary condition for A – definition) I for each subclass of NamedGame we need to insert axioms expressing something like I Chess can be installed on any platform I League of Legends is an online game I DifficultyValuePartition need to be properly defined (i.e., its values can only be Hard, Normal, or Easy) I adding definable classes
  • 23. A v C – Example I Natural language specification Chess can be installed on any platform I Rephrase the specification using the ontology vocabulary Chess has platform Windows, has platform MacOSX, and has platform Linux I Write it in description logic syntax (optional) Chess v ∃hasPlatform.WindowsPlatform Chess v ∃hasPlatform.MacOSXPlatform Chess v ∃hasPlatform.LinuxPlatform I Write it in Manchester syntax (the right-hand side is enough) hasPlatform some WindowsPlatform hasPlatform some MacOSXPlatform hasPlatform some LinuxPlatform
  • 24. Adding Axioms to the Class “Chess”
  • 25. Adding Axioms to the Class “Chess”
  • 26. Adding Axioms to the Class “Chess”
  • 27. Improving DifficultyValuePartition Definition What needs to be done? I add DifficultyValuePartition ≡ Hard t Normal t Easy Note that Hard, Normal and Easy are already disjoint I add domain and range of hasDifficulty I make hasDifficulty functional
  • 32. Adding Definable Class “MultiPlayerGame”
  • 33. Adding Definable Class “MultiPlayerGame”
  • 34. Adding Definable Class “MultiPlayerGame” MultiPlayerGame ≡ Game u ∃hasGenre.MultiPlayer
  • 35. Reasoning Protégé can be used for reasoning tasks such as classification I configure the reasoner Reasoner → Configure. . . (for this tutorial, check everything under Class inferences and Object property inferences) I select a reasoner for example, Reasoner → HermiT (other reasoners can be added, which one to use depends on several factors such as the expressivity of the ontology) I finally, Reasoner → Start reasoner
  • 40. Resources Summary Download from http://protege.stanford.edu/ Guide, Slides, Wiki I Official Tutorial (for version 4, small differences here and there) http: //mowl-power.cs.man.ac.uk/protegeowltutorial/ resources/ProtegeOWLTutorialP4_v1_3.pdf I Wiki http://protegewiki.stanford.edu/wiki/Main_Page I extended version of this presentation at the module site http://cgi.csc.liv.ac.uk/˜frank/teaching/ comp08/comp321.html Game Ontology http://cgi.csc.liv.ac.uk/˜frank/ teaching/comp08/videogame.owl