Umi Laili Yuhana
December, 24 2007
Context Aware Group - Intelligent Agent LaboratoryComputer Science and Information Engineering
National Taiwan University (NTU)
Last Week – 12/17/2007Idea of OntologySemantic Web VisionFrom Today’s Web to The Semantic WebThe advantage of OntologyOntology in a glance
Tonight -- 12/24/2007Review (last week)Create and Build Ontology
○ Step by Step○ Using Protégé
Outline
Explicit and formal specification of a conceptualization
Consist of finite list of terms and the relationships between these terms
Consist of concepts (also known as classes), relations (properties), instances and axioms -- (CRIA)
Ontology Definition
Review (Last Week)
Step by Step Build Ontology
Step by Step Build Ontology
Location Ontology Modeling Based on CSIE Building
Step by Step Build Ontology
Study Case:
Domain : Indoor Location
1st floor map
Determine Scope
Step by Step Build Ontology
Determine Scope What is the domain that the ontology will
cover ? Location ontology for indoor location (CSIE building)
For what we are going to use the ontology ?○ Get knowledge about CSIE building location○ Find place / room in CSIE building
For what types question should the ontology provide answer ?○ Where is Professor Jane’s Room ?○ What is Professor Jane’s Lab ?
Who will use and maintain the ontology ?○ Anyone who want to find the location in CSIE
building
Determine Scope
Step by Step Build Ontology
Consider Reuse
We can reuse ontology in the same domain knowledge if it exists
If no ontology exists, create new one
Consider Reuse
Step by Step Build Ontology
Create New Ontology In Protege Open Protégé Create New OWL/RDF Project Given “location.owl” as name
Protégé
Using Protégé
Enumerate Terms
Identify relevant terms Write down in an unstructured list all the
relevant terms Noun -> basis for class names Verbs -> basis for property names
has room numberowned byetc
Enumerate Terms
Step by Step Build Ontology
Description about CSIE Building
Has 1 basement and 5 floors
Each floor has many rooms, passage, stairs and elevators
There are several types of rooms:1.Laboratory. These rooms are provided for students to explore and practice their knowledge, do research, assignment from teacher or supervisor, or the project. Each laboratory has name, room number, door way, spread on 5 floors, and supervised by teacher as supervisor. 2.Seminar room. Seminar rooms are provided for students and teacher to discuss their field, project, or discuss the paper. 3.Classroom. Classrooms are provided to support academic activity such teaching process. 4.Rest room. Each floor has rest room as service room for people.5.Staff’s office. Staff’s office is office for teacher or CSIE staff.
Enumerate Terms
Step by Step Build Ontology
Description about CSIE Building
2 types of passages: corridor and door way. Corridor connect one room with another room or another placedoor way is way out from room.
Stairs and Elevators connected one floor with another.There are 3 stairs in CSIE building,
○ 2 stairs in east side (stair in south east building and stair in north east building)
○ one stair in west side. There are 2 elevators in east side,
○ elevator in south east building ○ elevator in north east building
Enumerate Terms
Step by Step Build Ontology
Terms in CSIE Building Ontology
Room Corridor Classroom Door way Floor Passage Stair Elevator Laboratory Restroom Office Seminar room Kitchen Place indoor connect with
room name room’s number passage at floor room at floor floor consist of room room has door stair at floor elevator at floor floor number laboratory’s name has room number lab supervised by office owned by
Enumerate Terms
Noun
Verb
Noun -> basis for class namesVerbs -> basis for property names Step by Step Build Ontology
Define Taxonomy
Organize relevance terms in taxonomic (subclass) hierarchy
Noun as class : Room, Corridor, Classroom, Door way,
Floor, Passage , Stair, Elevator, Laboratory, Restroom , Office, Seminar room, Kitchen, Place indoor
Define Taxonomy
Step by Step Build Ontology
Define Class
Room Corridor Classroom Door way Floor Passage Stair Elevator Laboratory Restroom Office Seminar room Kitchen Place indoor
Room Corridor Classroom Door way Floor Passage Stair Elevator Laboratory Restroom Office Seminar room Kitchen Place indoor
Room Classroom Laboratory Restroom Office Seminar room Kitchen
Passage Corridor Door way
Stair Elevator
Floor
Place indoor
(Class: provide an abstraction mechanism for grouping resources with similar characteristics)
Define Taxonomy
Step by Step Build Ontology
Class HierarchyOrganize class in taxonomic (subclass) hierarchy
Define Taxonomy
Step by Step Build Ontology
Create Class and Class Hierarchy Choose “OWLClasses” Tab Create New Class and subclass based
on previous analysis First letter in class name is capital case
Protégé
Using Protégé
Property = Slot Represent relationships between two
individual Link individual from the domain and
individual from the range There are 3 type of property:
Object PropertyData Type PropertyAnnotation Property
Define Properties
Room Floorat_floor
Domain
Range
Step by Step Build Ontology
Object Property (domain: class, range:
class)
Link an individual to an individual Types of object property
Inverse property○ e.g. : has_parent inverse of has_child, roomAtFloor
inverse of consistOfRoomFunctional property
○ e.g. : has_birth_motherTransitive property
○ e, g. : has_anchestor, under_ofSymmetric property
○ e. g. : has_sibling, connect with
Define Properties
Step by Step Build Ontology
Define Object Property connectWith room name passage at floor room at floor room’s number stair at floor floor number elevator at floor floor consist of room laboratory’s name room has door has room number lab supervised by office owned by
Place_indoorconnectWith Place_indoor
PassagepassageAtFloor Floor
RoomroomAtFloor Floor
Floor consistOfRoom Room
StairstairAtFloor Floor
ElevatorelevatorAtFloor Floor
RoomhasDoor DoorWay
domain: class range: class
Define Properties
Step by Step Build Ontology
Object Property
Inverse Property
No. Property’s Name Domain Range
1. passage_at_floor Passage (corridor & doorway)
Floor
2. room_at_floor Room Floor 3. consist_of_room Floor Room4. room_has_door Room Door5. stair_at_floor Stair Floor6. elevator_at_floor Elevator Floor7. under_of Floor Floor8. above_of Floor Floor9. Connect_with Place_indoor Place_indoor
Inverse Property,Transitive property
Symetric Property
Define Properties
Step by Step Build Ontology
Create Object Property Choose “Properties” Tab In Property Browser choose “Object”
Tab First letter in property name is lower
case Create New Property, given name and
choose domain and range for each property
Set property type
Protégé
Using Protégé
Data Type Property (domain: class, range: data type)
Link an individual to an XML schema data type value or an rdf literal
e. g. :
Room String
roomName
Define Properties
Step by Step Build Ontology
Define Data Type Property Data Type Properties (domain: class, range: data type)
No.
Property’s Name Domain Range
1. floorNumber Floor Integer2. labName Laboratory String3. roomName Room String4. hasRoomNumber Room String5. labSupervisedBy Laboratorium String6. OfficeOwnedby Office String
Define Properties
Step by Step Build Ontology
Create Data Type Property Choose “Properties” Tab In Property Browser choose “Datatype”
Tab First letter in property name is lower
case Create New Property, given name and
choose domain and range for each property
Set property type
Protégé
Using Protégé
Facets
Facet is used to represent information about properties (slots), sometimes called role restrictions / axiom
Kind of facets :CardinalityValue Type
Define Facets
Step by Step Build Ontology
Cardinality
Cardinality represents the exact number of values that may be asserted for the slot for that class Single cardinalityMultiple cardinality
○ Minimum cardinality ○ Maximum cardinality
Define Facets
Step by Step Build Ontology
Value Type
Value-type facet describes what type of values can fill in the slot StringNumberBooleanEnumerated
Define Facets
Step by Step Build Ontology
Instances:
Example :Lab336 : Instance of Laboratory
○ has_roomNumber: 336○ lab_name: Intelligent Agent Laboratory○ connectWith: door336, lab338○ lab_supervisedBy: Jane Yung-Jen Hsu○ room_at_floor: floor3○ inRegion: csieBuilding
Individual of the classDefine
Instances
Step by Step Build Ontology
Next Week
Create Instance Using Protégé Checking Consistency / anomalies Read OWL document
Reference N.F Noy, and D.L. McGuinnes, Ontology
Development 101 : A Guide to Creating Your First Ontology, 2001
Horridge, Mattahew, A Practical Guide to Building OWL Ontologies Using The Protege-OWL plugin and CO-ODE Tool, The University of Manchester, 2004
Protege-OWL tutorial http://protege.stanford.edu/overview/protege-owl.html
Install Protégé 3.4
Open http://protege.stanford.edu/download/registered.html
Choose Download 3.4 beta Choose Full Protégé, download And
Install
Backup Slide